자이로를 이용한 아두이노 밸런싱 로봇

[테크월드=정환용 기자] 지난 나도메이커 1편에 이어 2편에서는 밸런싱 로봇을 함께 만들어 보겠다. 지난번 오또봇에 이어 이번에는 넘어지지 않고 스스로 균형을 잡을 수 있고, 안드로이드 디바이스를 이용해 직접 조종까지 가능한 밸런싱 로봇(B-Robot)을 만들어 보는 시간을 준비했다. 1편에서 아두이노를 한 번 사용해 봤다면, 밸런싱 로봇도 쉽게 따라할 수 있을 것이다. 모델링 파일은 지난번과 같이 3D프린터로 출력했다.

나도메이커 1편 오또봇 편에서는 블루투스 모듈을 이용한 통신을 했는데, 이번에는 ‘ESP8266’ Wi-Fi 모듈을 사용해 무선통신 거리가 더 넓어졌다. 최대 5~10m 정도를 지원하는 블루투스 모듈과는 차원이 다른 통신 거리를 자랑한다. 또한, 아직은 지원하지 않지만 밸런싱 로봇에 실시간 카메라를 설치한다면, 온 사무실을 스파이처럼 구석구석 돌아다니며 누군가를, 혹은 뭔가를 지켜볼 수도 있다.

 

밸런싱 로봇 파츠 소개 – 부품 파츠

아두이노 레오나르도

첫 번째로 밸런싱 로봇의 두뇌 역할을 맡아줄 MCU 부분이다. 오토봇 제작에서는 공간의 제약 때문에 아두이노 나노를 전용 실드에 연결해 사용했는데, 밸런싱로봇에서는 공간의 제약을 딱히 받지 않기 때문에 아두이노 레오나르도를 사용해 보겠다. 레오나르도는 우노와 똑같이 생겼지만, 디지털핀을 아날로그핀으로 사용할 수 있다. 따라서 더 많은 아날로그 I/O를 사용할 수 있다.

밸런싱 로봇 전용 쉴드

밸런싱 로봇에는 스테핑 모터가 2개, 자이로 센서가 1개, ESP Wi-Fi 모듈이 1개가 장착된다. 이것을 연결하기 위해서는 브레드 보드를 이용해야 하는 불편함이 있기 때문에, IC뱅큐에서 자랑하는 EMS 시스템을 이용해 전용실드를 만들었다. 아두이노 레오나르도 위에 딱 맞게 결합할 수 있게 제작돼, 외관상으로도 깔끔해 보인다.

스테핑모터 드라이버 H403

스테핑모터를 제어할 모터 드라이버다. 모터 드라이버를 사용하는 이유는 아두이노 디지털 I/O에서 사용 가능한 전류량은 제원 상 40mA가 최대이기 때문이다. 이는 모터를 구동하기에는 모자라는 전류량이기 때문에, 이를 보완하기 위해 사용하는 것이 모터 드라이버다. 모터 드라이버는 외부에서 전원을 공급받아 주고 아두이노에서 신호를 받아 모터를 제어하는 역할을 한다. 제품마다 입·출력의 조건이 다르기 때문에 사용하기 위한 모터의 제원을 정확하게 파악한 후 사용해야 한다.

스테핑모터

밸런싱 로봇에 사용할 모터는 스텝모터다. 스텝모터란 모터의 회전을 잘게 쪼개 사용하는 모터를 말한다. 회전을 잘게 나눠 사용할 수 있어 좀 더 정밀하게 제어할 수 있고, 특히 아두이노나 라즈베리파이에서 동작하기에 적합하다. 최근에는 3D프린터의 핵심부품으로도 많이 사용하는데, 스테핑모터는 제어부가 비교적 간단하고 가격이 저렴하며, 내부가 브러시 리스 구조라서 오래 사용할 수 있다는 것이 장점이다.

MPU6050 자이로 센서

밸런싱 로봇은 스테핑모터를 이용해 바퀴를 4개가 아니라 2개 굴리게 된다. 때문에 균형을 잡아 똑바로 서 있을 수 있는 장치가 필요하다. 이때 사용하는 것이 MPU6050 자이로 센서다. 워낙 유명하기도 하고 가격도 저렴하며, 최근에는 모듈화돼 사용하기도 간편하다. 밸런싱 로봇이나 드론, 자세제어 등에 사용하기 적합하다. MPU6050을 구매하면 PCB에 핀이 납땜이 돼 있지 않은 상태로 받게 되는데, 꼭 납땜을 한 뒤에 사용해야 한다.

ESP-12S Wi-Fi 모듈

오또봇 때는 블루투스 모듈을 사용해 원거리 통신 제어를 했는데, 밸런싱 로봇은 ESP-12S Wi-Fi 모듈을 사용해 통신을 한다. 블루투스 모듈은 반응 속도도 약간 뒤쳐지고, 특히 거리와 지형에 제약을 많이 받는다. 따라서 이번에는 Wi-Fi 모듈을 사용해 밸런싱 로봇을 제어해 볼 예정이다.

ESP모듈이 등장한 것은 오래 되지 않았다. ESP-01 모듈이 나왔을 때는 사용하기도 복잡하고 국내에서 사용을 많이 하지 않았다. 기술이 진보됨에 따라 새로운 버전이 나오면서 점차 오픈소스 하드웨어 원거리 통신의 많은 부분을 차지하고 있다. 또한, 해당 모듈을 장착하고 있는 실드도 IC뱅큐에서 직접 제작한 것을 사용했다.

 

Top Shelf(상단 덮개)

첫 번째 파츠는 상단 덮개 부분이다. 밸런싱 로봇의 상단에는 특별히 부착되는 부품은 없지만, 밸런싱 로봇에 동력을 전달해주는 배터리와 배터리 홀더를 장착하게 될 부분이다. 밸런싱 로봇에 따로 배터리를 설치할 수 있는 공간은 마련돼 있지 않은데, 배터리를 사용자가 사용하고 싶은 것으로 고를 수 있게 하기 위함이다.

Electronics Shelf(전자 파츠)

밸런싱로봇의 핵심인 아두이노 레오나르도가 결합되는 부분이다. 윗면의 원으로 볼록 튀어 나온 부분에 레오나르도를 결합하게 된다. 또한, 사각형으로 구멍이 뚫려있는 부분으로 스테핑 모터의 케이블을 통과시켜, 아두이노에 연결할 수 있게 해준다.

Motor Shelf(모터 파츠)

밸런싱 로봇이 자세제어를 하고 움직일 수 있게 도와주는 스테핑모터가 결합되는 부위다. 파츠 사진의 오른쪽을 보면 구멍이 뚫려 있는 것을 볼 수 있는데, 이 부분을 이용해 M3 볼트로 스테핑모터와 파츠를 결합시켜 주면 된다.

Side Panel (양 옆부분)

양쪽 옆에서 3D 파츠 전체를 지탱해주는 역할을 하는 부분이다. 구멍이 많이 뚫려 있는데, 작은 구멍과 M3 볼트를 이용해 상·중·하부를 연결할 수 있다. 큰 구멍은 전원을 연결하기 위해 사용하거나, 서보모터를 장착해 팔을 표현할 수 있다.

Bumper(가드)

밸런싱 로봇에 범퍼를 부착하지 않으면 내부의 전자부가 모두 드러나 보이게 된다. 아무래도 점퍼 케이블을 많이 사용하다 보니, 외관상 보기가 좋지 않다. 범퍼 파츠를 이용해 앞부분을 가려주는 역할을 한다.

Wheel(바퀴)

바퀴 부분이다. 출력물 사진에 희미하게 보이는데, 바닥과의 마찰력을 높이기 위해 고무링을 장착했다. 3D프린터와 플라스틱 특성상 마찰력이 낮아 바퀴가 헛도는 일이 많이 일어난다. 때문에 홈이 파여 있는 바퀴로 대체했고, 이 홈에 7cm의 고무링을 장착했다.

여기까지 밸런싱 로봇 조립에 필요한 전자 파츠와 3D 파츠를 알아봤다. 다음에는 이 파츠들을 조립하는 과정에 대해 알아보겠다.

 

글: 전자 엔지니어 전문몰 아이씨뱅큐

회원가입 후 이용바랍니다.
개의 댓글
0 / 400
댓글 정렬
BEST댓글
BEST 댓글 답글과 추천수를 합산하여 자동으로 노출됩니다.
댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글수정
댓글 수정은 작성 후 1분내에만 가능합니다.
/ 400
내 댓글 모음
저작권자 © 테크월드뉴스 무단전재 및 재배포 금지