Реверс постоянного мотора через Ардуино без драйвера

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Всем привет. Меня интересует как можно реализовать через ардуино реверс обычного постоянного мотора (например от лотка дисковода)? Мотор собираюсь запускать через транзистор подавая на базу сигнал с ардуино. Спасибо за вашу помощь заранее.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Например с таким кодом смена полярности работает, если напрямую мотор подсоединить к ардуино . Но я хочу включать мотор через транзистор. Хотелось бы менять полярность моторчика

int plus=4;
int minus=5;

void setup(){
  pinMode (plus,OUTPUT);
  pinMode (minus,OUTPUT);
}

void loop(){
  digitalWrite(plus, HIGH);
  digitalWrite(minus,LOW);
  
  delay (3000);
  
  digitalWrite(plus, LOW);
  digitalWrite(minus,HIGH);
  
}

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Лучше и проще поставить мостовой драйвер.  Готовый или самому спаять.

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

gena
Offline
Зарегистрирован: 04.11.2012

  Включать мотор (с возможностью реверса) через транзистор не получится. Нужно собирать мостовую схему на транзисторАХ. Если мотор потребляет ток до 40 мА, можно поэкспериментировать с подключением напрямую к выводам микроконтроллера. Но я бы не стал это делать (индуктивность, знаете ли).

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

А для реверса мотора (схема Н-моста) 4 транзистора npn нужны или два npn и два pnp?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Так в гугле же этого добра ... и схемы и методики расчёта ...

На биполярных транзисторах - http://radiohlam.ru/teory/h-bridge.htm

На полевых транзисторах - http://roboforum.ru/wiki/H-%D0%BC%D0%BE%D1%81%D1%82

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Спасибо читаю уже.  И ещё один вопросик по поводу pnp npn переходов. Если на npn транзистор на базу подать HIGH он откроется. А вот чтобы pnp  открылся надо LOW подать? ПРавильно? Хочу удостовериться мой транзистор не сгорел. ДАташиты на нних нашел . npn КТ819Г и   pnp КТ837Ф

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Правильно. Притянуть к земле. Тоже самое про полевые транзисторы. N-канальный - к питанию, P-канльный к земле.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Спасибо за ответ. А разные можно использовать марки тразисторов для Н моста (одинаковый у них переход npn и Uбэ 5в макс?) .

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Там в тех статьях есть правила расчёта в том числе и параметров транзистора.

Что касается Uбэ - оно почти у всех транзисторов примерно такое (ну, там 6 или 7 бывает, но не больше).

Вопрос связан с тем как его к питанию прижимать для PNP транзисторов? Так там же на эмиттере питание сидит - смотрите схему. ТАк что когда Вы на базу дадите питание, напряжение между базой и эмиттером станет нулём.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Закажука наверное L293. Мне вроде как принцып понятен как работает аш мост. Вчера пробывал это все на релюшках реализовать. Схему нарисовал. В теории смена полярности должна заработать. ПОка не проверял на практике. Есть два реле для ардуино.

Вопрос такой L293 может управлять 12В моторами? Какое количество моторов можно задействовать максимально.  Я так понимаю он служит вроде ключа для открывания (пропукскания) питания на моторы, а также реверсы делать.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

В даташите всё написано:

Wide Supply-Voltage Range: 4.5 V to 36 V
Output Current 1 A Per Channel (600 mA for L293D)
Peak Output Current 2 A Per Channel (1.2 A for L293D)

P.S. Что за дурацкая привычка создать кучу тем и писать в них одно и то же?

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

БЛАГОДАРЮ ВСЕХ ЗА ОКАЗАННУЮ ВАМИ МНЕ ПОМОЩЬ))))))))))))))))))))))))))))))))))

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Прочитал внимательно статью. http://radiohlam.ru/teory/h-bridge.htm Перед тем как начать делать мост хотел спросить у вас. Будет ли мотор плавно вращаться через ШИМ если подавать сигнал на точку А или В

gena
Offline
Зарегистрирован: 04.11.2012

   Теоретически должен, если частота ШИМа будет не велика. Насколько невелика - не знаю. Думаю сотни Гц.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Если ШИМ с ардуино уно?

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Мне интересно будет ли управление ШИМ для моторов с Н-моста? 

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Здравствуйте. Мне интересно будет ли управление ШИМ  ардуино ЮНО для мотора с Н-моста? Мне нужно управлять скоростью вращения.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Так, если интересно - соберите и попробуйте. И нам расскажете.

Обязательно следите за нагревом транзисторов.

И ещё, обратите внимание на то, что в этой схеме отсутствуе какая-либо защита (обработка) от одновременного включения высокого уровня в обеиъ отчках A и B. Прдеставьте себе, что произойдёт если транзисторы Т1 и Т3 (или Т2 и Т4) откроются одновременно! Убедитесь, что Ваш скетч никогда такой бяки не допустит.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Спасибо насчет защиты и кода в скетче. думал об этом уже. Хочу управлять реверсом переключателем который двигается в два положения. А в скетче на всякий случай дописать код:

digitalWrite(Точка A, HIGH);

if (точка B==HIGH){

digitalWtite(точка А=LOW)

И наоборот для точки В.

Вот только неуверен успеет эта логика сработать раньше чем будет КЗ)))))

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Так делайте наоборот. Переставьте местами. Первую строку исполняйте только после проверки, что там на B. Если в какой-то момент окажется везде LOW - это не страшно, а вот HIGH не допускайте никогда.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Кстати эту схему собирал. только резисторы везде использовал на 1КОм. Транзисторы разные. Все они были проверены на открывание подачаей сигнала на базу (+ или -  взависимости pnp или npn). Измерял напряжение мультиметров где должен быть мотор.  Источник питания 9В земли питание и ардуино обьединил. 

При подачи сигнала + на точку В 9 воль проходят спокойно. и ноль вольт если не подвать сигнал.

С точкой А по другому все. До подачи сигнала показывает какие то 2,2 В а при подачи 0,2 или 0. ПОка не пойму почему так. 

Сейчас хочу резисторы найти подходящие для моих транзисторов или транзисторы ту которые в присланной статье указаны заново собрать схемуи проверить. 

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Хочу своей племяннице маленький подьемный кран сделать. два мотора и одна серва. Один мотор вокруг своей оси поворачивает кран. серва вверх стрелу поднимает за счет потенциометра. а второй мотор тросик поднимал бы.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Точно!!! сразу не подумал проверку в самом начале сделать.)))))

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Конечно это не супер сложное изобретение будет как вплане технической или программной реализации. Тут проекты и по круче будут и сложностью и пользой. но я пока учусь. с чего то надо начать осваивать ардуино и электронику

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Я бы на Вашем месте взял бы простенькую микросхемку TA7291 и не парился бы.

Там работа двигателя управляется не ШИМом, а опорным напряжением. Его, конечно, тоже их ШИМа делать надо, но зато на мотор идёт плавно, а не рывками.

Но самое главное её преимущество - режим торможения, т.е. быстрой остановки двигателя (как раз на оба входа HIGH подать). Режим классно работает. Двигатель быстро останавливается. А без такого режима, народу приходится его иммитиировать - после отключения питания "в одну сторону" подавать ненадолго "в  другую", чтобы быстрее остановился.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

НА одном канале В который работает пробывал ШИМ подавать. в градации от analogWrite от 1 до 10 напряжение от 2до 9в меняется (питание крона на 9В). Вроде как работает. Микросхему вашу себе запишу . приобрету. 

А l293d для моих целей подойдет? (в плане ШИМ). или все же лучше  TA7291?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Cesium137 пишет:

А l293d для моих целей подойдет? (в плане ШИМ). или все же лучше  TA7291?

Это для холивара фанатов той и другой микросхемы.

Принципиальная разница между ними:

293 - подаёт на двигатель всё напряжение сразу, так что управлять скоростью вращения надо через ШИМ, т.е. часто включая и выключая. А 7291 - подаёт на двигатель напряжение, равное опорному, которое на неё подали. Т.е. для управления оборотами мы не включаем/выключаем питание мотора постоянно, а просто подаём на него нужное напряжение.

293 - два полумоста в одном курпусе, а 7291 - один полный мост в корпусе

Ну и у 7291 есть режим торможения, а у 293 нет.

Мне больш нравится 7291, возможно потому. что в крупном проекте мне было очень важно как можно быстрее останавливать и торможение меня просто спасало.

Но, Вы не думайте, что это единственный выбор. Таких драйверов сотни и с торможением, и без, и полумостов и полных мостов. MAX14871, A3968, LV8716, DRV8837, вот ещё десяток на выбор

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

НУ спасибо вам огромное. ТЕперь я точно определился что лучше выбрать для моей затеии. Я так понял что ШИМ работает по принцыпу вкл выкл сигнала с очень болшое скоростью (этим задается ширина импульца) визуально кажется что это и есть ззамедление мотора или затухание плавное светодиода. 

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Если даст бог получится сделать кран подьемный то выложу фото и коды как я его реализовал

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

А какую модель лучше брать TA7291?   TA7291sg  или TA7291p? есть разницы в функциях ? У разных моделях кол-во ножек разное 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Ну, это к Вам попрос. Я же не знаю, какой ток у Ваших двигателей.

ТА7291Р - 1,2А, в пике до 2А

ТА7291S и ТА7291F - 0,4А, в пике до 1А

Разница между S и F только в корпусе. S - в корпусе SIP-9, а F - в корпусе HSOP-16. Опять же, никто, кроме Вас не знает какой корпус удобнее в Вашей конструкции. Я вот, например HSOP боюсь как огня - я их паять не умею :)

На количество ножек не парьтесь - часть не используются. Так-то это одинаковые микросхемы.

 

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

В принципе, такие драйверы на мало-мальски большой ток - достаточно дорогие. Поэтому иногда проще сделать самогонный по той схеме, что Вы приводили (ну, а если ток совсем большой, то на полевых транзисторах). Например, нужен Вам драйвер на 4-5 ампер, берёте 4 штуки копеечных TIP122 (12 рублей за штуку), и делаете.

Торможение в самодельном мосте сделать совсем нетрудно. Я не буду давать схему, только идею подскажу, дальше подумайте, запустите какой-нибудь протеус или мультисим и "решите задачу". А идея там такая. Если у Вас есть двигатель, который можно раскрутить рукой и он будет вращаться (без питания), попробуйте во время вращения закоротить его обмотку. Увидите, как он начнёт заметно притормаживать и быстро остановится. Это главная идея. Только не "дораскручивайте" при замкнутой обмотке - можно спалить.

Если в Вашей схеме открыть одновоременно два нижних транзистора, а верхние оставить закрымыми, то Вы по сути закоротите обмотку двигателя на землю. Отдельно заметим, что если двигатель вращается, то он вырабатывает ЭДС - он же как электро-генератор работает. Так вот, когда к обмотке с двух сторон приложена земля, эта ЭДС будет будет уходить в землю, а двигатель тормозить. Это и есть "динамическое торможение".

Таким образом, динамическое торможение даже специально делать не надо. Если мы сделаем защиту от одновременного включения по сигналам в точка А и Б такую, что при открытии любого из нижних транзисторов, соответсвующий верхний будет автоматически наглухо закрываться, то это будет защитой от КЗ и одновременно режимом торможения!

Если же наоборот - открыть оба верхних и закрыть оба нижних, будет тоже самое - на обмотке с двух сторон питание - обмотка замкнута. Так что без рахницы, как придумаете.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Я в мультисиме собирал схему Н моста которую выкладывал здесь. Работает со сменой полярности подавая сигнал на концы А или В. Только если я уменьшаю напряжение на кончах А или В напряжение где мотор не меняется. Я пытался представить ШИМ

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Cesium137 пишет:
Только если я уменьшаю напряжение на кончах А или В напряжение где мотор не меняется.
Ну, значит схема правильно нарисована. Это логические уровни, с чего бы от них меняться напряжению на нагрузке?

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

А чем можно в мультисиме с имитировать плавное открывание транзистора? Я пробывал функциональным генератором изменяя частоту но тогда приходится и напряжение менять. В универе по электронике мультисим изучали. RC фильтр делали и частоту среза по графику отображали

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

В элеетронике не силен поэтому не понял что транзистор не откроется плавно

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Транзисторы работают в ключевом режиме, они не должны плавно открываться. Почитайте хотя бы википедию, как работает ШИМ.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

Cesium137 пишет:
Я пробывал функциональным генератором изменяя частоту

Изменять надо не частоту, а скважность.

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

ДОбрый вечер всем. НАконец мост заработал. МИкросхемы всетаки заказал TA7291 и L293d. Жду доставку. Мост решил сделать как посоветовали на ютюбе из 4рех транзисторах NPN. По смене полярности все в норме. Правда напряжение на выходе меньше чем .Если сигнал в точке А то мультиметр показывает 7,5. В точке В 7,1.

Если с ардуино подавать с цифрового выхода (5В), на на выходе получается 4.2(точка А) и 4.0 (точка В).

В видео ролике говорили что транзисторы подойдут любые NPN. Резсторы только на видео ролике 510Ом а уменя 1КОм стоят.

У меня вопрос можно ли добыть выходного напряжения равное источнику питания ?

Схему делал в мультисим. Указал марки своих транзисторов как в моей схеме.

 

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Я наверное замучал этим мостом. Вы уже микросхемы посоветовали чтобы велосипед не изобретать. Но вроде сейчас на 4х транзисторах получилось сделать смену полярности и хочу доделать окончательно и испытывать свой малнький проект, пока микросхемы приедут.))).

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Кстати через ШИМ в Н мосте на 4х транзисторах ардуино изменяется плавно напряжение. :

ШИМ=1 - напряж 0,3в;

ШИМ=125- напряж 2,2В

ШИМ =255 - напряж 4В

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Cesium137 пишет:

Кстати через ШИМ в Н мосте на 4х транзисторах ардуино изменяется плавно напряжение. :

ШИМ=1 - напряж 0,3в;

ШИМ=125- напряж 2,2В

ШИМ =255 - напряж 4В

Это Вы серьезно?

Или просто кроме мультиметра Вам измерить нечем?

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Серьезно. Мультиметр так пишет. БОльше нечем измерять.  А чем еще можно измерять напряжение?

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Можете помочь с ответом. По чму напряжение на выходе Н-моста ниже чем источник? ДЕло в самих транзисторах? Может мне у каждого напряжения измерить по отдельности эмитер-коллектор???

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Cesium137 пишет:

Если с ардуино подавать с цифрового выхода (5В), на на выходе получается 4.2(точка А) и 4.0 (точка В).

Поставьте одинаковые транзисторы и будет полное счастье.

Cesium137 пишет:

У меня вопрос можно ли добыть выходного напряжения равное источнику питания ?

Нет. Это был бы вечный двигатель.  Проведите пальцем по схеме от + до GND через нагрузку, как ток течёт. По пути Вы пройдёте через два тразнистора. Значит, двойное падение на переходе КЭ Вы потеряете обязательно.

Cesium137 пишет:

 А чем еще можно измерять напряжение?

В данном случае имзмерять надо осциллографом. А т.к. Вы забыли поставить диоды - подключите осциллограф - увидите жуть жуткую :)

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Можно ли избежать падения напряжения на транзисторах? В мультисиме мультиметр напряжение по схеме выходное равной источнику.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Нельзя. Я же говорю, тогда вечный двигатель получится.

Кстати, Ваша начальная схема (с двумя специальными открывающими транзисторами) намного более экономична. И напряжение в ней повыше получется (Vcc - 1,2В). В этой же схеме очень большие токи в землю уходят.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

ЕвгенийП пишет:

Так в гугле же этого добра ... и схемы и методики расчёта ...

На биполярных транзисторах - http://radiohlam.ru/teory/h-bridge.htm

На полевых транзисторах - http://roboforum.ru/wiki/H-%D0%BC%D0%BE%D1%81%D1%82

я на симисторах делал ещё

Cesium137
Cesium137 аватар
Offline
Зарегистрирован: 13.12.2016

Я понял вас. Получается потери напряжения всегда будут.  Собрал схему из одинаковых транзисторов C945 npn . Все работает по смене полярности . Источник питания  9В (крона). На выходе пмультиметр выдает 8,1-8,0. 

Но при подаче 5в с ардуино падает на выходе до 3,9.

Интересно почему тогда мультисим потери не выдает измеря мультиметром выход Н моста.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Не знаю, у меня Electronics Workbench - по-моему это просто "недодеоланная" упрощённая версия ьултисима (нет?) всё считает нормально.

Думаю, что в моделях Ваших транзисторов лажа написана. Попробуйте поставить "идельный транзистор" - должна выдать.