This project is about bringing the real-time framework OpenRTDynamics to the Beagleboard. It enables data acquisition and processing (filters, state machines, data analysis) as well as remote monitoring / control capabilities via a TCP/IP Interface. Applications include: Robot control, sensor measurement applications along with automatic data analysis or everything that is based on regularly sampled data.
OpenRTDynamics (ORTD) is a framework for the implementation of advanced real-time control systems that use signal/block-based schematics (like Simulink or Scicos/Xcos) extended by several features like state machines and online-exchangeable sub-simulations. Besides, this framework properly handles multiple threads, their communication, allows to synchronise control systems to external events (e.g. variable timers or incoming network packages) and provides many other nice features. Because of a high-level schematic-description language -- in form of provided Scilab commands -- only a minimal implementation-effort (no error-prone C-programming) is required.
Additionally to standard approaches, ORTD features the ability to implement state machines represented by multiple, switching subsystems (each subsystem corresponds to one state). Since, subsystems can also run in the context of separated threads (with or without synchronisation to another one), e.g. high- and low frequency parts can be divided or computationally intensive tasks can run in the background. Because of a remote control interface and the ability to include Scilab-Code as computational functions (S-function like), ORTD is also ideally suited for laboratory automation. The ability to replace sub-schematics with new implementations and parameters during runtime removes the effort of restarting the main real-time program when new algorithms are (automatically) designed.
A) Make sure you have the gnu compilers, perl and make on your target system (should be the case)
B) Download the default package from http://sourceforge.net/projects/openrtdynamics/files/ named OpenRTDynamics_source_revXXX.sh; XXX stands for the current revision number.
C) Transfer this file to your BB and place it into a folder in which you would like to install the framework. A subdirectory will be created within this folder.
D) From inside the chosen folder run: $ sh OpenRTDynamics_source_revXXX.sh; The source code will be automatically extracted and compiled.
E) Follow the given instructions
Please note: To start development of schematics you want to install the framework on a host computer system.
An example on how to access the GPIO hardware interface is now available. Have a look at the README-file, section "INSTALLATION ON BEAGLEBONE" or into the folder examples/beaglebone.
A web-interface to a control system: http://www.youtube.com/watch?v=Mln_JxfzLD0
Did you replicate this project? Share it!I made one
Love this project? Think it could be improved? Tell us what you think!