Innholdsfortegnelse:

ESP32 Dual H Bridge Breakout Board: 8 trinn
ESP32 Dual H Bridge Breakout Board: 8 trinn

Video: ESP32 Dual H Bridge Breakout Board: 8 trinn

Video: ESP32 Dual H Bridge Breakout Board: 8 trinn
Video: Controlling 2 DC Motors using ESP32 and L298N Motor driver 2024, Juli
Anonim
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board
ESP32 Dual H Bridge Breakout Board

Dette prosjektet er for et ESP32 Breakout -kort som ble designet for å være hjernen til din neste robot. Funksjonene i dette brettet er;

  • Har plass til alle ESP32 dev -sett som har to rader med opptil tjue pinner på en tommer sentre.
  • Et sted å montere et TB6612FNG dual H bridge DC motor controller datterkort.
  • En klemme med to skruer for hver motortilkobling.
  • En rekkeklemme med to skruer og et sett med fem toppskinner for Vin & Gnd
  • To rader med tjue GPIO breakout pins.
  • Overskrifter for to HC-SR04 ekkoloddsensorer, med spenningsdelere på Echo-utgangen.
  • En overskrift for tilkobling til en trefarget, vanlig anode, LED med begrensningsmotstander.
  • Ombord på 5V, 1A spenningsregulator med fem toppstifter for 5V og Gnd.
  • Fire sett med overskrifter for I2C -tilkoblinger med 3.3V & Gnd for hver tilkobling.
  • Alle komponenter monteres på den ene siden av kretskortet.

Den fysiske størrelsen på brettet er 90 mm x 56 mm, tosidig. Dette setter det godt innenfor størrelsesgrensene på 100 mm x 100 mm for de fleste brettprodusenter med lave kostnader.

Alle filene som kreves for å lage et av disse brettene, finnes på github her.

Brettet ble designet rundt DOIT ESP32 DEVKIT V1 som har to rader med atten pinner hver. Enkelt kutte spor på baksiden av brettet lar deg skille de dedikerte 5V, Gnd og 3.3V pinnene fra sine respektive busser. Deretter kan du bruke pinnene på disse stedene som GPIO, og ved hjelp av hoppere kan du koble 5V-, Gnd- og 3.3V -bussene til de riktige pinnene på ESP32 dev -settet du bruker.

To rader med tjue hull er tilgjengelig for montering av ESP dev -settet. Jeg anbefaler at du kjøper hunkontaktlister og lodder dem inn i hullene. På denne måten kan du når som helst fjerne ESP32 dev -settet og erstatte det med et annet. Bruk av stikkontakter gir også god klaring for delene som er montert under utstyrssettet. Jeg liker å kjøpe førti pin header og socket strips og deretter kutte dem ned til størrelse. Dette bidrar til å redusere kostnadene. Du kan ikke kutte hunkontaktstrimlene mellom to stikkontakter, du må 'brenne' en stikkontakt for å kutte dem ned. Med andre ord kan ikke en førti -pins kvinnelig stikkontakt kuttes i to tjue pin -strimler. En førti -pins hunstikkstripe kan kuttes i en tjue -pins stripe og en nitten -pins stripe.

Trinn 1: TB6612FNG Dual H -bro

TB6612FNG Dual H -bro
TB6612FNG Dual H -bro

TB6612FNG er en dobbel H -bro, motorstyring som kan drive en trinnmotor eller to DC -hobbymotorer (ikke børsteløse motorer). Den er ideell for å kjøre de små, rimelige, girmotorene som er lett tilgjengelige. Utbruddskortet har et sted å montere et datterbrett som har TB6612FNG. TB6612FNG -kortet som jeg valgte å bruke er tilgjengelig fra flere steder; Sparkfun (p/n ROB-14451, Mouser og Digikey selger også Sparkfun-brettet), Pololu (p/n 713), EBay, Aliexpress og Gearbest. Prisene varierer fra omtrent en dollar til fem dollar.

