メインコンテンツ

AUTOSAR コンポジションおよびコンポーネントの追加とコンポーネント実装のリンク

AUTOSAR アーキテクチャ モデルを作成した後は、AUTOSAR ソフトウェア設計の最上位レベルの作成を始めます。コンポジション エディターと Simulink® ツールストリップの [モデル化] タブを使用して、AUTOSAR コンポジションおよびコンポーネントを追加し、接続します。

前の手順で、ローカルの作業フォルダー例を開いて空の AUTOSAR アーキテクチャ モデルを作成しました。必要な場合は、この手順を繰り返し、作業フォルダーを開いて空のモデルを作成します。

スロットル位置制御アプリケーションを作成するときに、最終結果を示すモデル例 autosar_tpc_composition を参照できます。MATLAB® コマンド ウィンドウに次のコマンドを入力して、モデル例を開きます。

openExample("autosar_tpc_composition");

アーキテクチャ キャンバスへのコンポジションとコンポーネントの追加

通常、AUTOSAR コンポジションには、共通の目的をもつ一連の AUTOSAR コンポーネントとコンポジションが含まれます。スロットル位置制御アプリケーションの作成の一環として、このチュートリアルでは 4 つのセンサー コンポーネントをセンサー コンポジション内に配置します。ツールストリップの [プラットフォーム] の選択を [Classic Platform] に設定すると、モデルが Classic アーキテクチャのモデル化用に構成されることに注意してください。

センサー コンポジションとそのコンポーネントを AUTOSAR アーキテクチャ モデルに追加するには、以下を行います。

  1. アーキテクチャ モデル キャンバスで、Software Composition ブロックを追加し、Sensors という名前を付けます。たとえば、[モデル化] タブで [ソフトウェア コンポジション] を選択し、キャンバスに Software Composition ブロックを挿入します。強調表示された名前フィールドに Sensors と入力します。

    Software Composition block Sensors.

  2. コンポジションを追加するには、Software Composition ブロックを開き、ソフトウェア コンポーネントを追加します。

    Sensors ブロックを開き、モデル キャンバスにコンポジションの内容が表示されるようにします。コンポジション内に、TPS_PrimaryTPS_SecondaryMonitor、および PedalSensor という名前の AUTOSAR ソフトウェア コンポーネントを追加します。たとえば、[モデル化] タブで [Classic コンポーネント] を選択して 1 つずつ作成できます。

    Four Component blocks inside the Sensors Composition block.

次に、要求側ポートと提供側ポートをコンポーネントに追加してから、コンポーネント ポートを他のコンポーネント ブロックまたはコンポジションのルート端子に接続します。コンポーネントの要求側ポートと提供側ポートを追加するために、このチュートリアルでは Software Component ブロックを、ポートが既に定義されている実装モデルにリンクします。

実装モデルをリンクしてコンポーネントの動作を定義

AUTOSAR アプリケーションの動作はその AUTOSAR ソフトウェア コンポーネントで定義されます。AUTOSAR アーキテクチャ モデルへの Software Component ブロックの挿入が終わると、Simulink の動作をコンポーネントに追加できるようになります。各 Software Component ブロックでは、以下を実行できます。

  • ブロック インターフェイスに基づいてモデルを作成する。

  • 実装モデルにリンクする。

  • AUTOSAR XML (ARXML) コンポーネント記述からモデルを作成する。

このチュートリアルでは、わかりやすくするために、AUTOSAR コンポーネントごとに 1 つの Simulink 実装モデルを提供しています。

  • コンポーネント TPS_Primary 用の autosar_tpc_throttle_sensor1.slx

  • コンポーネント TPS_Secondary 用の autosar_tpc_throttle_sensor2.slx

  • コンポーネント Monitor 用の autosar_tpc_throttle_sensor_monitor.slx

  • コンポーネント PedalSensor 用の autosar_tpc_pedal_sensor.slx

Simulink 動作をコンポーネントに追加するには、以下を実行します。

  1. アーキテクチャ モデルで、Sensors コンポジション ブロックがまだ開いていない場合は開きます。コンポジション内で、各 AUTOSAR センサー コンポーネントを、その動作を実装する Simulink モデルにリンクします。

    たとえば、TPS_Primary コンポーネント ブロックを選択し、表示される省略記号にカーソルを合わせ、キュー [モデルにリンク] を選択します。

    On Component block TPC_Primary a cursor hovers over the Link to Model option.

    [モデルにリンク] ダイアログ ボックスで、実装モデル autosar_tpc_throttle_sensor1.slx に移動します。

    Link to Model dialog box. Specify model name is populated with autosar_tpc_throttle_sensor1.slx.

    コンポーネントを実装モデルにリンクするには、[OK] をクリックします。

  2. コンポーネント TPS_SecondaryMonitor、および PedalSensor をそれぞれの実装モデルにリンクします。各モデルをリンクしたら、コンポーネント ポートが見やすいよう、対応するコンポーネント ブロックのサイズを変更できます。

    Sensors Composition block with four components with linked behavior models.

    Software Component ブロックを指定した実装モデルにリンクすると、ブロックとモデル インターフェイスが一致するように更新されます。ルートの Inport ブロックおよび Outport ブロックを使用するモデルにリンクした場合、モデルの信号端子はバス端子に変換されます。モデル コンテンツを表示するには、コンポーネント ブロックを開きます。

  3. コンポーネントを相互に接続し、コンポジションのルート端子にも接続します。

    • コンポーネントを相互に接続するには、コンポーネント提供側ポートから別のコンポーネントの受信側ポートに線をドラッグするか、[モデル化] ツールストリップの [接続] セクションで [スマート接続] ボタンをクリックします。

    • コンポーネントを Sensors コンポジション境界のルートレベルの端子に接続するには、コンポーネント ポートから Sensors コンポジション境界へクリックしてドラッグします。

    Sensors Composition block with four connected components with linked behavior models.

  4. オプションで、モデル例 autosar_tpc_composition のルート端子の名前を完全に一致させるために、端子の名前 TPS_HwIO および TPS_HwIO1TPS1_HwIO および TPS2_HwIO に変更します。

アーキテクチャ モデルの最上位レベルの完了

スロットル位置制御アプリケーションを完了するには、以下を行います。

  1. アーキテクチャ モデルの最上位レベルに戻ります。2 つの Classic Component ブロックを追加して、Controller および Actuator という名前を付けます。

  2. AUTOSAR コンポーネント ControllerActuator をそれぞれの Simulink 実装モデル autosar_tpc_controller.slxautosar_tpc_actuator.slx にリンクします。

  3. Sensors コンポジション、Controller コンポーネント、Actuator コンポーネントを相互に、またアーキテクチャ モデルの境界に接続します。

    Top level of AUTOSAR software architecture with implemented behavior models and linked components and composition.

  4. インターフェイスとデータ型は、データ ディクショナリ tpc_interfaces.sldd で定義されています。このデータ ディクショナリをソフトウェア アーキテクチャ モデルにリンクします。[モデル化] タブの [設計] セクションで、[インターフェイスとタイプ][既存のディクショナリをリンク] を選択します。

    インターフェイスやデータ型の問題をチェックするには、アーキテクチャ モデルを更新します。[モデル化] タブで [モデルの更新] を選択します。問題が見つかった場合、そのモデルをモデル例 autosar_tpc_composition と比較します。

  5. モデルに固有の名前 (myTPC_Composition.slx など) を付けて保存します。

次に、AUTOSAR アーキテクチャ モデルで集約されたコンポーネントの動作をシミュレーションします。

参考

トピック