Теперь изменим программу так, чтобы управлять скоростью вращения двигателя, регулируя положение ручки потенциометра. При полностью выведенном движке потенциометра двигатель остановлен, при полностью введенном - вал двигателя вращается с максимальной скоростью. Не забывайте, что контроллер Arduino работает очень быстро, цикл повторяется несколько тысяч раз в секунду! Поэтому малейшее изменение положения движка потенциометра сразу же сказывается на частоте вращения двигателя. Описанный алгоритм реализует программный код, приведенный в листинге 4.2. Загрузите программу в плату Arduino и регулируйте скорость вращения двигателя с помощью потенциометра.
- 90 -
Рис. 4.4 Схема подключения потенциометра для регулировки скорости вращения
Листинг 4.2. Регулирование скорости двигателя - motor_pot.ino
const int MOTOR=9;
const int POT=0;
int val = 0;
// Вывод 9 Arduino для подключения двигателя
// Вывод A0 Arduino для подключения потенциометра
void setup()
{
pinMode (MOTOR, OUTPUT);
}
void loop()
{
val = analogRead(POT);
val = map(val, 0, 1023, 0, 255);
analogWrite(MOTOR, val);
}
- 91 -
4.8. Управление направлением вращения двигателя постоянного тока с помощью Н-моста
Вы научились изменять скорость вращения двигателя постоянного тока. Это позволит управлять движением робота, но лишь в том случае, если он будет двигаться только вперед. Однако любой двигатель постоянного тока способен вращаться в двух направлениях. Для изменения направления вращения применим устройство, называемое H-мостом. Принцип работы H-моста поясняет схема, изображенная на рис. 4.5.
Рис. 4.5. Схема работы Н-моста
Почему схема называется H-мостом? Ответ прост. Обратите внимание, что изображение двигателя в сочетании с четырьмя переключателями похоже на прописную букву "И". Хотя на схеме изображены просто выключатели, на самом деле это транзисторы, подобные тем, которые были в предыдущем примере. В реальной схеме H-моста также есть некоторые дополнительные цепи, в том числе защитные диоды.
И-мост может находиться в четырех основных состояниях: "выключен", "торможение", "вперед" и "назад". В выключенном состоянии все выключатели разомкнуты и двигатель не вращается. В состоянии "вперед" два выключателя замкнуты, в результате через обмотку двигателя течет ток и вал вращается. В состоянии "назад"
ток течет в противоположном направлении, и направление вращения вала обратное.
Если H-мост находится в состоянии торможения, то обмотка замкнута, вращение замедляется и двигатель останавливается.
Необходимо помнить об опасности короткого замыкания цепей H-моста. Что произойдет, если все четыре выключателя будут замкнуты? Это вызовет короткое замыкание между шиной +9 В и землей. В результате батарея очень быстро нагреется, что может привести к ее разрыву. Кроме того, короткое замыкание может повредить H-мост или другие элементы схемы.
Для нашего эксперимента выберем микросхему SN754410- четырехканальный драйвер И-полумоста, которая имеет встроенную защиту от короткого замыкания.
- 92 -
4.9. Сборка схемы Н-моста
Настала пора собрать схему H-моста. Возьмем микросхему SN754410-четырехканальный драйвер Н-полумоста. Два драйвера Н-полумоста образуют полный драйвер H-моста, как на рис. 4.5. Для управления одним электродвигателем постоянного тока используются два из четырех драйверов Н-полумоста. Если вы хотите сделать, например, радиоуправляемый автомобиль, можно управлять двумя колесами с помощью одной микросхемы SN754410. На рис. 4.6 приведена цоколевка микросхемы SN754410.
Рис. 4.6. Цоколевка микросхемы SN754410
Нумерация контактов на микросхемах начинается с левого верхнего угла и идет против часовой стрелки. На корпусе всегда имеется метка у контакта 1 (полукруг, точка или что-то другое).
Соответствие состояний входов и выходов драйвера 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 -
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии