このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
AUTOSAR Adaptive アプリケーション間でのメッセージ トリガーを使用したイベント通信
この例では、メッセージ トリガー モードでイベントを使用して相互に通信する 2 つの AUTOSAR Adaptive アプリケーションを展開する方法を示します。
AUTOSAR Blockset はデータにアクセスするためにポーリング モードとイベントドリブンのアプローチをサポートします。
イベントドリブンのアプローチは、あるイベントまたはアクションのトリガーの際に、アプリケーションがデータと応答を想定する場合に使用されます。イベントは定期的にトリガーされるわけではありません。イベントドリブンのアプローチでは、サービス メソッドへの反応が高速になりますが、コンテキスト切り替えレートが高くなり、非確定的となる可能性があります。イベントドリブンのアプローチは、リアルタイムの要件がない場合により多く使用されます。Simulink では、エクスポート関数スタイルでのみイベントドリブンの動作をモデル化できます。
送信側アプリケーションは、サンプル時間に基づいて定期的に正弦波のデータを送信します。受信側アプリケーションは、メッセージ トリガーが呼び出されるたびにもう一方のアプリケーションからのメッセージの可用性をチェックし、利用可能なメッセージがあれば受信します。
モデルを開く
この例では、AUTOSAR Adaptive モデル adaptive_msg_sender および adaptive_msg_event_driven_receiver を使用します。
adaptive_msg_sender model は、正弦波のデータを送信し、ara log ブロックで ara::log メッセージを使用してデータをログに記録します。
open_system('adaptive_msg_sender');
adaptive_msg_event_driven_receiver model は、正弦波のデータを受信し、ara log ブロックで ara::log メッセージを使用して受信データをログに記録します。
open_system('adaptive_msg_event_driven_receiver');
モデルの展開
モデル ツールストリップで [アプリ]、[Linux ランタイム マネージャー] をクリックして "Linux ランタイム マネージャー" アプリケーションを開きます。
Linux ターゲット コンピューターのセットアップ (Embedded Coder)の手順に従って、Linux ターゲット コンピューターに接続します。
Simulink モデルのビルドとアプリケーションの展開 (Embedded Coder)の手順に従って、Linux ターゲット コンピューターに両方のモデルを展開します。
アプリケーションを展開すると、"Linux ランタイム マネージャー" アプリの [ターゲット ツリー] ペインに表示されます。

adaptive_msg_senderアプリケーションを選択し、[Linux ターゲット]、[ターゲットで実行]、[アプリケーションを起動] をクリックしてターゲットでアプリケーションを起動します。adaptive_msg_event_driven_receiverアプリケーションを選択し、[Linux ターゲット]、[ターゲットで実行]、[アプリケーションを起動] をクリックしてターゲットでアプリケーションを起動します。
展開したアプリケーションで生成された ara::log メッセージがアプリの [ログ ビューアー] ペインに表示されます。これは、アプリケーションが通信していることを示しています。

adaptive_msg_senderアプリケーションを停止するには、そのアプリケーションを選択し、[Linux ターゲット]、[ターゲットで実行]、[アプリケーションを停止] をクリックします。adaptive_msg_event_driven_receiverアプリケーションを停止するには、そのアプリケーションを選択し、[Linux ターゲット]、[ターゲットで実行]、[アプリケーションを停止] をクリックします。
参考
deployApplicationPackage (Embedded Coder)
トピック
- Simulink モデルのビルドとアプリケーションの展開 (Embedded Coder)
- サポート パッケージのインストール (Embedded Coder)