[Documentation] [TitleIndex] [WordIndex

  Show EOL distros: 

ric: ric_base_station | ric_description | ric_mc | ric_robot

Package Summary

The main ric_robot robot package

  • Maintainer: RoboTiCan <support AT robotican DOT net>
  • Author: RoboTiCan <support AT robotican DOT net>
  • License: BSD
  • Source: git https://github.com/robotican/ric.git (branch: hydro-devel)
ric: ric_base_station | ric_board | ric_description | ric_gazebo | ric_mc | ric_moveit | ric_navigation | ric_robot

Package Summary

The main ric_robot robot package

  • Maintainer status: maintained
  • Maintainer: RoboTiCan <support AT robotican DOT net>
  • Author: RoboTiCan <support AT robotican DOT net>
  • License: BSD
  • Source: git https://github.com/robotican/ric.git (branch: indigo-devel)

Overview

The ric_robot package is the main package which allows to communicate and control the different robots which is made by RoboTiCan.

Usage

Launching the robot

Users can run the main robot launch file (e.g. lizi.launch or komodo.launch) to initiate all the robot controllers and sensors with a single command.

$ roslaunch ric_robot komodo.launch id:=<ID>

For example, running the launch file with komodo id value of 1:

$ roslaunch ric_robot komodo.launch id:=1

This command should be executed on the robot computer. For remote operation see the ric_base_station package. The id number sets the robot name to be komodo_<ID>, this is extremely important when working with several robots as a group of robots. This allows giving each robot in the group a unique name. The id argument can be any desired id number. The id number affect the namespace and the robot description file links and joint names. All the topics, services and parameters will have a komodo_<ID> prefix. The robot launch file is also used to load nodes for the webcams, the Asus RGB-D camera, the Hokuyo laser scanner and the robot arm launch file (komodo_arm.launch).

The robot launch file also loads the configuration file (e.g. ric_robot/config/default_komodo.yaml) which contains various parameters .

Controlling the arm

To control the Komodo robot arm see the Controlling the Komodo arm tutorial.

Using the Laser scanner

See hokuyo_node for package details.

Relevant lines in the launch file:

   1 <node pkg="hokuyo_node" type="hokuyo_node" name="hokuyo_node" output="screen">
   2       <param name="port" value="/dev/Hokuyo" />
   3       <param name="frame_id" value="komodo_$(arg id)_Laser_link" />
   4 </node>

The readings are published on the /komodo_<ID>/scan topic.

Using the depth sensor (ASUS Xtion PRO LIVE)

See openni2_launch for package details.

Relevant lines in the launch file:

   1 <include file="$(find openni2_launch)/launch/openni2.launch">
   2       <arg name="camera" value="komodo_$(arg id)_Asus_Camera" />
   3 </include>

Using the cameras

See usb_cam for package details.

Relevant lines in the launch file (for each camera):

   1 <node pkg="usb_cam" type="usb_cam_node" name="arm_cam_node" output="screen"  respawn="true">
   2       <param name="~video_device" value="/dev/video0" />
   3       <param name="~camera_frame_id" value="komodo_$(arg id)_Arm_Camera_link" />
   4       <param name="~pixel_format" value="yuyv" />
   5       <param name="~image_width" value="320" />
   6       <param name="~image_height" value="240" />
   7 </node>

Reading the ultrasonic range finders

The Komodo and Lizi robots have three ultrasonic range finders (URF) mounted on the sides and on the back of the robot. The range readings are published under the following topics:

/komodo_<ID>/Rangers/Left_URF

/komodo_<ID>/Rangers/Rear_URF

/komodo_<ID>/Rangers/Right_URF

Nodes

ric_node

This is the main robot node.

Subscribed Topics

cmd_vel (geometry_msgs/Twist)

Published Topics

gps_pub (sensor_msgs/NavSatFix) imu_pub (sensor_msgs/Imu) odom_pub (nav_msgs/Odometry) Rangers/Left_URF (sensor_msgs/Range) Rangers/Rear_URF (sensor_msgs/Range) Rangers/Right_URF (sensor_msgs/Range)

Services

set_odom (ric_robot/set_odom)

Parameters

fuse_imu_roll_pitch (boolean, default: false) fuse_imu_roll_pitch (boolean, default: false) wheel_diameter (double, default: 0.14 for lizi, 0.254 for komodo) wheel_base_length (double, default: 0.275 for lizi, 0.402 for komodo) encoder_cpr (double, default: 4288 for lizi4 model, 56000 for lizi2 model, 2048 for komodo)

serial_node

This is an internal node that is responsible for the communication between the internal micro-controller and the computer. This node belongs to the rosserial_python package(http://wiki.ros.org/rosserial).

Subscribed Topics

command (ric_robot/ric_command) pan_tilt (ric_robot/ric_pan_tilt)

Published Topics

ric_status (ric_robot/ric_status) raw_gps (ric_robot/ric_gps) ric_raw (ric_robot/ric_raw)

Services

reset_encoders (std_srv/Empty) ric_calib (ric_robot/ric_calib) restart (std_srv/Empty) relays (ric_robot/relays)

Parameters

pid_constants (float array, default: [0.02,0.2,0.0,0.5,1.0] for lizi, [0.02,0.08, 0.0, 0.05,1.0] for komodo)

komodo_arm

This node have two main functions. The first function is to read the arm actuators states and publish them as a sensor_msgs/JointState message. The second function is to control the arm elevator.

Subscribed Topics

elevator_controller/pos_command (ric_robot/ric_elevator_command)

Published Topics

joint_states (sensor_msgs/JointState)

Services

elevator_controller/set_position (ric_robot/set_elevator) elevator_controller/home (ric_robot/home_elevator)

Report a Bug

Use GitHub to report bugs or submit feature requests. [View active issues]


2019-09-14 13:06