Main Content

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

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

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

Composition displays an AUTOSAR classic architecture model.

スロットル位置制御アプリケーションを作成するときに、最終結果を示すモデル例 autosar_tpc_composition を参照できます。

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

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

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

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

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

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

次に、要求側ポートと提供側ポートをコンポーネントに追加してから、コンポーネント ポートを他のコンポーネント ブロックまたはコンポジションのルート端子に接続します。コンポーネントの要求側ポートと提供側ポートを追加するために、このチュートリアルでは 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 コンポーネント ブロックを選択し、表示される省略記号にカーソルを合わせ、キュー [モデルにリンク] を選択します。

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

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

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

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

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

    • コンポーネントを相互に接続するには、コンポーネント提供側ポートから別のコンポーネントの受信側ポートに線をドラッグします。

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

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

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

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

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

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

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

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

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

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

関連するトピック