Turinys:

„Bluetooth Robot Mio“: 4 žingsniai
„Bluetooth Robot Mio“: 4 žingsniai

Video: „Bluetooth Robot Mio“: 4 žingsniai

Video: „Bluetooth Robot Mio“: 4 žingsniai
Video: Xiaomi Gateway 4 - Mihome автоматизации 2.0 2024, Liepa
Anonim
„Bluetooth Robot Mio“
„Bluetooth Robot Mio“

1 žingsnis: medžiagos

Medžiagos
Medžiagos
Medžiagos
Medžiagos
Medžiagos
Medžiagos

1- Robotas Mio

2- L298N įtampos reguliatorius Dviejų variklių vairuotojo lenta

3- „Arduino Nano“

4- HC06 „Bluetooth“serijos modulio plokštė

5- (2x) 9 V akumuliatoriaus galvutė

2 žingsnis: dalių surinkimas

Dalių surinkimas
Dalių surinkimas
Dalių surinkimas
Dalių surinkimas
Dalių surinkimas
Dalių surinkimas
Dalių surinkimas
Dalių surinkimas

Pirmiausia pradėkime nuo variklio tvarkyklės jungčių Lituokime trumpiklius po variklio tvarkyklės kaiščiais in1, in2, in3, in4. (kaip 1 pav.) Tada prijunkite kabelį nuo 1 prie nano d6 kaiščio, nuo 2 iki d10 kištuko, nuo 3 iki d5 kaiščio ir galiausiai įkiškite kabelį į in4 iki d9 kaištį. (kaip 2 paveiksle) Dabar prijunkime savo HC06 modulį, prijunkime RXD kaištį prie nano TXD kaiščio, TXD kaištį prie RXD kaiščio, VCC ir GND kaiščius prie bet kokių 5 n ir GND kaiščių. (kaip 3 pav.) Galiausiai sujunkime variklio jungtis. Kai „Mio“atsigręžia į mus, prijunkime tinkamus variklio kabelius prie variklio tvarkyklės 3, 4 kaiščių ir kairiuosius variklio kabelius prie 1, 2 kaiščių. Prijunkime raudoną 9 V akumuliatoriaus dangtelio kabelį prie VIN kaiščio nano ir juodas kabelis prie GND kaiščio. (kaip 4 pav.) Ir perpjaukime trumpiklį per vidurį, nuimkite galą ir prijunkite jį prie nano GND kaiščio, prie variklio tvarkyklės GND kaiščio. (kaip parodyta 5, 6 pav.) Prijunkime raudoną kitos 9 V akumuliatoriaus galvutės kabelį prie 12 V kaiščio, o juodą - prie GD kaiščio, esančio variklio vairuotojo maitinimo kaiščiuose. (kaip 7 paveiksle)

3 žingsnis: Nano kodavimas

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

const int variklisA2 = 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 değişken int j = 0; // Döngüler için atanan rastgele bir değişken int state; // „Bluetooth“cihazından gelecek sinyalin değişkeni int vSpeed = 255; // Standart Hız, 0-255 arası bir değer alabilir

void setup () {// Pinlerimizi belirleyelim pinMode (motorA1, OUTPUT); pinMode (motorA2, OUTPUT); pinMode (variklisB1, OUTPUT); pinMode (variklisB2, OUTPUT); // 9600 baud hızında bir seri port açalım Serial.begin (9600); } void loop () {// Bluetooth bağlantısı koptuğunda veya kesildiğinde arabayı durdur. // (Aktif etmek için alt satırın "//" larını kaldırın.) // if (digitalRead (BTState) == LOW) {state = 'S'; }

// Gelen veriyi 'state' değişkenine kaydet if (Serial.available ()> 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 (būsena == '2') {vSpeed = 180;} else if (state == '3') {vSpeed = 200;} else if (state == '4') {vSpeed = 255;} /*** ******************** İleri ***************************/ // Gelen veri 'F' ise araba ileri gider. if (state == 'F') {analogWrite (motorA1, vSpeed); analogWrite (variklisA2, 0); analogWrite (variklisB1, vSpeed); analogWrite (variklisB2, 0); } /********************* İleri Sol ************************ /// Gelen veri 'G' ise araba ileri sol (çapraz) gider. else if (state == 'G') {analogWrite (motorA1, vSpeed); analogWrite (variklisA2, 0); analogWrite (variklisB1, 100); analogWrite (variklisB2, 0); } /********************** İleri Sağ ************************ /// Gelen veri 'I' ise araba ileri sağ (çapraz) gider. else if (state == 'I') {analogWrite (motorA1, 100); analogWrite (variklisA2, 0); analogWrite (variklisB1, vSpeed); analogWrite (variklisB2, 0); } /*********************** Geri *********************** ****/// Gelen veri 'B' ise araba geri gider. else if (state == 'B') {analogWrite (motorA1, 0); analogWrite (motorA2, vSpeed); analogWrite (variklisB1, 0); analogWrite (variklisB2, vSpeed); } /********************** Geri Sol ************************ /// Gelen veri 'H' ise araba geri sol (çapraz) gider else if (state == 'H') {} /******************** *Geri Sağ ************************/// Gelen veri 'J' ise araba geri sağ (çapraz) gider else if (state == ') J ') {analogWrite (variklisA1, 0); analogWrite (motorA2, vSpeed); analogWrite (variklisB1, 0); analogWrite (variklisB2, 100); } /*********************************************** *********/// Gelen veri 'L' ise araba sola gider. else if (state == 'L') {analogWrite (motorA1, vSpeed); analogWrite (variklisA2, 150); analogWrite (variklisB1, 0); analogWrite (variklisB2, 0); } /********************************************** *********/// Gelen veri 'R' ise araba sağa gider else if (state == 'R') {analogWrite (motorA1, 0); analogWrite (variklisA2, 0); analogWrite (variklisB1, vSpeed); analogWrite (variklisB2, 150); } /************************Sustabdyti*********************** ******/// Gelen veri 'S' arabayı durdur. else if (state == 'S') {analogWrite (motorA1, 0); analogWrite (variklisA2, 0); analogWrite (variklisB1, 0); analogWrite (variklisB2, 0); }} analogWrite (motorA1, 0); analogWrite (variklisA2, 100); analogWrite (variklisB1, 0); analogWrite (variklisB2, vSpeed);

4 žingsnis: dalių montavimas „Mio“

Dalių diegimas „Mio“
Dalių diegimas „Mio“
Dalių diegimas „Mio“
Dalių diegimas „Mio“
Dalių diegimas „Mio“
Dalių diegimas „Mio“

Dabar mes esame paskutiniame roboto mio sujungimo etape

Rekomenduojamas: