Съдържание:
- Стъпка 1: Списък на компонентите
- Стъпка 2: Мозъкът на проекта - Съвет за развитие на ESP8266 (Wemos D1 Mini)
- Стъпка 3: Шофьор на мотор - L293d
- Стъпка 4: PCF8574 - I/O Port Expander
- Стъпка 5: Схеми
- Стъпка 6: Код
Видео: 4-колесен робот с Wi-Fi контрол: 6 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
За този проект ще разработим 4-колесен робот, използващ ESP8266, който ще се контролира чрез Wi-Fi мрежа. Роботът може да се управлява от обикновен интернет браузър, използвайки HTML интерфейс или също от мобилно приложение за Android. Чипът ESP8266 е мощен и евтин микроконтролер, който не само е лесен за използване, но и се предлага с вградена Wi-Fi свързаност. Това е просто перфектният чип за дистанционно управление на роботи от вашия компютър или мобилно устройство.
За да включим този чип в нашия проект, можем да използваме различни дъски за разработка, базирани на този микроконтролер.
1. Adafruit Feather Huzzah - Изработен е от Adafruit и има лесно достъпни инструкции и поддръжка. Той има зарядно устройство за батерии li-po на самата платка, така че ще бъде много полезно в преносими проекти.
2. NodeMCU ESP8266 - Платката е с отворен код и има отлична документация, така че ще бъде много лесно да започнете.
3. Sparkfun ESP8266 - Това е като Huzzah с добавяне на превключвател за захранване и външна антена за по -дълъг Wi -Fi обхват.
4. Wemos D1 Mini - Това е най -малката от всички платки, но това няма никакъв ефект върху производителността.
За моя проект използвам Wemos D1 Mini, за да направя 4-колесен робот с Wi-Fi контрол. Но можете да използвате всяка платка за разработка на ESP8266 и да използвате същия код на Arduino без никакви необходими промени. Аз съм проектирал печатна платка за този проект, но можете да използвате печатна платка с точки за изпълнение на схемата или дори да проектирате своя собствена печатна платка.
И ние ще използваме комплект за 4WD роботизирано шаси, както е показано на изображението по -горе, тъй като той е идеален за DIY и е най -икономичният робот за кола с проста механична структура.
Характеристики на този комплект:-
1. Предлага се с четири отделни BO пластмасови двигателя с скоростна кутия, която е добра за маневреност.
2. Голямо, здраво акрилно шаси позволява на големите да се разширяват, за да можете да ги направите сами.
3. Комплект шаси с интелигентна кола за задвижване. Много лесен за инсталиране, просто добавете микроконтролер (като Arduino) и сензорни модули за изграждане на напълно автономен робот
Стъпка 1: Списък на компонентите
Wemos D1 Mini [Количество - 1]
L293d IC драйвер на двигателя [Количество - 2]
PCF8574 IC Expander IC [Количество - 1]
12V литиево -йонна батерия [количество - 1]
Робот PCB с контролиран Wi-Fi [Количество-1]
Комплект шаси с 4WD робот за интелигентни автомобили [количество - 1]
Стъпка 2: Мозъкът на проекта - Съвет за развитие на ESP8266 (Wemos D1 Mini)
Wemos D1 Mini е мини дъска за разработка на Wi-Fi с 4MB флаш на базата на чип ESP-8266.
- Има 11 цифрови входни/изходни пина, всички пинове имат прекъсване/pwm/I2C/поддържат едножични (с изключение на D0)
- Има 1 аналогов вход (максимален вход 3.2V)
- Има Micro USB връзка за програмиране, както и захранване.
Тази платка, базирана на ESP8266, следователно е съвместима с Arduino IDE, поради което може да бъде програмирана с помощта на Arduino или също така може да бъде програмирана с помощта на компилатор Lua. Той също така поддържа както серийно, така и OTA програмиране.
Ще програмираме Wemos D1 Mini с помощта на Arduino IDE. За да програмирате платката с помощта на Arduino IDE, трябва да бъдат изпълнени следните изисквания.
Изискване:-
- CH340G драйвер
- Инсталирайте най -новата Arduino IDE от уеб сайта на Arduino.
- Микро usb кабел за програмиране
След като инсталирате драйвера и софтуера arduino, трябва да инсталирате „ядро Arduino за ESP8266 WiFi чип“вътре в Arduino IDE, за да можем да програмираме чипа ESP8266 от средата Arduino. Това ядро ESP8266 Arduino ви позволява да пишете скици, използвайки познати функции и библиотеки на Arduino, и да ги изпълнявате директно на ESP8266, без да е необходим външен микроконтролер.
ESP8266 Arduino ядрото идва с библиотеки за комуникация през WiFi чрез TCP и UDP, настройване на HTTP, mDNS, SSDP и DNS сървъри, извършване на OTA актуализации, използване на файлова система във флаш памет, работа със SD карти, серво, SPI и I2C периферни устройства.
Изтеглете следния документ, за да получите представа как да инсталирате ядрото Esp8266 arduino.
Стъпка 3: Шофьор на мотор - L293d
Драйверът на двигателя е интегрална схема за двигатели, която ви позволява да контролирате работната скорост и посоката на два двигателя едновременно.
L293d е проектиран да осигурява двупосочни задвижващи токове при напрежения от 5 V до 36 V. L293D може да задвижва 2 DC двигателя едновременно.
L293D е 16 -пинов интегрален драйвер за двигател. Има 4 входа INPUT, 4 изхода OINPUT и 2 ENABLE щифта за всеки двигател.
L293D Характеристики:
Възможност за изходен ток 600mA на канал
Часовник и контрол на посоката на часовниковата стрелка за отделни канали
Пин описание на L293d:
- ПИН 1: Когато Enable1 е ВИСОК, лявата част на IC ще работи, т.е. моторът, свързан с щифт 3 и щифт 6, ще се върти.
- ПИН 2: Вход 1, когато този щифт е ВИСОК, токът ще тече през изход 1.
- Пин 3: Изход 1, този щифт е свързан с един извод на двигателя.
- Pin 4/5: GND щифтове
- Пин 6: Изход 2, този щифт е свързан с един извод на двигателя.
- Пин 7: Вход 2, когато този щифт е ВИСОК, токът ще тече през изход 2.
- Pin 8: VCC2, този щифт се използва за захранване на свързани двигатели от 5V до 36V максимум зависи от свързания двигател.
- Pin 9: Когато Enable 2 е HIGH, дясната част на IC ще работи, т.е. моторът, свързан с pin 11 и pin 14, ще се върти.
- Пин 10: Вход 4, когато този щифт е ВИСОК, токът ще тече през изход 4.
- Пин 11: Изход 4, този щифт е свързан с един извод на двигателя.
- Pin 12/13: GND щифтове
- ПИН 14: Изход 3, този щифт е свързан с един извод на двигателя.
- ПИН 15: Вход 3, когато този щифт е ВИСОК, токът ще тече през изход 3.
- Pin 16: VCC1, за логическо захранване на IC, т.е. 5V.
По този начин можете да видите, че имате нужда от 3 цифрови пина за управление на всеки двигател (един щифт за контрол на скоростта и два пина за контрол на посоката). Ако един L293d управлява два DC двигателя, тогава ще се нуждаем от два L293d IC, за да управляваме четири DC двигателя. Ще използваме пластмасови BO Motors за този проект. По този начин, виждате, че ще се нуждаем от 12 цифрови пина, за да управляваме независимо четирите DC двигателя независимо от скоростта и посоката на управление.
Но ако видите, че Wemos D1 mini има само 11 цифрови входно/изходни пина и 1 аналогов щифт. За да разрешим този проблем, ще свържем четирите разрешаващи щифта (два разрешаващи пина на първия L293d и два разрешаващи пина на други L293d) директно с Wemos Digital щифтове, докато всичките осем входни пина (четири от първия L293d и четири от другите L293d) използване на PCF8574 (разширител на I/O порт) чрез I2C.
Стъпка 4: PCF8574 - I/O Port Expander
Wemos D1 Mini (т.е. ESP8266) има недостиг на входни/изходни щифтове. Можем да увеличим цифровите входни/изходни щифтове с помощта на I/O разширител IC като PCF8574, който е 8 битов I/O разширител.
Едно от предимствата на използването на PCF8574A I/O разширител е, че използва I2C шина, която изисква само две линии за данни, те са часовник (SCK) и данни (SDA). Следователно с тези две линии можете да контролирате до осем пина на един и същ чип. Чрез промяна на трите адресни пина на всеки PCF8574 можем да контролираме общо 64 пина.
Този 8-битов вход/изход (I/O) разширител за двулинейната двупосочна шина (I2C) е проектиран за работа от 2.5V до 6V VCC. Устройството PCF8574 осигурява универсално дистанционно I/O разширение за повечето семейства микроконтролери чрез I2C интерфейса [сериен часовник (SCL), серийни данни (SDA)]).
Устройството разполага с 8-битов квази двупосочен I/O порт (P0 – P7), включително заключени изходи с възможност за високотоково задвижване за директно задвижване на светодиоди. Всеки квази двупосочен I/O може да се използва като вход или изход без използване на сигнал за управление на посоката на данни. При включване входовете/изходите са високи.
Вижте по -долу pdf файла „PCF8574_With_L293d“за схемата на свързване на PCF8574 с двете IC L293d
Стъпка 5: Схеми
Използвал съм Kicad за проектиране на печатни платки.
Изтеглете схематичния pdf по -долу, за да проектирате своя собствена печатна платка или да я внедрите на печатна платка с точки.
Стъпка 6: Код
Свържете се към следната точка за достъп до Wi-Fi:-
// Потребителски мрежови идентификационни данниconst char* ssid = "WiFi_Robot";
const char* password = "Automate@111";
След като се свържете с горната точка за достъп, отидете на връзката по-долу в уеб браузър:-
192.168.4.1
Ще получите следното съобщение:-
"здравей от робота!"
192.168.4.1/fw
Това ще накара робота да се придвижи напред
192.168.4.1/bk
Това ще накара робота да се движи назад
192.168.4.1/lt
Това ще накара робота да се движи наляво
192.168.4.1/rt
Това ще накара робота да се движи надясно
192.168.4.1/st
Това ще доведе до спиране на робота
Ако искате, можете също да управлявате робота чрез приложението за Android, направено от Robo India.
{Потърсете андроид приложение „WiFi Robot Controller“в магазина за игри, направено от Robo India}
[Забележка: По никакъв начин не съм свързан с Robo India и това не е за реклама, това е моят личен проект!]
Работно видео на проекта:-
Препоръчано:
Самобалансиращ се робот - ПИД контрол алгоритъм: 3 стъпки
Self Balancing Robot - PID Control Algorithm: Този проект е замислен, защото имах интерес да науча повече за контролните алгоритми и как ефективно да прилагам функционални PID контури. Проектът все още е във фаза на разработка, тъй като тепърва ще бъде добавен Bluetooth модул, който ще
Помощен робот V1 за изкачване на кула - Двукрак, RF, BT контрол с приложение: 22 стъпки (със снимки)
Tower Climb Robot V1 - Двукрак, RF, BT контрол с приложение: Когато някога видя гущери по стените, смятам да направя такъв робот. Това е дългосрочна идея, търся в много статии за електро-лепила и проверявам по някакъв начин и се провалих в капацитета си за задържане. Засега планирам да го направя с помощта на електромагнит, за да
RC автомобил с Bluetooth контрол с контрол на скоростта и измерване на разстоянието: 8 стъпки
RC автомобил с Bluetooth контрол с контрол на скоростта и измерване на разстоянието: Като дете винаги съм бил очарован от RC колите. В днешно време можете да намерите много уроци, за да направите сами евтини RC автомобили с Bluetooth, с помощта на Arduino. Нека направим още една крачка напред и използваме нашите практически познания по кинематика, за да изчислим
Контрол на щорите с ESP8266, Google Home и Openhab интеграция и уеб контрол: 5 стъпки (със снимки)
Контрол на щори с ESP8266, интегриране и уебконтрол на Google Home и Openhab: В тази инструкция ще ви покажа как добавих автоматизация към моите щори. Исках да мога да добавя и премахвам автоматизацията, така че цялата инсталация е закрепена. Основните части са: Стъпков двигател Стъпков шофьор, управляван от bij ESP-01 Gear и монтаж
Контрол на яркостта ШИМ базиран LED контрол с помощта на бутони, Raspberry Pi и надраскване: 8 стъпки (със снимки)
Контрол на яркостта PWM управление на LED управление с помощта на бутони, Raspberry Pi и Scratch: Опитвах се да намеря начин да обясня как PWM работи на моите ученици, затова си поставих задачата да се опитам да контролирам яркостта на светодиода с помощта на 2 бутона - единият бутон увеличава яркостта на светодиода, а другият го затъмнява. Към програмата