Мазмұны:

Wi-Fi арқылы басқарылатын 4 доңғалақты робот: 6 қадам
Wi-Fi арқылы басқарылатын 4 доңғалақты робот: 6 қадам

Бейне: Wi-Fi арқылы басқарылатын 4 доңғалақты робот: 6 қадам

Бейне: Wi-Fi арқылы басқарылатын 4 доңғалақты робот: 6 қадам
Бейне: Control 32 Servo over Wi-Fi using ESP32 and PCA9685 via desktop or mobile phone V5 2024, Қараша
Anonim
Wi-Fi арқылы басқарылатын 4 доңғалақты робот
Wi-Fi арқылы басқарылатын 4 доңғалақты робот

Бұл жоба үшін біз ESP8266 көмегімен Wi-Fi желісі арқылы басқарылатын 4 доңғалақты робот жасаймыз. Роботты HTML интерфейсінің көмегімен немесе қарапайым мобильді қосымшаның көмегімен қарапайым интернет -шолғыштан басқаруға болады. ESP8266 чипі-бұл қуатты және арзан микроконтроллер, оны пайдалану оңай ғана емес, сонымен қатар борттық Wi-Fi байланысы бар. Бұл роботтарды компьютерден немесе мобильді құрылғыдан қашықтан басқаруға арналған тамаша чип.

Бұл чипті біздің жобаға енгізу үшін біз осы микроконтроллерге негізделген әр түрлі даму тақталарын қолдана аламыз.

1. Adafruit қауырсыны Хузза - оны Adafruit компаниясы жасайды және оған қол жетімді нұсқаулар мен қолдау бар. Бортында Li-po зарядтау құрылғысы бар, сондықтан ол портативті жобаларда өте ыңғайлы болады.

2. NodeMCU ESP8266 - Тақта ашық көзі болып табылады және өте жақсы құжаттамаға ие, сондықтан оны бастау өте оңай болады.

3. Sparkfun ESP8266 - Wi -Fi диапазонының ұзаруы үшін қуат қосқышы мен сыртқы антеннасы қосылған Хузза тәрізді.

4. Wemos D1 Mini - бұл барлық тақталардың ең кішісі, бірақ бұл оның жұмысына әсер етпейді.

Менің жобам үшін мен Wemos D1 Mini көмегімен Wi-Fi арқылы басқарылатын 4 доңғалақты робот жасаймын. Бірақ сіз кез келген ESP8266 әзірлеу тақтасын қолдана аласыз және сол Arduino кодын ешқандай өзгеріссіз қолдана аласыз. Мен бұл жобаға ПХД әзірледім, бірақ сіз схеманы іске асыру үшін компьютерлік нүктелік тақтаны қолдана аласыз немесе өзіңіздің жеке компьютеріңізді жасай аласыз.

Біз жоғарыдағы суретте көрсетілгендей 4WD роботты шасси жиынтығын қолданамыз, себебі бұл DIY үшін өте ыңғайлы және қарапайым механикалық құрылымы бар ең үнемді роботтық автокөлік.

Бұл жиынтықтың ерекшеліктері:-

1. Беріліс қорабы бар төрт бөлек BO пластикалық қозғалтқыштармен келеді, бұл маневр жасауға жақсы.

2. Үлкен, берік акрил шасси сіздің қолыңызбен DIY жасауға мүмкіндік береді.

3. Төрт дөңгелекті жетекші ақылды автокөлік шассиі. Орнату өте оңай, толықтай автономды робот жасау үшін микроконтроллерді (мысалы, Arduino) және сенсорлық модульдерді қосыңыз.

1 -қадам: компоненттер тізімі

Компоненттер тізімі
Компоненттер тізімі
Компоненттер тізімі
Компоненттер тізімі
Компоненттер тізімі
Компоненттер тізімі

Wemos D1 Mini [Саны - 1]

L293d мотор драйвері IC [Саны - 2]

PCF8574 Port Expander IC [Саны - 1]

12В литий -иондық батарея [Саны - 1]

Wi-Fi басқарылатын робот PCB [Саны-1]

4WD роботты ақылды автомобиль шасси жиынтығы [Саны - 1]

2 -қадам: Жобаның миы - ESP8266 даму тақтасы (Wemos D1 Mini)

Жобаның миы - ESP8266 әзірлеу тақтасы (Wemos D1 Mini)
Жобаның миы - ESP8266 әзірлеу тақтасы (Wemos D1 Mini)

Wemos D1 Mini-бұл ESP-8266 чипіне негізделген 4 мегабайт флэші бар шағын Wi-Fi даму тақтасы.

  • 11 цифрлық кіріс/шығыс түйреуіштері бар, барлық түйреуіштерде үзіліс/pwm/I2C/бір сымды қолдау бар (D0 қоспағанда)
  • 1 аналогтық кіріс бар (максималды кіріс 3,2В)
  • Бағдарламалауға арналған микро USB қосылымы, сонымен қатар қуат көзі бар.

