Torsten Kroeger

Stanford Artificial Intelligence Laboratory

Robot Programming

This research has been conducted at the Institut für Robotik und Prozessinformatik at the Technische Universität Braunschweig, Germany.

Motivation: Programming Sensor-Guided and Sensor-Guarded Robot Motions

One reason why industrial manipulators are mainly used for trajectory-following operations, that is, purely position controlled, is that nowadays commercial control units are rarely open for sensor integration. Research institutions often replace the existing control units by their own ones to perform experiments in control engineering. On the other hand, when studying literature, one gets the impression that problems of force control, visual servo control, distance control, manipulator dynamics, and the programming of such systems are solved sufficiently. In concrete cases, this is correct. Problems appear when merging all these fields together. Developers should be encouraged to have a better view of the overall manipulation control system. When considering any kind and any number of sensors (force/torque, distance, vision, pressure, light barriers, etc.), how can even non-experienced programmers implement guarded and guided motion commands with respect to any reference coordinate system? What could such a hybrid control architecture look like? How can sensor signals be consistently mapped to stable, unambiguous, and deterministic manipulator motions? How can we program such systems? Are different levels (or layers) of programming required, such that users with various expertise may use robotic systems?

Manipulation Primitives

Sensor and controller demands are usually varying during robot task execution. In the investigated control approach, complex robot tasks are decomposed into small work steps. This has the advantage that it becomes possible to use optimized controller and sensor configurations for each step. To execute atomic motion commands, so-called Manipulation Primitives are used, which represent a unique programming interface to the underlying robot control system, that is, a hybrid switched control system consisting of several control submodules that are fed by a number of different sensor signals (e.g., force/torque, computer vision, distance, or even simple light barriers). It allows execution of compliant robot motions, or in general, any sensor-guided and sensor-guarded motion. A Manipulation Primitive does not only allow the definition of desired values, but also the adaptation of the structure of the control system to the current processing step. This includes the definition of the current reference frame which may abruptly change with the next executed Manipulation Primitive.

Various demanding applications have been realized by means of this programming approach that enables the on-line usage of multiple sensor signals. A selection of sample applications can be found in the video section.

 

Please refer to the following publications:

  • Robot Motion Control During Abrupt Switchings Between Manipulation Primitives.
    In Workshop on Mobile Manipulation at the IEEE International Conference on Robotics and Automation, Shanghai, China, May 2011. BibTeX

    @inproceedings{Kroeger:11a,
    	author = {T.~Kr{\"o}ger and B.~Finkemeyer},
    	title = {Robot Motion Control During Abrupt Switchings Between Manipulation Primitives},
    	month = {May},
    	booktitle = {Workshop on Mobile Manipulation at the {I}{E}{E}{E} International Conference on Robotics and Automation},
    	address = {Shanghai, China},
    	year = {2011}
    }
    			
  • Manipulation Primitives - A Universal Interface Between Sensor-Based Motion Control and Robot Programming.
    In Robot Systems for Handling and Assembly. Springer Tracts in Advanced Robotics, Vol. 67, Springer, pp. 293-313, 2010. BibTeX

    @incollection{Kroeger:10b,
    	author = {T.~Kr{\"o}ger and B.~Finkemeyer and F.~M.~Wahl},
    	title = {Manipulation Primitives\,---\,{A} Universal Interface Between Sensor-Based Motion Control and Robot Programming},
    	booktitle = {Robot Systems for Handling and Assembly},
    	editor = {D.~Sch{\"u}tz and F.~M.~Wahl},
    	address = {Berlin, Heidelberg, Germany},
    	series = {Springer Tracts in Advanced Robotics},
    	publisher = {Springer},
    	volume = {67},
    	pages = {293--313},
    	edition = {first},
    	year = {2010}
    }
    			
  • The Adaptive Selection Matrix - A Key Component for Sensor-Based Control of Robotic Manipulators.
    In Proc. of the IEEE International Conference on Robotics and Automation, pp. 3855-3862, Anchorage, AK, USA, May 2010. BibTeX

    @inproceedings{Finkemeyer:10a,
    	author = {B.~Finkemeyer and T.~Kr{\"o}ger and F.~M.~Wahl},
    	title = {The Adaptive Selection Matrix\,---\,{A} Key Component for Sensor-Based Control of Robotic Manipulators},
    	booktitle = {Proc. of the IEEE International Conference on Robotics and Automation},
    	month = {May},
    	pages = {3855--3862},
    	address = {Anchorage, AK, USA},
    	year = {2010}
    }
    			
  • Executing Assembly Tasks Specified by Manipulation Primitive Nets.
    Advanced Robotics. Vol. 19, No. 5, pp. 591-611, June 2005. BibTeX

    @article{Finkemeyer:05,
    	author = {B.~Finkemeyer and T.~Kr{\"o}ger and F.~M.~Wahl},
    	title = {Executing Assembly Tasks Specified by Manipulation Primitive Nets},
    	journal = {Advanced Robotics},
    	volume = {19},
    	number = {5},
    	month = {June},
    	pages = {591--611},
    	year = {2005}
    }
    			
  • Aktionsprimitive: Ein universelles Roboter-Programmierparadigma.
    at - Automatisierungstechnik. pp. 189-196, April 2005. BibTeX

    @article{Finkemeyer:05a,
    	author = {B.~Finkemeyer and T.~Kr{\"o}ger and F.~M.~Wahl},
    	title = {Aktionsprimitive: {E}in universelles Roboter-Programmierparadigma},
    	journal = {at - Automatisierungstechnik},
    	month = {April},
    	pages = {189--196},
    	year = {2005}
    }
    			
  • A Task Frame Formalism for Practical Implementations.
    In Proc. of the IEEE International Conference on Robotics and Automation, pp. 5218-5223, New Orleans, LA, USA, April 2004. BibTeX

    @inproceedings{Kroeger:04,
    	author = {T.~Kr{\"o}ger and B.~Finkemeyer and F.~M.~Wahl},
    	title = {A Task Frame Formalism for Practical Implementations},
    	booktitle = {Proc. of the IEEE International Conference on Robotics and Automation},
    	address = {New Orleans, LA, USA},
    	month = {April},
    	pages = {5218--5223},
    	year = {2004}
    }
    			
  • Compliant Motion Programming: The Task Frame Formalism Revisited.
    In Mechatronics and Robotics, pp. 1029-1034, Aachen, Germany, September 2004. BibTeX

    @inproceedings{Kroeger:04a,
    	author = {T.~Kr{\"o}ger and B.~Finkemeyer and U.~Thomas and F.~M.~Wahl},
    	title = {Compliant Motion Programming: {T}he Task Frame Formalism Revisited},
    	booktitle = {Mechatronics and Robotics},
    	address = {Aachen, Germany},
    	month = {September},
    	pages = {1029--1034},
    	year = {2004}
    }
    			
  • Manipulation Primitives as Interface between Task Programming and Execution.
    In Workshop on Issues and Approaches to Task Level Control at the IEEE/RSJ International Conference on Intellegent Robots and Systems, Sendai, Japan, September 2004. BibTeX

    @inproceedings{Kroeger:04c,
    	author = {T.~Kr{\"o}ger and B.~Finkemeyer and F.~M.~Wahl},
    	title = {Manipulation Primitives as Interface between Task Programming and Execution},
    	booktitle = {Workshop on Issues and Approaches to Task Level Control at the {I}{E}{E}{E}/{R}{S}{J} International Conference on Intellegent Robots and Systems},
    	address = {Sendai, Japan},
    	month = {September},
    	year = {2004}
    }
    			
  • Error-Tolerant Execution of Complex Robot Tasks Based on Skill Primitives.
    In Proc. of the IEEE International Conference on Robotics and Automation, Vol. 3, pp. 3069-3075, Taipei, Taiwan, September 2003. BibTeX

    @inproceedings{Thomas:03,
    	author = {U.~Thomas and B.~Finkemeyer and T.~Kr{\"o}ger and F.~M.~Wahl},
    	title = {Error-Tolerant Execution of Complex Robot Tasks Based on Skill Primitives},
    	booktitle = {Proc. of the IEEE International Conference on Robotics and Automation},
    	volume = {3},
    	address = {Taipei, Taiwan},
    	month = {September},
    	pages = {3069--3075},
    	year = {2003}
    }
    			
  • A New Framework for Task Oriented Sensor Based Robot Programming and Verification.
    In Proc. of the IEEE International Conference on Advanced Robotics, pp. 1208-1214, Coimbra, Portugal, June 2003. BibTeX

    @inproceedings{Diethers:03,
    	author = {K.~Diethers and T.~Firley and T.~Kr{\"o}ger and U.~Thomas},
    	title = {A New Framework for Task Oriented Sensor Based Robot Programming and Verification},
    	booktitle = {Proc. of the IEEE International Conference on Advanced Robotics},
    	address = {Coimbra, Portugal},
    	month = {June},
    	pages = {1208--1214},
    	year = {2003}
    }