Bluetooth 制御 Raspberry Pi ロボットに音声フィードバックを追加して構築
このガイドでは、定番の Raspberry Pi ロボットプロジェクトに Bluetooth 制御と動的サウンドエフェクトを追加して拡張します。Arduino Uno を Bluetooth モジュールに接続、コマンドを Raspberry Pi に中継し、Python で各コマンドに対応する .wav ファイルを再生。動いて「喋る」リアルタイムロボットが完成します。
ステップ 1:パーツとハードウェア
- Raspberry Pi(USB ポート搭載モデル、Pi 3 以降推奨)
- Arduino Uno
- モータードライバー(例:L298N)とホイール/アクスル
- 9V 電池または Li-Po パック(ロボットベース用)
- Bluetooth シリアルモジュール(Silversilvermate または HC-05)
- 3.5 mm ジャック付きパワードスピーカー
- 接続ワイヤー、抵抗、ブレッドボード(必要に応じて)
- オプション:ロボット用ケースまたはシャーシ
すべてのコアコンポーネントは オリジナルロボット構築ガイド でカバーされています。Bluetooth モジュールは Zagros Robotics で購入可能。
ステップ 2:Raspberry Pi の準備
古い Raspbian リリースで問題となったオーディオジャックの不具合を避けるため、最新の NOOBS イメージ(v1.2.1 以降)を使用。Pi 起動後:
- ターミナルを開き Python 2.7(または 3.x)を確認。
python --version - 特定バージョンが必要な場合
sudo apt-get install python2.6でインストール(Python 2.7 は完全サポート)。 - Arduino との通信に必要なシリアルライブラリをインストール:
sudo apt-get install python-serial - 3.5 mm オーディオジャックを有効化:
amixer cset numid=3 1 /home/pi/Soundsフォルダを作成し、以下の WAV ファイルをダウンロード:forward.wavbackward.wavleft.wavright.wavstop.wav
- Python スクリプト zagbot-bt.py を
/home/piにダウンロードし実行可能に:sudo chmod +x /home/pi/zagbot-bt.py
ステップ 3:Arduino と Bluetooth の配線
Bluetooth モジュールを Arduino の SoftwareSerial ピン 2(TX)と 3(RX)に接続。配線図:
- Arduino TX(ピン 2) → Bluetooth RX
- Arduino RX(ピン 3) → Bluetooth TX
- Arduino 5V → Bluetooth VCC
- Arduino GND → Bluetooth GND
- Bluetooth CTS → Arduino RTS(オプション、フロー制御用)
zagbotbt.ino スケッチを Uno にアップロード。このスケッチは Bluetooth 経由で受信した文字列を、Raspberry Pi に接続された USB シリアルポートに転送します。
ステップ 4:Android 制御アプリ
サンプル Android APK Max_Control を Box からダウンロード。デバイスの SD カードに転送し、ES File Explorer などのアプリでインストール(チュートリアル)。アプリはシンプルなテキストコマンド(例:「FORWARD」「BACKWARD」)を Bluetooth 経由で Arduino に送信します。
ステップ 5:システムの実行
- ロボットベースに電源を投入し、Arduino が USB で Pi に接続されていることを確認。
- Pi で Python リスナーを起動:
python /home/pi/zagbot-bt.py - Android アプリを起動し、Bluetooth モジュールとペアリング。
- 移動ボタンを押すと、Pi のスピーカーから対応するサウンドが再生されます。
おめでとうございます – 完全に機能する Bluetooth 制御 Raspberry Pi ロボットが完成し、各コマンドに音声で反応します。さらに拡張したい場合:サウンドファイル追加、加速度計によるジェスチャー制御統合、将来性を考慮した Python 3 移行などが可能です。
製造プロセス
- DIY Wall-E 風 Raspberry Pi CD ボックスロボット
- Arduino & Raspberry Pi でインターネット制御ビデオストリーミングロボットを構築
- Raspberry Pi でジェスチャー制御ロボットを構築 – 加速度センサーと RF 通信でハンドフリー操作
- Raspberry Pi & Android スマホで Wi-Fi 制御ロボットを構築
- Pythonで作るWi-Fi制御Raspberry Piロボット - ステップバイステップガイド
- Android加速度センサーで操作するラジコン車両:Raspberry Pi・Arduino・モーターシールド連携
- ラズベリーパイとNode-REDでAlexaからLEDを制御する - 簡単ステップバイステップガイド
- Arduino Nanoで音声制御ロボットを自作
- MobBob:Arduino製ロボットをAndroidスマホでシームレスに制御
- 音声で家電を操作:GoogleアシスタントとBluetoothでArduino家電制御
- PiBot:Arduino駆動の精密ピアノ演奏ロボット