Соответствие состояний входов и выходов драйвера SN754410 иллюстрирует табл. 4.1 (условные обозначения в таблице: Н - высокий уровень; L - низкий уровень; Х -безразличное состояние; Z -высокоимпедансное состояние).
Таблица 4.1. Состояния входов и выходов драйвера SN754410
Рассмотрим назначение контактов микросхемы SN754410:
• GND (контакты 4, 5, 12, 13)-выводы для подключения к земляной шине монтажной платы;
• Vcc2 (контакт 8)-напряжение питания двигателя (подсоедините к 9 В);
• Vccl (контакт 16)-напряжение питания микросхемы (подсоедините к 5 В);
- 93 -
• 1У и 2У (контакты 3 и 6) - выходы для подключения первого двигателя;
• IA и 2А (контакты 2 и 7)- коммугация первого двигателя, эти выводы соединены с управляющими контактами Arduino;
1,2 EN (контакт 1)- включение и отключение левого драйвера. Данный вывод соединен с ШИМ-контактами на плате Arduino, что позволяет динамически регулировать скорость двигателей;
• ЗУ и 4У (контакты 11 и 14)- выходы для подключения второго двигателя;
• Батарея
• Н-мост
• Двигатель постоянного тока
Рис. 4.7. Схема подключения Н-моста
- 94 -
ЗА и 4A (контакты 10 и 15)- коммутация второго двигателя, эти выводы соединены с управляющими контактами Arduino;
• 3,4 EN (контакт 9) - вывод включения или отключения правого драйвера. Он соединен с ШИМ-контактами на Arduino, что позволяет динамически регулировать скорость двигателей.
Проверьте монтаж по рис. 4.7. Потенциометр подключим позже.
Прежде чем приступать к программированию, проверим работоспособность схемы.
Подключите один из входных контакто? (2 или 7) микросхемы H-моста к шине 5 В, другой к земле. Двигатель начнет вращаться. Поменяйте подключение контактов 2 и 7, двигатель будет вращаться в другую сторону.
ВНИМАНИЕ!
Во время переключения контактов отключите батарею, чтобы случайно не вызвать короткое замыкание моста.
4.10. Управление работой Н-моста
Напишем программу для управления скоростью и направлением вращения двигателя с помощью потенциометра и драйвера H-моста. Установка движка потенциометра в среднее положение приводит к остановке двигателя, при перемещении движка вправо скорость вращения вала двигателя увеличивается, перемещение движка влево от среднего положения приводит к увеличению скорости вращения вала двигателя в обратном направлении. В программе будут три вспомогательные функции: первая - для остановки двигателя, вторая - для вращения двигателя с заданной скоростью и третья - для вращения двигателя с заданной скоростью в обратном направлении.
Анализируя рис. 4.5, делаем следующие выводы:
1. Для вращения двигателя один из выключателей должен быть замкнут, другой разомкнут.
2. Чтобы двигатель вращался в обратном направлении, замкнутый в n. 1 выключатель должен быть разомкнут, а разомкнутый - замкнут.
3. Для остановки двигателя оба выключателя должны быть разомкнуты.
ПРИМЕЧАНИЕ
Перед изменением состояния выключателей всегда отключайте ток, чтобы не вызвать короткого замыкания Н-моста.
Сначала напишем код функций для выполнения описанных действий (листинг 4.3).
Листинг 4.3. Вспомогательные функции для управления двигателем