[권문송의 라즈베리 파이 먹기] (11)RC카 로소이다 ②조립

- Advertisement -

[프로젝트 11] 라즈베리 파이로 RC 카 만들기 ②

안녕하세요. [권문송의 라즈베리 파이 먹기] 시간이 돌아왔습니다. 지난번에는 라즈베리 파이 기반 RC 카 로봇인 ‘알파봇2’에 대해 간단한 소개만 했습니다. 오늘은 본격적으로 조립에 들어갈 예정입니다. 이번 편은 하드웨어 중심으로, 다음 편은 코딩 등 소프트웨어(SW) 중심으로 콘텐츠가 진행될 것 같습니다. 마지막 편은 구동과 활용 편 정도가 되겠죠?

사실 한 회에 프로젝트가 하나 완성됐던 과거 콘텐츠와 달리 속도감이 좀 떨어지네요. 하지만 저의 미천한 실력을 고려해서 천천히 진행하려고 하니 양해 바랍니다. [권문송의 라즈베리 파이 먹기]가 100회를 맞이하는 그날까지, 열심히 달려보겠습니다.

지난번 소개한 알파봇2 구성품입니다. 하나하나 조립하면서 RC카 로봇 형태로 만들어보겠습니다.

우선은 바퀴가 있는 베이스 부분입니다. 원형 판 4방 테두리에 구멍이 있죠. 여기에 우선 지지대를 결합하겠습니다.

지지대 끝부분이 볼트와 너트처럼 되어 있습니다. 손으로 돌려도 충분히 고정이 되네요. 옆에 함께 있는 볼트는 아직 무슨 용도인지 모르겠으니 옆으로 치워두겠습니다. 지지대의 너트와 같은 부품이 하나 남습니다. 여분으로 가지고 있으라는 회사 측의 배려일까요?

다음은 상단부분인 알파봇2 파이와 카메라 지지대입니다. 알파봇 2는 2개의 서보모터가 있습니다. 이 2개 서보모터로 카메라를 상하 그리고 좌우 방향으로 움직입니다. 우선 카메라 지지대를 움직일 수 있도록 서보모터와 결합하겠습니다.

사각형 모양의 가장 밑받침이 되는 부분입니다. 알파봇 2 파이(상단 판)에 결합할 부분입니다. 가운데 홈이 파여져 있는데, 여기에 하얀색 선풍기 날개처럼 생긴 부품을 꽂으면 됩니다. 전에 이거 이름이 생각이 나지 않아 ‘날개’라고만 했네요.

조립 시 참고할만한 블로그와 영상을 찾아봤는데, ‘브래킷’이라는 용어를 사용했습니다. 그런데 검은색 카메라 지지대를 브래킷이라고 하는지, 하얀색 선풍기 날개를 브래킷이라고 하는지는 잘 모르겠더라고요. 정확한 명칭을 알고 계신 분은 알려주세요!

하얀 날개를 지지대에 끼우고 나사로 고정을 해야 합니다. 알파봇2 제조사인 Waveshare 사에서 매뉴얼을 다운로드했습니다. 그런데 조립 방법에 대해 자세히 나와있진 않더라고요. (혹시 제가 못 찾은 걸 수도 있습니다.) 문제는 나사가 굉장히 많은데 어떤 나사를 어디에 고정하냐는 것입니다.

정답은 구멍 크기입니다. 대충 어느 정도 크기의 구멍과 어느 정도 길이로 고정할지 보면 알 수 있습니다. 나머지는 감에 맡기겠습니다. 잘못되면 다시 풀었다가 다른 나사로 고정하겠습니다.

제가 선택한 나사는 제공되는 나사 중에 가장 작은 것입니다. 끝이 뾰족합니다.

원래는 4개 구멍에 모두 나사를 끼워야 합니다만, 혹시 잘못된 선택으로 다시 뽑는 귀차니즘을 해소하기 위해 2개만 박았습니다. 움직이는 데는 크게 문제가 없을 것 같습니다. 나사가 모자라거나 하지 않고 정확하게 선택했다면, 4개 모두 고정하겠습니다. 지금은 이렇게 가볼게요. (이런 마음가짐이 부실공사를 야기합니다. 사고를 일으키죠.)

하얀 날개에 서보 모터 회전 축 끝을 끼우면 이렇게 됩니다. 톱니바퀴 모양으로 서로 끼울 수 있도록 되어 있습니다. 다음은 지지대의 옆면입니다.

여기는 선풍기 날개 한쪽과 같은 모양의 부품을 끼우면 됩니다. 나사를 끼울 구멍은 2개입니다. 역시 가장 작고 뾰족한 나사를 끼웠습니다.

