バックナンバーはこちら
https://www.simulationroom999.com/blog/model-based-of-minimum-backnumber/
はじめに
今回こそXCPで計測をする。
登場人物
博識フクロウのフクさん

イラスト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
XCPで計測設定してみる

よし、とりあえず変数定義は終わったぞ!


お疲れさん。

じゃ、とりあえず計測してみよっか。

どうすればよい?

メニューの表示→新規Windowから
パラメータとトレースってWindowを作っておこう。


パラメータの方は変数を選ぶ画面になったよ。


そこは適当な変数を選んでおいて。

とりえあえず、ControlFlgって変数を選んでおいたよ。


じゃ、次はメニューの開始→測定設定→シグナル
![CANape、開始、測定設定、シグナル、パラメータ、測定設定の[測定シグナル]ダイアログを開きます](https://www.simulationroom999.com/blog/wp-content/uploads/2020/07/06_測定設定.png)

なんか大量の変数情報が出てきた。

そのなかControlFlgのところをCyclicで1ms周期に設定しておく。


これはどういう意味があるの?

計測はデフォルトだとpolling計測って状態になってるんで、
Cyclic指定しないとDAQにならないんだよ。
pollingでも一応計測できるけど、DAQの方が効率が良いんで
DAQに切り替えたってイメージ

ん?pollingだとどういう方法で計測することになるの?

CMDのUPLOADかSHORT_UPLOADを使うことになる。
ちなみにUPLOADの場合はSET_MTAも入るんで、
1つの変数の値を読み出すのに2つCMDが発行されることになる。

あー、そういえばあったね。
まぁDAQの方が効率が良いならDAQにしておこう。
XCPで計測

よし、この状態で計測を開始して、
トレースしてみる。

あ、なんか通信してそう。

パラメータWindowのControlFlgの値を変えてみて。

お、なんか値が変ったような感じだ。

じゃ、一旦計測を止めて、トレースWindowをちょっとさかのぼって・・・。
うん。ここらへんだな。

ん?DAQ計測してるみたいだけど、
DAQ以外の通信が一瞬入ったのかな?


太郎くんがパラメータWindowで値へ変更したタイミングで
SHORT_DOWNLOADとSHORT_UPLOADは発行されたって状態。
ちなみに今回のプロトタイプECUはSTIMには対応してないみたいだから
SHORT_DOWNLOADかDOWNLOADによる書き込みになる。

といことは、
プロトタイプECUに対してのRAM読み書きができたってこと?

そうだね。
これでXCP関連の設定は完璧って状態だ。

やっと終わった。

いや、
目的のBypassとしてはやっとスタート地点に立った状態だね。

まじか!
これだけやってまだスタートすらしていなかったのかYO!!

まぁ、全体の作業としては一応終盤に入ってはいるからもう一息だよ。
がんばって!

(これってホントに終わるのか?)
まとめ

まとめだよ。
- A2Lで変数定義ができれば、CANape上の計測対象設定は比較的簡単。
- DAQ計測をする場合は計測設定でCyclicを指定しておく必要がある。
- パラメータWindowに登録した変数は書き換えが可能。
- STIMに対応していればSTIMで、対応してなければDOWNLOAD、SHORT_DOWNLOADで書き換えとなる。
バックナンバーはこちら