モデルベース開発は、製品開発期間の短縮化や製造コストの削減などの面で、従来の組込み開発に代わる開発手法として注目されています。モデルベース開発の環境構築に必須となるのが、モデルベース開発ツールです。
本コラムでは、モデルベース開発ツールの選び方やおすすめツール5選を紹介します。
また、モデルベース開発の導入やモデリング作成、ツール選びなどに課題がある場合には、テクノプロ・デザイン社のソリューションをご検討ください。神戸、名古屋、東京、福岡の4地域に開発センターを設置し、モデルベース関連ツールでMBSE、RCP、ACG、MILS、SILS、HILSに対応する機器を保有しています。複数ベンダーの連携対応も可能です。ぜひお気軽にご相談ください。
モデルベース開発ツールの活用シーン
モデルベース開発環境の構築にあたって、モデルベース開発ツールは欠かすことができません。
ここではソフトウェア開発を例に、モデルベース開発ツールの具体的な活用シーンを解説します。
システム設計
モデルベース開発において、従来のテキストによるドキュメントの仕様書や検証で使用する実機に代わって、動く仕様書として活用されるのが「モデル」です。最初のプロセスであるシステム設計においても、ツールによるモデル作成(モデリング)を行います。
モデリングはモデルベース開発の標準言語であるSysMLをはじめとした言語を用いて、ツールを介してモデル要件定義、設計、実装を行います。
システム設計段階からモデルを用いることで、従来のドキュメントと異なり設計段階から検証をしながらのシステム設計が可能です。早期のミスや不具合の発見にもつながり、工程の短縮化ややり直しコストの削減にもつながります。
ソフトウェア設計
組込み開発におけるソフトウェア設計は、ドキュメントの基本設計書や詳細設計書を作成するプロセスです。設計書類を用いて、次のプロセスであるソフトウェア作成にてソースコードの記述(コーディング)を行います。
モデルベース開発では、モデルを用いてツールのシミュレーション機能を使い、動作確認を行いながらソフトウェア設計を行います。システム設計時と同じくモデルを動かしながらの設計ができるため、ソフトウェア設計段階でのミスや不具合の発見や、品質向上も実現できます。
ソフトウェア作成
組込み開発では、ソフトウェア設計で作成したドキュメントの基本設計書や詳細設計書を元にコーディングを行い、ソフトウェア作成を進めます。
モデルベース開発では、ソフトウェア作成時のプロセスにおける、手作業でのコーディングは不要です。モデルベース開発ツールには、モデルからCコードを自動生成する機能があります。
モデルベース開発では、自動コード生成により手作業によるコーディングが不要であるため開発工程の削減と工期の短縮をもたらします。文法ミスやロジックエラーなどのコーディングでのヒューマンエラー防止にも役立つため、自動コード生成機能は非常に有効です。
ソフトウェア検証
組込み開発では、制御コントローラの実機を使った検証を行います。
モデルベース開発では、実機に代わって物理モデルを作成し、シミュレーションで検証を行うことができます。
モデルベース開発ツールは、物理モデルの作成やシミュレーションの実行に有効です。
モデルで検証を行うことで、実機の完成を待たずに検証ができ、実機不要で繰り返し検証ができるため、品質向上やコスト削減といったメリットをもたらします。また実機では規模が大きい、危険を伴う検証もシミュレーション可能です。
【参考動画】
モデルベース開発ツールの選び方
モデルベース開発ツールは、さまざまなベンダーから提供されています。ここでは自社のモデルベース開発に適合したツールを選ぶためのポイントを解説します。
モデリング作成者のスキルとモデリングのしやすさのバランス
モデリングのしやすさは、ツール選びにおける重要なポイントです。モデルの出来栄えや品質は、モデル作成者のスキルに依存するためです。
一方で、モデリングのしやすさのみでツールで使用されているモデリング言語を選ぶのはあまりおすすめできません。
物理モデリングにおいて、ツールによっては物理量を持たないモデリング言語を採用しているものがあります。
その場合には、モデル作成者は実機の物理現象(作用、反作用)を自分で考えモデリングをしなければいけません。
物理量を理解できるモデリング言語やシミュレーション環境のあるモデルベース開発ツールなら、モデリング作成者個人のスキルに依存することなく直感的なモデリングが可能です。ツールの中にはGUIを用いたモデリングに加えて、文献などのドキュメント上の数式の入力だけでカスタムコンポーネントを作成する機能のあるツールもあります。数式を入手できればモデリングができるため、モデリング作成者のスキルが醸成されていない環境下でもスムーズに進めやすくなるでしょう。
モデルの可読性
可読性の高いモデルは、モデルそのものが見やすいためモデルの中身を第三者が理解しやすくなるメリットがあります。
物理モデリングにおいて、GUIを用いてモデリングしたモデルは可読性が高く、実機と比較しやすく見やすいのがメリットです。ただし、仕様書としての管理がしにくいというデメリットがあります。モデルの詳細度や支配方程式、前提条件、修正や改版の履歴などもモデルに記載しなければいけないためです。
モデリング開発ツールの中には、モデルそのものの見やすさはもちろん、ドキュメントとしての一括管理がしやすい面でも可読性の良いモデルを実現できるツールもあります。モデルの実機面だけでなく、仕様書面での可読性も高いモデルが実現できるかもチェックしてツールを選べば、モデル作成後の管理面での効率化にもつながります。
モデルの再利用の有無
モデルは作成し、検証が終わったあとは資産として残すことができます。新製品の開発に転用できるほか、技術の継承などにも利用可能です。モデルの再利用に関して優位性のあるツールを選ぶと、より資産化したモデルを有効活用できます。
たとえばモデル同士を容易に接続できる機能を持つツールがあれば、他の技術や製品開発にもモデルを転用できます。
場合によっては他部署や他社から、モデル活用の要求を受けることもあるでしょう。その際にモデルの中身を隠蔽化・暗号化できるツールなら、自社の技術やノウハウが流出することなくモデルのみを貸与や譲渡することも可能です。
モデルの柔軟性の高さ
柔軟性の高いモデルなら、他のプロセスやシステムに転用しやすくなります。
たとえばシステム設計で仕様書として作成したモデルをHILS環境へ転用すれば、実機に代わる検証対象として活用できます。製品やプロセスの特徴に合わせてモデルベース開発とともに組込み開発も併用している場合は、モデルを組込み開発へ転用することでドキュメントの管理性やコードの自動作成などの面で多くのメリットが得られます。
モデルを転用するプロセスやシステムに適合できる機能を持つツールなら、モデルのさらなる有効活用にもつながります。
モデルベース開発ツールおすすめ5選
これから自社で導入する際の参考になる、代表的なモデルベース開発ツールを5つ紹介します。
MathWorks「MATLAB/Simulink」
マルチドメイン シミュレーションとモデルベース デザインのためのブロック線図環境を提供し、システムレベルデザイン、シミュレーション、自動コード生成や様々な検証の機能を提供します。多くの企業に導入されている代表的なモデルベース開発ツールです。
MATLABとSimulink を併用することで、テキストベースのプログラミングとグラフィカルなプログラミングを同一環境で組み合わせて実行できます。C、C++、CUDA、PLC、Verilog、VHDLコードの自動作成と組込みシステムへの自動展開、モデルを運用中のシステムに拡張し予知保全と故障解析を実施する機能などがあります。
30日間の無料評価版もリリースしています。
Altair「Activate」
定義済みのModelicaブロックライブラリを活用して、機構、電気、流体、熱の物理コンポーネントをモデリングできるモデルベース開発ツールです。
製品の全体的な評価がしやすい1Dシステムシミュレーションが可能で、マルチボディダイナミクス制御モデルはMotionSolve、モーター動作制御モデルはFluxといったように、ほかのAltair製品との連成シミュレーションもできます。
Functional Mock-up Unit(FMU)を使用できるため、FMI規格をサポートしているAltair以外のツールとのモデル交換や連成シミュレーションも可能です。
無料トライアルも提供しています。
Altair「XLDyn」
モデルベースシステムエンジニアリング (MBSE)が構築できるツールです。
OMG SysMLに準拠した設計解析、要件管理、検証用ソフトウェア「XLSE」と、1次元マルチフィジックスシミュレーションパッケージ「XL1D」の2つのモジュールから構成されています。
SEサーバのデータベースにあるライブラリや過去のモデルを使って、ドラッグ&ドロップでMBSEモデルを簡単に構築できます。ブロック図と状態図はどちらもプログラム可能です。要件検証器とリンクし、ダイアグラムビューからシミュレーションを実行でき、結果も自動更新されます。サードパーティのシミュレーションソフトウェアも簡単に統合できます。
MBSEについては以下の記事も参考にしてください。
CYBERNET SYSTEMS「MapleSim」
30年以上の研究開発により最適化・高速化された、ロイヤリティーフリーのコードを採用したモデル開発ツールです。シミュレーションの速度を落とさずにモデルの複雑化を実現します。
シミュレーションでテストベッドデータの生成と、ニューラルネットワークでの学習が可能です。オートメーションシステムと連携することで、機械のCPM向上を目的とした設計と制御戦略、安全な検証、B&R、Beckhoff、Rockwell Automation、CodeSYSなどのPLCコードの仮想的なデバッグ、バーチャルコミッショニングとデジタルツインのためのデジタルモデルの開発などが実現できます。
15日間の無料体験版をダウンロード可能です。
IBM「Engineering Systems Design Rhapsody」
スウェーデンのソフトウェア会社Telelogic ABのモデリング開発ツールである「Rhapsody」をIBMが買収、統合して誕生したモデルベース開発ツールです。UMLを使用してC++、C、またはJavaアプリケーションによるモデリングができます。
SysML、UML、UAF、およびAUTOSARのインポートおよびエクスポート機能を使用して、システム仕様、インターフェース設計ドキュメント、およびシステム・テスト・ケースを自動的に作成できます。MathWorks Simulinkなどの設計ツールで作成されたモデルも共有可能です。
モデルベース開発ツール導入時の注意点
モデルベース開発ツール導入時の注意点を解説します。
ツールの使い方の学習が必要
モデルベース開発ツールを導入しても、使いこなせなければモデリングやシステム開発には活用できません。
ツールの効率的な使い方のマニュアルや動画などの支援を提供している製品もあり、それらはモデリング作成者や使用者の育成に役立ちます。
初期投資が必要
モデルベース開発ツールは、導入費用が発生します。
無料のトライアルや無料版をリリースしているツールもあるため、使いやすさや自社製品、システム環境との親和性なども踏まえてツールを選ぶ必要があります。
まとめ
モデルベース開発ツールの活用シーンと選び方、代表的なおすすめのモデルベース開発ツール5選を紹介しました。モデルベース開発ツールはツールにより特徴や費用が異なります。無料版などで確認しながら、モデリング作成者のスキルや操作性、検証対象に合わせたツールを選びましょう。
また、モデルベース開発の導入やモデリング作成、ツール選びなどに課題がある場合には、テクノプロ・デザイン社のソリューションをご検討ください。神戸、名古屋、東京、福岡の4地域に開発センターを設置し、モデルベース関連ツールでMBSE、RCP、ACG、MILS、SILS、HILSに対応する機器を保有しています。複数ベンダーの連携対応も可能です。ぜひお気軽にご相談ください。