Fonctionnement
Comme son nom l’indique, le programme SimulinkToSR fait le lien entre des fichiers Matlab/Simulink
et la
carte DSP Signal Ranger développée par Soft dB. La programmation d’un DSP devient donc accessible à tous.
D’abord, l’utilisateur emploie l’outil Real-Time Workshop de Matlab pour transformer le
modèle Simulink à un langage C.
Puis, les fichiers ainsi générés sont transmis à travers
le convertisseur SimulinkToSR. Il en résulte un fichier
.out qui peut être implémenté
directement sur une carte Signal Ranger.
Le temps requis pour un tel processus est de quelques secondes à une minute selon l’envergure du système.
Par la suite, l’interface du programme SimulinkToSR vous permet de communiquer avec la carte DSP.
Il est ainsi possible de modifier dynamiquement les paramètres de votre système Simulink et d’en
observer l’effet instantanément.
Démonstration du logiciel Convertisseur SimulinkToSR
Télécharger la démonstration qui explique le fonctionnement du Convertisseur SimulinkToSR
et qui montre ses pricipales fonctionnalités.
Démo du convertisseur
La procédure d’implantation en bref
Le texte qui suit présente les éléments essentiels afin d’implémenter un design Simulink sur une carte DSP Signal Ranger.
Cependant, une lecture du manuel d’instruction est recommandée pour faciliter la compréhension.
- Configurer votre fichier Simulink
- Concevoir votre système sous Simulink
- Prédéfinir des variables Simulink dans l’environnement MatLab
- Exporter des variables
- Construire le modèle avec Real-Time Workshop
- Convertir et implémenter avec l’interface SimulinkToSR
1. Configurer votre fichier Simulink
Afin de faciliter la configuration du modèle Simulink, nous vous fournissons un exemple simple déjà configuré pour construire le modèle avec Real-Time Workshop.
Nous vous suggérons de commencer votre design à partir de l’exemple situé dans le répertoire "example".
Il y a 4 fichiers inclus que vous pouvez copier et renommer au besoin (excepté le fichier
grt_rtw_info_hook.m qui ne doit pas être modifié) :
- example.mdl : le fichier Simulink préconfiguré
- example_init.m : le fichier qui initialise la période d’échantillonnage (Ts) et certaines variables de l’utilisateur
- example_sim.m : le fichier de simulation (optionnel)
- grt_rtw_info_hook.m : Real-Time Workshop a besoin de ce fichier pour générer le modèle selon certaines informations spécifiques au DSP. Ce fichier doit être présent dans le répertoire contenant le modèle Simulink.
2. Concevoir votre système sous Simulink
Utilisez l’aide Simulink au besoin si vous n’êtes pas familiers avec le logiciel.
Consultez la liste dans l’annexe B du manuel d’instruction pour connaître les blocs supportés par la présente version du convertisseur SimulinkToSR.
Notez que l’amplitude des entrées et sorties dans Simulink représentent directement la tension en volts sur la carte.
Sachez aussi que les entrées offrent une plage maximale de ±10 volts, alors que les sorties, une plage de ±2 volts.
Sur la carte, toute valeur supérieure saturera à la valeur maximale permise.
Quand le paramètre
Sample Time est présent dans les paramètres d’un bloc, allouez-y la même valeur qu’au
Fixed step size (soit "Ts").
Lorsque mentionné, vous pouvez aussi allouer sa valeur à "-1" pour qu’il hérite le
Sample time du bloc auquel il est rattaché.
3. Prédéfinir des variables Simulink dans l’environnement MatLab
Les paramètres Simulink peuvent être assignés à une variable de l’environnement Matlab.
Pour faciliter le processus, vous devriez utiliser un
M-file comme fichier d’initialisation avant d’exécuter le fichier Simulink.
Pour le moment, vous pouvez prendre comme exemple le fichier
example_init.m.
Notez que la période d'échantillonnage "Ts" précédemment employée est aussi définie dans ce fichier.
4. Exporter des variables
Avec la carte DSP Signal Ranger, il est possible de communiquer avec le DSP pendant que le code s’exécute.
Vous pouvez donc lire et écrire dynamiquement les paramètres dits "ExportedGlobal" dans le modèle Simulink.
Il y a trois façons d’accéder aux variables utilisateur :
Déclarer "ExportedGlobal" des variables prédéfinies
Vous pouvez accéder dynamiquement aux paramètres Simulink alloués à des variables définies dans l’environnement Matlab.
Vous devez cependant spécifier quelles variables il faut exporter.
En effet, les variables dont vous voulez accéder en temps réel doivent être configurées "ExportedGlobal" dans Simulink.
Pour y parvenir:
- À partir de votre fichier Simulink, allez à Simulation > Simulation Parameters > Advanced > Configure.
Toutes les variables présentes dans l’environnement Matlab sont énumérées dans Source list.
- Sélectionnez les variables auxquelles vous voulez accéder dans l’interface SimulinkToSR et appuyez sur add to table>>. Les variables ajoutées apparaissent alors dans Global (tunable) parameters.
- Configurez le Storage class de toutes les variables ajoutées à "ExportedGlobal" et appuyez sur OK.

Cela fonctionnera seulement si la variable est véritablement utilisée comme un paramètre de votre système.
De plus, une variable peut être ignorée dans le cas où le paramètre Simulink visé ne peut être dynamique.
Utiliser les blocs Data Store
Les blocs Simulink
Data Store Memory,
Data Store Read et
Data Store Write vous permettent respectivement de déclarer, lire et écrire une variable.
Configurez simplement le paramètre
RTW Storage Class du bloc
Data Store Memory à "ExportedGlobal" afin de permettre un accès dynamique à travers l’interface.
Utiliser une sonde
L’utilisation d’une sonde sur un fil dans Simulink vous permet de lire (uniquement) sa valeur à travers l’interface.
Pour ce faire, cliquez sur le bouton droit de la souris vis-à-vis le fil désiré pour accéder à "Signal Properties..."
et configurez le paramètre
RTW Storage Class à "ExportedGlobal".
5. Construire le modèle avec Real-Time Workshop
Pour construire le modèle avec Real-Time Workshop à partir de votre fichier Simulink, allez à
Tools > Real-Time Workshop > Build Model (ou encore Ctrl+B ou l’icône
Build).
Si aucune erreur n’est détectée, le processus de construction est affiché dans la fenêtre de commande de Matlab. Les avertissements apparaîtront aussi à cet endroit.

Une construction réussie crée le répertoire
model_grt_rtw (
model étant votre nom de fichier Simulink).
Les fichiers inclus dans ce répertoire seront employés par le convertisseur SimulinkToSR afin d’implémenter
le système sur une carte DSP Signal Ranger.
6. Convertir et implémenter avec l’interface SimulinkToSR
Le convertisseur SimulinkToSR est chargé de convertir le modèle temps réel créé dans Simulink et d’implémenter le système sur le DSP.

Ouvrez le programme SimulinkToSR, appuyez sur le bouton
Convert et suivez les instructions à l’écran.
En quelques secondes, votre design Simulink devrait être prêt à être exécuté.
Par la suite, vous pouvez interagir au besoin avec la carte DSP via l’interface SimulinkToSR.