Бұл тақта ESP8266 -ға негізделген, сондықтан Arduino IDE үйлесімді, сондықтан оны Arduino көмегімен бағдарламалауға болады немесе Lua компиляторы арқылы бағдарламалауға болады. Ол сонымен қатар сериялық және OTA бағдарламалауды қолдайды.

Біз Wemos D1 Mini бағдарламасын Arduino IDE көмегімен бағдарламалаймыз. Ардуино IDE көмегімен тақтаны бағдарламалау үшін келесі талаптарды орындау қажет.

Талап:-

  • CH340G драйвері
  • Arduino веб -сайтынан соңғы Arduino IDE орнатыңыз.
  • Бағдарламалауға арналған шағын USB кабелі

Драйвер мен arduino бағдарламалық жасақтамасын орнатқаннан кейін Arduino IDE ішіне Arduino ортасынан ESP8266 чипін бағдарламалау үшін Arduino IDE ішіне «Arduino core for ESP8266 WiFi chip» орнату қажет. Бұл ESP8266 Arduino ядросы сізге таныс Arduino функциялары мен кітапханаларын пайдаланып эскиздер жазуға және оларды тікелей ESP8266 -де іске қосуға мүмкіндік береді, сыртқы микроконтроллер қажет емес.

ESP8266 Arduino ядросы TCP және UDP арқылы WiFi арқылы байланысуға, HTTP, mDNS, SSDP және DNS серверлерін орнатуға, OTA жаңартуларын жасауға, флэш жадта файлдық жүйені пайдалануға, SD карталармен, сервистермен, SPI және I2C перифериялық қондырғыларымен жұмыс жасауға арналған кітапханалармен бірге келеді..

Esp8266 arduino ядросын қалай орнату керектігі туралы түсінік алу үшін келесі құжатты жүктеңіз.

3 -қадам: мотор драйвері - L293d

Мотор жүргізушісі - L293d
Мотор жүргізушісі - L293d
Мотор жүргізушісі - L293d
Мотор жүргізушісі - L293d
Мотор жүргізушісі - L293d
Мотор жүргізушісі - L293d

Мотор драйвері - бұл бір мезгілде екі қозғалтқыштың жұмыс жылдамдығы мен бағытын басқаруға мүмкіндік беретін моторларға арналған IC.

L293d 5 В -дан 36 В дейінгі кернеуде екі бағытты жетекті токтарды қамтамасыз етуге арналған. L293D бір мезгілде 2 тұрақты ток қозғалтқышын басқара алады.

L293D - бұл 16 істікшелі мотор драйвері IC. Әр қозғалтқыш үшін 4 INPUT түйреуіші, 4 OUTPUT түйреуіші және 2 ENABLE істікшесі бар.

L293D ерекшеліктері:

Бір каналда 600мА шығыс ток қабілеттілігі

Жеке арналар үшін сағат және сағат тіліне қарсы бағытты басқару

L293d сипаттамасы:

  • 1 -түйреуіш: Қосу1 жоғары болса, IC -дің сол бөлігі жұмыс істейді, яғни 3 -істікшеге қосылған қозғалтқыш және 6 -істікшесі айналады.
  • 2 -түйреуіш: 1 -ші кіріс, егер бұл түйреуіш жоғары болса, ток 1 -ші шығыстан өтеді.
  • 3 -түйреуіш: шығыс 1, бұл істік қозғалтқыштың бір терминалына қосылған.
  • 4/5 түйреуіш: GND түйреуіштері
  • 6 -түйреуіш: шығыс 2, бұл істік қозғалтқыштың бір терминалына қосылған.
  • 7 -түйреуіш: 2 -ші кіріс, егер бұл түйреуіш жоғары болса, ток 2 -ші шығыстан өтеді.
  • 8 -түйреуіш: VCC2, бұл істік жалғанған қозғалтқышқа байланысты максималды 5В -тан 36В -қа дейінгі қозғалтқыштарға қуат беру үшін қолданылады.
  • 9 -түйреуіш: Қосу 2 жоғары болса, IC -тің оң бөлігі жұмыс істейді, яғни 11 -істікшеге қосылған қозғалтқыш 14 -істікшеге айналады.
  • 10 -түйреуіш: 4 -ші кіріс, егер бұл түйреуіш жоғары болса, ток 4 -ші шығыстан өтеді.
  • Пин 11: шығыс 4, бұл істік қозғалтқыштың бір терминалына қосылған.
  • 12/13 түйреуіші: GND түйреуіштері
  • 14 түйреуіш: шығыс 3, бұл істік қозғалтқыштың бір терминалына қосылған.
  • 15 -түйреуіш: 3 -ші кіріс, егер бұл түйреуіш жоғары болса, ток 3 -ші шығыстан өтеді.
  • 16 түйреуіш: VCC1, логикалық ток IC үшін, яғни 5В.

