Для чего нужны контакты Vs и Vss на микросхеме L293D?

Я сделал простую тестовую схему, чтобы понять, что такое H-мост L293D. со стартовым комплектом Arduino.

Цифровые выходные контакты Arduino подключены к входным контактам H-моста. Код Arduino попеременно отправляет 1/0 и 0/1 на эти два выходных контакта, в основном (насколько я понимаю) создавая переменный ток чрезвычайно низкой частоты на двух выходных контактах H-моста. Два светодиода подключены параллельно выходным контактам в противоположных направлениях, поэтому они мигают, демонстрируя переменный характер тока.

Проект, над которым я сейчас работаю из стартового набора, — это Zoetrope ( стр. 102), и в этом проекте L293D используется для управления двигателем. 5V Arduino подключен к Vss, а батарея 9V подключена к Vs.

Поэтому я немного удивлен, что мне удалось заставить его работать вообще без использования выводов Vs и Vss. Для чего они? Я попытался заменить светодиоды на двигатель, и это не сработало (я думаю, недостаточно мощности). Но если я подключу 5 В на Arduino к контакту Vs, это произойдет! Однако подключения 5 В только к контакту Vss недостаточно для питания двигателя.

Итак, я как бы понимаю, что без тока Vs и Vss тока от входных контактов достаточно, чтобы зажечь светодиоды, но вот чего я не понимаю:

  1. Если напряжения на входных контактах недостаточно для привода двигателя, почему нужно подключить 5 В к контакту Vs? Это то же напряжение, что и на входных контактах.

  2. Для чего нужен значок Vss?

, 👍1


1 ответ


1

Как вы можете видеть в связанном PDF-файле L293D

VS — это напряжение питания (здесь подключается источник питания для двигателя)

VSS — напряжение питания логики (здесь подключается источник питания для логики микросхемы L293D — обычно тот же источник, что и для +5 В для Arduino)

  1. VSS подает энергию для правильной работы L293D (например, контакт включения, входы и т. д.)

Кроме того, как вы можете видеть на БЛОЧНОЙ СХЕМЕ, есть несколько загадочных диодов, соединенных немного необычным образом - по крайней мере, на первый взгляд. Когда все хорошо запитано и нормально, они замкнуты и не проводят ток.

Но если напряжение на (скажем) OUT1 станет отрицательным, то нижний диод, подключенный к земле, начнет ток опережения и притянет OUT1 к земле.

Аналогично, если бы напряжение на OUT1 становилось выше, то источник питания VS открывал бы верхний диод и тянул бы OUT1 вниз к напряжению VS.

Это необходимо для обеспечения работы внутренних цепей в нормальных условиях. А если есть двигатель (если какая-то другая индуктивность в виде реле или около того), то такие пики будут.

Похожие защитные диоды, вероятно, есть и на всех входных контактах. (Обычно в логических схемах ограничивают входное напряжение таким образом.) Поскольку вы не подключали VS к какому-либо источнику питания, при подаче +5 В (логическая единица) на любой входной контакт он «опускался»; к ВС через какой-нибудь такой диод. Это эффективно «подтянуло» ВС приближается к напряжению на выводе и при включении ВС начинает работать внутренняя логика L293D, так что происходит волшебство.

  1. Может быть даже какое-то подобное защищенное соединение между VS и VSS, поэтому некоторая мощность с вашего выходного контакта Arduino просочилась через длинные и непланированные путь к вашим светодиодам и заставить их светиться. Светодиодам не требуется большой ток.

Когда вместо этого вы подключили двигатель, длинный путь оказался слишком длинным и имел слишком большое сопротивление вдоль него, что (почти) все напряжение было распределено по нему, а на двигателе почти ничего не было - и почти не было тока. смог пройти. Это удача, так как выходные контакты Arduino имеют ограничение тока 20 мА (или около того).

Когда вы подключаете +5 В к контакту VS, путь от него к двигателю намного короче, а также с гораздо меньшим сопротивлением вдоль него, поэтому для двигателя было достаточно напряжения и тока, чтобы он мог работать. .

Попробуйте и измерьте сопротивление вашего мотора - вы увидите, что оно будет почти ничем по сравнению с R=220, которое вы использовали со светодиодами.

Хотя это может быть не видно в таком простом примере, как этот, вы действительно должны включить VSS, чтобы логика там работала надежно.

,