ROS + 로봇 제어

ROS teleop Key 구독자 발행자 테스트

케이트쌤 2020. 5. 13. 15:37

자율주행을 개발하는 시대에 이런 teleop 따위가 필요한 이유는

자율주행 개발 기본이 "주행 제어" 이기 때문입니다.

 

당연히 teleop key 로 운전하는 것은 추천하지 않습니다. 자율 주행 전에 ROS 로 주행제어 코드 만들어서 테스트하는 용도라고 보시면 됩니다.

 

영상 캡쳐 사진 : 키보드로 운전하기...

 

지난 달에는 아르바이트로 안전 주행을 위한 모터 제어기를 개발 했는데 다음주부터 Nvidia Jetson 보드에 연결해서 ROS 로 제어를 하려고 하니까 일단은 기본 주행 제어가 필요하고.. 조이스틱도 좋지만 우선은 teleop 을 구현해놓는게 좋겠더군요.

 

저는 개발할 때 항상 V사이클 Model Based Development 방법론을 통한 Software Reliabllity 를 많이 강조를 하는데요.

 

사실 코딩이라는게 왕도가 없으니까요. 올바로 계획 세우고 설계해서 구현한 후 절차에 따라 기능 테스트 꼼꼼하는게 가장 정답이라는 얘기입니다.

 

publisher 는 아래의 깃헙을 참조해서 약간 수정해서 만들었습니다.

https://github.com/ros-teleop/teleop_twist_keyboard

 

teleop publisher 는

실행을 시키면 사용법이 나옵니다. 

그리고 근래에 자이카로 주행 코드 샘플을 요청하신 고객님이 계셔서 자이카로 테스트를 해보았습니다. (참고로 저는 자이카 기술 지원 및 교육 담당 중 하나인 거 같습니다.. 판매자 아닙니다..)

https://www.youtube.com/watch?v=nc8n0W2TCzs

테스트 동영상 : 키값에 따라 정주행 역주행하고 방향도 전환하기를 하는 subscriber 를 만들어야합니다.

자이카는 VESC 를 쓰기 때문에 키 값을 Subscribe 하고 나면 그걸 이용하여 VESC 로 제어 토픽을 Publish 해줘야합니다.                                                                                                                                                                

근래에 코로나로 강의가 열리지 않으니 개발 프로젝트와 저술에만 전념 중입니다.

 

딥러닝 책은 어떻게든 이 달 말에 초고는 마치고 여름에는 출판되도록 해보려고 합니다.

출판이 끝나고 나야 이 블로그에 글 올리는 일도 많아질 것 같네요.

 

그럼 코로나 조심하시고 클럽은 가지마시고..

즐 코딩하며 건강하세요.