バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/
はじめに
前回まででmodelDescription.xmlの内容を確認した。
一応変数定義として使用される主なパラメータは確認できた状態。
実際のFMU/FMI対応ツールでこれら変数がどのように見えるのかはここからは正確には分からない。
とりあえず、手元で見れそうなツールで見ようと思うが・・・。
登場人物
博識フクロウのフクさん

イラスト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
FMU/FMIを読めそうなツール

とりあえず、前回まででmodelDescription.xmlの話は終わりで良いのかな?

そうだね。
必要最低限の説明はできたと思う。

(必要最低限か・・・。)

実際にツールに読ませるとどんな感じになるかってのも見てみたいなー。

以前、太郎くんがFMU/FMIを使えそうなツールを調査してくれてたね。

その中ですぐ試せそうなのがあるかどうか・・・。
ツール名 | ベンダー | 性質 | 備考 |
---|---|---|---|
MATALAB/Simulink | MathWorks | 数値解析 | R2017b以降で使用可能 |
LabView | National Instruments | 計測/制御 | LabView2016以降且つアドイン(無償) |
ControlDesk,AutomationDesk | dSPACE | HILS、RapidController | VEOSというモデル統合ツールが必要 |
INCA | ETAS | 車両計測 | |
CANoe | Vector | 車両ネットワーク | ※ CANapeは未対応? |

うーん、MATALAB/Simulinkはあるけど、Versionがちょっと足りてないんだよなー。

そういえばCANoeがあったな。

おー!
じゃーそれで見てみよう。
CANoeでFMU/FMIを確認

とりあえずCANoeを起動して・・・。

あれ?
どこを操作すればいいんだ?

確か「環境」→「ツールの連結」→「Function Mockup Interface」で行けたと思うよ。

おー。こんな感じか。


あ、なんかFMUの中で使ってそうな変数が出てきた。


ほう。
こんな感じで見えるのか。

どうやら、CANoeのシステム変数に割り付けされるみたいだな。
これだったらCAPL経由で読み書きが簡単にできそうだ。

なんか普通に使えそうで安心した。
今後の予定

次はどうしよっか?
そのままCANoe使ってみる?

そうだねー。
折角modelDescription.xmlの仕様を勉強したわけだから、
それの知識を生かして、
C言語からFMU/FMIを読み出してみるか。

え?そんなことできるの?

たぶん?
ダメだったらダメで・・・。

ダメなりの話をネタにすれば良いってことか・・・。

ちなみにうまく行く可能性は?

結構高いと思うよ。
多分CANoeの中も同じやり方でFMU/FMIを制御してるんじゃないかなー。

ほう?
ということは割と標準的な手法があるって感じなのか。

うん。
その認識でOKだ。

じゃーやってみようかー。
まとめ

まとめだよ。
- FMU/FMIを読めそうなツールを確認。
- 以前、太郎くんが調査した情報をベースに確認。
- CANoeがすぐ使えそうだった。
- 以前、太郎くんが調査した情報をベースに確認。
- CANoeでFMU/FMIの変数確認。
- 問題無く確認できた。
- FMU/FMIの変数をCANoeのシステム変数に割り付ける形。
- よって、CAPLからでも簡単に制御できそう。
バックナンバーはこちら。
コメント