Dabbleを使用して制御されたArduinoで作られた4輪ロボット
コンポーネントと消耗品
> ![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 4 | ||||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
アプリとオンラインサービス
> ![]() |
| |||
|
このプロジェクトについて
別のプロジェクト、別のすぐに使えるギフトのアイデア! Dabble制御の4輪ロボットを紹介します。これは、独自に開発したモバイルアプリケーションであるDabbleを使用してBluetooth経由で制御できる、構築が簡単で楽しいロボットです。ロボットを作成するために必要なのは、Arduino Unoボード、シャーシ、ホイール、モーターシャフト、およびその他の付属品とツールだけです。それを制御するには、Google PlayからDabbleをインストールし、Bluetoothとペアリングする必要があります。ロボットは場所に行く準備ができています!
当初と同じDIY精神で1年を締めくくるにはどうすればよいでしょうか。何を求めている!
それでは、始めましょう!
ステップ1:必要なもの <図>

- Arduino Uno Board
- ブレッドボード
- シャーシ
- モーターマウント
- DCモーター
- ホイール
- モータードライバー
- BluetoothモジュールHC05
- DC端子台
- バッテリー
- ジャンパーケーブル
ステップ2:体の作り方
まず、4輪ロボットの本体を作り始めます。
シャーシを取り出し、上下逆にします。
<図>
このシャーシに、M3ボルトとナットを使用して4つのモーターマウントを取り付けます。
<図>
DCモーターを固定し、M2ナットとボルトを使用してモーターマウントに固定します。
<図>
DCモーターの各シャフトにホイールを取り付けます。
<図>
アセンブリを裏返すと、体が作成されます。
<図>
ステップ3:脳を追加する
使用するマイクロコントローラーはArduinoUnoです。
<図>

その上ですべての接続を確立しますが、接続を確立するためにブレッドボードも使用します。
ステップ4:接続とモータードライバーの使用
下図のように接続してください。
<図>
Arduino Unoは4つのモーターを実行するのに十分な電力を提供していないため、モータードライバーを使用します。したがって、モータードライバーを追加し、ロボットに必要なエネルギーを与えることができます。
左側の2つのモーターは並列に接続されています。同様に、右側の2つのモーターも並列に接続されています。接続は次のように行われます。
- ピンを有効にする–デジタルピン10および11
- VCC – Arduino 5V
- m1_dir1、m1_dir2、m2_dir1、m2_dir2 –デジタルピン4、5、6、および7
- VC –外部バッテリー
- GND –ArduinoとBatteryのGNDすべてのGNDワイヤを接続していることを確認してください。
ステップ5:スマートフォンを接続する
ロボットとスマートフォンのDabbleアプリを接続するモジュールを追加する必要があります。
BluetoothHC05モジュールを使用しています。接続図のように接続してください。
<図>

ステップ6:バッテリーを追加する
ロボットに電源を追加する必要があります。また、Arduino Unoをバッテリーに接続するには、DC端子台またはDCジャックを使用します。
<図>

ステップ7:Arduinoコード
次のコードをアップロードします:
robot.ino
ステップ8:作業中
Dabbleを使用して、ロボットをスマートフォンに簡単に接続できます。
モジュールを操作する前に、作業しているBluetoothを接続する必要があります。
他の機能のためにアプリで利用できる多くのモジュールがあります。
<図>
<図>

今日はゲームパッドモジュールを使用します。
そして、ボタンの左側のセットを使用します:
- 上へ–前進
- 下へ–後ろに移動
- 左–左に曲がる
- 右–右に曲がる
ステップ9:結論
これで、DIYDabble制御の4輪ロボットの準備が整いました!
Psst!ご存知のとおり、Dabbleは、ロボットをワイヤレスで制御するだけではありません。ここで詳細を調べることができます!
コード
- robot.ino
- ライブラリを復活させる
robot.ino Arduino
/ * * *このプロジェクトでは、Dabbleアプリを使用してarduino 4輪ロボットを制御する方法を示します*デジタルモードでゲームパッドモジュールを使用します*ゲームパッドの詳細については、https://thestempedia.com/docs/dabble/game-にアクセスしてください。 pad-module / * *このプロジェクトでは、HC-05bluetoothモジュールを使用します* arduino "UNO"には、38400未満のbluetoothモジュールbuadrateを使用します* * bluetoothモジュールとarduinoの接続** HC-05bluetoothモジュール----> arduino "UNO" * * Tx ----> 2 * Rx ----> 3 * * Punit chotaliya、STEMpediaによって作成* 2019年1月16日** /// ArduinoプログラムにGamePadモジュールを含めるには//次のヘッダーを含める必要があります:#define CUSTOM_SETTINGS#define INCLUDE_GAMEPAD_MODULE // includeDabbleアプリライブラリ#include#define motor1_en 10 //モーター1イネーブルピン#definemotor2_en 11 //モーター2イネーブルピン# define motor1_dir1 4 //モーター1input1(InputA)# define motor1_dir2 5 //モーター1input2(InputA)#define motor2_dir1 6 //モーター2input1(InputB)#define motor2_dir2 7 //モーター2input2(InputB)void setup(){//セットアップコードをここに配置して実行一度:Serial.begin(9600); // 9600ボーレートを使用してシリアル通信を開始しますDabble.begin(38400); // Bluetoothモジュールのボーレートを入力します//注:arduino "UNO"の場合、38400未満のBluetoothモジュールのボーレートを使用しますfor(unsigned int i =4; i <8; i ++){pinMode(i、OUTPUT); // motor1とmotor2の入力ピンを出力ピンとして宣言します} pinMode(motor1_en、OUTPUT); //モーターのイネーブルピンを出力として宣言しますpinMode(motor2_en、OUTPUT); } void loop(){//メインコードをここに配置して、繰り返し実行します:Dabble.processInput(); // arduino UNOがモバイルアプリから取得したデータを更新するには、次のコード行を使用する必要がありますif(GamePad.isUpPressed())//ゲームパッドでUPが押された場合は、ロボットを前方に移動します{Serial.print ("上");前方(); } else if(GamePad.isDownPressed())//ゲームパッドでDOWNが押された場合、ロボットを後方に移動します{Serial.print( "DOWN"); back(); } else if(GamePad.isLeftPressed())//ゲームパッドでLEFTが押された場合、ロボットを移動しますLEFT {Serial.print( "Left");左(); } else if(GamePad.isRightPressed())//ゲームパッドで右が押された場合、ロボットを右に移動しますRIGHT {Serial.print( "Right");正しい(); } else //ロボットを停止します{Serial.println( "strop");やめる(); }} void forward()//ロボットの前進運動のための関数{analogWrite(motor1_en、255); analogWrite(motor2_en、255); digitalWrite(motor1_dir1、HIGH); digitalWrite(motor1_dir2、LOW); digitalWrite(motor2_dir1、HIGH); digitalWrite(motor2_dir2、LOW); } void back()//ロボットの後方移動のための関数{analogWrite(motor1_en、255); analogWrite(motor2_en、255); digitalWrite(motor1_dir1、LOW); digitalWrite(motor1_dir2、HIGH); digitalWrite(motor2_dir1、LOW); digitalWrite(motor2_dir2、HIGH); } void left()//ロボットの左移動のための関数{analogWrite(motor1_en、255); analogWrite(motor2_en、255); digitalWrite(motor1_dir1、LOW); digitalWrite(motor1_dir2、HIGH); digitalWrite(motor2_dir1、HIGH); digitalWrite(motor2_dir2、LOW); } void right()//ロボットの右移動のための関数{analogWrite(motor1_en、255); analogWrite(motor2_en、255); digitalWrite(motor1_dir1、HIGH); digitalWrite(motor1_dir2、LOW); digitalWrite(motor2_dir1、LOW); digitalWrite(motor2_dir2、HIGH); } void Stop()////移動しない関数{analogWrite(motor1_en、0); analogWrite(motor2_en、0); digitalWrite(motor1_dir1、LOW); digitalWrite(motor1_dir2、LOW); digitalWrite(motor2_dir1、LOW); digitalWrite(motor2_dir2、LOW); }
ライブラリを復活させる C / C ++
プレビューなし(ダウンロードのみ)。
回路図

製造プロセス
- Bluetoothで制御されるRaspberryPi Robot
- ArduinoとRaspberryPiを使用してインターネット制御のビデオストリーミングロボットを構築する
- RaspberryPiを使用したWifi制御ロボット
- プッシュボタンを使用したPWMによる調光ライト
- ラズベリーモーターシールドを使用したAndroid制御玩具
- サーボモーター付きロボット回避障害物
- ラインフォロワーロボット
- Nunchuk制御ロボットアーム(Arduino付き)
- 音声制御ロボット
- MobBob:Androidスマートフォンで制御されるDIY Arduino Robot
- Arduino制御ピアノロボット:PiBot