1 / 33

Introduction To Software Systems

Introduction To Software Systems. ASAP Robotics Software Systems: Lecture 1 Robert Oates MEng rxo@cs.nott.ac.uk Room C85. A Brief (and not to scale) History of Robotics. Science Fact. Science Fiction. Approx. 8 B.C. 1961. 1950. 1921. 1954. 1990. The Future.

kalli
Download Presentation

Introduction To Software Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction To Software Systems ASAP Robotics Software Systems: Lecture 1 Robert Oates MEng rxo@cs.nott.ac.uk Room C85

  2. A Brief (and not to scale) History of Robotics Science Fact Science Fiction Approx. 8 B.C. 1961 1950 1921 1954 1990 The Future Something only half as good as the things foretold in 8 B.C.!! Legend of Hephaestus First production line robot “I Robot” First “universal manipulator” “Elephants Don’t Play Chess” Karel Capek’s “robots”

  3. What’s the point of robotics? • Industrial • Faster • More efficient • Cheaper in the long run • Can be used in hazardous environments • Distribution of sensors • Scientific • Psychology • Sociology • Computer Science

  4. Properties of a Robotic System • Purposeful • Interdisciplinary • Complex • All parts need to work, all parts need to work together!

  5. Robots as a System Control Software Control Signals Robot Sensor Data Hardware Actuators Sensory Input Environment Real-World

  6. Key Issues When Designing a Robotic System • Complex • Interdisciplinary • Good enough to survive in the real world • Dynamic • Noisy • Non-linear • Expensive!

  7. Software Architectures For Robots : The Bad Old Days • GOFAI (Good Old Fashioned AI) • Symbolic AI • Expert Systems etc • SMPA (Sense Model Plan Act) • Image\Signal Processing • Totally separate research • Not fit for purpose!

  8. SMPA Sensors SENSE ACT MODEL Actuators PLAN REAL-WORLD ROBOT

  9. SMPA • Sense • Turn real-world signals into data • Model • Use data to update an internal model of the world • Plan • Plan the best course of action, by manipulating the model • Act • Act out the chosen plan, by sending signals back to actuators

  10. SMPA & GOFAI : Why didn’t the robot cross the road?

  11. Killing Blows For SMPA • Slow • Model could become out of synchronisation • Why waste processor time using a model that is geared to how a human thinks?

  12. Elephants Don’t Play Chess(Rodney Brooks, 1990) • Symbolism is not the key • Don’t blame hardware – blame the architecture!

  13. So what do we do now? • New controller based on reflexes. • Reactive architectures • “The world is its own best model” – Rodney Brooks • Complex behaviour Perception Process Action

  14. So what do we do now? • New controller based on reflexes. • Reactive architectures • “The world is its own best model” – Rodney Brooks • Complex behaviour Laser light taking less time to return than usual on the right If tr < T Vr = Vr + Voffset Robot turns left

  15. Reactive Architectures(approximately 1990) • Fast enough to process the real-world • More biologically feasible • Humans do not impose their own models

  16. The Robot Lab • Located on B Floor of the CSIT Building • Facilities • “The robot village” • Pioneer Pen • Robot Football Pitch • 5 Pioneer Robots • 1 Peoplebot • 32 Miabot Pro Swarms • 12 Miabot Pros • Lego Robots • http://grumpy.cs.nott.ac.uk/~robots/wiki/index.php/Main_Page

  17. ASAP and Robotics • The Automated Scheduling optimisation And Planning research group • Many tasks within robotics, (control, task management) are about optimisation and planning • Objectives • Research: Novel control techniques • Don’t want to waste time re-implementing things that are already in the public domain: Procurement!

  18. Machine Learning • Machine Learning Allows: • Generalisation • Neural Networks • Repeatedly show training data • Behaviour Modification • Reinforcement Learning • Repeatedly practice tasks

  19. Pan, tilt and zoom camera Wifi Transmitter Laser range finder Front Sonar Rear Sonar Gripper Bumper Switches Drive Wheel Pioneer Robots – Hardware Structure

  20. Pioneer Robots – Hardware Structure

  21. Pioneer Robots – Hardware Structure WiFi Robot Serial Port Sensors & Actuators Electronics Standard PC

  22. Pioneer Robots – Commercial Software • Operating System: • “Windows” (Microsoft) • Control Software: • “ARIA” (MobileRobots) • Simulation Software: • “MobileSim” (MobileRobots)

  23. Pioneer Robots – Open Source Software • Operating System: • Various Linux “Flavours” (types) • Control Software: • “Player” • Simulation Software: • “Stage”

  24. What Do We Use and Why? • Operating System: • Linux • Real-time • Flexible • Control Software: • Both! • Player • ARIA • Simulators • More complicated • Less resource intensive • Guaranteed service time

  25. Developing Robot Software

  26. Why Use Simulators? • Faster • Faster than real-time • This makes many machine learning algorithms possible! • Cheaper • Don’t need to build robot • Safer • Robot can’t damage people/building/itself • Repeatable • Riskier! • The simulator will be different to the real-world

  27. Simulators: Capturing the Essence of Reality • Simulator Demonstration

  28. Ideal Robotic Simulator • Simulates noise from sensors • Simulates real-world style physics • Simulates faster than real time • Usable • Minimal porting effort NO MATTER HOW GOOD A SIMULATOR IS – THE REAL-WORLD WILL ALWAYS BE DIFFERENT!!

  29. Bootstrapping Simulator Training time Real-world Training

  30. Cross-Platform Development • Many reasons to do so • Preference • Application • Wider Customer Base • Many reasons not to! • Compatibility • Complex code “switches” • Porting issues

  31. Software Development and Hardware Issues • Battery life • Mechanical wear • Hardware reliability • Controlled Environment

  32. Key Issues When Implementing a Robotic System • Cross-platform development issues • Simulator issues • Hardware issues

  33. Case Study – Pioneer Development • ARIA SIGSEG Bug • Driver configuration bugs • Solution: Recompile all code on robots • Hardware changes • Solution: Feedback

More Related