はじめに
入門者(新入社員や転職者)向けモデルベース開発解説記事第4弾です。
今回はシミュレーション方法の1つであるMILS(Model In the Loop Simulation)について解説します。
HILS、SILS、PILSなど似てる用語がたくさんあり、初心者は混乱しがちですよね。私も新入社員時代は混乱していました。
この記事を読むとMILSの概要、メリット、実施タイミングについて理解することができます。
MILSに限らずモデルベース開発を中心に組み込み系の情報をまとめたホームページを作成中です。よければ覗いてみてください。
モデルベース開発入門
MILSとは
MILSとはModel In the Loop Simulationの略で、ECUモデルとプラント(制御対象)モデルを接続してのシミュレーション手法です。開発工程早期に実施することにより、仕様の漏れやバグを発見し手戻りを防止して開発効率を向上させる効果があります。
モデルベース開発では下図のようにプラント(制御対象)とECU(コントローラー)が実物なのか、それともモデルなのか、その組み合わせによって4つの検証方法が存在します。MILSはプラント(制御対象)とECU(コントローラー)両方がモデルの場合の検証方法となります。
MILSのメリット
メリット① 早期の動作確認が可能
本物の制御対象(自動車の自動運転制御開発であれば自動車本体)が必要ないので、早期に実施可能(例:新型車開発のため、そもそも車両自体ができあがっていない場合でもモデルがあればMILS実施可能)
メリット② 自動チェックが可能。
MILSはシミュレーション方法の一種なので、人間が実際に入力パターンを与える必要がありません。大量の試験パターンを夜通し自動実行して次の日の朝結果を確認するといった自動化が可能です。
メリット③ 制御仕様の共有・調整に便利
動作をアニメーション表示することができるので、難解な制御仕様の具体的な動きを共有しやすいです。グラフをいくつも使って説明するよりも具体的な動きを共有したほうが理解が容易で議論が進みやすいと思います。
MILSで使用するモデルについて
ECUモデルはSimulinkを用いて作成します。プラント(制御対象)モデルはSimscapeを用いて作成します。MathWorks社製品以外ではAmesimやMapleSim等各社いろいろな製品を販売しています。SimscapeはSimulinkと同じMathWorks社製品なので、ECUモデルとプラントモデルの接続に手間がかかりません。社外の製品をSimulinkに接続するのは手間がかかる印象です。
MILSの実施タイミングについて
MILSはECU・プラント両者がモデルなので開発プロセスの早い段階から取り組むことができます。(コンパイル不要。制御機能の一部分からシミュレーション可能。実機レスで検証可能)早期に検証を始めることにより、後工程からの手戻りを防止することができます。特に実機が出来上がってから不具合が発覚し、機構や部品の変更が必要になった場合は致命的な日程遅延が発生してしまいます。
まとめ
本ページではMILSについて解説しました。MILSを活用して、早期に検証を開始することにより手戻りを防止し開発プロジェクトを効率的に進めていきましょう。
MILSに限らずモデルベース開発を中心に組み込み系の情報をまとめたホームページを作成中です。よければ覗いてみてください。
モデルベース開発入門