model driven software development for robotics an overview
play

Model-Driven Software Development for Robotics: an overview - PowerPoint PPT Presentation

Model-Driven Software Development for Robotics: an overview IEEE-ICRA2011 Workshop on Software Development and Integration in Robotics Jan F. Broenink , Maarten M. Bezemer Control Engineering, University of Twente, The Netherlands Contents


  1. Model-Driven Software Development for Robotics: an overview IEEE-ICRA2011 Workshop on Software Development and Integration in Robotics Jan F. Broenink , Maarten M. Bezemer Control Engineering, University of Twente, The Netherlands

  2. Contents  Introduction  Context: Robots and software  Model-driven design  From both worlds  Approach  Categorization of the tools  The overview  Highlights from each category  Conclusion  Compatibility and reuse via components 9-5-’11 MD SD for Robotics: an overview 2

  3. Context, MD SD, Motivation  Model-driven design: models of  Embedded control software  Behavior of the robot mechanism  The combination is relevant  Early integration of models  Early testing: virtual prototyping  Simulation / Co-simulation  Systematic design steps  => SW for Robots can really be engineered  Integration phase better supported 9-5-’11 MD SD for Robotics: an overview 3

  4. Embedded Control Systems  Essential Properties Embedded Control Software  Dynamic behavior of the physical system essential for SW  Real-time constraints with low-latency requirement  Dependability: Safety, Reliability  Layered Software structure  Model-driven Design  Heterogeneous modeling  Multiple Models of Computation  Multiple Modeling formalisms 9-5-’11 MD SD for Robotics: an overview 4

  5. Models & Views  Continuous time / Discrete time  Dynamic behavior & control  Block diagrams / Bond graphs / FEM models  Signal processing  Discrete event  Software framework  Process / Block diagrams,  UML diagrams, …  Signal processing  Construction  Mechanical Structure  Kinematics Many different types, different Models of Computation (MoC): Translation not always effective, Co-operation easier 9-5-’11 MD SD for Robotics: an overview 5

  6. Early Integration  Approach  Heterogeneous models  Simulation as verification means  Modeling  Start from overall model  Refine – more detail  Basis for model repository  Combine models of parts  Bottom up  Co-simulation  Benefit  More effective way of working 9-5-’11 MD SD for Robotics: an overview 6

  7. Co-design using models (MDD)  Way of Working  Abstraction  Hierarchy  Split into Subsystems  Cope with complexity  Model-driven design  Design Space Exploration  Aspect models  Make choices  Limit solution space  Step-wise refinement  Add detail  Lower abstraction  Implementation  Realization  Concurrent design trajectory  Early Integration where possible 9-5-’11 MD SD for Robotics: an overview 7

  8. Concurrent Design Flow 1. Architecture and Dynamic behavior 2. Model-based control law design Concurrently: Software, Electronics, Mechanics 3. Software: co-sim, and real-time sim 4. First-time right realization 9-5-’11 MD SD for Robotics: an overview 8

  9. Implication for tools  Different nature of models  Relevant modeling approaches be covered  So, not necessary everything on previous slide  Co-operating tools that cover it  One simulation model / Co-simulation of more models  Iterative design  Support for hierarchical models  Model administration / management  Also for experiments and simulation results  MDD from different / both worlds  Application-specific versus Generic  MDD with different completeness  Complete tool, chain of tools / filters, library, framework 9-5-’11 MD SD for Robotics: an overview 9

  10. Approach: A categorization of tools  Generic Design tools from Control / Mechatronics  Matlab, Simmechanics, Labview  Generic Design tools / approaches from Software Engineering  Mostly UML / SysML based  IBM Rational Rhapsody, and – Rose  Multidisciplinary model-based design tools  Dynamics and control in one tool  20-sim, Simulink  Co-operating model-based design tools  Co-simulation is used, combining different models of computation  PtolemyII, DESTECS  Generic / Specific robot software design tools  Mostly for a specific brand of robots  SmartSoft 9-5-’11 MD SD for Robotics: an overview 10

  11. Generic from Control / Mechatronics  Matlab, Simmechanics  Market leader as control engineering and signal processing tool  Tool specifics  Signal level  Mix model and experiment  Lot of toolboxes  For Robot SW  Algorithm -> code  Dedicated HW 9-5-’11 MD SD for Robotics: an overview 11

  12. Generic from Control / Mechatronics  Labview  Emerged from measurement company  Tool Specifics  Testing, Rtsim  Only graphs  For Robot SW  Dedicated HW  Various HIL sim 9-5-’11 MD SD for Robotics: an overview 12

  13. Generic from Control / Mechatronics  Labview  Emerged from measurement company  Tool Specifics  Testing, Rtsim  Only graphs  For Robot SW  Dedicated HW  Various HIL sim Control Unit 9-5-’11 MD SD for Robotics: an overview 13

  14. Generic from Software Engineering  Mostly UML / SysML based  IBM: Rhapsody, Rose  Eclipse: GEF, MDF  Rhapsody  UML IDE for real-time software  Animation facilities  For Robot SW  Code gen -> framework  Adaptable  Quite heavy 9-5-’11 MD SD for Robotics: an overview 14

  15. Multidisciplinary MBD design tools  Dynamics and control in one tool  20-sim, Simulink, Modelica  20sim  Physics based  Mix types  Robot models  Simulation  Animation  For Robot SW  Code gen templates 9-5-’11 MD SD for Robotics: an overview 15

  16. Co-operating co-modeling  Co-operating model-based design tools  Co-simulation: combining different models of computation  PtolemyII, DESTECS  PtolemyII  Research tool  Dedicated drawing symbols  DESTECS  Research tool  Starting phase  20sim + Overture (VMD++) 9-5-’11 MD SD for Robotics: an overview 16

  17. Co-operating co-modeling: PtolemyII Synchronous Dataflow Director Loop Controller Encoder Motion Profiles Setpoints Select Ready Magnet Sync. from previous unit Sync. to next unit Sensor State Machine 9-5-’11 MD SD for Robotics: an overview 17

  18. Dedicated robot software tools  Generic / Specific robot software design tools  Specific for a specific brand of robots  So, not open, not usable for other robots  Often not adaptable  See ICRA-2010 workshop on Robot Control Architectures: How to Modify and Enhance Commercial Controllers  SmartSoft  Communication patterns as core of the robot component model  Code-driven to real model-driven  Strict component-based approach separates concerns:  Algorithms / middleware  (see presentation later today) 9-5-’11 MD SD for Robotics: an overview 18

  19. Frameworks / libraries etc  Quite a few are around  YARP, RoboFrame, OROCOS, ROS  OROCOS  Component: ports are categorized  Supports hard-real time  Separating normal activity from configuration  Can use other frameworks like ROS  ROS – Willow Garage  Open source framework for service robots  Oriented from SW engineering  Very active, also here at ICRA 9-5-’11 MD SD for Robotics: an overview 19

  20. Conclusion  Demands for tools is diverse  Different contexts -> different goals / questions  -> Different models -> different tools  Trends  Towards model-driven design (and thus support)  From document-based; From code-based; From model-based  Towards components to support reusability  Tools can interface to each other  Better: need to interface, i.e. be compatible  End users can choose the best tool they like  Models / Software solutions as components  To effectively reuse existing results  To follow / stimulate new developments 9-5-’11 MD SD for Robotics: an overview 20

  21. Model-Driven Software Development for Robotics: an overview IEEE-ICRA2011 Workshop on Software Development and Integration in Robotics Jan F. Broenink , Maarten M. Bezemer Control Engineering, University of Twente, The Netherlands

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend