Аппаратный WatchDog для ардуино и не только

Тема в разделе "Arduino & Shields", создана пользователем jjdrive, 21 дек 2015.

  1. jjdrive

    jjdrive Нерд

    Может кто-нибудь сталкивался с необходимостью следить за зависаниями устройств на базе ардуино? Думаю создать аппаратный watchdog на базе 555 микросхемы. Есть у кого какой опыт???
     
  2. DrProg

    DrProg Вечный нерд

    У Ардуино есть свой вачдог, зачем еще один снаружи?
     
    ИгорьК нравится это.
  3. MDV

    MDV Гик

    точно, есть встроенный с максимальным интервалом 8 секунд
     
  4. jjdrive

    jjdrive Нерд

    Знаю, что есть, все равно виснет устройство и хз что с ним происходит...
     
  5. jjdrive

    jjdrive Нерд

    Использую именно его. То ли 8 с маловато для данного устройства, толи родной вотчдог не надежен
     
  6. AlexU

    AlexU Гуру

    "Сторожевая собака" перегружает AVR контроллер, если он завис. Если "ХЗ что происходит ...", то скорее что-то с прошивкой не то. Или с "обвязкой"... Т.е. Ваш контроллер после достижения какого-либо состояния начинает постоянно уходить в перезагрузку.
    А контроллер в перезагрузку может уходить по многим причинам -- в моём недавнем случае, "оперативка" (SRAM) кончалась. Проблему решил переносом констант во FLASH память.
     
  7. DrProg

    DrProg Вечный нерд

    Может устройству банально не хватает питания? Вачдог надежен, работает независимо от основной программы, но если МК останавливается от "голода", то и он встанет.
     
    ИгорьК нравится это.
  8. jjdrive

    jjdrive Нерд

    Тогда как диагностировать данные состояния, нехватку памяти или недостачу питания?
     
  9. DrProg

    DrProg Вечный нерд

    Расскажите для начала что за Ардуино и что на ней висит из устройств.
     
    ИгорьК нравится это.
  10. jjdrive

    jjdrive Нерд

    UNO+GPRS shield
     
  11. MDV

    MDV Гик

    Организуй проверку работы собаки.
    Она обязана ресетить МК.
    Выложи скетч
     
  12. Tomasina

    Tomasina Сушитель лампочек Модератор

    GPRS от чего питается? Ему надо 1-1,5 А.
     
  13. Onkel

    Onkel Гуру

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

    MDV Гик

    Исходя из описания проблемы Человеку нужно чтобы осуществляться перезапуск контроллера
     
  15. MDV

    MDV Гик

    Зависать может по разным причинам как по питанию так и банально при инициализация модема забыли включить питание
     
  16. Sindbad

    Sindbad Гик

    Tomasina нравится это.
  17. DrProg

    DrProg Вечный нерд

    Заметка подробно рассказывает лишь о том, что в МК с бутлоадером (Ардуине) сработка вачдога вероятно чревата боком. Отсюда делаем вывод, что нужно либо обновить бутлоадер (что само по себе не просто), либо отказаться от вачдога и найти другое решение, либо сделать на голом МК без бутлоадера.

    Второй вопрос, точнее первый, какого рожна система зависает? Я вот пока еще ни разу не видел чтобы при нормальном коде система зависала. Перегружалась произвольно бывало, но зависать не зависала. AVR довольно устойчивые МК. Значит либо код кривой, либо проблемы с питанием, либо где то есть контакт (где он не нужен) или нет контакта (где он нужен).

    Код опубликуйте.
     
    ИгорьК нравится это.
  18. jjdrive

    jjdrive Нерд

    Подобных устройств у меня с десяток, больше половины уже месяц работают без збоев. У остальных наблюдаются проблеммы. Скетч залит один и тот же везде. Питается от 9в 2а бп.
    Кстати какой максимальеый ток пропускает бортовой стабилизатор уны? Больше 1,5 А?
     
  19. MDV

    MDV Гик

    Устройства только внешне одинаковы. Модем скорей всего на sim900 и тут много нюансов, начиная от уровня сигнала сети, прошивки самого sim900 и заканчивая библиотеками.
    У меня на одном устройстве мог зависнуть через месяц работы, пришлось запустить собаку.
     
  20. jjdrive

    jjdrive Нерд

    Оказывается на UNO стоит NCP1117ST50T3G у которого в даташите написано, что на выходе 1А. Получается, какой бы БП я не поставил, GPRS шилд больше 1 ампера не получит??? Выходит такому шилду надо отдельное питание делать?????