Lecture: Modeling and Simulation of Physical Systems for Hobbyists
Essential Tools for Developing, Testing and Debugging Systems Interacting with the Real World
This is a foundations talk about modeling and simulation as tools for development, testing and debugging systems. It requires very little previous knowledge to address all makers and hobbyists interested in creating or modifying hardware that physically interacts with its environment (e.g. robots, drones, etc.). It explains the purpose of modeling and simulation, basic principles, and tips and tricks on a practical level.
During the development of robots, drones or other machines, the individual components are usually not all available at the same time, but are developed and tested separately and then assembled to the final system. Thus, it is often useful to have a placeholder that acts just like the missing components that are not present. Or, for debugging, it might be useful to have a reference configuration, which is known to work, in order to exclude potential sources of error. On the other side, it might be helpful to artificially recreate errors to test the system for robustness to these errors without risking real hardware. This is where modeling and simulation are useful tools to make the development faster and less error-prone.
This talk explains basic modeling and simulation techniques that help even for small project, how to model the physical effects encountered most frequently and to make a simulation of the created model run in a simple way. All examples will be held as practical as possible for community projects, relying only on common hardware and open-source software, in order to make them useful for a broad audience.
Bring your computer with Gnumeric, Python and OMEditor installed to follow the examples, if you want.
- Self-balancing robot simulator example
- Drop with drag example
- Mass spring damper example
- Electric motor example
- Script to the talk
- Slides to the talk