モデルベース開発

事例

【上流検証】最小構成のモデルベース開発事例 その56【ドライビングシミュレータ⑥】

PID制御が弱い場合、PゲインかIゲインを調整するのが一般的。しかし、今回はそもそも想定周期が異なっていた。時間の刻み(タイムスタンプ)が明確であれば、前回値との差で時間差が特定できる。この時間差を積分単位時間としてPIDの演算に組み込むことができる。(無事、伏線回収!)
事例

【上流検証】最小構成のモデルベース開発事例 その55【ドライビングシミュレータ⑤】

オープンソースドライビングシミュレータであるCARLAの話。PID制御の組み込みと、車速の取得ができたので動かす。PythonAPIを叩きすぎると重くなる。Sleep関数等を使用して処理の頻度を下げることで回避可能。
事例

【上流検証】最小構成のモデルベース開発事例その54【ドライビングシミュレータ④】

CARLAのサンプルのmanual_control.pyに制御を組み込む際はKeyboardControlクラスの_parse_vehicle_keysメソッドあたりに突っ込めば良い。車速はworld.player.get_velocity()で取得可能。ただし、3次元ベクトルで取得されるのでノルムに変換する必要がある
事例

【上流検証】最小構成のモデルベース開発事例 その53【ドライビングシミュレータ③】

オープンソースドライビングシミュレータであるCARLAの話。今回はとりあえず起動させるところまで。CARLAはWindows向け環境はある程度揃っている。とりあえず、動かす場合はmanual_control.pyがお手頃。
事例

【上流検証】最小構成のモデルベース開発事例 その52【ドライビングシミュレータ②】

オープンソースドライビングシミュレータであるCARLAの話。今回はPythonAPIについて。CARLAはPythonAPIを使ってPythonから制御できる。PythonはDLLを呼び出すことができる。よって、C言語書かれたPID制御をPythonから利用する場合はDLLにした方が良い。
事例

【上流検証】最小構成のモデルベース開発事例 その51【ドライビングシミュレータ①】

今回からオープンソースドライビングシミュレータであるCARLAの話。いつもの小芝居でスタート。オープンソースドライビングシミュレータのCARLA。自動運転のトレーニング用。車両だけでなく人も動かせる。
事例

【上流検証】最小構成のモデルベース開発事例 その50【Bypass⑯】

やっとBypass実施。いままでの内容を振り返った。一連の流れを大きく把握していれば、ツールが変っても適応できる。
事例

【上流検証】最小構成のモデルベース開発事例 その49【Bypass⑮】

CANapeでは計測対象の変数以外にCANape内でのみ読み書き可能なグローバル変数が定義できる。関数エディタから追加編集可能。SimulinkにCANapeIOブロックを繋ぐことでCANapeと連携可能なDLLが作成可能。CANoeと異なり、CANapeIOの変数名はCANapeと合わせる必要はない。しかし、合わせておいた方が楽ではある。グローバル変数をモニタすることが可能。SimulinkDLLの動作確認だけであれば、グローバル変数で見た方が問題が起きた際の実機との切り分けがし易い。
事例

【上流検証】最小構成のモデルベース開発事例 その48【Bypass⑭】

A2Lで変数定義ができれば、CANape上の計測対象設定は比較的簡単。DAQ計測をする場合は計測設定でCyclicを指定しておく必要がある。パラメータWindowに登録した変数は書き換えが可能。STIMに対応していればSTIMで、対応してなければDOWNLOAD、SHORT_DOWNLOADで書き換えとなる。
事例

【上流検証】最小構成のモデルベース開発事例 その47【Bypass⑬】

ASAP2 Studioを使った読み書き可能変数定義をやる。ASAP2 Studioで読み書き用の変数定義ができる。本来はmapファイルから設定する。A2Lの中には使用されていないパラメータも存在する。ResolutionとAccuracy。