들어가며
안녕하세요.
오늘도 과연 이 사람이 뭔 이상한 짓을 했을까 싶은 분들도 계실겁니다. 혹시 아두이노 라는 것을 들어보신 적이 있으십니까? 아두이노는 저같은 꽤나 이상한 소프트웨어 개발자도 적당히 있어보이는 임베디드 하드웨어를 만들 수 있게 해주는 고마운 마이크로컴퓨터 개발과 관련된 프로젝트의 이름입니다.
제 전공은 분명 AVR 프로그래밍 쪽은 아닙니다만, 그래도 예전부터 꽤 꾸준하게 임베디드 하드웨어에도 관심을 가지고 이것저것 취미 수준으로 프로젝트를 했던 적이 있습니다.
이러한 프로젝트의 주제를 전부 나열한다면 끝이 나지 않을 것이지만, 그래도 흥미로울 수 있는 주제에 대해서 일부 나열하면...
- 일본으로 여행 가서 요도바시 카메라에서 사온 전파 탁상시계의 시간1이 잘 맞지 않게 되자 열받아서 만든, GPS와 연동되어 전기만 주면 전혀 시간을 맞출 필요가 없는 매우매우 정확한 탁상시계
- 잘 만들었지만, 슬프게도 제 방엔 GPS 전파가 잘 수신되지 않았습니다.
- 한참 미세먼지에 사람들이 관심을 가지기 시작할 무렵, 국내에서 저렴한 가격에 미세먼지 측정기를 판매하지 않는 것에 한탄하여 만든 소형 미세먼지 농도 측정기 + 온습도계
- 이건 꽤 잘 썼습니다. 부모님이 좋아하셨어요.
- 과연 냉동실 안의 온도는 냉장고 밖에 표시되는 온도계와 비교해서 얼마나 차이가 날까 궁금해서 만든 와이파이 연동 온도계 + 서버 + 인터넷 대시보드
- 각종 법에 의한 전파 인증비용 등 법적인 문제로 상품화 실패...
- 스마트워치 / 스마트밴드가 아직 제대로 나오지 않았을 무렵, 내가 자고 있는지 걷고 있는지 언제 움직였는지... 등등을 IoT 시대에 맞춰서 데이터를 수집해 통계를 내면 뭔가 유의미한 결론을 도출해낼 수 있지 않을까... 해서 진행한
Minori Now!
프로젝트- 샤오미에서 미밴드가 너무 싸게 나오는 바람에...
...등등, 제가 흔히 농담처럼 말하곤 하는 mNetwork 비전리 방사선 연구소TM 는 언제나 혁신적인, 시대의 트렌드를 앞서가는 주제들에 대해서 연구하곤 했었습니다.
오늘은 이와 같이 시대를 앞서가는 매우 혁신적인 주제는 아니지만, 그래도 어느정도는 확실히 엄청난 것을 만들어 보려고 합니다. 그것은 이름하야-
미니어쳐 버스 전광판
입니다.
1. JJY 라는 매우 큰 전파 시계 방송국의 신호를 받아서 시간을 맞추지만, 당연하게도 한국과 일본은 다소 거리가 있기 때문에 매우 원활하게 수신되지는 않습니다.
...네?
전 혁신이 그렇게 거창한 것이라고 생각하진 않습니다. 과연 혁신의 의미라는 것은 무엇일까요?
혁신 革新
noun
- 묵은 풍속, 관습, 조직, 방법 따위를 완전히 바꾸어서 새롭게 함.
혁신 세력.
기술^혁신 技術革新
- [경제] 기술을 근본적으로 새롭게 하는 일.
정보 통신 분야의 비약적 기술 혁신은 생활을 바꾸고 있다.
요약하자면, 즉, 새롭게 한다는 것입니다. 많은 사람들에게서 혁신의 아이콘으로 알려져 있는 스티브 잡스는 자신의 4단계 혁신 이론을 주장하며 이렇게 말했습니다.
- 모방하고 훔쳐라
- 가진 것을 모두 합쳐라
- 다르게 생각해라
- 쉽게 단순화 해라
저는 스티브 잡스의 4단계 혁신 이론 을 보고 너무 감명받은 나머지 살면서 이런것을 활용해 한번쯤은 무언가 의미 있는 일, 즉 혁신을 실천해 보고자 하는 마음을 굳게 먹었습니다. 그러한 스티브 잡스의 가르침을 실천하기 위해 이 프로젝트를 진행하게 된 것입니다.
어떻습니까, 미니어쳐 버스 전광판
, 뭔가 딱 들어맞지 않나요?
아직도 잘 이해가 안 가신다면, 아래를 한번 봐 주세요. 분명 제 생각에 동의하시게 될 것입니다.
모방하고 훔쳐라
앞서가는 회사 / 사람을 빠르게 따라가서 자신도 같이 발전하는 것은 흔히 추격자 (Fast follower) 전략이라고 합니다. 스티브 잡스 아래의 애플은 분명 언제나 최초의 무언가를 만드는 회사는 아니었습니다. 아이팟은 최초의 휴대용 음악 재생기가 아니었고, 아이패드는 최초의 태블릿이 아니었습니다. 사람들은 애플이 모든 것의 선도자 (First mover) 라고 오해하지만, 사실은 완전히 그 반대인 것입니다.
그래서 저는 이미 존재하고 있는 버스 위에 있는 전광판을 모방하기로 했습니다.
가진 것을 모두 합쳐라
애플의 제품들은 언제나 공학적인 요소와 인문학적인 요소를 동시에 충족시키면서 성장해 왔습니다. 기술은 사람을 위해 존재해야 하고, 그를 위해서는 인문학적인 이해가 전제되어야 한다는 것입니다. 이를 위해서는 단순히 공학적인 사고방식에 사로잡히지 말고 실제로 이러한 것을 이루기 위해 우리가 공학적이지만은 않은 다른 학문과 관점에서의 지식과 자원을 활용해야 할 것입니다.
그래서 저는 필요한 부품들을 다 새로 사지 않고 대충 구석에서 굴러다니고 있는 남아도는 부품들을 찾고, 진짜로 어떻게든 안되겠다고 생각되는 부품만 새로 구매해서 가진 것을 모두 합쳤습니다.
다르게 생각해라
위에 이미 설명한 바와 같이 이미 존재하는 요소들을 모방하고 훔친 뒤 가진 것을 모두 합쳐서 새로운 변화로 이끌기 위해서는 평범하게 생각하지 않고 다르게 생각해야 합니다. 다른 사람들이 생각하는 대로만 생각한다면 혁신이 될 수 없기 때문이죠.
그래서 저는 풀 사이즈 전광판이 아닌 조금 다르게 생각해 미니어쳐 사이즈로 만들기로 했습니다. 왜냐면 전 스티브 잡스가 아니기 때문에 큰 혁신은 못 하고 대신 작은 혁신을 노려보기로 했거든요. 뱁새가 황새 걸음을 걸으면 가랑이가 찢어진다고, 전 저의 분수를 아는 사람입니다.
쉽게 단순화 해라
아무리 기술적으로 혹은 예술적으로 혁신으로 만들어진 물건이라도 사람들이 보기에 난해하다면 이건 일반인으로서는 별로 쓸모가 없는 물건이 될 것입니다. 일반인이 보았을 때 직관적으로 이것이 무엇을 하는 것인지 바로 알 수 있어야 이 물건이 진정한 혁신이라고 할 수 있을 것입니다.
그래서 저는 직관적으로 이건 보았을 때 '아 버스에 달린 전광판이다' 라는 것을 알 수 있도록 심미적인 단순화를, 그리고 기술적으로도 SoC (System On Chip) 을 적극적으로 활용하여 단일화 된 보드로 이러한 전광판을 만들었습니다.
결론?
위와 같은 이유로 전 제가 만든 미니어쳐 버스 전광판이야말로 mNetwork 비전리 방사선 연구소TM 의 혁신적인 제품의 계보를 잇는, 잡스의 4단계 혁신 이론으로도 설명할 수 있는 이 시대의 진정한 혁신적인 물건이라고 생각합니다.
...
...
...
...네, 그냥 평소와 같은 헛소리입니다. 전부 다 잊어주세요. 사실은 그냥 심심해서 만들어 봤습니다.
그래서 진짜로, 왜 만들었는가
이젠 거의 10년 넘었나... 동안 오랫동안 알고 지낸 친구 중 그 업계(?)에서는 꽤 유명한 유튜브 채널을 하는 친구가 있습니다. 종이로 교통수단의 모형을 만드는 친구죠. 얼핏 멀리에서 보면 다이캐스트 모형이 아닌가... 싶을 정도로 정말 정교하게 모형을 만들기 때문에 정말로 대단하다고 생각합니다.
저는 흔히 '철커덕 철커덕' 이라거나 '부우웅' 이라고 할 수 있는 사람은 절대로 아닙니다만, 그래도 어렸을 때 탔지만 이제는 다시 볼 수 없는 그런 열차나 버스의 모형을 만들어서 과거의 내가 탔던 교통수단의 모습과 관련된 추억등을 이 친구의 모형을 보면서 느끼곤 합니다. 이 친구가 만드는 모형도 알고 지내는 사이에 계속 '혁신' 을 해왔죠. 모형 차내에 백색 LED를 달아서 실제로 차 내에 있는 조명 등을 재현한다거나... 하는 것 처럼요.
요즘, 이라곤 해도 꽤 오래전부터도 버스를 보면 전면 혹은 측면에 행선표 용도로 전광판이 달려있는 버스가 꽤 있습니다. 이 행선표에는 지금은 바뀌어서 더이상 존재하지 않는 지명이 있다거나, 혹은 그 행선지로 가서 즐겼던 또 다른 추억을 연상할 수 있기도 합니다. 이러한 세월의 흔적을 담고 있는 버스 모형을 조금 더 그 시점과 비슷하게 재현하기 위해서 그 때의 전광판의 내용, 더 나아가서는 실제로 동작하는 전광판이 달려있다면 좋지 않을까 하는 생각이 들었습니다.2
그래서 이런것을 꽤 간단하게 만들 수 있을 것 같은데, 버스 모형에 넣으면 어떨지를 이 친구에게 물어봤고, 반응이 그렇게 나쁘지 않아서 한번 만들어보게 되었습니다.
2. 이와 관련해서는 개인적으로는 차내 전광판 - 각종 캠페인... 광고 영상... 등을 재현하는 것에 대해서도 개인적인 욕심이 있습니다. 코로나 19 시대를 맞이해서 차내 전광판/TV에도 승차했을 때 반드시 마스크를 써달라는 등의 문구가 나오거나 하게 되었죠. 이러한 요소도 먼 미래에 보게 된다면 또 하나의 추억이 되지 않을까 싶은 마음입니다.
어떻게 만들까
버스에 사용하는 전광판은 대부분 RGB 혹은 여러 종류 색상의 LED로 만들어져 있습니다. 저도 가능하면 이 점을 충실하게 반영해서 모든 색상을 표시할 수 있는 전광판을 만들고 싶긴 했습니다만, 아쉽게도 RGB를 모두 지원하는 소형 OLED 패널을 쉽게 구할 수 없었습니다. 그래서 이번 프로젝트에는 검정과 흰색만을 표현할 수 있는 256*64 해상도를 가진 OLED 패널을 사용하기로 했습니다.
저렴한 OLED 패널 특성상 당연하게도 장시간 같은 이미지로 켜둔다면 번인과 관련된 문제가 발생할 것으로 예상되지만, 이 패널은 앞으로도 쉽게 구할 수 있을 것이기 때문에 교체하면 될 것이며 애초부터 365/24/7 계속 켜둘 물건이 아니기 때문에 큰 문제가 되지 않을 것이라고 생각했습니다.
이 디스플레이 모듈을 구동할 물건으로는 사실 이런거에 쓰기엔 성능이 지나치게 높지만 어쨌든 집에 남아돌아서 굴러다니고 있던 ESP8266 보드를 사용하기로 했습니다. 비교적 높은 해상도의 디스플레이므로 빠른 화면 갱신을 위해 높은 클럭의 4pin SPI 인터페이스를 사용할 것이고 ESP8266 내부의 하드웨어 SPI와 온보드 GPIO 포트를 통해 CS/DC/RST 핀을 제어하기로 했습니다. 그래도 버스 속도에 한계가 있기 때문에 눈이 좀 예민한 사람은 순간적으로 위에서 아래로 한번 쑥 훑으면서 업데이트가 되는 걸 볼 수 있겠죠.
이 시스템을 구동하기 위해 필요한 입력 전압은 5볼트가 될 것이며, 제가 사용하는 ESP8266 개발보드 (NodeMCU) 보드 위에 있는 온보드 전원 레귤레이터를 통해 ESP8266 자체와 OLED 모듈을 구동하게 될 것입니다. 다행스럽게도 모든 로직 레벨이 3.3볼트이기 때문에 로직 레벨 컨버터는 필요하지 않겠지요.
ESP8266 자체는 분명 Lua를 사용하는게 일반적이겠지만, 저는 그냥 개발의 편의성을 위해 Arduino 플랫폼을 (...대충 C++랑 유사한 것을) 사용해서 개발했습니다.
약간의 한계점
OLED 구동에 생각보단 전기가 많이 필요하기 때문에 전압 강하가 꽤 일어납니다. 그 덕분인지 모르겠지만 디스플레이 모듈 내부의 구동 전압 (12V) 컨버터가 비명을 지르더라고요. 충분히 실내에서 볼 순 있지만 생각보다 그리 밝지 않고, 그나마도 약간은 시끄럽습니다. 중국제 패널 답게 스펙시트를 못 믿겠네요, 분명 VCC가 3.3볼트 같은데 왜 이리 스펙대로의 밝기가 안 나오는거지...
짠, 어때요, 정말 쉽죠?
임베디드 관련으로 취미가 있으신 분은 이미 아시겠지만, 이 프로젝트는 정말로 날로 먹는 프로젝트입니다. 그냥 할 것이 없거든요. 그래서 실제로 이 모형이 어떻게 버스 모형 안에 들어가게 되는지 등에 대한 내용은 실제로 이 전광판이 제 친구에게 도착하고 나서 모형이 나온 뒤 다시 정리해서 적도록 하겠습니다.