【XCP】最小構成のMBD事例 第2章 その171【XCP Basic㉕】

【XCP】最小構成のMBD事例 第2章 その171【XCP Basic㉕】事例
【XCP】最小構成のMBD事例 第2章 その171【XCP Basic㉕】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/

スポンサーリンク

はじめに

前回はDAQの送信方法の設定について。
TIMESTAMP有無や送信周期などを設定できる。

これでDAQの設定周りを終わったので、
実際にDAQ機能を開始される話に突入する。

スポンサーリンク

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

スポンサーリンク

DAQの開始方法

太郎くん
太郎くん

もうほぼDAQ関連の準備って終わったんじゃない?

フクさん
フクさん

そうだね。
あとはDAQの起動の話だけだね。

太郎くん
太郎くん

なら、あと1コマンド投げて終了!
ってところかな。

フクさん
フクさん

いんや。
2コマンドあるな。

太郎くん
太郎くん

あら?
そうなんだ。

フクさん
フクさん

DAQを開始させるパターンは大きく2パターン。

  • DAQ list毎に個別に開始。
  • 複数のDAQ listを開始可能状態にして一気に開始


2コマンドを使うのは後者の話だね。
今回はDAQ listは1個しかないけど、手数の多い後者側の手順で説明しよう。

太郎くん
太郎くん

そうね。
DAQ listが複数になった時に困るかもしれないからね。

スポンサーリンク

START_STOP_DAQ_LIST

フクさん
フクさん

DAQ list毎に対して開始停止の指示を出すのがSTART_STOP_DAQ_LISTコマンド。
開始停止以外に開始可能状態にすることもできる。

太郎くん
太郎くん

さっきも出てきた「開始可能状態」ってのは開始とは意味が違うの?

フクさん
フクさん

うん。
少なくともその状態ではまだ開始しない。
次に説明予定のSTART_STOP_SYNCHコマンドを投げた時に開始に移行する。
ってイメージだ。

太郎くん
太郎くん

なるほど。
一気に開始するための準備だけしておくって感じなのね。

フクさん
フクさん

実際の電文はこれになる。
0xDE, 0x02, 0x00, 0x00
2byte目がMode。
3~4byte目がDAQ_LIST_NUMBER
2byte目のModeがキモで
ここが
0x00なら停止。
0x01なら開始。
0x02なら開始可能状態として選択。
って意味になる。
今回は0x02なので「開始可能状態として選択」となるね。

太郎くん
太郎くん

じゃ、それで投げてみよう。

xcp_sendrecv([0xDE, 0x02, 0x00, 0x00, ]);
Send msg : Timestamp:        0.000000   ID: 0001 S DLC: 4 de 02 00 00
Recv msg : Timestamp: 1635852341.892757 ID: 0002 S DLC: 2 ff 00 Channel: 1

XCP Basicのコンソール画面

-> START_STOP mode=02h, daq=0
<- 0xFF
太郎くん
太郎くん

うん。
正常応答は来たって感じだ。

フクさん
フクさん

これであと1コマンドでDAQが開始できる状態まで準備が整った状態になったな。

太郎くん
太郎くん

結構いろいろコマンドを投げたなぁ。
ここまで手間だと思わなかった・・・。

フクさん
フクさん

まぁ手順は決まり切ってるから
一度仕組みを作ってしまえばDAQという時間精度の高い計測手段が得られるってわけだ。

太郎くん
太郎くん

まぁUPLOADコマンドとかだと時間保証って面ではイマイチそうだもんね。

スポンサーリンク

まとめ

フクさん
フクさん

まとめだよ。

  • DAQの開始方法は大きく2パターン
    • DAQ list毎に個別開始。
    • 開始可能状態にして複数のDAQ listを同時開始。
      • 今回は後者で実施。
  • START_STOP_DAQ_LISTコマンドで個別開始/停止と開始可能状態の設定できる。
    • これでDAQの開始条件は揃った状態となる。

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました