Ложное срабатывание датчика движения с ардуино
- Войдите на сайт для отправки комментариев
Вс, 07/02/2021 - 23:48
Всё собрал по данному скетчу
#define PIN_PIR 2
#define PIN_LED 13
void setup() {
Serial.begin(9600);
pinMode(PIN_PIR, INPUT);
pinMode(PIN_LED, OUTPUT);
}
void loop() {
int pirVal = digitalRead(PIN_PIR);
Serial.println(digitalRead(PIN_PIR));
//Если обнаружили движение
if (pirVal)
{
digitalWrite(PIN_LED, HIGH);
Serial.println("Motion detected");
delay(10000);
}
else
{
//Serial.print("No motion");
digitalWrite(PIN_LED, LOW);
}
}
Выход цифрового контакта идет на базу транзистор.
И казалось бы, вроде всё работает нормально. Датчик движения видит человека - срабатывает, подает питание на базу, транзистор открывается, и по нему течет ток на светодиодную ленту.
Но проблема в том, что он срабатывает даже когда НИКОГО НЕТ РАДОМ!!
Я просто издалека вижу как он включается и отключается.
Поставил такой же скетч на вторую ардуинку.
Только там вместо транзистора - реле, коммутирующая лампу 220в
Ситуация такая же!
Самопроизвольное включение!
Ардуинки нано
Подскажите пожалуйста, что я делаю не так??!
А что, у самого датчика светодиода нет?
Если есть - как он себя ведет безо всякой Ардуинки?
Если нет - подключите к выходу через резистор и точно так же проверьте.
А что, у самого датчика светодиода нет?
Если есть - как он себя ведет безо всякой Ардуинки?
Если нет - подключите к выходу через резистор и точно так же проверьте.
У датчика нет светодиода. Вот здесь брал https://aliexpress.ru/item/4000203239929.html?spm=a2g0o.productlist.0.0.2e0f64d9TMujQl&algo_pvid=ad735ab8-3cca-49d4-bdfe-df2192e282e8&algo_expid=ad735ab8-3cca-49d4-bdfe-df2192e282e8-14&btsid=0b8b034a16127280626954569e9a61&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_
INPUT_PULLUP
Вместо pinMode(PIN_PIR, INPUT);
прописать pinMode(PIN_PIR, INPUT_PULLUP);
?
Вместо pinMode(PIN_PIR, INPUT);
прописать pinMode(PIN_PIR, INPUT_PULLUP);
?
И код, наконец, вставить по-человечески!
А что, у самого датчика светодиода нет?
Если есть - как он себя ведет безо всякой Ардуинки?
Если нет - подключите к выходу через резистор и точно так же проверьте.
У датчика нет светодиода. Вот здесь брал ...
Я не спрашивал, где Вы его брали. Я посоветовал Вам подключить к выходу датчика светодиод, чтобы проверить, как датчик работает сам про себе без Ардуины. Обсуждать скетч, не зная, исправен ли датчик, бессмысленно.
не помогло
не помогло
вывсёврёти!!!
А что, у самого датчика светодиода нет?
Если есть - как он себя ведет безо всякой Ардуинки?
Если нет - подключите к выходу через резистор и точно так же проверьте.
У датчика нет светодиода. Вот здесь брал ...
Я не спрашивал, где Вы его брали. Я посоветовал Вам подключить к выходу датчика светодиод, чтобы проверить, как датчик работает сам про себе без Ардуины. Обсуждать скетч, не зная, исправен ли датчик, бессмысленно.
Подключил отдельно к датчику светодиод с резиком.
Спецом установил датчик в темную коробку - всё ок - не срабатывает.
Стоит его оттуда вынуть - подает сигнал на светодиод, через секунду гаснет, затем снова и снова.
Может сквозняки ловит
Спецом установил датчик в темную коробку - всё ок - не срабатывает.
Стоит его оттуда вынуть - подает сигнал на светодиод, через секунду гаснет, затем снова и снова.
Если Вас такое поведение устраивает - используйте. Если не устраивает - Ардуина его "исправить" не может.
Всё собрал по данному скетчу
Попытаемся понять схему данного устройства. На фото с али не видно номинала транзистора (или чего-то там) - что-то типа "HT3..."
Попытайтесь почитать с аналогового входа. Судя по схеме сборки - там есть возможность регулировать срабатывание от уровня освещенности.
Ладно - разобрался. Читайте документ по этому модулю. Чтобы он не реагировал на каждый пук - надо заменить резистор чувствительности. ВНИМАТЕЛЬНО ЧИТАЙТЕ
Ладно - разобрался. Читайте документ по этому модулю. Чтобы он не реагировал на каждый пук - надо заменить резистор чувствительности. ВНИМАТЕЛЬНО ЧИТАЙТЕ
ок, спасибо!!!