|
Preface |
8 |
|
|
Contents |
12 |
|
|
Nomenclature |
18 |
|
|
1 Introduction |
21 |
|
|
1.1 Prologue |
21 |
|
|
1.1.1 Industrial Robots |
22 |
|
|
1.1.2 Humanoid Robots |
24 |
|
|
1.1.3 The Importance of Human-Like Motion |
25 |
|
|
1.1.4 Biologically Inspired Design |
26 |
|
|
1.1.5 Physical Safety and Active Compliance for Safety |
26 |
|
|
1.1.6 Robust and Adaptive Control |
27 |
|
|
1.2 Objective of the Book |
27 |
|
|
1.3 Guidance for the Reader |
28 |
|
|
1.3.1 Recommended Reading Routes |
29 |
|
|
References |
30 |
|
|
Part I Background on Humanoid Robots and Human Motion |
33 |
|
|
2 Humanoid Robots and Control |
34 |
|
|
2.1 Humanoid Robots |
34 |
|
|
2.1.1 Functional Tools |
35 |
|
|
2.1.2 Models of Humans |
36 |
|
|
2.1.3 Human–Robot Interaction |
36 |
|
|
2.2 Goals of Human-Like Motion |
37 |
|
|
2.3 Robot Motion Control Overview |
38 |
|
|
2.3.1 Kinematics-Based Robot Motion Control |
40 |
|
|
2.3.1.1 Forward Kinematics |
41 |
|
|
2.3.1.2 Inverse Kinematics |
41 |
|
|
2.3.1.3 Basic Inverse Kinematics Example |
42 |
|
|
2.3.1.4 Kinematics Control Discussion |
43 |
|
|
2.3.2 Dynamic-Based Robot Motion Control |
44 |
|
|
2.3.2.1 Dynamic Modelling |
45 |
|
|
2.3.2.2 Model Specification |
46 |
|
|
2.3.3 Optimal Control |
47 |
|
|
2.3.4 Operational Space Control |
48 |
|
|
2.3.5 Dual Robot Arm Control |
49 |
|
|
2.3.6 Hand Grasping Control |
50 |
|
|
2.4 Sensing and Robot Arm Motion |
51 |
|
|
2.5 Robot and Control Hardware |
52 |
|
|
2.5.1 Elumotion Robotic Platform |
53 |
|
|
2.5.2 Robot Structure |
56 |
|
|
2.5.3 Actuators |
58 |
|
|
2.5.4 Motor Drivers |
58 |
|
|
2.5.5 EPOS Interface method |
59 |
|
|
2.6 Summary |
60 |
|
|
References |
60 |
|
|
3 Human Motion |
67 |
|
|
3.1 Introduction |
67 |
|
|
3.2 Motion Studies |
68 |
|
|
3.3 Motion Models |
69 |
|
|
3.3.1 Kinematic Models |
69 |
|
|
3.3.2 Dynamic Models |
71 |
|
|
3.4 Physiological Modelling |
73 |
|
|
3.4.1 Muscle Models |
73 |
|
|
3.4.2 Physiological Complexity |
74 |
|
|
3.4.3 Neural Models |
75 |
|
|
3.4.4 Simplified Models |
77 |
|
|
3.5 Motion Capture Methods and Technology |
77 |
|
|
3.6 Human Motion Reproduction and Synthesis |
81 |
|
|
3.6.1 Direct Reproduction of Human Motion |
81 |
|
|
3.6.2 Learning Techniques |
84 |
|
|
3.6.3 Dynamic Movement Primitives |
85 |
|
|
3.6.4 Operational Space Control |
86 |
|
|
3.7 Summary |
86 |
|
|
References |
88 |
|
|
Part II Robot Control: Implementation |
93 |
|
|
4 Basic Operational Space Controller |
94 |
|
|
4.1 Introduction |
94 |
|
|
4.1.1 Human Verification |
95 |
|
|
4.1.2 Robot Specification |
96 |
|
|
4.1.3 Robot Goal Modification |
98 |
|
|
4.2 The Operational Space Mathematical Formulation |
98 |
|
|
4.3 Task Control |
99 |
|
|
4.3.1 Jacobian Pseudo Inverse |
99 |
|
|
4.3.2 Task-Space Dynamic Projection |
100 |
|
|
4.3.3 Feedback Linearisation |
102 |
|
|
4.4 Posture Control |
103 |
|
|
4.4.1 `Effort' Cost Function |
103 |
|
|
4.4.2 Task/Posture Isolation |
106 |
|
|
4.5 Simulation and Implementation |
107 |
|
|
4.5.1 Controller Realisation |
107 |
|
|
4.5.2 Simulation Results |
109 |
|
|
4.5.2.1 Task Only Control |
109 |
|
|
4.5.2.2 Posture-Dependent Trajectories |
109 |
|
|
4.5.3 Robot Implementation |
114 |
|
|
4.5.3.1 Increased Gains |
115 |
|
|
4.6 Summary |
116 |
|
|
References |
117 |
|
|
5 Sliding Mode Task Controller Modification |
118 |
|
|
5.1 Introduction |
118 |
|
|
5.2 Sliding Mode Control Overview |
119 |
|
|
5.3 Controller Design |
120 |
|
|
5.3.1 Switching Function |
120 |
|
|
5.3.2 Variable Structure Law |
122 |
|
|
5.4 Lyapunov Stability Analysis |
124 |
|
|
5.5 Results |
125 |
|
|
5.5.1 Simulation |
125 |
|
|
5.5.2 Physical Robot |
128 |
|
|
5.5.3 PID Results |
128 |
|
|
5.5.4 Sliding Mode Results |
129 |
|
|
5.5.5 Demand Filter |
130 |
|
|
5.6 Compliance |
131 |
|
|
5.7 Summary |
131 |
|
|
References |
132 |
|
|
6 Implementing `Discomfort' for Smooth Joint Limits |
133 |
|
|
6.1 Introduction |
133 |
|
|
6.1.1 Dynamic Model Simplicity |
134 |
|
|
6.2 Visualisation Technique |
135 |
|
|
6.2.1 Motion Analysis |
137 |
|
|
6.3 Joint Limit Function Design |
138 |
|
|
6.3.1 Integration with the Effort Function |
139 |
|
|
6.4 Results |
140 |
|
|
6.4.1 Simulated Results |
140 |
|
|
6.4.2 Practical Results |
142 |
|
|
6.5 Summary |
144 |
|
|
References |
146 |
|
|
7 Sliding Mode Optimal Controller |
147 |
|
|
7.1 Introduction |
147 |
|
|
7.2 Controller Design |
148 |
|
|
7.2.1 Optimal Sliding Surface |
148 |
|
|
7.2.1.1 Modified Model for Analysis and Controller Design |
149 |
|
|
7.2.1.2 Lyapunov Analysis of Surface |
150 |
|
|
7.2.2 Control Method |
151 |
|
|
7.2.2.1 Controller Design |
151 |
|
|
7.2.2.2 Controller Design with Estimates |
152 |
|
|
7.2.3 Velocity Decoupling |
154 |
|
|
7.2.3.1 Cost Function Revision for Decoupling |
157 |
|
|
7.2.3.2 Observation on the Cost Function Dynamics |
158 |
|
|
7.2.3.3 Sliding Mode Analysis for Posture Control Only |
159 |
|
|
7.2.4 Overall Controller |
160 |
|
|
7.3 Implementation Issues: Viscous Friction Identification and Compensation |
162 |
|
|
7.4 Simulated Implementation |
163 |
|
|
7.4.1 Controller Effort |
165 |
|
|
7.4.2 Friction Model |
167 |
|
|
7.4.3 Simulated Results |
167 |
|
|
7.5 Practical Implementation |
172 |
|
|
7.6 Summary |
174 |
|
|
References |
175 |
|
|
8 Adaptive Compliance Control with Anti-windup Compensation and Posture Control |
176 |
|
|
8.1 Introduction |
176 |
|
|
8.2 Adaptive Compliance Control for Task Motion |
178 |
|
|
8.2.1 Impedance Reference Model |
180 |
|
|
8.2.2 Principle of the Model Reference Scheme |
181 |
|
|
8.3 Effort-Minimising Posture Torque Controller |
182 |
|
|
8.4 Anti-windup Compensator |
183 |
|
|
8.5 Implementation |
186 |
|
|
8.6 One-Dimensional Adaptive Compliance Control of a Robot Arm |
186 |
|
|
8.6.1 Tracking |
186 |
|
|
8.6.2 Compliance Results |
188 |
|
|
8.6.3 Anti-windup Compensator Results |
189 |
|
|
8.7 Multidimensional Adaptive Compliance Control of a Robot Arm |
196 |
|
|
8.7.1 Joint Torque Sensors and Body Torque Estimates |
197 |
|
|
8.7.2 Tracking and Compliance Results |
200 |
|
|
8.7.3 Anti-windup Compensator Results |
200 |
|
|
8.8 Summary |
205 |
|
|
References |
205 |
|
|
Part III Human Motion Recording for Task Motion Modelling and Robot Arm Control |
207 |
|
|
9 Human Motion Recording and Analysis |
208 |
|
|
9.1 Initial Motion Capture Objective |
208 |
|
|
9.1.1 The Vicon System |
212 |
|
|
9.1.2 Experimental Set-up |
213 |
|
|
9.1.3 Results |
214 |
|
|
9.1.4 Summary of Initial Motion Capture Experiments |
216 |
|
|
9.2 Motion Capture for Robotic Implementation |
219 |
|
|
9.2.1 Human–Robot Kinematic Mismatch |
219 |
|
|
9.2.2 Motion Capture Process for Inconsistent Kinematic Models |
221 |
|
|
9.2.3 Extended Motion Capture Method |
223 |
|
|
9.2.4 Vicon Skeleton Model |
225 |
|
|
9.2.5 Incompatible Kinematics Removal |
226 |
|
|
9.2.6 Inverse Kinematics |
228 |
|
|
9.2.7 Trajectory Discrepancy |
230 |
|
|
9.3 Four Degrees of Freedom Comparative Trials |
231 |
|
|
9.3.1 Results |
232 |
|
|
9.4 Summary |
234 |
|
|
References |
235 |
|
|
10 Neural Network Motion Learning by Observation for Task Modelling and Control |
237 |
|
|
10.1 Introduction |
237 |
|
|
10.1.1 Learning by Observation |
238 |
|
|
10.2 Learning by Observation Method |
240 |
|
|
10.3 Minimal Trajectory Encoding |
241 |
|
|
10.3.1 Polynomial Encoding Issues |
241 |
|
|
10.3.2 Scaling and Fitting of Generated Trajectories |
243 |
|
|
10.4 Network Structure |
245 |
|
|
10.5 Experimental Procedure |
246 |
|
|
10.5.1 Sub-motion Splitting |
247 |
|
|
10.5.2 Training Data |
247 |
|
|
10.5.3 Neural Network Results |
249 |
|
|
10.6 Integration into the Robot Controller |
252 |
|
|
10.7 Summary |
257 |
|
|
References |
257 |
|
|
Appendix A Kinematics: Introduction |
259 |
|
|
A.1 Kinematics Notation |
259 |
|
|
A.1.1 Position Vector |
260 |
|
|
A.1.2 Rotation Matrix |
261 |
|
|
A.1.3 Transformation Matrix |
263 |
|
|
A.2 Denavit–Hartenberg Notation |
263 |
|
|
A.2.1 Frame Assignment Convention |
264 |
|
|
A.2.2 DH Parameters |
264 |
|
|
A.3 Applied Kinematics |
265 |
|
|
A.3.1 Forward Kinematics |
265 |
|
|
A.3.2 Inverse Kinematics |
266 |
|
|
A.4 Robot Jacobian |
266 |
|
|
References |
267 |
|
|
Appendix B Inverse Kinematics for BERUL2 |
268 |
|
|
B.1 Denavit–Hartenberg Parameters |
268 |
|
|
B.2 Forward Kinematics |
268 |
|
|
B.3 Algebraic Solution |
269 |
|
|
Reference |
275 |
|
|
Appendix C Theoretical Summary of Adaptive Compliant Controller |
276 |
|
|
C.1 Proof of Theorem 1 |
276 |
|
|
References |
280 |
|
|
Appendix D List of Videos |
282 |
|
|
Index |
283 |
|