IMG_1071_

Автоматическое включение света в ванной. Счетчик посетителей

На основе ИК датчиков и Arduino pro min  сделал счетчик посетителей. Программа определяет направление движения и если кто то зашел в ванную автоматически включается свет.

ИК датчик

sku_148556_3

Датчики в дверном проеме. Устанавливал уже в установленную дверную коробку, просверлив два отверстия на 18 мм перьевым сверлом.  Arduino стоит за наличником дверной коробки.

IMG_1071_

Герконы покупал врезные

Встроенный-тип-сигнализации-магнитный-датчик-DoorWindow-встраиваемые-геркон-Белый

Так выглядит геркон в дверной коробке

IMG_1278!

А это магнит в двери
IMG_1280!

Код для Arduino

bool flag=0;
bool flag2=0;
bool state=0;
bool state2=0;
int DoorPin = 10; //Геркон
int pause=500;
int StatusDoor=0;
int status1=0;
int status2=0;
 
void setup(){          
	// Serial.begin(9600);
	 pinMode(13,OUTPUT);  // Импульс если зашли
         pinMode(12,OUTPUT);  // Импульс если вышли
         pinMode(DoorPin, INPUT);  //
         digitalWrite(DoorPin, HIGH);  // включить подтягивающий резистор
         pinMode(2, INPUT);
         pinMode(3, INPUT);
         digitalWrite( 12 , LOW );
         digitalWrite( 13 , LOW );
	    }
void loop(){
  StatusDoor = digitalRead(DoorPin);    // узнаём состояние двери
  if(StatusDoor==HIGH){                 // Если Дверь открыта, считаем сколько зашло
	  if(!digitalRead(2) && !flag){
	    delay(5);
	    flag = 1;
	      if(flag2 == 0){
	         state = 1;
	      }
	  }
         if(!digitalRead(3) && !flag2) {
	    delay(5);
	    flag2 = 1;
	       if(flag == 0) {
	       state2 = 1;
	      }
         }
	 if(digitalRead(3) && digitalRead(2)) {
     	    if(!flag || !flag2){
	        state = 0;
	        state2 = 0;
	        flag = 0;
	        flag2 = 0;
	    }  
           if(flag && state2){ //Зашли
              digitalWrite( 13 , HIGH );
              delay(pause);
              digitalWrite( 13 , LOW );
	      flag = 0;
	      flag2 = 0;
	      state2 = 0;
	   }
	   if(flag2 && state){ //Вышли
              digitalWrite( 12 , HIGH );
              delay(pause);
              digitalWrite( 12 , LOW );
	      flag = 0;
	      flag2 = 0;
              state = 0;
	   }
	 }
  }
}

Отправить ответ

9 Комментарий на "Автоматическое включение света в ванной. Счетчик посетителей"

avatar
Сортировать:   Новые вначале | Старые вначале | По голосам
Владимир
Гость

Если Вас не затруднит, можно подробнее про датчики. Модель, аналоги.
Как определяется статус двери?
Буду благодарен ответу на почту ar4er06@mail.ru

алекс
Гость

как вы монтировали эти датчики в коробку? уже на установленной?

фото установки геркона тоже было бы интересно

алекс
Гость
Андрей
Гость

Добрый день, хочу у себя использовать датчики E18-D80NK, как они у вас работают? есть жалобы на них?

Tim
Гость

большая просьба, если можно написать код для одной ардуины управления светом в ванной на основе счетчика посетителей, я про эту статью: geektimes.ru/post/270140
у меня каждая ардуина сама по себе (без основного контроллера)

wpDiscuz