Переодические ложные сигналы PIR
- Войдите на сайт для отправки комментариев
Пнд, 12/06/2017 - 02:17
Доброго времени суток!
Есть такой зверь: при обнаружении движения замыкает реле на 100 мсек. Перемычка на PIR в режиме L.
Всё прекрасно работает с одним но: ровно через 4 часа после включения срабатывает условие и реле замыкается, спустя ещё 4 часа ещё раз срабатывает и так далее. В эти моменты срабатывания нет никакого движения. Если убрать соединение со вторым пином, то левые срабатывания прекращаются (как и, соответственно, вообще какие-нибудь). Подтягивающий к земле резистор вывода PIR датчика не помог никак.
Перепробовано 2 разных PIR датчика, ситуация абсолютно такая же. Почему так происходит и откуда период в 4 часа? Прикрепляю скетч и "схему".
Заранее благодарен.
int pir = 2;
int relay = 4;
bool first_run = true;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
pinMode(pir, INPUT);
pinMode(relay, OUTPUT);
digitalWrite(relay, HIGH);
}
void loop() {
if (first_run)
{
first_run = false;
digitalWrite(LED_BUILTIN, HIGH);
delay(60000);
digitalWrite(LED_BUILTIN, LOW);
}
else
{
if (digitalRead(pir) == HIGH)
{
digitalWrite(relay, LOW);
delay(100);
digitalWrite(relay, HIGH);
digitalWrite(LED_BUILTIN, HIGH);
delay(300000);
digitalWrite(LED_BUILTIN, LOW);
}
}
}

У меня подобная ситуация с PIR, только ложные срабатывания PIR при звонке или отправки смс на или с SIM900.
Использование одной земли при подключении результата не дало, опять всё те же 4 часа.
Использование одной земли при подключении результата не дало, опять всё те же 4 часа.
1. Отчего питаетесь? А если питаться от батареи, есть сбои?
2. Какой длинны провода к PIR?
Если убрать соединение со вторым пином, то левые срабатывания прекращаются (как и, соответственно, вообще какие-нибудь).
Собственно это почти ответ - ищите помеху приходящую от PIR. В конце концов соберите стенд без ардуины, только PIR с его соединением и попробуйте поймать раз в четыре часа.
В качестве бреда: а что у Вас в доме включается раз в 4 часа? Может насос какой нибудь... холодильник.. :)