embedded robotics - gbv

6
Thomas Bräunl EMBEDDED ROBOTICS Mobile Robot Design and Applications with Embedded Systems Second Edition With 233 Figures and 24 Tables Springer

Upload: others

Post on 15-Oct-2021

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EMBEDDED ROBOTICS - GBV

Thomas Bräunl

EMBEDDED ROBOTICS

Mobile Robot Design and Applications with Embedded Systems

Second Edition

With 233 Figures and 24 Tables

Springer

Page 2: EMBEDDED ROBOTICS - GBV

CONTENTS

PART I: EMBEDDED SYSTEMS 1 Robots and Controllers 3

1.1 MobileRobots 4 1.2 Embedded Controllers 7 1.3 Interfaces 10 1.4 Operating System 13 1.5 References 15

2 Sensors 17 2.1 Sensor Categories 18 2.2 Binary Sensor 19 2.3 Analog versus Digital Sensors 19 2.4 Shaft Encoder 20 2.5 A/D Converter 22 2.6 Position Sensitive Device 23 2.7 Compass 25 2.8 Gyroscope, Accelerometer, Inclinometer 27 2.9 Digital Camera 30 2.10 References 38

3 Actuators 41 3.1 DC Motors 41 3.2 H-Bridge 44 3.3 Pulse Width Modulation 46 3.4 Stepper Motors 48 3.5 Servos 49 3.6 References 50

4 Control 51 4.1 On-Off Control 51 4.2 PID Control 56 4.3 Velocity Control and Position Control 62 4.4 Multiple Motors - Driving Straight 63 4.5 V-Omega Interface 66 4.6 References 68

IX

Page 3: EMBEDDED ROBOTICS - GBV

I Contents

5 Multitasking 69 5.1 Cooperative Multitasking 69 5.2 Preemptive Multitasking 71 5.3 Synchronization 73 5.4 Scheduling 77 5.5 Interrupts and Timer-Activated Tasks 80 5.6 References 82

6 Wireless Communication 83 6.1 Communication Model 84 6.2 Messages 86 6.3 Fault-Tolerant Self-Configuration 87 6.4 User Interface and Remote Control 89 6.5 Sample Application Program 92 6.6 References 93

PART II: MOBILE ROBOT DESIGN 7 Driving Robots 97

7.1 Single Wheel Drive 97 7.2 Differential Drive 98 7.3 Tracked Robots 102 7.4 Synchro-Drive 103 7.5 Ackermann Steering 105 7.6 Drive Kinematics 107 7.7 References 111

8 Omni-Directional Robots 113 8.1 Mecanum Wheels 113 8.2 Omni-Directional Drive 115 8.3 Kinematics 117 8.4 Omni-Directional Robot Design 118 8.5 Driving Program 119 8.6 References 120

9 Balancing Robots 123 9.1 Simulation 123 9.2 Inverted Pendulum Robot 124 9.3 Double Inverted Pendulum 128 9.4 References 129

10 Walking Robots 131 10.1 Six-Legged Robot Design 131 10.2 Biped Robot Design 134 10.3 Sensors for Walking Robots 139 10.4 Static Balance 140

X

Page 4: EMBEDDED ROBOTICS - GBV

Contents

10.5 Dynamic Balance 143 10.6 References 148

11 Autonomous Planes 151 11.1 Application 151 11.2 Control System and Sensors 154 11.3 FlightProgram 155 11.4 References 159

12 Autonomous Vessels and Underwater Vehicles 161 12.1 Application 161 12.2 Dynamic Model 163 12.3 AUVDesignMako 163 12.4 AUVDesignUSAL 167 12.5 References 170

13 Simulation Systems 171 13.1 Mobile Robot Simulation 171 13.2 EyeSim Simulation System 172 13.3 Multiple Robot Simulation 177 13.4 EyeSim Application 178 13.5 EyeSim Environment and Parameter Files 179 13.6 SubSim Simulation System 184 13.7 Actuator and Sensor Models 186 13.8 SubSim Application 188 13.9 SubSim Environment and Parameter Files 190 13.10 References 193

PART III: MOBILE ROBOT APPLICATIONS 14 Localization and Navigation 197

14.1 Localization 197 14.2 Probabilistic Localization 201 14.3 Coordinate Systems 205 14.4 Dijkstra's Algorithm 206 14.5 A* Algorithm 210 14.6 PotentialFieldMethod 211 14.7 Wandering Standpoint Algorithm 212 14.8 DistBug Algorithm 213 14.9 References 215

15 Maze Exploration 217 15.1 Micro Mouse Contest 217 15.2 Maze Exploration Algorithms 219 15.3 Simulated versus Real Maze Program 226 15.4 References 228

XI

Page 5: EMBEDDED ROBOTICS - GBV

^ K

I Contents

16 Map Generation 229 16.1 Mapping Algorithm 229 16.2 Data Representation 231 16.3 Boundary-Following Algorithm 232 16.4 Algorithm Execution 233 16.5 Simulation Experiments 235 16.6 Robot Experiments 236 16.7 Results 239 16.8 References 240

17 Real-Time Image Processing 243 17.1 Camera Interface 243 17.2 Auto-Brightness 245 17.3 Edge Detection 246 17.4 Motion Detection 248 17.5 Color Space 249 17.6 Color Object Detection 251 17.7 Image Segmentation 256 17.8 Image Coordinates versus World Coordinates 258 17.9 References 260

18 Robot Soccer 263 18.1 RoboCup and FIRA Competitions 263 18.2 Team Structure 266 18.3 Mechanics and Actuators 267 18.4 Sensing 267 18.5 Image Processing 269 18.6 Trajectory Planning 271 18.7 References 276

19 Neural Networks 277 19.1 Neural Network Principles 277 19.2 Feed-Forward Networks 278 19.3 Backpropagation 283 19.4 Neural Network Example 288 19.5 Neural Controller 289 19.6 References 290

20 Genetic Algorithms 291 20.1 Genetic Algorithm Principles 292 20.2 Genetic Operators 294 20.3 Applications to Robot Control 296 20.4 Example Evolution 297 20.5 Implementation of Genetic Algorithms 301 20.6 References 304

Page 6: EMBEDDED ROBOTICS - GBV

Contents

21 Genetic Programming 307 21.1 Concepts and Applications 307 21.2 Lisp 309 21.3 Genetic Operators 313 21.4 Evolution 315 21.5 Tracking Problem 316 21.6 Evolution of Tracking Behavior 319 21.7 References 323

22 Behavior-Based Systems 325 22.1 Software Architecture 325 22.2 Behavior-Based Robotics 326 22.3 Behavior-Based Applications 329 22.4 Behavior Framework 330 22.5 Adaptive Controller 333 22.6 Tracking Problem 337 22.7 Neural Network Controller 338 22.8 Experiments 340 22.9 References 342

23 Evolution of Walking Gaits 345 23.1 Splines 345 23.2 Control Algorithm 346 23.3 Incorporating Feedback 348 23.4 Controller Evolution 349 23.5 Controller Assessment 351 23.6 Evolved Gaits 352 23.7 References 355

24 Outlook 357

APPENDICES A Programming Tools 361 B RoBIOS Operating System 371 C Hardware Description Table 413 D Hardware Specification 429 E Laboratories 437 F Solutions 447

Index 451

XIII