산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

PIR 센서 작동 방식 및 Arduino와 함께 사용하는 방법

<메인 클래스="사이트 메인" id="메인">

이 Arduino 튜토리얼에서는 PIR 센서가 작동하는 방식과 모션 감지를 위해 Arduino 보드와 함께 사용하는 방법을 배웁니다. 다음 비디오를 보거나 아래에 작성된 튜토리얼을 읽을 수 있습니다.

작동 방식

먼저 작동 원리를 설명하겠습니다. 모듈은 실제로 열에 노출될 때 에너지를 생성하는 초전기 센서로 구성됩니다.

 

<그림 클래스="aligncenter">

즉, 사람이나 동물의 몸이 센서 범위에 들어가면 사람이나 동물의 몸이 적외선 형태의 열 에너지를 방출하기 때문에 움직임을 감지합니다. 여기서 센서의 이름인 수동적외선(Passive Infra-Red) 센서에서 따온 것입니다. 그리고 "수동"이라는 용어는 센서가 감지 목적으로 에너지를 사용하지 않고 다른 물체에서 방출되는 에너지를 감지하여 작동함을 의미합니다.

<그림 클래스="aligncenter">

이 모듈은 또한 적외선 신호를 초전 센서에 집중시키는 Fresnel 렌즈라는 특수 설계된 덮개로 구성되어 있습니다.

<그림 클래스="aligncenter">

HC-SR501 PIR 센서 모듈

모듈에는 3개의 핀, 즉 모듈에 전원을 공급하기 위한 접지 및 VCC와 물체가 감지되는 경우 높은 논리 수준을 제공하는 출력 핀이 있습니다. 또한 두 개의 전위차계가 있습니다. 하나는 센서의 감도를 조정하기 위한 것이고 다른 하나는 물체가 감지되었을 때 출력 신호가 높게 유지되는 시간을 조정하기 위한 것입니다. 이 시간은 0.3초에서 최대 5분까지 조정할 수 있습니다.

<그림 클래스="aligncenter">

모듈에는 두 핀 사이에 점퍼가 있는 세 개의 핀이 더 있습니다. 이 핀은 트리거 모드를 선택하기 위한 것입니다. 첫 번째는 "비반복 트리거"라고 하며 다음과 같이 작동합니다. 센서 출력이 높고 지연 시간이 끝나면 출력이 자동으로 높은 수준에서 낮은 수준으로 변경됩니다. "반복 트리거"라고 하는 다른 모드는 감지된 물체가 센서의 범위 내에 있을 때까지 항상 출력을 높게 유지합니다.

이 튜토리얼에 필요한 구성요소

구성요소는 아래 사이트에서 얻을 수 있습니다.

회로도

이 튜토리얼의 예로 센서가 물체를 감지할 때 고전압 램프를 켜는 회로를 만들 것입니다. 다음은 회로도입니다. 센서의 출력 핀은 아두이노 보드의 8번 핀에 연결되며 물체가 감지되면 7번 핀이 릴레이 모듈을 활성화하고 고전압 램프가 켜집니다.

<그림 클래스="aligncenter">

릴레이 모듈의 작동 방식에 대한 자세한 내용은 내 Arduino 릴레이 자습서를 확인하십시오. (예시에서는 고전압을 사용하므로 주의가 필요합니다. 귀하의 행동에 대해 저는 어떠한 책임도 지지 않습니다.)

소스 코드

이 예제의 Arduino 코드는 다음과 같습니다. 아주 간단합니다. PIR 센서 핀을 입력으로, 릴레이 핀을 출력으로 정의하기만 하면 됩니다. digitalRead() 함수를 사용하여 센서의 출력을 읽고 센서가 높거나 물체가 감지되면 릴레이를 활성화합니다. 릴레이 모듈을 활성화하기 위해 릴레이 입력 핀이 반대로 작동하므로 로직 로우를 전송합니다.

/*     Arduini PIR Motion Sensor Tutorial
 *      
 *  by Dejan Nedelkovski, www.HowToMechatronics.com
 *  
 */
int pirSensor = 8;
int relayInput = 7;

void setup() {
  pinMode(pirSensor, INPUT);
  pinMode(relayInput, OUTPUT);  
}

void loop() {
  int sensorValue = digitalRead(pirSensor);

  if (sensorValue == 1) {
    digitalWrite(relayInput, LOW); // The Relay Input works Inversly
  }
}Code language: Arduino (arduino)

예제의 데모는 위에 첨부된 비디오의 끝에서 볼 수 있습니다. 센서 모듈에 전원을 공급한 후 제대로 작동하려면 "예열"하는 데 약 20~60초가 필요합니다. 이제 센서 앞에 손을 대면 릴레이가 램프를 활성화합니다. 그러나 계속 손을 움직여도 PIR 센서가 '비반복 트리거' 모드에 있기 때문에 조정된 지연 시간이 지나면 램프가 꺼집니다. 점퍼가 있는 센서를 '반복 트리거' 모드로 변경하고 계속 손을 움직이면 램프도 계속 켜져 있고 움직임이 사라지고 설정된 지연 시간이 지나면 꺼집니다.

제조공정

  1. PIR 센서 회로 및 모듈 작동
  2. 예제가 있는 C# 대기열:C# 대기열이란 무엇이며 어떻게 사용합니까?
  3. DHT11 센서(LED 및 피에조 스피커 포함)
  4. Arduino Mega를 NEO-6M GPS 모듈과 인터페이스하는 방법
  5. U-blox LEA-6H 02 GPS 모듈(Arduino 및 Python 포함)
  6. DHT11로 Blynk에서 온도와 습도를 읽는 방법
  7. 서미스터를 사용하는 것이 얼마나 쉬운가요?!
  8. Arduino와 함께 NMEA-0183을 사용하는 방법
  9. Arduino에서 Modbus를 사용하는 방법
  10. PIR 센서 및 Arduino를 통한 손쉬운 동작 및 제스처 감지