メインコンテンツ

AUTOSAR アーキテクチャの ECU 抽出のエクスポート

AUTOSAR Classic アーキテクチャ モデルのコンポジションから ECU 抽出をエクスポートできます。ECU 抽出は AUTOSAR ECU 構成に対する重要な入力です。AUTOSAR Classic アーキテクチャで、最上位のコンポジションは 1 つの AUTOSAR ECU にマッピングされたソフトウェア コンポーネントをモデル化できます。ECU スコープのシステムのソフトウェア記述を作成するには、コンポジションから ECU 抽出をエクスポートします。

AUTOSAR アーキテクチャのエクスポート

開いているアーキテクチャ モデルで、Simulink® ツールストリップ、ソフトウェア アーキテクチャ キャンバス、または関数 export を使用して ARXML をエクスポートできます。たとえば、[モデル化] タブから [共有][コードの生成と ARXML のエクスポート] を選択します。[コンポジションのエクスポート] ダイアログ ボックスで、オプション [ECU 抽出をエクスポート] を選択します。エクスポートを開始するには、[OK] をクリックします。

ECU 抽出を生成するために、ソフトウェアはコンポジション内のソフトウェア コンポーネントを ECU に自動的にマッピングします。コンポジションに入れ子にされたコンポジションが含まれている場合、ソフトウェアはコンポーネントのみが含まれているフラットなバージョンのコンポジション階層構造を使用します。たとえば、次のコマンドを使用して、入れ子にされたコンポジションを含む AUTOSAR アーキテクチャ モデル例 autosar_tpc_composition の ECU 抽出をプログラムでエクスポートします。

% Open and export AUTOSAR architecture model, generating ECU extract
archModel = "autosar_tpc_composition";
openExample(archModel);
export(archModel,"ExportECUExtract",true);

ECU 抽出ファイルの生成

export 関数呼び出しは、コンポジション フォルダー内にあるファイル System.arxml への ECU 抽出を生成します。autosar_tpc_composition の ECU 抽出は、最上位のコンポジションおよび入れ子にされた Sensors コンポジション両方のコンポーネントを 1 つの ECU にマッピングします。

<SYSTEM UUID="...">
    <SHORT-NAME>EcuExtract</SHORT-NAME>
    <CATEGORY>ECU_EXTRACT</CATEGORY>
    <MAPPINGS>
        <SYSTEM-MAPPING UUID="...">
            <SHORT-NAME>SystemMapping</SHORT-NAME>
            <SW-MAPPINGS>
                <SWC-TO-ECU-MAPPING UUID="...">
                    <SHORT-NAME>SwcToEcuMapping</SHORT-NAME>
                    <COMPONENT-IREFS>
                        <COMPONENT-IREF>
                            <TARGET-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">
                              /Components/TPC_Composition/Ctrl
                            </TARGET-COMPONENT-REF>
                        </COMPONENT-IREF>
                        ...
                        <COMPONENT-IREF>
                            <TARGET-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">
                              /Components/TPC_Composition/PedalSensor
                            </TARGET-COMPONENT-REF>
                        </COMPONENT-IREF>
                    </COMPONENT-IREFS>
                    <ECU-INSTANCE-REF DEST="ECU-INSTANCE">
                      /System/EcuInstance
                    </ECU-INSTANCE-REF>
                </SWC-TO-ECU-MAPPING>
            </SW-MAPPINGS>
        </SYSTEM-MAPPING>
    </MAPPINGS>
    <ROOT-SOFTWARE-COMPOSITIONS>
        <ROOT-SW-COMPOSITION-PROTOTYPE UUID="...">
            <SHORT-NAME>RootSwCompositionPrototype</SHORT-NAME>
            <SOFTWARE-COMPOSITION-TREF DEST="COMPOSITION-SW-COMPONENT-TYPE">
              /Components/TPC_Composition
            </SOFTWARE-COMPOSITION-TREF>
        </ROOT-SW-COMPOSITION-PROTOTYPE>
    </ROOT-SOFTWARE-COMPOSITIONS>
</SYSTEM>

<ECU-INSTANCE UUID="...">
    <SHORT-NAME>EcuInstance</SHORT-NAME>
</ECU-INSTANCE>

ECU 抽出が含まれるシステム パッケージの AUTOSAR パッケージ パスを指定するには、コンポジション XML オプション [System パッケージ] を使用します。[System パッケージ] パスの値を表示するには、[モデル化] タブから [共有][XML オプションの構成] を選択します。

あるいは、AUTOSAR プロパティ関数 getset を使用して、AUTOSAR システム パッケージ パスを設定します。

openExample("autosar_tpc_composition");
arProps = autosar.api.getAUTOSARProperties("autosar_tpc_composition");
set(arProps,"XmlOptions","SystemPackage","/System");
systemPackage = get(arProps,"XmlOptions","SystemPackage");

AUTOSAR パッケージの階層構造の詳細については、AUTOSAR パッケージの構成を参照してください。

参考

|

トピック