AUTOSAR Adaptive コンポーネントの Simulink へのインポート
AUTOSAR Adaptive ソフトウェア コンポーネントの XML 記述から Simulink® モデルを作成します。
ARXML ファイルから Simulink への AUTOSAR Adaptive コンポーネントのインポート
MATLAB 関数createComponentAsModel
を使用して AUTOSAR XML (ARXML) Adaptive ソフトウェア コンポーネント記述をインポートし、Simulink モデルを作成します。
最初に、ARXML 記述ファイルを解析して、含まれているコンポーネントをリストします。
ar = arxml.importer({'fusion_app.arxml','radarService_app_mod.arxml','radar_svc_mod.arxml','stdtypes_mod.arxml'}); names = getComponentNames(ar)
names = 2x1 cell
{'/RadarFusion/fusion' }
{'/RadarFusion/radarService'}
リストされたそれぞれの Adaptive ソフトウェア コンポーネントについて、createComponentAsModel
を使用して Simulink 表現を作成します。これらのコマンドにより、fusion
および radarService
という名前のモデルが作成されます。
createComponentAsModel(ar,'/RadarFusion/fusion'); createComponentAsModel(ar,'/RadarFusion/radarService');
作成されたそれぞれのモデルには、次が含まれます。
AUTOSAR Adaptive コンポーネント要素をモデル化するよう構成された Simulink 要素。
インポートされた AUTOSAR Adaptive 要素定義を保存する AUTOSAR ディクショナリ。
AUTOSAR Adaptive コンポーネント要素への Simulink モデル要素のマッピング。
各モデルは次のようになります。
Simulink ポートは AUTOSAR Adaptive コンポーネントの提供側ポートと要求側ポートを表す。
各ルート入力端子の後で Event Receive ブロックが信号の値とデータ型を保持したまま、入力イベントを信号に変換する。
各ルート出力端子の前で Event Send ブロックが信号の値とデータ型を保持したまま、入力信号をイベントに変換する。
端子は Ground ブロックと Terminator ブロックでスタブされるため、モデルは即座に更新されシミュレーションされることができます。
AUTOSAR Adaptive ソフトウェア コンポーネントの Simulink での構成
AUTOSAR Adaptive ソフトウェア コンポーネント モデルを作成した後、[AUTOSAR Component Designer] アプリを使用して AUTOSAR Adaptive コンポーネントの構成を調整します。
Adaptive コンポーネント モデルを開きます。[アプリ] タブで [AUTOSAR Component Designer] を選択します。[AUTOSAR] タブが開きます。
Simulink モデル要素の AUTOSAR Adaptive コンポーネント要素へのマッピングを表示するには、コード マッピング ペインを開きます。このビューを使用して、Simulink モデルのパースペクティブでモデル要素を AUTOSAR コンポーネント要素にマッピングします。
AUTOSAR Adaptive 要素定義を表示するには、[AUTOSAR] タブで [コード インターフェイス]、[AUTOSAR ディクショナリ] を選択します。ディクショナリが開きます。このビューを使用して、AUTOSAR コンポーネントのパースペクティブで AUTOSAR 要素を設定します。
詳細については、AUTOSAR コンポーネントの構成を参照してください。
AUTOSAR Adaptive コンポーネント アルゴリズムの開発、シミュレーションおよびコードの生成
AUTOSAR Adaptive ソフトウェア コンポーネント モデルを作成して構成を調整した後、コンポーネントを開発します。コンポーネント要件を実装するアルゴリズム モデル コンテンツを作成します。
たとえば、作成した fusion
コンポーネント モデルには、コンポーネント動作の初期スタブ実装が含まれています。
コンポーネント要件を実装するには、Terminator ブロックを、Simulink アルゴリズムを実装するブロックで置き換えます。
AUTOSAR Adaptive コンポーネントを開発すると、以下が可能になります。
コンポーネント モデルを、個別に、または含まれるコンポジションかテスト ハーネスでシミュレートする。
Simulink でのテストや AUTOSAR ランタイム環境への統合のための ARXML コンポーネント記述ファイルとアルゴリズム C++ コードを生成する (AUTOSAR コード生成には Simulink Coder および Embedded Coder が必要です)。
詳細については、コンポーネントの開発およびコード生成を参照してください。