このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
AUTOSAR 送信側/受信側通信の設定
AUTOSAR ポートベース送信側/受信側 (S-R) 通信では、AUTOSAR ソフトウェア コンポーネントが他のコンポーネントまたはサービスとデータの読み取りおよび書き込みを行います。S-R 通信を実装するために、AUTOSAR ソフトウェア コンポーネントは以下を定義します。
データ要素をもつ AUTOSAR 送信側/受信側インターフェイス。
データを送受信する AUTOSAR 提供側ポートと要求側ポート。
Simulink® では、以下のことができます。
AUTOSAR ディクショナリまたはアーキテクチャ データ エディター (Simulink データ ディクショナリを使用している場合) を使用して、AUTOSAR S-R インターフェイスとポートを作成します。
Simulink ルートレベルの出力端子と入力端子を使用して、AUTOSAR 提供側ポートと要求側ポートをモデル化します。
コード マッピング エディターを使用して、出力端子と入力端子を AUTOSAR 提供側ポートと要求側ポートにマッピングします。
メモ
インターフェイスの格納に Simulink データ ディクショナリを使用している場合、それらのインターフェイスについては、アーキテクチャ データ エディターまたは関連プログラム インターフェイス
Simulink.dictionary.ArchitecturalDataのいずれかを使用して構成する必要があります。
キューに登録されている送信側/受信側通信については、AUTOSAR のキューに登録されている送信側/受信側通信の設定を参照してください。
送信側/受信側通信を Simulink バス端子を使用してモデル化する例については、Simulink バス端子の使用による AUTOSAR 端子の構成を参照してください。
ErrorStatus 端子とエンドツーエンド保護をモデル化する例については、Configure AUTOSAR Sender-Receiver Interface Ports for End-to-End Protectionを参照してください。
AUTOSAR 送信側/受信側インターフェイスの設定
次の手順は、AUTOSAR の送信側コンポーネントと受信側コンポーネントを Simulink でモデル化する一般的なワークフローの概要を示したものです。この例では、インターフェイスの格納に Simulink データ ディクショナリは使用していないものと仮定します。インターフェイスの格納に Simulink データ ディクショナリを使用している場合、それらのインターフェイスについては、アーキテクチャ データ エディターまたは関連プログラム インターフェイス Simulink.dictionary.ArchitecturalData のいずれかを使用して構成する必要があります。
Simulink で S-R インターフェイスおよびポートを作成するには次を行います。
AUTOSAR ディクショナリを開き、[S-R Interfaces] を選択します。[追加] ボタン
をクリックして新しい AUTOSAR S-R データ インターフェイスを作成します。その名前と関連付けられる S-R データ要素の数を指定します。新しい S-R インターフェイスを選択して展開します。[DataElements] を選択し、AUTOSAR データ要素の属性を変更します。

AUTOSAR ディクショナリで、[AtomicComponents] ノードを展開し、AUTOSAR コンポーネントを選択します。コンポーネントを展開します。
[ReceiverPorts]、[SenderPorts]、[SenderReceiverPorts] の各ビューを選択して使用し、新しい S-R インターフェイスに関連付ける AUTOSAR S-R ポートを追加します。新しいそれぞれの S-R ポートについて、作成した S-R インターフェイスを選択します。
必要に応じて、それぞれの S-R ポートの通信属性を調べ、変更が必要な場合は変更します。詳細については、AUTOSAR 送信側/受信側ポートの通信仕様属性の設定を参照してください。

コード マッピング エディターを開きます。[入力端子] タブと [出力端子] タブを選択して使用し、Simulink の入力端子と出力端子を AUTOSAR S-R ポートにマッピングします。入力端子または出力端子ごとに、AUTOSAR ポート、データ要素、データ アクセス モードを選択します。

AUTOSAR の提供側/要求側ポートの設定
AUTOSAR Release 4.1 では、AUTOSAR の提供側/要求側ポート (PRPort) が導入されました。AUTOSAR の PRPort のモデル化には、データ型、次元、信号タイプが一致する Simulink の入力端子と出力端子のペアを使用します。PRPort を送信側/受信側 (S-R) インターフェイスまたは不揮発性 (NV) データ インターフェイスと関連付けることができます。
Simulink で S-R 通信用に AUTOSAR PRPort を設定するには、以下を行います。
AUTOSAR の
PRPortとのペアリングに適した入力端子と出力端子をもつランナブルを含む、AUTOSAR 用に構成されたモデルを開きます。この例では、入力端子RPort_DE1と出力端子PPort_DE1のどちらも、データ型がint8、端子の次元が 1、信号タイプがrealを使用します。AUTOSAR ディクショナリを開き、[SenderReceiverPorts] ビューに移動します (NV 通信用に
PRPortを設定するには、[NvSenderReceiverPorts] ビューを代わりに使用します)。送信側/受信側ポートを追加するには、[追加] ボタン
をクリックします。[ポートの追加] ダイアログ ボックスで、[名前] を PRPortと指定し、[インターフェイス] を使用可能な S-R インターフェイスのリストから選択します。[追加] をクリックします。
コード マッピング エディターを開き、[入力端子] タブを選択します。Simulink の入力端子を、作成した AUTOSAR の送信側/受信側ポートにマッピングするには、入力端子を選択して [ポート] を
[PRPort]に設定し、[要素] を入力端子と出力端子が共有するデータ要素に設定します。
[出力端子] タブを選択します。Simulink の出力端子を、作成した AUTOSAR の送信側/受信側ポートにマッピングするには、出力端子を選択して [ポート] を
[PRPort]に設定し、[要素] を前の手順で選択したデータ要素と同じに設定します。
[検証] ボタン
をクリックして、更新された AUTOSAR コンポーネントの構成を検証します。エラーが報告された場合は、対処した上で検証を再試行します。検証によって示される一般的なエラーは、AUTOSAR の PRPortにマップされている入力端子と出力端子の間のプロパティが一致しないことです。
別の方法として、AUTOSAR のプロパティ関数と map 関数を使用して、プログラムによって PRPort ポートを追加してマッピングできます。次の例では、AUTOSAR の PRPort (送受信ポート) を追加し、それを Simulink の入力端子と出力端子のペアにマッピングします。
hModel = 'my_autosar_expfcns'; open_system(hModel) arProps = autosar.api.getAUTOSARProperties(hModel); swcPath = find(arProps,[],'AtomicComponent')
swcPath =
'ASWCadd(arProps,'ASWC','SenderReceiverPorts','PRPort','Interface','Interface1') prportPath = find(arProps,[],'DataSenderReceiverPort')
prportPath =
'ASWC/PRPort'slMap = autosar.api.getSimulinkMapping(hModel); mapInport(slMap,'RPort_DE1','PRPort','DE1','ImplicitReceive') mapOutport(slMap,'PPort_DE1','PRPort','DE1','ImplicitSend') [arPortName,arDataElementName,arDataAccessMode] = getOutport(slMap,'PPort_DE1')
arPortName = PRPort arDataElementName = DE1 arDataAccessMode = ImplicitSend
IsUpdated サービスのための AUTOSAR 受信ポートの設定
AUTOSAR は、ErrorStatus や IsUpdated といった送信側/受信側インターフェイスのサービス品質属性を定義します。IsUpdated 属性により、AUTOSAR の明示的な受信側で、最後の読み取りの発生後に受信ポートのデータ要素がデータを受信したかどうかを検出できます。データがアイドル状態にある場合、受信側は演算リソースを節約することができます。
送信側では、AUTOSAR ランタイム環境 (RTE) が更新フラグのステータスを設定し、データ要素が書き込まれたかどうかを示します。受信側では、更新フラグを読み取ってデータ要素が最後の読み取り後に更新されたかどうかを示す値を返す Rte_IsUpdated_ API を呼び出します。Port_Element
Simulink では、以下のことができます。
IsUpdatedサービスが設定された AUTOSAR 受信ポートをインポートする。IsUpdatedサービスの AUTOSAR 受信ポートを設定する。IsUpdatedサービスが設定されている AUTOSAR 受信ポートの C および ARXML コードを生成する。
Simulink で IsUpdated サービスをモデル化するには、ExplicitReceive データ アクセス用に設定された入力端子と IsUpdated データ アクセス用に設定された新しい入力端子を組み合わせます。IsUpdated サービスの AUTOSAR 受信ポートを設定する方法は以下のとおりです。
AUTOSAR 送信側/受信側インターフェイスが設定されているモデルを開きます。
IsUpdatedサービスを必要としている AUTOSAR 受信ポートに対応する入力端子を特定します。2 番目の入力端子を作成し、データ型をbooleanに設定し、同じブロックに接続します。以下に例を示します。
コード マッピング エディターを開きます。[入力端子] タブを選択します。入力端子のビューで、両方の入力端子のマッピング プロパティを設定します。
データ入力端子がまだ構成されていない場合、[DataAccessMode] を
[ExplicitReceive]に設定します。IsUpdatedサービスを必要としている AUTOSAR 受信ポートとデータ要素に入力端子をマッピングする [ポート] および [要素] の値を選択します。サービス品質入力端子の場合、[DataAccessMode] を
[IsUpdated]に設定します。データ入力端子に完全に一致する [ポート] および [要素] の値を選択します。

