====== H-мост (Troyka-модуль): инструкция, схемы и примеры использования ======
[[amp>product/troyka-h-bridge?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|H-мост (Troyka-модуль)]] служит для управления скоростью и направлением вращения [[amp>collection/dc-motors?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki| коллекторных моторов]] в компактных проектах.
{{ :продукты:troyka-h-bridge:troyka-h-bridge.1.jpg?nolink |}}
===== Видеообзор ======
{{youtube>_T6Gw4atiVk?large}}
===== Принцип работы H-моста =====
Термин «H-мост» появился благодаря графическому изображению этой схемы, напоминающему букву «Н». H-мост состоит из 4 ключей.
{{ :продукты:troyka-h-bridge:troyka-h-bridge_h-bridge_scheme.png?nolink |}}
В зависимости от текущего состояние переключателей возможно разное состояние мотора.
^ S1 ^ S2 ^ S3 ^ S4 ^ Результат ^
| 1 | 0 | 0 | 1 | Мотор крутится вправо |
| 0 | 1 | 1 | 0 | Мотор крутится влево |
| 0 | 0 | 0 | 0 | Свободное вращение мотора |
| 0 | 1 | 0 | 1 | Мотор тормозится |
| 1 | 0 | 1 | 0 | Мотор тормозится |
| 1 | 1 | 0 | 0 | Короткое замыкание источника питания |
| 0 | 0 | 1 | 1 | Короткое замыкание источника питания |
===== Подключение и настройка =====
H-мост (Troyka-модуль) общается с управляющей электроникой по 2 сигнальным проводам ''D'' и ''E'' — скорость и направления вращения двигателя.
Мотор подключается к клеммам ''M+'' и ''M—''. А источник питания для мотора подключается своими контактами к колодкам под винт ''P''. Положительный контакт источника питания подключается к контакту P+, а отрицательный — к контакту ''P—''.
При подключении к [[amp>collection/arduino?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|Arduino]] или [[amp>product/iskra-js?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|Iskra JS]] удобно использовать [[amp>/product/arduino-troyka-shield?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|Troyka Shield]].
{{ :продукты:troyka-h-bridge:troyka-h-bridge_scheme_troyka-shield.png?nolink |}}
С [[amp>product/arduino-troyka-slot-shield?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|Troyka Slot Shield]] можно обойтись без лишних проводов.{{ :продукты:troyka-h-bridge:troyka-h-bridge_scheme_troyka-slot-shield.png?nolink |}}
===== Примеры работы =====
Приступим к демонстрации возможностей. Схема подключения — на картинке выше. Управляющая плата запитана через USB или внешний разъём питания.
==== Примеры для Arduino ====
Для начала покрутим мотор в течении трёх секунд в одну, а затем другую сторону.
// пин управления скоростью мотора (с подержкой ШИМ)
#define SPEED 11
// пин выбора направления движения мотора
#define DIR A3
void setup()
{
// пины в режим выхода
pinMode(DIR, OUTPUT);
pinMode(SPEED, OUTPUT);
}
void loop()
{
// покрутим в течении 3 секунд мотор в одну сторону
digitalWrite(DIR, LOW);
digitalWrite(SPEED, HIGH);
delay(3000);
// после чего остановим мотор
digitalWrite(SPEED, LOW);
delay(1000);
// далее покрутим в течении 3 секунд мотор в другую сторону
digitalWrite(DIR, HIGH);
digitalWrite(SPEED, HIGH);
delay(3000);
// после чего остановим мотор
digitalWrite(SPEED, LOW);
delay(1000);
}
Усовершенствуем эксперимент: заставим мотор плавно разгоняться до максимума и останавливаться в одном направлении, а затем в другом.
// пин управления скоростью мотора (с подержкой ШИМ)
#define SPEED 11
// пин выбора направления движения мотора
#define DIR A3
void setup()
{
// пины в режим выхода
pinMode(DIR, OUTPUT);
pinMode(SPEED, OUTPUT);
}
void loop()
{
// меняем направление
digitalWrite(DIR, LOW);
// теперь заставим мотор медленно разгоняться до максимума
for (int i = 0; i <= 255; i++) {
analogWrite(SPEED, i);
delay(10);
}
// заставим мотор медленно останавливатся
for (int i = 255; i > 0; i--) {
analogWrite(SPEED, i);
delay(10);
}
// меняем направление
digitalWrite(DIR, HIGH);
// теперь заставим мотор медленно разгоняться до максимума
for (int i = 0; i <= 255; i++) {
analogWrite(SPEED, i);
delay(10);
}
for (int i = 255; i > 0; i--) {
analogWrite(SPEED, i);
delay(10);
}
}
==== Пример для Iskra JS ====
// подключаем библиотеку
var Motor = require('@amperka/motor');
// подключаем мотор с указанием пина скорости и направления вращения
var myMotor = Motor.connect({phasePin: A3, pwmPin: P11, freq: 100});
// крутим мотор назад на 75% мощности
myMotor.write(0.75);
===== Элементы платы =====
{{ :продукты:troyka-h-bridge:troyka-h-bridge_annotation.png?nolink |}}
==== Драйвер двигателей ====
Драйвер моторов ''TB6612FNG'' — это сборка из двух H-полумостов. В нашем модуле мы запараллели оба канала микросхемы H-моста для компенсации нагрева.
==== Нагрузка ====
В качестве нагрузки для модуля [[amp>product/troyka-h-bridge?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki| H-мост(Troyka модуль)]] рациональнее всего использовать [[amp>collection/dc-motors?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki| коллекторный мотор]], так как есть смысл и потребность менять направления вращения двигателя. Если у вас иная нагрузка, используйте [[amp>product/troyka-mosfet-n-channel-v3?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|силовой ключ]] или [[amp>product/troyka-mini-relay?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|реле]].
Мотор подключается своими контактами к колодкам под винт ''M—'' и ''M+''. Полярность в данном случае неважна, так как она влияет на направление вращения вала и её можно изменять программно.
==== Питание нагрузки ====
Источник питания для мотора (силовое питание) подключается своими контактами к колодкам под винт ''P''. Положительный контакт источника питания подключается к контакту ''P+'', а отрицательный — к контакту ''P-''. Напряжение питания моторов должно быть в пределах 3–12 В постоянного тока.
==== Контакты подключения трёхпроводных шлейфов ====
//1-группа//
* ''D'' — направления вращения двигателя. Подключите к цифровому пину микроконтроллера.
* ''V'' — питание логической части модуля. Соедините с питанием микроконтроллера.
* ''G'' — земля. Дублирует пин ''G'' из второй группы Troyka-контактов. Соедините с землёй микроконтроллера.
//2-группа//
* ''E '' — включение и управление скоростью вращения мотора. Подключите к цифровому пину микроконтроллера.
* ''V2'' — силовое питание модуля. Подробнее про объединение питания.
* ''G '' — земля. Дублирует пин ''G'' из первой группы Troyka-контактов. Соедините с землёй микроконтроллера.
==== Джампер объединения питания ====
Силовое питание можно также подключать через пины ''V2'' и ''G'' из второй группы Troyka-контактов. Для этого установите джампер объединения питания ''V2=P+''. При этом подключать питание к контактам ''P+'' и ''P-'' уже не нужно.
Внимание! Джампер объединения питания связывает пины ''V2'' с клеммником ''P+'' внешнего питания.
Если вы не уверены в своих действиях или боитесь подать слишком высокое напряжение с клемм H-моста на управляющую плату, не ставьте этот джампер!
Данный джампер будет полезен при установке H-моста на [[amp>product/arduino-troyka-slot-shield?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|Troyka Slot Shield]] в пины поддерживающие ''V2''.
Например, если на плату подаётся ''12 В'' через разъём внешнего питания, то установив джампер на Troyka Slot Shield в положение ''V2-VIN'' вы получите напряжение ''12 В'' и на ножке ''V2'' H-моста. Эти 12 В можно направить на питание нагрузки — просто установите джампер ''V2=P+'' на H-мосте.
{{ :продукты:troyka-h-bridge:troyka-h-bridge_scheme_troyka-slot-shield_common-power.png?nolink |}}
==== Световая индикация ====
Сдвоенный светодиод индикации скорости и направления вращения на плате.
При высоком логическом уровне на пине управления направлением вращения ''E'', индикатор светится красным светом. При низком уровне — зелёным.
Чем выше скорость вращения двигателя, тем ярче горит зелёный либо красный светодиод.
==== Обвязка для согласования уровней напряжения ====
Необходима для сопряжения устройств с разными напряжениями логических уровней.
===== Принципиальная и монтажная схемы =====
{{:продукты:troyka-h-bridge:troyka-h-bridge_schematic.png?direct&350 |}}
{{ :продукты:troyka-h-bridge:troyka-h-bridge_layout.png?direct&300|}}
===== Характеристики =====
* Драйвер моторов: TB6612FNG
* Количество подключаемых моторов: 1
* Напряжение логической части: 3,3—5 В
* Напряжение силовой части: 3,3—12 В
* Длительно допустимый ток нагрузки: до 1,2 A
* Габариты: 25,4×25,4 мм
===== Ресурсы =====
* [[amp>product/troyka-h-bridge?utm_source=man&utm_campaign=troyka-h-bridge&utm_medium=wiki|H-мост (Troyka-модуль)]] в магазине
* [[https://github.com/amperka/hardware-drawings/blob/master/troyka-h-bridge.svg|Векторное изображение H-моста(Troyka-модуль)]]
* {{:продукты:troyka-h-bridge:troyka-h-bridge_tb6612fng_datasheet.pdf|Даташит на драйвер моторов TB6612FNG}}