Project

General

Profile

UseCases

Our tool is a compiler translating Simulink models with observers to Lustre code with observers.
In order to express the synchronous observers on a Simulink model, we provide an Observer block. This block is a masked sub-system with one parameter named parameterType.

Here is the Simulink graphical block:

Observer Simulink block

And the parameter definition window:

Observer Simulink block parameters

The Simulink source file containing this block is provided here: ObserverBlock.mdl.

Counter use-case

The first use case is the model of a counter. The counter will activate its output every four tick and start activating its output after the three first ticks.

Here is the graphical view of its Simulink model:

Counter Simulink model picture

Simulink source model is provided in Counter.mdl

Generated Lustre code and C code are provided in Counter.tar.gz.

Voter use-case

The first use case is the model of a simplified voter. Such a voter take as inputs the outputs of three sensors measuring the same parameter, the interval of legal input values (maximum and minimum) and a delta tallying with the maximum acceptable uncertainty of measurement. Its purpose is to compute a valid input for the controller from its three input values and to report occasional measurement errors.

A graphical view of the Simulink model is provided in simple_voter_obs.png. In this picture, system model elements are depicted in black whereas verification related architecture (observers) is displayed in red.

Simulink source model is provided in TriplexVoter.mdl

Generated Lustre code and C code are provided in TriplexVoter.tar.gz

Other use-cases

Observer_Block.png - Observer Simulink block (1.28 KB) Arnaud Dieumegard, 10/14/2013 12:08 PM

Observer_Block_Parameters.png - Observer Simulink block parameters (13.8 KB) Arnaud Dieumegard, 10/14/2013 12:08 PM

ObserverBlock.mdl - Observer block Simulink model (21.8 KB) Arnaud Dieumegard, 10/14/2013 12:17 PM

Counter.png - Counter Simulink model picture (11.7 KB) Arnaud Dieumegard, 10/22/2013 03:41 PM

simple_voter_obs.png - Voter with observers (21.7 KB) Arnaud Dieumegard, 10/22/2013 03:42 PM

Counter.mdl - Counter Simulink model (31.4 KB) Arnaud Dieumegard, 11/05/2013 06:34 PM

TriplexVoter.mdl - TriplexVoter Simulink model (497 KB) Arnaud Dieumegard, 11/05/2013 06:38 PM

TriplexVoter.tar.gz - TriplexVoter generated code (Lustre and C) (750 KB) Arnaud Dieumegard, 11/05/2013 06:42 PM

Counter.tar.gz - Counter generated code (Lustre and C) (4.57 KB) Arnaud Dieumegard, 11/05/2013 06:42 PM