MIRSMG5 管理台帳へ戻る
名称 |
Arduino ソフトウエア解説 |
番号 |
MIRSMG5D-SOFT-0001 |
版数 |
最終更新日 |
作成 |
承認 |
改訂記事 |
A01 |
2024.03.25 |
牛丸真司 |
小谷進 |
初版 |
|
|
|
|
|
Arduino ソフトウエア解説
1. 概要
- MG5の Arduino の標準ソフトウェアは、タイヤ径、ギア比、エンコーダ解像度などの走行パラメータ以外は、MG4 の Arduino 標準プログラムを
そのまま引き継いだものである。
- Arudino ソフトウェアの主要な役割は、RaspberryPi 側から受け取った動作指令に対応する走行制御を行うことである。
- ロータリーエンコーダのカウント値を利用して、モータの速度制御をPI制御で、機体の直進・回転制御をPID制御で実装している。
- プログラム開発にはArduino IDE を用いる。
2. 動作概要
- プログラム処理の起点となるloop関数は mg4_arduino_ver*.ino に実装され、そこから slave または test_* ルーチンが
呼び出される。
- slave ルーチンは、RaspberryPi との通信、走行制御を一定周期で実行する。
- test_* ルーチンは、testモジュールに実装されたテストプログラムのいずれかを実行する。
- ロータリーエンコーダのA層信号を用いた割り込み処理により、エンコーダカウントが行われる。
3. モジュール構成
Arduino プログラムは下図のように、一定周期で各種の処理実行させるモジュール(slave)、RaspberryPiとの通信モジュール(raspi)、走行制御系モジュール(run_ctrl, vel_ctrl, motor, distance, encoder)と
その他のデバイス情報取得モジュール(io)からなる。
Arduinoソフトウェア モジュール構成図
これ以外に、これらのモジュールの動作試験を行うためのプログラムをまとめたテストモジュール(test)、loop関数を
実装するモジュール(mg4_arduino)がある。
4. バージョンアップ履歴
- Ver1.0.0 (2024年3月リリース)
基本的にはMG4の最終バージョン(MG4 Ver 3.2.0)の走行系パラメータを変更したものだが、
MG5用のファーストバージョンなのでバージョン名を Ver.1.0.0 とした。