초음파 센서와 TM1637 4 digit을 결합하여 물체와 거리 표시기를 만드는 간단한 응용 프로젝트
▶ 이 가이드를 따라하면
- Arduino + 초음파 센서 + 4자리 숫자 표기를 할 수 있다.
▶ 부품 설명 및 회로 구성
기존에 초음파 센서(https://bbangpan.tistory.com/49 )와 TM1637기반의 4자리 숫자(https://bbangpan.tistory.com/31 )를 소개한 적이 있다. 이 둘을 간단히 결합해서 눈에 잘 보이는 거리 표시기를 구성할 수 있다. 핀 연결은 둘을 조합하면 되고 소스는 간단히 융합해보자.
상기 구성을 위해서 5V핀이 모자라는데 이는 소형 빵판으로 해결했다(mini breadboard로 검색하면 구매할 수 있다). 해당 소형 빵판의 한줄에 5V연결선을 나누어 꼽으면 서로 연결된다(사진 참조).
TM1637 라이브러리는 https://github.com/avishorp/TM1637 에서 해당 폴더를 다운 받아서 Arduino설치폴더/Library/ 에 압축을 풀면 된다(https://bbangpan.tistory.com/1 의 하단부 라이브러리 설치 를 참조).
혹은 Arduino 개발툴에서 라이브러리 다운로드에서 적절한 것을 받아 사용해도 무방하다. 단, 다소의 소스 수정이 필요하다.
Github 주소 : https://github.com/bbangpan/bbangpan.com/blob/master/neibc_tm1637disp_sonic.ino
#include <TM1637Display.h>
// Module connection pins (Digital Pins)
#define CLK 3
#define DIO 4
TM1637Display display(CLK, DIO);
const int trigPin = 8; //Trig 핀 할당
const int echoPin = 7; //Echo 핀 할당
void setup()
{
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop()
{
long duration, cm=9999;
display.setBrightness(0x0f);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(5);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
cm = duration / 29 / 2;
Serial.print(cm);
Serial.print("cm");
Serial.println();
display.showNumberDec(cm, true);
delay(100);
}
상기와 같이 구성한 후 컴파일 하면 LED에 cm단위로 초음파 센서와 물체의 거리를 표시해준다. 초음파 센서의 최대 거리는 150~300 cm 밖에 되지 않으므로 참조한다.
▶ 구매 가이드
HC-SR04 : https://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20190803222347&SearchText=HC-SR04&switch_new_app=y ($1)
Mini breadboard : https://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20190803222417&SearchText=mini+breadboard&switch_new_app=y ($1)
TM1637 4 digits LED : https://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20190803222502&SearchText=TM1367+4+digit+LED&switch_new_app=y ($1)
▶ 강의 키워드
HC-SR04, 초음파 센서, ultra sonic sensor, HC-SR04, 4 digits LED, 4자리 숫자, Arduino, 아두이노, 거리 측정
'아두이노 응용' 카테고리의 다른 글
[아두이노] cds sensor와 servo motor로 t-rex game 스페이스키 자동으로 누르게하기 (0) | 2020.04.09 |
---|---|
[아두이노/Blynk] 스마트폰 앱으로 인터넷을 통해 Arduino를 제어해보자 (0) | 2019.08.07 |
[아두이노/WiFi/서보모터] Arduino WeMos D1 WiFi (ESP8266) 호환 보드와 휴대폰 브라우저를 통한 서보 모터 구동 (6) | 2019.08.04 |
[응용/접근 감지 전등] 초음파 센서를 통해 전등을 켜보자 (0) | 2016.04.19 |
[응용/전자기장검출] 전자기장 감지기(EMF detector)를 만들어보자 (2) | 2015.11.11 |
[프로젝트] HM-10모듈과 수은전지+배터리 홀더로 만드는 초소형 iBeacon (10) | 2015.07.17 |
[프로젝트] 전자시계 / 실시간 시계 모듈(RTC breakout/DS1307 or DS3231)과 4 digits 디스플레이로 구현하자 (0) | 2015.04.17 |
[프로젝트] 간단한 단거리 무선 통신(433/315Mhz)으로 구현하는 실내외 원격 온습도계 디스플레이 프로젝트 (2) | 2015.02.09 |