아두이노프로세싱 프로그래밍

초보자가 아두이노 코딩을 제대로 가장 빠르게 마스터 할 수 있는 방법은 무엇일까?

coding art 2017. 3. 27. 17:39
728x90

아두이노 코딩을 제대로 가장 빠르게 마스터 할 수 있는 방법은 무엇일까? 결국 처음 도전해야 하는 과제는 너나 할 것 없이 바로 아두이노 코딩에 의한 LED on OFF 이다. 처음 에는 도움을 받으면서 진행을 했으며 과연 ON OFF 가 되는지 상당히 긴장했었다는 게 사실이다.

아두이노 코딩을 시작한지 아직 불과 3개월이 넘지 않았지만 아마도 초보자가 넘기 힘든 부분이 바로 이런 것 아닐까? 해서 정리해서 올린 것이 바로 아두이노 초보자를 위한 아두이노 코딩에 의한 LED on OFF이다. 아니나 다를까 블로그 게시판 방문 기록을 검토해 보니 그 비중이 대단히 큰 걸로 파악되었다.

아두이노를 시작한 때가 201611월 말부터인데 그당시에 GPS 센서를 장착한 조립식 드론인 아두콥터를 접하면서 자기장 센서에 관심을 가졌었다. 센서를 인터넷으로 구매하고 코딩은 인터넷에 아두이노 자기장센서로 검색하면 경험자들의 코딩 사례를 찾을 수 있기에 그대로 복사해서 돌려 보았다. 이 과정에서 라이브러리를 찾기 위해 GITHUB라는 코딩 저장소도 알게되었다. 시행착오를 많이 겪었는데 작동이 되긴 하나 재현성에 문제가 많았다.

 

특히 Processing 프로그램을 사용하여 나침반 애니메이션까지 되는 코딩 예제도 있어 베껴서 해보았는데 되기는 개뿔! 물론 사기는 아니지만 제대로 된 코딩이 없다는 게 그때 판단이었다. 아울러 자기장 센서를 총 8개 구해서 사용해 본 결과 7개는 아예 작동이 되지 않았고 다행히 하나가 작동이 되어 베낀 코딩을 사용해 보았다. 그런데 이마저도 내구성이 없어 12월을 못넘기고 죽어버렸다. 결국 거의 한달 가량 불량 부품으로 인한 시행착오 속에 시간을 낭비하다가 성공한 코딩이 바로 프로세싱 프로그램에 의한 아두이노 보드의 LED 제어이다. PC와 아두이노와의 통신에 관해서 쥐뿔도 아는 게 없었지만 어쨋든 성공적으로 작동하였다.

 

연말 12월에는 ESP-01 와이파이 통신 센서를 다루어 보았는데 역시 많은 시간을 허비하였다. 이상한 AT 명령어라는 것 을 찾아 배우면서 와이파이 스캔까지는 성공했는데 배선이 5줄이라 너무 복잡했고 펌웨어 업데이트도 되다 말다 엉망진창이었으며 재현성이 없는 편이었다. 완전히 시행착오로 거의 한 달을 날렸다. 사물인터넷은 커녕 와이파이 콧구멍 근처까지도 못 가본 상태였다.

 

그래서 이런 내구성 문제와 재현성이 좋은 제품이 없을까 해서 찾아낸 것이 Cactus Micro wifi 보드이다. 12월 한달 간 보고들은 풍월로 GITHUB에서 프로그램을 다운받아 와이파이 클라이언트 및 Thingspeak 코딩을 어렵지 않게 성공시켰으며 온습도 측정 결과를 서버에 저장할 수 있는 기법을 갖추게 되었다.

 

아울러 이상한 이름을 가진 NodeMCU 보드도 접하게 되었는데 내구성 재현성 및 가성비가 좋은 와이파이보드로서 사물인터넷에 접근 가능성을 보여주는 웹서버 코딩에 적합한 제품이다. 지금까지 블로그에 게재된 대부분의 코딩이 거의 12월 두 달간에 이루어졌고 독자들도 가져가서 사용할 수 있도록 조치해놓았다. 창의성이 요구되는 코딩도 있었다. 키보드 코딩이 대표적이며 이를 이용한 계산기 프로그램도 흥미로워 보인다.

 

일단 코딩을 아주 효율적으로 배우려면 앞에서 설명했듯이 시행착오를 줄여야 한다. 이미 언급된 자기장 센서 와 ESP8266 ESP-01 센서를 아예 다루지 않는 것도 좋은 방법이다. 그러면 의 기간 즉 1개월이 단축 될 것이다. 아울러 성공한 코딩 사례가 있다면 즉시 무조건 베껴서 해보면 된다. 일단 작동이 되면 어떻게 수정할 것인가 하는 문제는 그다지 어렵지 않다.

 

결론적으로 말해서 본 블로그를 잘 보고 활용한다면 누구나 다 3달 걸렸던 코딩 기간을 한 달 이내로 충분히 단축이 가능할 것이다. 단 한 가지 사물 인터넷이든 무선 와아파이 코딩이든 코딩을 배워 활용하기 위한 개인의 목표가 있고 흥미를 느낄 수 있으면 아주 큰 도움이 된다.

 

코딩이 컴퓨터 언어라 체계적으로 문법도 배워야 하지 않겠느냐는 의견도 있지만 코딩도 결국 말배우기이므로 그냥 취미로 한 달 정도 하다보면 가랑비에 옷 젖듯이 자연스럽게 다 배우게 된다. 하다보면 웹서버 프로그램 코딩에서 HTML이나 Java Script 와 같은 언어도 출현하는데 그대로 조금씩 흡수하면 된다.

 

지금은 무선 와이파이 기술에 이르기까지 아주 단기에 체득한 코딩 능력으로 무엇을 해야 할 것인지를 생각해 보는 단계이다. 구글의 빅 데이터 분석 툴인 트랜드로 분석해 본 결과 글로벌하게 아두이노와 함께 강력한 관심을 받고 있는 게 라즈베리라는 점과 동시에 우리나라가 사물인터넷에 대한 관심도가 전 세계에서제일 높다는 것이 밝혀졌다. 따라서 자연스럽게 라즈베리 모듈로 이행하는 계기를 찾는 중이며 현실적으로 사물인터넷 기술을 접목해 볼 계획이다.