モデルアーキテクチャ、データ管理、コラボレーション、テスト、検証、シミュレーション パフォーマンスに関するワークフローを活用し、システムの拡大に伴うモデルの複雑性を管理します。大規模な Simulink モデルを、チーム間でより効果的に開発、メンテナンスできます。
スケールアップのベストプラクティス
「Simulink による大規模モデリングのベストプラクティス」ビデオシリーズで、MathWorks のエキスパートから学びましょう。このシリーズでは、連携して大規模な Simulink モデルを開発・管理するアプローチを解説しています。全 5 回のシリーズでは、コンポーネントとインターフェイス、共同開発、データ管理、シミュレーションの高速化に関する実践的な戦略を取り上げます。
シミュレーションの高速化
アクセラレータモード、高速リスタート、キャッシュファイル、性能解析ツール、並列計算手法を用いて、シミュレーションのスループットを向上させます。
シミュレーションのトラブルシューティングと高速化
シミュレーションが遅くなる原因を特定し、シミュレーションを高速化する効果的な解決法をご紹介します。
Simulink キャッシュ
共有されたモデル アーティファクトを活用することで、より迅速にシミュレーション結果を得ることができます。
並列シミュレーション
マルチコア コンピューターやコンピューター クラスター上で、独立した複数のシミュレーションを実行できます。
パフォーマンス アドバイザー
モデルを解析し、シミュレーションの処理速度を低下させる原因を特定します。
高速リスタート
連続したシミュレーションをさらに高速で実行できます。
シミュレーション モードの選択
実行するワークフローに合わせて、最も効率的なモードを選択できます。
ユーザー事例
業界をリードするさまざまな企業が、大規模で複雑なシステムの設計やシミュレーションに Simulink を活用しています。こうした企業は Simulink モデルを利用して、より迅速な開発や新しいアイデアの検証を実現しています。その方法をご紹介します。
モデルのスケーリング
モデルのアーキテクチャと管理に関する重要な意思決定をサポートするドキュメンテーションをご紹介します。以下のトピックでは、モデルのスケールアップ時を含む一般的な状況で、どのようなモデリングパターンを採用すべきかについて、詳細な解説とガイドラインを提供しています。
モデル構成
モデル参照、再利用可能なコンポーネント、サブシステム参照、インターフェイス設計のベストプラクティスを用いて、Simulink でスケーラブルなアーキテクチャを構築します。
データ管理
Simulink データディクショナリとスケーラブルなデータアーキテクチャを用いて、パラメーター、信号、データ型、構成情報を整理します。
ファイル管理
MATLAB プロジェクトとプロジェクト参照を用いて、プロジェクトファイル、依存関係、およびワークスペース構成を管理します。
ソース管理と継続的インテグレーション
Simulink モデルを Git™、自動テストワークフロー、バージョン管理システム、CI/CD パイプラインと統合します。
検証と妥当性確認
テスト、カバレッジ解析、静的解析、コンポーネント検証ワークフローを通じて、モデルの品質を向上させます。
外部コンポーネントの統合
C、C++、Python®、Functional Mockup Unit (FMU)、およびその他の外部コンポーネントを、Simulink モデルに統合します。
トレーニングで知識を広げる
「Simulink モデルの管理とアーキテクチャ」コースで、スケールアップのためのベストプラクティスを学び、さらに知識を深めましょう。カタログから他のコースを閲覧することもできます。
Simulink による大規模モデリングに関する FAQ
モデル参照を使用してモデルをコンポーネント化し、バスを使用してインターフェイスを簡略化し、Simulink データディクショナリを使用してデータを管理し、MATLAB プロジェクトを使用して開発を整理すると、大規模な Simulink プロジェクトをメンテナンスしやすくなります。
モデル参照は、モジュール式開発、並列エンジニアリング ワークフロー、コンポーネントの再利用、独立したテスト、ビルドの高速化に役立ちます。インクリメンタルなワークフロー、キャッシュの再利用、選択的な高速化、モデルコンポーネントの独立したコンパイル、アクセラレータモードおよびラピッド アクセラレータ モードのサポートにより、シミュレーションのパフォーマンスが向上します。
一般的に、ライブラリは小規模な再利用可能なユーティリティに使用されます。サブシステム参照は、共有コンポーネントや特定の Simscape または HDL ワークフローで便利です。大規模なコンポーネント化、再利用可能なアーキテクチャ、独立したシミュレーション、シミュレーションの高速化には、モデル参照が推奨されます。
バスは、関連する信号を単一の接続にグループ化することで、インターフェイスの複雑さを軽減します。これにより、ブロック線図の煩雑さが軽減されるとともに、モデルの可読性、メンテナンスしやすさ、スケーラビリティが向上します。
Simulink データディクショナリは、パラメーター、信号、バスオブジェクト、列挙、値のタイプ、コンフィギュレーション セットをモデルの外部に保存するために使用される、専用の .sldd ファイルです。MATLAB のベースワークスペースにすべてのデータを保存する方法に代わる、スケーラブルな手法です。
ベースワークスペースは、プロトタイピングや単純なプロジェクトに便利です。大規模なプロジェクト、分散したチーム、長期のメンテナンスには、一般的に Simulink データディクショナリが推奨されます。これは、整理のしやすさ、永続性、変更の追跡、データ分割の面でより優れているためです。
はい。データディクショナリは他のデータディクショナリを参照できるため、共通のパラメーター、バス定義、列挙、構成データを、複数のモデルやモデル階層全体で共有できます。
MATLAB プロジェクトは、環境設定、パス管理、依存関係の追跡、ソース管理の統合、プロジェクト参照、テストワークフロー、エンジニアリング チーム間のコラボレーションを容易にします。
MATLAB プロジェクトには依存関係アナライザーが含まれ、モデル、ライブラリ、データディクショナリ、テストファイル、参照プロジェクト間の依存関係を可視化します。これによりチームが変更の影響を理解しやすくなります。
MATLAB は、Simulink モデル、データディクショナリ、およびサポートされているその他のファイルにおける機能的変更と非機能的変更を強調表示する、グラフィカルな比較ツールやマージツールを提供しています。
一般的な手法には、Simulink プロファイラー、ソルバー プロファイラー、パフォーマンス アドバイザー、アクセラレータモード、ラピッド アクセラレータ モード、高速リスタート、モデルのコンポーネント化、キャッシュファイル、並列シミュレーション ワークフローなどがあります。
高速リスタートを使用すると、パラメーター値のみが変化した場合に、モデルを再コンパイルせずにシミュレーションを繰り返すことができます。これにより、パラメーターの調整や設計探索時における初期化時間を大幅に削減できます。 アクセラレータモードは、モデル実行用のコンパイル済みコードを生成します。これにより、シミュレーションのオーバーヘッドが削減され、ノーマルモードと比較してシミュレーション パフォーマンスが向上します。 ラピッド アクセラレータ モードは、スタンドアロンで実行可能なシミュレーション ターゲットを作成します。これにより、多くのワークフローでさらにシミュレーション速度が向上します。
Simulink キャッシュファイルは、コンパイル済みアーティファクトやシミュレーション ターゲットを保存して、セッション間で再利用できるようにします。これにより、リビルド時間が削減され、モデルの初期化が高速化されます。
parsim ワークフローを使用すると、使用可能な複数の CPU コアを使用して、複数の Simulink シミュレーションを同時に実行できます。これにより、パラメータースイープ、モンテカルロ解析、設計最適化に必要な合計時間が短縮されます。
コンポーネント化は、可読性、再利用性、コラボレーション、トレーサビリティ、テストの効率性、シミュレーション パフォーマンス、長期的なメンテナンスのしやすさを向上させます。モデルベースデザイン環境のスケーリングにおける基盤となる手法です。