Innholdsfortegnelse:

Wi-Fi-kontrollert 4-hjulet robot: 6 trinn
Wi-Fi-kontrollert 4-hjulet robot: 6 trinn

Video: Wi-Fi-kontrollert 4-hjulet robot: 6 trinn

Video: Wi-Fi-kontrollert 4-hjulet robot: 6 trinn
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, November
Anonim
Wi-Fi-kontrollert 4-hjulet robot
Wi-Fi-kontrollert 4-hjulet robot

For dette prosjektet skal vi utvikle en 4-hjulet robot ved bruk av ESP8266 som vil bli kontrollert over et Wi-Fi-nettverk. Roboten kan styres fra en vanlig nettleser, ved hjelp av et HTML -designet grensesnitt eller også fra en Android -mobilapplikasjon. ESP8266-brikken er en kraftig og billig mikrokontroller, som ikke bare er enkel å bruke, men også kommer med innebygd Wi-Fi-tilkobling. Dette er bare den perfekte brikken for å styre roboter eksternt fra datamaskinen eller mobilenheten.

For å inkorporere denne brikken i vårt prosjekt kan vi bruke en rekke utviklingstavler basert på denne mikrokontrolleren.

1. Adafruit Feather Huzzah - Den er laget av Adafruit og har lett tilgjengelige instruksjoner og støtte. Den har li-po batterilader på selve brettet, så den vil komme veldig godt med i bærbare prosjekter.

2. NodeMCU ESP8266 - Brettet er åpen kildekode og har utmerket dokumentasjon, så det vil være veldig enkelt å komme i gang.

3. Sparkfun ESP8266 - Det er som Huzzah med tillegg av en strømbryter og en ekstern antenne for et lengre Wi -Fi -område.

4. Wemos D1 Mini - Det er det minste av alle brettene, men dette har ingen effekt på ytelsen.

For prosjektet mitt bruker jeg Wemos D1 Mini til å lage en Wi-Fi-kontrollert 4-hjulet robot. Men du kan bruke et hvilket som helst ESP8266 -utviklingsbord og bruke den samme Arduino -koden uten at noen endringer kreves. Jeg har designet en kretskort for dette prosjektet, men du kan bruke et prikk -kretskort for å implementere kretsen eller til og med designe din egen kretskort.

Og vi vil bruke 4WD Robotic Chassis Kit som vist på bildet ovenfor, da det er ideelt for DIY og er det mest økonomiske robotbilsettet med enkel mekanisk struktur.

Funksjoner i dette settet:-

1. Leveres med fire separate BO -plastmotorer med girkasse, den er god å manøvrere.

2. Stort, solid akrylchassis gir deg muligheten til å bygge ut mye.

3. Firehjulsdrevet smart bilchassisett. Veldig enkel å installere, bare legg til mikrokontroller (for eksempel Arduino) og sensormoduler for å bygge en fullt autonom robot

Trinn 1: Komponentliste

Komponentliste
Komponentliste
Komponentliste
Komponentliste
Komponentliste
Komponentliste

Wemos D1 Mini [Antall - 1]

L293d Motor Driver IC [Mengde - 2]

PCF8574 Port Expander IC [Mengde - 1]

12V litiumionbatteri [mengde - 1]

Wi-Fi-kontrollert robot-PCB [Antall-1]

4WD Robot Smart Car Chassis Kit [Antall - 1]

Trinn 2: Brain of the Project - ESP8266 Development Board (Wemos D1 Mini)

Prosjektets hjerne - ESP8266 Development Board (Wemos D1 Mini)
Prosjektets hjerne - ESP8266 Development Board (Wemos D1 Mini)

Wemos D1 Mini er et mini-Wi-Fi-utviklingsbord med 4 MB blits basert på ESP-8266 Chip.

  • Har 11 digitale inngangs-/utgangspinner, alle pinner har avbrudd/pwm/I2C/en-ledning støttet (unntatt D0)
  • Har 1 analog inngang (3,2V maks inngang)
  • Har en mikro -USB -tilkobling for programmering samt strømforsyning.

Dette brettet som er basert på ESP8266 er derfor Arduino IDE -kompatibelt, derfor kan det programmeres ved hjelp av Arduino eller kan også programmeres ved hjelp av Lua -kompilator. Den støtter også både seriell og OTA -programmering.

Vi skal programmere Wemos D1 Mini ved hjelp av Arduino IDE. For å programmere brettet med Arduino IDE må følgende krav være oppfylt.

Krav:-

  • Driver for CH340G
  • Installer siste Arduino IDE fra Arduino -nettstedet.
  • En mikro -usb -kabel for programmering

Etter at du har installert driveren og arduino -programvaren, må du installere "Arduino -kjerne for ESP8266 WiFi -brikke" inne i Arduino IDE, slik at vi kan programmere ESP8266 -brikken fra Arduino -miljøet. Denne ESP8266 Arduino -kjernen lar deg skrive skisser ved hjelp av kjente Arduino -funksjoner og biblioteker, og kjøre dem direkte på ESP8266, ingen ekstern mikrokontroller er nødvendig.

ESP8266 Arduino -kjernen kommer med biblioteker for å kommunisere over WiFi ved hjelp av TCP og UDP, konfigurere HTTP-, mDNS-, SSDP- og DNS -servere, gjøre OTA -oppdateringer, bruke et filsystem i flashminne, arbeide med SD -kort, servoer, SPI og I2C -eksterne enheter.

Last ned følgende dokument for å få en ide om hvordan du installerer Esp8266 arduino -kjernen.

Trinn 3: Motordriver - L293d

Motordriver - L293d
Motordriver - L293d
Motordriver - L293d
Motordriver - L293d
Motordriver - L293d
Motordriver - L293d

Motor Driver er en IC for motorer som lar deg kontrollere arbeidshastigheten og retningen til to motorer samtidig.

L293d er designet for å gi toveis drivstrømmer ved spenninger fra 5 V til 36 V. L293D kan drive 2 likestrømsmotorer samtidig.

L293D er en 16 -pinners motor driver IC. Det er 4 INPUT -pinner, 4 OUTPUT -pinner og 2 ENABLE -pinner for hver motor.

L293D -funksjoner:

600mA utgangsstrømsevne per kanal

Klokke og retning mot urviseren for individuelle kanaler

Pin Beskrivelse av L293d:

  • Pin 1: Når Enable1 er HIGH, vil venstre del av IC fungere, dvs. motor som er koblet til pin 3 og pin 6 vil rotere.
  • Pinne 2: Inngang 1, når denne pinnen er HØY, vil strømmen flyte gjennom utgang 1.
  • Pinne 3: Utgang 1, denne pinnen er koblet til en terminal på motoren.
  • Pin 4/5: GND pins
  • Pinne 6: Utgang 2, denne pinnen er koblet til en terminal på motoren.
  • Pinne 7: Inngang 2, når denne pinnen er HØY, vil strømmen flyte gjennom utgang 2.
  • Pinne 8: VCC2, denne pinnen brukes til å gi strømtilførsel til tilkoblede motorer fra 5V til 36V maks. Avhenger av tilkoblet motor.
  • Pin 9: Når Enable 2 er HIGH, vil høyre del av IC fungere, det vil si at motoren som er koblet til pin 11 og pin 14 vil rotere.
  • Pinne 10: Inngang 4, når denne pinnen er HØY, vil strømmen flyte gjennom utgang 4.
  • Pinne 11: Utgang 4, denne pinnen er koblet til en motorterminal.
  • Pin 12/13: GND pins
  • Pinne 14: Utgang 3, denne pinnen er koblet til en terminal på motoren.
  • Pinne 15: Inngang 3, når denne pinnen er HØY, vil strømmen flyte gjennom utgang 3.
  • Pin 16: VCC1, for logisk strømforsyning til IC, dvs. 5V.

Dermed kan du se at du trenger 3 digitale pinner for å kontrollere hver motor (en pinne for hastighetskontroll og to pinner for retningskontroll). Hvis en L293d styrer to likestrømsmotorer, vil vi kreve to L293d IC -er for å kontrollere fire likestrømsmotorer. Vi skal bruke BO -motorer av plast til dette prosjektet. Dermed ser du at vi vil kreve 12 digitale pinner for å kontrollere alle de fire likestrømsmotorene uavhengig av både hastighets- og retningskontroll.

Men hvis du ser at Wemos D1 mini bare har 11 digitale I/O -pinner og 1 analog pin. For å løse dette problemet skal vi koble de fire aktiveringspinnene (to aktiveringspinner på første L293d og to aktiveringspinner på andre L293d) til Wemos Digital -pinner direkte mens alle de åtte inngangspinnene (fire av de første L293d og fire av de andre L293d) ved hjelp av PCF8574 (en I/O -portutvidelse) via I2C.

Trinn 4: PCF8574 - en I/O -portutvidelse

PCF8574 - en I/O -portutvidelse
PCF8574 - en I/O -portutvidelse
PCF8574 - en I/O -portutvidelse
PCF8574 - en I/O -portutvidelse

Wemos D1 Mini (dvs. ESP8266) har mangel på input/output pins. Vi kan øke de digitale inngangs-/utgangspinnene ved hjelp av I/O -ekspander IC som PCF8574, som er en 8 -bits I/O -ekspander.

En av fordelene med å bruke PCF8574A I/O -ekspander er at den bruker I2C -buss, som bare krever to datalinjer, de er klokke (SCK) og data (SDA). Derfor kan du med disse to linjene kontrollere opptil åtte pinner av samme brikke. Ved å endre de tre adressepinnene på hver PCF8574 kan vi kontrollere totalt 64 pinner.

Denne 8-biters inngang/utgang (I/O) ekspander for to-linjers toveis buss (I2C) er designet for 2,5V til 6V VCC drift. PCF8574-enheten tilbyr generell ekstern I/O-utvidelse for de fleste mikrokontrollerfamilier ved hjelp av I2C-grensesnittet [seriell klokke (SCL), seriedata (SDA)].

Enheten har en 8-bits kvasi-toveis I/O-port (P0 – P7), inkludert låste utganger med høy strømstyrke for direkte kjøring av lysdioder. Hver kvasi-toveis I/O kan brukes som inngang eller utgang uten bruk av et dataretningssignal. Ved påslåing er I/Os høye.

Se pdf -filen "PCF8574_With_L293d" nedenfor for tilkoblingsdiagrammet til PCF8574 med de to L293d IC -ene

Trinn 5: Skjemaer

Skjemaer
Skjemaer
Skjemaer
Skjemaer

Jeg har brukt Kicad for PCB -design.

Last ned skjematisk pdf nedenfor for å designe din egen kretskort eller implementere den på et prikk -kretskort.

Trinn 6: Kode

Koble til følgende Wi-Fi-tilgangspunkt:-

// User Defined Network Credentialsconst char* ssid = "WiFi_Robot";

const char* password = "Automatiser@111";

Etter å ha koblet til tilgangspunktet ovenfor, gå til lenken nedenfor i en nettleser:-

192.168.4.1

Du får følgende melding:-

"hei fra Robot!"

192.168.4.1/fw

Det vil føre til at roboten beveger seg fremover

192.168.4.1/bk

Det vil føre til at roboten beveger seg bakover

192.168.4.1/lt

Det vil føre til at roboten beveger seg til venstre

192.168.4.1/rt

Det vil føre til at roboten beveger seg til høyre

192.168.4.1/st

Det vil få roboten til å stoppe

Hvis du vil kan du også kontrollere roboten via Android -appen laget av Robo India.

{Søk etter Android WiFi -appen "WiFi Robot Controller" på playstore laget av Robo India}

[Merk: Jeg er på ingen måte knyttet til Robo India, og dette er ikke for reklame, dette er mitt personlige prosjekt!]

Arbeidsvideo av prosjektet:-

Anbefalt: