반응형

【 아두이노 센서#20】 HC-SR04 초음파 센서 다루기 #1


 이번 시간 부터, 아두이노에서 가장 활용도가 높은 초음파 센서를 다루어 보려고 한다. 앞으로 라즈이노에서 올리는 실습을 보면서, 차근 차근 하나씩 해보면 생각만큼 복잡하지 않으며 아두이노가 더욱 재미 있어질 것이다. 

게다가 초음파 센서를 이용하여 다양한 응용작품을 만들어 보려고 한다. 


▶ 선수 학습 :

  특별한 선수학습 없음

  

▶ 실습에 사용되는 부품 자료 ( HC-SR04 ) 







▶ 실습 목표 :  


1. 초음파 센서의 구동 원리에 대해 이해한다. 


2. 초음파 신호의 반사된 시간을 이용해서 물체까지의 거리값을 계산할 수 있다.


3. 측정된 값을 시리얼 모니터상에 거리값(cm)으로 표시한다.



▶ 실습 회로도면 :

  (이미지 클릭하면 확대 가능)









▶ 실습 절차  : 

1. 위 회로 연결도를 참고하여 부품들을 연결한다. 
2. 시간값 계산식


3. 초음파센서의 거리측정 메카니즘을 이해한다.






▶ 프로그램 코드 및 설명 : 


/*  초음파 센서(HC-SR04 모듈)로 물체와의 거리측정하기 */


int distance;

int triggerPin = 7;

int echoPin = 6;


void setup( )  {

  Serial.begin(9600);

  pinMode(triggerPin, OUTPUT);  // 트리거 핀을 출력으로 설정

  pinMode(echoPin, INPUT);       // 에코 핀을 입력으로 설정

}


void loop( ) {

 digitalWrite(triggerPin, LOW);    // 트리거 핀 초기화

  digitalWrite(echoPin, LOW);      //  에코 핀 초기화

  delayMicroseconds(2);

  // 트리거 핀으로 10 us의 펄스를 발생

  digitalWrite(triggerPin, HIGH);

  delayMicroseconds(10);

  digitalWrite(triggerPin, LOW);

  // 에코 핀 입력으로부터 거리 값을  cm 단위로 계산

  distance = pulseIn(echoPin, HIGH) / 58;

  Serial.println("Distance(cm) = " + String(distance));

  delay(1000);

}




▶ 실행 영상:  【 시리얼 모니터 화면 】





▶ 아두이노 파일(다운) :


Ultrasonic.ino


반응형