こんばんは!
今回はこれまでの知識を使ってラジコンを作っていきたいと思います。
使用するもの
・Arduinoメインボード(https://amzn.to/2vkPIUH)
・USBケーブル(https://amzn.to/2UHhntl)
・ブレッドボード(https://amzn.to/38eNi8u)
・ジャンパワイヤ (https://amzn.to/39uBU8T)
・ビニール線(https://amzn.to/2RqnJx0)
・電池ボックス(https://amzn.to/2TKNkgB)
・TTモータ4つ(https://amzn.to/2RlhNFr)
・ポリカ板(https://amzn.to/2Fq3g4M)
・DCモータコントローラモジュールL298N(https://amzn.to/2RrcyUE)
・Bluetooth通信モジュールhc-06(https://amzn.to/3cp7yGD)
・工具 グルーガン、ニッパー、はさみ、はんだ、半田ごて、+ドライバ、ビニールテープ
手順
まずハード側からやっていきます。
最初にビニール線の皮をむきTTモータにはんだ付けします。
次に2つのTTモータのビニール線同士をはんだ付けして2本で1組にしていきます。
配線をすると、はんだ付けをした部分はむき出しになっているのでビニールテープで絶縁します。
グルーガンを用いてTTモータ4つをポリカ板に付け、TTモータにそれぞれタイヤを付けます。
次に図のようにHC-06、Arduinoメインボード、ブレッドボード、DCモータコントローラモジュール、TTモータ、電池ボックスを配線します。
配線したらポリカ板に乗せます。
これでハード側は終わりです。
次にプログラムを書いていきます。
Arduino IDEを開いて次のコードを書き込んでいきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | int data = 0; int in1 = 11; int in2 = 10; int in3 = 9; int in4 = 8; int enA = 5; int enB = 6; void setup() { pinMode(enA, OUTPUT); pinMode(enB, OUTPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); pinMode(in3, OUTPUT); pinMode(in4, OUTPUT); Serial.begin(9600);//シリアル通信開始、転送速度は9600ビット/秒 } void loop() { if (Serial.available() > 0) { data = Serial.read();//シリアル通信で受け取ったデータを読み込む } if (data == '0') { //止まる digitalWrite(in1, LOW); digitalWrite(in2, LOW); digitalWrite(in3, LOW); digitalWrite(in4, LOW); } else if (data == '1') { //進む digitalWrite(in1, HIGH); digitalWrite(in2, LOW); digitalWrite(in3, HIGH); digitalWrite(in4, LOW); analogWrite(enA, 80); analogWrite(enB, 80); } else if (data == '2') {//戻る digitalWrite(in1, LOW); digitalWrite(in2, HIGH); digitalWrite(in3, LOW); digitalWrite(in4, HIGH); analogWrite(enA, 80); analogWrite(enB, 80); } else if (data == '3') {//左 digitalWrite(in1, HIGH); digitalWrite(in2, LOW); digitalWrite(in3, LOW); digitalWrite(in4, HIGH); analogWrite(enA, 60); analogWrite(enB, 60); }else if (data == '4') { //右 digitalWrite(in1, LOW); digitalWrite(in2, HIGH); digitalWrite(in3, HIGH); digitalWrite(in4, LOW); analogWrite(enA, 60); analogWrite(enB, 60); } } |
簡単に説明すると、スマホからBluetoothで送られてきた信号を読み取り、
・0だと止まる
・1だと進む
・2だとバックする
・3だと右に進む
・4だと左に進む
という処理を行っています。
今回のプログラムはこの2つの記事を利用して書いているので詳しく知りたい方はぜひご覧ください。
これでメインボードに書き込みをして、Bluetooth Terminalというアプリを使ってArduinoとスマホ間でBluetooth通信をして、車体を動かすことができます。
Bluetooth接続のやり方についてもBluetooth接続の記事に書いてるのでぜひご覧ください。
製作過程、完成物を動画に載せました。
ちゃんと動いてますね。
まとめ
今回はこれまでの知識を使ってスマホで動かせるラジコンを作ってみました。
ちゃんと1つの物ができると楽しいですし、モチベーションにもなりますね。
これからこの車体に自動で走るなどの機能も実装していきたいです。
ちなみにBluetooth接続の記事にも書いてありますが、HC-06 は技適がないので注意が必要です。
今回はこれで終わります。
ではまた!