본문 바로가기
전기/Arduino

[Arduino] HC-SR04 (초음파 센서) #1

by 자유로운 생활 2023. 1. 23.
728x90
반응형

Ultrasonic Ranging Module : HC-SR04

(* ultrasonic : 초음파의)

 

1. Specification and Apperance

 

아두이노를 이용해서 초음파 센서를 동작시켜보려 합니다.

 

먼저 Datasheet를 확인해 봅시다.

HC-SR04

5V DC 전원을 이용하고, 2~500 cm 사이를 측정할 수 있나 보네요.

 

가지고 있는 HC-SR04 실물(전면/후면)

실제 제가 가지고 있는 HC-SR04 실물입니다.

 

4개의 pin은 각각 Vcc, Trig, Echo, Gnd 라고 표기되어 있네요.

원기둥처럼 생긴 무언가가 2개 있네요.

 

왼쪽 원기둥이 어떤 신호를 내보내는 역할,

오른쪽 원기둥이 반사된 신호를 받는 역할

 

Trig : Send the ultraound wave from the transmitter

Echo : Listen for the reflected signal

 

뭔가 신호를 발사하고,

발사한 신호가 어떤 피사체에 부딛힌 후 다시 돌아오는 신호를 감지해서

거리를 측정할 것 같은 느낌이 듭니다.

 

 

2. How it works?

 

Sequencd chart of HC-SR04 datasheet

1. 초음파를 발생시키기 위해서, Trig 핀이 10us 동안 High가 되도록 설정

2. 그 결과로 8개의 40kHz pulse가 출력되어 측정 대상을 향함(소리의 속도)

3. 8개의 pulse가 내보내지면 Echo 핀은 High가 되고, High 상태를 유지하며 반사되어 돌아올 신호를 기다림

4. 만약 측정 대상이 없거나, 반사되어 돌아오는 pulse가 없으면 38ms 이 후, Low가 됨

5. 반사되어 돌아오면 Echo 핀 Low가 됨

6. Echo 핀이 High를 유지하는 시간을 이용하여 거리를 측정할 수 있음

 

요약

대충 요약해보자면 이런 순서로 동작하는 것 같죠?

Echo 핀에서 발생되는 신호를 감지하는 것이

거리 측정의 핵심인 것 같습니다.

 

3. Is the Flow Chart true?

의심이 많은 전, 직접 확인해 봐야겠습니다.

데이터시트가 지금 거짓말을 하고 있는지 아닌지!

 

(농담이고, 직접 측정해봐야 오래 기억에 남는 것 같아요,

이렇게 포스팅하는데 파형도 몇 개 더 추가할 수 도 있구요 ㅋㅋ)

Oscilloscope Waveform

위의 파형은 HC-SR04를 아두이노 보드에 연결 후 

동작시킨 결과파형입니다.

 

오실로스코프(Oscilloscope)로 측정한 결과파형!

(아주 초저가의 오실로스코프입니다...)

노란색은 Trig pin을 측정, 파란색은 Echo pin을 각각 측정하였습니다.

 

거리가 정확히 계산되는지를 보려고 한 것은 아니고,

실제 Trig 신호와 Echo 신호가 Sequence Chart 처럼 출력되는지 확인해보고자 했습니다.

 

눈으로 확인 할 순 없지만,

아마도 Trig 신호의 falling edge 부터 Echo 신호의 rising edge 사이에

8개의 40kHz Pulse가 발생을 했겠죠?

 

파란색 High 유지시간을 보면, 608us

Sequence Chart 설명에서의 150us~25ms 이내 값으로 측정되었네요.

 

 

Trig 신호는 너무 작아서 잘 안보이니,

Trig 신호만 확대해서 다시 측정해봅시다.

Oscilloscope Waveform

Trig 신호만 측정해서 확대한 파형(노란색)인데,

High 유지시간이 14.4us로 측정되었네요.

 

Sequence Chart 에서는 10us라고 했었는데...

뭐지...왜 14.4us가...???

그저 오차라고 하기엔 너무 큰데...

 

초저가형 오실로스코프라 측정 오차가 이 모양인 것인지, 

아니면 초음파센서 관련 소스에 문제가 있는 것인지...

(좋은 오실로스코프를 썼더라면, 오실로스코프에 대한 의심이 없겠지만

초저가형이다 보니...의심을 안 할 수가 없네요)

 

가난하면 몸이 고생한다는 말이 생각나는 이유는 

기분탓 일 겁니다. 그렇고 말고요...그저 기분탓이죠.

괜찮습니다. 고생할 준비가 되어 있는 몸뚱아리 있으니 괜찮아요.

하하하하하하하하하

 

이 부분에 대해서는 다음 포스팅에서 추가로 확인을 해봐야겠어요!

사용한 소스를 확인해가면서 왜 이렇게 나온건지 확인해보도록 하죠!

728x90
반응형