Осылайша, сіз әр қозғалтқышты басқару үшін 3 цифрлық түйреуіш қажет екенін көре аласыз (жылдамдықты реттеу үшін бір істік және бағытты басқару үшін екі түйреуіш). Егер бір L293d екі тұрақты ток қозғалтқышын басқарса, онда бізге төрт тұрақты ток қозғалтқышын басқару үшін екі L293d IC қажет болады. Бұл жобада біз пластикалық BO Motors қолданамыз. Осылайша, біз барлық төрт тұрақты ток қозғалтқыштарын жылдамдықты да, бағытты да басқара алатын 12 сандық түйреуіш қажет болатынын көресіз.

Егер сіз Wemos D1 mini -ді көрсеңіз, онда тек 11 цифрлық енгізу -шығару штыры мен 1 аналогтық түйреуіш бар. Бұл мәселені шешу үшін біз төрт қосушы түйреуішті (бірінші L293d екі қосқыш түйреуіш және басқа L293d екі қосқыш түйреуіш) тікелей Wemos Digital түйреуіштеріне қосамыз, ал барлық сегіз кіріс түйреуіштері (бірінші L293d төрт және басқа L293d төрт) PCF8574 (енгізу -шығару портын кеңейтуші) көмегімен I2C.

4 -қадам: PCF8574 - енгізу -шығару портын кеңейтуші

PCF8574 - енгізу -шығару портын кеңейтуші
PCF8574 - енгізу -шығару портын кеңейтуші
PCF8574 - енгізу -шығару портын кеңейтуші
PCF8574 - енгізу -шығару портын кеңейтуші

Wemos D1 Mini (яғни ESP8266) кіріс/шығыс түйреуіштерінің жетіспеушілігіне ие. Біз енгізу -шығару кеңейтуінің 8 разрядты PCF8574 сияқты IC енгізу кеңейту цифрларын көбейте аламыз.

PCF8574A енгізу -шығару кеңейткішін қолданудың артықшылықтарының бірі - I2C шинасын қолданады, ол тек екі деректер желісін қажет етеді, олар - сағат (SCK) және деректер (SDA). Сондықтан, осы екі жолмен сіз бір чиптің сегіз түйреуішін басқара аласыз. Әр PCF8574 үш адрестік түйреуішті өзгерту арқылы біз жалпы 64 істікті басқара аламыз.

Екі жолды екі бағытты шинаға (I2C) арналған бұл 8-биттік кіріс/шығыс (енгізу-шығару) кеңейткіші 2,5 В-тан 6 В-ге дейінгі VC жұмысына арналған. PCF8574 құрылғысы I2C интерфейсі [сериялық сағат (SCL), сериялық деректер (SDA)] арқылы микроконтроллерлердің көптеген отбасылары үшін жалпы мақсаттағы қашықтан енгізу-шығаруды кеңейтуді қамтамасыз етеді.

Құрылғыда 8-биттік квази-екі бағытты енгізу-шығару порттары (P0 – P7) бар, оның ішінде жарықдиодты тікелей жетуге арналған жоғары ток жетегі бар бекітілген шығыс. Әрбір квази-екі бағытты енгізу-шығару деректерді басқару сигналын пайдаланбай кіріс немесе шығыс ретінде пайдалануға болады. Қосылған кезде енгізу -шығару нүктелері жоғары болады.

PCF8574 қос L293d IC құрылғысымен қосылу схемасы үшін төмендегі «PCF8574_With_L293d» pdf файлын қараңыз.

5 -қадам: Схемалар

Схемалар
Схемалар
Схемалар
Схемалар

Мен PCB жобалау үшін Kicad қолдандым.

Дербес компьютерді жасау немесе оны нүктелік компьютер тақтасында енгізу үшін төмендегі схемалық pdf файлын жүктеңіз.

6 -қадам: код

Келесі Wi-Fi кіру нүктесіне қосылыңыз:-

// Пайдаланушы анықтаған желі тіркелгі деректеріsconst char* ssid = «WiFi_Robot»;

const char* password = «@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

Бұл роботтың тоқтауына әкеледі

Қаласаңыз, Robo India Android қосымшасы арқылы роботты басқара аласыз.

{Robo India жасаған ойын дүкенінен «WiFi Robot Controller» андроид қосымшасын іздеңіз}

[Ескерту: Мен Robo India -мен ешқандай байланыста емеспін және бұл жарнамаға арналмаған, бұл менің жеке жобам!]

Жобаның жұмыс видеосы:-

Ұсынылған: