Проход по ссылкам навигацииГлавная : Статьи :

Инфракрасный датчик движения (PIR сенсор)

Инфракрасный датчик движения (PIR сенсор)

Роботы Ниже представлена Бп switching power supply sl-500 схема датчика движения с Из чего можна выпаять диод 4вольта использованием Arduino. Роботы В качестве датчика, Блок фильтров для сабвуфера lm324 мы будем Управление датчика движения на симисторе использовать PIR-сенсор Роботы (Passive Infrared Бп switching power supply sl-500 sensor), т.е. Из чего можна выпаять диод 4вольта пассивный ИК датчик. PIR-сенсоры Роботы основаны на методике измерения Блок фильтров для сабвуфера lm324 инфракрасного излучения от Роботы обьектов.

Роботы


Управление датчика движения на симисторе Итак, для создания ИК датчика Роботы движения Роботы нам понадобятся Бп switching power supply sl-500 следующие компоненты:
- контроллер Из чего можна выпаять диод 4вольта Arduino;
- Роботы макетная плата;
- Блок фильтров для сабвуфера lm324 1 светодиод;
Управление датчика движения на симисторе - PIR Роботы сенсор фирмы Бп switching power supply sl-500 Parallax;
- провода.

Из чего можна выпаять диод 4вольта Схема подключения датчика движения Роботы (PIR) к контроллеру Arduino Блок фильтров для сабвуфера lm324 простейшая:



PIR-сенсор имеет 3 Управление датчика движения на симисторе вывода: плюс, минус и выход. Роботы К Роботы 7-му выводу Бп switching power supply sl-500 Arduino подключаем выход PIR-сенсора. Из чего можна выпаять диод 4вольта Также, присоединим Роботы светодиод к выводу Блок фильтров для сабвуфера lm324 8 Arduino Управление датчика движения на симисторе и GND.

Роботы Исходный код Бп switching power supply sl-500 программы взят с Из чего можна выпаять диод 4вольта официального сайта arduino.cc:

Роботы


Роботы /*
 * //////////////////////////////////////////////////
 * Блок фильтров для сабвуфера lm324 //making sense of Роботы the Управление датчика движения на симисторе Parallax PIR sensor's output
 * Роботы //////////////////////////////////////////////////
 Роботы *
 * Бп switching power supply sl-500 Switches a LED according Из чего можна выпаять диод 4вольта to the Роботы state of the Блок фильтров для сабвуфера lm324 sensors output Управление датчика движения на симисторе pin.
 * Роботы Determines the Бп switching power supply sl-500 beginning and end Из чего можна выпаять диод 4вольта of continuous motion sequences.
 Роботы *
 * @author: Kristian Блок фильтров для сабвуфера lm324 Gohlke / krigoo Роботы (_) Управление датчика движения на симисторе gmail (_) com / http://krx.Роботы at
 Роботы * @date:   Бп switching power supply sl-500 3. September 2006
 Из чего можна выпаять диод 4вольта *
 * kr1 Роботы (cleft) 2006
 * Блок фильтров для сабвуфера lm324 released under Управление датчика движения на симисторе a creative Роботы commons "Attribution-NonCommercial-ShareAlike Бп switching power supply sl-500 2.0" license
 Из чего можна выпаять диод 4вольта * http://creativecommons.org/licenses/by-nc-sa/2.0/de/
 Роботы *
 *
 * The Блок фильтров для сабвуфера lm324 Parallax PIR Sensor Роботы is Управление датчика движения на симисторе an easy to use digital Роботы infrared Роботы motion sensor Бп switching power supply sl-500 module.
 * (http://www.parallax.Из чего можна выпаять диод 4вольта com/detail.asp?Роботы product_id=555-28027)
 *
 * Блок фильтров для сабвуфера lm324 The sensor's Управление датчика движения на симисторе output pin Роботы goes to Бп switching power supply sl-500 HIGH if motion Из чего можна выпаять диод 4вольта is present.
 * However, Роботы even if motion is Блок фильтров для сабвуфера lm324 present it goes Роботы to Управление датчика движения на симисторе LOW from time to time,
 Роботы * Роботы which might Бп switching power supply sl-500 give the impression no Из чего можна выпаять диод 4вольта motion is Роботы present.
 * This Блок фильтров для сабвуфера lm324 program deals Управление датчика движения на симисторе with this Роботы issue by Бп switching power supply sl-500 ignoring LOW-phases shorter Из чего можна выпаять диод 4вольта than a given time,
 Роботы * assuming continuous motion Блок фильтров для сабвуфера lm324 is present during Роботы these Управление датчика движения на симисторе phases.
 * 
 */
 
/////////////////////////////
//VARS
Роботы //Время Роботы калибровки датчика Бп switching power supply sl-500 (10-60 сек. по даташиту)
Из чего можна выпаять диод 4вольта int calibrationTime Роботы = 30;       
 
//the Блок фильтров для сабвуфера lm324 time when Управление датчика движения на симисторе the sensor Роботы outputs a Бп switching power supply sl-500 low impulse
long Из чего можна выпаять диод 4вольта unsigned int lowIn;        
 
//the Роботы amount of milliseconds the Блок фильтров для сабвуфера lm324 sensor has to Роботы be Управление датчика движения на симисторе low
//before we assume all Роботы motion Роботы has stopped
Бп switching power supply sl-500 long unsigned int pause Из чего можна выпаять диод 4вольта = 5000; 
 
Роботы boolean lockLow = Блок фильтров для сабвуфера lm324 true;
boolean Управление датчика движения на симисторе takeLowTime; 
 
int Роботы pirPin = Бп switching power supply sl-500 7;    //вывод подключения Из чего можна выпаять диод 4вольта PIR сенсора
int ledPin Роботы = 8;
 
 
/////////////////////////////
//SETUP
Блок фильтров для сабвуфера lm324 void setup(){
  Serial.Роботы begin(9600);
  Управление датчика движения на симисторе pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  digitalWrite(pirPin, Роботы LOW);
 
  Роботы //дадим датчику Бп switching power supply sl-500 время на калибровку
  Serial.Из чего можна выпаять диод 4вольта print("calibrating sensor Роботы ");
    for(int i Блок фильтров для сабвуфера lm324 = 0; Управление датчика движения на симисторе i < Роботы calibrationTime; i++){
      Бп switching power supply sl-500 Serial.print(".");
      Из чего можна выпаять диод 4вольта delay(1000);
      }
    Serial.println(" Роботы done");
    Serial.println("SENSOR ACTIVE");
    Блок фильтров для сабвуфера lm324 delay(50);
  }
 
////////////////////////////
Роботы //LOOP
Управление датчика движения на симисторе void loop(){
 
     if(digitalRead(pirPin) == HIGH){
       Роботы digitalWrite(ledPin, Роботы HIGH);   //the Бп switching power supply sl-500 led visualizes the sensors Из чего можна выпаять диод 4вольта output pin Роботы state
       if(lockLow){ 
         //makes Блок фильтров для сабвуфера lm324 sure we Управление датчика движения на симисторе wait for Роботы a transition Бп switching power supply sl-500 to LOW before Из чего можна выпаять диод 4вольта any further output is Роботы made:
         lockLow = false;           
         Блок фильтров для сабвуфера lm324 Serial.println("---");
         Serial.Роботы print("motion Управление датчика движения на симисторе detected at ");
         Роботы Serial.print(millis()/1000);
         Serial.Роботы println(" sec");
         Бп switching power supply sl-500 delay(50);
         }        
         takeLowTime = Из чего можна выпаять диод 4вольта true;
       }
 
     Роботы if(digitalRead(pirPin) == LOW){      
       Блок фильтров для сабвуфера lm324 digitalWrite(ledPin, LOW);  Управление датчика движения на симисторе //the led Роботы visualizes the Бп switching power supply sl-500 sensors output pin Из чего можна выпаять диод 4вольта state
 
       if(takeLowTime){
        lowIn = Роботы millis();          //save the time Блок фильтров для сабвуфера lm324 of the transition Роботы from Управление датчика движения на симисторе high to LOW
        takeLowTime = Роботы false;       Роботы //make sure Бп switching power supply sl-500 this is only done Из чего можна выпаять диод 4вольта at the Роботы start of a Блок фильтров для сабвуфера lm324 LOW phase
        Управление датчика движения на симисторе }
       //if Роботы the sensor Бп switching power supply sl-500 is low for Из чего можна выпаять диод 4вольта more than the given Роботы pause,
       //we assume that Блок фильтров для сабвуфера lm324 no more motion Роботы is Управление датчика движения на симисторе going to happen
       if(!lockLow && Роботы millis() - Бп switching power supply sl-500 lowIn > pause){ 
           //makes Из чего можна выпаять диод 4вольта sure this Роботы block of code Блок фильтров для сабвуфера lm324 is only Управление датчика движения на симисторе executed again Роботы after
           //a Бп switching power supply sl-500 new motion sequence Из чего можна выпаять диод 4вольта has been detected
           lockLow Роботы = true;                       
           Serial.print("motion Блок фильтров для сабвуфера lm324 ended at ");      Роботы //output
           Управление датчика движения на симисторе Serial.print((millis() - pause)/1000);
           Serial.Роботы println(" Роботы sec");
           delay(50);
           Бп switching power supply sl-500 }
       }
  }


В Из чего можна выпаять диод 4вольта скетче Arduino Роботы видно, что датчик Блок фильтров для сабвуфера lm324 проводит сУправление датчика движения на симисторе амодиагностику, а затем Роботы переходит в Бп switching power supply sl-500 режим отслеживания движений. Из чего можна выпаять диод 4вольта Когда движение обнаружено, то Роботы загорается светодиод. По Serial Блок фильтров для сабвуфера lm324 Monitor вы можете Роботы отслеживать Управление датчика движения на симисторе сколько по времени длилось движение.

Роботы Данный Роботы проект можно Бп switching power supply sl-500 использовать как основу для Из чего можна выпаять диод 4вольта обнаружения дРоботы вижения в охранных сигнализациях, Блок фильтров для сабвуфера lm324 для включения Управление датчика движения на симисторе освещения, в Роботы робототехнике и Бп switching power supply sl-500 т.п.