IT 기술 정보/아두이노 복사하고 따라하는 예제

[복사하고 따라하는 아두이노] 아두이노 초음파센서(feat. 3핀 4핀 모두)

일상 박형 2021. 3. 26. 08:30

안녕하세요. 공대 박형입니다.

 

오늘은 아두이노 초음파센서를 알아보겠습니다.

 

코드부터 보시죠.

 

( 3핀 초음파 센서 )

 

int distance = 0;  

 

void setup () {

    Serial.begin (9600);

}

 

void loop() {

 

  pinMode(9, OUTPUT);  //출력 모드

  digitalWrite(9, HIGH);  // 초음파 송출

  delay(10);

  digitalWrite(9, LOW);   // 초음파 송출 정지

 

  pinMode(9, INPUT);  // 입력 모드

   distance = 0.01723 * pulseIn(9, HIGH); // 들어온 값을 0.01723과 곱하여 거리 계산

 

   Serial.print(distance);  //계산된 거리를 cm로 출력

  Serial.println(" cm");

 

   delay(10);

}

 

 

( 4핀 초음파 센서 )

 

const int trig = 9;

const int echo = 8;

int distance = 0;

 

void setup(){

 

    Serial.begin(9600);

    pinMode(trig, OUTPUT);

    pinMode(echo, INPUT);

 

}

 

void loop(){

 

    digitalWrite(trig, HIGH);

    delayMicroseconds(10);

    digitalWrite(trig, LOW);

 

    distance = pulseIn(echo, HIGH) * 0.01723;

 

    Serial.print(distance);

          Serial.println(" cm");

 

    delay(50);

}

 

 

실험용으로 사용하기에는 3핀과 4핀 모두 동작에는 큰 차이가 없습니다. 구하기 쉬운것으로 사용하시면 되겠습니다.

 

초음파센서는 음파를 쏘고 돌아오는 시간을 계산하여 물체와 센서 사이의 거리를 계산합니다. 그 값을 cm로 표현하기 위해 0.01723을 곱해줍니다.

 

 

다음 시간에는 dc모터를 동작시키고 pwm제어를 통해 속도제어를 해보겠습니다.

 

궁금한 부분은 문의주시면 답해드리겠습니다.

 

읽어주셔서 감사합니다.