안녕하세요. 잉여 리베로입니다.
와이파이 시계를 만들어봤습니다.
무려 2년 전에 만들었는데 이제야 포스팅을 하네요.
제작보다 포스팅이 더 힘드네요.
(2년 전 내용이라 기억도 가물가물하고 동영상도 많이 없어져서 순서가 이상할 수 있습니다.)
+
2년 전에 불로소득이 좀 있어서 CNC, 레이저커터기, 3D 프린터를 구입했는데 이 장비들을 사용해서 만들어봤습니다.
장비들 테스트 해보기 위해서 만든 거 같기도 하네요.
장비들은 시간이 나면 리뷰를 해볼게요.
가격 대비 2년 동안 굉장히 재미있게 가지고 놀고 있습니다. ( 장비 세 개 더한 가격이 최근에 산 맥북보다 싸네요.ㅜㅜ)
1. 목적
책상에서 작업하다 보면 시간을 종종 확인하는데 OS에서 제공하는 시계는 작음
컴퓨터가 꺼져 있거나 책상에서 거리가 떨어지면 시간 확인 불가.(노안?)
그래서 탁상시계를 만들어 봤습니다. 정확한 걸로...
2. 목표
1) 전원 연결 시 스스로 시간을 맞추었으면 좋겠다.
2) 정확한 시간.
3) 아날로그(?)
3. 디자인
여러 디자인을 생각해 보았지만 저의 디자인 능력이 거기서 거기인지라
박스에 라운드만 준 디자인으로 만들었습니다.
4. 준비물
NODE MCU -3800원
스텝 모터 28byj-48 드리이버 포함 -2080원
모터 드라이버 ULN 2003 -0원(스텝모터포함)
근접센서 QRD1114 - 600원
저항 10kΩ 20Ω - 100원
월넛 나무 - 3000원
LED neoPixel 12알 - 7500원
마이크로 5pin 모듈 -2800원
아크릴 - 500원
5. 동작 플로우
1) 전원이 연결되면 node mcu에서 지정된 AP에 연결한다.
2) 분침이 근접센서까지 움직여 원점을(12시) 가리키게 한다.(영점 조절)
3) 연결된 AP에서 시간 데이터를 받는다.
4) 받은 시간 데이터만큼 분(min-스텝 모터)이 움직인다.
5) 받은 시간 데이터로 시(hour)를 LED를 점등시킨다.
6) 시간이 데이터 체크. 분 단위로 변경이 있을 때마다 분-min(스텝 모터) 과 시-hour(LED) 움직인다.
6. 제작
간략한 제작 순서
월넛으로 외부 하우징 만들기
CNC로 각종 부품 들어갈 홈 파기
레이저 커터기로 시 - LED로 표시될 , 분 - 스텝 모터 (센터), 근접센서를 노출시키기 위해 구멍 뚫기
회로 만들기
하드웨어 프로그래밍
3D 프린터로 내부 하우징 출력
레이저 커터기로 분침 제작
각 부품들 조립
샌딩
오일칠
1) 디자인 보다 여유로운 사이즈로 나무를 재단합니다. 목재가(호두나무) 디자인만큼 두께가 나오지 않아 두 개를 집성을 합니다.
2) CNC로 내부 하우징이 들어갈 만큼 팝니다.
반대면을 레이저 커터로 근접센서, 시간이 표시될 12개 구멍, 분침을 위한 모터 구멍을 뚫습니다.
테이블쏘로 여분을 자르고 모서리 부분을 밸트센더로 둥글게 만들어 줍니다.
모델링 한 거랑 비슷하게 나왔습니다.
3) 회로
위 그림처럼 회로를 구성했습니다. 간단합니다.
회로를 최소한 크기로 만들고 열심히 납땜 후 근접센서가 제대로 작동하는지 테스트합니다.
5) 내부 하우징
만든 회로, 스텝 모터, 선, 전원모듈 크기를 고려해서 내부 하우징을 디자인을 합니다.
3D 프린터로 출력
아주 거칠고 이상하게 출력 됐네요. 괜찮습니다. 내부 하우징이어서 안 보입니다. 사이즈만 맞으면 됩니다.^^
6) 펌웨어 고려 사항
(1) 컨트롤 유닛 -MCU
와이파이로 데이터를 받아서 정확한 시간을 구현하는 게 목표였습니다. 여러 보드들이 있으나 Node mcu를 선택했습니다.
Node mcu는 ESP-12E(와이파이모듈)에 CP2102 (USB-UART)가 붙어있는 와이파이 개발 관련 MCU 개발 보드입니다.(버전마다 스펙이 조금 다름)
Node mcu 와 마이크로 5핀 케이블만 있으면 편하게 개발할 수 있어서 이 보드를 선택했습니다.
(2) 분침
분침은 스텝 모터를 컨트롤을 했습니다.(가장 골 아팠던 부분)
28BJY84는 4상 스텝 모터인데, 위 스펙을 보면 Stride angle이 5.626/64.
스텝 모터가 한 바퀴(360도)를돌려면 360 / 6.626 *64 = 4096스텝이 필요합니다.
근데 4096 스텝을 주어도 정확한 360가 아니라 360도 보다 더 움직이는 상황 발생하더군요.
인터넷을 검색을 해보니 실제로는 4076 스텝에 한 바퀴 돈다고 하네요.
그래서 보정을 해주기로 했습니다.
분침은 1분당 6도씩 움직이는데 4076/60을 하면 67.933333 스텝이 필요로 하게 됩니다. 68 스텝을 주면 오차가 발생하게 되죠.
그래서 나누어떨어지는 90도(15분, 1/4)를 기준으로 스텝을 나누기로 했습니다.
90도에에는 4076 / 4 = 1019 스텝이 필요하므로 , 90도(15분, 1/4) 15 30 45 60 분일 때는 67스텝 나머지 시간 동안은 68스텝을 주었습니다.
15분 동안
1 2 3 4 5 6 7 8 9 10 11 12 13 14 분(14번) 14*68 = 952
15 분 (1번) - 67스텝 1*67= 67
952+ 67 = 1019 스텝
90도에 1019 스텝 4번을 주니 정확하게 360로 돌아가네요.
분침 요약 ) 스텝 모터 스펙이 이상해서 보정을 했습니다.
(3) LED Neopixel
LED를 점등해서 시간을 나타냅니다.
네오 픽셀은 5V, GND, data 핀 하나만으로 여러 개의 LED를 밝기 색까지 조절할 수 있습니다.
스트립으로 구매했는데 잘라서 출력한 내부 하우징에 쏙 하고 넣습니다.
짧은 와이어 납땜은 막노동.
시간을 나타내는 12개 LED 테스트
7) 분침
분침은 어두운 호두나무랑 대비되는 밝은 너도밤나무로 했습니다.
8) 조립 & 마무리
출력한 내부 하우징을 외부 하우징에 넣어줍니다.
스텝모터와 회로 조립.
뒤판과 마이크로 5핀 전원모듈 조립.
튀어나온 하우징 부분을 뒤판 높이에 맞춰 테이블쏘로 잘라냅니다.
샌딩 후 오일칠 하기.
- 단점
기존 시계랑 시간 표시 방법이 다르다 보니 좀 적응이 필요합니다.
시침이 움직이는 게 아니라 LED로 켜지니까 59분쯤 되면 좀 헷갈림. (분침이 굵어서 그런듯)
- 장점
아날로그 느낌이 나는데 오차가 없음.
전원을 다시 연결해도 알아서 시간을 맞춰준다.
지겨운 제작영상은 아래
01 무선 충전기 만들기 - https://www.clien.net/service/board/use/16055676CLIEN
02 스툴 의자 만들기 - https://www.clien.net/service/board/use/16146653CLIEN
03 디지털 액자 만들기 - https://www.clien.net/service/board/use/16206550CLIEN