[아두이노야 놀자]<20>E-센서보드로 DC모터 제어하기

E-센서보드에 익숙한 여러분을 위해 마지막으로 E-센서보드를 이용해 직류(DC)모터를 제어해보려고 합니다. 실행화면에서 엔트리봇을 마우스 드래그로 제어하는 방식이 아닌 마이크 센서를 건드리거나 입으로 부는 등 방법으로 DC모터를 제어할 것 입니다. 소프트웨어(SW)로 조종하는 것보다 훨씬 더 조작감이 있습니다.

아두이노 보드 위에 E-센서보드를 알맞게 끼워넣습니다.
<아두이노 보드 위에 E-센서보드를 알맞게 끼워넣습니다.>

준비물은 아두이노(UNO)와 USB케이블, E-센서보드입니다. 아두이노 보드와 센서보드를 꾹 눌러서 완전히 결합되게 해주시면 됩니다. 엔트리 하드웨어(HW) 연결 프로그램에서 'E-센서보드(유선연결)'로 연결하는 것 잊지 마세요. 5V핀과 GND핀의 위치를 잘 찾아서 끼워주세요. 디지털 3번 핀은 없고 같은 PMW인 6번 핀에 꽂습니다.

소리(마이크) 센서를 통해 DC모터를 제어할 수 있도록 만들어 봅시다. 아두이노 위에 그대로 센서보드를 장착하고 핀을 바르게 꽂았다면 쉽게 만들 수 있습니다.

엔트리봇 표정의 코드 수정하기.
<엔트리봇 표정의 코드 수정하기.>

[그림 1]처럼 '엔트리봇 표정' 오브젝트를 선택합니다. 기존에는 오브젝트를 클릭했을 때로 시작했지만 이번에는 시작하기 버튼을 클릭했을 때 시작하도록 블록을 수정합니다. 오브젝트 클릭을 해제했을 때로 시작하는 블록은 삭제합니다. 소리 센서값을 최대 255까지 힘들게 올릴 필요 없이 0~200의 값을 -150~150로 바꾼 값으로 x좌표를 옮깁니다.

글상자를 선택합니다. [그림 2]와 같이 3번 핀에 연결돼 있던 DC모터를 6번 핀으로 옮기고 6번 핀을 최종 변환된 값으로 정합니다. -150~150은 엔트리봇 표정의 x좌표고, 0~255는 DC모터 세기입니다. 이제 센서보드 마이크를 툭툭 건드리거나 바람을 불어보세요. DC모터를 더 재밌게 조작할 수 있게 됐습니다.

디지털 6번 핀으로 마이크 센서값 보내기.
<디지털 6번 핀으로 마이크 센서값 보내기.>

좀 더 세밀한 조작을 하고 싶다면 센서보드 슬라이드나 4개 버튼을 이용해 DC모터를 멋지게 다뤄볼 수도 있습니다. DC모터 제어하는 방법을 잘 모르겠다면 '[아두이노야 놀자]<12>직류모터 제어해보기'를 참조하면 됩니다.

DC모터는 대부분 회전하는 전자 기기에 적용할 수 있습니다. 여름철 필수품인 선풍기를 비롯해 RC카의 바퀴, 드론의 날개, DVD 플레이어 등에 활용됩니다. 각도 제한이 없는 무한회전 서보모터와 비슷해 보일 수 있지만 회전방향과 속도를 제어할 수 있다는 점이 다릅니다.

박종진기자 truth@etnews.com

위방향 화살표