금주 목표
- 자문을 통해
ROS1 패키지 ROS2에서 쓰는 것 가능여부 파악
패키지 통신구조 확인 (myo - UR3_move - ur_driver)
- ROS2 통신 심화 공부
참고자료
- 논문
https://www.koreascience.or.kr/article/JAKO202013562120000.pdf
- myo-rawNode.py
https://github.com/uts-magic-lab/ros_myo
- UR3_2to3t.py https://github.com/IRaCLab/IRaC_remotecontrolUR/blob/master/RemoteControl_UR3_2to3t.py
- /ur_driver
1. 지난주의 궁금증들
- 참고논문에서 myo의 어떤 데이터를 가져오는지(해결)
/myo_ori
IMU센서로부터의 Roll, Pitch, Yaw 값을 radian단위로 가져옴을 확인.
/myo_gest_str
EMG센서로부터 총 6개의 제스처 인식.
REST, FIST, WAVE_IN, WAVE_OUT, SPREAD_FINGER, THUMB_TO_PINY
추가적으로) /myo_raw/myo_imu로부터 quaternion pose, accelerometer and gyro axes 값을 가져올 수 있다.
- myo에서 어떤 데이터로, UR3 6개 모터 모두를 제어하는지?(해결)
모두 제어하지 않고 최하단 2개의 모터(base, shoulder motor)만을 제어.
/myo_ori에서 Roll값을 base motor에, Pitch값을 shoulder motor에 전송
- 6DOF인 UR3에서 4DOF인 OpenManipulator로 바꿔적용할 때, 어떻게 수정해야할지(해결)
Step1) 모터들의 초기 configuration과 myo밴드의 초기 방향 설정
1안
2안
2안이 추가적 구조물이 필요없고 더 다양한 경로를 만들 수 있을 것으로 보인다.
Step2) 논문과 같이 Openmanipulator의 base, shoulder 모터에 myo의 Roll, Pitch값 전송하면 된다.
추가로 생각할 수 있는 것 1) 2개의 myo 밴드 사용하기. 더 다양한 경로생성을 위해
myo밴드를 두개 착용하여 두 myo밴드의 Pitch값 차이를 계산하여 elbow모터로 전달하면 elbow모터도 추종시킬 수 있다. 이를 위해서는 myo두개의 밴드로부터 각각 데이터를 다른 토픽으로 보내고 추가적인 노드에서 모두 받아 계산하여야한다.
추가로 생각할 수 있는 것 2) myo로부터 RPY데이터 뿐만 아니라 가속도계값도 받아 이를 추종시키기
공을 던지거나, 받을 때 다양한 모터속도를 구현할 필요가 있다.
추가로 생각할 수 있는 것 3) 다수의 로봇팔 구동
ROS2의 특징은 여러대의 로봇을 동시에 구동, Real-time의 장점이 있다. 이를 시험해보는 것도 좋을 것이다.
- 논문상에서 정확히 어떤 패키지들로 데이터흐름을 만들었는지, 나는 어떻게 변경해야 하는지
총 4개의 노드가 있다.
/myo_raw : RPY의 라디안 값 생성. 이를 UR3_move에 토픽 형식으로 전송
/UR3_move : myo와 UR3 동기화? myo와 UR3 통신 가능케함. 손 제스처 데이터를 분류기로 처리. RPY데이터를 모터에 맞게 처리. 이를 ur_driver로 전달.
/ur_driver : UR3로봇이 pc로부터 보내지는 입력을 받을 수 있게 함.
/robot_state_publisher
이 패키지들을 ROS2에서 그대로 쓸 수 있을까?
어떤부분들을 수정해야할까?
OpenManipulator-X 제어 패키지는 ROS2에서 쓸 수 있는가?
- EMG 센서를 통해서 샘플 데이터들을 실험을 통해 만들고 분류기를 만들어야 하는지, 이미 분류기가 존재하는지(myo_raw 노드 확인해보자.)
'기계공학부 시절의 기록 > ROS일기' 카테고리의 다른 글
[실행오류] ROS2 basic operation of OpenManipulator-X (0) | 2021.10.07 |
---|---|
21/10/05 IRaC Lab 방문 (2) | 2021.10.05 |
9월 4째주. ROS 진행상황 (0) | 2021.09.30 |
terminator, 구동중인 것들 파악 코드 (0) | 2021.09.17 |
myo_raw데이터를 로봇제어 가능한 데이터로 변환 (0) | 2021.07.30 |
댓글