Меню сайта
Категории раздела
Борьба с запахом [6]
Средства и устройства для борьбы с запахом и очистки воздуха.
Материалы, инструменты и оборудование [20]
Расходники, инструменты, приспособления и материалы, которые могу быть полезны для сооружения гроубокса.
Источники CO2 [9]
Углекислый газ необходим растениям для фотосинтеза, помогает растениям расти быстрее и потенциально дать больший урожай.
Гидропоника/Аэропоника [4]
Вода/воздух в качестве субстрата
Полив [5]
Ирригационные системы
Контроль [16]
Системы мониторинга
Освещение [11]
Источники света для растений
Гроубоксы [12]
Помещения для выращивания
Субстраты [11]
Среды для выращивания
Удобрения [9]
Средства для улучшения урожая
Электроника [47]
Софт [1]
Полезные советы [6]
Выращивание грибов [15]
Саморазвитие и бизнес [2]
Гроурепорты [1]
Статистика

Яндекс.Метрика
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа
Главная » Статьи » Электроника

Переодическая перезагрузка arduino

Существует способ перезагрузить arduino используя watchdog, но как показывает практика плата остается работоспособной, а вот Ethernet Shield остается в зависшем состоянии. Можно конечно поставить на модуль дополнительный обвес, провести анализ и найти причины зависания. Не не факт что на этом ваши мытарства прекратятся, вполне возможно зависание будет продолжаться по другим новым проблемам.

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

Воспользуемся чипом-таймером SE555. Datasheet.
Рабочее напряжение: от 4,5 до 16В.
Рабочая температура: от -55° до +125°C;
Максимальны выходной ток: 200mA;

Все мы знаем что на плате arduino есть пин под названием reset. Судя по описанию ATMEGA достаточно соединить его с землей на 2мкс и произойдет перезагрузка arduino. На этой странице есть подобный пример но с кнопкой, на видео видно как после нажатия на кнопку происходит перезанрузка. В нашем случае вместо кнопки будет таймер который и отправит сигнал LOW на пин reset.

Схема подключения:

Список деталей:
R: 100 кОм; 4,7 кОм.
С: 470,0*25В; 0,01.
DT: SE555.

Период работы таймера регулируется: R1, R2 и C1.
Номиналы электролитических конденсаторов: 1, 2.2, 4.7, 10, 16, 22, 47, 100, 220, 470, 1000, 2200, 4700мкф на напряжения 16В и 25В.
Номиналы резисторов: ряд E24

Для примера:

Вариант 1
R1=10 МОм;
R2=1 кОм;
C1=470 мкФ;
Будет подавать ток в течении 3258 сек и после этого прервется на 0.32 сек, произойдет перезагрузка arduino. И так по кругу.

Вариант 2
R1=100 кОм;

R2=4,7 кОм;
C1=220 мкФ;
Будет подавать ток в течении 16 сек и после этого прервется на 
0.7 сек.
 

Вариант 3
R1=910 кОм;
R2=15 кОм;
C1=470 мкФ
Будет подавать ток в течении 300 сек и после этого прервется на 5 сек.

Материал взят отсюда. Там же есть онлайн калькулятор задержек.

Распиновка se555p

 

 

 

Возможные проблемы

При попытке залить скетч на плату Arduino возможно будут проблемы. Для этого надо попробовать убрать провод с пина Reset. После заливки скетча воткнуть провод обратно.

Категория: Электроника | Добавил: kimih (2015-01-29)
Просмотров: 2544 | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Поиск
Реклама