|
Зависает Atmega 64, при коммутации мощной индуктивной нагрузки |
|
|
|
Mar 17 2009, 16:15
|
Участник

Группа: Участник
Сообщений: 24
Регистрация: 25-09-07
Пользователь №: 30 811

|
Есть устройство на ATmega64, управляющее несложным оборудованием. На оборудовании используется достаточно мощный гидравлический клапан, катушка которого рассчитана на 220V AC. Точно не знаю, но, думаю, ватт 100. Контроллер управляет этим клапаном через маломощное реле, установленное на плате. Периодически контроллер зависает (5-10 срабатываний клапана). Если ничего не менять, а только отсоединить катушку гидравлического клапана, то зависания пропадают. Я думаю, что проблема в мощных электромагнитных помехах, появляющихся в момент коммутации. Но может не из-за этого, а, например помехи по цепи питания. Что можете сказать?
Подскажите пожалуйста, что можно предпринять, чтобы устранить данную недоработку. Например какие-то RC цепочки на катушку или навешать кучу конденсаторов по питанию котроллера? Доступ к плате и схеме есть - все объективные мнения будут реализованы.
Заранее спасибо.
P.S. Питание 5V через понижающий ШИМ от +24V на плате же. Кварц внешний. Reset на +5V.
|
|
|
|
Guest_Скопидор_*
|
Mar 17 2009, 17:54
|
Guests

|
|
|
|
|
Guest_Скопидор_*
|
Mar 17 2009, 19:02
|
Guests

|
Цитата(Igont @ Mar 17 2009, 19:15)  или навешать кучу конденсаторов по питанию А что толку? Помеха ведь по воздуху передаётся. Тут только грамотная разводка платы рулит
|
|
|
|
Guest_Скопидор_*
|
Mar 18 2009, 13:11
|
Guests

|
Цитата(МП41 @ Mar 18 2009, 16:05)  А сторожевой таймер задействован? Надо бороться с причиной зависания, а сторожевой таймер помогает когда контроллер уже завис
|
|
|
|
Guest_Скопидор_*
|
Mar 18 2009, 13:23
|
Guests

|
Цитата(МП41 @ Mar 18 2009, 16:16)  Согласен, но таймер всё же не зря придумали. Естественно, на время отладки его надо выключить. Открою Вас секрет, что его придумали больше для защиты от программных ляпов (когда при некотором сочении переменных получается вечный цикл), а не от помех. Ещё открою секрет, что при помехах бывают такие зависоны, что и WDT останавлается и не помогает. Так что в первую очередь нужно избавиться от причины зависания
|
|
|
|
|
Mar 18 2009, 13:47
|

4 синих кубика
   
Группа: Участник
Сообщений: 526
Регистрация: 19-09-08
Из: полупроводника, металла и стекла
Пользователь №: 40 326

|
Цитата(Скопидор @ Mar 18 2009, 15:23)  Открою Вас секрет, что его придумали больше для защиты от программных ляпов (когда при некотором сочении переменных получается вечный цикл), а не от помех. Ещё открою секрет, что при помехах бывают такие зависоны, что и WDT останавлается и не помогает. Так что в первую очередь нужно избавиться от причины зависания Это понятно, и я согласен, что надо бороться с причиной, а что если уже платы сделаны и устройство в работе? Этим можно частично закрыть проблему.
Сообщение отредактировал МП41 - Mar 18 2009, 13:47
--------------------
p-n-p-p-n-p-n-n-p-n-p структура однако очень эффективна
|
|
|
|
|
Mar 18 2009, 20:47
|
Участник

Группа: Участник
Сообщений: 24
Регистрация: 25-09-07
Пользователь №: 30 811

|
Цитата(domowoj @ Mar 17 2009, 19:20)  Посмотрел. Спасибо. Результат ошеломляет. См. вложенный рисунок. Цитата(ukpyr @ Mar 18 2009, 01:09) заменить реле на оптосимистор с детектором 0, параллельно катушке клапана - RC цепочку (последовательно 10-100нФ и 10-100Ом), плату управления отнести подальше от клапана. Подобрал SDA-200B025S-1Z. Поставим снаружи вместо доп. реле. Цитата(_Pasha @ Mar 18 2009, 17:56) Коммутируйте этим реле другое, с напряжением обмотки 12Вольт, а уж это реле пускай стоит на динрейке в сторонке, в панели. И клиенту удобно - реле наебн поменял и вперед. Так и сделано. Но реле заменим см. выше. Чтобы искр в момент размыкания не было. Цитата(МП41 @ Mar 18 2009, 16:05) А сторожевой таймер задействован? Нет. Стараюсь не использовать. Соглашусь, как, впрочем, и вы с Цитата(Скопидор @ Mar 18 2009, 16:11) Надо бороться с причиной зависания, а сторожевой таймер помогает когда контроллер уже завис Спасибо всем ответившим. Результат не замедлит быть. Про реле я написал. На плате же(см. влож.) будет отрезана дорожка GND от кварца с конденсаторами, которые будут соеденены перемычкой с 22 ногой Atmega64.
Эскизы прикрепленных изображений
|
|
|
|
|
Mar 18 2009, 21:49
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850

|
Цитата(Скопидор @ Mar 18 2009, 15:23)  Открою Вас секрет, что его придумали больше для защиты от программных ляпов (когда при некотором сочении переменных получается вечный цикл), а не от помех. Программные ляпы тоже разные бывают. И если всё " правильно" делать то в этом цикле и обновление WDT может оказаться...
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|