事例

【上流検証】最小構成のモデルベース開発事例 その32【ネットワークRAPID⑤】

今回は、システム変数の定義と出力の仕方の話になる。SimulinkモデルからCANoeのシステム変数に出力する場合はSystemVriableOutputブロックを使用する。CANoeでシステム変数を定義できる。システム変数の型は、扱うシグナルに近いものを選択しておいた方が良い。
事例

【上流検証】最小構成のモデルベース開発事例 その31【ネットワークRAPID④】

SimulinkDLLの出力を2つのシグナルに渡すには2つの手法がある。Signal Outputブロックを2つ使用。システム変数に書き込んでからCAPLで各シグナルへ分配。複数の回線のシグナルを扱うにはゲートウェイノードを定義する必要がある。SimulinkDLL、CAPLのどっちを使うにしても同様の対応が必要。
事例

【上流検証】最小構成のモデルベース開発事例 その30【ネットワークRAPID③】

前回はMicroAutoBoxで使用されていたSimulinkモデルを取得した。このSimulinkモデルの主要ロジックだけを抜き出して単体テストをしてみる。Simulinkモデルだけでは正しい保証は困難。テストパターンとテスト結果もセットであれば、最も正しい仕様書になる可能性は高い。
事例

【上流検証】最小構成のモデルベース開発事例 その29【ネットワークRAPID②】

正直言うとまずはMicroAutoBox使った方が良い。すでに精度や性能の見積が出来ているのであれば、費用対効果を意識しだしても良い。プログラマブルな振る舞いの場合、MATLAB Functionブロックを使用した方が楽な場合がある。可能であれば、StateFlowの利用も検討しておくと状態の見える化が出来て吉。
事例

【上流検証】最小構成のモデルベース開発事例 その28【ネットワークRAPID①】

前回まででネットワークMILSは終了したが、何となく似たようなのネタスタート。違いは、ブラックボックスを許容してしまっている点?ダミーの信号を作る際は、普通はラピッドコントローラを使用する。時間精度がそれほど求められないのであれば、PCから制御するタイプでもある程度なんとかなる。
事例

【上流検証】最小構成のモデルベース開発事例 その27【ネットワークMILS⑥】

前回でCANoeのノードに組み込むSimulinkDLLを作成した。今回こそは動かす!dbc、モデル生成ウィザード、SimulinkDLL、シミュレーションまでの流れを復習。そしてやっと動かした!あとは徐々に本物と差し替えたりすると応用の幅が広がる。
事例

【上流検証】最小構成のモデルベース開発事例 その26【ネットワークMILS⑤】

CANoeに組み込むSimulinkDLLを作成するにはSimulinkCoderとCANoeのMATLABコンポーネントが必要。Simulinkモデルの入出力にCANoe IOのSingnal Input/Outputを接続してSignalを読んだり更新したりできる。SimulinkDLLはCANoeの各ノード毎に設定できる。
事例

【上流検証】最小構成のモデルベース開発事例 その25【ネットワークMILS④】

今回はCANoe上にネットワークを構築する。dbcファイルがあると、「モデル生成ウィザード」でCANoe上に自動でネットワーク構築できる。「シミュレーションバス」であれば、実際のCAN回線につなぐ必要はない。ノードパネルでシグナルの値を手打ちで変更可能。本格的にテスト利用するにはCAPL言語を使用した方が良い。
事例

【上流検証】最小構成のモデルベース開発事例 その24【ネットワークMILS③】

今回はこれらをdbcというネットワーク構成定義ファイルを作成する。CANoeでネットワーク構造を定義するにはdbcファイルを作成する必要がある。dbcファイルはCANdb++で作成。ネットワーク定義はノード、メッセージ、シグナルの階層構造になる。ノードにメッセージをぶら下げる。メッセージにシグナルをぶら下げる。
事例

【上流検証】最小構成のモデルベース開発事例 その23【ネットワークMILS②】

インターフェースがいきなりCANに変更になるという大惨事。まずは同等の環境を作るためVector社のCANoeを手配。CANはマルチマスタなネットワーク。しかし概念上は個別の信号線を模しているだけ。CANをうまく利用するためにはネットワーク構成を明確にする必要がある。ノード、CANID、シグナル。