블로그 이미지
래머
오늘도 열심히 개발하는 개발자입니다.

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

2015. 2. 22. 23:34 아두이노작품


탱크 자동주행 영상


아두이노라는 재미있는 녀석을 반결한 기념으로 탱크를 만들어보기로 했다.

조향가능한 RC카는 아무래도 제작하는데 더 힘들듯하니 만만한 탱크로...


일단 탱크 본체를 구해야 하는데, 만만한 녀석이 있나

마트 가서 보니 음 별로 없네..

그냥

이걸로 들고왔다.

크기가 좀 작은듯한데



음 조립하기 너무 귀찮은것같다. 아무튼 열심히 조립하고, 모터에 노이즈 감소용 세라믹 콘덴서를 납땜했다. 동시에 점퍼선도 납떔해주고..




상판에 튀어나온 부분은 칼로 썰어 버리고   서보모터를 달았다.



초음파센서로 장애물을 검출할수 있게 프라스틱 케이스에 글루건을 이용해서 고정시키고



다시 케이스를 서보모터에 고정시켰다.



모터를 제어할 모터 드라이버, ET-DCM이라는 모델인데

찾다찾다 없어서 구입한건데, 나중에 보니 다른것들도 많이 있었다. 내가 못찾은거였음..

아무튼 나름 쓸만한것 같다. 




쪼그만 프라스틱 케이스에 우노는 좀 큰것 같으니 나노를 구입해서 넣기로 했다.


일단 센서 테스트 ㅎㅎ

기본적인 작동 알고리즘은 센서에 일정이하의 거리가 검출되면 서보 모터를 조정해서 주변을 살펴서

회전 방향을 결정하는거다.



탱크의 모터와 서보모터에는 이녀석으로 전원을 공급하기로 했다.



탱크를 조정은 안드로이드 폰으로 하기로 했다.

하는일이 이거이니 만큼 유니티와 NGUI를 통해서 작업을.. 순수 안드로이드는 UI작업하기가 너무 귀찮은듯하다.




이렇게 해서 우여곡절끝에 일단 완성을..

음 근데 뭐지.. 왠지 탱크가 누더기 같다. 기분탓인가... 작동은 잘되는데

뭔가 좀...

그리고 서보모터는 왜 저렇게 튀지!! 

전진 후진은 잘되는데, 좌회전 우회전이 잘안된다.

모터 힘이 너무 없는것 같다.




자동주행시 서보 모터 제어가 정말 중요한 문제인데, 지 마음되로 튄다.

희안하게도 블루투스 연결만 되면 튀기 시작한다.

일단 해결은 잘됐지만, 이것때문에 몇일째 골머리릴 싸맸다.



뭔가 허무하다. 수십만원 투자해서 만든탱크인데, 누더기라니

차선책을 찾아야한다.

그와중에 이런녀석을 발견했다.

오호!! 힘좋게 생겼군. 일단 본체를 이것으로 바꾸기로 했다.



저번에 누더기 탱크를 교훈삼아, 이번에는 좀 제대로 만들어보기로 했는데,


일단 각종 기판들을 고정시킬 판때기가 필요하다.

재료를 알아보던중 알게된 포맥스 판때기다, 그전에 아크릴 판으로 치수재고 드릴로 구멍뚫다가 아작나는바람에 피눈물을 흘렸다.

이녀석은 가공도 쉽고 여로모로 아크릴판보다 좋은점이 많은것같다.



열심히 치수재고 드릴로 구멍뚫고..

초정밀 가공이란 바로 이런것인가(사실 아래 사진에 나온건 다른 작품에 사용할 판때기다 사진을 못찍어서.. 이걸로라도)




여기저기 널부러져 있던 부품들을 가능한 기판에 직접시키고




뭔가 매우 정밀해 보인다.



몇가지 기능을 추가할려다 보니, 다층 구조를 만들 수밖에 없었다.


초음파 센서의 단점을 보충해보고자 적외선 센서도 추가하기로 했다(사진이 없어서 좀 빌려옴).

탱크의 좌/우측 장애물을 검출하게 될것이다. 더불어 자동주행 알고리즘도 더욱 개선되었다.




이전에 아두이노에 전원을 공급하던 8.4V 니켈 수소 충전지는 너무 빨리 닳아서

이걸로 전원 공급을 대체 하기로 했다. 테스트결과 아주 넉넉하니 마음에 든다.



일반 USB케이블은 너무 뻑뻑해서, 요것도 같이 구매했다.



우연찬게 발견한 재미있는 녀석이다. 아주 조그만 모터와 프로팰러인데

무슨 쿼드콥터에 사용되는 녀석이라한다.

아무튼 마음에 들어서 구입했다.

어디에 쓸까 하다가 그냥 탱크의 뒷편에서 풍력을 공급하는 역할을 맡기기로 했다.




새로 구입한 ROVER-5 라는 녀석이 생각보다 전기를 엄청나게 잡아 먹는다.

1.2V AA충전지 4개로는 빌빌거린다, 더구나 모터 드라이버가 공급하는 전력이 최대 2A밖에(채널당 1A) 안되기 때문에 더욱더 힘을 못 받는다.

스펙상으로는 Rover 5의 각 모터는 최대 2.5A를 필요로 한다고 나와있다. 

그래서 일단은 1.2V충전지 6개를 연결하기로 하고, 서보모터와는 전원을 분리했다.

서보모터의 전원을 어떻게 공급할까 고민하다가 그냥 전원을 하나 더연결하기로 했다.


마침 집에서 놀고 있는 갤4 배터리가 있어서 이걸 활용하기로 했다.



완성품

사용하는 센서의 양이 많아져 3개의 아두이노 나노를 사용했다. 

A,B,C 3개의 아두이노가 A<->B간 i2c통신을 B<->C간 시리얼 통신을 하며, 데이터를 주고 받는다.

센서를 많이 달았지만, 장애물 검출 영역이 제한적이고 센서의 검출 조건도 제한 적이라

자동 주행시 애매한 조건에서 헤딩을 많이 한다. 결론은 센서로 해결하자면 끝이 없다는것.




탱크 수동조작 영상





posted by 래머