メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

AUTOSAR Adaptive アプリケーション間でのメッセージ ポーリングを使用したイベント通信

この例では、メッセージ ポーリング モードでイベントを使用して相互に通信する 2 つの AUTOSAR Adaptive アプリケーションを展開する方法を示します。

AUTOSAR Blockset はデータにアクセスするためにポーリング モードとイベントドリブンのアプローチをサポートします。

ポーリング モードは、アプリケーションが定期的にデータを受け取り、追加処理のためにデータを使用する際に使用されます。ポーリング モードは、リアルタイム アプリケーションがコンテキストの不要な切り替えを回避するために必要です。周期的なアクティベーションは、ジッターを最小限に抑えるリアルタイム タイマーで駆動される場合があります。Simulink では、レートベースまたはエクスポート関数スタイルを使用してポーリングの動作をモデル化できます。

送信側アプリケーションは、サンプル時間に基づいて定期的に正弦波のデータを送信します。受信側アプリケーションは、ポーリング モードでもう一方のアプリケーションからのメッセージの可用性を定期的にチェックし、利用可能なメッセージがあれば受信します。

モデルを開く

この例では、AUTOSAR Adaptive モデル adaptive_msg_sender および adaptive_msg_polling_receiver を使用します。

adaptive_msg_sender model は、正弦波のデータを送信し、ara log ブロックで ara::log メッセージを使用してデータをログに記録します。

open_system('adaptive_msg_sender');

sender_model.png

adaptive_msg_polling_receiver モデルは、正弦波のデータを受信し、ara log ブロックで ara::log メッセージを使用して受信データをログに記録します。

open_system('adaptive_msg_polling_receiver');

rev4.png

モデルの展開

アプリケーションを展開すると、"Linux ランタイム マネージャー" アプリの [ターゲット ツリー] ペインに表示されます。

pollingrec_ui1.png

  • adaptive_msg_sender アプリケーションを選択し、[Linux ターゲット][ターゲットで実行][アプリケーションを起動] をクリックしてターゲットでアプリケーションを起動します。

  • adaptive_msg_polling_receiver アプリケーションを選択し、[Linux ターゲット][ターゲットで実行][アプリケーションを起動] をクリックしてターゲットでアプリケーションを起動します。

展開したアプリケーションで生成された ara::log メッセージがアプリの [ログ ビューアー] ペインに表示されます。これは、アプリケーションが通信していることを示しています。

pollingrec_ui2.png

  • adaptive_msg_sender アプリケーションを停止するには、そのアプリケーションを選択し、[Linux ターゲット][ターゲットで実行][アプリケーションを停止] をクリックします。

  • adaptive_msg_polling_receiver アプリケーションを停止するには、そのアプリケーションを選択し、[Linux ターゲット][ターゲットで実行][アプリケーションを停止] をクリックします。

参考

(Embedded Coder)

トピック