PC에서 직접 2축 모바일로봇에 연결된 MoonWalker 제어기 다루기
이번 동영상 강의는 PC등의 외부 장치에서 2축 모바일로봇을 구동하고자 할때, MoonWalker를 이용하는 방법을 다룹니다. 간단한 설정법만 다루고 있으며, 좀 더 깊이 있게 제어하기 위해서는 꼭 메뉴얼을 확인하시기 바랍니다.
먼저 이전 강의에서 RC 조종기와 MoonWalker의 연결을 보여드렸는데요[바로가기] 비슷한 연결을 가지면서 PC와 시리얼 통신을 하는 장비를 무선으로 하는 모듈로 연결을 했습니다. 이부분은 그렇게 중요한 부분이 아닙니다. 그냥 테스트를 할려면 유선으로 PC와 연결되어 있으면 선길이의 한계로 힘드니까 무선으로 바꾼겁니다.
반대편은 이렇게 PC에 연결해 주시면 됩니다.
MoonWalker와 같은 제품에서 토크/속도/위치 제어기를 사용하기 위해서는 저렇게 제어기를 세팅해야합니다. 이전 강의들[바로가기]에서도 계속 나왔지만, 모터의 특성과 엔코더의 분해능등을 설정하고 또한 위 그림에서 표시된 부분처럼 각 제어기의 게인을 맞춰 주셔야합니다. 이런 제어 게인들은 모터와 모터가 감당해야하는 부하 및 사용자가 원하는 성능에 따라 항상 다르기 때문에 실험을 통해 적정 게인을 맞추어야 원하는 성능이 나타나게 됩니다.
혹시 이전의 RC 조종기를 사용하던 동영상을 학습하면서 따라오셨다면 이번 동영상을 따라하기 위해서는 위 그림에 표시된 RC 조종기와 연결한다는 Pulse Input Enable을 해제 시키셔야합니다. 이번 강의는 외부에서 명령을 주는 형태이니까요.
그리고, 아무 Hyper Terminal 프로그램을 사용하시면 됩니다. 이번 강의에서 다루는건 저희가 예전에 배포한 프로그램[바로가기]입니다만, 아무 하이퍼터미널 프로그램이어도 상관없습니다. 단, 데이터를 전송하는 옵션에서 /n/r을 꼭 붙이도록 설정하셔야합니다.
이제 MoonWalker에 mp라는 현재의 위치를 확인하는 명령을 입력해보면, 그 아래 결과와 같이 현재의 두 채널(두 바퀴)의 위치값을 알려줍니다.
1번 채널에 속도를 1000RPM으로 세팅하는 명령인 vc1=1000이라고 입력하면 1번 채널에 연결된 모터가 해당 RPM으로 회전을 시작합니다. 이때 RPM을 정확히 맞추기 위해서는 다시한번 말씀드리지만, 엔코더의 분해능과 전류 및 속도 제어기의 게인이 정확히 입력되어 있어야합니다.
마찬가지로 vc2라는 명령을 통해 2번 채널에 연결된 모터를 1000RPM으로 회전하는 명령을 입력해 보면 모터가 그에 맞춰 회전하고 있음을 알 수 있습니다.
위 그림 중 하나에 나와있는 mvc라는 명령은 두개의 채널에 연결된 두 모터에 동시에 속도 명령을 인가하는 것입니다. 2축 구동형 모바일로봇등에 사용하실때는 유용할 겁니다.
저렇게 명령들을 지정해두고 구동을 확인하면 테스트는 괜찮을 겁니다.
이렇게 PC나 외부 MCU등의 장비를 통해 MoonWalker의 설정을 변경하고, 현 상태값을 읽어오고, 구동 명령을 하달할 수가 있습니다. 좀 더 자세한 사항은 메뉴얼을 확인해주시구요. 나머지는 아래 동영상으로 익혀주세요.