Hver DC -motordriver bruker tre GPIO -pinner. To GPIO -pinner bestemmer motortilstanden; forover, bakover, kyst og brems. Den tredje GPIO -pinnen er PWM for å kontrollere motorhastigheten. En syvende GPIO -pinne driver STBY -pinnen. Kontrollsignalene for TB6612FNG er fastkoblet til ESP32 GPIO breakout pins. Hvilke GPIO -pinner som brukes, bestemmes av smaken av ESP32 Dev Kit som du bruker. De fastkoblede pinnene ble nøye valgt slik at de skulle justere med GPIO PWM og Output pins på de fleste ESP32 Dev Kits.

Motorene er koblet til ved hjelp av to, to -pins skrueklemmer merket Motor A og Motor B. En på hver side av breakout -kortet. Strøm til motorene hentes inn av enten en to -pins skrueklemme eller et sett med hankontakter i den ene enden av breakout -kortet, merket Vin. Vin kan være hvilken som helst likspenning fra 6V til 12V. En 5V, 1A spenningsregulator konverterer Vin -spenningen til 5V for å drive Sonar -sensorene.

DOIT Dev KIT kommer i to størrelser, 30 pins (15 på en side) og 36 pins (18 på en side). Jeg har listet opp tilkoblingene for begge dev -settene nedenfor.

30 -pinners dev -sett - 36 -pinners dev -kit

AIN1 - 25 - 14 - retningskontroll for motor A

AIN2 - 26 - 12 - retningskontroll for motor A

PWMA - 27 - 13 - hastighetskontroll for motor A

STBY - 33 - 27 - stopper begge motorene

BIN1 - 16 - 15 - retningskontroll for motor B

BIN2 - 17 - 2 - retningskontroll for motor B

PWMB - 5 - 4 - hastighetskontroll for motor B

Trinn 2: GPIO Pins

GPIO Pins
GPIO Pins

Brettet har to sett med tjue pinnehoder for GPIO breakout. Hvert sett med GPIO -overskrifter inneholder tjue pins for 3,3V og tjue pins for Gnd. 3.3V -pinnene er plassert mellom GPIO -pinnene og Gnd -pinnene. Denne konfigurasjonen reduserer muligheten for at noe blåser opp hvis det kobles til bakover. Nesten alt du vil koble til en GPIO -pin krever enten en 3.3V- eller Gnd -tilkobling eller begge deler. Konfigurasjonen med trippel rad betyr at du alltid har en strøm- og Gnd -pin for hver tilkobling.

Hvis du bruker et annet ESP32 dev kit enn DOIT Dev Kit kan det ha Vin, 3.3V og Gnd pins på andre steder enn DOIT Dev Kit. Breakout -brettet har enkelt kuttet spor på baksiden som kan kuttes for å isolere Vin-, 3.3V- og Gnd -pinnene fra de respektive bussene. Du kan deretter bruke jumperkabler til å koble Vin-, 3.3V- og Gnd -pinnene på ESP32 Dev Kit til de riktige bussene. 3.3V -pinnene kan kobles til ved hjelp av standard to -pinners kortplugger. For Gnd -pin -tilkoblinger fant jeg ut noen hoppere ved hjelp av tre -pins DuPont -skall, to kvinnelige krympestifter og et kort stykke ledning. Etter å ha presset hunpinnene til hver ende av ledningen, satte jeg dem inn i endespaltene på trepinneskallet.

Hvis du noen gang vil koble til transene du kutter igjen, har hver et sett med gjennomgående hull. Du kan enten lodde en U -formet jumper wire i hullene eller legge til en to -pins header og bruke en standard to -pins shorting plugg for å lage en flyttbar jumper.

Et forsiktig ord. 3.3V -regulatoren på ESP32 dev -settet brukes til å gi 3.3V for ESP32 og eventuelle eksterne enheter som du kobler til 3.3V -bussen. Regulatoren har en grense på 1A. Jo høyere Vin -spenning og mer strøm du trekker, vil få regulatoren til å varme opp. Husk dette når du prøver å drive enheter med høy strøm som LED -strips eller servomotorer med 3,3V. Noen få I2C -enheter som gyros, akseleratorer og ADC -omformere bør ikke være et problem.

Trinn 3: Vin

Vin er inngangsspenningen for motorene og 5V -regulatoren. Vin kan være hvilken som helst spenning fra 5V til 12V. Hvis du bruker 5V for Vin, vil utgangsspenningen til den innebygde 5V -regulatoren ikke være 5V. Dette skyldes at 5V -regulatoren må ha en spenning høyere enn 5V for å regulere til 5V.

Vin brukes også som inngangsspenning til 3.3V regulatoren på ESP32 dev kit.

ESP dev -settets referansedesign har en diode for å isolere USB -spenningen fra spenningen på Vin -pinnen til dev -settet. Dioden sikrer at Vin-spenningen ikke prøver å drive USB-spenningen, og at USB-til-seriell brobrikke på ESP32 dev-settet bare drives av USB-spenningen. Dette betyr at du er trygg til å koble en spenningskilde høyere enn 5V til Vin på utbruddskortet og bruke USB -tilkoblingen samtidig, uten frykt for å ødelegge noe. Spenningsregulatoren på ESP32 dev -settet er i samme familie som spenningsregulatoren som ble brukt på breakout -kortet. Dette betyr at de kan håndtere det samme spekteret av inngangsspenninger.

Koble batteripakken som driver motorene til Vin -terminalene, og den vil også drive ESP32 og eventuelle eksterne enheter du har koblet til.

Trinn 4: HC-SR04 ekkoloddsensorer

HC-SR04 ekkoloddsensorer
HC-SR04 ekkoloddsensorer
HC-SR04 ekkoloddsensorer
HC-SR04 ekkoloddsensorer

To fire-pins hoder er tilgjengelig for tilkobling av den populære HC-SR04 ekkoloddsensoren. Skivene er plassert på motsatte sider av utbruddskortet, nær motorens skrueklemmer. Overskriftene er konfigurert for en-til-en-tilkobling med HC-SR04.

HC-SR04 er en 5V-enhet. Den drives av 5V og utgangssignalet (ekko) er på 5V nivåer. ESP32 har 3.3V GPIO og er ikke 5V tolerant. Derfor trenger du en slags spenningsnivåomformer for å bringe 5V-utgangen til HC-SR04 ned til 3,3V-nivået på ESP32. Breakout-kortet har en enkel spenningsdeler for hvert av HC-SR04 Echo-signalene for å utføre nivåkonvertering. Ingen nivåkonvertering er nødvendig for en ESP32 GPIO-pin for å drive Trig-signalet til HC-SR04.

Fire-pinners topptekst for HC-SR04 gir 5V- og Gnd-tilkoblinger for sensoren. 5V leveres av 5V -regulatoren på breakout -kortet.

Mens det er en firepinners topptekst for å koble til HC-SRO4, er det en to-pinners topptekst for å koble Echo- og Trig-signalene fra HC-SR04 til ESP32. På denne måten kan du velge hvilke GPIO -pinner du vil bruke. Bruk hun-til-hunn-jumperkabler for å lage tilkoblinger. T er Trig -inngangen og E er det spenningsnivåkonverterte ekko -utgangssignalet.

Det bør være mulig å bruke HC-SR04-overskriften for å koble til en annen 5V-sensor. Koble utgangen til 5V -sensoren til Echo -inngangen og bruk spenningsdeleren til å konvertere den til et 3.3V -signal. Spenningsdeleren vil håndtere signaler som har langsomme overganger. For høyhastighetsoverganger bør du bruke en aktiv spenningsnivåomformer. Hvis du kobler et analogt signal til spenningsdeleren og deretter til en analog inngang på ESP32, bør du ta i betraktning at spenningssvingningen vil være null til 3,3V, ikke null til 5V når du beregner volt-per-count.

For eksempel kan du koble en Vishay TSOP34838 IR-sensor til 5V-, Gnd- og Echo-pinnene på HC-SR04-overskriften (Echo er koblet til sensorens utgangsstift). Da bør du kunne motta IR -kommandoer fra en hvilken som helst IR -fjernkontroll som bruker en 38KHz bærer.

Trinn 5: Tri-Color LED

Tri-Color LED
Tri-Color LED

Den trefargede LED-en er en 5 mm, vanlig anode, gjennomgående hull, RGB LED. Strømbegrensende motstander tilbys, og den vanlige anoden er koblet til 3.3V -bussen. En tre -pins header merket som RGB er tilgjengelig for bruk av LED. Et lavnivåsignal på en av RGB -pinnene vil lyse LED -en med den fargen. Hvis du kjører flere RGB -innganger samtidig, vil flere lysdioder lyse opp med den resulterende fargemiksen. Du kan bruke hun-til-kvinne-hoppere for å koble RGB-toppnålene til GPIO-pinnene du ønsker. Hvis du kobler LED -en til en GPIO -pin som har PWM -funksjoner, kan du variere lysstyrken til LED -en ved å variere PWM -lavtiden. Jeg liker å bruke lysdiodene for å hjelpe meg med å feilsøke koden jeg jobber med.

Trinn 6: I2C Breakout

Utbruddstavlen har fire rader med toppnål for I2C -grensesnittet. To av radene er fire pinner hver og er 3.3V og Gnd. De to andre radene er fem pins hver og er for SDA og SCL. Den ekstra pinnen i hver av disse radene er slik at du kan bruke to hun-til-hunn-jumperkabler for å koble radene til GPIO-pinnene du ønsker. ESP32 kan ha SDA- og SCL -signalene på flere av GPIO -pinnene. Opptil fire 3,3V, I2C -enheter kan kobles til og drives uten å bruke taukjeder. Det er ingen pullup -motstander på SDA- og SCL -signaler på breakout -kortet. Pullup -motstandene skal være på enhetene du kobler til I2C -bussen.

Merk: For de som ikke er kjent med I2C, kreves pullup-motstander på grunn av at SDA- og SCL-pinnene er åpne avløp, tri-tilstand, toveis pinner. Verdien av pullup -motstandene påvirker svinghastigheten og ringen på bussen.

Trinn 7: Materialregning

Alle motstander er SMT 1206.

Alle kondensatorer er SMT, etui A, EIA 3216.

Alle topp- og sokkelister har en stigning på 0,1 tommer (2,54 mm).

6 - tjue pin mannlige overskrifter

6 - fem -pins hanhoder

4 - firpins hannhoder

1 - trepinners hannoverskrift

2 - to -pins hanhoder

2 - tjue pinner hunstikkontakter

1 - TB6612FNG -brett, leveres med to, åtte -pins hanhoder

3 - 10uf Tantal kondensatorer

1 - 10K motstand

2 - 2.2K motstander

5 - 1K motstander

1 - AMS1117, 5V

1 - 5 mm, vanlig anode RGB LED

3 - 3 mm stigning, to -pins, skrueterminaler

Valgfri

3 - to -pins hanhoder - for tilkobling av kuttede Vin, 3.3V og Gnd -spor

Trinn 8: Pakk alt inn

Dette er et veldig allsidig ESP32 breakout board med de vanligste funksjonene som kreves av enkle roboter innebygd i breakout boardet.

Breakout -kortet er ikke begrenset til ESP32 dev -sett. Alle mikrokontrollerbrett som har to rader med opptil tjue pinner på en tommers avstand kan brukes. Et ESP8266 eller et LPC1768 -bord ville passe. Du kan montere brettet uten datterkortet TB6612FNG og bruke til å bryte ut bare GPIO. Brettet gir deg mange alternativer for hvordan du bruker det.

Hvis du har noen av disse tavlene laget, må du ikke fjerne navnet 'Macedon Engineering' fra tavlene. Du kan fritt bruke disse tavlene til enhver ikke-kommersiell applikasjon. Hvis du lager og bruker brettet, vil jeg sette pris på et rop om hva du brukte det til. Jeg håper at du finner tavlen nyttig.

Anbefalt: