Греется шаговый двигатель и садятся батарейки

MikhailNov
Offline
Зарегистрирован: 01.04.2018

Коллеги, помогите!

Arduino Nano, двигатель 28BYJ-48, программа сейчас самая простая - на срабатывание датчика расстояния вызывается функция myStepper на несколько десятков шагов, поворачивая рулевой механизм из детского конструктора (делаем с сыном машинку-робота, которая объезжает препятствия:)).

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

Я думаю, что после выполнения myStepper ток на двигатель не прекращает подаваться, чтобы двигатель "держал момент". хотя для моей задачи это не нужно, а при работе от батареи - и вовсе вредно.

Если я прав, то что мне сделать с программой, чтобы после окончания "поворота руля" ток переставал подаваться? Может, более продвинутые процедуры есть для ШД, или myStepper переписать придется?

Если же я не прав, то что это такое может быть?

Наверняка ведь кто-то уже с чем-то подобным сталкивался...

 

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

Это штатный режим работы шагового двигателя и нормальный режим работы библиотеки. 

Если Вам нужно что-то нестандартное, оптимальный способ - написать свою библиотеку, которая делает то, что Вам нужно.

sadman41
Offline
Зарегистрирован: 19.10.2016

Динозаур несомненно прав в том, что стоковая библиотека степпера не слишком оптимальна и подлежит переписыванию. Однако, для данного случая можно применить грязный хак: подать во все управляющие мотором пины LOW. Тогда ULN2003 снимет напряжение с обмоток двигателя. При необходимости продолжить движение никаких дополнительных действий предпринимать не требуется - библиотека сама начнет ставить ноги в нужное положение.

Или же можете поподбирать другие библиотеки - их несколько.

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

Что за код? - ХЗ!
Что за библиотека? - ХЗ!
Что за схема подключения? - ХЗ!

Как решать проблему? - ХЗ3!

ven-til
Offline
Зарегистрирован: 13.02.2018

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

Что за код? - ХЗ!
Что за библиотека? - ХЗ!
Что за схема подключения? - ХЗ!

Как решать проблему? - ХЗ3!

Евгений, ну как же так? Правильно вот так Х327

MikhailNov
Offline
Зарегистрирован: 01.04.2018

Всем спасибо за помощь, особенно sadman41 - именно по его совету я и сделал для начала - после каждого срабатывания процедуры myStepper программа устанавливает на всех 4 пинах, к которым подключен драйвер, уровень LOW. После этого леды на драйвере перестали гореть все время (раньше 2 горело), то есть ток в режиме покоя после "поворота" не подается. Двигатель перестал греться, батарея перестала разряжаться. Теперь я могу отлаживать программу.

 

 

MikhailNov
Offline
Зарегистрирован: 01.04.2018

После того, как разберусь с простейшим вариантом, буду делать свою функцию для управления драйвером. Или, может быть, сначала попробовать что-то готовое? Какие еще библиотечные функции для управления ШД написаны для Nano?

MikhailNov
Offline
Зарегистрирован: 01.04.2018

To ЕвгенийП: Зачем мне присылать код, схему подключения и ссылку на библиотеку, когда умный человек по моему описанию и так все понял и дал совет, благодаря которому я проблему решил? - ХЗ! Зачем Вы писали свой ответ мне? - ХЗ! Но все равно спасибо, повеселили, да и аватарка соответствующая, прикольная:) Теперь буду объяснять сыну разные расшифровки ХЗ, уместные в зависимости от ситуации и окружения...

sadman41
Offline
Зарегистрирован: 19.10.2016

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

Вам же просто повезло - у меня в коробке лежит комплект с таким движком и драйвером, а так, как я ингогда сталкиваюсь с необходимостью тыркать переферию напрямую, а не через библиотеки, то и знаю, что творится внутри стоковой Stepper.h и как ей вправить мозги. Но это, повторюсь - ваше везение.

MikhailNov
Offline
Зарегистрирован: 01.04.2018

sadman41, видимо, Вы знаете Евгения П, а я нет. К тому же я всегда стараюсь шуткой снять напряжение, ну а если это у меня получается не очень - что же, мне тоже придется обзавестись соответствующим аватаром:) 

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

MikhailNov пишет:

 мне тоже придется обзавестись соответствующим аватаром:) 

Хорошая идея! У меня так несколько, я их под настроение меняю. Старожилы уже их все узнают :)))

bwn
Offline
Зарегистрирован: 25.08.2014

Евгений, эт, поаккуратней, персонажи уже собираются: