Skip to content

traclabs/euler

 
 

Repository files navigation

euler

SwRI mobile manipulation platform

Omni-Directional Euler Robot with Industrial Manipulator

Installation

The following installation instruction are broken into multiple parts: depedencies installed from source, ROS install, and, amos source install

ROS Install

  1. Install ROS Follow all the instructions to install the base version of ROS Indigo: Install ROS-Deskstop Full. Please make sure you have followed all the ROS installation steps, including calls to rosdep.

  2. Get the wstool package sudo apt-get install python-wstool

  3. Initialize the Euler workspace in your src directory.

wstool merge https://raw.githubusercontent.com/swri-robotics/euler/indigo-devel/euler.rosinstall
wstool update
cd ..
  1. Make sure dependencies are installed. *Note: If this step fails then you may have to install dependencies manually using sudo apt-get <package> rosdep install --from-paths src --ignore-src --rosdistro hydro -y
  2. Build Euler! Assuming you are in the folder created above, catkin_make
  3. Setup your environment You will have to do this every time you work with this particular source install of the code. Assuming you are in the moveit folder created above, source devel/setup.bash

Navigation Stage Demo

To run the navigation demo with simulated input/driving (via Stage), run the following command.

  • roslaunch euler_navigation_demo stage.launch

Navigation Interface

In its current state, the navigation configuration assumes a number of different topics in the euler namespace

  • /euler/scan1 and /euler/scan2 - navigation subscribes to the two LaserScans provided by the laser scanners on the base
  • /euler/cmd_vel - navigation publishes the Twist message used by the base for driving
  • /euler/odom - navigation subscribes to Odometry messages

In addition, it also assumes that the following transforms are published.

  • /odom --> /base_link
  • /base_link --> X (where X is the frames for that the laser data is published in)
  • /map --> /odom - This is the localization step

The navigation configuration provides numerous topics for visualizing the robot's progress toward the goal, too many to list here.

In terms of input, you can specify goals by publishing on the topic /move_base_simple/goal, which is what RViz does. However, the higher-level smach-compatibile Action interface is also available, as a MoveBaseAction with the namespace /move_base.

Hardware configuration

Sick S300

The Sick S300 safety laser scanners have embedded controllers that require one-time configuration, most importantly to setup the protected zones. The S300 is a serial device, but it ships with a USB to Serial (M8 4 conductor connector) cable that plugs into the front of the sensor. The SICK CDN software is used for communication and configuration. This Quick Start Guide is helpful. The full manual gives all the details. The Euler configuration project file is here.

About

SwRI mobile manipulation platform

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • CMake 100.0%