Какой драйвер DC мотора подобрать?
- Войдите на сайт для отправки комментариев
Сб, 17/10/2015 - 21:55
Всем привет,
Нужно управлять мотором с Ардуино. Вот таким.
22 Вольта, 1.5 ампера. Ездить будет тут:
Диапазон скоростей от минимальной до максимальной, в обе стороны. Нужно будет реализовать back emf.
Какой драйвер выбрать под эти параметры?
А если кините ссылку на реализацию back emf, вообще буду признателен.
А полевик на шим вывод + Н мост не годится? токи вроде не большие
Если это будет крутиться с заданой скоросьтью, в обе стороны, почему нет. Киньте ссылку на схему?
Режим торможения нужен? Тогда TA7291P - Ваше всё. Напряжение управляется, торможение есть, ток до 3А.
Не, торможение не нада. Тепловоз червяком тормозит.
И по дата шиту там ток 1А соедний и 2А в пике.
Да, и впрямь 1А, что-то память подвела, сорри.
Посмотрите по этой ссылке. Большой выбор и по параметрам подорбрать можно - http://www.ti.com/lsds/ti/motor-drivers/brushed-dc-bdc-drivers-products.page
Спасибо. Вот такой подойдет?
http://www.ti.com/product/drv8871
Да, вроде нормально. Меня только смущает ШИМ-управление. Я всегда брал драйверы, где управление шло через опорное напряжение, а ШИМ-ом не управлял никогда. Там вот, например, написано от 0 до 100kHz. Так "скока в граммах-то"?
Да, вроде нормально. Меня только смущает ШИМ-управление. Я всегда брал драйверы, где управление шло через опорное напряжение, а ШИМ-ом не управлял никогда. Там вот, например, написано от 0 до 100kHz. Так "скока в граммах-то"?
Что я вообще в этой теме плаваю. Опорное- это с аналогового пина?
Я шимом то рулить собрался просто: через цмфровой PWM пин. Дам HIGH и максималка. Или не так?
Я шимом то рулить собрался просто: через цмфровой PWM пин. Дам HIGH и максималка. Или не так?
В смысле не HIGH, а 255? да? Надеюсь, что так, но я так ни разу не пробовал.
Опорное - это с аналогового пина?
Схему не нарисую, я не электронщик и знаний не хватит. Принцип такой: ставится полевик на ШИМ выход, он используется для питания двигателя. Ставится Н-мост в той цепи питания с управлением по 2-м выходам. Собственно та микросхема драйвера так и работает. Частота ШИМ у нее указана для справки в каких пределах она сможет пользовать ваш ШИМ сигнал, т.е. например ШИМ с частотой 200кГц вы подать можете, но драйвер не заработает или заработает, но будет жутко греться и в итоге сгорит.
В итоге, купил L6203. Сделал все, как нарисовано тут:
При отладке с потенциометром, задающи Шим, все работало, моторчег плавно крутился в обе стороны.
Как подрубил к рабочему скетчу, где управляющий сигнал идет с декодера- сгорели 2 штуки. :(
никто не в курсе, диоды все таки нужно подключать, как на схеме? А то на некоторых схемах есть, на некоторых нет...
диоды нужны
Ну вот, как раз этот момент обсуждался в проектах драйвера для мотора. В этом устройстве никак нельзя переключать направление при размешенном сигнале EN, который вполне можно использовать для ШИМ скорости вращения. То есть надо программно запретить EN переключить направление на IN1, IN2 и только потом разрешить EN иначе "сквозняки гарантированы". Там, кстати и написано Dead time protection = 100нсек. Ну и "sense resistor" - не случаен. Это ограничитель тока КЗ при сквозняках. Кстати, сопротивление полевиков как-то великовато - половина ома. При заявленном предельном токе в 5А это потеря практически 2.5в на драйвер и высаживаемая на нем моща аж 12вт! Без радиатора - никак... а ещё и ограничительный резистор будет высаживать чегой-то..
Защитные диоды там как раз есть внутрях..
Очень интересно, спасибо, но многое не понятно:
Что такое размешаный сигнал?
То есть нужно выключать EN (=LOW) при переключении направления(переброс 1/0 на IN1 и ШТ2)?
Что такое - "сквозняки"?
Ну и "sense resistor" - не случаен.
Т.е. Sence нужно уводить на землю через резистор?
Т.е. все таки диоды не нужны?
"Разрешенный" сигнал. Очепятка. :)
Сквозняки - токи, текущие по силовым транзисторам в момент переключения. Оба транзистора, а то и все 4шт могут оказаться в открытом состоянии и тогда через них шпарит "сквозной" ток "мимо" вашего двигателя. А поскольку их сопротивление невелико (в среднем 50 миллиом! У этого - 500), то ток может быть очень большим, хоть и "микросекундным", но его запросто хватит чтобы спалить мост.
Соответственно, переключение направления правильно программно делать так, чтобы исключать сквозняки: запрещаете EN = LOW и только после этого меняете состояние IN1, IN2. Выдерживаете оговоренную паузу из даташита в 100нс или более и разрешаете EN=HIGH.
Если у вас через EN идет ШИМ для регулировки скорости из счетчика (аппаратный ШИМ), то запрещение EN делаете 2-я командами: сначала закрываете ногу ШИМ на вывод pwmTurnOFF() или как там она называется у Wiring или прямой командой TCC.. &= !BV(CS..) - соответственно какой счетчик и какая нога юзается И затем выставляете ножку в ноль типа digitalWrite(pin, LOW) или прямой командой PORT.. &= !BV(pin..). После смены направления и выдерживания паузы - включаете ШИМ обратным порядком.
Да, желательно sense уводить на землю через резистор. Какой не подскажу, вкуривайте даташит или примеры. Он будет ограничивать макс. сквозняк допустимым пределом. Но и отжирать лишнюю мощность в работе .. тут нужен баланс. Или аккуратность в программном управлении.
Диоды похоже что не нужны: там каждый мосфет их уже имеет куда надо. А вот кондюки - похоже надо. Можно ещё параллельно мотору вешать керамический конденсатор для сглаживания пульсаций. На 10н - вполне достаточно для большинства применений DC-моторов.
Но, я бы пошукал другой драйвер с защитами от сквозняков и перегрева. Благо их много. Открываете alldatasheet.com и запрашиваете по описанию "DC motor full bridge" есть даже DUAL - два моста в одном флаконе. :)
Если у вас через EN идет ШИМ для регулировки скорости из счетчика (аппаратный ШИМ), то запрещение EN делаете 2-я командами: сначала закрываете ногу ШИМ на вывод pwmTurnOFF()
У меня пинов не хватает для проекта, по этому драйвером планирую управлять по 2-м пинам: IN1 и IN2. EN пин запитан на 5 вольт(как на схеме выше).
А на IN1 и IN2 подаю вот так шим:
Теперь, я так понимаю, нужно отслеживать предыдущее направление, и если оно не равно текущему, то писать в оба пина (IN1_PIN и IN2_PIN) LOW, ждать 100 ns, и потом перекидывать, так?
Там их полно, но мне нужно тут и щаз, и для экспериментов в чипииде нашел именно такой.
Ну да. Раз EN не используется, то надо оба IN сначала выставлять в одно значение, а уже потом переключать и гонять ШИМ. А раз у вас один из контактов всегда в LOW, то переключать надо примерно так:
Инерция мотора не позволит заметить "на глаз" микросекундную задержку, а делать меньше - нет смысла, ибо потребуется использовать "низкоуровневые" средства. :)
Твою мать, но что не так... еще один спалил. Даже направления не переключал.
Без мотора с вольтметром все работало на ура, мотор не мощный вроде, ни о чем, просто дал газу, даже направления не менял...
Смотрите что и куда соединили .. тут я уже не помошник.
Проверил еще раз все, и точно повторил обвеску из даташита. Купил еще 2 драйвера. Вольты - нормально, Лампочка - нормально.
Мотор - чутка крутит и кряк. Еще 2 драйвера в минус. ХЗ!
а подцепить сначала потом попроще и проверить. чего сразу на мощный
какой ток потребления при запуске?
а вообще есть же драйверы
http://www.banggood.com/10A-ESC-Brushed-Speed-Controller-For-RC-Car-And-...
http://www.banggood.com/DIY-Mosquito-Car-Bidirectional-30A-Miniature-Bru...
http://www.banggood.com/10A-ESC-Brushed-Speed-Controller-For-RC-Car-And-...
http://www.banggood.com/Orlandoo-OH35P01-KIT-RC-Car-Parts-Brake-Switch-M...
http://www.banggood.com/Orlandoo-OH35P01-KIT-RC-Car-Parts-Brake-Switch-M...
или
http://ru.aliexpress.com/item/30A-Mini-VNH2SP30-Stepper-Motor-Driver-Mon...
Да подцепил не мощный, малюсенький от машинки игрушечной.
ХЗ, не мерял, там моторчик - одно название. Какой там может быть ток на холостых темболее.
Так это регуляторы скорости. Ну тоже в общем идея - по одному проводу рулить как сервой. Но мне надо все на одной плате шоб было. Но у меня мах напряжение мб 24 вольта. Дешовые регули такое не держат.
Вот какие они интересно драйверы используют такие маленькие и с такими ахенными токами?
это и есть драйвер. там все внутри. так тебе регулировка скорости шимом не нужна?
Ну в этих регулях вопервых регулировка не шимом, а сервовой "пилой" в мс. Во-вторых, там две либо три банки липо, а это 12.6 волт мах.
А мне надо подавать на мотор 24 вольта МАХ. Хотя заманчиво конечно. Все внутри. Рули-нехочу.
irlz44n + реле на 2 группы пеерключающих контактов
Это вы зря про "моторчик маленький" .. вам в соседней теме не зря описали про КЗ. Вот как раз такой моторчик, что вам был там показан, у меня есть что при запуске жрет токи до 5-7 ампер .. "влегкую". Провод 0.2мм, 70 витков на обмотку сопротивление обмотки около 2 ом. Обмотки по треугольнику, итого на старте имеем 1.5 ома. На 12 вольтах имеем все 8 ампер "как с куста". И пофиг, что он крутит 16500 об/мин и на ХХ жрет всего-ничего 50мА. Зато тормозной момент у него (на 8А) в районе 40гр*см. "фиг остановишь" и греется как утюг в несколько секунд.
Такой у меня пожег драйвер L298N "как только так сразу". На радиаторе про между прочим. Как заклинило его в роботе, так и все, кирдык драйверу. (:
Тоесть нужно померять токи и подбирать драйвер под эти токи?
В итоге заработал TLE5206-2.
На локе стоит 2 таких мотора. Драйвер управляется с обоими.
https://www.youtube.com/watch?v=p18rLkiqJWs
С Победой!
Спасибо! Приступил к реализации Back EMF.
Скорее всего пробелма была в том, как я подавал pwm на драйвер. Надо было HIGH и PWM, а я подавал LOW и PWM. Мотор тормозил, когда было лоу-лоу и перегружал драйвер. А когда хай-хай, то он в высоко импендансном состоянии и не тормозит. Все работает. Наверное так.
И поиграть частотой PWN. Так как звук моторы издают противный. Я так понял, нужно уходить за 26 kHz, так как там уже не слышно уху.
Попробую поменять скейлер на втором таймере (пины 9 и 10 ардуино мини про). Надеюсь, на всякие delay() и millis() это не повлияет.
Не знаю, как на мини, но на "взрослых" не повлияло бы, т.к. всякие миллисы на первом таймере.
Писк исчезает уже примерно при 20кГц. Тоже повышал частоту ШИМ для устранения писка. Только мощность падает при этом иногда.
Может от драйвера зависит. Ключи не успевают отрабатывать?
У меня напрямую одним полевым транзистором управляет. Может и не успевает полностью открыться.