Mündəricat:

Bluetooth Robot Mio: 4 addım
Bluetooth Robot Mio: 4 addım

Video: Bluetooth Robot Mio: 4 addım

Video: Bluetooth Robot Mio: 4 addım
Video: Xiaomi Gateway 4 - Mihome автоматизации 2.0 2024, Noyabr
Anonim
Bluetooth Robotu Mio
Bluetooth Robotu Mio

Addım 1: Materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

1- Robot Mio

2- L298N Voltaj Regülatörü İkili Motor Sürücü Kartı

3- Arduino Nano

4- HC06 Bluetooth-Serial Modul Kartı

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

Addım 2: Parçaların yığılması

Parçaların yığılması
Parçaların yığılması
Parçaların yığılması
Parçaların yığılması
Parçaların yığılması
Parçaların yığılması
Parçaların yığılması
Parçaların yığılması

Əvvəlcə motor sürücüsü bağlantılarından başlayaq. Keçid kabellərini motor sürücüsünün in1, in2, in3, in4 pinlərinin altına lehimləyək. (şəkil 1 kimi) O zaman kabeli in1 -in nano d6 pininə, in2 -dən d10 -a, in3 -dən d5 pininə və nəhayət in4 -dən d9 -a qədər olan kabelini bağlayaq. (şəkil 2 -də olduğu kimi) İndi HC06 modulumuzun əlaqələrini quraq, RXD pinini nano TXD pininə, TXD pinini RXD pininə, VCC və GND pinlərini nano hər hansı bir 5v və GND pininə bağlayaq. (şəkil 3 kimi) Və nəhayət, motor əlaqələrini quraq. Mio bizimlə üz -üzə gəldikdə, sağ motor kabellərini motor sürücüsünün 3, 4 sancağına, sol motor kabelini isə 1, 2 sancağa bağlayaq. 9v batareya qapağının qırmızı kabelini VIN pininə bağlayaq. nano və qara kabel GND pininə. (şəkil 4 kimi) Və ortada bir tullanan tel kəsək, ucunu soyun və nanonun GND pininə, motor sürücüsünün GND pininə bağlayaq. (şəkil 5, 6) Başqa 9v batareya başının qırmızı kabelini 12v pininə və qara kabeli motor sürücüsünün güc pinlərindəki gnd pininə bağlayaq. (şəkildəki kimi 7)

Addım 3: Nano kodlaşdırma

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

void setup () {// Pinlerimizi pinMode (motorA1, ÇIKIŞ); pinMode (motorA2, Çıxış); pinMode (motorB1, ÇIXIŞ); pinMode (motorB2, Çıxış); // 9600 baud sürətində bir seri port açalım Serial.begin (9600); } void loop () {// Bluetooth bağlantısı koptuğunda və ya kəsilməsində arabayı durdurun. // (Aktif etmek üçün alt satırın "//" larını kaldırın.) // if (digitalRead (BTState) == LOW) {state = 'S'; }

// Gelen veriyi 'vəziyyət' dəyişkenine qeyd edin if (Serial.available ()> 0) {state = Serial.read (); } // Uygulamadan 4 sürət səviyyəsi. (Değerler 0-255 arasında olmalıdır) if (state == '0') {vSpeed = 0;} if if (state == '1') {vSpeed = 100;} if if (vəziyyət == '2') {vSpeed = 180;} başqa halda (vəziyyət == '3') {vSpeed = 200;} başqa əgər (vəziyyət == '4') {vSpeed = 255;} /*** ******************** İleri ****************************/ // Gelen veri 'F' ise araba ileri gider. if (vəziyyət == 'F') {analogWrite (motorA1, vSpeed); analogWrite (motorA2, 0); analogWrite (motorB1, vSpeed); analogWrite (motorB2, 0); } /********************** İleri Sol ************************ /// Gelen veri 'G' ise araba ileri sol (çapraz) gider. başqa halda (vəziyyət == '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 (vəziyyət == 'I') {analogWrite (motorA1, 100); analogWrite (motorA2, 0); analogWrite (motorB1, vSpeed); analogWrite (motorB2, 0); } /*********************** Geri *********************** ****/// Gelen veri 'B' ise araba geri gider. başqa halda (vəziyyət == 'B') {analogWrite (motorA1, 0); analogWrite (motorA2, vSpeed); analogWrite (motorB1, 0); analogWrite (motorB2, vSpeed); } /********************** Geri Sol ************************ /// Gelen veri 'H' ise araba geri sol (çapraz) gider if if (state == 'H') {} /********************* *Geri Sağ **************************/// Gelen veri 'J' ise araba geri sağ (çapraz) gider else if (state == ') J ') {analogWrite (motorA1, 0); analogWrite (motorA2, vSpeed); analogWrite (motorB1, 0); analogWrite (motorB2, 100); } /*************************** Sol ******************** *********/// Gelen veri 'L' ise araba sola gider. başqa halda (vəziyyət == 'L') {analogWrite (motorA1, vSpeed); analogWrite (motorA2, 150); analogWrite (motorB1, 0); analogWrite (motorB2, 0); } /***************************** Sağ ******************** *********/// Gelen veri 'R' ise araba sağa gider else if (vəziyyət == 'R') {analogWrite (motorA1, 0); analogWrite (motorA2, 0); analogWrite (motorB1, vSpeed); analogWrite (motorB2, 150); } /************************ Dur *********************** ******/// Gelen veri 'S' ise arabayı durdurur. else if (vəziyyət == '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);

Addım 4: hissələri Mio -ya quraşdırın

Mio -da hissələrin quraşdırılması
Mio -da hissələrin quraşdırılması
Mio -da hissələrin quraşdırılması
Mio -da hissələrin quraşdırılması
Mio -da hissələrin quraşdırılması
Mio -da hissələrin quraşdırılması

İndi robot mio -nu birləşdirmək üçün son mərhələdəyik

Tövsiyə: