Форум программистов, компьютерный форум, киберфорум
Робототехника и умный дом
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/83: Рейтинг темы: голосов - 83, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 27.01.2010
Сообщений: 109
1

подключение L293 к МК

29.03.2010, 01:07. Показов 15099. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
на схемах которые я встречал везде подключают IN1 - Enable1 (сюда генерирую ШИМ) - IN2 получаем 3 ноги МК

интересует следующий момент, почему не делают например сигнал на IN2 через какую нибуть логику NOT ? ведь нам нет необходимости держать лог1 на обоих входах драйвера...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2010, 01:07
Ответы с готовыми решениями:

вопрос по L293
Нашел наконец-то китайскую игрушку-донора шасси. Но у нее двигатель питается от одной батарейки...

L293 и ШИМ
Здравствуйте форумчяне. Столкнулся с такой проблемой. l293 включена в мост как на рисунке....

Драйвер l298 или l293
Доброго времени суток! Возникла такая проблема... Делаю что-то типа управления "жалюзями". Это...

Определение осуществлено ли подключение к заданной WI-FI сети и подключение к ней, если не подключена
Добрый день. Суть задачи - в винде хочу что бы программа определяла - подключена ли она (винда)...

12
SWK
29.03.2010, 01:46 2
Цитата Сообщение от SirkiyDom
на схемах которые я встречал везде подключают IN1 - Enable1 (сюда генерирую ШИМ) - IN2 получаем 3 ноги МК
интересует следующий момент, почему не делают например сигнал на IN2 через какую нибуть логику NOT ? ведь нам нет необходимости держать лог1 на обоих входах драйвера...
А нафига ставить и разводить лишнюю микросхему ради экономии 2 ног? Очень редко бывает, что все ноги заняты полностью. Часто гораздо удобнее реализовать функционально законченные блоки на отдельных контроллерах, связав их между собой, чем пытаться свалить все в одну кучу. Например, в моем роботе ходовой контроллер управляет 2 двигателями через ШИМ и контролирует напряжение аккумуляторной батареи, иногда пищит. Также к нему подключены оптопары одометров колес, и линии связи - RS232, SPI, I2C, через которые он общается с компом по радиоканалу и с контроллером бамперов, который контролирует 12 датчиков переднего и заднего бамперов и их подсветку. В ходовом стоит PIC16F876 в DIP 28, ног вполне достаточно, есть даже штуки 3-4 не то чтобы совсем уж лишние, но их функции можно было реализовать и без них.
Цена лишней пары ног не так уж высока. Всегда можно поставить контроллер в корпусе с большим количеством ног (разница по цене не велика), чем лепить всякую мелкую логику. А если надо сэкономить много ног - так на то есть, например, регистры, дешифраторы... Кроме того, дополнительные микросхемы усложняют разводку, приходится использовать 2 сторону или лепить перемычки, а это лишние проблемы и трата времени, что часто значит больше, чем экономия пары ног.
А еще иногда нужен режим динамического торможения двигателя, для этого оба плеча должны быть в 0 или 1.
0 / 0 / 0
Регистрация: 23.05.2007
Сообщений: 792
29.03.2010, 13:04 3
Иногда можно обойтись и 2-мя ногами (IN1 и IN2) без всяких дополнительных логик. Enable включен постоянно. ШИМ получаем дергая только один вход. На втором входе держим 0 или 1 в зависимости от нужной полярности. Для остановки даём на оба входа одинаковый уровень. Недостаток - невозможность полностью разорвать цепь нагрузки, но оно часто и не нужно.. (Например, не получится получить холостой ход для DC моторчика).
0
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 1,230
29.03.2010, 14:14 4
YurkoM, в таком случае теряется возможность реверса и поворота на месте включив двигатели в раздрайв.
0
0 / 0 / 0
Регистрация: 23.05.2007
Сообщений: 792
29.03.2010, 16:19 5
Как это теряется?
На IN1 единица, на IN2 прямой ШИМ - вперёд,
На IN1 нолик, на IN2 инверсный ШИМ - назад,

На IN1 нолик, на IN2 нолик - стоп.
На IN1 единица, на IN2 единица - стоп.

Теряется холостой ход, а так же при любой индуктивной нагрузке получается режим быстрого спада тока.
0
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 1,230
29.03.2010, 17:12 6
YurkoM, так, уточните, по 2 провода на каждый двигатель? Я почему-то привык считать сразу двух-движковыми системами от L293.
0
0 / 0 / 0
Регистрация: 23.05.2007
Сообщений: 792
29.03.2010, 17:56 7
Ну да, конечно, по 2 на каждый двигатель. А топикстартер вёл речь о трёх проводах на каждый двигатель, насколько я понял.
ps:
Кстати, можно и одним проводом на каждый мотор обойтись, если силовое питание сделать двух-уровневое. Правда, для мобильных девайсов с батарейным питанием, наверное не получится, т.к. из-за возможной неодинаковой разрядки батарей середина уплывёт.
0
0 / 0 / 0
Регистрация: 27.01.2010
Сообщений: 109
29.03.2010, 18:43 8
пост SWK понятен! собственно проблемы экономии ног нет! я начинающий "электронщик" (это типа хобби будет на старости лет :) ) и уясняю для себя некоторые моменты...

а вот с YurkoM? что-то запутался...
я думал так подать
первый двигатель:
ножка МК (лог0 - вперед, лог1-назад) -> IN1 (L293) -> NOT (IN2) = получаем первый проводок
ножка МК (ШИМ) -> Enable (L293) = второй проводок

