Johannes Englsberger, Alexander Dietrich, George Mesesan, Gianluca Garofalo, C. Ott, A. Albu-Schaeffer
{"title":"MPTC - Modular Passive Tracking Controller for stack of tasks based control frameworks","authors":"Johannes Englsberger, Alexander Dietrich, George Mesesan, Gianluca Garofalo, C. Ott, A. Albu-Schaeffer","doi":"10.15607/rss.2020.xvi.077","DOIUrl":null,"url":null,"abstract":"This work introduces the so-called Modular Passive Tracking Controller (MPTC), a generic passivity-based controller, which aims at independently fulfilling several subtask objectives. These are combined in a stack of tasks (SoT) that serves as a basis for the synthesis of an overall system controller . The corresponding analysis and controller design are based on Lyapunov theory. An important contribution of this work is the design of a specific optimization weighting matrix that ensures passivity of an overdetermined and thus conflicting task setup. The proposed framework is validated through simulations and experiments for both fixed-base and free-floating robots. I. I NTRODUCTION Simultaneous control of multiple tasks has emerged as a major research topic in robotic control. While initial works considered the simpler case of a single task and its nullspac e for a kinematically redundant robot, nowadays there exist several well established frameworks for handling multiple tasks with and without priorities. In the literature one may distinguish between works that solve the task coordination problem first on akinematic level , and works that formulate the controldirectly for the dynamics . Another important classification can be done based on the use of strict task priorities via hierarchic controllers as compared to controllers whic h apply asoft prioritizationvia task weighting. At the kinematics level , hierachical controllers based on either successive or augmented nullspace projections have been proposed in order to ensure a strict task hierarchy [18, 2]. For the handling of task singularities, a singulari ty robust inverse kinematics has been proposed [4]. However, t his singularity robust inverse destroys the strict task hierar chy and effectively generates a weighting among different tasks. Other frameworks handle multiple tasks at the dynamics level. The operational space approach has been extended in this direction with applications in humanoid robotics [22, 3]. Other Inverse Dynamics (ID) based controllers use hierarch ic quadratic programs (QP) [20, 11, 3]. Most of these works aim at a strict task decoupling. The presented work is inspired by the family of Inverse Dynamics based tracking controllers that softly trade off a se t of tasks (collected in a stack of tasks (SoT)) via a single weigh t d QP [13, 15, 10]. Such controllers are straightforward to wri te and stand out due to their high flexibility. Yet, compared to passivity-based approaches such as [19, 5, 12, 16, 6], they are less robust w.r.t. modeling errors and contact uncertai nties [10, 6]. This causes real-world issues such as vibrations, w hich are often addressed using heuristic approaches [13, 10]. Furthermore, the weighting based multi-objective control le in [3] and the strictly hierarchical passivity-based contr ller from [6] served as inspiration for this work. Similar to [3] w e use a QP to combine individual control actions from separate task space controllers. However, in [3] each separate contr ol action is computed based on ID with the unit matrix as the desired inertia (feedback linearization). In contrast, the i ndividual task controllers presented here use the concept of passivit y and avoid inertia shaping, i.e. we aim at a PD+ like closed-loop for each task [19]. Compared to [6], which also preserves the natural inertia, we use a weighted QP formulation (soft prioritization), which allows us to blend an arbitrary numb er of different tasks and in certain situations (e.g. when a sin gle task becomes singular) behaves less aggressively. In this work, we derive a control architecture that is based o n nominally passive subtask controllers, the so-called Modu lar Passive Tracking Controllers (MPTC). These are combined and traded off via a stack of tasks, which is solved via a single weighted pseudo-inverse or QP, respectively. The control framework combines the advantages of both Inverse Dynamics controllers and passivity-based controllers, na mely: ease of implementation and use, task space tracking capabil ities, passivity and contact robustness, and natural redund ancy andling. The corresponding stability analysis is based on Lyapunov theory. For the non-conflicting case, the overall controller is found to be asymptotically stable and passive . An important contribution of the presented work is the derivat ion of a specific optimization weight that additionally preserves passivity even in the over-determined (i.e. conflicting) case. For competing tasks and corresponding inconsistent task re ferences, multiple simulations show evidence of MPTC’s stabil ity and robustness even in the tracking case, while a formal stability proof is missing so far. The paper is organized as follows: Section II derives the Modular Passive Tracking Controller (MPTC) at task level, while section III provides the corresponding overall close dloop analysis and controller derivation. Section IV compar es MPTC to Inverse Dynamics (ID) and PD+ based controllers, and presents the wide range of possible decoupling levels. Section V provides simulation results for both fixed-base an d free-floating robots, while section VI concludes the paper. II. D ERIVATION OF MODULAR PASSIVE TRACKING CONTROL (MPTC) This work considersnT tasks, each having its own individual objective. To satisfy the single-task objectives, this sec tion derives Modular Passive Tracking Controllers (MPTC), whic h are combined into different overall controllers in Sec. III A. General robot model The general robot equation of motion can be written as M(q) q̈ + C(q, q̇) q̇ + τg(q) = τ , (1) where q ∈ Rn denotes the generalized coordinates 1, M(q), C(q, q̇) and τg(q) are the inertia matrix, Coriolis and centrifugal matrix, and gravitational torques 2, respectively, and τ = S (τ j + τint) + L T all wall } {{ } τext (2) denotes thegeneralized forces . These are composed of joint motor torquesτ j and internal perturbation torques τint acting in the robot joints (e.g. joint friction), which are both mappe d to τ via the joint selection matrixS,3 and of external torques τext. The latter are composed of all wrenches wall = [wT 1 , ...,w T nL ]T acting on thenL robot links, which are mapped to τ via the stack of link JacobiansLall = [L1 , ...,L T nL ]T . While the single elements of (2) will be used in section III-E, in the followin g we will simply useτ to represent arbitrary generalized forces. Solving (1) for the generalized accelerations q̈ yields q̈ = M−1 ( τ − C q̇ − τg )","PeriodicalId":231005,"journal":{"name":"Robotics: Science and Systems XVI","volume":"24 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-07-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Robotics: Science and Systems XVI","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.15607/rss.2020.xvi.077","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
This work introduces the so-called Modular Passive Tracking Controller (MPTC), a generic passivity-based controller, which aims at independently fulfilling several subtask objectives. These are combined in a stack of tasks (SoT) that serves as a basis for the synthesis of an overall system controller . The corresponding analysis and controller design are based on Lyapunov theory. An important contribution of this work is the design of a specific optimization weighting matrix that ensures passivity of an overdetermined and thus conflicting task setup. The proposed framework is validated through simulations and experiments for both fixed-base and free-floating robots. I. I NTRODUCTION Simultaneous control of multiple tasks has emerged as a major research topic in robotic control. While initial works considered the simpler case of a single task and its nullspac e for a kinematically redundant robot, nowadays there exist several well established frameworks for handling multiple tasks with and without priorities. In the literature one may distinguish between works that solve the task coordination problem first on akinematic level , and works that formulate the controldirectly for the dynamics . Another important classification can be done based on the use of strict task priorities via hierarchic controllers as compared to controllers whic h apply asoft prioritizationvia task weighting. At the kinematics level , hierachical controllers based on either successive or augmented nullspace projections have been proposed in order to ensure a strict task hierarchy [18, 2]. For the handling of task singularities, a singulari ty robust inverse kinematics has been proposed [4]. However, t his singularity robust inverse destroys the strict task hierar chy and effectively generates a weighting among different tasks. Other frameworks handle multiple tasks at the dynamics level. The operational space approach has been extended in this direction with applications in humanoid robotics [22, 3]. Other Inverse Dynamics (ID) based controllers use hierarch ic quadratic programs (QP) [20, 11, 3]. Most of these works aim at a strict task decoupling. The presented work is inspired by the family of Inverse Dynamics based tracking controllers that softly trade off a se t of tasks (collected in a stack of tasks (SoT)) via a single weigh t d QP [13, 15, 10]. Such controllers are straightforward to wri te and stand out due to their high flexibility. Yet, compared to passivity-based approaches such as [19, 5, 12, 16, 6], they are less robust w.r.t. modeling errors and contact uncertai nties [10, 6]. This causes real-world issues such as vibrations, w hich are often addressed using heuristic approaches [13, 10]. Furthermore, the weighting based multi-objective control le in [3] and the strictly hierarchical passivity-based contr ller from [6] served as inspiration for this work. Similar to [3] w e use a QP to combine individual control actions from separate task space controllers. However, in [3] each separate contr ol action is computed based on ID with the unit matrix as the desired inertia (feedback linearization). In contrast, the i ndividual task controllers presented here use the concept of passivit y and avoid inertia shaping, i.e. we aim at a PD+ like closed-loop for each task [19]. Compared to [6], which also preserves the natural inertia, we use a weighted QP formulation (soft prioritization), which allows us to blend an arbitrary numb er of different tasks and in certain situations (e.g. when a sin gle task becomes singular) behaves less aggressively. In this work, we derive a control architecture that is based o n nominally passive subtask controllers, the so-called Modu lar Passive Tracking Controllers (MPTC). These are combined and traded off via a stack of tasks, which is solved via a single weighted pseudo-inverse or QP, respectively. The control framework combines the advantages of both Inverse Dynamics controllers and passivity-based controllers, na mely: ease of implementation and use, task space tracking capabil ities, passivity and contact robustness, and natural redund ancy andling. The corresponding stability analysis is based on Lyapunov theory. For the non-conflicting case, the overall controller is found to be asymptotically stable and passive . An important contribution of the presented work is the derivat ion of a specific optimization weight that additionally preserves passivity even in the over-determined (i.e. conflicting) case. For competing tasks and corresponding inconsistent task re ferences, multiple simulations show evidence of MPTC’s stabil ity and robustness even in the tracking case, while a formal stability proof is missing so far. The paper is organized as follows: Section II derives the Modular Passive Tracking Controller (MPTC) at task level, while section III provides the corresponding overall close dloop analysis and controller derivation. Section IV compar es MPTC to Inverse Dynamics (ID) and PD+ based controllers, and presents the wide range of possible decoupling levels. Section V provides simulation results for both fixed-base an d free-floating robots, while section VI concludes the paper. II. D ERIVATION OF MODULAR PASSIVE TRACKING CONTROL (MPTC) This work considersnT tasks, each having its own individual objective. To satisfy the single-task objectives, this sec tion derives Modular Passive Tracking Controllers (MPTC), whic h are combined into different overall controllers in Sec. III A. General robot model The general robot equation of motion can be written as M(q) q̈ + C(q, q̇) q̇ + τg(q) = τ , (1) where q ∈ Rn denotes the generalized coordinates 1, M(q), C(q, q̇) and τg(q) are the inertia matrix, Coriolis and centrifugal matrix, and gravitational torques 2, respectively, and τ = S (τ j + τint) + L T all wall } {{ } τext (2) denotes thegeneralized forces . These are composed of joint motor torquesτ j and internal perturbation torques τint acting in the robot joints (e.g. joint friction), which are both mappe d to τ via the joint selection matrixS,3 and of external torques τext. The latter are composed of all wrenches wall = [wT 1 , ...,w T nL ]T acting on thenL robot links, which are mapped to τ via the stack of link JacobiansLall = [L1 , ...,L T nL ]T . While the single elements of (2) will be used in section III-E, in the followin g we will simply useτ to represent arbitrary generalized forces. Solving (1) for the generalized accelerations q̈ yields q̈ = M−1 ( τ − C q̇ − τg )