[WblueBot 3/3] 탱크 차체 만들기 및 소프트웨어 프로그래밍 그리고 완성

2013.02.12 11:51




현재 군 복무중인 상태입니다.



새로 만든 블루투스로 제어하는 탱크 비스무리한 로봇으로 돌아왔습니다.

아카데미 과학의 스케일탱크로 제작하고 싶었으나, 주머니사정의 문제로 포맥스와 로봇키트 파는 곳에 많이있는 무한궤도(?), 캐터필러(?)라고 하는 것으로 탱크 흡사하게 만들어봤습니다.


각 부의 기능 및 설명




해당 탱크(?!)는 모터제어부, ISP프로그래머부, MCU 컨트롤러부, 확장IO부, 블루투스 통신부로 

비교적 간단(?)하게 구성 되어있는 로봇입니다.


다른 분들은 탱크에 카메라 달고 WIFI로 제어하고 해서 부족함을 느끼기는 하지만, 제선에서는 저게 최선인 것 같습니다. -- 더 노력하겠습니다. ㅎ


- 블루투스 통신부에서는 스마트폰과 SPP(Serial Port Profile) 프로파일로 AVR과 3선 RX, TX, Common GND, 으로 UART통신을 합니다.

- 블루투스 통신부의 LED는 STATE LED가 깜빡거리다가, 스마트폰과 블루투스로 연결이 OK되면 계속 LED가 점등되어있도록 만들어져있고, 전원LED는 확인용으로 달아두었습니다.

- 확장 IO부는 외부 장치와 연결되는 AVR핀을 따로 왼쪽구석에 모아두었고, 블루투스 모듈 통신선과, 전원, 기타 다른기능을 넣을 때 사용할수 있는 포트D의 2핀을 확장 IO부로 만들어두었습니다.



프로그래밍 알고리즘


이번 작품은 AVR Studio로만 전부 직접 코딩해서 만들었고,  동작시키는데 별도의 알고리즘이 필요하지 않아서, 구체적인 알고리즘은 없지만 스마트폰의 Bluetooth SPP앱에서 각각 front, 

back, left, right 문자열을 송신하면, AVR에서 해당 문자열을 if문으로 비교한 후에 참이면 컨트롤러 보드의 STATE LED를 키고 전, 후, 좌, 우 방향으로 모터가 회전하도록 프로그래밍 했습니다.


  WblueBot AVR Studio4용 소스코드 다운로드 - 구글 드라이브로 연결됩니다. 




이번 작품에서 아쉬웠고, 또 문제점은..

또 LED를 못달았습니다. 뒤쪽에 10파이 LED를 딱 달아놓으면 어떨까요? 

라고 저의 가족 분들 에게 물어봤는데 조잡하답니다. ㄷ....

그리고 프로그래밍할때 다음과 같은 문제점이 있었는데 어떻게 처리해야 할지 모르겠습니다.

Attiny2313의 RAM이 좀 낮아서 그런지, 변수선언을 별로하지도 않았는데, 문자열 송수신 처리 스택으로 변수선언 RAM이 80%정도 차서, 모터 PWM 속도 제어기능도 넣을려고 했습니다만, 동작신호를 보냈을 때 동작도 정상적으로 하지않고 동작한다면 Front OK ... 등등

스마트폰에서 문자열이 수신되어야 하는데.. 이 문자가 깨져서 수신이 되는 문제가 있어서, PWM제어 기능을 모두 제거하고 기본적인 것만 남겨두었습니다.

시간 남을 때 수정해서 다시한번 동작시켜봐야 겠습니다. 이 것같고 2일정도 씨름했는데..

pgmspace.h를 사용하라고 하는 포스팅을 많이 보았는데.. 좀 더 노력해야겠습니다. 



동작 영상...



블루투스 SPP 통신 문자열로 제어하는 (탱크) 로봇 완성..

모터로 움직이는 것만 너무 많이 만들었습니다. 다른것을 좀 만들어봐야겠는데 무엇을 만들까요? 

요즘 끌리는게 없는데....


BinGoon AVR/AVR 작품, Project , , , , , ,

  1. Blog Icon
    나무

    언제쯤 저런걸 만들지...
    이제 입출력 이해해서 LED 스위치 포트에 따라 LED 점등 시키고 있는데 말이죠.ㅠㅠ

    인터럽트라든지 rs232 통신으로 어서 넘어가야겠어요^^

  2. ㅎ^ 레지스터 이해가 빠르시다면 금방 할수있으실거에요^
    댓글 감사드립니다^

  3. Blog Icon
    이찬술

    전자공학과 학생입니다.전 첫 작품은 pic 으로 휠라이트를 만들었어요. 만들다 너무너무 흥미있고 좋아서 주위 동기들이 만드는 블루투스관련한것도 찾아보고 했는데 제가 만들고 싶은걸 너무 딱 만들으셔서 부럽습니다.
    그럼 모터제어는 pwm으로 하신게 아니나요? 그럼 그냥 dc모터인가요? 너무너무 물어보고 싶은게 많네요.ㅋㅋ

  4. 안녕하세요.^ 찾아주셔서 감사합니다.
    모터제어를 PWM으로 할려고 했었는데요. 속도 조절이되게 ㅎ
    그런데 문자열로 송수신 하다 보니까 RAM을 80~90%잡아먹으면서
    문자열 송수신이 제대로 되지않아서 코드를 넣지않았다가
    다시 작업중이랍니다.^
    RAM 사용량을 크게 줄이는 방법을 알아서요. ㅎ
    그리고 모터는 일반 기어드 DC모터를 사용했습니다.^
    혹시 독특한 소재가 있다면 알려주세요.!! ㅎ
    요즘 만들고 싶은 끌리는 것이 없어서요.ㅋ

  5. Blog Icon
    마향산

    아 휴대폰 지원해드리고 싶다

  6. 블로그에 방문해서 고맙다. 마향산 군 ㅎ

  7. Blog Icon
    leica3f

    안녕하세요^^
    캐터필러 검색하다 들어오게 되었습니다.
    너무 멋진 작품이 있네요
    딱 저정도를 구현하려고 하는데 캐터 필러 구매처를 알고 싶습니다.

  8. 방문해 주셔서 감사드립니다.^
    캐터필러는 로보로보 라는 교육용 로봇 제조사에서 구매했습니다.
    쇼핑몰은 http://www.roborobo.co.kr/shop/main.php
    다음 링크에 접속하시면 되구요.
    메뉴는 로보 키트에서 휠/타이어/기타로 들어가시면 캐터필러가 있습니다.^ 앞으로도 자주 방문해 주세요.^

  9. Blog Icon
    Zach

    아, 대단해요 !
    고등학생이시라는데 대학생인 저보다 훨씬 더.....

  10. 아니에요^ 저도 주변에 다른 소스코드를 참고 많이 해서, 부족함이 많답니다. 대학생 다니시는 분들은 전자회로나 컴퓨터개론 같은걸 깊게 배워서 그런지 금방 배우시더라구요. 나름 부럽답니다. :)

  11. Blog Icon
    mk8964

    Bingoon님 죄송한데 소스파일하고 재료좀 공유해주실수 있나요
    가능하시다면 dzozb@naver.com으로 보내주셨으면합니다...

  12. 안녕하세요.^
    소스코드는 보내드릴수 있습니다만, 재료는 울산에 거주하기 때문에 그 때 그 때 구비되어 있는 것을 사용해서, 리스트는 만들어 두고 있지 않습니다. 따라서 회로도를 보시고 직접 구매하셔야 해요 :-)

  13. Blog Icon
    우기욱

    안녕하세요 Bingoon님 !
    제가 지금 블루투스로 로봇을 제어하면서 로봇의 센서에서 송신하는 값을 보고 있는 어플을 만들려 하는데 혹시 위에서 쓰신 어플 소스 코드있으면 보내주실수 있나요?
    powerwhddnr@naver.com 으로 부탁드립니다 ^^

  14. 안녕하세요.^
    먼저 최근 정신이 없어, 답글이 늦었음을 알려드리구요.^
    어플은 안드로이드 마켓에서 Bluetooth SPP라는 어플을 사용했고, SPP프로토콜을 지원하는 어플은 다 사용이 가능합니다. 따라서 마켓에서 다운로드 받으시면 되겠습니다.^

  15. Blog Icon
    영호

    빈군님~~ 한창 이거보고 avr관심을가지며 블루투스까지 왔네요 혹시나 시간되시면 milgam123@naver.com 으로 소스좀보내주세요~ 진심으로부탁드립니다ㅜㅜ

  16. 안녕하세요.^
    링크 입력해 놓습니다. 필요하시면 다운로드 해 가시면 되겠습니다. PC사용이 어려워 이메일로 전송을 드리지는 못합니다. 죄송합니다. 소스코드는 AVR Studio 4용으로만 제작되었으며, CodeVisionAVR C로 변경은 따로 하셔야 됩니다. https://drive.google.com/file/d/0B3TUepjmKjiXVW5OMlFZczdSUEE/edit?usp=sharing

  17. Blog Icon
    정준

    안녕하세요 빈군님.
    빈군님께서 만드신 블루투스탱크 동영상을보고 저두 직접만들어보고 싶은데
    혹시 소스코드를 공유해주실수 있으신가요?ㅠ 위의 댓글의 주소에들어가니 파일이없다고하네요
    가능하시면 jjia90@naver.com 부탁드리겠습니다.

  18. 안녕하세요.^
    먼저 죄송합니다만, 제가 블로그에 알려진 바와 같이 직장인이 되어서, 평일에는 이메일로 소스코드를 전송드릴수는 없는 상황입니다. 그리고 본문에 다운로드 링크를 추가하였으니, 한번 다운로드 해보시고 그래도 안된다면 제 이메일로 요청하여 주시면 주말에 전송하여 드리도록 하겠습니다.

  19. Blog Icon
    권순호

    안녕하세요 전자공학과학생입니다. 코드비젼으로 소스설계하신지 궁금합니다.
    저도 만들어볼까하는데 소스파일과 회로도정도만 보내주시면 안될까요
    however992@naver.com입니다.

  20. 안녕하세요.
    연휴관계로 답글이 늦어서 죄송합니다. 블로그 본문에 다운로드 아이콘을 누르면 구글드라이브로 이동하여 다운로드 받으실 수 있는데요, 구글 드라이브로 이동해서 좌측상단에 파일 > 다운로드를 눌러주시면 압축파일을 받아 보실 수 있습니다.^^ 늦었지만 참고해 주세요.

  21. 안녕하세요 기계공학과학생입니다. 소스코드와 회로도좀 보내주실수있으신가요?
    위에 다운로드 링크를 해주셨는데 계속시도해보지만 자꾸 인터넷이 튕기네요..ㅠㅠ
    부탁드립니다.
    rlaehdudrla@nate.com
    이메일로 소스코드와 회로도, 회로에 들어가는 부품도좀 보내주시면 감사하겠습니다.

  22. 안녕하세요 기계공학과학생입니다. 소스코드와 회로도좀 보내주실수있으신가요?
    위에 다운로드 링크를 해주셨는데 계속시도해보지만 자꾸 인터넷이 튕기네요..ㅠㅠ
    부탁드립니다.
    rlaehdudrla@nate.com
    이메일로 소스코드와 회로도, 회로에 들어가는 부품도좀 보내주시면 감사하겠습니다.

  23. Blog Icon
    석현준

    안녕하세요 혹시 무한궤도 바퀴를 어디서 구하셨는지 알수 있을까요?

티스토리 툴바