Python

事例

【XCP】最小構成のMBD事例 第2章 その149【XCP Basic③】

XCPのシミュレーション環境が欲しい。候補としてはVector社で無償で公開されているXCP basicがある。XCP basicはEULAとしてはVector社の責が無いことを前提に自由にして良い。サポートが必要な場合は有償。XCP ProfessionalやMICROSAR XCPというプロプライエタリ品もある。
事例

【XCP】最小構成のMBD事例 第2章 その148【XCP Basic②】

ECUの外側の疑似化にXCPを使うってのはインターフェースをXCPにするってことだった。以前やったBypassとはデータの流れは逆向きになっている。XCPで直接RAMの読み書きを行うことで物理的なインターフェースの制約を無視できる。逆に物理的な制約に紐づいた検証はできないという欠点はある。
事例

【XCP】最小構成のMBD事例 第2章 その147【XCP Basic①】

「HILSもどき」を利用した試したい事はXCPを利用することらしい。XCPはBypass関連の記事で一年以上前にやったことはある。BypassはECUの一部の機能をXCPを使って疑似化するもの。今回やろうとしていることはECUの外側をXCPを使って疑似化するもの。詳細は次回説明予定。
事例

【PyFMI】最小構成のMBD事例 第2章 その146【CAN連携⑩】

「指令器」と「FMU処理&グラフ描画処理」の結合実験実施。共に問題無く動作。CANの送信周期が100msというのもあって、波形もキレイ。上記の状況を動画で確認。「HILSもどき」というおおよそ目的を達成した気もするが、他のアプローチも試したいのでこのシリーズはまだまだ続く。
事例

【PyFMI】最小構成のMBD事例 第2章 その145【CAN連携⑨】

CAN連携の受信側(FMU処理、グラフ描画)のコードを開示。__init__にバズ初期化とチェックボックス配置。FMU_handlerでCAN受信。ただし、タイムアウト0秒のポーリング方式。一応起動することだけは確認済み。あとは指令器側のCAN送信との連携を試すのみ。
事例

【PyFMI】最小構成のMBD事例 第2章 その144【CAN連携⑧】

GUI(tkinter)にチェックボックス追加。「can rcv」というチェックボックス。チェック時に受信有効になる想定。CAN受信にチェックボックス判定追加。if文を追加したのみ。バス初期化、チェックボックス生成は__init__メソッドに追加予定。CAN受信はFMU処理のタイマハンドラ内に追加予定。
事例

【PyFMI】最小構成のMBD事例 第2章 その143【CAN連携⑦】

CAN受信用にモード切替のUIが必要。チェックボックスで実施予定。CAN受信のimport、バス初期化はCAN送信側といっしょ。実際の想定受信コードも記載。スレッドを使うことも可能だが、タイムアウトを0秒にするポーリング型を想定。とりあえず、負荷に影響を与えない&シンプルな実装にする。
事例

【PyFMI】最小構成のMBD事例 第2章 その142【CAN連携⑥】

Python-CANで送信確認。送信は成功している。BusMasterで確認。送信状況はモニタできている。100ms周期より若干上振れしている。Sleepで周期を作っているため、どうしても上振れ方向になる。よって、今回は気にせず指令器としてはOKとする。
事例

【PyFMI】最小構成のMBD事例 第2章 その141【CAN連携⑤】

Python-CANで指令値送信のコードを提示。CAN関連の前回までの復習の話のまんま。利便性を上げるためにコマンドライン引数を取り込む機能追加。送信周期変更と繰り返し処理切替を追加。動作確認はBusMasterでモニタすることで実施予定。実際のCANだと対抗機が必要だがVirtual CAN Busでは不要。
事例

【PyFMI】最小構成のMBD事例 第2章 その140【CAN連携④】

バックナンバーはこちら。はじめに前回はCAN経由で渡した情報やPython-CANのインストール、importの話。今回はバス初期化、送信の仕方の復習になる。一応、同じ話は過去記事でも扱ってはいる。登場人物博識フクロウのフクさんイラストAC...