このリポジトリには、TR-IMU-Platform2および TR-IMU16607 の通信用 Python ツールが入っています。
CAN FDでの確認用USB virtual COMでの確認用- 四元数の 3D 表示ビューア
USB 仮想 COM を ttyACM0 や COMx として開くシリアル実装を含みます。
imu2_canfd_test.py- CAN FD の受信確認用
imu2_canfd_cube_viewer.py- CAN FD の 3D ビューア
imu2_usbserial_test.py- USB serial の受信確認用
imu2_usbserial_cube_viewer.py- USB serial の 3D ビューア
- Python 3.10 以降を推奨
USB serial版はそのまま実行可能CAN FD版はSocketCAN前提のため、そのままでは実行不可
USB serial版とCAN FD版の両方を実行可能CAN FD版は Linux のSocketCANが必要
TR-IMU-Platform2もしくは、TR-IMU16607- 対応 IMU の評価ボード(
TR-IMU16607では不要) USB Type-Cケーブル(付属品)- pythonが実行できる上位 PC(
Windows 11または Linux)
graph TB
PC["Win11 or Linux"] <-->|"USB"| DEVICE["TR-IMU-Platform2 or TR-IMU16607"]
TR-IMU-Platform2(設定でCAN FDをオンにしておく)- 対応 IMU の評価ボード
SocketCAN対応の Linux PC(Jetson Orin Nano など)- CAN FD モジュールの例: スイッチサイエンス TCAN3413搭載 CANFDトランシーバーモジュール(3.3V対応)
- CAN FD の通信ケーブル 自作する必要あり
graph TB
PC["SocketCAN 対応の Linux PC"] <-->|" "| MODULE["CAN FDモジュール"]
MODULE <-->|" "| PLATFORM["TR-IMU-Platform2"]
pip install python-can pyserialpython-can- CAN FD 版で使用
pyserial- USB serial 版で使用
tkinter- 3D ビューアで使用
pip installでは追加しません- Windows 11 では公式 Python に通常同梱されています
- Ubuntu / Jetson Linux では
sudo apt install python3-tkで追加します
- Linux
SocketCANを使用 - デフォルトチャネル:
can0
- 通信条件:
921600 bps,8N1 - ボーレートはコード内で
921600固定 USBは仮想 COM として見えるUARTとUSBは同じプロトコルを使用
ポート指定例:
- Windows 11 USB serial:
COM3 - Jetson USB virtual COM:
/dev/ttyACM0
python imu2_canfd_test.pyCAN FD 版は起動時に自動で ip link 設定を行います。
python imu2_canfd_test.pypython imu2_canfd_cube_viewer.pyビューアは通常ユーザーで起動してください。必要な ip link 設定だけが内部で sudo 実行されます。
python imu2_canfd_cube_viewer.pysudo python ... で起動すると、tkinter が X11 / Display に接続できず失敗することがあります。
python imu2_usbserial_test.py --port COM3python imu2_usbserial_test.py --port /dev/ttyACM0python imu2_usbserial_cube_viewer.py --port COM3python imu2_usbserial_cube_viewer.py --port /dev/ttyACM0--channel can0- 使用する SocketCAN チャネル。省略時は
can0
- 使用する SocketCAN チャネル。省略時は
--no-setup-link- 自動の
ip link設定を行わず、既存の CAN 設定をそのまま使う
- 自動の
--response-timeout 3.0- 応答待ちタイムアウト
--response-retries 5- タイムアウト時の再送回数
--port COM3- 使用する COM / TTY
--response-timeout 3.0- 応答待ちタイムアウト
--response-retries 5- タイムアウト時の再送回数
--width 960--height 720--fps 60
- CAN FD を使用する場合、
TR-IMU-Platform2の設定でCAN FDをオンにしておく必要があります - 画面クリックで
CMD_RESET_FILTERを送信します - 下部に
imu_counterと四元数を表示します - CAN FD 版は Jetson Orin Nano / Linux の環境のみで動作確認済みです
- Windows環境ではwindows11 のみ動作確認済みです
