안녕하세요. 루리웹에 오랜만에 글을 올립니다.
개인적으로 피지컬컴퓨팅에 관심이 많아 가끔 DIY 프로젝트를 진행하고 있습니다.
예전에 라즈베리파이를 이용해 오락실 게임기를 제작하기도 했었는데,(루리웹 게시글) 이후 오랜만에 DIY 장기프로젝트를 진행했습니다.
(개인적으로 이런 장기 프로젝트를 '소박한인생로방프로젝트' 라고 부르고 있습니다.)
> 한글시계 프로젝트 https://github.com/suapapa/HangulClock
아두이노와 LED를 사용해 5분 단위로 현재시간을 한글로 표시하는 시계 제작 프로젝트로 suapapa 님의 프로젝트를 보고 영감을 받아 제작하게 되었습니다.
아두아노를 이용해 5분마다 시간을 한글로 표시하는 시계로, 초 단위로 정보를 제공하는 일반적인 시계와 달리,
5분의 여백을 한글이라는 감성으로 제공한다는 점이 매력으로 다가오더군요.
완성된 시계는 불멍 대신 시계멍 때리기 좋은데, 5분이 이렇게나 긴 지 새삼느끼게됩니다.
주요 부품
- Arduino Pro Mini(5V)
- LED Strip Light — SK6812 60LED
- DS3231 RTC(Real Time Clock)
- 한글 프린트 시트지/ 아크릴 판 / 소형액자
- Arduino Sketche / IDE
*옵션) FTDI232 USB Uploader / USB C 타입 충전모듈
하드웨어 제작은 생각보다 단순합니다.
액자틀에 아두이노와 RTC, LED 스트립을 연결하면 끝입니다.
다만 하드웨어, 특히 아두이노와 GPIO 개념이 거의 초보 수준이라 하드웨어의 개념 이해를 위한 사전 학습시간이 무척 오래 걸렸습니다. GPIO의 개념, Arduino IDE 사용법과 프로그래밍 개념잡기, RTC는 어떻게 작동하고, 슬립모드와 인터럽트(Interrupt)의 개념, RGB와 RGBW는 무슨 차이인지 등…
여기에 더해, 발견한 오픈소스를 사용하지 못하게 되어 코딩까지 직접해야하는 상황이었습니다.
그런데 문제는 전 개발을 전혀 할 줄 모릅니다. 좀 더 자세히 말하자면 코드의 흐름은 대략 읽을 수 있지만, 직접 코딩은 전혀 할 줄 모릅니다.
마치 문법이 안되어 영작은 못하지만 독해는 어설프게나마 되는 상황 이랄까요?
그래서 요즘 핫 한, chatGPT의 큰 도움을 받아 소프트웨어제작까지 성공적으로 마무리 할 수 있었습니다.
덕분에 코딩에 대한 막연함도 해소가 되었고 다른 코딩에도 욕심이 생겼습니다.
소프트웨어가 준비되니 이제 각 부품을 납땜으로 연결하여 마무리…
하드웨어 제작과 코딩을 병행하다보니 시간이 꽤 걸렸지만, 완성된 결과물을 보니 역시 또 하나의 추억을 만든 것 같아 뜻 깊었습니다. 무엇보다 코딩에 대한 막연함에서 벗어난 계기가 되었고, 여세를 몰아 다음에는 앱 프로젝트를 실행해 볼까도 싶어졌습니다.
아이디어를 구체와 할 수 없는 저 같은 기획자에게 AI는, 그 가능성을 확장시키는 멋진 도구임이 분명합니다.
완성된 코드는 Github에서 확인할 수 있습니다. (작동방식을 이해할 수 있도록, 코드에 모드부분에 주석을 최대한 달았습니다..)
GPT의 도움으로 코드에 구현된 기능들은 다음과 같습니다.
1) 아두이노, DS3231 RTC, SK6812 LED를 연결해 5분단위로 시간 표시
2) 보조배터리 전원을 고려하여, 저-전력 시스템을 위해 아두이노가 LED에 시간 표시 후, 5분간 슬립모드로 전환. 슬립모드로 전환한 아두이노를 5분마다 알람으로 깨우기 위해 RTC의 Interrupt 신호 제어
3) 5분 간격의 슬립모드 전환 작동에 있어, 최초 전원이 들어갔을 때 시간이 5분단위가 아닐 경우(e.g 1시 13분) 발생하는 시차동안 슬립모드 전환을 보류하는 보정코드 추가
4) 21:00 ~ 6:00 야간 시간대에는 LED 밝기를 30%이하로 낮춰 조도 조절
5) 다른 한글배치에도 코드를 쉽게 수정해 사용할 수 있도록 시간/분 배치를 5X5배열식으로 정의
[제작 후기]
KC 인증은 받으셨는지...
구매는 어디서 하면 되나요?!
구매는 어디서 하면 되나요?!
실제 판매하는 사이트도 있긴한데, 이건 왠지 직접 만들고 싶었습니다 :)
굉장히 신기한데, 코딩이 힘드신데도 챗gpt로 짜셨다는게 인상적입니다. 혹시 소프트웨어에 신경쓰신 시간이 궁금한데, 챗gpt로 코딩하는데 얼마나 걸리신거죠? :3
GPT로 코딩을 완성한 부분이 가장 뿌듯했는데, 이 부분 관심가져 주셔서 기쁘네요 :) 스케치가 대중적인 C++ 언어지만, 위 본문에서처럼 저는 코드를 읽을(?)줄만 알아서 시간이 좀 걸렸습니다. 굳이 비중으로 따지자면 하드웨어 : 소프트웨어 각각 1:1 비율이지 않을까 싶습니다. 다만, 링크로 걸려있는 제작기 본문에도 언급했지만, GPT3.5 버전의 경우 AI 환각현상(AI Hallucination)으로 인해 잘못된 정보를 제공하는 바람에 이 부분의 해결을 위해 삽질을 좀 했습니다. 결국 GPT 4.0의 도움(?)으로 해결했지만 이런 부분은 주의를 해야할 듯 합니다.
,,,,??! 와디즈 펀딩 가시죠
기존에 펀딩 제품이 있긴했지만, 이런 기기들은 왠지 삽질해가면 직접 만들었을 때 애착이 더 생길 것 같지 않나요? :)
흑흑,,,문돌이는,,,문돌이는 울수밖에,,,😭😭😭
자다가 시계 확인하기 유용하게 리모컨으로 불 껐다 켰다하게 해보면 어떨려나여
시계는 언제든 항상 켜 있어야 제 기능을 할 수 있을 듯 싶어 이 시계도 24시간 켜져있어요. 대신 23시~6시 사이에는 시계 기능을 하면서도 취침에 방해되지 않도록 LED의 조도가 자동으로 최소로 낮춰지도록 설정을 해 두었습니다. :)
오 더 좋은 방법이 있었군요! 대단한 분이네용
이번에 맛보기로 사용중인 4o로 chatCPT로 회귀분석 변형 툴 만드는거 도움좀 받았는데 효율이 좋아진다거나 생산성이 좋아진다는걸 체감했습니다. 혼자 했다면 몇배는 더 시간을 들였어야 할 작업을 많이 줄일 수 있더군요..
KC 인증은 받으셨는지...
오 금손이시네요. 잘봤습니다.
저도 이시계 사용중인데 ... 만드실줄이야 대박 입니다 ^^
옛날 대학 4학년때 한글시계 만들었던게 기억나네요
예전 챗지피티는 코드 짜달라고 하면 중간중간에 함정카드 숨겨두고 그랬는데 4o는 그런게 거의 없더군요
이거 일하는 곳 1층에 커피집에서 본건데 이게 공장제품이 아니라 개인 제작품이였군요 이쁘다 생각했었는데 ㅎㅎ
겁나 불편하네...
능력자시군요. 인테리어용으로 팔아도 팔리겠네요. 멋지십니다
가게에서 봤던 기억이 있는 제품인데, 직접 만드신 것이 더 깔끔해 보이네요!!! 파세욧!!!!!
코딩 이전단계인 아두이노와 다른 칩들 준비는 어떻게 알고 진행 하신 건가요?
특허 출원하세요!