SICK TIM561 설치

1. SICK 회사 제품 사이트

제품명 : TIM561

2. ROS 드라이버 소스 제공 사이트

  ROS 드라이버 제공 사이트

3. 설치 환경 셋업

설치환경을 실행하기 위해 아래의 명령을 입력합니다.

source /opt/ros/kinetic/setup.bash

4. ROS 작업 위치로 이동

5. ROS SICK 드라이버 소스 다운로드

git 명령을 이용하여 ROS SICK 소스를 다운로드 합니다.

git clone -b devel --single-branch git://github.com/SICKAG/sick_scan.git

6. 컴파일 및 인스톨

catkin_make install

7. 실행환경 설정

source ~/catkin_ws/install/setup.bash

8. launch 파일 수정

<?xml version="1.0"?>
<!--
     **********************************************
     Launch File for TIM 5xx scanner
     **********************************************
     Start and stop angle is given in [rad]

     Default min_angle is  -135 degree.
     Default max_angle is +135 degree.

     Check IP-address, if you scanner is not found after roslaunch.
-->

<!-- You can launch a TIM_5xx-scanner on a specific ip address (e.g. 192.68.0.71) using the following example call:

     roslaunch sick_scan sick_tim_5xx.launch hostname:=192.168.0.71

-->

<launch>
 
  <node name="sick_tim_561" pkg="sick_scan" type="sick_generic_caller"  respawn="false" output="screen">

  <!--<param name="robot_description" command="$(find xacro)/xacro.py '$(find sick_scan)/urdf/example.urdf.xacro'" />-->


    <!-- Default: min_angle = -130 degree, max_angle = 130 -->
    <!-- default values: -->
    <!--
      <param name="scanner_type" type="string" value="sick_tim_5xx" />
      <param name="min_ang" type="double" value="-2.35619449" />
      <param name="max_ang" type="double" value="2.35619449" />
      <param name="intensity" type="bool" value="True" />
      <param name="skip" type="int" value="0" />
      <param name="frame_id" type="str" value="laser" />
      <param name="time_offset" type="double" value="-0.001" />
      <param name="publish_datagram" type="bool" value="False" />
      <param name="subscribe_datagram" type="bool" value="false" />
      <param name="device_number" type="int" value="0" />
      <param name="range_min" type="double" value="0.05" />
    -->
    <param name="scanner_type" type="string" value="sick_tim_5xx" />

    <!-- -130° -->
    <param name="min_ang" type="double" value="-2.268928028" />

    <!-- 130° -->
    <param name="max_ang" type="double" value="2.268928028" />

    <!--

    <param name="use_binary_protocol" type="bool" value="true" />
    <param name="range_max" type="double" value="100.0" />
    <param name="intensity" type="bool" value="True" />  -->

    <param name="hostname" type="string" value="192.168.200.36" />
    <param name="cloud_topic" type="string" value="cloud"/>
    <param name="frame_id" type="str" value="lidar_link" />
    <param name="port" type="string" value="2111" />
    <param name="timelimit" type="int" value="5" />
  </node>

</launch>
<!--
Conversion between degree and rad	
	
DEG	RAD
-180	-3.141592654
-175	-3.054326191
-170	-2.967059728
-165	-2.879793266
-160	-2.792526803
-155	-2.705260341
-150	-2.617993878
-145	-2.530727415
-140	-2.443460953
-137.5	-2,3998277
-135	-2.35619449
-130	-2.268928028
-125	-2.181661565
-120	-2.094395102
-115	-2.00712864
-110	-1.919862177
-105	-1.832595715
-100	-1.745329252
-95	-1.658062789
-90	-1.570796327
-85	-1.483529864
-80	-1.396263402
-75	-1.308996939
-70	-1.221730476
-65	-1.134464014
-60	-1.047197551
-55	-0.959931089
-50	-0.872664626
-45	-0.785398163
-40	-0.698131701
-35	-0.610865238
-30	-0.523598776
-25	-0.436332313
-20	-0.34906585
-15	-0.261799388
-10	-0.174532925
-5	-0.087266463
0	0
5	0.087266463
10	0.174532925
15	0.261799388
20	0.34906585
25	0.436332313
30	0.523598776
35	0.610865238
40	0.698131701
45	0.785398163
50	0.872664626
55	0.959931089
60	1.047197551
65	1.134464014
70	1.221730476
75	1.308996939
80	1.396263402
85	1.483529864
90	1.570796327
95	1.658062789
100	1.745329252
105	1.832595715
110	1.919862177
115	2.00712864
120	2.094395102
125	2.181661565
130	2.268928028
135	2.35619449
137.5	2,3998277
140	2.443460953
145	2.530727415
150	2.617993878
155	2.705260341
160	2.792526803
165	2.879793266
170	2.967059728
175	3.054326191
180	3.141592654
185	3.228859116
190	3.316125579
195	3.403392041
200	3.490658504
205	3.577924967
210	3.665191429
215	3.752457892
220	3.839724354
225	3.926990817
230	4.01425728
235	4.101523742
240	4.188790205
245	4.276056667
250	4.36332313
255	4.450589593
260	4.537856055
265	4.625122518
270	4.71238898
275	4.799655443
280	4.886921906
285	4.974188368
290	5.061454831
295	5.148721293
300	5.235987756
305	5.323254219
310	5.410520681
315	5.497787144
320	5.585053606
325	5.672320069
330	5.759586532
335	5.846852994
340	5.934119457
345	6.021385919
350	6.108652382
355	6.195918845
360	6.283185307
-->

9. rviz 설치 확인

sudo apt-get install ros-kinetic-rviz

10. launch 파일 실행

launch 파일을 실행모드로 수정합니다.

아래의 명령을 수행하여 sick 센서 데이터를 취득합니다.

roslaunch sick_scan sick_tim_561.launch

11. rviz 실행

rosrun rviz rviz

12. topic 추가

Add 버튼을 클릭하고 By Topic 탭을 클릭합니다. 토픽은 /scan의 LaserScan을 선택합니다.

13. Fixed Frame 수정

Fixed Frame의 값을 lidar_link로 수정합니다.

위의 그림처럼 레이저 스캐너의 데이터가 출력됩니다.

14. 우분에서 연결상태 확인

nc -z -v -w5 192.168.110.5 2112

Leave a Comment