WIZwiki-W7500으로 PIR motion sensor 값을 받아 사람의 움직임을 체크해보자.

PIR motion sensor는 인체감지 센서로써, 사람의 움직임을 측정하는 센서이다. 

PIR motion sensor는 아주 미세하게 출력이 나오는데 이 출력을 증폭해서 MCU에서 바로 값을 받을수 있는 모듈이 있다.

나는 그 모듈을 사용했다. 그 모듈은 HC-SR501 이다.


HC-SR501은 위 위사진과 같이 생겼겼고, 가변저항을 통해 센서의 민감도나 측정 시간을 설정할수 있다.

입력 전압은 5V 이고 센서 출력 값은 0V or 3.3V로 출력이 된다. 인체의 움직임이 감지되면 3.3V를 출력하고, 인체의 움직임이 감지되지 않으면 0V를 출력한다.

  • 인체 움직임 감지하면 - 3.3V

  • 인체 움직임 감지하지 못하면 - 0V



이것을 토대로 위와 같은 회로로 구성을 하고, WIZwiki-W7500으로 mbed에서 코드를 작성해 보았다.
<코드>

// PIR Motion Sensor Modlue : HC-SR501
#include "mbed.h"
 
DigitalOut myled(LED1);
DigitalIn PIR(D8);
 
Serial pc(USBTX, USBRX);
 
int main() {
    pc.baud(115200);
    wait(0.5f);
    pc.printf("Hello WizWIki-W7500!\n\r");
    pc.printf("===========================================\n\r");
    int PIR_sensor;
    while(1) {
        PIR_sensor = PIR;
        pc.printf("PIR Value : %d\r\n",PIR_sensor);
        myled =! PIR_sensor;
        wait(0.1f);
    }
}

<mbed code URL>

https://developer.mbed.org/teams/WIZnet/code/PIR_Motion_Sensor_WIZwiki-W7500/


<출력 값>



+ Recent posts