ラジコンカーをBluetooth操作ロボットに改造する方法
部品と用品
![]() |
SparkFun Arduino Pro Mini 328 - 3.3V/8MHz | × | 1 |
![]() |
Texas Instruments Dual H-Bridge motor drivers L293D | × | 1 |
必要な工具と機器
![]() |
はんだごて(汎用) |
アプリとオンラインサービス
![]() |
Arduino IDE |
このプロジェクトについて

RCカーはハックするのに最適で、安価にロボットのシャーシとして使えますが、種類が多すぎて選定が大変です。弟の誕生日プレゼントとして、何か本当にクールなものを作りたくて、このRCカー改造にたどり着きました。RCカーハックは簡単でもあり難しくもあります。RCカーの作りが千差万別で、定まったハック手法がないからです。でもこのハックは汎用的です。各パーツとモジュールの基本と理論もカバーします。モジュールを使っていますが、Pro Mini以外は自作回路にも挑戦してみてください。
Pro Miniは小さすぎて最初は扱いにくかったですが、楽しかったです。
動画もチェックして、チャンネル登録をお願いします!
ステップ1:適切なシャーシを選ぶ

パーツリスト
- Pro Mini
- L293Dモジュール
- HC-05(Bluetoothモジュール)
- RCカー
適切なシャーシ選び
シャーシ選びは駆動方式の問題です。多くの駆動方式がありますが、最もポピュラーな2つを解説します。
ディファレンシャルドライブ(差動駆動)とは?
「差動」とは2つのエンティティの差を意味し、ロボティクスでは2つのモーターの回転速度差を指します。この速度差に基づき、ロボットを2D平面上のあらゆる方向に動かせます。
2つのモーターが一直線上に、互いに反対側に車輪を接続されている場合(1本のシャフトに車輪ペアが接続されているような状態)、各モーターの回転速度が進行方向を決めます。両車輪が同速なら差はゼロ、直進します。両モーターの回転方向を反転させれば後退、速度差がゼロなら直線後退です。片側モーターの速度を変えると直進から外れます。例えば右モーターを遅くすれば速度差が生じ、右折します。さらに遅くすれば右折角度は鋭くなります。左折も同様です。
結論:右モーターが遅い→鋭い右折、左モーターが遅い→鋭い左折。M1(左)、M2(右)としていくつかのシナリオを示します。
ステアタイプドライブ(自動車型駆動)
ステアタイプドライブとは?
実世界で最も一般的ですが、ロボット界ではマイナーです。駆動輪ペアと操舵輪ペアが別々にあり、並進と回転が独立しています。しかし並進と回転は相互に関連するため、深刻な経路計画問題を抱えます。4輪は3輪や2輪より効率的です。前2輪で操舵、後2輪で駆動という構成が一般的。4輪ロボットのバランスは問題になりません。日常の自動車が4輪で、その存在と能力を証明しています。
自動車型駆動の欠点: 操舵機構の精密制御が必須。わずかな不正確さが大きなオドメトリ誤差を招く。非ホロノミック系のため経路計画が極めて困難かつ不正確。直接的な方向アクチュエーターがない。
以上の理由から、シンプルで扱いやすいディファレンシャルドライブの採用がベターです。
ステップ2:モーターを制御する

モーターを制御するには、モータードライバーと呼ばれるものが必要です。
モータードライバーとは?
モータードライバーは小さな電流増幅器です。低電流制御信号を受け取り、モーターを駆動できる高電流信号に変換するのが役割です。
多くのモータードライバーがありますが、ここではL293Dモータードライバーモジュールを使用します。
L293Dは、正逆両方向にDCモーターを駆動するためのモータードライバーICです。16ピンICで、2つのDCモーターを同時制御できます。L293D自体は5Vで動作し、モーター駆動用の外部電源(最大36V、最大600mA)が必要です。典型的なHブリッジ回路で動作し、高電圧をどちらの方向にも流せます。1つのL293D ICに2つのHブリッジ回路があり、2つのDCモーターを独立制御できます。
L293Dピン配置
| ピン | 機能 | 備考 |
|---|---|---|
| 1 | Enable 1,2 | モーター1イネーブル;アクティブハイ |
| 2 | Input 1 | モーター1 入力1 |
| 3 | Output 1 | モーター1 出力1 |
| 4 | Ground | GND (0V) |
| 5 | Ground | GND (0V) |
| 6 | Output 2 | モーター1 出力2 |
| 7 | Input 2 | モーター1 入力2 |
| 8 | Vcc 2 | モーター用電源;9-12V(最大36V) |
| 9 | Enable 3,4 | モーター2イネーブル;アクティブハイ |
| 10 | Input 3 | モーター1 入力3 |
| 11 | Output 3 | モーター1 出力3 |
| 12 | Ground | GND (0V) |
| 13 | Ground | GND (0V) |
| 14 | Output 4 | モーター1 出力4 |
| 15 | Input 4 | モーター1 入力4 |
| 16 | Vcc 1 | ロジック用電源;5V(最大36V) |
ステップ3:アプリについて

操作アプリは多数ありますが、自作しました。ロジックはシンプル:ボタン押下時にBluetooth経由で文字を送信し、Arduinoが処理します。
文字コマンドと機能
| 文字 | 機能 |
|---|---|
| X | ニュートラル(停止) |
| F | 前進 |
| B | 後進 |
| L | 左折 |
| R | 右折 |
ステップ4:全パーツを接続する

接続はシンプルです。以下の通り:
Bluetoothモジュール(HC-05)
HC-05 Arduino Vcc 5V Gnd GND Rx Tx Tx Rx
モータードライバー(L293D)
Motor Driver Arduino Pin 2 (In1) Pin 8 Pin 7 (In2) Pin 7 Pin 10 (In3) Pin 6 Pin 4 (In4) Pin 9 Pin 3,6 (Out1,2) Motor 1 Pin 11,14 (Out3,4) Motor 2 Pin 1 (En 1,2) 5V Pin 9 (En 3,4) 5V
ステップ5:コーディング

void setup() {
Serial.begin(9600);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
pinMode(9, OUTPUT);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
}
void loop() {
char var = Serial.read();
if (var == 'F') {
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
}
if (var == 'H') {
digitalWrite(frled1, HIGH);
}
if (var == 'B') {
analogWrite(speeden, 150);
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(bcled1, HIGH);
}
if (var == 'X') {
digitalWrite(9, LOW);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(frled1, LOW);
digitalWrite(bcled1, LOW);
}
if (var == 'L') {
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
}
if (var == 'R') {
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
}
}
このプロジェクトを楽しんでいただけたら幸いです。また近いうちに面白いプロジェクトを投稿予定なので、フォローして更新を受け取ってください。Facebookページもよろしく:https://www.facebook.com/makewithRex/
F09ZCJSIP2UG2XP.ino
回路図
製造プロセス
- Raspberry Piフィットネストラッカーでハムスターの日々の運動量を追跡
- コンセプトから現実へ:創造的デザインを具体的な製品に変える
- 車のエアコンが効かない!原因特定5ステップと修理費用目安
- ターボチャージャー選びの実践ガイド|目標馬力・用途・計算手順で失敗しない
- 車のドアハンドル修理:ステップバイステップ完全ガイド
- 車のエアコン ガスチャージ完全ガイド:手順・費用・注意点
- 車の錆(サビ)補修ガイド:表面錆・赤錆・穴あき別の修理手順
- 定期的なエンジンオイル交換が車を快調に保つ理由
- サプライチェーンを利益創出のエンジンへ:コストセンターからプロフィットセンターへの6つの戦術
- スマートフォンがコネクテッドカーの未来をどう形作るか
- C# コンストラクター:種類、例、高度なパターン


