Мазмұны:

Arduino танк машинасы 6-сабақ-Bluetooth және Wi-Fi ыстық нүктелерін басқару: 4 қадам
Arduino танк машинасы 6-сабақ-Bluetooth және Wi-Fi ыстық нүктелерін басқару: 4 қадам

Бейне: Arduino танк машинасы 6-сабақ-Bluetooth және Wi-Fi ыстық нүктелерін басқару: 4 қадам

Бейне: Arduino танк машинасы 6-сабақ-Bluetooth және Wi-Fi ыстық нүктелерін басқару: 4 қадам
Бейне: Робототехника. Часть 1. История робототехники 2024, Қараша
Anonim
Arduino танк машинасы 6-сабақ-Bluetooth және Wi-Fi ыстық нүктелерін басқару
Arduino танк машинасы 6-сабақ-Bluetooth және Wi-Fi ыстық нүктелерін басқару

Бұл сабақта біз WiFi мен Bluetooth арқылы Robot car мобильді қосымшасын басқаруды үйренеміз., біз жай ғана esp8266 wifi спасиондық тақтасын кеңейту тақтасы ретінде қолданамыз және алдыңғы сабақтарда ИҚ қабылдағышы арқылы автоцистернаны басқарамыз. Бұл сабақта біз телефонды экспозиция тақтасынан ыстық нүктені қосуға және телефон қосымшасы арқылы көліктің қозғалысын басқаруға үйретеміз. Сонымен қатар, сіз блютузды кеңейту тақтасына салып, телефонның Bluetooth арқылы көліктің қозғалысын басқара аласыз.

Толық оқулықтар:

АҚШ үшін сатып алыңыз: Amazon.com

1 -қадам: Бұл қалай жұмыс істейді

Бұл қалай жұмыс істейді
Бұл қалай жұмыс істейді

ESP8266 тақтасынан DoitWIFI_Config деп аталатын ыстық нүкте бар

жұмыс уақыты және сіз ыстық нүктені телефон WiFi арқылы парольсіз қосуға болады. ESP8266 тақтасының қосқышын «ҚОСУ» күйіне ауыстырған кезде, arduino мен esp8266 хабарламаларын сериялық порттармен алмастыруға болады. Басқару пәрменін телефон қосымшасы арқылы ESP8266 -ға жіберуге болады, содан кейін arduino мен ESP8266 тақтасы арасындағы сериялық порттар арқылы arduino -ға жіберуге болады..

Arduino мен ESP8266 тақтасы арасындағы сериялық порттарды ажырату үшін ESP8266 тақтасының қосқышын «1» және «2» күйіне бұрыңыз. Егер сіз bluetooth модулін esp8266 тақтасына қойып, оны телефондық bluetooth арқылы қоссаңыз, arduino мен esp8266 хабарламасын Bluetooth модулі арқылы сериялық порттармен алмастыруға болады.

ESP8266 Wifi тақтайшасы туралы қосымша ақпаратты мына жерден қараңыз:

2 -қадам: Бағдарламалық қамтамасыз етуді орнату

1 -қадам: Arduino IDE -нің соңғы нұсқасын орнатыңыз (егер сізде Arduino IDE нұсқасы 1.1.16 -дан кейін болса, бұл қадамды өткізіп жіберіңіз)

Arduino IDE бағдарламасын https://www.arduino.cc/kz/Main/Software?setlang=e… сайтынан жүктеп алыңыз, содан кейін бағдарламалық жасақтаманы орнатыңыз.

2 -қадам: 7 -сабақтың үлгі кодын https://www.kookye.com/download/car/tank_robot_les… сайтынан жүктеп алыңыз tank_robot_lesson7.zip жүктеу ZIP файлын ашыңыз, сіз tank_robot_lesson7 деп аталатын қалтаны көресіз.

3 -қадам: UNO R3 тақтасын компьютерге USB кабелі арқылы қосыңыз, Arduino IDE ашыңыз -> файлды басыңыз -> Ашу түймесін басыңыз -> tank_robot_lesson7 қалтасындағы «tank_robot_lesson7.ino» кодын таңдаңыз, кодты arduino -ға жүктеңіз.

4 -қадам: Сіздің жобаңызға сәйкес тақта мен портты таңдаңыз, эскизді тақтаға жүктеңіз.

5 -қадам: Қолданбаны жүктеп, оны телефонға орнатыңыз: https://kookye.com/download/car/car.apk Ескертпе: Бұл қолданба тек Android -ті қолдай алады және біз қосымшаның бастапқы кодын ұсынамыз (https://kookye.com /download/car/BTcar-master.zip). Сіз өзіңіздің қажеттіліктеріңізге сәйкес кодты өзгерте аласыз.

3 -қадам: Кодексті түсіну

Бұл бағдарлама телефон қосымшасынан басқару пәрменін алу үшін қолданылады.

// WiFi /Bluetooth сериялық басқару арқылы

do_Uart_Tick () жарамсыз

{

char Uart_Date = 0;

if (Serial.available ())

{size_t len = Serial.available ();

uint8_t sbuf [len + 1];

sbuf [len] = 0x00;

Serial.readBytes (sbuf, len);

// parseUartPackage ((char*) sbuf);

memcpy (buffUART + buffUARTIndex, sbuf, len);

// сериялық порт мәліметтердің барлық кадрын оқи алатынына көз жеткізіңіз

buffUARTIndex += len;

preUARTTick = миллис ();

егер (buffUARTIndex> = MAX_PACKETSIZE - 1)

{buffUARTIndex = MAX_PACKETSIZE - 2;

preUARTTick = preUARTTick - 200; }

}

егер (buffUARTIndex> 0 && (millis () - preUARTTick> = 100))

// APP кедергілерді болдырмау параметрлерін өзгерту үшін жалаушаны жібереді

{// деректер дайын buffUART [buffUARTIndex] = 0x00;

егер (buffUART [0] == 'C')

{Serial.println (buffUART);

Serial.println («Сіз параметрлерді өзгерттіңіз!»);

// кедергілерден аулақ болу қашықтығы параметрінің sscanf өзгертілгенін көрсетеді (buffUART, «CMD %d, %d, %d», & distancelimit, & sidedistancelimit, & turntime);}

else Uart_Date = buffUART [0];

buffUARTIndex = 0;

}

switch (Uart_Date) // сериялық басқару нұсқаулары

{2 -жағдай ': Drive_Status = MANUAL_DRIVE; Drive_Num = GO_ADVANCE; Serial.println («алға»); үзіліс;

'4' жағдайы: Drive_Status = MANUAL_DRIVE; Drive_Num = GO_LEFT; Serial.println («солға бұрылу»); үзіліс;

'6' жағдайы: Drive_Status = MANUAL_DRIVE; Drive_Num = GO_RIGHT; Serial.println («оңға бұрылу»); үзіліс;

'8' жағдайы: Drive_Status = MANUAL_DRIVE; Drive_Num = GO_BACK; Serial.println («қайту»); үзіліс;

'5' жағдайы: Drive_Status = MANUAL_DRIVE; Drive_Num = STOP_STOP; buzz_off (); Serial.println («тоқтату»); үзіліс;

'3' жағдайы: Drive_Status = AUTO_DRIVE_UO; Serial.println («кедергілерден аулақ болыңыз …»); үзіліс;

'1' жағдайы: Drive_Status = AUTO_DRIVE_LF; Serial.println («жолды қадағалау …»); үзіліс;

әдепкі: үзіліс;

}

}

4 -қадам: жабдықты орнату

Аппараттық қондырғы
Аппараттық қондырғы
Аппараттық қондырғы
Аппараттық қондырғы
Аппараттық қондырғы
Аппараттық қондырғы

1 -қадам: ESP8266 кеңейту тақтасын UNO R3 тақтасына орнатыңыз.

2 -қадам: Егер сіз көлікті bluetooth арқылы басқарғыңыз келсе, bluetooth модулін ESP8266 құрылғысына төмендегідей орнатыңыз және қосқышты «1, 2» күйіне қойыңыз. Егер сіз көлікті Wi -Fi арқылы басқарғыңыз келсе, esp8266 тақтасын Bluetooth модулінсіз ұстаңыз және esp8266 қосқышын «қосулы» күйге бұрыңыз.

Ескерту: Bluetooth модулі мен Arduino тақтасы UART сериялық порты арқылы бір -бірімен байланысады. Эскизді Arduino тақтасына жүктемес бұрын Bluetooth модулін алып тастаңыз, әйтпесе эскиз сәтсіз жүктеледі.

3 -қадам: Екі 12865 аккумуляторды батарея қорабына салыңыз және қораптың айналуын «ON» күйіне қойыңыз. (Егер сіз бірінші сабақта жоғарыдағы қадамдарды аяқтасаңыз, осы қадамды өткізіп жіберіңіз)

4 -қадам: Телефон қосымшасы мен Wi -Fi ашыңыз, «DoitWIFI_Config» деп аталатын ыстық нүктені тауып, оны қосыңыз.

5 -қадам: Қолданбаны ашыңыз >> WiFi режимін таңдаңыз >> содан кейін сіз робот машинаны wifi арқылы басқара аласыз

6 -қадам: Егер сіз робот машинаны Bluetooth арқылы басқарғыңыз келсе, APP орнатқан Android телефоныңыздың блютузын қосыңыз және bluetooth сканерлеңіз (әр түрлі Bluetooth модулі әр түрлі bluetooth атауын сканерлейді), Қосылу түймесін басып, «1234» паролін енгізіңіз немесе Егер «0000» өзгермесе (Wi -Fi немесе bluetooth арқылы көлікті басқаруға ауысу үшін Android телефонындағы wifi немесе bluetooth параметрлерін өзгертуге болады):

7 -қадам: Бағдарламаны ашыңыз >> bluetooth режимін таңдаңыз >> содан кейін сіз робот машинаны Bluetooth арқылы басқара аласыз:

Үш жұмыс режимі бар: қолмен басқару, кедергілерді болдырмау және бақылау. Пайдаланушылар үш жұмыс режимінің арасында еркін ауыса алады.1) Қолмен басқару режимінде робот машинасын алға және артқа, оңға және солға бұру үшін басқару үшін (^) (V) () түймелерін басуға болады. Сонымен қатар, APP автокөліктің нақты уақыттағы қозғалысын бақылай алады.

2) Ағымдағы режимді бақылау режиміне ауыстыру үшін Қолданбаның «қадағалау» түймесін басыңыз. Робот көлігі ақ фонда қара сызық бойымен алға жылжиды. Сонымен қатар, APP автокөліктің нақты уақыттағы қозғалысын бақылай алады. «||» түймесін басыңыз қозғалуды тоқтату түймесі және робот машинасының жұмыс режимін өзгерту үшін басқа батырманы басыңыз. Бұл режим туралы көбірек білу үшін біздің 4 -ші сабағымызды қарап шығыңыз.

3) Ағымдағы режимді кедергілерді болдырмау режиміне ауыстыру үшін «Кедергі» түймесін басыңыз. Робот машинасы үздіксіз алға қарай жылжып, жолында кез келген кедергілер болған кезде тоқтап, басқаруға болады. «||» түймесін басыңыз қозғалуды тоқтату үшін түймесін басыңыз, содан кейін робот машинасының жұмыс режимін өзгерту үшін басқа түймені басыңыз. Бұл режим туралы көбірек білу үшін біздің 5 сабағымызды қайталаңыз.

Ұсынылған: