본문 바로가기

아두이노

블루투스 센서와 초음파 센서로 물체의 위치 및 거리 측정

반응형

블루투스 센서와 초음파 센서를 사용하여 물체의 위치 및 거리를 측정하는 아두이노 프로젝트를 설명하겠습니다.

1. 이론 소개:

  • 이 프로젝트에서는 블루투스 모듈을 통해 아두이노와 스마트폰 또는 컴퓨터를 연결하고, 초음파 센서를 사용하여 물체의 위치 및 거리 정보를 측정합니다.

2. 준비물:

  • 아두이노 보드 (예: Arduino Uno 또는 Arduino Nano)
  • 블루투스 모듈 (예: HC-05 또는 HC-06)
  • 초음파 센서 (예: HC-SR04)
  • 점퍼 와이어 및 브레드보드 또는 프로토타이핑 보드
  • 스마트폰 앱 (블루투스 통신을 지원하는 앱)

3. 회로 구성:

  • 아래와 같이 회로를 구성합니다.
    • 블루투스 모듈:
      • VCC -> 5V
      • GND -> GND
      • TX -> RX (아두이노의 RX 핀에 연결)
      • RX -> TX (아두이노의 TX 핀에 연결)
    • 초음파 센서:
      • VCC -> 5V
      • GND -> GND
      • Trig -> 아두이노의 디지털 핀 (예: 7)
      • Echo -> 아두이노의 디지털 핀 (예: 8)

4. 코딩 내용:

 

#include <SoftwareSerial.h>

SoftwareSerial bluetooth(2, 3); // RX, TX
const int trigPin = 7; // 초음파 센서 Trig 핀
const int echoPin = 8; // 초음파 센서 Echo 핀

void setup() {
  Serial.begin(9600); // 시리얼 통신 초기화
  bluetooth.begin(9600); // 블루투스 통신 초기화
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop() {
  long duration;
  int distance;

  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  duration = pulseIn(echoPin, HIGH);
  distance = duration * 0.034 / 2;

  bluetooth.print("Distance: ");
  bluetooth.print(distance);
  bluetooth.println(" cm");

  delay(1000); // 1초마다 거리 측정 및 전송
}

 

 

5. 코딩 내용 설명:

  • 초음파 센서를 사용하여 물체와의 거리를 측정합니다.
  • 거리 값을 블루투스를 통해 스마트폰 앱으로 전송합니다.

6. 코드 업로드 및 테스트:

  • 아두이노 코드를 업로드하고, 블루투스 앱과 연결한 후 스마트폰 앱을 사용하여 물체의 거리를 확인하실 수 있습니다.

7. 응용 업그레이드:

  • 블루투스 앱을 사용하여 다양한 기능을 추가할 수 있습니다. 예를 들어, 거리가 일정 값 이하로 내려가면 경고를 보내는 등의 동작을 추가할 수 있습니다.

8. 전문 용어 및 설명:

  • 초음파 센서: 초음파 신호를 발사하고, 반사되어 돌아오는 초음파를 측정하여 거리를 계산하는 센서입니다.

9. 기타:

  • 이 프로젝트를 확장하여 여러 초음파 센서를 사용하여 물체의 위치를 3D로 측정하거나, 로봇의 거리 감지 시스템으로 사용할 수 있습니다.
반응형