[9호]자전거 디지털 속도계 만들기
똑똑해진 내 자전거!?
디지털 속도계 만들기
이민주 객원 기자
요즘 자전거를 타고 다니는 일명 “바이크족”이 매우 많아졌다. 서울에서만 해도 기름 값 폭등에 잦은 교통체증에 자전거 타기가 대세로 떠오르면서 자전거를 빌려 타고 다닐 수 있는 공공자전거 제도가 요즘 인기이기도 하다.
개인 자전거를 타고 다니는 사람들에게도 자전거 용품에 투자하는 사람들이 많아지면서 운행거리와 속도를 볼 수 있는 자전거 속도계는 요즘 주위에서 흔히 볼 수 있는 물건. 그런데 기존 자전거 속도계는 무엇인가 식상하다. 항상 같은 모양과 어두운 LCD표시는 새로운 것을 만들어보고 싶게끔 필자를 자극하기에 충분했다. 기존 속도계의 기능 이상을 유지하면서 나만의 자전거 속도계를 만들어 보자.
제작 방법
디지털 자전거 속도계를 만들기 위한 부품과 공구들이다. 자세한 내용은 부품표를 확인하자.
< 자전거 속도계의 상단 회로도 > |
< 자전거 속도계의 하단 회로도 > |
참조 | 부품명(디바이스마트 검색어 기준) | 사용내용 | 개별예상 단가 | 수량 | 수량가 |
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의 위치를 정한다.
기판의 홀 간격은 일반적인 기판보다 2배 좁은 1.27mm이고 홀 구멍의 크기 역시 매우 협소하기 때문에 FND와 LED의 다리는 최대한 기판에 맞춰 꽂는다.
필자는 기판을 2층 구조로 만들 예정인데 위쪽은 FND, LED가 배치되고 아래쪽은 각종 제어IC와 부품들이 배치된다.
FND와 LED를 납땜하는데 기판을 뒤집을 때 부품이 기판에서 떨어지거나 간격이 벌어질 수 있으니 손으로 최대한 고정하고 납땜한다.
버튼의 위치도 정해 납땜한다.
필자는 속도계를 핸들 왼쪽 프레임에 장착하여 왼손으로 쉽게 조작하게 하려고 왼쪽 상단에 부착했다.
FND와 LED주변을 가위로 잘라낸다. 이 기판은 원래 전용의 커터나 톱으로 잘라야 정석이겠지만 두께가 얇아 일반 가위로 쉽게 잘라낼 수 있다. 기판의 크기는 사용될 리튬폴리머 배터리의 크기 기준으로 잘랐다.
아래쪽 기판에 사용될 IC들을 부착한다.
자전거가 멈출 경우 시간이 표시되는데, 이 때 시간정보는 RTC라는 부품에서 얻는다. RTC를 움직이는 32.768kHz의 크리스탈을 RTC와 가까운 쪽에 부착한다.
참고로 CL값이 6pF인 것이 최적이지만 디바이스마트에서 파는 크리스탈은 6pF짜리가 없다. 필자는 18pF의 값을 갖는 크리스탈을 사용했는데 1개월에 몇분 정도의 오차가 발생하지만 필자에겐 문제가 없는 수준이어서 그냥 사용하였다.
전원은 모든 부품에 연결되어야 하므로 IC소자의 전원을 먼저 배선한다. 나중에 배선하게 되면 주변 다른 배선들이 먼저 차지하게 되어 전원 선을 점프해야 할 상황이 오게 될 수 있다. 전원은 점퍼 없이 연결한다면 나중에 수리할 때 혼동하지 않을 것이다.
그 외의 선은 점퍼를 하는데 포트를 절약하기 위해 여러 IC가 포트 공유를 많이 했으므로 서로 쇼트가 나지 않도록 주의한다.
주의할 것은 MCU의 전원, FND 스위칭, 풀 업 저항에는 배터리에 직결 연결, 이것을 제외한 나머지 부품의 전원(Vcc)은 Port B1번에 연결한다. 슬립모드에서는 모든 포트가 Low로 출력되어 주변 소자에서 소모하는 전류를 최소화 한다.
이제 주변 부품들인 콘덴서, 저항, 다이오드 등을 부착한다.
부품들이 모두 작기 때문에 납땜하기 어려우므로 핀셋을 이용해 고정한 후 납땜한다.
2층으로 구성된 기판을 서로 연결해야 하는데, 쉽게 탈부착이 되도록 핀해더(핀헤더 BH127S-1920-40G-2025 (1.27mm), 핀헤더소켓 BS127S-1935-40G (1.27mm))를 사용한다.
속도센서와 충전 어댑터 연결용 잭을 부착한다. 기판아래쪽을 향할 것이므로 기판에 구멍을 내고 어댑터 잭(DC-022)을 부착한다.
자전거 프레임에 고정 할 때 케이블 타이를 이용할 것이므로 리드 스위치부분은 무리가 가지않도록 기판을 길게 하는 것이 좋다.참고로 속도센서와 충전 어댑터는 같은 잭을 사용토록 구성했는데, 자전거 운행 시 충전 잭이 열려 있으면 이물질이 상당히 많이 들어가기 때문에 항상 닫혀있게 하기 위함이다.
남는 기판 조각에 리드스위치를 부착한다. 리드스위치는 유리관 형태로 쉽게 부러질 수 있고 손을 다칠 염려가 있으므로 손톱을 이용해 구부리거나 펜치등을 이용하는 게 바람직하겠다.
함께 구매한 전선을 이용해 센서 길이를 연장하고, 어댑터 잭(DC잭 플러그-2파이)을 연결한다.
참고로 32ms 정도 내에 반응한 신호는 무시하도록 되어있다.
이제 프로그램을 다운받아야 한다. AVR칩에 프로그램을 다운로드 하기 위해서는 ISP로 연결해야 하는데, 별도의 ISP포트를 마련하지 않았으므로 사진과 같이 외부에 점퍼 선으로 연장해 연결한다. www.it-style.kr/10049 에 접속해 첨부파일을 다운받아 압축을 해제한다.
*.hex와 *.asm파일이 있는데, asm파일은 사용자가 수정이 필요할 경우 사용할 수 있는 어셈블리어 원본 소스파일이고, hex파일은 수정 없이 그대로 사용할 경우에 사용한다.
최종 기판이 완성된 모습이다.
상/하 기판을 연결한다.
FND를 사용하는데, 낮에는 잘 안보일 가능성이 있으므로 표시부는 암적색 아크릴(2T)을 사용했다.
암적 아크릴은 화면 전체 배경을 어둡게 하고 빨간색 불빛만 통과시키므로 자전거 운행시 보는데 도움이 된다.
리튬폴리머 배터리를 기판 아래쪽에 부착한다. 이 때 납땜 면에 배터리가 부착되면서 손상될 가능성이 있으므로 얇은 스펀지나 완충제를 덮어준 후 배터리를 올린다.
배터리 아래에는 네오디움 자석을 부착했다. 속도계는 도난 염려가 있으므로 쉽게 탈부착하게 하기 위함이다.
네오디옴 자석은 수축튜브를 씌우면서 고정될 것이므로 특별히 고정하지 않아도 된다.
본체, 속도센서는 수축튜브를 이용해 방수가 되도록 씌우고 열풍기나 가스레인지, 라이터 등을 이용해 가열한다. 바인더 철심도 녹이 슬거나 자전거 프레임에 흠집을 낼 수 있으므로 수축튜브를 씌워준다.
완성된 모습이다.
자전거 속도 센서에 사용되는 리드스위치는 자석에만 반응한다. 따라서 자전거 바퀴에 자석을 달아줘야 하는데, 가운데 구멍이 뚫린 자석을 선택한 이유도 쉽게 자전거 바퀴에 매달기 위해서다.
가급적 바퀴 중심쪽에 달아야 원심력이 덜 작용하고, 센서와 자석이 닿는 시간도 길어져 유리하다.
속도 센서를 앞바퀴 프레임에 부착한다. 바퀴가 회전할 때마다 리드스위치에 자석이 가까이 가게 해야한다.
보통 자전거 프레임이 철로 되어 있어 자석이 달라붙지만, 알루미늄처럼 자석이 붙지 않는 다른 소재를 사용한 경우가 있다. 필자의 경우도 자석이 붙지 않아 속도계를 자석으로 붙일 수 있도록 프레임에 바인더 철심을 부착했다.
바인더 철심 여러개를 이어붙이고 자전거 핸들(프레임)에 단단히 고정한다. 바인더 철심은 자전거 프레임에 흠집을 줄 수 있고 비를 맞으면 부식될 수 있으므로 수축튜브를 씌우고 양쪽을 봉합해버린 후 부착해야 한다.
바퀴 둘레를 측정하여 속도계에 입력해야 정확한 거리와 속도가 표시된다.
운행할 때만 자전거에 부착하도록 하고 도난 방지를 위해 평상시에는 자전거에서 분리해 집이나 사무실에 보관한다.
버튼만 누르면 시계를 보여주고, 속도계 후면에 자석이 있으므로 자전거를 타지 않을 때에는 냉장고나 현관문에 붙여 시계용으로 사용해도 좋을 것이다.
사용 방법
슬립모드 상태에서는 자전거 바퀴가 회전하거나 버튼을 누르면 핀 변화 인터럽트가 발생해 깨어나게 된다. 구지 속도계를 신경 쓰지 않아도 스스로 사용치 않을 땐 슬립모드, 운행 시 웨이크업을 반복한다. 깨어날 때 배터리 용량이 15%(자체 측정 기준)이하일 경우 절전 모드(시간/속도만 표시)로 동작하는데, 키를 눌러 모드를 변환하면 절전모드를 해제할 수 있다.
키 조작 설명
속도계에는 1개의 버튼으로 모든 동작을 수행한다. 버튼의 동작 방법은 다음과 같다.
키조작 | 메인화면 동작 설명 | 설정화면 동작 설명 |
짧게 한 번 누름 | 표시 화면 전환(총 거리 → 운행 거리→운행시간→ 운행거리 평균속도→ 절전 화면) | 설정 값 증가,설정 메뉴 변경 |
짧게 두 번 누름 | 총 거리 화면 : 메뉴 진입그 외 화면 : 운행 거리/시간/평속 초기화 메뉴 진입 | 설정 값 입력 완료(커서를 다음 항목 으로 이동), 저장, 수행 |
길게 한 번 누름 | 배터리 잔량 조회 | 설정 값 입력 취소(커서를 이전 항목으로 이동, 저장하지 않고 취소 |
기본적으로 ATtiny24가 모든 것을 제어한다. 4017은 10 디지트 FND를 선택하고 4094는 FND패턴을 뿌려주며, DS1302를 이용해 시간을 표시해준다.
ATtiny24가 슬립모드에 진입하면 주변 부품에 전원은 모두 차단된다.
자전거 속도계를 장착하면 내 자전거의 속도가 얼마인지 알 수 있다는 점도 좋지만 장거리 운행 시 일정한 속도로 자전거 운행을 할 수 있어 목적지 까지 효율적으로 체력을 유지하며 운행할 수 있는 등 운전자에게 다양한 편리함을 준다.
하지만 자동차 운행 시 내비게이션 조작이 매우 위험한 것처럼, 자전거 운행 시에도 표시되는 내용은 빠르게 참고만 하고 자전거 운전에 집중해야 할 것이다.
기자소개 제작 / 사진 / 글 이민주 객원 기자 현재 원주 한라대학교 전기전자 공학과를 재학중이며, 개인 홈페이지 http://www.itstyle.kr 운영중. |