AUTOSAR コンポーネントの構成を検証するには、[検証] ボタン
をクリックします。モデルをビルドして、生成されたコードを検証します。生成された C コードには
Rte_IsUpdatedAPI 呼び出しが含まれています。tmpIsUpdated = Rte_IsUpdated_Input_DE1(); … if (tmpIsUpdated) { … (void)Rte_Read_Input_DE1(&tmpRead); … }エクスポートされた ARXML コードには、AUTOSAR 受信ポートに対して
trueに設定された ENABLE-UPDATE が含まれています。<R-PORT-PROTOTYPE UUID="..."> <SHORT-NAME>Input</SHORT-NAME> <REQUIRED-COM-SPECS> <NONQUEUED-RECEIVER-COM-SPEC> <DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/pkg/if/Input/DE1 </DATA-ELEMENT-REF> … <ENABLE-UPDATE>true</ENABLE-UPDATE> … </NONQUEUED-RECEIVER-COM-SPEC> </REQUIRED-COM-SPECS> … </R-PORT-PROTOTYPE>
受信側で ErrorStatus と IsUpdated の両方のサービス品質属性を使用すると、コードの効率が下がる可能性があることに注意してください。このような場合、生成される Rte_Read 呼び出しは条件付き IsUpdated ステートメントの外側にありますが、Rte_Read 呼び出しから読み取られるデータが条件付き実行コードの内側で使用されることになります。
rtb_TmpSignalConversionAtErrorS = Rte_Read_Input_DE1
(&rtb_TmpSignalConversionAtIn1Out);
…
if (Rte_IsUpdated_Input_DE1()) {
model_ARID_DEF.Gain = rtb_TmpSignalConversionAtIn1Out << 14;
model_ARID_DEF.ErrorStatus = rtb_TmpSignalConversionAtErrorS;
}AUTOSAR 送信側/受信側データの無効化の設定
AUTOSAR 規格では、送信側/受信側 (S-R) 通信で使用される AUTOSAR データ要素の無効化メカニズムが定義されています。送信側コンポーネントは、送信ポートのデータが無効であることを下流の受信側コンポーネントに通知できます。無効化ポリシーは S-R データ要素ごとに設定できます。Simulink では、以下のことができます。
無効化ポリシーが設定された AUTOSAR 送信側/受信側データ要素をインポートする。
シミュレーションおよびコード生成用に Signal Invalidation ブロックを使用して送信側/受信側データの無効化をモデル化する。ブロック パラメーターを使用して信号の無効化ポリシーと S-R データ要素の初期値を指定できます。
無効化ポリシーが設定された AUTOSAR 送信側/受信側データ要素の C コードと ARXML 記述を生成する。
それぞれの S-R データ要素について、Signal Invalidation ブロックのパラメーター [Signal Invalidation のポリシー] を [Keep]、[Replace]、または [DontInvalidate] に設定できます。入力データ値が無効な場合 (無効化制御フラグが true の場合)、[Signal Invalidation のポリシー] の値に応じて実行される処理が決まります。
Keep- 入力データ値を最新の有効な信号値に置き換えます。Replace- 入力データ値を [初期値] パラメーターの値に置き換えます。DontInvalidate- 入力データ値を置き換えません。

AUTOSAR S-R データ要素の無効化ポリシーを Simulink で設定するには次を行います。
AUTOSAR 送信側/受信側インターフェイスが設定されているモデルを開きます。たとえば、次の場合を仮定します。
Outという名前の Simulink 出力端子が AUTOSAR 送信ポートPPortおよびデータ要素OutElemにマッピングされています。AUTOSAR ディクショナリで、データ要素OutElemを含む S-R インターフェイスOutを AUTOSAR 送信ポートPPortのインターフェイスとして選択しています。In1という名前の Simulink 入力端子が AUTOSAR 受信ポートRPort1およびデータ要素InElem1にマッピングされています。AUTOSAR ディクショナリで、データ要素InElem1を含む S-R インターフェイスIn1を AUTOSAR 受信ポートRPort1のインターフェイスとして選択しています。コード マッピング エディターの [入力端子] タブで、入力端子In1のマッピングを示します。


Signal Invalidation ブロックをモデルに追加します。
このブロックは、ルートの Outport ブロックに直接接続されていなければなりません。ブロックをルート出力端子
Outに接続します。最初のブロック入力 (データ値) をルート入力端子
In1からのデータ パスに接続します。2 番目のブロック入力 (無効化制御フラグ) 用に
In2という名前のルート入力端子をモデルに追加します。データ型はスカラーのbooleanに設定します。新しい入力端子を 2 番目の AUTOSAR 受信ポートにマッピングします。2 番目の AUTOSAR 受信ポートが存在しない場合は、AUTOSAR ディクショナリを使用して AUTOSAR のポート、S-R インターフェイス、データ要素を作成します。この例では、Simulink 入力端子
In2が AUTOSAR 受信ポートRPort2およびデータ要素InElem2にマッピングされています。AUTOSAR ディクショナリで、データ要素InElem2を含む S-R インターフェイスIn2を AUTOSAR 受信ポートRPort2のインターフェイスとして選択しています。2 番目のブロック入力をルート入力端子
In2に接続します。


Signal Invalidation ブロックのパラメーター ダイアログ ボックスを表示します。[Signal Invalidation のポリシー] 属性と [初期値] 属性を調べます。詳細については、Signal Invalidation ブロックのリファレンス ページを参照してください。

コード マッピング エディターを開き、[出力端子] タブを選択します。ルート出力端子
Outの AUTOSAR データ アクセス モードがExplicitSendまたはEndToEndWriteに設定されていることを確認します。
AUTOSAR コンポーネントの構成を検証するには、コード マッピング エディターを開き、[検証] ボタン
をクリックします。モデルをビルドして、生成されたコードを検証します。信号が有効な場合、生成された C コードは
Rte_Write_を呼び出します。信号が無効の場合、C コードはPort_ElementRte_Invalidate_を呼び出します。Port_Element/* SignalInvalidation: '<Root>/Signal Invalidation' incorporates: * Inport: '<Root>/In2' */ if (!Rte_IRead_Runnable_Step_RPort2_InElem2()) { /* Outport: '<Root>/Out' */ (void) Rte_Write_PPort_OutElem(mSignalInvalidation_B.Gain); } else { Rte_Invalidate_PPort_OutElem(); }エクスポートされた ARXML コードにはデータ要素の無効化設定が含まれています。
<INVALIDATION-POLICY> <DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/pkg/if/Out/OutElem</DATA-ELEMENT-REF> <HANDLE-INVALID>KEEP</HANDLE-INVALID> </INVALIDATION-POLICY>
DataReceiveErrorEvent のための AUTOSAR 受信ポートの設定
ソフトウェア コンポーネント間の AUTOSAR 送信側/受信側通信で、通信レイヤーが受信側コンポーネントのデータ受信エラーを報告すると、ランタイム環境 (RTE) は [DataReceiveErrorEvent] を発生させます。たとえば、このイベントは、送信側コンポーネントが AliveTimeout の制限内に応答できなかったことや、送信側コンポーネントが無効なデータを送信したことを示す可能性があります。
Embedded Coder® は、AUTOSAR 受信側コンポーネントでの [DataReceiveErrorEvent] の作成をサポートします。Simulink では、以下のことができます。
AUTOSAR の
[DataReceiveErrorEvent]定義をインポートする。[DataReceiveErrorEvent]を定義する。[DataReceiveErrorEvent]が設定されている AUTOSAR 受信ポートの ARXML コードを生成する。
[ImplicitReceive]、[ExplicitReceive] または [EndToEndRead] データ アクセス モードを使用する AUTOSAR 受信ポートの [DataReceiveErrorEvent] を設定しなければなりません。
AUTOSAR 受信ポートの [DataReceiveErrorEvent] を設定する方法は以下のとおりです。
AUTOSAR 送信側/受信側インターフェイスの受信側が設定されているモデルを開きます。
コード マッピング エディターを開きます。[入力端子] タブを選択します。
[DataReceiveErrorEvent]を設定する AUTOSAR 受信ポートにマッピングされているデータ入力端子を選択します。AUTOSAR データ アクセス モードを[ImplicitReceive]、[ExplicitReceive]、または[EndToEndRead]に設定します。ErrorStatus端子が連結されていない場合と連結されている場合の 2 つの例を次に示します。

AUTOSAR ディクショナリを開きます。[AtomicComponents] ノードを展開します。受信側コンポーネントを展開し、[ランナブル] を選択します。
ランナブルのビューで、
[DataReceiveErrorEvent]を処理するランナブルを作成します。[追加] ボタン
をクリックしてランナブル エントリを追加します。新しいランナブルを選択し、名前やその他のプロパティを設定します。
[イベント] ペインに移動し、ランナブルの
[DataReceiveErrorEvent]を設定します。[イベントの追加] をクリックし、[DataReceiveErrorEvent]型を選択し、イベント名を入力します。[イベントのプロパティ] の下で、イベントのトリガーを選択します。選択されたトリガーの値は、ランナブルが
[DataReceiveErrorEvent]の処理を行っている AUTOSAR 受信ポートとデータ要素を示しています。
または、
[DataReceiveErrorEvent]をプログラムによって作成することもできます。arProps = autosar.api.getAUTOSARProperties(mdlname); add(arProps,ibQName,'Events','DRE_Evt',... 'Category','DataReceiveErrorEvent','Trigger','rPort.DE1',... 'StartOnEvent',runnableQName);
モデルをビルドして、生成されたコードを検証します。エクスポートされた ARXML コードは、エラー処理ランナブルとそのトリガー イベントを定義します。
<EVENTS> <DATA-RECEIVE-ERROR-EVENT UUID="..."> <SHORT-NAME>DRE_Evt</SHORT-NAME> <START-ON-EVENT-REF DEST="RUNNABLE-ENTITY"> /Root/mDemoModel_swc/ReceivingASWC/IB/Run_ErrorHandling</START-ON-EVENT-REF> <DATA-IREF> <CONTEXT-R-PORT-REF DEST="R-PORT-PROTOTYPE"> /Root/mDemoModel_swc/ReceivingASWC/rPort</CONTEXT-R-PORT-REF> <TARGET-DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE"> /Root/Interfaces/In/DE</TARGET-DATA-ELEMENT-REF> </DATA-IREF> </DATA-RECEIVE-ERROR-EVENT> </EVENTS> ... <RUNNABLES> ... <RUNNABLE-ENTITY UUID="..."> <SHORT-NAME>Run_ErrorHandling</SHORT-NAME> <MINIMUM-START-INTERVAL>0</MINIMUM-START-INTERVAL> <CAN-BE-INVOKED-CONCURRENTLY>false</CAN-BE-INVOKED-CONCURRENTLY> ... <SYMBOL>Run_ErrorHandling</SYMBOL> </RUNNABLE-ENTITY> </RUNNABLES>
AUTOSAR 送信側/受信側ポートの通信仕様属性の設定
AUTOSAR ソフトウェア コンポーネントでは、送信側ポートや受信側ポートの通信仕様 (ComSpec) 属性を指定できます。ComSpec はポートのデータに対する追加の通信要件を示します。この例では、Simulink® で Simulink 端子を AUTOSAR 受信側ポートにマッピングしてから、ComSpec 属性を指定する方法を示します。ソフトウェアで視覚的に行う方法とプログラムで行う方法の両方を示します。
AUTOSAR の送信側と受信側の ComSpec を Simulink でモデル化するために次のことが可能です。
送信側と受信側の ComSpec を ARXML ファイルからインポートする。
送信側と受信側の ComSpec を Simulink で作成する。
キューに登録されていない受信ポートの ComSpec 属性
AliveTimeout、HandleNeverReceived、InitValueを変更する。キューに登録されている受信ポートの ComSpec 属性
QueueLengthを変更する。ComSpec 属性を ARXML ファイルにエクスポートする。
AUTOSAR 送信側/受信側ポートの ComSpec をグラフィカルに設定
たとえば、AUTOSAR 受信側ポートを Simulink® で作成する場合、コード マッピング エディターを使用して Simulink® 入力端子を AUTOSAR 受信側ポートと送信側/受信側データ要素にマッピングします。その後、そのポートを選択して ComSpec 属性を指定することができます。

キューに登録されている受信側ポートについては、ComSpec 属性は QueueLength のみです。

AUTOSAR 受信側ポートをインポートまたは作成する場合、AUTOSAR ディクショナリを使用して AUTOSAR ポートのマッピングされた送信側/受信側データ要素の ComSpec 属性を表示および編集できます。

プログラムによる AUTOSAR 送信側/受信側ポートの通信仕様属性の設定
モデル例 autosar_swc を開き、関連するautosar.api.getAUTOSARPropertiesオブジェクトを作成します。
hModel = "autosar_swc";
open_system(hModel);
arProps = autosar.api.getAUTOSARProperties(hModel);arProps プロパティ オブジェクトを使用して、DataReceiverPort、送信側/受信側インターフェイス Input_If、送信側/受信側データ要素 In1 のパスと一時情報のパスを検索して通信仕様にアクセスします。
portPath = find(arProps,[],"DataReceiverPort","PathType","FullyQualified"); ifPath = find(arProps,[],"SenderReceiverInterface","Name","Input_If","PathType","FullyQualified"); dataElementPath = find(arProps,ifPath{1},"FlowData","Name","In1","PathType","FullyQualified"); infoPath = find(arProps,portPath{1},"PortInfo",... "PathType","FullyQualified","DataElements",dataElementPath{1}); comSpecPath = find(arProps,infoPath{1},"PortComSpec","PathType","FullyQualified");
モデル例 autosar_swc のキューに登録されていないポートについて、通信仕様属性の値を設定します。
R2025a 以降では、バスによって型指定されたポートの配列、行列、構造体など、異種混合の値が InitValue の有効な値に含まれます。バスによって型指定されたポートの InitValue に構造体を割り当てる場合、構造体の値はポートに型指定されたバスの値と一致していなければなりません。
set(arProps,comSpecPath{1},"AliveTimeout",30,"HandleNeverReceived",true,"InitValue",1);
get(arProps,comSpecPath{1},"AliveTimeout")ans = 30
get(arProps,comSpecPath{1},"HandleNeverReceived")ans = logical
1
get(arProps,comSpecPath{1},"InitValue")ans = 1
キューに登録されている受信側ポートについては、QueueLength のみを設定できます。
set(arProps,comSpecPath,"QueueLength",10);
ComSpec 属性を指定する AUTOSAR モデルのコードを生成すると、エクスポートされる ARXML ポートの記述に ComSpec 属性の値が含まれます。
<PORTS>
<R-PORT-PROTOTYPE UUID="...">
<SHORT-NAME>ReceivePort</SHORT-NAME>
<REQUIRED-COM-SPECS>
<NONQUEUED-RECEIVER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">
/Company/Powertrain/Interfaces/Input_If/In1
</DATA-ELEMENT-REF>
...
<ALIVE-TIMEOUT>30</ALIVE-TIMEOUT>
<HANDLE-NEVER-RECEIVED>true</HANDLE-NEVER-RECEIVED>
...
<INIT-VALUE>
<CONSTANT-REFERENCE>
<SHORT-LABEL>DefaultInitValue_Double_1</SHORT-LABEL>
<CONSTANT-REF DEST="CONSTANT-SPECIFICATION">
/Company/Powertrain/Constants/DefaultInitValue_Double_1
</CONSTANT-REF>
</CONSTANT-REFERENCE>
</INIT-VALUE>
</NONQUEUED-RECEIVER-COM-SPEC>
</REQUIRED-COM-SPECS>
</R-PORT-PROTOTYPE>
</PORTS>
...
<CONSTANT-SPECIFICATION UUID="...">
<SHORT-NAME>DefaultInitValue_Double_1</SHORT-NAME>
<VALUE-SPEC>
<NUMERICAL-VALUE-SPECIFICATION>
<SHORT-LABEL>DefaultInitValue_Double_1</SHORT-LABEL>
<VALUE>1</VALUE>
</NUMERICAL-VALUE-SPECIFICATION>
</VALUE-SPEC>
</CONSTANT-SPECIFICATION>