intuitive operation and programming of - vde...
TRANSCRIPT
Page: 2 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Intuitive operation and programming of
highly redundant mobile manipulators
Dipl.-Inf.
Christian Scheurer
Corporate Research
KUKA Deutschland GmbH
Augsburg, Germany
Page: 3 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Robotic Revolutions
Page: 4 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Current challenges in programming robots
o Programming with teach pendants
o Time-consuming
o Experience essential
o Redundant robots
Page: 5 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
o Collaborative robots with force-based interaction
o Teaching by handguidance
o Sensitive in applications
o Safe for human-robot collaboration
o Collaborative mobile robots with whole-body control
o Redundancy
o Teaching by handguidance
o Reactive control
o Ongoing work: Collaborative mobile dual arm robots
Agenda
Page: 6 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Why collaboration with force-based robot interaction?
Page: 7 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Motivation
Robots are currently evolving from stupid machines performing repetitive tasks behind safety fences to intelligent robotic co – workers.
Force is the most intuitive input
Page: 8 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
State of the art in collaborative robotics
Page: 9 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
LBR iiwa – Handguiding and collision detection in real industrial applications
Handguiding the KUKA LBR iiwa Collision detection enabling human-robot collaboration
Page: 10 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Our research projects depend on safe, intuitive, force-based interaction
Page: 11 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Conceptual Formulation
Page: 12 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Conceptual Formulation
Goal: Have a robotic co-worker with full interactivity
“Friendly” behavior also in the proximity to constraints
Respect always all constraints
Research Questions:
How to satisfy all constraints?
What if the human makes a task infeasible?
How to handle disturbances due to human interaction?
Robot communicates what it thinks about the human intervention
What to communicate back?
Page: 13 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Methods
Page: 14 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Reactive, whole-body control taking sensor data into account
Task 1: Avoid joint position limits
Task 2: Avoid vel and acc limits
Task 3: Follow trajectory (example)
Task 4: Keep elbow up (example)
Task 5: …
Task N: Minimize kinetic energy
Task
Pri
ori
ty
Impedance control (already in industry) Reactive control with task priorization on kinematics level (CLIK, SNS*) Reactive control with task priorization on dynamics level (OSC**)
* F. Flacco, A. De Luca and O. Khatib, "Motion control of redundant robots under joint constraints: Saturation in the Null Space," 2012 IEEE International Conference on Robotics and Automation, 2012, pp. 285-292.
** O. Khatib, "A unified approach for motion and force control of robot manipulators: The operational space formulation," in IEEE Journal on Robotics and Automation, vol. 3, no. 1, pp. 43-53, February 1987.
Page: 15 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Local minimization of joint velocities
The Jacobian represents the kinematic model of the robot
It does not contain information about bounds in joint space
𝒒 = 𝑱1# 𝒙1 + (𝑱2𝑷1)
#(𝒙2 − 𝑱2𝑱1# 𝒙1 )
𝒒 = 𝑱# 𝒙
Task priorization on kinematic level (1st order)
TASK 1
TASK 2
NSP
𝒒𝟏 = 𝑱𝟏# 𝒙𝟏
𝑷1 = 𝑰𝑛 − 𝑱1# 𝑱1
𝒒𝟐 = (𝑱2𝑷1)#(𝒙𝟐 − 𝑱2𝑱𝟏
# 𝒙𝟏 )
Bounds on joint velocities/accelerations?
Task activation / deactivation?
Discontinuities?
Page: 16 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Saturation in the null space - algorithm
SNS in principle:
1. If joint limit (position/velocity/acceleration)
reached
2. If task no longer feasible
Saturate the joint at its maximum/minimum position/velocity/acceleration and try to achieve the task with the remaining joints
Scale the task velocity
TASK SCALING
JOINT SATURATION
Page: 17 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Task 1: Avoid joint position limits
Task 2: Avoid vel and acc limits
Task 3: Follow trajectory (example)
Task 4: Keep elbow up (example)
Task 5: …
Task N: Minimize kinetic energy
Task
Pri
ori
ty
Constraint 1: Joint Position Limits
Constraint 2: Joint Velocity limits
Constraint 3: Joint Acceleration Limits
Taks N: Minimize Kinetic Energy
Task 1: Follow trajectory (example)
Task 2: Keep elbow up (example)
Task
Pri
ori
ty
Con
stra
ints
Constraints handled with saturation in the null space (SNS)
Page: 18 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart Check Feasibility
Compute Solution
YES
NO
Output Solution
Output Best Solution found
Saturate most critical joint
Any redundancy
left?
YES
NO
Store Scaled Solution
Joint Motion
Feasible?
Page: 19 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
Check Feasibility
Output Solution
𝒒 𝑪𝑮
Output Best Solution found
Saturate most critical joint
Any redundancy
left?
YES
NO
Store Scaled Solution
𝒒 = 𝑱# 𝒙
YES
NO
Joint Motion
Feasible?
Page: 20 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
𝑠, 𝑗 = 𝑔𝑒𝑡𝑆𝑐𝑎𝑙𝑖𝑛𝑔𝐹𝑎𝑐𝑡𝑜𝑟(𝒂, 𝒃)
YES
NO
Output Solution
𝒒 𝑪𝑮
Output Best Solution found
Saturate most critical joint
Any redundancy
left?
YES
NO
Store Scaled Solution
𝑠 ≥ 1 ?
Page: 21 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
𝑠, 𝑗 = 𝑔𝑒𝑡𝑆𝑐𝑎𝑙𝑖𝑛𝑔𝐹𝑎𝑐𝑡𝑜𝑟(𝒂, 𝒃)
YES
NO
𝒒 𝑶𝒖𝒕 = 𝒒 𝑪𝑮
𝒒 𝑪𝑮
Output Best Solution found
Saturate most critical joint
Any redundancy
left?
YES
NO
Store Scaled Solution
𝑠 ≥ 1 ?
Page: 22 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
𝑠, 𝑗 = 𝑔𝑒𝑡𝑆𝑐𝑎𝑙𝑖𝑛𝑔𝐹𝑎𝑐𝑡𝑜𝑟(𝒂, 𝒃)
YES
NO
𝒒 𝑶𝒖𝒕 = 𝒒 𝑪𝑮
𝒒 𝑪𝑮
Output Best Solution found
Saturate most critical joint
Any redundancy
left?
YES
NO
YES
NO
𝑠 > 𝑠∗ ? 𝑠∗ = 𝑠
𝑠 ≥ 1 ?
Page: 23 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
𝑠, 𝑗 = 𝑔𝑒𝑡𝑆𝑐𝑎𝑙𝑖𝑛𝑔𝐹𝑎𝑐𝑡𝑜𝑟(𝒂, 𝒃)
YES
NO
𝒒 𝑶𝒖𝒕 = 𝒒 𝑪𝑮
𝒒 𝑪𝑮
Output Best Solution found Any
redundancy left?
YES
NO
YES
NO
𝑠 > 𝑠∗ ? 𝑠∗ = 𝑠
𝑠 ≥ 1 ?
Page: 24 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
𝑠, 𝑗 = 𝑔𝑒𝑡𝑆𝑐𝑎𝑙𝑖𝑛𝑔𝐹𝑎𝑐𝑡𝑜𝑟(𝒂, 𝒃)
YES
NO
𝒒 𝑶𝒖𝒕 = 𝒒 𝑪𝑮
𝒒 𝑪𝑮
Output Best Solution found
YES
YES
NO
𝑠 > 𝑠∗ ? 𝑠∗ = 𝑠
?
𝑠 ≥ 1 ?
NO
≥
Page: 25 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
SNS on vel - Flow chart
Initialization
𝑔𝑒𝑛𝑒𝑟𝑖𝑐 𝑝𝑠𝑒𝑢𝑑𝑜𝑖𝑛𝑣𝑒𝑟𝑠𝑒
𝑠, 𝑗 = 𝑔𝑒𝑡𝑆𝑐𝑎𝑙𝑖𝑛𝑔𝐹𝑎𝑐𝑡𝑜𝑟(𝒂, 𝒃)
YES
NO
𝒒 𝑶𝒖𝒕 = 𝒒 𝑪𝑮
𝒒 𝑪𝑮
YES
YES
NO
𝑠 > 𝑠∗ ? 𝑠∗ = 𝑠
?
𝑠 ≥ 1 ?
≥
NO
Page: 26 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
𝑄𝑚𝑖𝑛 ≤ 𝑞 ≤ 𝑄𝑚𝑎𝑥
𝑉𝑚𝑖𝑛 ≤ 𝑞 ≤ 𝑉𝑚𝑎𝑥
𝐴𝑚𝑖𝑛 ≤ 𝑞 ≤ 𝐴𝑚𝑎𝑥
Saturation in the nullspace (SNS)
Shaping the joint velocity bounds
Joint range
Velocity range
Acceleration range
Admissible Area
Constraint 1: Joint Limits
Constraint 2: Joint Velocity Limits
Constraint 3: Joint Acceleration LImits
⇔
𝑞 = 𝑞ℎ
𝑞ℎ+1 ≅ 𝑞ℎ + 𝑞 ℎ𝑇 𝑉𝑚𝑖𝑛 ≤ 𝑞 ℎ ≤ 𝑉𝑚𝑎𝑥
𝑄𝑚𝑖𝑛 − 𝑞ℎ𝑇
≤ 𝑞 ℎ ≤𝑄𝑚𝑎𝑥 − 𝑞ℎ
𝑇
− 2𝐴𝑚𝑎𝑥 𝑞ℎ − 𝑄𝑚𝑖𝑛 ≤ 𝑞 ℎ ≤
2𝐴𝑚𝑎𝑥(𝑄𝑚𝑖𝑛 − 𝑞ℎ)
Page: 27 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Solution with saturated joints and task scaling
Page: 28 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Time-free motion – Motion interruption by a human operator
Implementation of SNS on force / torque level Define the task what to do here: from MURAB project, ultrasonic scanning of a breast Time less important in human robot interaction tasks
Page: 29 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Communicate relevant information to a robot programmer: e.g. joint limit
I have an uncomfortable configuration.
Please move joint 3 up!
Offline programming tools, e.g. KUKA.Sim On Sunrise Controller / tech pendant
Page: 30 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Communicate relevant information to a robot programmer: e.g. joint limit
I have an uncomfortable configuration.
Please move joint 3 up!
Page: 31 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Collaborative mobile robots with whole-body control
Page: 32 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Aim → Mobile manipulators in aerospace automation safely cooperating with human workers
Conditions
Dynamic environment
Changing environment
Semi-structured to fully unstructured environment
Requirements
Be safe
Deal with uncertainties
Get the job done
Hardware solution → VALERI robot concept
Software solution → New reactive control strategies taking sensor information into account
VALERI (EU, 2013-2015) – Robot requirements for aerospace industry
http://www.valeri-project.eu/
Page: 33 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
VALERI (EU, 2013-2015) – Mapping of task space to joint space
http://www.valeri-project.eu/
e.g. Following a Cartesian Trajectory with the VALERI
m = 6
n = 12 m-n = 6 redundant DOFs (∞6 𝑠𝑜𝑙𝑢𝑡𝑖𝑜𝑛𝑠 𝑡𝑜 𝑡ℎ𝑒 𝐼𝐾 𝑝𝑟𝑜𝑏𝑙𝑒𝑚)
𝒙 = 𝑱𝒒
Joint Space Mapping Task Space
m-dimensional Space n-dimensional Space
𝒙, 𝒙 𝒒, 𝒒 𝑱 ∈ ℝ𝑚.𝑛
𝑱#
𝒒 = 𝑱# 𝒙
Page: 34 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
VALERI (EU, 2013-2015) – General project results
True mobile manipulation, Coordinated 12DOF movement, redundancy resolution
Extended workspace with mobile platform and linear axes
New safety concepts, workspace surveillance, tactile skin
Use cases in aerospace industry: sealing and visual inspection (continuous path applications)
http://www.valeri-project.eu/
Page: 35 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
VALERI (EU, 2013-2015) – Whole-body control for executing tasks
http://www.valeri-project.eu/
Page: 36 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
VALERI (EU, 2013-2015) – Handguiding and reactive control using the redundancy
http://www.valeri-project.eu/
Reactive control and redundancy resolution based on laser scanner information and self-collision model
Handguiding the unified kinematics of the mobile manipulator VALERI based on force input and a redundancy resolution sceme
Page: 37 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
VALERI (EU, 2013-2015) – Kinematic independent teaching of Cartesian tasks
http://www.valeri-project.eu/
Idea: Teach a Cartesian trajectory by handguiding only „the tool“ Robot joint trajectories solved by task priorization framework Here: Handguiding a different mobile manipulator (teach-in), execute on a different kinematics
Page: 38 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Ongoing work: Collaborative mobile dual arm robots
Page: 39 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Hybr-iT (BMBF, 2016-2019) – Project overview
Mobile dual arm manipulation
Human-Robot Collaboration
Modular software and hardware End user: Volkswagen, Airbus
Goal: Build and evaluate a mobile dual arm robot in production-near assembly applications
Page: 40 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Hybr-iT (BMBF, 2016-2019) - Interaction with a dual arm robot
Here: stationary dual arm robot Load sharing with two robot arms Interaction using coupling stiffness with Cartesian impedance for both arms
Page: 41 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Hybr-iT (BMBF, 2016-2019) – Redundancy resolution for a mobile dual arm robot
Two Cartesian tasks given: position hold for one arm, linear motion for other arm Solving redundancy for complete robot Platform motion to support task execution of both arms
Page: 42 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Conclusion
Collaborative robots evolving from stationary single arm to mobile dual arm robots Need and approaches for force-based human robot interaction Handling of redundancy for the unified mobile manipulator system in a task priorization framework Need and approaches for easy and fast programming of complex mobile robot systems Handguidance Cartesian task specification and automatic redundancy resolution instead of joint or motion programming
Page: 43 Intuitive operation and programming of highly redundant mobile manipulators | Christian Scheurer | 13.06.2018 | www.kuka.com
Thank you for your attention!
Do you have questions?