Sisukord:

WiFi-juhitav neljarattaline robot: 6 sammu
WiFi-juhitav neljarattaline robot: 6 sammu

Video: WiFi-juhitav neljarattaline robot: 6 sammu

Video: WiFi-juhitav neljarattaline robot: 6 sammu
Video: wifi пульт для IR и RF кодов Broadlink RM4C Pro, работа в Home Assistant - управляем кондиционером 2024, November
Anonim
WiFi-juhitav neljarattaline robot
WiFi-juhitav neljarattaline robot

Selle projekti jaoks töötame välja neljarattalise roboti, kasutades ESP8266, mida juhitakse WiFi-võrgu kaudu. Robotit saab juhtida tavalisest Interneti -brauserist, kasutades HTML -i loodud liidest või ka Android -mobiilirakendusest. Kiip ESP8266 on võimas ja odav mikrokontroller, mida pole mitte ainult lihtne kasutada, vaid on kaasas ka WiFi-ühendus. See on lihtsalt ideaalne kiip robotite kaugjuhtimiseks arvutist või mobiilseadmest.

Selle kiibi lisamiseks meie projekti saame kasutada mitmesuguseid sellel mikrokontrolleril põhinevaid arendusplaate.

1. Adafruit Feather Huzzah - selle on valmistanud Adafruit ning sellel on kergesti kättesaadavad juhised ja tugi. Tahvlil on li-po akulaadija, nii et see on kaasaskantavate projektide jaoks tõesti mugav.

2. NodeMCU ESP8266 - tahvel on avatud lähtekoodiga ja suurepärase dokumentatsiooniga, seega on alustamine väga lihtne.

3. Sparkfun ESP8266 - see on nagu Huzzah, millele on lisatud toitelüliti ja väline antenn pikema WiFi -leviala jaoks.

4. Wemos D1 Mini - see on kõigist tahvlitest väikseim, kuid see ei mõjuta jõudlust.

Oma projekti jaoks kasutan Wemos D1 Mini WiFi-juhitava neljarattalise roboti valmistamiseks. Kuid võite kasutada mis tahes ESP8266 arendusplaati ja kasutada sama Arduino koodi ilma muudatusi tegemata. Olen selle projekti jaoks kavandanud trükkplaadi, kuid vooluahela rakendamiseks võite kasutada punkt -PCB -plaati või isegi oma PCB -d kujundada.

Ja me kasutame 4WD robotraamikomplekti, nagu on näidatud ülaltoodud pildil, kuna see sobib ideaalselt isetegemiseks ja on kõige ökonoomsem lihtsa mehaanilise konstruktsiooniga robot -autokomplekt.

Selle komplekti omadused:-

1. Kaasas neli eraldi BO plastmootorit koos käigukastiga, see on hea manööverdusvõime jaoks.

2. Suur ja vastupidav akrüülist šassii võimaldab teil meisterdamiseks suurepäraselt laiendada.

3. Nelikveoga nutika auto šassii komplekt. Väga lihtne paigaldada, lisage täielikult autonoomse roboti ehitamiseks lihtsalt mikrokontroller (näiteks Arduino) ja andurimoodulid

Samm: komponentide loend

Komponentide loend
Komponentide loend
Komponentide loend
Komponentide loend
Komponentide loend
Komponentide loend

Wemos D1 Mini [kogus - 1]

L293d mootorijuhi IC [kogus - 2]

PCF8574 pordi laiendi IC [kogus - 1]

12V liitiumioonaku (kogus - 1)

WiFi-juhitav robotplaat [kogus-1]

4WD roboti nutika auto šassii komplekt [kogus - 1]

2. samm: projekti ajur - ESP8266 arendusnõukogu (Wemos D1 Mini)

Projekti aju - ESP8266 arendusnõukogu (Wemos D1 Mini)
Projekti aju - ESP8266 arendusnõukogu (Wemos D1 Mini)

Wemos D1 Mini on mini-WiFi-arendusplaat, millel on 4 MB välklamp ja mis põhineb ESP-8266 kiibil.

  • Sellel on 11 digitaalset sisend-/väljundnõela, kõigil tihvtidel on katkestus/pwm/I2C/ühe juhtmega tugi (välja arvatud D0)
  • On 1 analoogsisend (3,2 V maksimaalne sisend)
  • Sellel on programmeerimiseks mikro -USB -ühendus ja toiteallikas.

See plaat, mis põhineb ESP8266 -l, on seega ühilduv Arduino IDE -ga, seetõttu saab seda programmeerida Arduino abil või programmeerida ka Lua kompilaatori abil. Samuti toetab see nii jada- kui ka OTA -programmeerimist.

Programmeerime Wemos D1 Mini Arduino IDE abil. Tahvli programmeerimiseks Arduino IDE abil tuleb järgida järgmisi nõudeid.

Nõue:-

  • CH340G draiver
  • Installige uusim Arduino IDE Arduino veebisaidilt.
  • Mikro -usb -kaabel programmeerimiseks

Pärast draiveri ja arduino tarkvara installimist peate Arduino IDE -sse installima “Arduino core for ESP8266 WiFi chip”, et saaksime ESP8266 kiibi Arduino keskkonnast programmeerida. See ESP8266 Arduino tuum võimaldab teil visandeid kirjutada tuttavate Arduino funktsioonide ja teekide abil ning neid otse ESP8266 abil käivitada, välist mikrokontrollerit pole vaja.

ESP8266 Arduino tuum on varustatud raamatukogudega, mis suhtlevad WiFi kaudu TCP ja UDP abil, seadistavad HTTP-, mDNS-, SSDP- ja DNS -servereid, teevad OTA värskendusi, kasutavad välkmälus olevat failisüsteemi, töötavad SD -kaartide, servode, SPI ja I2C välisseadmetega.

Laadige alla järgmine dokument, et saada aimu Esp8266 arduino tuuma installimisest.

Samm: mootorijuht - L293d

Mootori juht - L293d
Mootori juht - L293d
Mootori juht - L293d
Mootori juht - L293d
Mootori juht - L293d
Mootori juht - L293d

Mootori juht on mootorite jaoks mõeldud IC, mis võimaldab teil kahe mootori töökiirust ja suunda üheaegselt juhtida.

L293d on ette nähtud kahesuunaliste ajamivoolude pakkumiseks pingetel 5 V kuni 36 V. L293D saab üheaegselt juhtida 2 alalisvoolumootorit.

L293D on 16 -pin mootorijuhi IC. Iga mootori jaoks on 4 SISENDNÜÜPI, 4 VÄLJUNDI ja 2 LUBATAV tihvti.

L293D omadused:

600 mA väljundvoolu võimalus kanali kohta

Kell ja suuna juhtimine vastupäeva üksikute kanalite jaoks

L293d tihvtide kirjeldus:

  • Pin 1: Kui Enable1 on HIGH, töötab IC vasakpoolne osa, st mootor, mis on ühendatud tihvtiga 3 ja tihvtiga 6, pöörleb.
  • Pin 2: sisend 1, kui see tihvt on HIGH, voolab vool läbi väljundi 1.
  • Pin 3: väljund 1, see tihvt on ühendatud mootori ühe klemmiga.
  • Pin 4/5: GND tihvtid
  • Pin 6: väljund 2, see tihvt on ühendatud mootori ühe klemmiga.
  • Pin 7: sisend 2, kui see tihvt on HIGH, voolab vool läbi väljundi 2.
  • Tihvt 8: VCC2, seda tihvti kasutatakse ühendatud mootorite toiteallika andmiseks vahemikus 5–36 V, sõltuvalt ühendatud mootorist.
  • Pin 9: Kui Enable 2 on HIGH, töötab IC parempoolne osa, st mootor, mis on ühendatud tihvtiga 11 ja tihvtiga 14, pöörleb.
  • Pin 10: sisend 4, kui see tihvt on HIGH, voolab vool läbi väljundi 4.
  • Pin 11: väljund 4, see tihvt on ühendatud mootori ühe klemmiga.
  • Tihvt 12/13: GND tihvtid
  • Tihvt 14: väljund 3, see tihvt on ühendatud mootori ühe klemmiga.
  • Pin 15: sisend 3, kui see tihvt on HIGH, voolab vool läbi väljundi 3.
  • Pin 16: VCC1, loogika toiteallikaks IC, st 5V.

