Мазмұны:

Bluetooth робот Mio: 4 қадам
Bluetooth робот Mio: 4 қадам

Бейне: Bluetooth робот Mio: 4 қадам

Бейне: Bluetooth робот Mio: 4 қадам
Бейне: Xiaomi Gateway 4 - Mihome автоматизации 2.0 2024, Қараша
Anonim
Bluetooth робот Mio
Bluetooth робот Mio

1 -қадам: материалдар

Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар

1- Рио Мио

2- L298N кернеу реттегішінің қос моторлы тақтасы

3- Ардуино Нано

4- HC06 Bluetooth-сериялық модульдік тақта

5- (2x) 9 В батареяның басы

2 -қадам: бөлшектерді жинау

Бөлшектерді жинау
Бөлшектерді жинау
Бөлшектерді жинау
Бөлшектерді жинау
Бөлшектерді жинау
Бөлшектерді жинау
Бөлшектерді жинау
Бөлшектерді жинау

Алдымен мотор драйверінің қосылуынан бастайық, мотор драйверінің in1, in2, in3, in4 түйреуіштерінің астына өтпелі кабельдерді дәнекерлейік. (сурет 1 -де) Содан кейін кабельді in1 -ді nano d6 істікшесіне, in2 -ден d10 істікке, in3 -тен d5 -пинке дейін және ақырында in4 -d9 істікшелі кабельге қосамыз. (2 -суреттегідей) Енді HC06 модулінің қосылуын жасайық, RXD түйреуішін нано TXD түйреуішіне, TXD түйреуішін RXD түйреуішіне, VCC және GND түйреуіштерін нано кез келген 5v және GND түйреуіштеріне қосамыз. (pic3 ретінде) Және, ақырында, мотор қосылымдарын жасайық. Мио бізге қараған кезде, мотор драйверінің 3, 4 түйреуіштеріне, оң жақ мотор кабельдерін шығыс 1, 2 түйреуішке қосамыз. нано мен қара кабель GND істігіне. (суреттегідей 4) Ал ортасында секіргіш сымды кесіп, ұшын шешіп, нано GND түйреуішіне, мотор драйверінің GND істігіне қосамыз. (сурет 5, 6) Басқа 9в батарея басының қызыл кабелін 12в істікшеге, ал қара кабельді қозғалтқыш драйверінің қуат түйреуіштеріндегі gnd істігіне қосайық. (7 -суреттегідей)

3 -қадам: нано кодтау

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 қондырғысы өзгеруі мүмкін vSpeed = 255; // Standart Hız, 0-255 arası бір мәнді алуға болады

void setup () {// PinMe pinMode (motorA1, OUTPUT); pinMode (қозғалтқышA2, OUTPUT); pinMode (қозғалтқышB1, OUTPUT); pinMode (қозғалтқышB2, OUTPUT); // 9600 бауд жылдамдығында бір сериялық порт ашалым Serial.begin (9600); } void loop () {// Bluetooth қосылымы немесе ажыратылуы мүмкін емес. // (Aktif etmek için alt satırın «//» ларын жою.) // if (digitalRead (BTState) == LOW) {state = 'S'; }

// «мемлекет» күйі өзгереді, егер (Serial.available ()> 0) {state = Serial.read (); } // Қолданудан 4 жылдамдық деңгейі. (Değerler 0-255 арасында болу керек) if (state == '0') {vSpeed = 0;} else if (state == '1') {vSpeed = 100;} else if (күй == '2') {vSpeed = 180;} else if (state == '3') {vSpeed = 200;} if if (state == '4') {vSpeed = 255;} /*** ******************** Илери ****************************/ // Gelen veri 'F' ise araba ileri gider. if (state == 'F') {analogWrite (motorA1, vSpeed); analogWrite (моторA2, 0); analogWrite (motorB1, vSpeed); analogWrite (motorB2, 0); } /************************ Илери Сол ************************ /// Gelen veri 'G' ise araba ileri sol (çapraz) gider. else if (state == 'G') {analogWrite (motorA1, vSpeed); analogWrite (моторA2, 0); analogWrite (мотор B1, 100); analogWrite (motorB2, 0); } /********************** İleri Sağ ************************ /// Gelen veri 'I' ise araba ileri sağ (çapraz) gider. else if (state == 'I') {analogWrite (motorA1, 100); analogWrite (моторA2, 0); analogWrite (motorB1, vSpeed); analogWrite (motorB2, 0); } /*********************** Гери *********************** ****/// Gelen veri 'B' ise araba geri gider. else if (state == '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 (мотор B2, 100); } /**************************************************** *********/// Gelen veri 'L' ise araba sola gider. else if (state == 'L') {analogWrite (motorA1, vSpeed); analogWrite (моторA2, 150); analogWrite (motorB1, 0); analogWrite (motorB2, 0); } /***************************** Оң жақ ******************** *********/// Gelen veri 'R' ise araba sağa gider else if (state == 'R') {analogWrite (motorA1, 0); analogWrite (моторA2, 0); analogWrite (motorB1, vSpeed); analogWrite (мотор В2, 150); } /************************Тоқта*********************** ******/// Gelen veri 'S' ise arabayı durdur. else if (state == 'S') {analogWrite (motorA1, 0); analogWrite (моторA2, 0); analogWrite (motorB1, 0); analogWrite (motorB2, 0); }} analogWrite (motorA1, 0); analogWrite (моторA2, 100); analogWrite (motorB1, 0); analogWrite (motorB2, vSpeed);

4 -қадам: Бөлшектерді Mio -ға орнату

Mio -ға бөлшектерді орнату
Mio -ға бөлшектерді орнату
Mio -ға бөлшектерді орнату
Mio -ға бөлшектерді орнату
Mio -ға бөлшектерді орнату
Mio -ға бөлшектерді орнату

Енді біз mio роботын біріктірудің соңғы сатысында тұрмыз

Ұсынылған: