아두이노 강좌 4

아두이노로 만드는 로봇 Blinky 2편

요즘 무규칙이종결합공작소 용도변경에서는 아두이노를 이용해서 만드는 로봇 Blinky를 만들면서 아두이노를 공부해보는 워크샵을 진행중이다. 지난 1편에서는 빛 센서를 이용해서 어둠을 감지하면 눈에 있는 LED를 켜주는 방법을 알아봤다. 이번에는 LED를 그냥 켜는게 아니라 서서히 밝아지도록 했다가 서서히 어두워 지도록 하는 것을 구현해보도록 하겠다. 지난번에는 digitalWrite 명령을 써서 LED를 켜고 껐었다. digitalWrite는 최고 밝기로 켜거나 아니면 끄는 것 밖엔 할 수 없다. 그래서 서서히 켜지도록 하려면 밝기를 제어해야 하는데 그때 쓰는 명령이 analogWrite명령이다. analogRead도 A0부터 A5까지 여섯개의 핀에서만 가능하듯이 analogWrite도 특정 핀에서만 가능..

Electronics 2012.01.17

아두이노 기초강좌 4

지난 번에는 주변의 빛 밝기를 감지해서 LED를 끄고 켜는 것을 만들기 시작했다. 그러다 끝에는 LED를 끄고 켜는 경계가 되는 밝기의 기준을 어떻게 잡을 것이냐를 고민하다 다음번으로 미루는 것으로 마무리를 지었다. 역시 오늘일은 내일로 미루는게 제맛이다. 제맛을 너무나 냈는지 어느새 2주가 지났다. 빛센서로부터 들어오는 아날로그 신호를 숫자로 표시해서 본다면 손으로 센서를 가렸을때와 가리지 않았을때의 차이를 LED를 끄고 켜는 경계로 할것인지, 방 전등을 아예 끄거나 켰을 때의 조도 차이를 LED 끄고 켜는 경계로 할 것인지를 결정할 수 있을 것이다. 아두이노보드에 직접 LED숫자판을 달거나 LCD를 달 수도 있지만 그건 좀 복잡하니까 나중에 내공이 쌓이면 해보고, 오늘은 간단하게 컴퓨터를 통해서 빛센..

Electronics 2010.05.11

아두이노 기초강좌 3

오늘은 아두이노를 쓰는 근본적인 이유라고나 할까? 그 이유를 체감할 수 있는 것을 만들어 보기로 한다. 아두이노를 이용해서 세상과 반응 하는 기계를 만드는 것이다. 말은 거창하지만 별거 아니다. 단지 빛에 반응해서 LED를 끄고 켜는 것을 만들어 보는 것이다. 세상과 반응하려면 세상을 읽어야 한다. 기계도 오감을 가질 수 있을까? 사람 처럼은 힘들어도 어느 정도는 가능하다. 빛센서를 이용해서 밝기를 감지할 수도 있고, 카메라를 달면 사물의 모양도 감지 할 수 있지만 아두이노는 카메라신호에서 웃는 얼굴을 구분하는 프로그램을 돌리기에는 좀 벅차다. 그런건 컴퓨터를 이용해서 해야하고 프로그래밍도 좀 어렵다. 그러나 게임기 Wii의 리모콘에 달려있는 적외선카메라는 아두이노에도 붙여서 적외선의 점의 좌표를 전달 ..

Electronics 2010.04.28

아두이노 기초강좌 2

지난번 아두이노 기초강좌1에서는 일단 LED를 켜고 끄는 간단한 코드를 살펴봤다. 아무리 간단해도 프로그램을 전혀 안해봤다면 적잖이 당황했을 것이다. 모르는 프로그래밍 언어로된 코드를 처음 보고 가장 답답한것 중의 하나는, 어떤 것이 바꿀수 없는 명령어이고 어떤것이 바꿀수 있는 변수인지 구분이 어렵다는 것이다. 이런 의문 역시 프로그래밍을 좀 해본 사람이 가지는 궁금증일 것이다. 내가 프로그래밍을 처음 배울때를 최대한 기억해내면서 진행해보겠다. 아무튼 오늘은 지난번의 예제 코드를 좀 더 들여다보면서 이것 저것을 바꿔보면서 어디를 얼마만큼 바꿀 수 있으며, 그럴때 뭐가 달라지는지를 설명해보기로 하겠다. //LED blink example int ledPin = 13; // 13번 핀을 ledPin이라고 이..

Electronics 2010.04.14