И все таки Watchdog. Как быть.
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
И все таки Watchdog. Как быть.
Добрый день.
Имеется автоматика.
Все с ней нормально, работает без проблемм.
На ней три твердотельных реле и одно контактное. Контактное реле тоже помех не вызывает
Появляются проблемы когда вставляешь вилку( от вентилятора) в розетку, проскакивает искра и по экрану кракозябры и ардуино нано виснет.
Перешил загрузчик,от Уно. не помогает.
Может я не все условия выполняю.?
Может еще в ручную в код что то нужно добавить.
В программе защиту от зависания включил.
Кто может пошагово объяснить, показать если возможно?.
Вот этот тест проходит
[spoiler]#include <avr/wdt.h>
void setup() {
wdt_disable(); // бесполезная строка до которой не доходит выполнение при bootloop
Serial.begin(9600);
Serial.println("Setup..");
Serial.println("Wait 5 sec..");
delay(5000); // Задержка, чтобы было время перепрошить устройство в случае bootloop
wdt_enable (WDTO_8S); // Для тестов не рекомендуется устанавливать значение менее 8 сек.
Serial.println("Watchdog enabled.");
}
int timer = 0;
void loop(){
// Каждую секунду мигаем светодиодом и значение счетчика пишем в Serial
if(!(millis()%1000)){
timer++;
Serial.println(timer);
digitalWrite(13, digitalRead(13)==1?0:1); delay(1);
}
// wdt_reset();
}[/spoiler]
[spoiler]Setup..
Wait 5 sec..
Watchdog enabled.
1
2
3
4
5
6
7
8
9
10
Setup..
Wait 5 sec..
[/spoiler]
Вот тут постарался собрать и показать , все что мне понадобилось для включения сторожевого таймера "Watchdog"
Видео и файлы. Сильно не орать на меня, сделал как умею))
Яндекс диск
Имеется автоматика.
Все с ней нормально, работает без проблемм.
На ней три твердотельных реле и одно контактное. Контактное реле тоже помех не вызывает
Появляются проблемы когда вставляешь вилку( от вентилятора) в розетку, проскакивает искра и по экрану кракозябры и ардуино нано виснет.
Перешил загрузчик,от Уно. не помогает.
Может я не все условия выполняю.?
Может еще в ручную в код что то нужно добавить.
В программе защиту от зависания включил.
Кто может пошагово объяснить, показать если возможно?.
Вот этот тест проходит
[spoiler]#include <avr/wdt.h>
void setup() {
wdt_disable(); // бесполезная строка до которой не доходит выполнение при bootloop
Serial.begin(9600);
Serial.println("Setup..");
Serial.println("Wait 5 sec..");
delay(5000); // Задержка, чтобы было время перепрошить устройство в случае bootloop
wdt_enable (WDTO_8S); // Для тестов не рекомендуется устанавливать значение менее 8 сек.
Serial.println("Watchdog enabled.");
}
int timer = 0;
void loop(){
// Каждую секунду мигаем светодиодом и значение счетчика пишем в Serial
if(!(millis()%1000)){
timer++;
Serial.println(timer);
digitalWrite(13, digitalRead(13)==1?0:1); delay(1);
}
// wdt_reset();
}[/spoiler]
[spoiler]Setup..
Wait 5 sec..
Watchdog enabled.
1
2
3
4
5
6
7
8
9
10
Setup..
Wait 5 sec..
[/spoiler]
Вот тут постарался собрать и показать , все что мне понадобилось для включения сторожевого таймера "Watchdog"
Видео и файлы. Сильно не орать на меня, сделал как умею))
Яндекс диск
Последний раз редактировалось pipapsix 12 фев 2019, 19:40, всего редактировалось 2 раза.
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
И все таки Watchdog. Как быть.
Сэр у вас проблема не софта а железа. Не туда копаете. Вентилятор рабочий?
А что произойдёт если вы вместо вентилятора простую лампочку ватт на 100 воткнёте?
искра и по экрану это серьёзно. огнетушитель рядом держите.
Схема подключения где? Каким образом запитана ардуина?
По ходу проблема с питанием.
Что бы вам помочь нужно побольше информации.......
А что произойдёт если вы вместо вентилятора простую лампочку ватт на 100 воткнёте?
искра и по экрану это серьёзно. огнетушитель рядом держите.
Схема подключения где? Каким образом запитана ардуина?
По ходу проблема с питанием.
Что бы вам помочь нужно побольше информации.......
Качество — это делать что-либо правильно, даже когда никто не смотрит
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
И все таки Watchdog. Как быть.
[ref]Grafsaxar[/ref],
Разве я не правильно понимаю что Сторожевой таймер, должен перезапустить и все. Или в этом случае ардуина виснет безвозвратно?.
Я понимаю что никто специально искрить не будет, но защита все рано нужна.
[spoiler] [/spoiler]
Отправлено спустя 1 минуту 12 секунд:
100% рабочий.
Провожу краш тест)) беру провода от лампочки и добиваюсь искр на контактах 220в. ну, тупо не зажимаю клеммами а прислоняю, зависает но не всегда, один раз из 15-20.Grafsaxar писал(а): 12 фев 2019, 13:46А что произойдёт если вы вместо вентилятора простую лампочку ватт на 100 воткнёте?
Разве я не правильно понимаю что Сторожевой таймер, должен перезапустить и все. Или в этом случае ардуина виснет безвозвратно?.
Я понимаю что никто специально искрить не будет, но защита все рано нужна.
[spoiler] [/spoiler]
Отправлено спустя 1 минуту 12 секунд:
Я понимаю что не софта, он не один месяц работает и не на одном устройстве.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
И все таки Watchdog. Как быть.
Совершенно верно.pipapsix писал(а): 12 фев 2019, 14:03Разве я не правильно понимаю что Сторожевой таймер, должен перезапустить и все. Или в этом случае ардуина виснет безвозвратно?.
Я понимаю что никто специально искрить не будет, но защита все рано нужна.
Но по своему опыту скажу что он не всегда перезапускает контролер.
Надо бороться с зависанием. Вдруг в ответственный момент зависнет и дом сгорит:((
На плате 2 детальки с 8 ногами, это гальваническая развязка?
Как ардуино получает 5 вольт?
На сколько мкф. Конденсатор?
Качество — это делать что-либо правильно, даже когда никто не смотрит
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
И все таки Watchdog. Как быть.
Юзал пару дней пример выше с оптибутом. Результат плачевный. Уходит в бесконечный ребут.
Пока 555 использую.
Стоит попробовать фьюз SUT0-SUT1. Если не будет результата, то переход AVR studio в общем без загрузчика.
Пока 555 использую.
Стоит попробовать фьюз SUT0-SUT1. Если не будет результата, то переход AVR studio в общем без загрузчика.
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
И все таки Watchdog. Как быть.
С 6 ногами, оптопары.
Вот такой ипользую.
[spoiler] [/spoiler]
16в 470мФ. и керамический 100nF
Нет. подходит к ногам МК.
Их выбрать? остальные не трогать??
Я могу прямо сейчас это использовать? мой проэкт, без переделок глобальных?benic писал(а): 12 фев 2019, 15:02Если не будет результата, то переход AVR studio в общем без загрузчика
Отправлено спустя 4 минуты 21 секунду:
И вопрос без ответа остался.
Как включить Watchdog? в самом проэкте, просто выбрать включить и все?
#include <avr/wdt.h> это негде потом не отображается.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
И все таки Watchdog. Как быть.
ну видимо в сетапе нужно написать что-то вроде wdt_enable(WDTO_1S); или сколько там надо секунд
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
И все таки Watchdog. Как быть.
Ну вроде как разобрался,.
теперь то что и требовалось. Проскакивает искра, МК зависает и через 8 сек перезагрузка, это радует.
Не радует, то что это вообще происходит, теперь нужно как то с этим бороться, только как?хз.
Несколько новых вопросов появилось.
wdt_enable (WDTO_8S); сколько секунд выставлять? 8 или меньше?
Как правильно оформлять в коде??
имеет ли значение в начале или в конце void loop()?
[spoiler] {
wdt_enable (WDTO_8S);
}[/spoiler]
Так же не понятка с размером загрузчиков, прошил с большим размером.
Это вообще как? 1111и 2222 я просто подписал для себя.
[spoiler] [/spoiler]
теперь то что и требовалось. Проскакивает искра, МК зависает и через 8 сек перезагрузка, это радует.
Не радует, то что это вообще происходит, теперь нужно как то с этим бороться, только как?хз.
Несколько новых вопросов появилось.
wdt_enable (WDTO_8S); сколько секунд выставлять? 8 или меньше?
Как правильно оформлять в коде??
имеет ли значение в начале или в конце void loop()?
[spoiler] {
wdt_enable (WDTO_8S);
}[/spoiler]
Так же не понятка с размером загрузчиков, прошил с большим размером.
Это вообще как? 1111и 2222 я просто подписал для себя.
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
И все таки Watchdog. Как быть.
Много слышал но сам не пробовал. Считаю это самый надёжный вариант.
Схема есть?
----------------------------------------------------------
поговаривают что незадействованные ноги надо подтянуть на массы.
Но я в это пока не верю, т.к. у многих и так работает.
Думаю дело в 220>12в . Была тоже такая проблема.
Надо осцилоскопом прозвонить в момент включения и выключения вентилятора.
чтобы исключить ошибку питания , подключите ардуино на простой батарейке.
Откройте бутылочку пива и искрите на здоровье:)))
Качество — это делать что-либо правильно, даже когда никто не смотрит
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
И все таки Watchdog. Как быть.
А для надежности, какие номиналы поставить кондеров? проверить же нужно.Grafsaxar писал(а): 12 фев 2019, 17:28Думаю дело в 220>12в . Была тоже такая проблема.
Надо осцилоскопом прозвонить в момент включения и выключения вентилятора.
Вот сейчас пока проверял, одну автоматику, зависла вторая которая стоит в двух метрах.
Это что за импульс то такой, как будто ЭМП стреляет рядом))
ААА. забыл сказать что вентиляторы СССР производства, надежные как танк)
Да 100% в нем. как это победить то?Grafsaxar писал(а): 12 фев 2019, 17:28чтобы исключить ошибку питания , подключите ардуино на простой батарейке.
Автоматики идентичные , до мелочи.
У меня как раз созрело пивко, придется открывать.
Будьте все здоровы.
И все таки Watchdog. Как быть.
Постой!
Файлы давай,кода кусок и фьюзов скрин.
А то так и не пошло у меня.

Файлы давай,кода кусок и фьюзов скрин.
А то так и не пошло у меня.
И все таки Watchdog. Как быть.
сколько секунд это вам решать. так то для мк и 1 секудна это много.pipapsix писал(а): 12 фев 2019, 17:18wdt_enable (WDTO_8S); сколько секунд выставлять? 8 или меньше?
Как правильно оформлять в коде??
я выше написал вроде что в сетап надо вставлять.
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
И все таки Watchdog. Как быть.
Что то у вас странное электроснабжение???
Какое сечение провода? Какой предохранитель стоит?
Есть ли возможность запитать вентилятор от другой фазы?
Попробуйте трансформаторный советский блок питания.
Может это желание советского вентилятора:)))
Качество — это делать что-либо правильно, даже когда никто не смотрит
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
И все таки Watchdog. Как быть.
[ref]Grafsaxar[/ref],
Питание 1.5 квадрата. Пропаяно все.
Предохранителя нет, и где должен быть?
Фаза только одна.
Питание 1.5 квадрата. Пропаяно все.
Предохранителя нет, и где должен быть?
Фаза только одна.
- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
И все таки Watchdog. Как быть.
В центральном щите .
Попробуйте с суперконденсатором.
Как вариант 2 можно запитать от аккумулятора а на него повесьте зарядное устройство.
Качество — это делать что-либо правильно, даже когда никто не смотрит
И все таки Watchdog. Как быть.
Делал по этой схеме, сначала все отлично работает (у меня с NRF постоянно виснет)но через некоторое время постоянно перезагружается пока питание не передернишь..Пробывал время конденсатором увеличивать, не помогло...Как будто в резонанс какой входит.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Лейтенант
- Сообщения: 438
- Зарегистрирован: 25 окт 2016, 21:26
- Откуда: Волгоградская обл.
- Имя: СашкаСаняАлександр
- Благодарил (а): 1 раз
- Поблагодарили: 4 раза
- kulibinsvv
- Лейтенант
- Сообщения: 487
- Зарегистрирован: 18 сен 2015, 10:04
- Откуда: Омск
- Благодарил (а): 3 раза
- Поблагодарили: 5 раз
И все таки Watchdog. Как быть.
[ref]Saman[/ref], если вы внимательно читали статью, из которой приводите схему, то должны были прочитать, что при отсутствии импульсов на входе WDI таймер будет каждые ~ 5 сек. посылать импульс сброса, до тех пор пока они (импульсы) не появятся.
Мой змей, этот ползучий соблазн сомнения,всё шевелится, побуждая «искать концы»... (Станислав Ермаков)
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя