モデルベース システムズ エンジニアリング (MBSE) を使用すれば、エンジニアは、システムの複雑性を管理し、コミュニケーションを改善して、最適化されたシステムを作成することができます。MBSE を最大限活用するためには、ステークホルダーのニーズをシステム設計要件とアーキテクチャモデルに統合して、直感的なシステムを記述する必要があります。
MATLAB、Simulink、System Composer、および Requirements Toolbox を組み合わせることで、詳細な実装モデルにシームレスに接続する記述的なアーキテクチャモデルを作成するための単一の環境が構築されます。その接続された環境では、アーキテクチャや設計関連の項目が常に同期されます。システムエンジニアは、デジタルスレッドを確立して、システム要件、アーキテクチャモデル、実装モデル、組み込みソフトウェア間を移動することができます。
MATLAB、Simulink、System Composer、および Requirements Toolbox を使用すると、以下を行うことができます。
- 構造、動作、ビューを通じてシステムを定義するアーキテクチャモデルを作成
- システム要件を取得して管理し、影響やカバレッジの解析を実現
- カスタムのモデルビューを使用して、システム アーキテクチャの最適化およびアーキテクチャの解析を行うためのトレードスタディを実行
- ソフトウェア、サービス指向、および AUTOSAR アーキテクチャを作成
- モデルベースデザイン、FMU、コードを使用して、Simulink、Stateflow、Simscape に実装された詳細なコンポーネント設計にアーキテクチャモデルを紐づけ
- シミュレーションベースのテストにより要件の妥当性を確認し、システムアーキテクチャを検証
MBSE 向けの MATLAB、Simulink、System Composer、Requirements Toolbox の使用
アーキテクチャモデルの開発
System Composer を使用して、コンポーネント、ポート、コネクタ モデリング アプローチによりアーキテクチャの階層システムを直感的にスケッチします。コンポーネント間で交換される情報にデータ型、次元、単位などの互換性のあるプロパティがあることを保証するインターフェイスを作成します。
ニーズに適した詳細度で作業し、作業を進めながら詳細をさらに追加します。複数のサブシステムからなる複雑なシステムの大まかな概要から開始し、動作図を使用して詳細なシステム アクティビティに重点を置くか、または中間の詳細度を選択します。
SysML、AUTOSAR (ARXML)、Capella などのアーキテクチャ設計をサードパーティツールからインポートし、MATLAB や Simulink とのシームレスな統合を実現します。必要に応じて設計をエクスポートし、変更を伝えます。既存の設計成果物とインターフェイス管理文書 (ICD) を再利用するには、MATLAB API を介して外部のリポジトリとファイルをインポートします。さらに、既存の Simulink システムモデルからアーキテクチャモデルを抽出します。
システム要件の管理
アーキテクチャモデルの開発中に、Requirements Toolbox を使用して、システム要件を直接取得、表示、管理します。システム要件をさまざまなアーキテクチャ要素にリンクさせ、デジタルスレッドを確立して要件のトレーサビリティを実現し、要件のカバレッジを解析します。リンクされた要件の変更履歴は維持されるため、影響分析を実施して、変更を下流のチームに伝えることができます。
他の MATLAB および Simulink 製品を使用して、解析とテストを行います。Simulink Fault Analyzer では、シミュレーションを使用して故障の影響と安全性を体系的に解析できます。Simulink Coverage はモデルおよびコードカバレッジ解析を実行することで、モデルおよび生成コードに対するテストの網羅率を測定します。
ビューを使用した、トレードスタディの実行とアーキテクチャの解析
ステレオタイプを使用して、サイズ、重量、電力、コストなどのドメイン別の設計データで、アーキテクチャモデルを拡張します。関連するステレオタイプをプロファイルにグループ化して、アーキテクチャ全体に適用したり、他のアーキテクチャで再利用したりできます。アーキテクチャの複雑度を管理するには、カスタムビューを作成して、さまざまなステークホルダーのために対象のコンポーネントを分離するか、アーキテクチャのサブセクションを編集するか、または特定の解析業務を効率化します。System Composer を使用すると、動作図の作成と実行により、システム情報および構成のアクションフローの解析に役立てることができます。
MATLAB を使用して、次のようなアーキテクチャの解析とトレードスタディを直接実行します。
- 複数領域の設計解析と最適化 (MDAO)
- ボトムアップのロールアップまたはトップダウンの割り当て (サイズ、重量、電力、コストなど)
- ネットワークまたはフロー解析 (エンドツーエンドの待ち時間、最短経路、材料のフローなど)
- MATLAB (または Python®) スクリプトを使用したカスタム解析
- トレードスタディ (最も望ましいソリューションの特定)
ソフトウェア アーキテクチャの構築
System Composer で、ソフトウェア コンポーネントとクライアント/サーバーポートを含むインターフェイス ポートを備えたコンポーネント ポート コネクタ パラダイムを利用して、ソフトウェア アーキテクチャとサービス指向アーキテクチャ (SOA) を作成します。
- クラス ダイアグラム ビューアーでソフトウェア構成を表示および編集
- ソフトウェア アーキテクチャを Simulink および Stateflow のコンポーネント設計にリンク
- シミュレーションを実行する前に、ソフトウェア アーキテクチャ モデル内の関数のシミュレーション実行順序を可視化および編集
- 要件を満たせるように設計を繰り返し調整
- コードの自動生成により、組み込みハードウェア、高性能計算プラットフォーム、クラウドに設計を展開
モデルベースデザインへの接続
モデルベースデザインを使用して、Simulink や Stateflow の詳細な設計モデルとネイティブに統合します。Simscape を使用して、マルチドメイン物理システムをモデル化およびシミュレーションします。FMU および C/C++ コードをインポートして、開発プロセスを合理化します。
トップダウン ワークフローに従い、アーキテクチャ コンポーネントから Simulink および Simscape モデルを自動生成するか、または Simulink コンポーネントモデルからアーキテクチャ コンポーネントを作成します。アーキテクチャモデルと Simulink の動作モデルをリンクさせ、アーキテクチャモデルと実装モデルの同期を維持しながらシステムの動作をシミュレーションします。
システムの検証と妥当性確認
シミュレーションを行うことで、MBSE プロセスの初期段階でシステムの動作を理解して調整しながら、アーキテクチャの検討、コンポーネントのプロトタイプ作成、コンポーネント仕様の作成を行うことができます。これを大規模で複雑なシステムに拡張するには、テストスイートを使用して検証を自動化し、要件の妥当性を確認して、MBSE プロセス全体でシステムの動作を繰り返し検証します。
システムレベルのテストを指定して、下流の実装チームが使用する要件の一貫性と正確性を確保します。タイミングに依存する複雑な信号ロジックの要件を、明確な定義済みのセマンティクスを使用した評価に変換し、設計のデバッグと矛盾の特定を行います。
Simulink Fault Analyzer では、シミュレーションを使用して、故障モード影響解析 (FMEA) など故障の影響と安全性の解析を体系的に行えます。モデルの検証と妥当性確認の後は、Simulink Check、IEC Certification Kit、DO Qualification Kit などのツールと MathWorks Consulting を活用することで、DO-178、ARP-4754、ISO-26262 などの認証ワークフローを合理化できます。
設計を行い、モデルやシミュレーションから自動的にレポートを生成することで、ステークホルダーや規制当局とのコミュニケーションが効率化され、その他の MBSE タスクのために時間を費やすことができます。