второй двигатель:
ножка МК (лог0 - вперед, лог1-назад) -> IN1 (L293) -> NOT (IN2) = получаем третий проводок
ножка МК (ШИМ) -> Enable (L293) = четвертый проводок

второй и четвертый можно соеденить в один, но тогда нельзя будет заставить крутиться колеса с разной скоростью.
0
0 / 0 / 0
Регистрация: 23.05.2007
Сообщений: 792
29.03.2010, 19:04 9
Цитата Сообщение от SirkiyDom
ножка МК (лог0 - вперед, лог1-назад) -> IN1 (L293) -> NOT (IN2) = получаем первый проводок
ножка МК (ШИМ) -> Enable (L293) = второй проводок
Всё правильно конечно, но если кроме МК больше нет дополнительной логики, откуда возьмётся "NOT" ?

Справедливости ради, можно заметить, что этот самый "NOT", реализованый не на мс, а в виде одного транзистора и двух резисторов в smd исполнении, на плате займут ничтожную площадь, да и разводятся элементарно.
0
SWK
29.03.2010, 20:53 10
Справедливости ради, можно заметить, что этот самый "NOT", реализованый не на мс, а в виде одного транзистора и двух резисторов в smd исполнении, на плате займут ничтожную площадь, да и разводятся элементарно.
3 разных компонента, 7 лишних точек пайки, 3 позиции для склада, 3 строки в спецификации... Не стоит оно одной сэкономленной ноги. Нетехнологично. Кроме того, теряем некоторые режимы работы двигателя, которые невозможно реализовать в таком включении (например, динамическое торможение при равных сигналах на входах, закорачивающее двигатель).
0 / 0 / 0
Регистрация: 23.05.2007
Сообщений: 792
29.03.2010, 22:18 11
Цитата Сообщение от SWK
3 разных компонента, 3 позиции для склада
2 компонента и 2 позиции (резисторы можно взять одного номинала)
Цитата Сообщение от SWK
7 лишних точек пайки,
фигня, - не вручную же паять, если речь пошла о "позициях со склада" и "строках спецификации", а значит о промышленных масштабах.

Цитата Сообщение от SWK
теряем некоторые режимы работы двигателя, которые невозможно реализовать в таком включении (например, динамическое торможение при равных сигналах на входах, закорачивающее двигатель).
Вот это ИМХО, самый серьёзный аргумент. Согласен.

Цитата Сообщение от SWK
Не стоит оно одной сэкономленной ноги.
Думаю, всё таки зависит от конкретного случая. Если свободные ноги есть, - прекрасно, используем их. А если не хватает? - брать следующий камень? А если уже текущий 40-ножка, а паяние TQFP64 человек не осилит? Ну и одна сэкономленная нога на каждый мотор, а ведь их может быть несколько..

В самом начале SirkiyDom спрашивал, почему не делают "сигнал на IN2 через какую нибуть логику NOT ?" Дык вот, делают. Делают, когда это оправдано, взвесив минусы и плюсы.
0
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 1,230
30.03.2010, 06:26 12
YurkoM, если МК действительно забит под завязку и по ногам и по ресурсам вообще, то уже имеет смысл вывести локомотивную составляющую из обязанностей МК и перепоручить это другому, менее мощному МК. Например тиньке на 20 лапах или пику с килом оперы и 28 лапами. Главный МК будет давать команды локомоторному аппарату, а уже мелки МК будет будет рулить двигателями и может параллельно выполнять какую-нибудь повседневную работу, например следить за датчиком пола и если аппарат окажется в воздухе - то подаст сигнал пищалкой и снимет нагрузку с двигателей. В этом случае все-равно будет выйгрыш в универсальности и простоте понимания происходящего в устройстве. К тому-же логику МК можно изменить, а схему перепаять будет сложней.

Управление двигателями используя аналоговые сигналы или элементарную логику может быть вызвано не только желанием сэкономить лапки МК. Например, использование аппарата в электро-температурной обстановке не допускающей использование МК. Те-же температуры ниже -50 градусов. Или при высокой радиации, когда летящие нейтрино спокойно сотрут или искорежат оперу и флэшку МК.
0
0 / 0 / 0
Регистрация: 27.01.2010
Сообщений: 109
30.03.2010, 19:56 13
все понятно, поучительно было почитать...

про динамическое торможение... по моему эффективней будет организовать реверс или подобие "ABS" для гарантированного экстренного торможения платформы, там ведь энкодеры стоят...
0
30.03.2010, 19:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2010, 19:56
Помогаю со студенческими работами здесь

Локальные сети. Подключение не установлено т.к конечный компьютер отверг запрос на подключение
Подскажите пожалуйста! у меня возникла проблема с программой,вот что отвечает на запрос...

Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение 127.0.0.1:61464
Здравствуйте, я запустил локальный сервер через Denwer, создал БД(pgpmyadmin) и в Windows Forms...

Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение 127.0.0.1:11000
Клиент-серверное приложение на tcp/ip Все работало на win xp(порты 11000 и 11001), но на win7...

TCP Provider: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение
Проверила все служба, ip-адрес, ping. Все работает. Подскажите как исправить ошибку?

Ошибка Selenium: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение
IWebDriver driver; FirefoxDriverService serv =...

RDO подключение к MySQL - как узнать, было ли установлено подключение
сделал подключение через rdo используя драйвер - odbc connector mysql 3.51 пример: Dim conn As...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru