Skip to content

Indy 7에 툴 장착하기

요구 환경

  • Ubuntu 16.04 및 ROS Kinetic 이상 이 설치된 PC

  • indy-ros 및 indy-ros-examples 소스코드 설치

위 요구 환경의 설치가 완료되지 않은 경우 설치를 먼저 진행하여 주십시오.

실행 방법

1. 터미널 열기

2. ROS 환경설정 확인하기

ROS 명령어를 정상적으로 사용하기 위하여 terminal 의 환경에 ROS 환경변수를 추가 할 필요가 있습니다. 아래의 명령어로 추가할 수 있으며, 설치에서 설명한 bashrc에 해당 명령어들이 추가되어 있을 경우, 이 과정을 생략 할 수 있습니다.

1
2
source /opt/ros/<사용중인 ROS 버전>/setup.bash
source <작업중인 워크스페이스 경로>/devel/setup.bash

example.

1
2
source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash

3. 명령어 실행하기

1
roslaunch indy7_robotiq_description display_indy7_robotiq.launch

실행결과, 아래 2개의 창이 실행되는 것을 확인 할 수 있습니다.



indy7의 경우와 마찬가지로 joint_states_publisher의 각 조인트 포지션 값을 조정해 rviz에 표시되는 로봇의 자세를 바꿀 수 있습니다.


패키지 구성과 런치파일의 구성은 indy7 의 경우와 동일합니다.

로봇 모델

위와 같이 로봇 핸드를 장착한 로봇 모델을 Rviz에서 불러오기 위해서는 툴, 로봇, 톨과 로봇의 연결정보를 담고있는 xacro 파일이 필요합니다.

아래의 코드는 indy7_robotiq.xacro의 전문입니다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<?xml version="1.0" ?>
<robot name="indy7_and_robotiq" xmlns:xacro="http://ros.org/wiki/xacro">
  <xacro:include filename="$(find indy7_description)/urdf/indy7.xacro"/>
  <xacro:include filename="$(find indy7_robotiq_description)/urdf/robotiq_arg85_description.xacro"/>

  <joint name="indy7_joint_tcp" type="fixed">
    <parent link="tcp"/>
    <child link="robotiq_85_base_link"/>
    <origin rpy="0 0 0" xyz="0 0 0"/>
  </joint>
</robot>

robotiq 핸드의 경우 공식으로 배포되는 xacro 파일이 존재합니다. 툴의 xacro 파일이 이미 존재하는 경우 위와같은 짧은 코드로 간단히 indy7에 부착하는것이 가능합니다.

  • xacro:include : 이미 존재하는 xacro 파일을 읽어들입니다. 위 코드에서는 indy7_description 패키지의 indy7.xacro와 툴 모델인 robotiq_arg85_description.xacro을 읽어오고 있습니다.

  • joint : 읽어들인 두 xacro 파일의 링크를 연결하는 Joint 를 설정합니다.