Commande
Utiliser
s2l pour
traduire le modèle Simulink vers un programme Lustre par la
commande : "
s2l
controleur.mdl -o controleur.lus -mp". L'option
-o est pour
spécifier
le nom du programme Lustre généré. L'option
-mp pour
spécifier
que tous les flots de données utilisent la meme horloge.
Discrétisation
de temps
L'outil
s2l peut traduire
seulement les blocs de Simulink en
temps
discret.
En outre, des paramètres du modèle doivent satisfaire
certaines conditions. Ceci est expliqué dans le manuel de s2l.
http://www-verimag.imag.fr/~tdang/M2/ss2lus0.01b/readme
Si le contrôleur est en temps continu, il faut faire une
discrétisation. Il faut discrétiser seulement le
controleur et
pas le robot.
Vous pouvez le faire a` la main (voir les TDs du semestre precedent),
ou bien utiliser l'outil "Model discretizing" de Simulink.
Pour savoir comment discrétiser un bloc d'un modèle
Simulink, lisez la partie "How to Discretize Blocks from the Simulink
Model"
<http://www.mathworks.com/access/helpdesk/help/toolbox/simulink/ug/f4-141391.html#f4-141593>
Version
Simulink
L'outil
s2l ne marche qu'avec
les modele de SIMULINK de version 13. Il
faut que le modele soit sauvegarde' sous la
version 13 de
SIMULINK.
Pour faire ceci, on fait "Save as" et choisit la version 13 de
simulink. On va voir un message de Simulink si la conversion a ete
faite avec succes.
Parametres
de simulation
Les conditions sur les parametres de simulation sont precisees dans le
document s2l-readme
http://www-verimag.imag.fr/~tdang/M2/s2l-readme
Simulink2Lustre:
- Supported options in .mdl models (check in the "Simulation
parameters" box under "Simulation" menu, once you have opened a
.mdl file):
o The "solver" option must be set to "fixed-step, discrete"
o The "mode" option must be set to "auto"
o The "boolean logic signals" ("advanced" menu) flag must be
set to on
o The "algebraic loop" flag ("diagnostics" menu) must be set
to "error"
- Inputs cannot have inherited sample times unless the
--monoperiodic|-mp option is passed to s2l during translation.