Skip to content

Simulink Toolchain Repository for Soft-Realtime code generation with the basic structure, utilising Git submodules, and, some managment scripts.

License

Notifications You must be signed in to change notification settings

worldwidemv/SimulinkToolchain

Repository files navigation

Simulink Toolchain for Soft-Realtime

This repository holds the basic structure and, some utility scripts of the Soft-Realtime Simulink Toolbox (SRT).
This toolbox allows you to compile a Simulink diagram into a Linux executable which uses nano-sleep to ensure better real-time behaviour.

This is done by the external ERT_Linux target for the Simulink Embeded Coder, which can be found here:

ERT_linux and the actual Simulink blocks, which use the Soft-Realtime provided by ERT_Linux, are developed in separate Git repositories and included as Git submodules for convenience.

Requirements

The current version requires a Linux 64 bit operating system (e.g. Ubuntu 16.04). Besides Matlab and Simulink, the following toolboxes are required:

This toolchain is tested with Matlab 2014b and Maltab 2016b but should run with other versions too.

Installation

You must use:

git clone --recursive https://github.com/worldwidemv/SimulinkToolchain.git

Otherwise the submodules will not be included and must be manually added by you.

Inside the main directory is the install script srt_InstallSRT.m, which must be run with Matlab. This script should generate a working setup with the new entry
Soft-Realtime Simulink Toolbox - Available Blocks in the Simulink library browser.

You will also have the new option ert_linux.tlc for the System Target file under Setup > Code Generation. Please have a look at the documentation for a more detailed description.

Usage / Documentation

The toolchain it self has very little end-user functionality. Only the function in the srt_* namespace, like

  • srt_CreateLib() or
  • srt_CreateLib([Cell_with_FolderNames]), and
  • srt_InstallSRT()

are useful to end-users to rebuild the Simulink library, e.g. after updates.
However, the internal helper functions (namespace xsrt_) are needed be the custom Simulink block, e.g. the Simulink block for the Hasomed RehaMove3.

The full documentation can be found in the Wiki.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

See the GNU General Public License for more details. A copy is provided in the the LICENSE file or can be at http://www.gnu.org/licenses/.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

Simulink Toolchain Repository for Soft-Realtime code generation with the basic structure, utilising Git submodules, and, some managment scripts.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published