April 19, 2024

디바이스마트 미디어:

[66호] 원하는 색상으로 제어가 가능한 아두이노 IoT 스마트 무드등 키트 -

2021-06-25

★2021 ICT 융합 프로젝트 공모전 결과 발표! -

2021-05-12

디바이스마트 국내 온라인 유통사 유일 벨로다인 라이다 공급! -

2021-02-16

★총 상금 500만원 /2021 ICT 융합 프로젝트 공모전★ -

2021-01-18

디바이스마트 온라인 매거진 전자책(PDF)이 무료! -

2020-09-29

[61호]음성으로 제어하는 간접등 만들기 -

2020-08-26

디바이스마트 자체제작 코딩키트 ‘코딩 도담도담’ 출시 -

2020-08-10

GGM AC모터 대량등록! -

2020-07-10

[60호]초소형 레이더 MDR, 어떻게 제어하고 활용하나 -

2020-06-30

[60호]NANO 33 IoT보드를 활용한 블루투스 수평계 만들기 -

2020-06-30

라즈베리파이3가 드디어 출시!!! (Now Raspberry Pi 3 is Coming!!) -

2016-02-29

MoonWalker Actuator 판매개시!! -

2015-08-27

디바이스마트 레이저가공, 밀링, 선반, 라우터 등 커스텀서비스 견적요청 방법 설명동영상 입니다. -

2015-06-09

디바이스마트와 인텔®이 함께하는 IoT 경진대회! -

2015-05-19

드디어 adafruit도 디바이스마트에서 쉽고 저렴하게 !! -

2015-03-25

[29호] Intel Edison Review -

2015-03-10

Pololu 공식 Distributor 디바이스마트, Pololu 상품 판매 개시!! -

2015-03-09

[칩센]블루투스 전 제품 10%가격할인!! -

2015-02-02

[Arduino]Uno(R3) 구입시 37종 센서키트 할인이벤트!! -

2015-02-02

[M.A.I]Ahram_ISP_V1.5 60개 한정수량 할인이벤트!! -

2015-02-02

[9호]자전거 디지털 속도계 만들기

SAMSUNG DIGITAL CAMERA

똑똑해진 내 자전거!?

디지털 속도계 만들기

 

이민주 객원 기자

요즘 자전거를 타고 다니는 일명 “바이크족”이 매우 많아졌다. 서울에서만 해도 기름 값 폭등에 잦은 교통체증에 자전거 타기가 대세로 떠오르면서 자전거를 빌려 타고 다닐 수 있는 공공자전거 제도가 요즘 인기이기도 하다.

개인 자전거를 타고 다니는 사람들에게도 자전거 용품에 투자하는 사람들이 많아지면서 운행거리와 속도를 볼 수 있는 자전거 속도계는 요즘 주위에서 흔히 볼 수 있는 물건. 그런데 기존 자전거 속도계는 무엇인가 식상하다. 항상 같은 모양과 어두운 LCD표시는 새로운 것을 만들어보고 싶게끔 필자를 자극하기에 충분했다. 기존 속도계의 기능 이상을 유지하면서 나만의 자전거 속도계를 만들어 보자.

제작 방법

디지털 자전거 속도계를 만들기 위한 부품과 공구들이다. 자세한 내용은 부품표를 확인하자.

09devicemart PTB - SANG
< 자전거 속도계의 상단 회로도 >
09devicemart PTB - HA
< 자전거 속도계의 하단 회로도 >

 

참조 부품명(디바이스마트 검색어 기준) 사용내용 개별예상 단가 수량 수량가
U1 HEF4017BT 컨트롤러 보조 500 1 500
U2 HEF4094BT 컨트롤러 보조 390 1 390
U3 ATtiny24V-10PU 컨트롤러 2,000 1 2,000
U4 DS1302S 시계 구동 2,500 1 2,500
D1 sm410331k 디스플레이 1,200 1 1,200
D2 3104ASR 디스플레이 420 6 2,520
D3 면LED(빨강)14X7.5mm 디스플레이 800 4 3,200
D4 1N4148D 보호용 50 2 100
Q1 MMBTA42LT1G 컨트롤러 보조 45 11 528
Q2 MMBTA92LT1G 컨트롤러 보조 45 1 48
R1 R160w8-1000F-100Ω 컨트롤러 보조 60 13 780
R2 R1608-1000F-50Ω 컨트롤러 보조 60 8 480
R3 R1608-1801F-1.8KΩ 컨트롤러 보조 60 17 1,020
SW1 PMC1401 속도센서 650 1 650
SW2 ITS-1103D 조작스위치 100 1 100
C1 칩세라믹 1608사이즈 150nf 컨트롤러 보조 60 4 240
C2 Chip Tantal B size 47uF 6.3V 컨트롤러 보조 150 1 150
X1 32.768KHz (ATS.SMD) 시계 구동 380 1 380
ND 링 접시자석 15Ø x 4t(6.5Ø – 4.2Ø) 속도센서 보조 880 1 880
ND 원형자석4Ø x 1.5t 자전거 고정, 부착용 90 12 1,080
수축튜브50파이/투명(1M) 방수용 3,200 1 3,200
수축튜브12파이/투명(1M) 방수용 400 1 400
DC잭 플러그-2파이 속도센서 연결 400 1 400
DC-025A(2파이) 속도센서/충전기 연결 450 1 450
절연전선0.3㎟(검정1m) 속도센서 연결 330 2 660
PA-050200ST 벽걸이형 (5V/2.0A) 충전어댑터 7,600 1 7,600
BATT1 AL503759C-PCM (3.7V 1400mAh) 배터리 14,000 1 14,000
AC4-50×120(1.27mm) 기판 3,800 2 7,600
핀헤더 BH127S-1920-0G-2025 (1.27mm) 기판 보조 700 2 1,400
핀헤더소켓 BS127S-1935-40G (1.27mm) 기판 보조 1,600 2 3,200

작게 만들기 위해 대부분의 부품은 SMD타입을 사용했지만 납땜하기 어려울 경우 사용자가 원하는 크기로 변경해 사용해도 동작에는 전혀 이상 없다.

자전거 속도계는 눈에 보이는 FND의 위치와 스위치 배치가 가장 중요하다 하겠다.

개인적인 취향에 맞춰 FND와 LED의 위치를 정한다.

09PTBDSM003

기판의 홀 간격은 일반적인 기판보다 2배 좁은 1.27mm이고 홀 구멍의 크기 역시 매우 협소하기 때문에 FND와 LED의 다리는 최대한 기판에 맞춰 꽂는다.
필자는 기판을 2층 구조로 만들 예정인데 위쪽은 FND, LED가 배치되고 아래쪽은 각종 제어IC와 부품들이 배치된다.
FND와 LED를 납땜하는데 기판을 뒤집을 때 부품이 기판에서 떨어지거나 간격이 벌어질 수 있으니 손으로 최대한 고정하고 납땜한다.

09PTBDSM005

버튼의 위치도 정해 납땜한다.
필자는 속도계를 핸들 왼쪽 프레임에 장착하여 왼손으로 쉽게 조작하게 하려고 왼쪽 상단에 부착했다.

09PTBDSM006

FND와 LED주변을 가위로 잘라낸다. 이 기판은 원래 전용의 커터나 톱으로 잘라야 정석이겠지만 두께가 얇아 일반 가위로 쉽게 잘라낼 수 있다. 기판의 크기는 사용될 리튬폴리머 배터리의 크기 기준으로 잘랐다.
아래쪽 기판에 사용될 IC들을 부착한다.

09PTBDSM007 09PTBDSM004 09PTBDSM08 09PTBDSM009

자전거가 멈출 경우 시간이 표시되는데, 이 때 시간정보는 RTC라는 부품에서 얻는다. RTC를 움직이는 32.768kHz의 크리스탈을 RTC와 가까운 쪽에 부착한다.

참고로 CL값이 6pF인 것이 최적이지만 디바이스마트에서 파는 크리스탈은 6pF짜리가 없다. 필자는 18pF의 값을 갖는 크리스탈을 사용했는데 1개월에 몇분 정도의 오차가 발생하지만 필자에겐 문제가 없는 수준이어서 그냥 사용하였다.

전원은 모든 부품에 연결되어야 하므로 IC소자의 전원을 먼저 배선한다. 나중에 배선하게 되면 주변 다른 배선들이 먼저 차지하게 되어 전원 선을 점프해야 할 상황이 오게 될 수 있다. 전원은 점퍼 없이 연결한다면 나중에 수리할 때 혼동하지 않을 것이다.

그 외의 선은 점퍼를 하는데 포트를 절약하기 위해 여러 IC가 포트 공유를 많이 했으므로 서로 쇼트가 나지 않도록 주의한다.

09PTBDSM010 09PTBDSM011 09PTBDSM012

주의할 것은 MCU의 전원, FND 스위칭, 풀 업 저항에는 배터리에 직결 연결, 이것을 제외한 나머지 부품의 전원(Vcc)은 Port B1번에 연결한다. 슬립모드에서는 모든 포트가 Low로 출력되어 주변 소자에서 소모하는 전류를 최소화 한다.
이제 주변 부품들인 콘덴서, 저항, 다이오드 등을 부착한다.
부품들이 모두 작기 때문에 납땜하기 어려우므로 핀셋을 이용해 고정한 후 납땜한다.
2층으로 구성된 기판을 서로 연결해야 하는데, 쉽게 탈부착이 되도록 핀해더(핀헤더 BH127S-1920-40G-2025 (1.27mm), 핀헤더소켓 BS127S-1935-40G (1.27mm))를 사용한다.
속도센서와 충전 어댑터 연결용 잭을 부착한다. 기판아래쪽을 향할 것이므로 기판에 구멍을 내고 어댑터 잭(DC-022)을 부착한다.

09PTBDSM013 09PTBDSM014 09PTBDSM015 09PTBDSM016 09PTBDSM017

SAMSUNG DIGITAL CAMERA

자전거 프레임에 고정 할 때 케이블 타이를 이용할 것이므로 리드 스위치부분은 무리가 가지않도록 기판을 길게 하는 것이 좋다.참고로 속도센서와 충전 어댑터는 같은 잭을 사용토록 구성했는데, 자전거 운행 시 충전 잭이 열려 있으면 이물질이 상당히 많이 들어가기 때문에 항상 닫혀있게 하기 위함이다.

남는 기판 조각에 리드스위치를 부착한다. 리드스위치는 유리관 형태로 쉽게 부러질 수 있고 손을 다칠 염려가 있으므로 손톱을 이용해 구부리거나 펜치등을 이용하는 게 바람직하겠다.

함께 구매한 전선을 이용해 센서 길이를 연장하고, 어댑터 잭(DC잭 플러그-2파이)을 연결한다.

참고로 32ms 정도 내에 반응한 신호는 무시하도록 되어있다.
이제 프로그램을 다운받아야 한다. AVR칩에 프로그램을 다운로드 하기 위해서는 ISP로 연결해야 하는데, 별도의 ISP포트를 마련하지 않았으므로 사진과 같이 외부에 점퍼 선으로 연장해 연결한다. www.it-style.kr/10049 에 접속해 첨부파일을 다운받아 압축을 해제한다.
*.hex와 *.asm파일이 있는데, asm파일은 사용자가 수정이 필요할 경우 사용할 수 있는 어셈블리어 원본 소스파일이고, hex파일은 수정 없이 그대로 사용할 경우에 사용한다.

SAMSUNG DIGITAL CAMERA SAMSUNG DIGITAL CAMERA

최종 기판이 완성된 모습이다.

SAMSUNG DIGITAL CAMERA

상/하 기판을 연결한다.

SAMSUNG DIGITAL CAMERA

FND를 사용하는데, 낮에는 잘 안보일 가능성이 있으므로 표시부는 암적색 아크릴(2T)을 사용했다.
암적 아크릴은 화면 전체 배경을 어둡게 하고 빨간색 불빛만 통과시키므로 자전거 운행시 보는데 도움이 된다.
리튬폴리머 배터리를 기판 아래쪽에 부착한다. 이 때 납땜 면에 배터리가 부착되면서 손상될 가능성이 있으므로 얇은 스펀지나 완충제를 덮어준 후 배터리를 올린다.
배터리 아래에는 네오디움 자석을 부착했다. 속도계는 도난 염려가 있으므로 쉽게 탈부착하게 하기 위함이다.
네오디옴 자석은 수축튜브를 씌우면서 고정될 것이므로 특별히 고정하지 않아도 된다.

SAMSUNG DIGITAL CAMERA

SAMSUNG DIGITAL CAMERA

SAMSUNG DIGITAL CAMERA

09PTBDSM026

09PTBDSM027

본체, 속도센서는 수축튜브를 이용해 방수가 되도록 씌우고 열풍기나 가스레인지, 라이터 등을 이용해 가열한다. 바인더 철심도 녹이 슬거나 자전거 프레임에 흠집을 낼 수 있으므로 수축튜브를 씌워준다.

SAMSUNG DIGITAL CAMERA

완성된 모습이다.
자전거 속도 센서에 사용되는 리드스위치는 자석에만 반응한다. 따라서 자전거 바퀴에 자석을 달아줘야 하는데, 가운데 구멍이 뚫린 자석을 선택한 이유도 쉽게 자전거 바퀴에 매달기 위해서다.

SAMSUNG DIGITAL CAMERA SAMSUNG DIGITAL CAMERA

가급적 바퀴 중심쪽에 달아야 원심력이 덜 작용하고, 센서와 자석이 닿는 시간도 길어져 유리하다.

속도 센서를 앞바퀴 프레임에 부착한다. 바퀴가 회전할 때마다 리드스위치에 자석이 가까이 가게 해야한다.

SAMSUNG DIGITAL CAMERA

보통 자전거 프레임이 철로 되어 있어 자석이 달라붙지만, 알루미늄처럼 자석이 붙지 않는 다른 소재를 사용한 경우가 있다. 필자의 경우도 자석이 붙지 않아 속도계를 자석으로 붙일 수 있도록 프레임에 바인더 철심을 부착했다.

SAMSUNG DIGITAL CAMERA

SAMSUNG DIGITAL CAMERA

바인더 철심 여러개를 이어붙이고 자전거 핸들(프레임)에 단단히 고정한다. 바인더 철심은 자전거 프레임에 흠집을 줄 수 있고 비를 맞으면 부식될 수 있으므로 수축튜브를 씌우고 양쪽을 봉합해버린 후 부착해야 한다.

SAMSUNG DIGITAL CAMERA

바퀴 둘레를 측정하여 속도계에 입력해야 정확한 거리와 속도가 표시된다.
운행할 때만 자전거에 부착하도록 하고 도난 방지를 위해 평상시에는 자전거에서 분리해 집이나 사무실에 보관한다.

버튼만 누르면 시계를 보여주고, 속도계 후면에 자석이 있으므로 자전거를 타지 않을 때에는 냉장고나 현관문에 붙여 시계용으로 사용해도 좋을 것이다.

SAMSUNG DIGITAL CAMERA

사용 방법

슬립모드 상태에서는 자전거 바퀴가 회전하거나 버튼을 누르면 핀 변화 인터럽트가 발생해 깨어나게 된다. 구지 속도계를 신경 쓰지 않아도 스스로 사용치 않을 땐 슬립모드, 운행 시 웨이크업을 반복한다. 깨어날 때 배터리 용량이 15%(자체 측정 기준)이하일 경우 절전 모드(시간/속도만 표시)로 동작하는데, 키를 눌러 모드를 변환하면 절전모드를 해제할 수 있다.

키 조작 설명

속도계에는 1개의 버튼으로 모든 동작을 수행한다. 버튼의 동작 방법은 다음과 같다.

키조작 메인화면 동작 설명 설정화면 동작 설명
짧게 한 번 누름 표시 화면 전환(총 거리 → 운행 거리→운행시간→ 운행거리 평균속도→ 절전 화면) 설정 값 증가,설정 메뉴 변경
짧게 두 번 누름 총 거리 화면 : 메뉴 진입그 외 화면 : 운행 거리/시간/평속 초기화 메뉴 진입 설정 값 입력 완료(커서를 다음 항목 으로 이동), 저장, 수행
길게 한 번 누름 배터리 잔량 조회 설정 값 입력 취소(커서를 이전 항목으로 이동, 저장하지 않고 취소

기본적으로 ATtiny24가 모든 것을 제어한다. 4017은 10 디지트 FND를 선택하고 4094는 FND패턴을 뿌려주며, DS1302를 이용해 시간을 표시해준다.
ATtiny24가 슬립모드에 진입하면 주변 부품에 전원은 모두 차단된다.

SAMSUNG DIGITAL CAMERA

자전거 속도계를 장착하면 내 자전거의 속도가 얼마인지 알 수 있다는 점도 좋지만 장거리 운행 시 일정한 속도로 자전거 운행을 할 수 있어 목적지 까지 효율적으로 체력을 유지하며 운행할 수 있는 등 운전자에게 다양한 편리함을 준다.

하지만 자동차 운행 시 내비게이션 조작이 매우 위험한 것처럼, 자전거 운행 시에도 표시되는 내용은 빠르게 참고만 하고 자전거 운전에 집중해야 할 것이다.

● 화면 설명
메인 화면공통적으로 상단에는 기본적으로 12시간제의 현재 시간이 표시되지만 자전거 바퀴가 회전하기 시작하면 자동으로 속도계 화면을 보여주고 자전거 바퀴가 멈추면 2초 후 다시 시계 화면을 표시해준다. 속도는 최대 199.9km/h까지 표시한다.
하단 화면은 표시 항목에 따라 다른데, 왼쪽에 Flat LED가 현재 표시항목을 나타 내준다.
09PTBDSM037
현재는 전체거리를 표시해주고 있다. 이것은 EEPROM에 거리 정보를 저장하므로 배터리를 제거하거나 초기화해도 없어지지 않으므로 자전거를 구매하면서 장착한다면 자전거를 폐차할 때 까지 운행한 거리를 볼 수 있다. 초기화 하고자 한다면 EEPROM을 지워야 하고 최대 9999.9km까지 표시한다.
09PTBDSM038이 화면은 구간 운행 거리를 표시해주고 있고 초기화 할 수 있다. 최대 999.999km까지 표시한다.
09PTBDSM039이 화면은 구간 운행 시간을 표시해주고 슬립모드에서는 동작하지 않는다. 초기화가 가능하므로 운행하면서 얼마나 시간이 지났는지 알 수 있다. 최장 59시간 59분 59초까지 증가한다.
09PTBDSM040이 화면은 평균 속도를 표시해준다. 운행 구간에서 거리와 시간은 물론 평균 속도까지 알 수 있다. 최대로 표시할 수 있는 평균 속도는 속도 표시 가능범위인 ~199.9km/h까지 표시할 수 있다.

설정 화면

09PTBDSM041 09PTBDSM046

공통적으로 상단에는 설정 항목이 표시된다.
F-1, F-2로 설정 항목을 표시해주고 리셋모드에서는 Clr을 표시한다. 항목에 진입하기 전(항목을 고를 때)에는 표시화면이 깜빡인다.
제품을 처음 만들었을 때에는 시간은 0시 00분, 바퀴 둘레는 모두 .(점)이 입력되어 있고, 구간 운행 정보는 임의의 값이 입력되어 있으므로 초기화해야 한다.
09PTBDSM042F-1 메뉴, 시간 설정중인 모습이다.설정 값(커서)은 깜빡이므로 어떤 값을 설정중인지 쉽게 알 수 있다.
09PTBDSM043F-2 메뉴, 바퀴 둘레를 입력중인 모습이다. mm단위까지 입력할 수 있다. 앞에서 보인 것처럼 줄자를 이용해 바퀴 둘레를 측정하거나 바퀴의 지름을 이용해 계산해 입력해도 좋다.
현재 1.264M를 입력해본 모습.

09PTBDSM044 09PTBDSM045

설정을 완료하면 저장 후 SAVE.을, 설정을 취소하면 저장하지 않고 CANCEL.을 표시하고 메인 메뉴로 이동한다.
구간 운행 정보를 초기화 하면 초기화하고 RESET.를 표시한다.

웨이크업, 슬립, 충전 모드

09PTBDSM046슬립모드에서 바퀴가 회전하거나 버튼을 누를 경우 HELLO.를 표시하고 속도나 선택된 항목을 표시해준다.
09PTBDSM049동작 상태에서 버튼 조작인 바퀴 회전이 20초 이상 없을 경우 SLEEP.을 표시하고 슬립모드에 진입한다.

09PTBDSM047 09PTBDSM048

충전기를 연결한 상태에서 전원이 켜지면 CHARGE.를 표시하고 충전화면으로 이동한다. 충전기가 감지되면 서서히 충전 전류를 높여주는데 만충 전압에 도달하면 충전전류를 줄이고, 완전 충전이 되면 충전을 종료하는 방식이다. 만 충전 되어도 약한 전류를 계속 공급된다. 보통 충전이 끝나는 시간은 4~5시간이고 켜져 있는 상태에서 사용 가능한 시간은 12시간이다.

 

15ledpovleeminju 기자소개
제작 / 사진 / 글
이민주 객원 기자
현재 원주 한라대학교 전기전자 공학과를 재학중이며,
개인 홈페이지 http://www.itstyle.kr 운영중.
Leave A Comment

*