DoCAN

車両診断通信

【CanTp】車両診断通信 その25【シミュレーション⑫】

ISO-TPのシミュレーションをしよう。のシリーズ。 Pythonパッケージcan-isotpによる疑似ECU。 車両診断通信の大半はリクエスト-レスポンスで一つの通信。 例外的にリクエストのみ、レスポンスのみもあるが、かなりレアなパターン。 リクエスト側、レスポンス側ともに受信スレッドの仕組みでスクリプト肥大している。
車両診断通信

【CanTp】車両診断通信 その24【シミュレーション⑪】

can-isotpのマルチフレームリクエストの振る舞いを変えるためFC相当を変えてみた。 指定したSTminに準拠する振る舞いにはなった。 通信上の時間パラメータはシステム間で同期が取れないことを前提として幅を持たせている。 10[ms]以上ならば、11[ms]を狙って、確実に10[ms]以上を満たす。
車両診断通信

【CanTp】車両診断通信 その23【シミュレーション⑩】

ISO-TPのシミュレーションをしよう。のシリーズ。 Pythonパッケージcan-isotpのマルチフレームリクエストのパラメータについて。 can-isotpのデフォルト状態だとDLC最適化仕様が採用される。 CanStackに渡すパラメータでパディング、MIN_DLCを設定するとパディング仕様に切り替わる。
車両診断通信

【CanTp】車両診断通信 その22【シミュレーション⑨】

ISO-TPのシミュレーションをしよう。のシリーズ。 Pythonパッケージcan-isotpのマルチフレームリクエストの確認をするためのFCの辻褄合わせ。 python-canでちょっとしたタイミングを見計らったCANフレームの差し込みで対応。 これにより、とりあえずマルチフレームリクエストが通った。
車両診断通信

【CanTp】車両診断通信 その21【シミュレーション⑧】

Pythonパッケージのcan-isotpでISO15765-2ことISO-TPの通信ができる。 ただし、python-canも依存関係の都合上インストールされている必要がある。 とりあえずSF(SingleFrame)の送信はできた。 マルチフレーム送信はFF(FirstFrame)で止まってしまってエラー終了となった。 FFのあとにFCを受信しないと次のシーケンスに進めないプロトコル上の仕様。
車両診断通信

【CanTp】車両診断通信 その20【シミュレーション⑦】

ISO-TPのシミュレーションをしよう。のシリーズ。 今回はpyton-canを使用したプログラミング。 python-canがサポートしているデバイスを列挙した。 pyton-canによる送受信を実現した。
車両診断通信

【CanTp】車両診断通信 その19【シミュレーション⑥】

ISO-TPのシミュレーションをしよう。のシリーズ。 pyton-canのcan.playerによるCANログ再生&can.loggerによる収録。 can.playerで再生してcan.loggerで収録した。 can.loggerの収録ファイルフォーマットは3種類。 asc、blf、csv。
車両診断通信

【CanTp】車両診断通信 その18【シミュレーション⑤】

ISO-TPのシミュレーションをしよう。のシリーズ。 pyton-canのcan.playerによるCANログ再生。 python-canのインストールをした。 python-canの動作確認をした。 can.playerで送信してBusMasterで収録。 python-canの動作性能は1~2[ms]オーダー。 CANoe等だともっと早い。
車両診断通信

【CanTp】車両診断通信 その17【シミュレーション④】

ISO-TPのシミュレーションをしよう。のシリーズ。 Pythonのセットアップまで。 やっとPython。 Anacondaでやるけど、公式のWindows向けPythonでもOK。 ちゃんと一個ずつ動作確認しておいて方が良いよ!(自分に言い聞かせている。)
車両診断通信

【CanTp】車両診断通信 その16【シミュレーション③】

ISO-TPのシミュレーションをしよう。のシリーズ。 Virtual CAN BusをBusMasterで制御してみる。 BusMasterのセットアップをした。 BusMasterでVirtual CAN Bus上のCANフレームをモニタした。