- Необходими компоненти:
- Създаване на интерфейс за робот с помощта на приложението RemoteXY:
- Електрическа схема и обяснение:
- Обяснение на кода:
- Как да го стартирате:
В тази статия ще контролираме колата на робота чрез G сензора на нашия мобилен телефон и ще можете да преместите робота само чрез накланяне на телефона. Също така ще използваме приложението Arduino и RemoteXY за този робот с контролиран G-сензор. Приложението RemoteXY се използва за създаване на интерфейс в Smart Phone за управление на робота. Ще добавим джойстика в интерфейса, така че роботът да може да се управлява и от Джойстик, както и чрез накланяне на телефона.
G-Sensor или Gravity сензорът е основно акселерометър в смартфон, който се използва за управление на ориентацията на екрана на телефона. Акселерометърът усеща посоките X, Y, Z на гравитационната сила и завърта екрана според изравняването на телефона. Сега дни, по-чувствителен и точен сензор за жироскоп се използва в мобилни устройства за определяне на ориентацията на екрана. В нашия проект автомобилът-робот ще се движи според посоката, в която се накланя телефонът, като когато наклоним телефона напред, тогава автомобилът ще се придвижи напред и ние го наклоним надолу, след това автомобилът ще се върне назад. Това е същото като когато играем някои игри за автомобили в Mobile, те също използват G сензор, за да преместят колата по съответния начин. Проверете видеото в края, проверете и другите ни проекти за роботика тук.
Необходими компоненти:
- Двуколесно роботско шаси
- Arduino UNO
- L298N контролер на двигателя
- Bluetooth-модул HC-06 (HC-05 също ще работи)
- Захранване или клетки
- Свързващи проводници
Създаване на интерфейс за робот с помощта на приложението RemoteXY:
За да създадете интерфейс за управление на Robot Car с помощта на приложението RemoteXY, ще трябва да отидете на следната връзка
remotexy.com/en/editor/ Уеб страницата ще изглежда така
След това от лявата страна на екрана вземете бутона за превключване и джойстика и го поставете в мобилния интерфейс. Бутонът ще включи светлината на щифт 13, който е свързан вътре в Arduino и джойстикът ще премести роботната кола. Уеб страницата след поставяне на превключвателя и джойстика ще изглежда така.
След това ще трябва да поставим бутона за активиране / деактивиране на сензора G заедно с джойстика, така че да можем да преместваме Robot Car, като накланяме телефона в посока наляво, надясно, нагоре и надолу. С помощта на този бутон можем да активираме и деактивираме G сензор, когато G сензорът е деактивиран Автомобилът може да се управлява чрез преместване на джойстика. Така че, за да поставите бутона за активиране / деактивиране на сензора G, щракнете върху джойстика, който сте поставили в интерфейса и от лявата страна ще има раздел със свойства, в края ще има опция за поставяне на бутона G сензор близо до джойстика, така че поставете G сензорния бутон там, където искате. Уеб страницата след това ще изглежда така.
След това кликнете върху бутона „Получаване на изходния код“ и го запазете на вашия компютър. Изтеглете библиотеката от тук и я запазете в папката на библиотеката Arduino. Компилирайте изтегления код, за да проверите дали няма грешки. Това не е кодът, който ще стартира робота, но ще помогне при използването на приложението с Arduino. Изтеглете приложението от тук или отидете в Play Store и изтеглете приложението RemoteXY от там за вашия Android Smart Phone.
Електрическа схема и обяснение:
На първо място, ще свържем контролера на двигателя L298N с Arduino. Свържете ENA и ENB щифта на контролера на двигателя към Arduino щифтове 12 и 11 съответно. Тези два щифта са за ШИМ управление на двигателя. Използвайки тези на щифтовете, можем да увеличим или намалим скоростта на автомобила. След това свържете IN1, IN2, IN3 и IN4 към Arduino щифтовете 10, 9, 8 и 7 съответно. Тези щифтове ще завъртят двигателите в двете посоки (по посока на часовниковата стрелка и обратно на часовниковата стрелка).
За да захранвате двигателя, свържете положителното и отрицателното на батерията към 12V и масата на контролера на двигателя. След това свържете 5V и земята от контролера на двигателя към Arduino Vin и земята.
След това ще свържем Bluetooth модула HC-06 с arduino. Ако имате HC-05, той също ще работи. Свържете VCC и заземяването на Bluetooth модула към 5V и заземяването на Arduino. След това свържете TX щифта на Bluetooth модула към щифт 2 на Arduino и RX щифта към щифт 3 на Arduino. Също така проверете Bluetooth контролирана играчка с Arduino, за да научите повече за използването на Bluetooth с Arduino.
Обяснение на кода:
Пълният код на Arduino за тази мобилна контролирана кола-робот е даден по-долу в раздела Код, тук ще разберем как работи този код.
На първо място, включихме библиотеките за софтуер Serial и RemoteXY. Библиотеката RemoteXY ще ни помогне при настройването на приложението с Arduino, чрез което ще управляваме колата-робот. След това дефинирахме пиновете за Bluetooth модула, TX от Bluetooth модула е свързан към щифт 2 на Arduino, който е RX щифт на Arduino, а RX от Bluetooth модула е свързан към щифт 3 на Arduino, който е TX щифтът на Arduino и задава скоростта на предаване на Bluetooth модула на 9600.
#define REMOTEXY_MODE__SOFTWARESERIAL #include
Следният код ще увеличи или намали скоростта на двигателя. Когато джойстикът е в центъра, скоростта ще бъде нула, а когато бъде в посока напред, скоростта ще се увеличи от нула до 100. Скоростта ще намалее от 0 до -100, когато автомобилът ще се движи в обратна посока. Автомобилът може също да се движи с определена скорост, това може да стане чрез подаване на ШИМ сигнал. Pwm сигналът ще се подава към двигателите според въртенето на джойстика.
ако (скорост на двигателя> 100) скорост на двигателя = 100; ако (скорост на_мотора <-100) скорост на_двигателя = -100; if (motor_speed> 0) {digitalWrite (указател, HIGH); digitalWrite (указател, LOW); analogWrite (указател, скорост на двигателя_ 2,55); } иначе ако (скорост_мотор <0) {digitalWrite (указател, НИСКО); digitalWrite (указател, HIGH); analogWrite (указател, (-motor_speed) * 2,55); } else {digitalWrite (указател, LOW); digitalWrite (указател, LOW); analogWrite (указател, 0); }
В следващия код дефинирахме функцията, която ще се извиква всеки път, когато преместваме джойстика в приложението. Когато включим превключвателя в приложението, логиката 1 ще бъде дадена на щифта 13 на Arduino, който включва LED пина. Докато движите автомобила-робот в посока напред и назад, ще бъде извикана функцията за скорост .
невалиден цикъл () {RemoteXY_Handler (); digitalWrite (ledpin, (RemoteXY.switch_1 == 0)? LOW: HIGH); Скорост (first_motor, RemoteXY.joystick_1_y - RemoteXY.joystick_1_x); Скорост (втори_мотор, RemoteXY.joystick_1_y + RemoteXY.joystick_1_x); }
Как да го стартирате:
Добавете библиотеката на RemoteXY към библиотеките на Arduino и качете кода в IDE на Arduino. След това изтеглете приложението в мобилния си телефон и след това включете Bluetooth. Интерфейсът на приложението ще изглежда така
След това отидете на Bluetooth и включете Bluetooth там. След като го включите, той ще ви покаже Bluetooth устройствата. Изберете вашия Bluetooth модул HC-06 от там, той ще ви отведе до интерфейса, откъдето можете да контролирате Robot Car.
Ето как можем да използваме гравитационния сензор в нашия мобилен телефон, за да преместим робота. Можете да експериментирате по-нататък и да намерите по-интересно използване на G сензор за управление на външните неща, като свържете микроконтролер между тях (като Arduino).