Main Content

エクスポートされた関数を使用した AUTOSAR ランナブルのモデル化

エクスポートされた Simulink® 関数を使用して AUTOSAR ランナブルをモデル化します。

関数のエクスポート用に設定された複数の周期的なランナブル

モデル例 autosar_swc_expfcns.slx を開きます。

open_system('autosar_swc_expfcns')

モデルは、エクスポート関数モデリングを使用した AUTOSAR アトミック ソフトウェア コンポーネント (ASWC) の実装を示します。エクスポート関数モデルは独立した関数のコードを生成する Simulink モデルです。独立した関数のコードを外部環境およびスケジューラと統合できます。関数は通常、Function-Call Subsystem ブロックと Simulink Function ブロックを使用して定義されます。

このモデルは周期レートをもつ Function-Call Subsystem ブロックを使用して AUTOSAR の 3 つの周期的なランナブルを実装します。ランナブルのサンプルレートはそれぞれ 1 秒、1 秒、10 秒です。注釈と凡例付きの色分けされたサンプルレートを表示するには、[デバッグ] タブで、[診断]、[情報のオーバーレイ]、[色] を選択します。

Simulink の信号線はランナブルを接続する AUTOSAR インターランナブル変数 (IRV) をモデル化します。

AUTOSAR コンポーネント コードと XML 記述 (Embedded Coder) の生成

Simulink Coder および Embedded Coder ソフトウェアをお持ちの場合、アルゴリズム C コードと AUTOSAR XML (ARXML) コンポーネント記述を生成することができます。生成されたコードを Simulink でテストするか、コードと記述を AUTOSAR ランタイム環境に統合できます。

たとえば、autosar_swc_expfcns コンポーネント モデルをビルドするには、モデルを開きます。Ctrl+B キーを押すか、MATLAB コマンド slbuild('autosar_swc_expfcns') を入力します。ビルドが完了すると、コード生成レポートが開きます。

コード生成レポートで、[コード インターフェイス レポート] セクションを選択し、[エントリポイント関数] テーブルを調べます。

生成コードで、各ルートレベルの関数呼び出し Inport ブロックは void-void 関数を生成します。生成されたファイル autosar_swc_expfcns.c から、Runnable1 の生成されたコードは次のようになります。

関連するリンク

エクスポート関数モデルの概要