====== 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}}