PyFMI

事例

【XCP】最小構成のMBD事例 第2章 その245【CAN-FD㉒】

仮想HILS側の修正後のコード開示。 前回までの修正範囲と内容を反映したのみ。 tkinter、matplotlibのコードもあり、肥大化しているが、基本一直線のコード。 タイマハンドラで周期的に呼ばれるくらい。 いろいろな要素が絡んでるので、次回は全体構成の再確認。
事例

【XCP】最小構成のMBD事例 第2章 その244【CAN-FD㉑】

指令値受取用バスの初期化変更。バス初期化の引数をFD用に変更するのみ。XCP DAQ受信部のレイアウト変更対応とLSB変更対応。xcp_canfdクラス作成時のテストコードと同じ対応。XCP STIM送信部のレイアウト変更対応とLSB変更対応。レイアウトはxcp_canfdクラス内で決めているのでLSB対応のみ。
事例

【XCP】最小構成のMBD事例 第2章 その243【CAN-FD⑳】

仮想HILSのCAN-FD対応方針整理。 数としてはそこそこあるが、一個一個は1行修正のレベル。 importしているxcp_canをxcp_canfdに変更。 上記のクラス変更に伴い、XCPインスタンスの生成部分変更。 importのところでエイリアスを使うのもあり。
事例

【XCP】最小構成のMBD事例 第2章 その242【CAN-FD⑲】

DAQリスナーCAN-FD対応版の動作確認を実施。 can.loggerのCAN-FDモードを並走さえて回線モニタを実施。 問題無くCAN-FDフレームが送出されていることを確認。 Bitrate_switchも有効になっている。 python-canの範疇では問題無しと判断できる。
事例

【XCP】最小構成のMBD事例 第2章 その241【CAN-FD⑱】

DAQリスナーのCAN-FD対応の要否ついて説明。 CANのみ対応のインターフェースはCAN-FDフレームを検知すると「異常フレーム」と認識しエラーフレームをもってフレーム破壊を行う。 よって、CAN-FDフレームが流れるネットワークにCANのみ対応インターフェースは接続禁止。 DAQリスナーの修正は一撃。
事例

【XCP】最小構成のMBD事例 第2章 その240【CAN-FD⑰】

xcp_canfdクラス動作確認を実施。 問題無く動作。 念のためxcp_canの時の動作確認結果とも比較。 同じ動きをしていることが確認できる。 CAN-FD回線モニタも実施し、CAN-FDフレームのレベルでも確認。 こちらも想定通りの動作をしていることを確認。 PID制御器もおおよそ狙い通り動いてそう。
事例

【XCP】最小構成のMBD事例 第2章 その239【CAN-FD⑯】

xcp_canクラス改めxcp_canfdクラスを作成。 xcp_canfdクラスのソースコードを開示。 前回までの修正分を盛り込んだのみ。 コンフィグレーション、ODT_ENTRY構成、STIMレイアウト、DAQレイアウト、STIM送信用データ。 次回は、これを実際に動作させてみる。
事例

【XCP】最小構成のMBD事例 第2章 その238【CAN-FD⑮】

STIMの送信レイアウト調整した。 int.to_bytesを使用指定していたので一撃で修正完了。 STIM送信時のrawデータ変換(浮動小数点→1/65536)を実施。 xcp_canのテストコードとしては送信データをリスト管理しているだけなので、そのリスト修正するのみ。 仮想HILS修正時に要注意。
事例

【XCP】最小構成のMBD事例 第2章 その237【CAN-FD⑭】

DAQ listのODT_ETNRYのデータ長変更(16bit→32bit)。 namedtupleを使用していたので修正は楽。 DAQの受信レイアウト調整。 int.from_bytesを使用してるので16bitから32bitへの変更は楽。 DAQ受信データの物理値変換(1/65536→浮動小数点)。
事例

【XCP】最小構成のMBD事例 第2章 その236【CAN-FD⑬】

xcp_canクラス改造箇所を整理。 予想以上に多いが、仮想HILSにXCPの都合を見せないための部分なので修正内容が集中し易い。 コンフィグレーション用のJSON記述の修正。 事前のPyXCP CAN-FD実験を元に修正。 SERIALを消して、FDとDATA_BITRATEと追加。