본문 바로가기
ROS(Robot Operating System)

(7) myCobot_ros 패키지 분석

by kingyejin 2024. 2. 20.

1. mycobot_600_slider.launch 파일 실행

roslaunch mycobot_600 mycobot_600_slider.launch

 


1)  mycobot_600_urdf.urdf

6 joint 정보 서로 교환(communication)


2) mycobot_600.rviz

mycobot_600 용 Rviz 실행 (ROS 패키지 내 Rviz X)


3) robot_state_publisher / joint_state_publisher

해당 node들은 ROS 기본 패키지로, robot state 정보를 전달해주는 역할을 한다.

*해당 publisher node는 로봇과 PC가 USB 연결이 되어있어야 실행됨

$ cd /opt/ros/noetic/share
$ ls


2. slider_600.py 실행

rosrun mycobot_600 slider_600.py

 


[ElephantRobot  클래스]

__init__: 클래스의 생성자로, ElephantRobot 클래스의 인스턴스를 초기화함. 호스트와 포트를 인수로 받아 TCP 클라이언트 소켓을 생성함.
start_client: TCP 클라이언트를 서버에 연결하는 메서드. 연결이 성공하면 빈 문자열을 반환하고, 실패하면 "e"를 반환
stop_client: TCP 클라이언트를 종료하는 메서드.
send_command: 서버로 명령을 보내고 응답을 받는 메서드. 명령을 인코딩하여 보내고, 응답을 디코딩하여 받음.
string_to_coords: 문자열 형태의 좌표를 파싱하여 좌표 리스트로 변환하는 메서드.
string_to_double: 문자열을 부동 소수점 숫자로 변환하는 메서드.

string_to_int: 문자열을 정수로 변환하는 메서드.
invalid_coords: 잘못된 좌표를 나타내는 특정 값을 반환하는 메서드.
get_angles: 로봇의 현재 각도를 가져오는 메서드.
get_coords: 로봇의 현재 좌표를 가져오는 메서드.
get_speed: 로봇의 현재 속도를 가져오는 메서드.
power_on: 로봇의 전원을 켜는 메서드.
power_off: 로봇의 전원을 끄는 메서드.
check_running: 로봇이 현재 실행 중인지 확인하는 메서드.
state_check: 로봇의 상태를 확인하는 메서드.
program_open: 프로그램을 열고 실행하는 메서드.

program_run(): 프로그램을 실행하는 메서드.
read_next_error: 다음 오류를 읽는 메서드.
write_coords: 좌표를 설정하는 메서드.
write_coord: 특정 축의 좌표를 설정하는 메서드.
write_angles: 각도를 설정하는 메서드.
write_angle: 특정 관절의 각도를 설정하는 메서드.
set_speed: 로봇의 속도를 설정하는 메서드.
set_carte_torque_limit: 카르트 토크 제한을 설정하는 메서드.
set_upside_down: 로봇을 뒤집는 메서드.

set_payload: 로봇의 페이로드를 설정하는 메서드.
state_on: 로봇 상태를 켜는 메서드.
state_off: 로봇 상태를 끄는 메서드.
task_stop: 작업을 중지하는 메서드.
jog_angle: 각도를 이동시키는 메서드.
jog_coord: 좌표를 이동시키는 메서드.
get_digital_in: 디지털 입력을 가져오는 메서드.
get_digital_out: 디지털 출력을 가져오는 메서드.
set_digital_out: 디지털 출력을 설정하는 메서드.
set_analog_out: 아날로그 출력을 설정하는 메서드.
get_acceleration: 가속도를 가져오는 메서드.
set_acceleration: 가속도를 설정하는 메서드.
command_wait_done: 명령이 완료될 때까지 대기하는 메서드.
wait: 일정 시간 동안 대기하는 메서드.
assign_variable: 로봇 컨트롤러 내에서 변수에 값을 할당하는 메서드.
get_variable: 로봇 컨트롤러 내에서 변수의 값을 가져오는 메서드.