Download as pdf or txt
Download as pdf or txt
You are on page 1of 33

The First MoveIt!

Community Meeting
(Online)

Team ViGIR (and MoveIt!) at the


DRC

Stefan Kohlbrecher, SIM Group, TU Darmstadt


Alberto Romay, Alexander Stumpf, Achim Stein, Oskar von Stryk
Simulation, Systems Optimization and Robotics (SIM) Group, TU Darmstadt, Germany

David C. Conner
Christopher Newport University, Newport News, United States

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 1

Team ViGIR
International collaboration, Track B Atlas team
TORC Robotics (Blacksburg, VA)
TU Darmstadt (Darmstadt, Germany)
Virginia Tech (Blacksburg, VA)
Cornell University (Ithaca, NY)
Oregon State University (Corvallis, OR)
Leibnitz Universitt Hannover (Hannover,
Germany)

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 2

The DAPRA Robotics Challenge


Highly compressed timeline
Competition events every
few months
Leverage open source
software

MoveIt!

MoveIt! also used by several


other teams

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 3

Motion Planning Requirements


Manipulation
Collision free planning
Cartesian Paths
Manipulation in contact with environment
Maintain stability

Sliding Autonomy:
Operator/OCS-based (Teleop)
Operator/Affordance template based (Task level)
Behavior Executive (Autonomous)

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 4

Hardware/Infrastructure
Boston Dynamics
(BDI) Atlas robot
Hydraulically actuated
7DOF arms

API provided by BDI


Walking/Stepping
Balancing

Upper body planning


decoupled from low
level balance control

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 5

Overview

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 6

Setup - Robot
Different robot variants
Different hand variants
Combinatory explosion of
configs
Do not want to run setup

assistant for every


(possible) combination

Solution:
Use of xacro macros to

change configs

vigir_atlas_moveit_config

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 7

Sensing - LidarOctomapUpdater
Environment octomap
updated in real-time
Provide collision model for
planner
Also provide filtered LIDAR
data for overall system
Annotate with transform

information as tf prohibitive
over constrained comms

vigir_lidar_octomap_updater

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 8

Sensing - LidarOctomapUpdater

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 9

Sensing - LidarOctomapUpdater
Separate ROS Masters

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 10

Sensing - LidarOctomapUpdater
Separate ROS Masters

Intermittent communication,
Only standard UDP (1500 Bytes)
July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 11

Planning - Capabilities
Additional move_group
capability
Different types of motion

requests
-

Joint goal
Cartesian goal
Cartesian Path (waypoints)
Circular motion

Specify planning reference

pose relative to endeffector


Constrain joint limits
selectively at run-time

vigir_move_group

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 12

TYPE_FREE_MOTION
TYPE_CARTESIAN_WAYPOINTS
TYPE_CIRCULAR_MOTION
geometry_msgs/Pose[] target_poses
string reference_point_frame
geometry_msgs/Pose reference_point

Planning Object Templates


On top/outside of move_group
Operator places objects
Planning relative to instantiated
objects templates
Object template library
Geometry
Mass
Grasps
Stand poses

vigir_object_template_manager

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 13

Planning Object Templates


On top/outside of move_group
Operator places objects
Planning relative to instantiated
objects templates
Object template library
Geometry
Mass
Grasps
Stand poses

vigir_object_template_manager

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 14

Planning Object Templates


On top/outside of move_group
Operator places objects
Planning relative to instantiated
objects templates
Object template library
Geometry
Mass
Grasps
Stand poses

vigir_object_template_manager

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 15

Planning - Ghost robot


Pre-plan motions with virtual
Ghost Robot
Additional capabilities compared
to start/goal state visualization
in MoveIt! Rviz plugin
Snap endeffectors to objects
Move to stand poses relative to

object templates
Constrain IK joint limits
Send low-bandwidth planning
request directly from OCS

vigir_ocs_robot_model

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 16

Manipulation Pipeline Example

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 17

Manipulation Pipeline Example

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 18

Manipulation Pipeline Example

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 19

Manipulation Pipeline Example

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 20

Other Development
Selectively slow down trajectories
Prevent falls and/or damage to robot or

environment
Merged into upstream MoveIt!

Parabolic time parametrization can


have acceleration spikes (github)
Alternative cubic time parametrization
Lives in fork for now

Switch between MoveIt! and MIT's


Drake planning framework on a per
plan request basis
Whole Body Motions

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 21

References & Video


Kohlbrecher et.al Human-Robot Teaming for Rescue Missions: Team ViGIRs
Approach to the 2013 DARPA Robotics Challenge Trials Journal of Field
Robotics, 2014
Romay et al. Template-Based Manipulation in Unstructured Environments for
Supervised Semi-Autonomous Humanoid Robots, IEEE Humanoids 2014
Stumpf et al. Supervised Footstep Planning for Humanoid Robots in Rough
Terrain Tasks using a Black Box Walking Controller, IEEE Humanoids 2014

YouTube playlist with manipulation examples

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 22

Conclusion
MoveIt! provided required basic manipulation capabilities
Easy and intuitive integration into complex system
Sensor-based collision avoidance

Potential areas for improvement:


Consideration of balance constraints
Whole Body Planning
Optimization based planning
Workspace analysis
- Inverse reachability

Everything available on Github


More at ROSCon 2015 talk

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 23

Contact Information
Stefan Kohlbrecher
Technische Universitt
Darmstadt

Email:
kohlbrecher@sim.tu-darmstadt.de

July 23rd, 2013 | Team ViGIR at the DRC | Stefan Kohlbrecher | 24

MoveIt Community Meeting, 9/3/2015


Jackie Kay, OSRF

ROS 2: Intro
ROS 2: Real-time performance
Gazebo: Recent developments
Gazebo: Future plans
Questions

Image 2013 by Javier A. Kypuros

You might also like