Оглавление:

ESP32 Dual H Bridge Breakout Board: 8 шагов
ESP32 Dual H Bridge Breakout Board: 8 шагов

Видео: ESP32 Dual H Bridge Breakout Board: 8 шагов

Видео: ESP32 Dual H Bridge Breakout Board: 8 шагов
Видео: Driving DC Motors with Microcontrollers 2024, Июль
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
Коммутационная плата ESP32 Dual H Bridge

Этот проект предназначен для платы ESP32 Breakout, которая была разработана, чтобы стать мозгом вашего следующего робота. Особенности этой доски:

  • Может вместить любой комплект разработчика ESP32, который имеет два ряда до двадцати контактов с центрами в один дюйм.
  • Место для установки дочерней платы контроллера двигателя постоянного тока TB6612FNG с двойным мостом H.
  • Клеммная колодка с двумя винтами для каждого подключения двигателя.
  • Клеммная колодка с двумя винтами и набор из пяти выводов для Vin и Gnd.
  • Два ряда по двадцать контактов GPIO.
  • Разъемы для двух датчиков сонара HC-SR04 с делителями напряжения на выходе Echo.
  • Разъем для подключения трехцветного светодиода с общим анодом и ограничивающими резисторами.
  • Встроенный регулятор напряжения 5V, 1A с пятью контактами для 5V и Gnd.
  • Четыре набора заголовков для соединений I2C с 3,3 В и заземлением для каждого соединения.
  • Все компоненты монтируются на одной стороне печатной платы.

Физический размер платы составляет 90 мм x 56 мм, двусторонняя. Таким образом, размер недорогих прототипов большинства производителей плат составляет 100 x 100 мм.

Все файлы, необходимые для создания одной из этих плат, можно найти на github здесь.

Плата была разработана на основе DOIT ESP32 DEVKIT V1, который имеет два ряда по 18 контактов в каждом. Легко вырезанные дорожки на задней стороне платы позволяют отделить выделенные выводы 5V, Gnd и 3.3V от соответствующих шин. Затем вы можете использовать контакты в этих местах как GPIO и с помощью перемычек подключить шины 5V, Gnd и 3,3V к соответствующим контактам на комплекте разработчика ESP32, который вы используете.

Для установки комплекта разработчика ESP предусмотрено два ряда по двадцать отверстий. Я рекомендую вам купить планки розеток и впаивать их в отверстия. Таким образом, вы можете удалить комплект разработчика ESP32 и заменить его другим в любое время. Кроме того, использование планок розеток обеспечивает достаточный зазор для деталей, установленных под комплектом разработчика. Я люблю покупать 40-контактные колодки и планки розеток, а затем обрезать их до нужного размера. Это помогает снизить затраты. Вы не можете разрезать планки гнездовых розеток между двумя розетками, вы должны «сжечь» розетку, чтобы разрезать их. Другими словами, 40-контактная розетка с гнездовой розеткой не может быть разрезана на две 20-контактные. Полоса розеток с 40-контактным гнездом может быть разрезана на полоску с 20-ю штырями и полоску с 19-ю штырями.

Шаг 1: двойной H-мост TB6612FNG

TB6612FNG Двойной H-мост
TB6612FNG Двойной H-мост

TB6612FNG - это контроллер двигателя с двойным Н-мостом, который может управлять одним шаговым двигателем или двумя любительскими двигателями постоянного тока (не бесщеточные двигатели). Он идеально подходит для привода небольших недорогих мотор-редукторов, которые легко доступны. На коммутационной плате есть место для установки дочерней платы с TB6612FNG. Плата TB6612FNG, которую я решил использовать, доступна в нескольких местах; Sparkfun (каталожный номер ROB-14451, Mouser и Digikey также продают плату Sparkfun), Pololu (каталожный номер 713), EBay, Aliexpress и Gearbest. Цены варьируются от одного доллара до пяти долларов.

Каждый драйвер двигателя постоянного тока использует три контакта GPIO. Два контакта GPIO определяют состояние двигателя; вперед, назад, накатом и тормоз. Третий вывод GPIO - это ШИМ для управления скоростью двигателя. Седьмой вывод GPIO управляет выводом STBY. Управляющие сигналы TB6612FNG жестко подключаются к контактным контактам ESP32 GPIO. Какие выводы GPIO используются, зависит от типа используемого вами ESP32 Dev Kit. Штыри с жесткой разводкой были тщательно отобраны, чтобы они совпадали с контактами GPIO PWM и Output на большинстве комплектов разработчика ESP32.

Двигатели подключаются с помощью двух двухконтактных клеммных колодок, обозначенных как «Двигатель А» и «Двигатель В.». По одной с каждой стороны коммутационной платы. Электропитание двигателей подается либо с помощью двухконтактной клеммной колодки с винтовыми зажимами, либо с помощью набора штекерных разъемов на одном конце коммутационной платы, обозначенных Vin. Vin может быть любым напряжением постоянного тока от 6 В до 12 В. Регулятор напряжения 5 В, 1 А преобразует напряжение Vin в 5 В для питания датчиков сонара.

Набор DOIT Dev KIT бывает двух размеров: 30 контактов (15 сбоку) и 36 контактов (18 сбоку). Я перечислил соединения для обоих комплектов разработчика ниже.

30-контактный комплект разработчика - 36-контактный комплект разработчика

AIN1 - 25 - 14 - управление направлением двигателя А

AIN2 - 26 - 12 - управление направлением двигателя А

PWMA - 27-13 - регулировка скорости двигателя A

STBY - 33 - 27 - останавливает оба мотора

BIN1 - 16 - 15 - управление направлением двигателя B

BIN2-17-2 - управление направлением двигателя B

PWMB - 5 - 4 - регулировка скорости двигателя B

Шаг 2: контакты GPIO

Контакты GPIO
Контакты GPIO

На плате есть два набора по 20 контактов для разъема GPIO. Каждый набор заголовков GPIO включает двадцать контактов для 3.3 В и двадцать контактов для Gnd. Контакты 3.3V расположены между контактами GPIO и Gnd. Эта конфигурация снижает вероятность того, что что-то взорвется, если оно подключено задним ходом. Практически все, что вы хотите подключить к контакту GPIO, требует подключения либо 3.3 В, либо заземления, либо обоих. Трехрядная конфигурация означает, что у вас всегда есть вывод питания и Gnd для каждого соединения.

Если вы используете комплект разработчика ESP32, отличный от комплекта разработчика DOIT, он может иметь контакты Vin, 3.3V и Gnd в местах, отличных от комплекта разработчика DOIT. На задней стороне коммутационной платы есть легко вырезанные дорожки, которые можно вырезать, чтобы изолировать контакты Vin, 3.3V и Gnd от соответствующих шин. Затем вы можете использовать перемычки для подключения контактов Vin, 3.3V и Gnd вашего ESP32 Dev Kit к нужным шинам. Контакты 3,3 В могут быть подключены с помощью стандартных двухконтактных перемычек. Для подключения контактов Gnd я сделал несколько перемычек, используя трехконтактные оболочки DuPont, два обжимных контакта с внутренней резьбой и короткий кусок провода. После обжима гнездовых контактов на каждом конце провода я вставил их в концевые пазы трехштырькового корпуса.

Если вы когда-нибудь захотите повторно соединить вырубленные вами трансы, в каждом из них есть набор сквозных отверстий. Вы можете либо припаять U-образную перемычку в отверстия, либо добавить двухконтактный разъем и использовать стандартную двухконтактную перемычку, чтобы сделать съемную перемычку.

Небольшое предостережение. Регулятор 3,3 В в комплекте разработчика ESP32 используется для обеспечения 3,3 В для ESP32 и любых периферийных устройств, которые вы подключаете к шине 3,3 В. Регулятор имеет предел в 1 А. Чем выше напряжение Vin и больший потребляемый ток, тем выше нагрев регулятора. Помните об этом, пытаясь управлять сильноточными устройствами, такими как светодиодные ленты или серводвигатели, с напряжением 3,3 В. Некоторые устройства I2C, такие как гироскопы, ускорители и преобразователи АЦП, не должны быть проблемой.

