Limetime's TimeLine
article thumbnail
반응형

1. 초음파 센서란?

- 초음파를 발생시킨 후 그 초음파가 물체에 부딪혀서 돌아오는 시간을 계산하여 물체와의 거리를 알아내는 센서이다.

- 초음파를 발생시키는 TRIG 핀과 다시 돌아온 초음파를 받아들이는 ECHO 핀으로 구성되어 있다.

 

이를 이용해 물체와의 거리에 따라 삼원색 LED 불빛을 조절해 신호를 주는 시스템을 만들어보자!

<cpp />
#define TRIG 3 #define ECHO 2 #define RED 11 #define GREEN 10 #define BLUE 9 void setup() { // put your setup code here, to run once: Serial.begin(9600); pinMode(TRIG, OUTPUT); pinMode(ECHO, INPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(TRIG, LOW); delayMicroseconds(2); digitalWrite(TRIG, HIGH); delayMicroseconds(10); digitalWrite(TRIG, LOW); float distance = pulseIn(ECHO, HIGH) / 58.2; Serial.print("distance : "); Serial.println(distance); digitalWrite(RED, LOW); digitalWrite(GREEN, LOW); digitalWrite(BLUE, LOW); if(distance < 10){ digitalWrite(RED, HIGH); }else if(distance < 20){ digitalWrite(GREEN, HIGH); }else if(distance < 30){ digitalWrite(BLUE, HIGH); } delay(100); }
  • TRIG를 끄고  2 / 1,000,000초를 기다렸다가, TRIG를 켜고 10 / 1,000,000초를 기다렸다가 TRIG를 끈다.
  • pulseIn()은 반사된 초음파의 시간을 계산해주는 함수이고, 58.2를 나눔으로써 cm단위로 거리를 계산한다.
  • 거리가 10 미만이면 빨간불, 10 ~ 20이면 초록불, 20 ~ 30이면 파란불이 들어온다.

 

 

 

 

반응형
profile

Limetime's TimeLine

@Limetime

포스팅이 좋았다면 "공감❤️" 또는 "구독👍🏻" 해주세요!