Seega näete, et iga mootori juhtimiseks on vaja 3 digitaalset tihvti (üks tihvt kiiruse reguleerimiseks ja kaks tihvti suuna juhtimiseks). Kui üks L293d juhib kahte alalisvoolumootorit, vajame nelja alalisvoolumootori juhtimiseks kahte L293d IC -d. Selle projekti jaoks kasutame plastikust BO -mootoreid. Seega näete, et kõigi nelja alalisvoolumootori iseseisvaks juhtimiseks nii kiiruse kui ka suuna juhtimiseks vajame 12 digitaalset tihvti.

Kui aga näete, on Wemos D1 minil ainult 11 digitaalset sisend-/väljundpistikut ja 1 analoogpistik. Selle probleemi lahendamiseks ühendame neli lubatavat tihvti (kaks esimese L293d lubatavat tihvti ja kaks teise L293d lubatavat tihvti) otse Wemos Digitali tihvtidega, samal ajal kui kõik kaheksa sisendnõela (neli esimest L293d ja neli teist L293d) kasutades PCF8574 (I/O pordi laiendit) I2C kaudu.

4. samm: PCF8574 - I/O pordi laiendaja

PCF8574 - I/O pordi laiendaja
PCF8574 - I/O pordi laiendaja
PCF8574 - I/O pordi laiendaja
PCF8574 - I/O pordi laiendaja

Wemos D1 Mini (st ESP8266) on sisend-/väljundtihvtide puudus. Me saame suurendada digitaalseid sisend-/väljundpistikuid, kasutades sisend-/väljundlaiendit, nagu PCF8574, mis on 8 -bitine sisend-/väljundlaiend.

Üks PCF8574A I/O laiendi kasutamise eeliseid on see, et see kasutab I2C siinit, mille jaoks on vaja ainult kahte andmeliini, need on kell (SCK) ja andmed (SDA). Seetõttu saate nende kahe rea abil juhtida kuni kaheksa sama kiibi tihvti. Iga PCF8574 kolme aadressi tihvti muutes saame juhtida 64 tihvti.

See 8-bitine sisend/väljund (I/O) laiendaja kaherealiseks kahesuunaliseks siiniks (I2C) on mõeldud töötamiseks 2,5V kuni 6V VCC. Seade PCF8574 pakub I2C liidese [jadakell (SCL), seeriaandmed (SDA)] abil üldotstarbelist kaug-I/O laiendust enamikule mikrokontrollerite perekondadele.

Seadmel on 8-bitine peaaegu kahesuunaline I/O-port (P0 – P7), sealhulgas lukustatud väljundid, millel on suure voolutugevusega juhtimisvõimalus LED-ide otsejuhtimiseks. Iga peaaegu kahesuunalist I/O saab kasutada sisendina või väljundina ilma andmesuuna juhtimissignaali kasutamata. Sisselülitamisel on I/O kõrged.

PCF8574 ühendusskeemi kahe L293d IC -ga leiate allolevast PDF -failist "PCF8574_With_L293d"

Samm: skeemid

Skeemid
Skeemid
Skeemid
Skeemid

PCB projekteerimisel olen kasutanud Kicadi.

Laadige alla allolev skemaatiline pdf, et kujundada oma PCB või rakendada see täpsele PCB -plaadile.

6. samm: kood

Ühendage järgmise Wi-Fi pääsupunktiga:-

// Kasutaja määratud võrgu mandaatconst char* ssid = "WiFi_Robot";

const char* password = "Automatiseeri@111";

Pärast ülaltoodud pääsupunktiga ühenduse loomist minge veebibrauseris allolevale lingile:-

192.168.4.1

Saate järgmise sõnumi:-

"Tere robotilt!"

192.168.4.1/fw

See paneb roboti edasi liikuma

192.168.4.1/bk

See paneb roboti tagurpidi liikuma

192.168.4.1/lt

See paneb roboti vasakule liikuma

192.168.4.1/rt

See paneb roboti paremale liikuma

192.168.4.1/st

See põhjustab roboti seiskumise

Soovi korral saate robotit juhtida ka Robo India loodud Androidi rakenduse kaudu.

{Otsige Androidi rakendust "WiFi Robot Controller" Robo India mängupoest}

[Märkus: mingil moel pole ma Robo Indiaga seotud ja see pole reklaam, see on minu isiklik projekt!]

Projekti töövideo:-

Soovitan: