Overview
The robots with high Degrees of Freedom (DoF) such as humanoids and mobile manipulators are expected to perform multiple tasks simultaneously. Hierarchical Quadratic Programming (HQP) can effectively compute a solution for strictly prioritized tasks. However, the continuity of control input is not guaranteed when the priorities of the tasks are modified during operation. This paper proposes a continuous task transition method for HQP based controller to insert, remove, and swap arbitrary tasks without discontinuity. Smooth task transition is assured because our approach uses activation parameters of the new and existing tasks without modifying control structure. The proposed approach is applied to various task transition scenarios including joint limit, singularity, and obstacle avoidance to guarantee the stable execution of the robot. The proposed control scheme was implemented on a 7-DoF robotic arm, and its performance was demonstrated by the continuity of control input during various task transition scenarios.
Experimental Equipments
Overview of the robot we used
Kinamatic sturture of the robot is the left figure
Torque controlled 7-DoFs actuators with 2000 Hz
Ubuntu 14.04/16.04 with real-time Kernel
Quite strong friction, so we implemented simple friction compensator.
Algorithms
- Task transition algorithm with HQP (Summitted the paper in RAL)
- We proposed the task transition algorithm based on HQP frameworks.
- The proposed algorithm can treat not only equality tasks but also inequality tasks.
- We tested various task transition senarios including joint limit, singularity, and obstacle avoidance.
- See also RAL2019 and Mobile Project
- Task transition algorithm in the operational space
- We also implemented our previous task transition algorithms of [1] and [2].
- However, we cannot operate robot with these algorithm, because of very heavy computation.
Why we used HQP?
- Easy to implement
- Although pseudo inverse based method is a little faster than HQP based controller, the HQP based controller is more easy to treat both equality and inequality tasks.
- This is quite good point, because many inequality constraints are related on the stablity of the robot. (For example, friction cone of the foot in the humanoid.)
- Solve Inverse Kinematics (IK) and Inverse Dynamics (ID) problems.
- HQP can solve IK and ID easily.
- Although the operational space controller also can solve ID, this method needs “Lambda matrix” which has very big complexity.
- Calculation speed of the HQP is not slow to operate robot.
- Many researches on the improvement of the computation time of the HQP solver.
- Thus, this method is acceptable to the robotic community.
Experimental Results
Task Transition Algorithm with HQP framework
As you can see, we validated the proposed algorithm with various experiments.
Sigularity Avoidance Test
Our algorithm shows more good performance in the region of the singularity area, compared to reference algorithm.
This is because our algorithm can remove the direction of singularity by using QR decomposition
Self-Collision Avoidance Test
We conducted Self-Collision avoidance algorithm with the proposed controller.
As you can see, in the result without the avoidance algorithm, there occured collision between each links.
However, with our algorithm to multiple constriants about the self-collision, the result shows that the robot can avoid self-collision.
Tasks Swapping Test
We conducted tasks swapping scenario with the proposed controller in V-Rep.
As you can see, the motion without the algorithm is impossilbe in real world.