Для управления двигателями робота необходимо устройство, которое бы преобразовывало управляющие сигналы малой мощности в токи, достаточные для управления моторами. Такое устройство называют драйвером двигателей.
Существует много различных схем управления электродвигателями. Они различаются как мощностью, так и элементной базой, на которой они построены.
Остановимся на самом простом драйвере управления двигателями. L293D является одной из самых распространенных микросхем.
L293D содержит сразу два драйвера для управления электродвигателями небольшой мощности (четыре независимых канала, объединенных в две пары). Имеет две пары входов для управляющих сигналов и две пары выходов для подключения электромоторов.
Кроме того, у L293D есть два входа для включения каждого из драйверов. Эти входы используются для управления скоростью вращения электромоторов с помощью широтно-модулированного сигнала (ШИМ).
L293D обеспечивает разделение электропитания для микросхемы и для управляемых ею двигателей, что позволяет подключить электродвигатели с большим напряжением питания, чем у микросхемы.
Разделение электропитания микросхем и электродвигателей может быть также необходимо для уменьшения помех, вызванных бросками напряжения, связанными с работой моторов.
Принцип работы каждого из драйверов, входящих в состав микросхемы, идентичен, поэтому рассмотрим принцип работы одного из них.
К выходам OUTPUT1 и OUTPUT2 подключим электромотор MOTOR1.
На вход ENABLE1, включающий драйвер, подадим сигнал (соединим с положительным полюсом источника питания +5V). Если при этом на входы INPUT1 и INPUT2 не подаются сигналы, то мотор вращаться не будет.
Если вход INPUT1 соединить с положительным полюсом источника питания, а вход INPUT2 — с отрицательным, то мотор начнет вращаться.
Теперь попробуем соединить вход INPUT1 с отрицательным полюсом источника питания, а вход INPUT2
— с положительным. Мотор начнет вращаться в другую сторону.
Попробуем подать сигналы одного уровня сразу на оба управляющих входа INPUT1 и INPUT2 (соединить оба входа с положительным полюсом источника питания или с отрицательным) — мотор вращаться не будет.
Если мы уберем сигнал с входа ENABLE1, то при любых вариантах наличия сигналов на входах INPUT1 и INPUT2 мотор вращаться не будет.
Теперь рассмотрим назначение выводов микросхемы L293D.
Входы ENABLE1 и ENABLE2 отвечают за включение каждого из драйверов, входящих в состав микросхемы.
Входы INPUT1 и INPUT2 управляют двигателем, подключенным к выходам OUTPUT1 и OUTPUT2. Входы INPUT3 и INPUT4 управляют двигателем, подключенным к выходам OUTPUT3 и OUTPUT4.
Контакт Vs соединяют с положительным полюсом источника электропитания двигателей или просто с положительным полюсом питания, если питание схемы и двигателей единое. Проще говоря, этот контакт отвечает за питание электродвигателей.
Контакт Vss соединяют с положительным полюсом источника питания. Этот контакт обеспечивает питание самой микросхемы.
Четыре контакта GND соединяют с «землей» (общим проводом или отрицательным полюсом источника питания). Кроме того, с помощью этих контактов обычно обеспечивают теплоотвод от микросхемы, поэтому их лучше всего распаивать на достаточно широкую контактную площадку.
Характеристики микросхемы L293D:
напряжение питания двигателей (Vs) — 4,5…36V
напряжение питания микросхемы (Vss) — 5V
допустимый ток нагрузки — 600mA (на каждый канал)
пиковый (максимальный) ток на выходе — 1,2A (на каждый канал)
логический «0» входного напряжения — до 1,5V
логическая «1» входного напряжения — 2,3…7V
скорость переключений до 5 kHz.
защита от перегрева