Tentang proyek ini
Halo Dunia! Saya membuat 1 aplikasi kontrol servo kemarin dan saya mengatakan bahwa saya akan membuat multi kontrol, jadi inilah aplikasi multi kontrol! Saya juga membuat kode Arduino yang lebih baik. Ikuti langkah selanjutnya untuk skema, kode, daftar suku cadang, dan aplikasi.
Dapatkan aplikasi di: GOOGLE BERMAIN
Hubungi saya jika Anda menginginkan kode sumbernya!
Langkah 1:Daftar bagian
Hubungkan semuanya seperti dalam skema, unggah kode, unduh aplikasi, sambungkan Bluetooth setelah memasangkan perangkat dan itu akan berfungsi. Pastikan untuk menghubungkan RXD ke TX dan TXD ke RX.
Pastikan juga untuk TIDAK menghubungkan modul Bluetooth saat mengunggah.
Daftar suku cadang:
- Arduino Uno, (Gunakan Mega jika Anda ingin menggunakan lebih dari 6 Servo!) Saya menggunakan RobotDyn Uno.
- Modul Bluetooth HC-06, atau lainnya.
- 6 x Motor servo. (Dapat menguji dengan satu tentu saja )
- Setel kabel jumper MM/FF/MF
Semoga berhasil!
Ikuti langkah selanjutnya untuk mengetahui cara mengubah nama modul Bluetooth Anda, pin &baud rate. (opsional )
Langkah 2:Cara mengganti nama HC-06
Apa yang dibutuhkan?
- 1 x USB ke programmer mikrokontroler TTL untuk terhubung ke HC-06 Anda
Bagaimana cara menghubungkan Pemrogram?
Mari kita mulai:
- Hubungkan pemrogram TTL USB ke HC-06.
- Colokkan USB dan buka Arduino IDE.
- Ketik "AT" tanpa tanda kutip. Anda akan melihat respons di monitor Serial yang mengatakan "OK".
- Ketik "AT+NAMExyz". Setel nama modul ke “xyz” (Ganti xyz dengan nama yang Anda inginkan.) responsnya harus OKsetname.
- Ketik "AT+PIN1234". Setel pin ke 1234 (ganti 1234 dengan pin yang Anda inginkan) respons harus OKsetPIN. Untuk info lebih lanjut tentang mengubah baudrate dll, saya menyertakan file PDF. Semoga berhasil!
FPO4FLRIN7QTTG9.pdf
Kode
- BLUETOOTH_Servo_Control_Multi_Servo.ino
BLUETOOTH_Servo_Control_Multi_Servo.inoArduino
Kode untuk mengontrol beberapa servos./*Penulis:Danny van den Brande.Dengan kode ini Anda dapat mengontrol beberapa motor servo dengan menggunakan aplikasi android.Anda dapat menambahkan sebanyak yang Anda suka sampai pin Anda habis. Anda dapat menambahkan lebih banyak Servo dalam kode. Jika Anda menginginkan sumber aplikasi, hubungi saya. */#include Servo myservo1, myservo2, myservo3, myservo4, myservo5, myservo6, myservo7, myservo8, myservo9, myservo10;byte serialA;void setup(){ myservo1.attach (9); myservo2.attach(10); myservo3.attach(11); myservo4.attach(3); myservo5.attach(5); myservo6.attach(6);// myservo7.attach(); isi nomor pin jika Anda menggunakan lebih dari 6 servo saya biarkan kosong // myservo8.attach();// myservo9.attach();// myservo10.attach(); Serial.begin(9600);//ubah baudrate Anda menjadi baudrate modul Bluetooth jika diperlukan.}void loop(){ if (Serial.available()> 2) {serialA =Serial.read();Serial.println(serialA );} { unsigned int servopos =Serial.read(); unsigned int servopos1 =Serial.read(); unsigned int realservo =(servopos1 *256) + servopos; Serial.println(servo nyata); if (realservo>=1000 &&realservo <1180){ int servo1 =realservo; servo1 =peta(servo1, 1000,1180,0,180); myservo1.write(servo1); Serial.println("servo 1 AKTIF"); penundaan (10); } if (realservo>=2000 &&realservo <2180){ int servo2 =realservo; servo2 =peta(servo2,2000,2180,0,180); myservo2.write(servo2); Serial.println("servo 2 Aktif"); penundaan (10); } if (realservo>=3000 &&realservo <3180){ int servo3 =realservo; servo3 =peta(servo3, 3000, 3180,0,180); myservo3.write(servo3); Serial.println("servo 3 Aktif"); penundaan (10); } if (realservo>=4000 &&realservo <4180){ int servo4 =realservo; servo4 =peta(servo4, 4000, 4180,0,180); myservo4.write(servo4); Serial.println("servo 4 Aktif"); penundaan (10); } if (realservo>=5000 &&realservo <5180){ int servo5 =realservo; servo5 =peta(servo5, 5000, 5180,0,180); myservo5.write(servo5); Serial.println("servo 5 Aktif"); penundaan (10); } if (realservo>=6000 &&realservo <6180){ int servo6 =realservo; servo6 =peta(servo6, 6000, 6180,0,180); myservo6.write(servo6); Serial.println("servo 6 Aktif"); penundaan (10); }// if (realservo>=7000 &&realservo <7180){ //UNCOMMENT jika menggunakan lebih dari 6 Servos.// int servo7 =realservo;// servo7 =map(servo7, 7000, 7180,0.180);// myservo7 .write(servo7);// Serial.println("servo 7 On");// delay(10);// }//// if (realservo>=8000 &&realservo <8180){// int servo8 =realservo;// servo8 =peta(servo8, 8000, 8180,0,180);// myservo8.write(servo8);// Serial.println("servo 8 Aktif");// delay(10);// }/ /// if (realservo>=9000 &&realservo <9180){// int servo8 =realservo;// servo8 =map(servo9, 9000, 9180,0,180);// myservo8.write(servo8);// Serial. println("servo 9 Aktif");// delay(10);// }//// if (realservo>=10000 &&realservo <10180){// int servo10 =realservo;// servo10 =peta(servo10, 10000, 10180,0,180);// myservo10.write(servo10);// Serial.println("servo 10 Aktif");// delay(10);// } }}
Skema