TrueTime: Simulation of Networked and Embedded Control Systems
TrueTime is a Matlab/Simulink-based simulator for real-time control systems. TrueTime facilitates co-simulation of controller task execution in real-time kernels, network transmissions, and continuous plant dynamics. Features of the simulator include
- Written in C++ MEX, event-based simulation
- External interrupts
- Possibility to write tasks as M-files or C++ functions. It is also possible to call Simulink block diagrams from within the code functions
- Network block (Ethernet, CAN, TDMA, FDMA, Round Robin, Switched Ethernet, FlexRay and PROFINET)
- Wireless network block (802.11b WLAN and 802.15.4 ZigBee)
- Battery-powered devices, Dynamic Voltage Scaling, and local clocks
- Stand-alone network interface blocks
From June 2010 the network parts of TrueTime are also available for Modelica using the Dymola 7.4 simulation tool from Dassault Systemes.
TrueTime 2.0 beta 7 has been released. Minor bugs removed and compilation issues resolved.
Anton Cervin, Dan Henriksson, Martin Ohlin: TrueTime 2.0 beta 5 - Reference Manual". Department of Automatic Control, Lund University, Sweden, June 2010.
SoftwareTrueTime is Matlab-based and requires Matlab 7.0 (R14) with Simulink 6.0 (R14) or later. Control System Toolbox is required to run some of the examples.
TrueTime has been tested under Linux, Windows, and Mac, but will probably run on other platforms as well. Please note:
- The blocks and kernel functions may be compiled using gcc under Linux and Mac OS X or using Visual Studio C++ Express Edition under Windows XP or Windows Vista. Other C++ compilers should also work, but might require some small tweaks.
- If you have trouble compiling the MEX files using Visual Studio C++, see the following guide
TrueTime together with some examples can be downloaded as a compressed archive.
- Download TrueTime 2.0 beta 7 (zip archive including precompiled files for Windows and Mac). NOTE: sometimes crashes on 64-bit Matlab for unknown reasons.
- Download TrueTime 1.5 (compilation issues with Matlab R2011 and later)
- Release history
- TrueTime Network for Modelica based on External C (direct download link) Available under the GPL license.
- TrueTime Network for Modelica (direct download link) Available under the Modelica 2 license.
DevelopersThe following people have contributed to TrueTime (in reverse chronological order):
Main TrueTime Publication
If you write a paper and want to make a reference to TrueTime, please cite the following publication:
Anton Cervin, Dan Henriksson, Bo Lincoln, Johan Eker, Karl-Erik Årzén: "How Does Control Timing Affect Performance? Analysis and Simulation of Timing Using Jitterbug and TrueTime." IEEE Control Systems Magazine, 23:3, pp. 16–30, June 2003.