もくじ
ROSを使用した差動2輪ロボット
ROS と KeiganMotor を用いた差動2輪ロボットのサンプルコードです。KeiganMotor を 2つ 使用することで実現可能です。
KeiganMotor Python ライブラリ をベースに開発しました。
以下(Github)を参照下さい。
https://github.com/keigan-motor/ros_km_dolly_simple
上記サンプルコードをより扱いやすくするため、Raspberry Pi model 3 B+ 用のイメージファイルにしました。
用意するもの
- Raspberry Pi3 Model B+
- KeiganMotor:2個(KM-1U KM-1Sどちらでも可)※
- microSDカード:16GB 以上
※KeiganMotor が 2個付属の ドリーキット または、ホイールキット がお勧めです。
SDカードへの書き込み
下記より MicroSDイメージ(ubuntu) をダウンロードし、解凍後に[.img]ファイルをMicroSD内へ入れてください。
【ダウンロードページ】(2.5GB)
※Raspberry Pi 3 Model B+ 専用(7zip)
※ディスクイメージの焼き込みには balenaEtcher がオススメです。
km_dollyの起動方法
起動と接続
上記で作成した Micro SD カードを Raspberry Pi 3 Model B+ に挿入後、電源を入れて以下情報でログインします。
■ログイン名:ubuntu ■パスワード:ubuntu
KeiganMotor の USB Type-C ポートをモバイルバッテリーに接続し、モーターの電源を入れます。
また、KeiganMotor の USB micro-B ポートと Raspberry Pi の USBポート を接続します。
KeiganMotor 固有アドレスの確認
以下のコマンドで KeiganMotor の 固有アドレス を確認します。
$ls /dev/serial/by-id/
usb-FTDI_FT230X_Basic_UART_ から始まるファイル名を記録して下さい。
確認結果の例:
usb-FTDI_FT230X_Basic_UART_DM00KHAH-if00-port0
usb-FTDI_FT230X_Basic_UART_DM00LSSA-if00-port0
固有アドレスを設定ファイルに反映
下記のファイルに KeiganMotor の接続アドレスを設定します。
/home/ubuntu/catkin_ws/src/km_dolly/src/launch/km_control_usb.launch
または
~/catkin_ws/src/km_dolly/src/launch
を編集します。
上記ファイルの以下の部分を、調べたモーターのアドレスに変更して下さい。
<arg name="right_w_addr" value="/dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DM00KHAH-if00-port0" /> <arg name="left_w_addr" value="/dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DM00LSSA-if00-port0" />
実行
下記によりファイルを実行します。
$ roslaunch km_dolly km_control_usb.launch
キーボードの操作キー説明
キーボードからの操作により、差動2輪ロボットが動作します。
| Key | 動作 |
|---|---|
| u | 左のみ前進 |
| i | 前進 |
| o | 右のみ前進 |
| j | 左に旋回 |
| k | 停止 |
| l | 右に旋回 |
| m | 左のみ後進 |
| , | 後進 |
| . | 右のみ後進 |
| q または z | 最大スピード +10% または -10% |
| w または x | 線速度 増加/減少 +10% または -10% |
| e または c | 角速度 増加/減少 +10% または -10% |
| Ctrl + c | 中断 |
その他詳しい説明は【こちら】をご覧下さい。

