본문 바로가기
기계공학부 시절의 기록/ROS일기

Openmanipulator trajectory save(경로저장)

by juhyeonglee 2021. 4. 21.
728x90
반응형

현재 진행하고 있는 프로젝트로 졸업논문을 쓰려고하는데 교수님께 결과물을 보여야하는 시기가 5월 중순이다.

얼마남지 않았지만 최선을 다해 완성도를 높여보자

 

논문이란,, 지금 나에게는 다른 누군가가 나의 논문을 보고 아 이렇게 했구나, 이런 이유로 이렇게 했구나하며 논리적으로 이해가 가면서 따라할 수 있게끔 하는 것이라 생각한다.

 

아래 블로그는 나에게 있어 하나의 논문이라는 생각이 든다.

suho님에게 너무나 감사하다.

 


 

 

[해야할 것]

1. 로봇팔 경로 저장

2. 라즈베리파이 카메라로 학습할 레이블 사진 찍기

 

 

1. 로봇팔 경로 저장

-소스코드 따오기

아무튼 오늘 할 것은 로봇팔의 경로를 저장하는 것.

이를 위해서는 먼저 master-slave 예제소스코드를 변경해야한다.

suho0515.blogspot.com/2019/11/pick-and-place-using-inceptionv3-in-ros.html

 

[Pick and Place using Inception_v3 in ROS] #02. Making open_manipulator_recording_trajectory node

이제 #01 에서 리뷰한 코드를 기반으로 한 개의 Manipulator 만의 Trajectory( joint value ) 를 Recording 할 수 있는 source를 만들 것이다. PC Enviroment ( Labtop ) OS : ...

suho0515.blogspot.com

블로그를 보며 master-slave 원본 예제 소스코드와 suho님이 수정한 소스코드를 비교해가며 보니 후반부에 삭제, 수정된 부분이 많이 보이고 불필요한 slave관련코드들을 지우고 함수명을 수정하는 과정이 있었다.

 

그리고 추가적으로 위 블로그에서는 U2D2를 사용하지만 나는 OpenCR을 사용하므로 포트명을 ttyACM0로 수정해주어야 한다.

 

 

-CMakeLists파일 수정

 

 

[문제발생]

roscore를 실행하면,

WARNING: ROS_MASTER_URI [http://{IP_ADDRESS_OF_REMOTE_PC}:11311] host is not set to this machine

 

아무래도 라즈베리파이 네트워크 통신으로 ~/.bashrc를 수정했던게 문제가 된 것 같다.

 

수정했던 부분을 원상태로 돌려놓고 다시시도 해보자.

이후에 라즈베리파이와 통신할 때는 리모트PC에서 MASTER가 돌아가도록 호스팅해야 할 것이다.

터틀봇에서는 라즈베리파이에서 MASTER가 돌아가도록 한 것 같다.

 

-동작 Trajectory 저장

블로그를 따라 키보드의 1번을 누르고 동작을 수행한뒤 2번을 눌러 저장하였다.

그런데 이 데이터가 어디에 저장되지!?!?

 

저장된 거 어떻게 실행하지!?

 

 

 

지금까지 한 것을 정리하자면

1. ~/catkin_ws/src/open_manipulator_applications/open_manipulator_master_slave/src에서

open_manipulator_master.cpp을 수정해 open_manipulator_recording_trajectory.cpp을 만들고

 

2.~/catkin_ws/src/open_manipulator_applications/open_manipulator_master_slave/launch에서

open_manipulator_master.launch를 수정해 open_manipulator_recording_trajectory.launch를 만들었다.

 

3. ~/catkin_ws/src/open_manipulator_applications/open_manipulator_master_slave에서

CMakeLists.txt에 몇 코드를 첨가해 1,2의 수정사항을 빌드해준다.


 

이제 다음 단계로 넘어간다.

suho0515.blogspot.com/2019/11/pick-and-place-using-inceptionv3-in-ros_13.html

 

[Pick and Place using Inception_v3 in ROS] #03. Making open_manipulator_play_recorded_trajectory node

#02까지는 Manipulator의 trajectory를 recording 하는 소스코드를 구현하였다. #03에서는 인식된 Object에 따라서 각각의 Trajectory를 수행하도록 할 것이다. PC Enviroment ( Labtop ) ...

suho0515.blogspot.com

 

 
 
728x90
반응형

댓글