Version: LNX 2.4 ********************************************************************* * About ********************************************************************* The Linux Soft Real-Time Target is a target definition to Real-Time Workshop from Mathworks. The target uses the POSIX real-time clocks to generate periodic signals, to wake the model process at every time step. The process is changed to real-time highest priority defined by the scheduler, and therefore needs root privileges to execute. The Linux Soft Real-Time Target does not run hard real-time, since the kernel of Linux itself is not preempted by the scheduler. As a consequence, model execution can occasionally be delayed. A standard Linux kernel preempts every 10 ms. Higher resolution of the task switching, and thereby precision of the model execution, can be achieved by setting HZ to a different value in asm/param.h, included in the kernel source, and re-compiling the kernel. To include C S-Functions from other directories place the rtwmakecfg.m file included in this package in the directory of the C S-Function source file. The C S-Function must be mex'ed in order for Simulink to pass the path to Real-Time Workshop. ********************************************************************* * Installation ********************************************************************* Copy all files to a directory named e.g. "lnx/". Put the "lnx/" directory in the Matlab path. The LNX target should now be visible in the System Target Browser under Real-Time Workshop options. For cross compilation, follow the above procedure on the host machine. Install the target files on the target machine, and specify the path to the files in the Real-Time Workshop options in Simulink. Also specify the path to the Matlab installation on the target machine. These option are enabled when checking the "Specify remote paths" option. If the target machine does not contain a Matlab installation, copy the following directories from the host Matlab installation to the target machine: simulink/include extern/include rtw/c/libsrc rtw/c/src rtw/c/tools Specify the path to the above directory structure as the Matlab installation path in the Real-Time Workshop options in Simulink. If generating code only, make sure to specify the paths to the Matlab installation and the target files, or else pass the TARGET_PATH option to the make command when compiling. ********************************************************************* * Compatibility ********************************************************************* LNX 2.4 is tested with Matlab 7.3 (2006b) for Linux, and cross platform code generation from Windows. Version details: Matlab 7.3.0.298 Simulink 6.5 Real-Time Workshop 6.5 ********************************************************************* * Releases ********************************************************************* Version 2.4: This update is made by contribution from Morten Bisgaard, AAU. - Added detection of sample overrun. The Alarm Clock exit is not substituted with a deadline violation notification, and continued exectution. - Added "[LNX]" to all model outputs to separate from other debug info from e.g. S-Functions. Version 2.3: - Added support for including C S-Functions from other directories. Version 2.2: - Added cross-architecture support. Version 2.1: - Re-installation of default signal handler was observed on a debian distribution, causing exit of real-time code. The handler is now installed after each execution. - The RTW parameters now supports linker options mainly for comedi support. - There is a post-compilation command to e.g. automatically uploading of the executable. Version 2.0.0: - Updated all files to support Matlab R14 SP3. Version 1.01: - Fixed hardcoded sample time in lnx_main.c. Real-time model now executes at the rate specified in the Solver tab of the Simulation Parameters. Version 1.00: - Initial release. ********************************************************************* * Author ********************************************************************* Dan D. V. Bhanderi, 2007 Aalborg University dan@bhanderi.dk