본문 바로가기
C++

[C++] 아두이노로 노크센서 사용하기

by teamnova 2024. 4. 17.

안녕하세요

이번에는 아두이노로 노크센서를 사용해보겠습니다.

 

아두이노에 대해 기본적인 내용을 알고 싶다면 아래 게시글을 참고해주세요.

https://stickode.tistory.com/1044

 

[C++] 아두이노로 서보 모터 사용하기

이번 시간에는 아두이노로 서보 모터 사용하는 예제를 진행하겠습니다. 1. 아두이노란? 아두이노(Arduino)는 사용하기 쉬운 하드웨어와 소프트웨어를 기반으로 한 오픈 소스 전자 플랫폼입니다.

stickode.tistory.com

 

 

1. 노크센서란?

노크 센서는 두드리는 힘 즉, 충격을 감지하는 센서입니다.

구조는 위 그림과 같으며 충격이 없을 경우 HIGH, 충격을 감지하면 LOW 상태가 됩니다.

 

 

2. 준비물

아두이노, 브레드보드, 노크센서, LED를 준비합니다.

 

 

3. 회로도

노크센서가 충격을 감지할때마다 LED가 점등되도록 만들겠습니다.

 

 

4. 소스 코드

int sensor = 7; // 노크센서에 연결된 핀 번호
int led = 8;    // LED에 연결된 핀 번호

void setup() {
  pinMode(sensor, INPUT); // 노크센서 핀을 입력 모드로 설정
  pinMode(led, OUTPUT);   // LED 핀을 출력 모드로 설정
  
}

void loop() {
  int sensor_data = digitalRead(sensor); // 노크센서의 상태를 읽어옴
  
  if(sensor_data == HIGH) { // 노크 센서가 감지됐을 때
    digitalWrite(led, LOW); // LED를 끔
    
  } else if(sensor_data == LOW) { // 노크 센서가 감지되지 않았을 때
    digitalWrite(led, HIGH); // LED를 켜고
    delay(1000); // 1초 동안 대기
  }

}

 

 

5. 실행 결과