안녕하세요. 루리웹에 오랜만에 글을 올립니다.
개인적으로 피지컬컴퓨팅에 관심이 많아 가끔 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배열식으로 정의
[제작 후기]
(IP보기클릭)122.37.***.***
KC 인증은 받으셨는지...
(IP보기클릭)39.119.***.***
구매는 어디서 하면 되나요?!
(IP보기클릭)39.119.***.***
구매는 어디서 하면 되나요?!
(IP보기클릭)211.217.***.***
실제 판매하는 사이트도 있긴한데, 이건 왠지 직접 만들고 싶었습니다 :) | 24.05.07 20:20 | |
(IP보기클릭)14.39.***.***
(IP보기클릭)211.217.***.***
GPT로 코딩을 완성한 부분이 가장 뿌듯했는데, 이 부분 관심가져 주셔서 기쁘네요 :) 스케치가 대중적인 C++ 언어지만, 위 본문에서처럼 저는 코드를 읽을(?)줄만 알아서 시간이 좀 걸렸습니다. 굳이 비중으로 따지자면 하드웨어 : 소프트웨어 각각 1:1 비율이지 않을까 싶습니다. 다만, 링크로 걸려있는 제작기 본문에도 언급했지만, GPT3.5 버전의 경우 AI 환각현상(AI Hallucination)으로 인해 잘못된 정보를 제공하는 바람에 이 부분의 해결을 위해 삽질을 좀 했습니다. 결국 GPT 4.0의 도움(?)으로 해결했지만 이런 부분은 주의를 해야할 듯 합니다. | 24.05.07 20:25 | |
(IP보기클릭)223.38.***.***
(IP보기클릭)211.217.***.***
기존에 펀딩 제품이 있긴했지만, 이런 기기들은 왠지 삽질해가면 직접 만들었을 때 애착이 더 생길 것 같지 않나요? :) | 24.05.07 20:26 | |
(IP보기클릭)175.209.***.***
흑흑,,,문돌이는,,,문돌이는 울수밖에,,,😭😭😭 | 24.05.07 20:54 | |
(IP보기클릭)211.207.***.***
(IP보기클릭)211.217.***.***
시계는 언제든 항상 켜 있어야 제 기능을 할 수 있을 듯 싶어 이 시계도 24시간 켜져있어요. 대신 23시~6시 사이에는 시계 기능을 하면서도 취침에 방해되지 않도록 LED의 조도가 자동으로 최소로 낮춰지도록 설정을 해 두었습니다. :) | 24.05.08 23:09 | |
(IP보기클릭)211.207.***.***
오 더 좋은 방법이 있었군요! 대단한 분이네용 | 24.05.08 23:13 | |
(IP보기클릭)120.142.***.***
(IP보기클릭)211.217.***.***
저도 하드웨어 제작과 프로그래밍을 구글신으로 해결하려 했다면 몇배는 시간이 더 들었을겁니다. 아니... 중간에 포기했었을지도... chatGPT 대단합니다. | 24.05.28 23:42 | |
(IP보기클릭)122.37.***.***
KC 인증은 받으셨는지...
(IP보기클릭)211.217.***.***
저 제작비가 1만원 이내인데 KC인증을 받으려면 배보다 배꼽이 ㅠㅠ 에잇! | 24.05.28 23:42 | |
(IP보기클릭)182.213.***.***
(IP보기클릭)211.217.***.***
감사합니다. 실제로 시계멍 때리기 좋아요. | 24.05.28 23:43 | |
(IP보기클릭)112.160.***.***
(IP보기클릭)211.217.***.***
맨땅에 헤딩하면서 블로그에 내용을 정리해 두었는데, 참고하시면 쉽게(?)만드실 수 있을거에요 | 24.05.28 23:43 | |
(IP보기클릭)124.63.***.***
(IP보기클릭)211.217.***.***
보통 학습교제로 나오는 것은 레이저커팅기로 만들어진건데 전 그 느낌이 싫더라구요. ㅎ | 24.05.28 23:44 | |
(IP보기클릭)124.63.***.***
아크릴하고 저 LED하고 해서 만들었었네요. 작성자님과 비슷하게 만들었습니다~~ | 24.05.31 19:57 | |
(IP보기클릭)211.177.***.***
(IP보기클릭)211.217.***.***
처음에 3.5 버전으로 시작했는데 여러 함정카드 때문에 삽질을 좀 했습니다. 결국 4.0과 claude 조합으로 완성했네요. 4o 로 했다면 좀 더 쉬웠을 것 같아요. | 24.05.28 23:45 | |
(IP보기클릭)218.148.***.***
(IP보기클릭)211.217.***.***
펀딩제품도 있고 상용도 있었는데 왠지 직접 만들어 보고 싶었습니다. | 24.05.28 23:46 | |
(IP보기클릭)1.236.***.***
(IP보기클릭)211.217.***.***
사람마다 다를수도 있지요.... | 24.05.28 23:46 | |
(IP보기클릭)124.49.***.***
(IP보기클릭)211.217.***.***
실제로 보면 인테리어용으로 전혀 손색이 없습니다. :) | 24.05.28 23:47 | |
(IP보기클릭)175.117.***.***
(IP보기클릭)211.217.***.***
마음은 저도 그러고 싶지만, 더 만들 용기가 나지 않네요 ㅠ | 24.05.28 23:47 | |
(IP보기클릭)116.32.***.***
(IP보기클릭)211.217.***.***
웹사이트와 유튜브 영상을 참고했습니다. 연결방법과 프로그래밍 결합은 구글신과 지피티를 통해 하나하나 배웠어요 :) | 24.05.28 23:50 | |
(IP보기클릭)218.157.***.***
(IP보기클릭)211.217.***.***
영감을 준 프로젝트가 오픈소스이기도 해서 저역시 오픈소스로 공개했습니다. 말씀감사합니다. | 24.05.28 23:51 | |