Índice:

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

Vídeo: ESP32 Dual H Bridge Breakout Board: 8 etapas

Vídeo: ESP32 Dual H Bridge Breakout Board: 8 etapas
Vídeo: Driving DC Motors with Microcontrollers 2024, Novembro
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

Este projeto é para uma placa Breakout ESP32 que foi projetada para ser o cérebro do seu próximo robô. Os recursos desta placa são;

  • Pode acomodar qualquer kit de desenvolvimento ESP32 que tenha duas fileiras de até vinte pinos em centros de uma polegada.
  • Um local para montar uma placa filha controladora de motor DC de ponte H dupla TB6612FNG.
  • Um bloco de terminais de dois parafusos para cada conexão do motor.
  • Um bloco de terminais de dois parafusos e um conjunto de cinco pinos principais para Vin & Gnd
  • Duas filas de vinte pinos de breakout GPIO.
  • Cabeçalhos para dois sensores de sonar HC-SR04, com divisores de tensão na saída Echo.
  • Um cabeçalho para conectar a um ânodo comum de três cores, LED com resistores de limitação.
  • Regulador de tensão 5V e 1A integrado com cinco pinos principais para 5V e Gnd.
  • Quatro conjuntos de cabeçalhos para conexões I2C com 3,3 V e Gnd para cada conexão.
  • Todos os componentes são montados em um lado da placa de circuito.

O tamanho físico da placa é 90 mm x 56 mm, frente e verso. Isso o coloca dentro dos limites de tamanho de 100 mm x 100 mm para a maioria dos protótipos de baixo custo dos fabricantes de placas.

Todos os arquivos necessários para fazer uma dessas placas podem ser encontrados no github aqui.

A placa foi projetada em torno do DOIT ESP32 DEVKIT V1, que possui duas fileiras de dezoito pinos cada. Traços facilmente cortados na parte traseira da placa permitem que você separe os pinos 5V, Gnd e 3,3V dedicados de seus respectivos barramentos. Em seguida, você pode usar os pinos nesses locais como GPIO e, usando jumpers, conectar os barramentos 5V, Gnd e 3,3V aos pinos apropriados no kit de desenvolvimento ESP32 que você está usando.

Duas filas de vinte orifícios são fornecidas para a montagem do kit de desenvolvimento ESP. Eu recomendo que você compre réguas de soquete fêmea e as solde nos orifícios. Desta forma, você pode remover o kit de desenvolvimento ESP32 e substituí-lo por outro a qualquer momento. Além disso, o uso das réguas de soquete fornece bastante espaço para as peças montadas sob o kit de desenvolvimento. Eu gosto de comprar quarenta cabeçalhos de pinos e tiras de soquete e depois cortá-los no tamanho certo. Isso ajuda a reduzir custos. Você não pode cortar as tiras de encaixe feminino entre dois encaixes, você deve 'queimar' um encaixe para cortá-las. Em outras palavras, uma tira de soquete fêmea de quarenta pinos não pode ser cortada em duas tiras de vinte pinos. Uma tira de soquete fêmea de quarenta pinos pode ser cortada em uma tira de vinte pinos e uma tira de dezenove pinos.

Etapa 1: ponte TB6612FNG Dual H

Ponte TB6612FNG Dual H
Ponte TB6612FNG Dual H

O TB6612FNG é uma ponte H dupla, controlador de motor que pode acionar um motor de passo ou dois motores CC hobby (não motores sem escova). É ideal para acionar os motoredutores pequenos e baratos que estão prontamente disponíveis. A placa de breakout tem um local para montar uma placa filha que contém o TB6612FNG. A placa TB6612FNG que escolhi usar está disponível em vários lugares; Sparkfun (n / p ROB-14451, Mouser e Digikey também vendem a placa Sparkfun), Pololu (n / p 713), EBay, Aliexpress e Gearbest. Os preços variam de cerca de um dólar a cinco dólares.

