Download PDF

Composable Robot Motion Stack: Implementing Constrained Hybrid Dynamics using Semantic Models of Kinematic Chains

Publication date: 2015-11-27

Author:

Shakhimardanov, Azamat
Bruyninckx, Herman ; Prassler, Erwin ; Kraetzschmar, Gerhard

Abstract:

Over the last 50 years, the controlled motion of robots has become a very mature domain of expertise. It can deal with all sorts of topologies and types of joints and actuators, with kinematic as well as dynamic models of devices, and with one or several tools or sensors attached to the mechanical structure. Nevertheless, the domain has not succeeded in standardizing the modelling of robot devices (including such fundamental entities as “reference frames”!), let alone the semantics of their motion specification and control. This thesis aims to solve this long-standing problem, from three different sides: semantic models for robot kinematics and dynamics, semantic models of all possible motion specification and control problems, and software that can support the latter while being configured by a systematic use of the former. The diversity of robot motion tasks has led to the development of (constrained) task control methodologies with origins in force control, humanoid robot control, mobile manipulator control, visual servoing, etc. This has influenced the way these methodologies formulate and compute constrained task control problems, and how software was developed and documented. Hence, the task programming approaches advocated by each framework often build upon the (most often only implicitly specified) semantics of the models and the assumptions of that specific domain. As a result, the semantics and the behaviors of the relationships of the task constituents, “target objects, constraints on object relations, controlled actions, solvers, and cost functions”, that seemingly represent the same primitives across the frameworks have become ambiguous. This impedes a deterministic composition of the models and the software implementations of these task constituents and a compositionality of the resultant tasks. In order to address this problem, this doctoral thesis introduces a systematic constrained motion task control specification and programming approach. The approach first explicitly and formally defines the relationships between the abstractions of the motion task programming stack and the components of the constrained motion task control architecture. It introduces the concept of semantic models and exemplifies their role in the modelling and the realization of task control applications. This research is presented in the form of two contributions. • Firstly, this thesis develops composable semantic models to describe kinematic chain structures and associated computations. These models allow decoupling of physical primitives from their coordinate-specific representations. Additionally, they enable specifications of complex computations on the kinematic chains by composing simpler modelling primitives. The compositions take into account the constraints that each primitive needs to satisfy when used with other primitives. This feature is achieved by explicitly separating structural and behavioral aspects of the models and follows the Model Driven Engineering (MDE) methodology. MDE proposes decoupling of the domain specific models, their instances, and their implementations from the generic domain independent meta-models. MDE methodology allowed to programmatically formulate semantic models in the form of a Domain Specific Language (DSL) and its related tool-chain infrastructure. • Secondly, this thesis expresses each task control problem as a constrained optimization problem; such constrained optimization and optimal control formulations are already at the basis of many of the existing task control and software frameworks. This research focuses on complete and systematic (re-)configurability of such Whole Body Control Architecture (WBCA) and in particular, the solver component that plays a central role in the implementations of the constrained motion control tasks. The solver used in the simulations and the experiments is the Popov-Vereshchagin constrained hybrid dynamics solver, which is extended to account for different constraint-controller configurations. The research also exemplifies the relations between the components of WBCA and their software representations in the form of the DSLs in the motion programming stack. Furthermore, it shows that every component of the WBCA and respectively its software counterpart should comply with their associated semantic models. This is imperative in order to allow a systematic and a physically-valid constrained task specification and its computation. Finally, every contribution is accompanied by a number of examples that showcase how various semantic models, architectures, and their software implementation should be used in the context of larger applications. All semantic models and software contributions are provided with open source licenses.