Шаг 3: Vin

Vin - входное напряжение для двигателей и регулятора 5 В. Vin может быть любым напряжением от 5В до 12В. Если вы используете 5V для Vin, выходное напряжение встроенного регулятора 5V не будет 5V. Это связано с тем, что регулятор 5V должен иметь напряжение выше 5V, чтобы регулировать до 5V.

Vin также используется в качестве входного напряжения для регулятора 3,3 В на комплекте разработчика ESP32.

Эталонный дизайн комплекта разработчика ESP имеет диод для изоляции напряжения USB от напряжения на выводе Vin комплекта разработчика. Диод гарантирует, что напряжение Vin не пытается управлять напряжением USB, и что микросхема моста USB-to-Serial в наборе разработчика ESP32 питается только от напряжения USB. Это означает, что вы можете безопасно подключить источник напряжения выше 5 В к Vin коммутационной платы и одновременно использовать USB-соединение, не опасаясь что-либо разрушить. Регулятор напряжения в наборе разработчика ESP32 относится к тому же семейству, что и регулятор напряжения, используемый на коммутационной плате. Это означает, что они могут работать с одним и тем же диапазоном входных напряжений.

Подключите аккумуляторную батарею, которая приводит в действие двигатели, к клеммам Vin, и она также будет обеспечивать питание ESP32 и любых подключенных вами периферийных устройств.

Шаг 4: датчики сонара HC-SR04

Датчики сонара HC-SR04
Датчики сонара HC-SR04
Датчики сонара HC-SR04
Датчики сонара HC-SR04

Два четырехконтактных разъема предназначены для подключения популярного датчика сонара HC-SR04. Разъемы расположены на противоположных сторонах коммутационной платы, рядом с клеммными колодками двигателя. Заголовки настроены на однозначное соединение с HC-SR04.

HC-SR04 - это устройство на 5 В. Он питается от 5 В, а его выходной сигнал (эхо) находится на уровне 5 В. ESP32 имеет 3,3 В GPIO и не поддерживает 5 В. Поэтому вам понадобится какой-то преобразователь уровня напряжения, чтобы снизить выходное напряжение 5 В на HC-SR04 до уровня 3,3 В на ESP32. На коммутационной плате есть простой делитель напряжения для каждого из сигналов эха HC-SR04 для преобразования уровня. Преобразование уровня не требуется для вывода ESP32 GPIO для управления сигналом запуска HC-SR04.

Четырехконтактный разъем для HC-SR04 обеспечивает подключения 5V и Gnd для датчика. 5 В обеспечивается регулятором 5 В на коммутационной плате.

В то время как четырехконтактный разъем предназначен для подключения к HC-SRO4, двухконтактный разъем предназначен для подключения сигналов Echo и Trig от HC-SR04 к ESP32. Таким образом, вы можете выбрать, какие выводы GPIO использовать. Для подключения используйте перемычки «мама-мама». T - это триггерный вход, а E - выходной сигнал эхо с преобразованием уровня напряжения.

Должна быть возможность использовать разъем HC-SR04 для подключения какого-либо другого датчика 5 В. Подключите выход датчика 5 В к входу Echo и используйте делитель напряжения, чтобы преобразовать его в сигнал 3,3 В. Делитель напряжения будет обрабатывать сигналы с медленными переходами. Для высокоскоростных переходов следует использовать активный преобразователь уровня напряжения. Если вы подключаете аналоговый сигнал к делителю напряжения, а затем к аналоговому входу ESP32, вы должны учитывать, что при расчете вольт на счетчик размах напряжения будет от нуля до 3,3 В, а не от нуля до 5 В.

Например, вы можете подключить ИК-датчик Vishay TSOP34838 к контактам 5V, Gnd и Echo заголовка HC-SR04 (Echo подключается к выходному контакту датчика). Тогда вы сможете получать ИК-команды от любого ИК-пульта, использующего несущую частоту 38 кГц.

Шаг 5: трехцветный светодиод

Трехцветный светодиод
Трехцветный светодиод

Трехцветный светодиод представляет собой 5-миллиметровый светодиод RGB со сквозным отверстием и общим анодом. Предусмотрены токоограничивающие резисторы, а общий анод подключен к шине 3,3 В. Для использования светодиода предусмотрен трехконтактный разъем с маркировкой RGB. При низком уровне сигнала на одном из выводов RGB загорится светодиод этого цвета. Одновременное управление несколькими входами RGB приведет к тому, что несколько светодиодов загорятся с результирующим цветовым сочетанием. Вы можете использовать перемычки «мама-мама» для подключения контактов заголовка RGB к контактам GPIO по вашему выбору. Если вы подключаете светодиод к контакту GPIO, который имеет возможности ШИМ, вы можете изменять яркость светодиода, изменяя время низкого уровня ШИМ. Мне нравится использовать светодиоды, чтобы помочь мне отладить код, над которым я работаю.

Шаг 6: прорыв I2C

На коммутационной плате имеется четыре ряда выводов для интерфейса I2C. Два ряда по четыре контакта в каждом, 3,3 В и Gnd. Два других ряда по пять контактов в каждом и предназначены для SDA и SCL. Дополнительный контакт в каждом из этих рядов предназначен для того, чтобы вы могли использовать два соединительных кабеля «мама-гнездо» для подключения рядов к контактам GPIO по вашему выбору. ESP32 может иметь сигналы SDA и SCL на нескольких выводах GPIO. Можно подключить и запитать до четырех устройств I2C на 3,3 В, не прибегая к шлейфовым кабелям. На коммутационной плате нет подтягивающих резисторов для сигналов SDA и SCL. Подтягивающие резисторы должны быть на устройствах, которые вы подключаете к шине I2C.

Примечание. Для тех, кто не знаком с I2C, требуются подтягивающие резисторы, поскольку выводы SDA и SCL имеют открытый сток, трехпозиционные, двунаправленные выводы. Значение подтягивающих резисторов влияет на скорость нарастания напряжения и количество звонков на шине.

Шаг 7: Спецификация материалов

Все резисторы SMT 1206.

Все конденсаторы SMT, корпус A, EIA 3216.

Все разъемы и планки розеток имеют шаг 0,1 дюйма (2,54 мм).

6 - двадцатиконтактные штекерные разъемы

6 - пятиконтактные штекерные разъемы

4 - четырехконтактные штекерные разъемы

1 - трехконтактный штекер

2 - двухконтактные штекерные разъемы

2 - 20-контактные планки с розетками

1 - плата TB6612FNG с двумя восьмиконтактными штекерными разъемами

3-10 мкФ танталовые конденсаторы

1 - резистор 10 кОм

2 - резисторы 2,2 кОм

5 - резисторы 1 кОм

1 - AMS1117, 5В

1–5 мм, светодиод RGB с общим анодом

3 - шаг 3 мм, два контакта, винтовые клеммы

По желанию

3 - два штыревых штекера - для повторного подключения дорожек среза Vin, 3.3V и Gnd

Шаг 8: Завершение всего

Это очень универсальная коммутационная плата ESP32 с наиболее общими функциями, необходимыми для простых роботов, встроенных в коммутационную плату.

Коммутационная плата не ограничивается наборами для разработчиков ESP32. Может использоваться любая плата микроконтроллера с двумя рядами до двадцати выводов на расстоянии в один дюйм. Подойдет плата ESP8266 или LPC1768. Вы можете собрать плату без дочерней платы TB6612FNG и использовать для подключения только GPIO. Доска дает вам множество вариантов того, как ее использовать.

Если у вас есть некоторые из этих плат, не удаляйте с них название «Macedon Engineering». Вы можете свободно использовать эти доски для любых некоммерческих приложений. Если вы делаете и используете доску, я был бы признателен за то, для чего вы ее использовали. Надеюсь, вы найдете эту доску полезной.

Рекомендуемые: