Main Content

addPort

ポートの AUTOSAR コンポーネント、コンポジションまたはアーキテクチャ モデルへの追加

説明

ports = addPort(archCCM,portKind,portNames) は、タイプが portKind の 1 つ以上のポートをコンポーネント、コンポジションまたはアーキテクチャ モデル archCCM に追加します。portKind の有効な値は、'Receiver' および 'Sender' です。portNames 引数は、追加する 1 つ以上のポートの名前を指定します。archCCM 引数は、addComponentaddCompositionautosar.arch.createModel または autosar.arch.loadModel への以前の呼び出しにより返されるコンポーネント、コンポジションまたはアーキテクチャ モデルのハンドルです。ports 出力引数は、autosar.arch.CompPort オブジェクトまたは autosar.arch.ArchPort オブジェクトである 1 つ以上の端子ハンドルを返します。

すべて折りたたむ

AUTOSAR アーキテクチャ モデルで、次を実行します。

  1. Sensors という名前のコンポジションを追加します。

  2. モデルの最上位レベルで、Controller1 という名前のアプリケーション コンポーネントと Actuator という名前のセンサー/アクチュエータ コンポーネントを追加します。

  3. アーキテクチャ モデルには、2 つの受信 (入力) ポートと 1 つの送信 (出力) ポートを追加します。ポートはアーキテクチャ モデルの境界に表示されます。

  4. コンポジション ブロックには、2 つの受信ポートと 2 つの送信ポートを追加します。コンポジションの受信ポートの名前は、それらが接続するアーキテクチャ モデルの受信ポートの名前と一致します。

  5. コンポーネント ブロックには、受信ポートと送信ポートを追加します。コンポーネントの受信ポートと送信ポートの名前は、それらが接続するコンポーネント ポート、コンポジション ポートまたはアーキテクチャ モデル ポートの名前と一致します。

% Create AUTOSAR architecture model
modelName = 'myArchModel';
archModel = autosar.arch.createModel(modelName);

% Add a composition
composition = addComposition(archModel,'Sensors');

% Add components at architecture model top level
addComponent(archModel,'Controller1');
actuator = addComponent(archModel,'Actuator');
set(actuator,'Kind','SensorActuator');

% Add architecture ports
addPort(archModel,'Receiver',{'TPS_Hw','APP_Hw'});
addPort(archModel,'Sender','ThrCmd_Hw');

% Add composition ports
addPort(composition,'Receiver',{'TPS_Hw','APP_Hw'});
addPort(composition,'Sender',{'TPS_Perc','APP_Perc'});

% Add component ports
controller = find(archModel,'Component','Name','Controller1');
addPort(controller,'Receiver',{'TPS_Perc','APP_Perc'});
addPort(controller,'Sender','ThrCmd_Perc');
addPort(actuator,'Receiver','ThrCmd_Perc');
addPort(actuator,'Sender','ThrCmd_Hw');

layout(archModel);  % Auto-arrange layout

入力引数

すべて折りたたむ

1 つ以上のポートを追加する AUTOSAR コンポーネント、コンポジションまたはアーキテクチャ モデル。この引数は、addComponentaddCompositionautosar.arch.createModel または autosar.arch.loadModel への以前の呼び出しにより返されるコンポーネント、コンポジションまたはアーキテクチャ モデルのハンドルです。

例: archModel

指定したコンポーネント、コンポジションまたはアーキテクチャ モデルに追加する AUTOSAR ポートのタイプ。指定したタイプは、すべての追加するポートに適用されます。

例: 'Receiver'

指定したコンポーネント、コンポジションまたはアーキテクチャ モデルに追加するポートの名前。

例: {'TPS_Hw','APP_Hw'}

出力引数

すべて折りたたむ

autosar.arch.CompPort オブジェクトまたは autosar.arch.ArchPort オブジェクトであり、ポート プロパティをもつ 1 つ以上の AUTOSAR ポート ハンドルを返します。

バージョン履歴

R2020a で導入