İçindekiler:

Bluetooth Robot Mio: 4 Adım
Bluetooth Robot Mio: 4 Adım

Video: Bluetooth Robot Mio: 4 Adım

Video: Bluetooth Robot Mio: 4 Adım
Video: Bluetooth Kontrollü Araç 4WD | Arduino ile Uzaktan Kumandalı Araba Yapımı (HC06/HC05) | (Kod+Şema) 2024, Temmuz
Anonim
Bluetooth Robot Mio
Bluetooth Robot Mio

Adım 1: Malzemeler

Malzemeler
Malzemeler
Malzemeler
Malzemeler
Malzemeler
Malzemeler

1- Robot Mio

2- L298N Voltaj Regülatörü Çift Motor Sürücü Kartı

3- Arduino Nano

4- HC06 Bluetooth-Seri Modül Kartı

5- (2x) 9 V Pil Başlığı

Adım 2: Parçaları Birleştirme

Montaj Parçaları
Montaj Parçaları
Montaj Parçaları
Montaj Parçaları
Montaj Parçaları
Montaj Parçaları
Montaj Parçaları
Montaj Parçaları

Önce motor sürücü bağlantılarından başlayalım. Jumper kablolarını motor sürücüsünün in1, in2, in3, in4 pinlerinin altına lehimleyelim. (pic1 olarak) Ardından kabloyu in1'den nano'nun d6 pinine, in2 ila d10 pinine, in3 ila d5 pinine ve son olarak da kabloyu in4 ila d9 pinine bağlayalım. (2. resimdeki gibi) Şimdi HC06 modülümüzün bağlantılarını yapalım, RXD pinini nano'nun TXD pinine, TXD pinini RXD pinine, VCC ve GND pinlerini nano'nun herhangi bir 5v ve GND pinine bağlayalım. (pic3 olarak) Ve son olarak motor bağlantılarını yapalım. Mio bize dönükken sağ motor kablolarını motor sürücüsünün çıkış 3, 4 pinine, sol motor kablolarını çıkış1, 2 pinine bağlayalım. 9v pil kapağının kırmızı kablosunu VIN pinine bağlayalım. nano ve siyah kabloyu GND pinine bağlayın. (resim4 olarak) Ve ortasından bir jumper teli keselim, ucunu soyup nanonun GND pinine, motor sürücüsünün GND pinine bağlayalım. (resim5, 6) Başka bir 9v pil kafasının kırmızı kablosunu 12v pinine siyah kabloyu motor sürücü güç pinleri üzerindeki gnd pinine bağlayalım. (resim7'deki gibi)

Adım 3: Nano'yu Kodlamak

const int motorA1 = 5; // L298N'in IN3 Girişi

const int motorA2 = 6; // L298N'in IN1 Girişi const int motorB1 = 10; // L298N'in IN2 Girişi const int motorB2 = 9; // L298N'in IN4 Girişi

int i=0; //Döngüler için atanan rastgele bir uyum int j=0; //Döngüler için atanan rastgele bir uyum durumu int; //Bluetooth hakkından gelecek sinyallerin alabileceğini int vSpeed=255; // Standart Hız, 0-255 arası bir değer alabilir

void setup() { // Pinlerimizi belirleyelim pinMode(motorA1, OUTPUT); pinMode(motorA2, ÇIKIŞ); pinMode(motorB1, ÇIKIŞ); pinMode(motorB2, ÇIKIŞ); // 9600 baud hızında bir seri port açalım Serial.begin(9600); } void loop() { //Bluetooth bağlantısı koptuğunda veya kes aracını durdur. //(Aktif etmek için alt bilgin "//" larını.) // if(digitalRead(BTState)=LOW) { state='S'; }

//Gelen veriyi 'durum' durumuna uygun durumda if(Serial.read() > 0){ state = Serial.read(); } // Uygulamadan ayarlanabilen 4 hız seviyesi.(Değerler 0-255 arasında olmalı) if (state == '0'){ vSpeed=0;} else if (state == '1'){ vSpeed=100;} else if (durum == '2'){ vSpeed=180;} else if (durum == '3'){ vSpeed=200;} else if (durum == '4'){ vSpeed=255;} /*** ********************İleri******************************/ //Gelen veri 'F' ise araba ileri gider. if (durum == 'F') { analogWrite(motorA1, vSpeed); analogWrite(motorA2, 0); analogWrite(motorB1, vSpeed); analogWrite(motorB2, 0); } /*************************İleri Sol************************** //Gelen veri 'G' ise araba ileri sol(çapraz) gider. else if (durum == 'G') { analogWrite(motorA1, vSpeed); analogWrite(motorA2, 0); analogWrite(motorB1, 100); analogWrite(motorB2, 0); } /*************************İleri Sağ************************** //Gelen veri 'I' ise araba ileri sağ(çapraz) gider. else if (durum == 'I') { analogWrite(motorA1, 100); analogWrite(motorA2, 0); analogWrite(motorB1, vSpeed); analogWrite(motorB2, 0); } /*************************Geri************************** ****/ //Gelen veri 'B' ise araba geri gider. else if (durum == 'B') { analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed); analogWrite(motorB1, 0); analogWrite(motorB2, vSpeed); } /***********************Geri Sol************************ //Gelen veri 'H' ise araba geri sol(çapraz) gider else if (durum == 'H') { } /********************* *Geri Sağ************************/ //Gelen veri 'J' ise araba geri sağ(çapraz) gider else if (durum == ' J') { analogWrite(motorA1, 0); analogWrite(motorA2, vSpeed); analogWrite(motorB1, 0); analogWrite(motorB2, 100); } /********************************Sol******************** *********/ //Gelen veri 'L' ise araba sola gider. else if (durum == 'L') { analogWrite(motorA1, vSpeed); analogWrite(motorA2, 150); analogWrite(motorB1, 0); analogWrite(motorB2, 0); } /******************************Sağ******************** *********/ //Gelen veri 'R' ise araba parkına gider else if (durum == 'R') { analogWrite(motorA1, 0); analogWrite(motorA2, 0); analogWrite(motorB1, vSpeed); analogWrite(motorB2, 150); } /************************Durmak*********************** ******/ //Gelen veri 'S' ise arabayı durdur. else if (durum == 'S'){ analogWrite(motorA1, 0); analogWrite(motorA2, 0); analogWrite(motorB1, 0); analogWrite(motorB2, 0); } } analogWrite(motorA1, 0); analogWrite(motorA2, 100); analogWrite(motorB1, 0); analogWrite(motorB2, vSpeed);

Adım 4: Parçaları Mio'ya Yükleme

Parçaları Mio'ya Yükleme
Parçaları Mio'ya Yükleme
Parçaları Mio'ya Yükleme
Parçaları Mio'ya Yükleme
Parçaları Mio'ya Yükleme
Parçaları Mio'ya Yükleme

Artık robot mio'yu birleştirmek için son aşamadayız.

Önerilen: