아두이노를 사용한 사각지대 경보기

2015. 12. 20. 16:21Engineering

반응형

친구들과 함께 과제로 아두이노를 이용한 사각지대 경보기를 만들어보았습니다. 간단한 원리지만 시간이 부족해 자투리 시간을 이용해 제작하였습니다.

 

Ⅰ. 작품의 계획
  1.1 제작 동기
  오늘날 많은 도로는 이동을 편리하고 빠르게 만들어주었다. 그러나 구불구불한 도로나 골목길에서는 사각지대가 발생하기 마련이고, 이로 인해 크고 작은 교통사고가 발생한다.

 

   

  이를 대처하기 위한 방안으로 반사경이 사용되고 있다.

 

 

  도로반사경의 기능은 운전자의 시거조건이 양호하지 못한 장소에서 시인이 필요한 곳이나 사물을 거울면을 통해 비추어줌으로써 운전자가 적절하게 전방의 상황을 인지하고 안전한 행동을 취할 수 있도록 하여 사고를 미연에 방지토록 해주는 시설이다. 그러나 이러한 반사경에도 아래와 같은 명백한 한계가 존재한다.


● 거울면에 비치는 사물까지의 거리 판단이 어렵다.
● 인식해야 할 차량까지의 거리가 멀어질수록 반사경을 통해 해당 차량의 존재를 인식하기가 어렵다.
● 인식해야 할 차량의 속도가 빠르면 차량 발견 시 적절한 조치를 취할 만한 충분한 시간적 여유를 확보하기가 힘들다.
● 거울면에 맺히는 영상은 실제 차량 등의 위치와는 다르게 보이기 때문에 운전자가 혼란을 일으킬 수 있다.

 

  이와 같은 문제점을 해결하기 위해 우리는 아두이노 사각지대 경보기를 제작하게 되었다.

 

  1.2 제작 목적
  아두이노 사각지대 경보기는 반사경의 문제점을 해결하기 위해 고안한 시스템이다. 사각지대에 경보기를 설치하여 양쪽 방향에서 차 또는 물체가 일정 거리 이내 안에 근접하면 이를 인식하여 경보기를 작동시킨다. 우리는 이 시스템을 아주 간단하게 제작할 수 있는 아두이노를 활용하여 만들어 보았다.

 

  1.3 부품 설명
    1.3.1 Arduino UNO R3

   아두이노 Duemilanoves가 단종되고 표준 보드로 자리잡은 보드로 R3 버전이 가장 보편적이다. USB 통신을 위한 FTDI 칩을 기본으로 내장하고 있어(ATmega16U2) 별도의 변환기 없이 PC에 바로 USB로 연결해서 사용할 수 있다. 5V, 3.3V 모두 지원하기위해 레귤레이터가 내장되어 있고 USB 전원 사용이 가능하며 외부 입력 전원도 지원한다. 핀 배열 등이 UNO를 기준으로 맞춰져 있으므로 확장 쉴드 등을 사용하는데 최적화되어있다.


    1.3.2 HC-SR04 초음파센서

  거리를 측정하는 것으로는 보통 적외선이나 초음파를 많이 사용한다. 다양한 종류의 센서가 있지만 그중에서도 HC-SR04이 가격이 매우 저렴하고 보편적이다. 적외선과 초음파센서는 각각 빛과 소리를 내보내는데, 이 신호가 물체에 닿으면 반사되어 다시 되돌아오는데 걸리는 시간을 측정하여 물체의 거리를 인식한다. 본 작품에는 HC-SR04 센서가 2개 사용되었다.

 

    1.3.3 브레드 보드

 

  브레드보드란 속칭 빵판이라 불리며 전자 회로를 구성하는데 사용하는 재사용 가능한 무땜납 장치이다. 일반적인 브레드보드는 버스스트립(내부연결 전기단자의 스트립)이 있고 주장치의 일부나 격리된 블록처럼 양쪽이 전원선을 확장하도록 끼워져 있다.


    1.3.4 피에조 부저(ALP1250S)

  피에조 부저(piezo buzzer)는 피에조 효과를 이용하여 소리를 내는 작은 스피커이다. 피에조 효과(또는 압전효과)란 수정이나 세라믹 같은 결정체의 성질을 이용하는 것으로 압력을 주게 되면 변형이 일어나면서 표면에 전압이 발생하고, 반대로 전압을 걸어주면 응축, 신장을 하는 현상을 말한다. 여기에 얇은 판을 붙여주면 미세한 떨림으로 소리가 나게 된다. 피에조 부저는 큰 소리를 내지 못 하는 단점이 있으나, 값이 싸고 단순하며, 주파수 2만 Hz 이상의 초음파를 발생시킬 수 있기 때문에 초음파를 활용한 다양한 제품에서 사용된다.

 

Ⅱ. 연구과정 및 방법
  2.1 작품 계획
  사각지대 경보기는 아두이도 UNO R3 보드 1개, 브레드 보드 1개, 피에조 부저 1개, 초음파 센서 2개, USB 케이블 1개로 구성된다. 경보기는 복잡한 기능을 필요로 하지 않으므로 보편적이고 간단한 UNO 보드를 선택하였으며, 역시 보편적인 부저인 피에조 부저를 연결하여 경보를 울리는 역할을 하도록 하였다. 초음파 센서는 다가오는 자동차를 인식하는 역할을 한다. 센서 2 개를 직각 방향으로 설치함으로써 다른 방향에서 오는 차를 각각 인식하여 동시에 일정 범위 이내에 들어오면 경보를 울리도록 프로그래밍할 것이다. 우드락과 접착제를 이용하여 간이 골목길을 제작하였으며 차는 공으로 대신하였다.

 

  2.2 작품 설계
  작품 설계도는 다음와 같다.

  초음파 센서 2개는 2, 3, 5, 6번 핀과 연결되어 있으며 부저는 4번 핀에 연결했다. 브레드 보드에 5V와 GND를 연결함으로써 전원선을 확장하였다.

 

  2.3 프로그램 코드
  프로그램의 기본 원리는 각 초음파 센서에서 인식한 거리가 25cm 이하일 경우 이를 인식하여 부저를 울리게 된다. 코드는 다음과 같다.

 

#define trigPin1 3
#define echoPin1 2
#define trigPin2 6
#define echoPin2 5
#define buzzerPin 4
void setup() {
  Serial.begin(9600);
  pinMode(echoPin1, INPUT);
  pinMode(trigPin1, OUTPUT);
  pinMode(echoPin2, INPUT);
  pinMode(trigPin2, OUTPUT);
}
void buzz(int a){
  tone(buzzerPin, 1000);
  delay(a);
}
void loop() {
  long duration1;
  long duration2;
  float cm1;
  float cm2;
  digitalWrite(trigPin1, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin1,HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin1,LOW);
  delayMicroseconds(2);
  duration1 = pulseIn(echoPin1,HIGH);
  cm1=(duration1*0.0343)/2;
  digitalWrite(trigPin2,LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin2,HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin2,LOW);
  delayMicroseconds(2);
  duration2 = pulseIn(echoPin2,HIGH);
  cm2=(duration2*0.0343)/2;
  if(cm1<25 && cm2<25) buzz(50);
    else noTone(buzzerPin);
  delay(100);
}

 

Ⅲ. 결과 및 토의
  3.1 결과 사진

 

 

  3.2 실험 결과
  사람 모형 두 개로 실험하였다. 두 모형이 골목길에서 서로 다가오는 모습을 재현하였으며 두 모형의 거리가 골목길까지 25cm 이하이면 경보가 울리는 것을 확인할 수 있었다.

 

Ⅳ. 결론 및 소감
  우리는 우드락을 이용하여 기초적인 구조물을 제작하였고 아두이노로 프로그래밍하여 실제로 사각지대 경보기가 작동하는 것을 확인할 수 있었다. 이번 작품 제작을 통해 아두이노와 같이 간단한 장치만 이용하여도 실생활에 큰 도움이 되는 시스템을 설계하고 직접 구현해낼 수 있다는 사실을 알게 되었다. 이 경보 시스템을 골목길 또는 학교 복도 등에 설치한다면 안전사고 예방에 큰 도움이 될 것이다.

 

반응형