초음파 센서(HC-SR04)(씨마스 정보교과서)
본 위키는 씨마스 고교 정보교과서 내 초음파 센서에 해당하는 내용을 서술합니다.
초음파 센서(HC-SR04) 문서에서 모듈에 대한 기본 정보를 참고해주세요.
P. 215 스스로 해결하기③ (초음파 센서, 부저, LED)
본 예제는 교과서 내용에 따라 엔트리파이선을 사용합니다.
아두이노 사용 방법 문서에서 엔트리파이선을 활용 방법을 참고하세요.
연결
초음파 센서의 Trig 핀은 아두이노 8번 핀, Echo 핀은 아두이노 9번 핀에 연결했습니다. 가운데|클래스=coders100
예제 코드
초음파 센서 값이 10 이하일 때를 물체가 감지된 것으로 판단해 LED를 켜고, 부저로 소리를 내는 예제 코드입니다.
import Entry
import Arduino
distance = 1
def when_start():
while True:
distance = Arduino.ultrasonicRead(8, 9)
if (distance > 10):
Arduino.digitalWrite(10, "LOW")
else:
Arduino.digitalWrite(10, "HIGH")
Arduino.tone(6, "G", 3, 0.2)
Entry.wait_for_sec(0.2)
P. 220 도전! 해커톤! '밤이 깊었네' (초음파 센서, 조도 센서, LED)
본 예제는 교과서 내용에 따라 엔트리파이선을 사용합니다.
아두이노 사용 방법 문서에서 엔트리파이선을 활용 방법을 참고하세요.
연결
초음파 센서의 Trig 핀은 아두이노 8번 핀, Echo 핀은 아두이노 9번 핀에 연결했습니다. 가운데|클래스=coders100
예제 코드
교과서와 동일한 코드입니다.
조도 센서 값에 따라 11번 핀에 연결된 LED가 켜지고, 초음파 센서 값에 따라 3, 5번 핀에 연결된 LED가 켜집니다.
import Entry
brightness = 1
distance = 1
def when_start():
while True:
brightness = Arduino.analogRead("A0")
distance = Arduino.ultrasonicRead(8, 9)
if brightness < 150:
Arduino.digitalWrite(11, "HIGH")
else:
Arduino.digitalWrite(11, "LOW")
if distance < 10:
Arduino.digitalWrite(3, "HIGH")
Arduino.digitalWrite(5, "LOW")
else:
Arduino.digitalWrite(3, "LOW")
Arduino.digitalWrite(5, "HIGH")