선풍기 날개는 나사를 절반만 사용했으면서 왜 이건 2개 모두 끼웠느냐. 하다 보니 이게 맞을 거 같다는 자신감의 발로일까요. 나사 개수를 보니 이 나사를 지지대와 하얀 날개를 고정하는데 사용하는 게 맞는 것 같습니다.

이제 이 측면 지지대를 서보모터와 결합해보겠습니다.

서보 모터 양옆으로 고정할 수 있도록 되어 있습니다.

나머지 하나도 끼웠습니다. 두 개를 맞잡고 서보 모터 방향(가운데)으로 힘껏 누르면 꽉 끼워진 채로 고정됩니다.

이제 저 하얀색 선풍기 한쪽 날개 구멍에 또 다른 서보모터를 끼웁니다. 그전에 마지막 남은 지지대를 다른 서보모터와 결합해야 합니다. 바로 이 녀석입니다.

나사 2개를 서보 모터 양쪽에 꽂아 지지대와 결합할 수 있습니다. 나사는 역시 적당해 보이는 걸로 선택했습니다. 사실 다른 건 안 맞아 여타 선택지를 금방 없앨 수 있습니다. 앞에 하얀 선풍기 날개에 적용했던 나사보다 조금 더 큰, 끝이 뾰족한 녀석입니다.

이제 위의 사진처럼 서보모터가 장착된 2개 지지대를 결합합니다. 왼쪽 동그란 돌기와 아래쪽 서보 모터 축 끝이 보이죠? 로봇 팔 관절이라고 생각하고 고정하면 됩니다. 여기에 좀 힘을 많이 썼습니다. 지지대가 생각보다 단단해 잘 휘지가 않습니다. 틈 사이로 억지로 벌려 넣어야 합니다.

이런 식으로 지지대를 서로 결합한 다음, 서보 모터 축 끝부분(흰색 톱니바퀴 부분)을 다른 지지대 홈에 꽂아줍니다. 아까 선풍기 한쪽 날개 부분입니다.

이렇게 하면 카메라를 장착하는 지지대에 서보모터를 장착하는 작업은 끝납니다. 서보모터에 무리가 가지 않을 정도로 움직여 봤습니다.

icon-alert

ic_multitracktest

네이버 동영상 플레이어

재생시간, 이 동영상의 길이는 18초 입니다.

화질 선택 옵션

화질 선택 옵션

카메라 지지대 움직임

관절 움직임이 보이시나요? 그리고 아까 4개 날개를 제대로 고정하지 않았는데, 이것도 나사를 추가해 단단하게 고정하겠습니다.

가끔 이런 생각이 듭니다. 일부 제조 혹은 건설 공사 업체가 비용 절감을 위해 재료를 아끼기도 하죠. 질이 나쁜 저렴한 부품을 쓰거나 작동하는데 큰 문제가 없다면 재료나 부품을 빼버리는 경우도 있습니다. 아까 2개 나사를 끼운 것처럼 말입니다.

이런 일로 돈을 얼마나 벌지는 모르지만, 산업 안전 재해나 사고로 이어지기 쉽습니다. 사람이 다치고 죽기도 하죠. 자신의 이익을 위해 누군지도 모르는 다른 사람을 위험에 빠트려서는 안되겠죠. 정량, 적재적소, 산업 안전… 아! 죄송합니다. 의식의 흐름이 갑자기 딴 길로 빠져버렸습니다. 다시 정신을 차려보겠습니다.

이제 속도감 있게 달려봅시다. 서보모터를 장착한 지지대를 알파봇2 파이에 결합합니다. 판 상단에 하얀 선으로 사각형을 그려놨습니다. 거기에 지지대를 결합하면 됩니다. 적합한 나사를 찾아 고정합니다. 이제 나사 이야기는 그만하겠습니다. 본능에 맡기세요. 여러분은 (대체로) 틀리지 않습니다.

좀 더 편하게 고정 작업을 하기 위해 서보모터를 빼고 하단 지지대부터 고정했습니다. 사실 여기서 문제를 하나 인지했습니다. 4개 선풍기 날개에 고정하는 서보모터, 이게 아주 단단하게 결합되지 않습니다. 즉 끼울 수는 있는데 강하게 고정되지는 않는다는 이야기입니다.

카메라 지지대에 서보모터가 달리고 거기다 카메라까지 결합하면 무게가 어느 정도 나갑니다. 그래서 그런지 종종 서보모터와 지지대가 분리되기도 합니다. 물론 헐거운 정도는 아닙니다. 하지만 아무리 힘을 줘 끼워보아도 가끔씩 분리되곤 합니다. 부품 문제인지, 아니면 좀 더 강한 힘으로 끼워야 하는지 아직 잘 모르겠습니다. 너무 힘을 주다가 부러질까 봐 걱정입니다. 일단 넘어가도록 하죠. 아직 대세에 큰 영향을 주진 않습니다. (산업 안전은?) 계속 이런 현상이 일어나면 다른 방법을 찾아봐야 할 것 같습니다.

카메라 모듈을 연결합니다. 카메라는 지지대 앞 부분에 그냥 끼우면 됩니다. 이것도 힘을 좀 줘야 합니다. 하지만 나사 등으로 고정할 필요 없이 단단하게 잡아줘 걱정할 건 없습니다. 케이블도 정리해 알파봇 파이 구멍을 통해 아래로 내려오게 했습니다.

이제 서보 모터 케이블을 알파봇2 파이에 연결합니다. Waveshare 로고 바로 아래(사진상으로 위에)에 6개 핀이 있습니다. 여기에 서보 모터 케이블을 연결하면 됩니다.

방향이 있습니다. 갈색 선이 그라운드(GND)에 맞게 결합해야 합니다. 두 개 모두 동일합니다. 즉 갈색선이 ‘마이너스(-)’이고 빨간 선이 ‘플러스(+)’입니다. 빨간 선이 연결되는 부분에는 5V라고 적혀져 있습니다. 사진 방향을 그대로 두고 볼 때, 왼쪽 3개핀은 상하(Up & down) 서보모터, 오른쪽은 좌우(Right & left) 서보모터와 연결해야 합니다.

드디어 라즈베리 파이의 등장입니다. 카메라 케이블이 있었죠? 이건 라즈베리 파이와 연결합니다. 본체를 보면(드라이버가 가리키는 부분) CAMERA라고 적혀져 있는 슬롯이 있습니다. 여기 껍질을 벗기고 케이블을 꽂으면 됩니다.

이런 식입니다. 여기까지 하면 카메라(서보모터 포함) 연결은 끝이 납니다. 다음은 라즈베리 파이와 알파봇2 파이를 연결합니다. 라즈베리 파이의 GPIO 핀을 알파봇 2 파이 슬롯에 결합하면 됩니다.

여기까지 하면 또 다른 문제를 깨닫게 됩니다. 바로 카메라 케이블 길이입니다. 카메라 케이블 길이가 매우 짧습니다. 만약 서보모터가 회전하면 케이블이 방해될 것 같습니다. 안정적 구동을 위해 카메라 케이블이 좀 더 길었으면 합니다.

이 때문일까요. Waveshare 사에서는 카메라 케이블을 하나 더 제공합니다.

바로 저 녀석입니다. (지지대 하단은 또 빠졌네요) 기존 케이블 보다 길어서 회전에 방해가 될 거 같지 않습니다. 이 케이블로 교체해 보겠습니다.

사진을 보니 확연히 차이가 나죠? 이럴 거면 처음부터 긴 케이블로 결합해서 주지 왜 이렇게 했는지 모르겠습니다.

이제 대망의 본체(알파봇 2 파이+베이스) 결합입니다.

알파봇2 파이 컨트롤러 인터페이스와 베이스를 연결하는 케이블을 준비합니다. 어디에 어떻게 꽂을지는 직관적으로 알 수 있을 겁니다.

이렇게 연결하면 됩니다. 여기까지 오면 케이블 연결은 끝납니다. 이제 알파봇2 파이와 베이스를 나사로 고정해보겠습니다.

짜잔! 완성입니다. 실제 조립하는데 걸린 시간은 약 1시간 정도입니다. 하나 할 때마다 사진을 찍어서 그렇지 그냥 조립만 하면 보다 빨리할 수 있을 겁니다. 사진을 몇 장 더 보도록 하죠.

완성하기 전에 배터리를 미리 끼웠습니다. 결합 후에는 배터리 빼고 넣기가 불편해 보이더라고요. 원래 이번 화는 조립 완성까지로 생각했습니다만, 이왕 한 거 전원도 넣어보도록 하겠습니다. 제품이 이상 없는지도 확인해야 하니까요.

알파봇2 밑면에 전원(ON/OFF) 버튼이 있습니다. 이걸로 전원을 켜면 됩니다.

안됩니다. 아니, 안되는 건지도 잘 모르겠지만, 아무런 변화가 없습니다. 뭐가 문제일까요. 급히 재 분해를 했습니다.

베이스 부분에 보면 오른쪽에 파워(PWR) LED가 있습니다. 여기에 불이 들어오지 않습니다. 배터리 충전이 덜 된 걸까요?

배터리를 충전하고 다시 시도해봤는데 그래도 되지 않습니다. 혹시나 싶어 전원 케이블로 따로 연결해봤습니다.

전원 케이블을 연결하니 차지(CHG) 부분에 불이 들어옵니다. (차지가 맞겠죠?) 제품이 아주 맛이 간 건 아닌 거 같습니다. 그래도 CHG에 불만 들어오고 파워(PWR)에는 불이 들어오지 않습니다. 어찌 된 일일까요.

icon-alert

ic_multitracktest

네이버 동영상 플레이어

재생시간, 이 동영상의 길이는 6초 입니다.

화질 선택 옵션

화질 선택 옵션

전원 ON 상태

icon-alert

ic_multitracktest

네이버 동영상 플레이어

재생시간, 이 동영상의 길이는 6초 입니다.

화질 선택 옵션

화질 선택 옵션

전원 OFF 상태

CHG 상태도 전원 온/오프에 따라 다릅니다. 전원 스위치를 ON으로 하면 깜빡깜빡 거립니다. OFF로 하면 계속 불이 들어옵니다. 그 이외에 변하는 것은 없습니다.

아. 이렇게 끝이 나는 걸까요. 코딩 작업 등 라즈베리 파이 세팅도 하지 못했는데, 전원 공급이 제대로 되지 않네요.

한참을 고민하다가 떠오른 게 있습니다. ‘라즈베리 파이에 직접 전원을 공급하며 어떻게 될까!’ 즉 전원선을 알파봇2 베이스 부분이 아닌, 장착한 라즈베리 파이에 연결하는 겁니다. 이렇게 말이죠.

드디어 전원 LED(PWR)에 빨간 불이 들어왔습니다! 알파봇 2 전면 부분의 센서 LED에도 불이 들어오는군요. 이걸 봤을 땐 제품에는 문제가 없는 것 같습니다. 왜 배터리로 전원을 공급하면 안 되는지 한 주 동안 열심히 알아봐야겠군요. 혹시 이유를 하시는 분은 알려주세요! Jai guru deva om

(케이블로만 전원이 공급되는…무슨 에X게리온도 아니고…)

제품 확인까지 했으니, 이번 화는 이걸로 마치겠습니다. 다음 화에는 코딩과 설정 등으로 실제 알파봇 2 구동까지 해보도록 하겠습니다. 코딩 생각을 하니 벌써 속이 답답하고 손끝이 저려오네요.

전원 문제가 있지만, 만약 해결되지 않으면 라즈베리 파이에 보조 배터리로 전력을 공급하는 방법도 있습니다. 이 사태까지 오기 전 문제가 해결되었으면 좋겠네요. 그럼 [권문송의 라즈베리 파이 먹기]는 다음 시간에 돌아오겠습니다. Goodbye world!

퇴근 전 업데이트 : 사람은 꼼꼼해야 한다

이런 멍청한 짓을 했을 줄이야. 콘텐츠를 업로드하고 알파봇 2를 다시 살펴봤습니다. 뭐가 문제인지 알아보기 위해서 입니다. 이리보고 저리봐도 모르겠습니다. 그 때 눈에 들어온 것이 있습니다. 바로 이 겁니다.

보이시나요? 제가 얼마나 멍청한 짓을 했는지…알파봇2 파이와 베이스를 연결하는 컨트롤러 인터페이스 케이블을 잘못 연결한 것이었습니다. 두둥! 제대로 맞지도 않는 슬롯에 억지로 힘으로 눌러 넣은 저 자태를 보십시오. 답안지를 한칸씩 밀려 쓰듯 핀이 하나씩 옆칸으로 꽂힌 겁니다. 이러니 제대로 돌아갈리 만무하죠. 원래는 이렇게 되어야 합니다.

케이블을 제대로 연결했습니다. 이후 전원 선 등은 모조리 빼 버리고 오로지 배터리만으로 전원을 켰습니다(ON). 그리고…

파워 LED(PWR)에 빨간 불이 들어옵니다. 라즈베리 파이 전원도 들어오네요.

앞부분의 센서 LED(하단)에 푸른 빛이 보이시죠? 카메라 모듈에도 전원이 공급되고 있습니다. 아무런 이상이 없습니다! (그래 넌 S2기관을 얻은 에X야!)

이래서 사람은 꼼꼼해야 합니다. 실패로 생각했던 것은 단순히 케이블, 그것도 뻔히 규격이 있는데 이를 무시하고 힘으로 꽂아 넣은 탓에 발생한 문제였습니다. 그래도 이상 없이 다음 편을 진행할 수 있어서 다행이네요. 쓴 웃음만 납니다. 허허허. 그래도 퇴근 전에 문제를 파악할 수 있어서 다행이네요. 그럼 진짜 다음 시간에 뵙겠습니다. Goodbye world!

테크플러스 에디터 권동준

tech-plus@naver.com

*네이버 테크 구독하기*

*테크플러스 텔레그램 구독하기*

- Advertisement -

Related Stories

Enable Notifications    OK No thanks