事例

事例

【上流検証】最小構成のモデルベース開発事例 その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、シグナル。
事例

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

今回からはそれをどう流用していくかの話へシフト。制御とインターフェースを分けたことで、インターフェースだけを差し替えるということは可能。だたし、簡単かどうかは別問題。Simulinkモデルがあればラピッドコントローラで疑似的なECUを作ることは可能。CANに限定するならば、車載ネットワークシミュレータを使用することも可能。
事例

【上流検証】最小構成のモデルベース開発事例 その21【可変周期PID】

今回は横道にそれて、ちょっとした実験を行うことにした。Δtをパラメータとして扱うことができる。これにより、PIDの駆動周期が可変でも対応可能。Δtと駆動周期が同時に変化するので、数学的には通常のPIDと同一と言える。総和法、差分法による誤差分があるため完全一致とはいかないが、ほとんどの制御では問題なく動作する。
事例

【上流検証】最小構成のモデルベース開発事例 その20【PID振動対策】

前回のプラントモデルの精度向上の続き。今回は実際にモデルの修正までする。時間も調整可能パラメータの一部と考える。さらに時間の単位も調整可能のパラメータと考えられる。積分単位時間を組み込むことで制御駆動周期が変わってもPID制御器の流用が効く。
事例

【上流検証】最小構成のモデルベース開発事例 その19【プラントリアル化後編】

前回のプラントモデルの精度向上の続き。今回は実際にモデルの修正までする。出力(仕事率)と速度の関係は質量が確定していれば算出可能。最大速度が確定していれば、定常ゲインが算出可能。
事例

【上流検証】最小構成のモデルベース開発事例 その18【プラントリアル化前編】

今回は制御対象ことプラントモデルの精度向上を考える。プラントモデルの精度を上げるためには本物の動作特性が必要。一次遅れ系を使っている場合、時定数と定常ゲインが重要。立ち上がり時定数と立下り時定数が異なる場合がある。プラント出力の偏差を見て切り替えるような仕掛けが必要になる。
事例

【上流検証】最小構成のモデルベース開発事例 その17【S-Function】

S-Functionを作る具体的な手順ってどうなってるの?という質問が来たので、S-Function Builderの使い方の説明。これ以外のS-Functionの作成方法もある。Simulinkに抵抗ある人はS-Functionから始めても良いかもしれない。出力を波形で見れる。複数のロジックの入出力の簡単な繋ぎ替えができる。