초음파 센서 값 확인하기
🎥
영상 시청
영상을 참고하여 초음파 센서가 어떻게 작동하는지 확인해보세요!
1️⃣
센서 이해하기
💡
설명
- 센서는 빛, 온도, 소리, 열, 압력 등의 물리적인 에너지를 측정하여 일정한 전기 신호로 바꾸는 장치입니다.
- 센서는 우리에게 중요한 역할을 하며, 다양한 기기와 시스템에서 환경 변화를 통해 적절한 반응을 가능하게 하는 핵심 요소입니다.
💡
키트에 포함된 센서
- 초음파 센서 : 물체와 센서 사이의 거리를 측정하는 센서
- 조도 센서 : 빛의 강도을 측정하는 센서
- 터치 센서 : 터치 여부를 측정하는 센서
- 조이스틱 : 레버 방향과 움직임을 측정하는 센서
2️⃣
초음파 센서 알아보기
💡
설명
- 초음파의 측정은 [trig]송신 부분(오른쪽 원통)에 짧은 시간 동안 파장을 출력하면 신호가 물체에 도달하여 반사되어 돌아옵니다.
- 되돌아온 신호를 [echo]수신 부분(왼쪽 원통)에서 검출하고 돌아온 시간을 적용하여 아두이노에서 거리 값을 계산하게 됩니다.
- 초음파 센서는 최대 400cm까지 측정이 가능합니다.
- 초음파 센서는 4개의 핀이 있으며, trig와 echo 그리고 VCC(+)극, GND(-)극에 연결합니다.
코드 에디터
digitalWrite(_trig, HIGH);
delayMicroseconds(10);
digitalWrite(_trig, LOW);
unsigned long duration = pulseIn(_echo, HIGH);
float value = duration / 29.0 / 2.0; // duration을 거리(cm)로 환산
입력
실행 결과
이 곳에 결과가 표시됩니다.
💡
설명
- 휴몬랩 라이브러리를 사용하지 않는다면, 초음파 센서가 거리를 측정하는 계산식을 직접 작성해야 합니다.
- 이로 인해 코드가 복잡해지고, 암기해야 할 내용이 많아져서 초보자에게는 어려움을 겪을 수 있습니다.
3️⃣
초음파 센서 측정 값 알아보기(회로 연결하기)
- 아두이노를 PC에 연결하여 포트 설정이 되어 있는 지를 확인합니다.
- 아두이노에 초음파 센서의 echo(6번 핀), trig(5번 핀), VCC, GND를 연결합니다.
🎥
영상 시청
영상을 참고하여 초음파 센서 작동에 대해 쉽게 배워보세요.
💡
설명
- 초음파 센서의 echo 핀은 연속된 값을 받아오기 위해 반드시 PWM 핀을 사용합니다.
- 초음파 센서의 trig핀은 0, 1번 핀을 제외한 핀 어디든 상관없이 연결합니다.
4️⃣
초음파 센서 측정 값 알아보기(코드 작성하기)
- 초음파 센서를 이용하여 물체와 센서 사이의 거리를 확인합니다.
코드 에디터
#include <HuemonelabKit.h>
SonarSensor sonar(5,6);
void setup () {
Serial.begin(9600);
}
void loop () {
Serial.println(sonar.read());
delay(100);
}
입력
실행 결과
이 곳에 결과가 표시됩니다.
💡
설명
3번
5, 6번 핀에 연결된 초음파 센서를 ‘sonar’객체로 생성합니다.
6번
시리얼 통신을 시작하고, 통신 속도를 9600 보드레이트로 설정합니다.
10번
초음파 센서 측정 값을 시리얼 모니터에 출력합니다.
5️⃣
변수를 활용한 초음파 센서 거리 값 측정하기(코드 작성하기)
- 초음파 센서를 이용하여 물체와 센서 사이의 거리를 확인합니다.
🎥
영상 시청
영상을 참고하여 어떻게 변수를 활용해 초음파 센서를 사용하는지 쉽게 배워보세요.
코드 에디터
#include <HuemonelabKit.h>
SonarSensor sonar(5,6);
void setup () {
Serial.begin(9600);
}
void loop () {
int value = sonar.read();
Serial.println(value);
delay(100);
}
입력
실행 결과
이 곳에 결과가 표시됩니다.
💡
설명
3번
5, 6번 핀에 연결된 초음파 센서를 ‘sonar’객체로 생성합니다.
6번
시리얼 통신을 시작하고, 통신 속도를 9600 보드레이트로 설정합니다.
10번
초음파 센서로부터 측정된 값을 'value'라는 변수에 저장합니다.
11번
'value' 변수에 저장된 데이터 값을 시리얼 모니터를 통해 출력합니다.
💡
설명
- "int"형 변수를 사용하여 초음파 센서의 결과 값을 정수로만 받을 수 있도록 'value'라는 이름을 지정합니다.
- 이제 'value'라는 단어를 코드 어디에나 입력하면, 그 위치에서는 초음파 센서의 결과 값이 출력됩니다.
🎯
배운 내용 응용해보기
- 변수의 이름을 변경해 보세요.
- 초음파 센서로 측정할 수 있는 최대의 거리를 알아보세요.