M5StickC経由でのシリアル通信によるtoio制御
- USB側の接続に関係なく、M5StickCが起動していればキューブ(1個)との接続が行われます。
- キューブと接続できている場合は緑色、切断されている場合は赤色のラインが表示されます。
- キューブとの接続が切れた場合、自動的に再接続が行われます。
- 動作テスト用の機能として、Aボタンで前進、Bボタンで回転の操作ができます。
- キューブのx座標、y座標、角度、Standard ID、Standard IDでの角度がコンマ区切りでシリアルで送られてきます。
シリアルモニタからコマンドを送信してキューブを操作できます。
プログラムから制御する場合は、各コマンドの終端に改行コード(\n)を入れてください。
m [left_speed] [right_speed]
m [left_speed] [right_speed] [time_x100ms]
例:
左輪の速度100、右輪の速度100で移動
m 100 100
左輪の速度100、右輪の速度100で1000ms間移動
m 100 100 10
停止
m 0 0
d [x] [y] [max_speed]
d [x] [y] [max_speed] [angle] [move_type] [speed_type] [angle_type]
[move_type]
0:回転しながら移動
1:回転しながら移動(後退なし)
2:回転してから移動
[speed_type]
0:速度一定
1:目標地点まで徐々に加速
2:目標地点まで徐々に減速
3:中間地点まで徐々に加速し、そこから目標地点まで減速
[angle_type]
0:絶対角度/回転量が少ない方向
1:絶対角度/正方向
2:絶対角度/負方向
3:相対角度/正方向
4:相対角度/負方向
5:角度指定なし/回転しない
6:書き込み操作時と同じ(動作開始時と同じ角度)/回転量が少ない方向
例:
目標位置(500, 150)に速度100で移動
d 500 150 100
目標位置(500, 150)に速度100で移動、角度45度、回転しながら移動、加減速、絶対角度/回転量が少ない方向
d 500 150 100 45 0 3 0
s [id] [volume]
例:
音1を音量200で再生
s 1 200
こちらのコードをベースにしました。 https://github.com/Katsushun89/M5Stack_BLE_toio_controller