Indholdsfortegnelse:

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

Video: ESP32 Dual H Bridge Breakout Board: 8 trin

Video: ESP32 Dual H Bridge Breakout Board: 8 trin
Video: Driving DC Motors with Microcontrollers 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 projekt er til et ESP32 Breakout board, der var designet til at være hjernen i din næste robot. Funktionerne i dette bord er;

  • Kan rumme ethvert ESP32 dev -kit, der har to rækker med op til tyve ben på centimeter på en tomme.
  • Et sted at montere et TB6612FNG dual H bridge DC motor controller datterkort.
  • En klemme med to skruer til hver motortilslutning.
  • En klemme med to skruer og et sæt med fem hovedstifter til Vin & Gnd
  • To rækker med tyve GPIO breakout pins.
  • Overskrifter til to HC-SR04 ekkolodssensorer med spændingsdelere på Echo-udgangen.
  • En header til tilslutning til en trefarvet, fælles anode, LED med begrænsende modstande.
  • Ombord 5V, 1A spændingsregulator med fem hovedstifter til 5V & Gnd.
  • Fire sæt headere til I2C -forbindelser med 3.3V & Gnd for hver forbindelse.
  • Alle komponenter monteres på den ene side af printkortet.

Bordets fysiske størrelse er 90 mm x 56 mm, tosidet. Dette sætter det godt inden for størrelsesgrænserne på 100 mm x 100 mm for de fleste boardproducenter til lave omkostninger til prototyper.

Alle de filer, der kræves for at lave et af disse tavler, kan findes på github her.

Brættet blev designet omkring DOIT ESP32 DEVKIT V1, der har to rækker med atten stifter hver. Let afskårne spor på bagsiden af brættet giver dig mulighed for at adskille de dedikerede 5V, Gnd og 3.3V ben fra deres respektive busser. Derefter kan du bruge stifterne på disse steder som GPIO, og ved hjælp af jumpere kan du forbinde 5V-, Gnd- og 3.3V -busserne til de relevante ben på ESP32 dev -kittet, som du bruger.

Der er to rækker med tyve huller til montering af ESP dev -kittet. Jeg anbefaler, at du køber hunstikdåser og lodder dem i hullerne. På denne måde kan du til enhver tid fjerne ESP32 dev -sættet og erstatte det med et andet. Brug af stikdåser giver også masser af afstand til de dele, der er monteret under udviklingssættet. Jeg kan godt lide at købe fyrre pin header og socket strips og derefter skære dem ned i størrelse. Dette er med til at reducere omkostningerne. Du kan ikke skære hunstikstrimlerne mellem to stikkontakter, du skal 'brænde' en stikkontakt for at skære dem ned. Med andre ord kan en fyrpinde hunstikdåse ikke skæres i to tyve stifter. En fyrpinde hunstikdåse kan skæres i en tyvebenet strimmel og en nittenboltstrimmel.

Trin 1: TB6612FNG Dual H -bro

TB6612FNG Dual H -bro
TB6612FNG Dual H -bro

TB6612FNG er en dobbelt H -bro, motorstyring, der kan drive en trinmotor eller to DC -hobbymotorer (ikke børsteløse motorer). Det er ideelt til at køre de små, billige gearmotorer, der er let tilgængelige. Breakout -kortet har et sted at montere et datterbræt, der har TB6612FNG. TB6612FNG -kortet, som jeg valgte at bruge, fås flere steder; Sparkfun (p/n ROB-14451, Mouser og Digikey sælger også Sparkfun-pladen), Pololu (p/n 713), EBay, Aliexpress og Gearbest. Priserne varierer fra omkring en dollar til fem dollars.

Hver DC -motordriver bruger tre GPIO -ben. To GPIO -ben bestemmer motorens tilstand; frem, bak, kyst og bremse. Den tredje GPIO -pin er PWM til at styre motorhastigheden. En syvende GPIO -pin driver STBY -stiften. Styresignalerne for TB6612FNG er fast tilsluttet ESP32 GPIO breakout pins. Hvilke GPIO -ben bruges, bestemmes af smagen af ESP32 Dev Kit, du bruger. De fastgjorte stifter blev omhyggeligt udvalgt, så de skulle flugte med GPIO PWM og Output pins på de fleste ESP32 Dev Kits.

Motorerne tilsluttes ved hjælp af to, to benede skrueklemmer, der er mærket Motor A og Motor B. En på hver side af breakout -kortet. Strøm til motorerne bringes enten ind med en to -polet skrueklemme eller et sæt hanhoveder i den ene ende af breakout -kortet, mærket Vin. Vin kan være enhver DC -spænding fra 6V til 12V. En 5V, 1A spændingsregulator omdanner Vin -spændingen til 5V for at drive Sonar -sensorerne.

DOIT Dev KIT fås i to størrelser, 30 ben (15 på en side) og 36 ben (18 på en side). Jeg har angivet forbindelserne til begge dev -kits herunder.

30 pin dev kit - 36 pin dev kit

AIN1 - 25 - 14 - retningskontrol til motor A

AIN2 - 26 - 12 - retningskontrol til motor A

PWMA - 27 - 13 - hastighedsregulering til motor A

STBY - 33 - 27 - stopper begge motorer

BIN1 - 16 - 15 - retningskontrol til motor B

BIN2 - 17 - 2 - retningskontrol til motor B

PWMB - 5 - 4 - hastighedsregulering til motor B

Trin 2: GPIO -pins

GPIO pins
GPIO pins

Brættet har to sæt med tyve benhoveder til GPIO -breakout. Hvert sæt GPIO -overskrifter indeholder tyve ben til 3,3V og tyve ben til Gnd. 3.3V -benene er placeret mellem GPIO -benene og Gnd -benene. Denne konfiguration reducerer muligheden for, at noget springer op, hvis det tilsluttes baglæns. Næsten alle ting, du vil slutte til en GPIO -pin, kræver enten en 3.3V- eller Gnd -forbindelse eller begge dele. Den tredobbelte rækkekonfiguration betyder, at du altid har en strøm og Gnd -pin til hver forbindelse.

Hvis du bruger et andet ESP32 dev -kit end DOIT Dev Kit, kan det have Vin, 3.3V og Gnd pins på andre steder end DOIT Dev Kit. Breakout -pladen har let skåret spor på bagsiden, der kan skæres for at isolere Vin-, 3.3V- og Gnd -stifterne fra de respektive busser. Du kan derefter bruge jumperwires til at forbinde Vin-, 3.3V- og Gnd -benene på dit ESP32 Dev Kit til de rigtige busser. 3,3V benene kan tilsluttes ved hjælp af standard to -pins kortslutningsstik. Til Gnd -stiftforbindelser lavede jeg et par jumpere ved hjælp af trebenede DuPont -skaller, to hunkrydsstifter og et kort stykke ledning. Efter at have presset hunstifterne til hver ende af tråden, indsatte jeg dem i endespalterne på den trebenede skal.

Hvis du nogensinde vil tilslutte de trances, du skærer igen, har hver enkelt et sæt gennemgående huller. Du kan enten lodde en U -formet jumper wire i hullerne eller tilføje en to -polet header og bruge et standard to -pin shorting -stik til at lave en aftagelig jumper.

Bemærk. 3.3V -regulatoren på ESP32 dev -kittet bruges til at levere 3.3V til ESP32 og alle eksterne enheder, som du tilslutter til 3.3V -bussen. Regulatoren har en grænse på 1A. Jo højere Vin -spænding og jo mere strøm du trækker, får regulatoren til at varme op. Husk dette, når du forsøger at drive enheder med høj strøm, f.eks. LED -strips eller servomotorer med 3,3V. Et par I2C -enheder som gyros, acceleratorer og ADC -konvertere burde ikke være et problem.

Trin 3: Vin

Vin er indgangsspændingen for motorerne og 5V -regulatoren. Vin kan være enhver spænding fra 5V til 12V. Hvis du bruger 5V til Vin, er udgangsspændingen på den indbyggede 5V -regulator ikke 5V. Dette skyldes, at 5V -regulatoren skal have en spænding højere end 5V for at regulere til 5V.

Vin bruges også som indgangsspænding til 3.3V regulatoren på ESP32 dev kit.

ESP dev kit referencedesignet har en diode til at isolere USB spændingen fra spændingen på Vin pin i dev kit. Dioden sikrer, at Vin-spændingen ikke forsøger at drive USB-spændingen, og at USB-til-seriel brochip på ESP32 dev-kittet kun drives af USB-spændingen. Det betyder, at du er sikker på at tilslutte en spændingskilde, der er højere end 5V, til Vin på breakout -kortet og bruge USB -forbindelsen på samme tid, uden frygt for at ødelægge noget. Spændingsregulatoren på ESP32 dev -kittet er i samme familie som spændingsregulatoren, der bruges på breakout -kortet. Det betyder, at de kan håndtere det samme område af indgangsspændinger.

Tilslut batteripakken, der driver motorerne, til Vin -terminalerne, og den vil også drive ESP32 og alle eksterne enheder, du har tilsluttet.

Trin 4: HC-SR04 ekkolodssensorer

HC-SR04 ekkolodssensorer
HC-SR04 ekkolodssensorer
HC-SR04 ekkolodssensorer
HC-SR04 ekkolodssensorer

Der er to firestifter til tilslutning af den populære HC-SR04 ekkolodssensor. Overskrifterne er placeret på modsatte sider af udbrudskortet nær motorens skrueklemmer. Overskrifterne er konfigureret til en-til-en forbindelse med HC-SR04.

HC-SR04 er en 5V-enhed. Det drives af 5V og dets output (ekko) signal er på 5V niveauer. ESP32 har 3,3V GPIO og er ikke 5V tolerant. Derfor har du brug for en form for spændingsniveauomformer for at bringe 5V-output fra HC-SR04 ned til 3,3V-niveauet på ESP32. Breakout-kortet har en simpel spændingsdeler til hvert af HC-SR04 ekkosignalerne til at udføre niveaukonvertering. Der kræves ingen niveaukonvertering for en ESP32 GPIO-pin til at drive Trig-signalet fra HC-SR04.

Fire-polet header til HC-SR04 giver 5V- og Gnd-forbindelser til sensoren. 5V leveres af 5V regulatoren på breakout boardet.

Selvom der er tilvejebragt en firebolig header til tilslutning til HC-SRO4, leveres der en to-pins header til tilslutning af ekko- og Trig-signaler fra HC-SR04 til ESP32. På denne måde kan du vælge, hvilke GPIO -ben du vil bruge. Brug hun-til-hun jumperkabler til at oprette forbindelserne. T er Trig -indgangen og E er det spændingsniveau, der konverteres Echo -udgangssignal.

Det skal være muligt at bruge HC-SR04 header til at tilslutte en anden 5V sensor. Tilslut udgangen fra 5V -sensoren til Echo -indgangen, og brug spændingsdeleren til at konvertere den til et 3.3V -signal. Spændingsdeleren håndterer signaler, der har langsomme overgange. Ved højhastighedsovergange skal du bruge en aktiv spændingsniveauomformer. Hvis du tilslutter et analogt signal til spændingsdeleren og derefter til en analog indgang på ESP32, skal du tage højde for, at spændingssvinget vil være nul til 3,3V, ikke nul til 5V, når du beregner volt-per-count.

For eksempel kan du koble en Vishay TSOP34838 IR-sensor til 5V-, Gnd- og Echo-benene på HC-SR04-headeren (Echo er forbundet til sensorens output-pin). Så skulle du være i stand til at modtage IR -kommandoer fra enhver IR -fjernbetjening, der bruger en 38KHz -bærer.

Trin 5: Tri-Color LED

Tri-Color LED
Tri-Color LED

Den trefarvede LED er en 5 mm, fælles anode, gennemgående hul, RGB LED. Strømbegrænsende modstande er tilvejebragt, og den fælles anode er forbundet til 3.3V -bussen. En tre -benet header mærket som RGB leveres til brug af LED'en. Et lavt niveau signal på en af RGB -stifterne vil lyse LED'en med den farve. Kørsel af flere RGB -indgange på samme tid vil resultere i, at flere lysdioder lyser op med den resulterende farveblanding. Du kan bruge hun-til-hun-jumpere til at forbinde RGB-headerstifterne til de valgte GPIO-ben. Hvis du leder LED'en til en GPIO -pin, der har PWM -funktioner, kan du variere lysstyrken på LED'en ved at variere PWM -lavtiden. Jeg kan godt lide at bruge lysdioderne til at hjælpe mig med at fejlsøge koden, jeg arbejder på.

Trin 6: I2C Breakout

Breakout -kortet har fire rækker header pins til I2C interface. To af rækkerne er fire stifter hver og er 3.3V og Gnd. De to andre rækker er hver på fem ben og er til SDA og SCL. Den ekstra pin i hver af disse rækker er, så du kan bruge to hun-til-hun-jumperkabler til at forbinde rækkerne til de valgte GPIO-ben. ESP32 kan have SDA- og SCL -signaler på flere af GPIO -benene. Op til fire 3,3V kan I2C -enheder tilsluttes og strømforsynes uden at anvende daisy chaining -kabler. Der er ingen pullup -modstande på SDA- og SCL -signaler på breakout -kortet. Pullup -modstandene skal være på de enheder, du tilslutter I2C -bussen.

Bemærk: For dem, der ikke er bekendt med I2C, kræves pullup-modstande på grund af, at SDA- og SCL-benene er åbne afløb, tre-tilstands, tovejs-ben. Værdien af pullup -modstandene påvirker svinghastigheden og ringen på bussen.

Trin 7: Materialekartotek

Alle modstande er SMT 1206.

Alle kondensatorer er SMT, sag A, EIA 3216.

Alle overskrifter og stikdåser har en afstand på 0,1 tommer (2,54 mm).

6 - tyve pin hanhoveder

6 - fembenede hanhoveder

4 - firbenede hanhoveder

1 - trebenet hanhoved

2 - to -pins hanhoveder

2 - tyvebenede hunstikdåser

1 - TB6612FNG board, leveres med to, otte -pin hanhoveder

3 - 10uf Tantal kondensatorer

1 - 10K modstand

2 - 2.2K modstande

5 - 1K modstande

1 - AMS1117, 5V

1 - 5 mm, fælles anode RGB LED

3 - 3 mm afstand, to ben, skrueterminaler

Valgfri

3 - to -pins hanhoveder - til tilslutning af udskårne Vin, 3.3V og Gnd -spor

Trin 8: Indpakning af det hele

Dette er et meget alsidigt ESP32 breakout board med de mest almindelige funktioner, der kræves af simple robotter indbygget i breakout boardet.

Breakout boardet er ikke begrænset til ESP32 dev kits. Ethvert mikrokontrolkort, der har to rækker på op til tyve ben på en tommer afstand, kan bruges. Et ESP8266 eller et LPC1768 bord ville passe. Du kan samle brættet uden datterkortet TB6612FNG og bruge til kun at bryde GPIO'en. Tavlen giver dig masser af muligheder for, hvordan du bruger den.

Hvis du har nogle af disse tavler, skal du ikke fjerne navnet 'Macedon Engineering' fra tavlerne. Du kan frit bruge disse tavler til enhver ikke-kommerciel anvendelse. Hvis du laver og bruger tavlen, ville jeg sætte pris på et råb om, hvad du brugte det til. Jeg håber, at du finder tavlen nyttig.

Anbefalede: