검색
홈으로 마이페이지 주문조회 장바구니
로그인
회원정보 게시판
회사소개 이메일
도서(BOOK)
키트(KIT)
특판 상품
졸업작품&전자기초
응용모듈
전자부품
모터
기구
엔클로져
고객센터 게시판
자유게시판
MCU 통합 게시판
강좌-RaspberryPi
강좌-드론(쿼드콥터)
강좌-아두이노(기초)
강좌-아두이노(응용)
신제품/신기술 소개
DIY 공작 게시판
윤교수의 연구실 칼럼
 ☎ : 02-776-4868

 F: 02-779-6757

☞ 평일 : 09~18시
☞ 주말 : 10~13시


국민822401-04-027758
☞ 예금주 : Ohm사
국민822401-04-027761
☞ 예금주 : R&C사
 
 
1 (주)알트소프트 사이트
 
2 LabVIEW 강좌 사이트
 
3 윤교수의 마이크로프로세서 월드
 
4 전자 엔지니어
 

 

 
강좌-아두이노(기초)
 
2014. 05. 16 (10:49)
제목[아두이노] 11. 초음파 센서
작성자 조회 : 7985

11. 초음파 센서


이번 강좌에서는 초음파 센서 모듈을 이용하여 거리를 측정하는 실험을 해 보자.

 

초음파 센서 모듈은 아래와 같은 모델을 사용하고,


핀 맵은 아래와 같다.


초음파 센서 모듈은 Trigger 신호를 주면, 8 개의 40KHz의 펄스 8개가 출력이 되며, Echo 신호를 입력 받아서 거리를 측정할 수 있다.

일단 회로 구성은 아래 그림과 같이 구성하며,



회로 결선은 아래와 같이, 모듈의 Trigger 신호는 D2, Echo 신호는 D3에 연결하면 된다.




초음파 센서의 Trigger 신호는 10us 이상이면 가능하다.

 

거리를 측정하는 간단한 예제를 작성해 보자.



위의 코드를 보면, 그 동안 보지 못 했던 함수 하나가 보인다.

 

           pulseIn(pin, value);

 

여기서, pin은 입력 포트를 지칭하며, value는 포트의 레벨(LOW/HIGH)을 지정한다.

이 함수의 기능은 입력 포트의 신호의 주기를 리턴 해 준다.

예를 들면, 위에 예제처럼 HIGH로 지정되어 있으면, echo 핀의 레벨이 HIGH가 유지되고 있는 시간을 마이크로세켄드(us) 단위로 리턴을 해 준다.

, 초음파 센서 에코 펄스의 길이를 시간으로 받을 수 있다.

길이를 측정하는 방법으로 사용하기 위해서는 이 시간을 1/2 값을 사용하면 된다.

 

리턴 된 duration 값은 us단위의 시간이기 때문에, 이를 거리로 환산을 하려면 음파의 속도인 340m/s를 이용하면 된다. 우리는 거리 계산을 cm 단위로 하기 때문에,

 

          거리(cm) = (34000(cm) * duration / 10^6 ) / 2

 

이 식을 이용하면 된다.

 

코드를 작성하고 컴파일 후에 업로드를 하고, 그 결과를 시리얼 포트로 출력을 해 보면,



비교적 정확하게 거리 측정이 가능하다.

 

오늘 강좌에서는 특별히 어려운 내용은 없었을 것으로 생각된다. 새로 배운 pulseIn() 함수만 잘 숙지하면, 초음파 센서 모듈 사용하는데 있어서 쉽게 접근할 수 있다.

 

다음 강좌에서는 CLCD 16 x 2를 제어해 보는 내용에 대해서 다루도록 하겠다



http://blog.naver.com/rnc_ohm

비밀번호 확인 닫기
name password
  Content name date hits
[아두이노] 11. 초음파 센서  
2014/05/16 7985
상호명 : R&C사 사업자등록번호 : 106-02-43112 통신판매업신고번호 : 용산 03564
대표 : 곽민수 사업장소재지 : 서울시 용산구 갈월동 17-1번지 세기빌딩 101호
전화 : ☎ : 02-776-4868 ,F: 02-779-6757 개인정보담당자 : 곽민수
[회사소개] [이용안내] [이용약관] [개인정보취급방침]
Copyright ⓒ 도서출판 OHM사와 학습기기 R&C사 All Rights Reserved.