バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回はCANoeでFMU import&動作実験の全体構成を提示、
ネットワーク構成と論理構成で、FMU間の信号はCANで接続。
実は以前SimulinkDLLをCANoeで駆動させた時と近似の構成となっている。
実験構成も確認したところで、今回から細かい作業に入っていく。
登場人物
博識フクロウのフクさん
![指差しフクロウ](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
![技術者太郎](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
dbcファイルについて
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
さて、全体構成も確認できたところで、
細かい作業に入っていく。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
具体的には何をすれば良いの?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
dbcファイルの作成だな。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者03アップ.png)
あー、CANに載せるシグナルを定義していくやつかー。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
厳密にはネットワーク構成の定義だね。
dbcはCANメッセージとそれに載せるシグナルの定義だけでなく、
ネットワーク上にあるノードの定義もできる。
そのノードの対して送信CANメッセージの割り当てができるイメージだ。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
そのノードをdbcで定義してどうするの?
実際のノードってCANoe上で設定して作るんでしょ?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
CANoe上で手動でノードを増やしたり削ったりもできるんだけど、
データベースのインポートウィザードって機能があって、
これを使うとdbcで定義したノードが自動生成される。
当然、ノードに紐づいた送信CANメッセージも定義さえるんで、
dbcファイルで管理できるならdbcファイルでやった方が楽だね。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」20アップ.png)
そんな便利な機能があったのか・・・。
というかCANoeとかCAN回線モニタ用で使うことがほとんどだったし。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/考え中フクロウ.png)
それはもったいない使い方だな。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
まぁ便利なものは概念も複雑であることが多いから仕方のないことかもね。
使い方をしれば利用もできるようになるし、今後はうまく使うようにするんだね。
シグナルをCANへ紐づけるためのdbc作成
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
dbcの作成はCANdb++エディターというものを使う。
CANoeから起動可能なアプリケーションで、
上部のメニューの「ツール→CANdb++エディター」で起動できる。
![CANoeCANdb++エディター起動、ツール、CANdb++エディター、ファイル、ホーム、解析、シミュレーション、診断、環境、ハードウェア、AUTOSARエクスプローラー、CANeds、PreCANopen、セキュリティーマネージャー、CAPLブラウザ](https://www.simulationroom999.com/blog/wp-content/uploads/2022/01/02_CANoeCANdbエディター起動.png)
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
CANdb++エディター起動が起動したっぽい。
けど、当然カラッポだ。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
ファイル→新規
を選ぶとテンプレートのリストが出てくる。
ここでは「Vector_IL_Basic Template.dbc」を選択。
dbcの保存画面になるけど、好きな名前で保存。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
保存した。
fmutestって名前にしておいた。
なんか右の方にそれっぽいリストが並んできたね。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
ネットワークのリストの中にネットワーク「fmutest」ってのがあるはずなんで、
これを右クリックして「ネットワークを編集」を選ぶ。
そうすると以下のダイアログが出てくる。
プロトコルがUnspecifiedになってると思うから、これをCAN-FDにしておく。
![CANeb++エディターネットワークを編集、ネットワーク、fmutest、定義、名前、プロトコル、Unspecified、CAN-FD](https://www.simulationroom999.com/blog/wp-content/uploads/2022/01/03_CANebエディターネットワークを編集.png)
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者a」05アップ.png)
たぶんOK。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/考え中フクロウ.png)
まぁここでプロトコルを選ばなくてもCANoe側のバス設定が優先されるっぽいから、やらなくてもOKな可能性はあるが、念のためにやっとくってところだ。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
ここからノード、メッセージ、シグナルと定義していくわけだが、それは次回。
まとめ
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
まとめだよ。
- dbcファイルについて簡単に説明。
- CANメッセージとそれに載せるシグナルだけでなく、ネットワークノードの定義もできる。
- ネットワークノードを定義しておくと、CANoeのインポートウィザードでノードの自動生成をしてくれる。
- CANメッセージとそれに載せるシグナルだけでなく、ネットワークノードの定義もできる。
- dbcファイルを作成開始。
- CANeb++エディターを使用。
- プロトコルの設定まで実施。
- CANeb++エディターを使用。
バックナンバーはこちら。
コメント