Непонятные зависания при работе с мотором через ШИМ

lcf2003
Offline
Зарегистрирован: 13.11.2012

Доброго времени суток!

Ардуино собрана на беспайке (контроллер 328). прошит скетч фэйд из примеров. Диод плавно разжигается и плавно гаснет. все супер. Контроллер питается от USB посредством USB2Com преобразователя.

Подключил параллельно к пину 9 (на котором светодиод в этом скетче) вход на ULN2003, 8 и 9 ноги которой подключил к отдельному аккуму (земли с USB соеденены). на выход ULN-ки порвешен мотор из замка, который ставят в авто на сигнализацию. он рабоатет от 12 вольт. Что бы не грузить ULN-ку запараллелил два выхода и входа.

Т.о. получилось что контроллер питается от усба, мотор от аккума.

При запуске скетча, происходят стабильные зависания через 1-5 секунд. помогает ресет. Т.е. может зависнуть когда мотор крутиться быстро, когда медленно.

попробовал подключить вход ULN-ки через резистор от светодиоада (220 ом помоему). вроде стало лучше (интервал после которого происходит зависание стал больше). пробовал запитывать контроллер тоже от аккума через LM-ку  - толку ноль! В цепь питания пробовал добавлять сглаживающий кондер на 470мкфх25в что по питанию по USB что по питанию аккума, толку ноль.

Так же если долго мучать контроллер постоянными ресетами, то как будто срабатывает какая то защита и контоллер перестает работать, после его отдыха и перезаливки! срекча он начинает опять работать.

 

Собственно вопросы: Как? почему? как исправить?

Заранее благодарен за ответы. Если что то написал не полно, напомните, я дополню или объясню.

 

З.Ы. Поздравляю ВСЕХ с Днем программиста! Удачи, хороших клиентов и самовыводящихся багов!

maksim
Offline
Зарегистрирован: 12.02.2012

Схема? Фото? Скейтч?

lcf2003
Offline
Зарегистрирован: 13.11.2012

Фото выложу вечером.

Схему включения вроде описал. (С 9 пина Ардуины, на 1,2 ULN; 8,9 ULN на питание соответственно; 15,16 ULN на мотор; второй контакт мотора на плюс питания)

Скетч стандартный Fade из примеров.

maksim
Offline
Зарегистрирован: 12.02.2012

Плохо описали. Что у вас там за ардуина на бредборде собрана никто не знает.

Конденсаторы на кварце стоят? Какие? Резистор на ресерте имеется? Какой?

lcf2003
Offline
Зарегистрирован: 13.11.2012

Ардуино собрана по статье

http://arduino.cc/en/Main/Standalone

все номиналы как в статье.

постарался сфотать способ подключения

На фото не совсем понятно, поэтому объясню. питание от USB идет по верхней шине, от аккума по нижней, он подключен снизу слева.

Так же для понимания процесса "зависания" снял видео работы. Первоначально земли сточников питания не соеденены, поэтому мотор не куртится, потом я соединяю земли и можно наблюдать картину зависания. ссылка на пикаса альбом:

https://picasaweb.google.com/112297568585131889977/Arduino?authkey=Gv1sRgCPLz7o6jqoS8zwE

 

Конденсаторы на кварце по 22 пикофарата, ресет притянут 10 комным резистором.

axill
Offline
Зарегистрирован: 05.09.2011

из описания не понятно куда именно подключен 9-1 вывод ULN

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

у вас так? 8-й вывод соотвественно на общую землю, но обязательно земля от аккумудятора должна подключаться максимально близко к ULN, но не на пути соединения с мегой - мега отдельным проводом от ULN до меги

lcf2003
Offline
Зарегистрирован: 13.11.2012

Да, все так и есть как вы говорите.словые провода на мотор и аккум специально продублированы двумя проводами. второй провод от мотора (-) подключен к ULN к портам напротив 1-2 ноги. Оно то в принципе работает. только не понятно почему мега затыки ловит. может быть помехи от мотора, если питания все таки разные? может параллельно мотору кондер повесить? какой?

А еще заметил что у меня земля на мегу одним проводом идет. может здесь падение напряжение. это завтра проверю

 

Продублировал землю, повесил паралеллно мотору кондер на 100мкфх25 вольт, сначало вроде хорошо, стало, потом опять такая же бадага.

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

axill
Offline
Зарегистрирован: 05.09.2011

помехи скорее всего по питанию, хотя странно, при разведенных источниках помех быть не должно

по даташиту меги рядом с МК всегда нужно вешать керамический когденсатор на 0,1мкф. Если есть индуктивность 10-200мкг то рекомендую плюс питания от USB подсоединить через индуктивность, после индуктивности поставить еще керамический конденасатор на землю и электролит

lcf2003
Offline
Зарегистрирован: 13.11.2012

ок, спасибо, буду пробовать.

как в домашних условиях сделать нужную индуктивность. сердечник могу выкорчевать из старого БП, какой проволокой сколько витков сделать?

 

lcf2003
Offline
Зарегистрирован: 13.11.2012

Попробовал туже схему, только вместо самособраной ардуины поставил Nano v3.0 все заработало как должно. был один затык и все, а так стабильненько, при этом что при питании от USB что от аккума через встроенный стабилизатор.

В итоге можно сделать выводы, что либо как подсказывали проблемы по питанию, и надо его фильтровать, либо беспаячная схема дает где то сбои при работе МК. Что ж. буду запаивать, фильтровать питание.

спаибо!