Cada driver de motor DC usa três pinos GPIO. Dois pinos GPIO determinam o estado do motor; avanço, ré, desaceleração e freio. O terceiro pino GPIO é PWM para controlar a velocidade do motor. Um sétimo pino GPIO aciona o pino STBY. Os sinais de controle para o TB6612FNG são conectados aos pinos de breakout ESP32 GPIO. Os pinos GPIO usados são determinados pelo tipo de ESP32 Dev Kit que você usa. Os pinos conectados foram cuidadosamente selecionados para que se alinhem com os pinos GPIO PWM e de saída na maioria dos ESP32 Dev Kits.

Os motores são conectados usando dois blocos de terminais de parafuso de pino, rotulados como Motor A e Motor B. Um em cada lado da placa de breakout. A energia para os motores é fornecida por um bloco de terminais de parafuso de dois pinos ou um conjunto de conectores machos em uma extremidade da placa de breakout, identificados como Vin. Vin pode ser qualquer tensão DC de 6V a 12V. Um regulador de tensão 5V, 1A converte a tensão Vin em 5V para alimentar os sensores do sonar.

O DOIT Dev KIT vem em dois tamanhos, 30 pinos (15 em um lado) e 36 pinos (18 em um lado). Listei as conexões para os dois kits de desenvolvimento abaixo.

Kit de desenvolvimento de 30 pinos - kit de desenvolvimento de 36 pinos

AIN1 - 25 - 14 - controle de direção para motor A

AIN2 - 26 - 12 - controle de direção para motor A

PWMA - 27 - 13 - controle de velocidade para motor A

STBY - 33 - 27 - para ambos os motores

BIN1 - 16 - 15 - controle de direção para motor B

BIN2 - 17 - controle de 2 direções para motor B

PWMB - 5 - 4 - controle de velocidade para motor B

Etapa 2: Pinos GPIO

Pinos GPIO
Pinos GPIO

A placa tem dois conjuntos de vinte cabeçalhos de pinos para o GPIO breakout. Cada conjunto de cabeçalhos GPIO inclui vinte pinos para 3,3 V e vinte pinos para Gnd. Os pinos de 3,3 V estão localizados entre os pinos GPIO e os pinos Gnd. Esta configuração reduz a possibilidade de algo explodir se for conectado ao contrário. Quase tudo que você deseja conectar a um pino GPIO requer uma conexão de 3,3 V ou Gnd ou ambos. A configuração de linha tripla significa que você sempre tem um pino de alimentação e Gnd para cada conexão.

Se você usar um kit de desenvolvimento ESP32 diferente do DOIT Dev Kit, ele pode ter pinos Vin, 3.3V e Gnd em locais diferentes do DOIT Dev Kit. A placa de breakout cortou facilmente traços na parte traseira que podem ser cortados para isolar os pinos Vin, 3.3V e Gnd dos respectivos barramentos. Você pode então usar fios de jumper para conectar os pinos Vin, 3,3 V e Gnd do seu ESP32 Dev Kit aos barramentos adequados. Os pinos de 3,3 V podem ser conectados usando plugues de curto de dois pinos padrão. Para conexões de pino Gnd, criei alguns jumpers usando conchas DuPont de três pinos, dois pinos de crimpagem fêmea e um pedaço curto de fio. Depois de prender os pinos fêmeas em cada extremidade do fio, inseri-os nas ranhuras da extremidade da concha de três pinos.

Se você quiser reconectar os transes que cortou, cada um tem um conjunto de orifícios de passagem. Você pode soldar um fio de jumper em forma de U nos orifícios ou adicionar um conector de dois pinos e usar um plugue de curto de dois pinos padrão para fazer um jumper removível.

Uma palavra de cautela. O regulador de 3,3 V no kit de desenvolvimento do ESP32 é usado para fornecer 3,3 V para o ESP32 e quaisquer periféricos que você conectar ao barramento de 3,3 V. O regulador tem um limite de 1A. Quanto mais alta a voltagem Vin e mais corrente você consome, fará com que o regulador aqueça. Lembre-se disso ao tentar acionar dispositivos de alta corrente, como fitas de LED ou servo motores com 3,3V. Alguns dispositivos I2C como giroscópios, aceleradores e conversores ADC não devem ser um problema.

Etapa 3: Vin

Vin é a tensão de entrada para os motores e o regulador de 5V. Vin pode ser qualquer voltagem de 5V a 12V. Se você estiver usando 5 V para Vin, a tensão de saída do regulador de 5 V a bordo não será 5 V. Isso ocorre porque o regulador de 5 V deve ter uma tensão superior a 5 V para regular para 5 V.

O Vin também é usado como a tensão de entrada para o regulador de 3,3 V no kit de desenvolvimento ESP32.

O design de referência do kit de desenvolvimento ESP tem um diodo para isolar a voltagem USB da voltagem no pino Vin do kit dev. O diodo garante que a voltagem Vin não tente conduzir a voltagem USB e que o chip ponte USB para Serial no kit de desenvolvimento ESP32 seja alimentado apenas pela voltagem USB. Isso significa que você está seguro para conectar uma fonte de tensão superior a 5 V ao Vin da placa de breakout e usar a conexão USB ao mesmo tempo, sem medo de destruir nada. O regulador de tensão no kit ESP32 dev é da mesma família que o regulador de tensão usado na placa de breakout. Isso significa que eles podem lidar com a mesma faixa de tensões de entrada.

Conecte a bateria que aciona os motores aos terminais Vin e ela também alimentará o ESP32 e quaisquer periféricos que você conectou.

Etapa 4: Sensores de sonar HC-SR04

Sensores sonar HC-SR04
Sensores sonar HC-SR04
Sensores sonar HC-SR04
Sensores sonar HC-SR04

Dois conectores de quatro pinos são fornecidos para conexão do popular sensor HC-SR04 Sonar. Os cabeçalhos estão localizados em lados opostos da placa de breakout, perto dos blocos de terminais dos parafusos do motor. Os cabeçalhos são configurados para conexão um a um com o HC-SR04.

O HC-SR04 é um dispositivo de 5V. Ele é alimentado por 5V e seu sinal de saída (Eco) está em níveis de 5V. O ESP32 tem 3,3 V GPIO e não é tolerante a 5 V. Portanto, você precisa de algum tipo de conversor de nível de tensão para reduzir a saída de 5 V do HC-SR04 para o nível de 3,3 V do ESP32. A placa de breakout tem um divisor de tensão simples para cada um dos sinais de eco HC-SR04 para realizar a conversão de nível. Nenhuma conversão de nível é necessária para que um pino ESP32 GPIO conduza o sinal Trig do HC-SR04.

O conector de quatro pinos para o HC-SR04 fornece as conexões 5V e Gnd para o sensor. Os 5 V são fornecidos pelo regulador de 5 V na placa de breakout.

Enquanto um conector de quatro pinos é fornecido para conectar ao HC-SRO4, um conector de dois pinos é fornecido para conectar os sinais Echo e Trig do HC-SR04 ao ESP32. Dessa forma, você pode escolher quais pinos GPIO usar. Use fios de jumper fêmea para fêmea para fazer as conexões. T é a entrada Trig e E é o sinal de saída Echo convertido do nível de tensão.

Deve ser possível usar o cabeçalho HC-SR04 para conectar algum outro sensor de 5V. Conecte a saída do sensor de 5 V à entrada do Echo e use o divisor de tensão para convertê-lo em um sinal de 3,3 V. O divisor de tensão tratará os sinais que têm transições lentas. Para transições de alta velocidade, você deve usar um conversor de nível de tensão ativo. Se você conectar um sinal analógico ao divisor de tensão e depois a uma entrada analógica no ESP32, deve levar em consideração que a oscilação de tensão será de zero a 3,3 V, e não de zero a 5 V ao calcular os volts por contagem.

Por exemplo, você pode conectar um sensor Vishay TSOP34838 IR aos pinos 5V, Gnd e Echo do cabeçalho HC-SR04 (o Echo é conectado ao pino de saída do sensor). Então, você deve ser capaz de receber comandos IR de qualquer controle remoto IR que use uma portadora de 38KHz.

Etapa 5: LED tricolor

LED tricolor
LED tricolor

O LED tricolor é um LED RGB de 5 mm, ânodo comum, através do orifício. Resistores limitadores de corrente são fornecidos e o ânodo comum é conectado ao barramento de 3,3V. Um cabeçalho de três pinos rotulado como RGB é fornecido para usar o LED. Um sinal de baixo nível em um dos pinos RGB acenderá o LED com essa cor. Conduzir várias entradas RGB ao mesmo tempo resultará em vários LEDs acendendo com a mistura de cores resultante. Você pode usar jumpers fêmea para fêmea para conectar os pinos do cabeçalho RGB aos pinos GPIO de sua escolha. Se você conectar o LED a um pino GPIO que tenha recursos de PWM, poderá variar o brilho do LED variando o tempo baixo de PWM. Gosto de usar os LEDs para me ajudar a depurar o código no qual estou trabalhando.

Etapa 6: Breakout I2C

A placa de breakout tem quatro filas de pinos principais para a interface I2C. Duas das linhas têm quatro pinos cada e são 3,3V e Gnd. As outras duas linhas são cinco pinos cada e são para SDA e SCL. O pino extra em cada uma dessas fileiras é para que você possa usar dois cabos jumper fêmea para fêmea para conectar as fileiras aos pinos GPIO de sua escolha. O ESP32 pode ter os sinais SDA e SCL em vários dos pinos GPIO. Até quatro dispositivos I2C de 3,3 V podem ser conectados e alimentados sem recorrer a cabos em cadeia. Não há resistores pullup nos sinais SDA e SCL na placa breakout. Os resistores pullup devem estar nos dispositivos que você conecta ao barramento I2C.

Nota: Para aqueles que não estão familiarizados com I2C, resistores pullup são necessários devido aos pinos SDA e SCL serem pinos de dreno aberto, tri-state e bidirecionais. O valor dos resistores pullup afeta a taxa de variação e o toque no barramento.

Etapa 7: Lista de materiais

Todos os resistores são SMT 1206.

Todos os capacitores são SMT, case A, EIA 3216.

Todos os cabeçalhos e faixas de soquete têm passo de 0,1 pol. (2,54 mm).

6 - cabeçalhos masculinos de vinte pinos

6 - cabeçalhos macho de cinco pinos

4 - cabeçalhos macho de quatro pinos

1 - cabeçalho macho de três pinos

2 - cabeçalhos macho de dois pinos

2 - tiras de soquete fêmea de vinte pinos

1 - placa TB6612FNG, vem com dois conectores machos de oito pinos

3 - 10uf capacitores de tântalo

1 - resistor de 10K

2 - resistores de 2,2K

5 - resistores de 1K

1 - AMS1117, 5V

1 - 5 mm, ânodo comum LED RGB

3 - passo de 3 mm, dois pinos, terminais de parafuso

Opcional

3 - cabeçalhos macho de dois pinos - para reconectar os traços Vin de corte, 3,3 V e Gnd

Etapa 8: Resumindo

Esta é uma placa de breakout ESP32 muito versátil com os recursos mais comuns exigidos por robôs simples integrados à placa de breakout.

O breakout board não se limita aos kits de desenvolvimento ESP32. Qualquer placa de microcontrolador que tenha duas filas de até vinte pinos em um espaçamento de uma polegada pode ser usada. Uma placa ESP8266 ou LPC1768 seria adequada. Você pode montar a placa sem a placa filha TB6612FNG e usar para separar apenas o GPIO. O tabuleiro oferece muitas opções de como usá-lo.

Se você mandou fazer algumas dessas placas, não remova o nome 'Macedon Engineering' delas. Você pode usar livremente essas placas para qualquer aplicação não comercial. Se você fizer e usar a placa, gostaria de divulgar para que você a usou. Espero que você ache o quadro útil.

Recomendado: