バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回はCANoeへ32bitFMUを組み込み仮想HILSとして動作させた。
1ms駆動ということもあり、かなりキレイな波形が取れた。
仮想HILSとしては十二分な性能と言える。
残りは仮想ECUとの連携向けての活動となる。
登場人物
博識フクロウのフクさん
イラスト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だけなの?
じゃー、あとはCAPLでXCPを書けばOKだよね。
いや、一旦真面目に構成を再確認しよう。
かなり複雑なことになってるはずだから。
FMUは動いたんだし、あとはXCPだけなんじゃない?
そのFMUのうちPID制御は仮想ECU側が処理するものだし、
指令器もCANoeのシグナルジェネレータではなく、
挙動比較のため、Python-canで作成したものを流用した方が良いだろう。
って考えていくと、どこに何のノードが居て、そのノードの役割が何なのか?
ってが割と複雑になると思う。
確かに話聞いてるうちに状況がわからなくなってきたぞ・・・。
CANoe版仮想HILSと仮想ECU連携の構成
まずは全体構成を図示しよう。
これは・・・。
確かにややこしい・・・。
Virtual CAN BusとCANoeシミュレーションバスの両方が出てきているけど、
これの関係性がイマイチわからないな・・・。
概念上は直結していると思って良いね。
ただ、CANoeから見るとVN16xxのようなデバイスを経て外部の実CANネットワークと繋がって離るような見え方はするけど。
ようわからんが、
直結ってことはわかって安心した。
FMU組み込み済みCANoeと仮想ECU連携に向けてのロードマップ
さて、この構成を実現するためのロードマップを書き出しておこう。
- python-can経由で指令を出すのでCANoe内の指令器をdisable。
- XCP関連のセットアップをするテストノードをCANoeに追加。
- CANoeテストノードにXCP関連セットアップのCAPLコードを実装。
- 制御器ノードにDAQ/STIMハンドリング用CAPLコードを実装。
手順としては4手順だけど、
規模感は読めないなー。
最初二つはCANoe上の操作で終わる話だから超軽い。
残り二つはCAPLを書くんでちょい重い。
ってことろか。
(相対的なヤバさ加減がわかっただけで結局実際のヤバさ加減がわからん)
まぁそんなに心配しなくても大丈夫・・・だと思うよ。
FMUの32bit問題みたいなことは起きない・・・と思う・・・。
(だんだん不安になってきた)
まとめ
まとめだよ。
- 残り作業はXCPだけではない。
- 構造が複雑なので一旦整理。
- Virtual CAN BusとCANoeシミュレーションバスは直結していると思って良い。
- 構造が複雑なので一旦整理。
- CANoe仮想HILSと仮想ECU連携のロードマップ提示。
- 指令器disable。
- テストノード追加。
- XCP関連セットアップ。
- DAQ/STIM関連。
バックナンバーはこちら。
コメント