Définir les signaux d’entrée d’un modèle Simulink

Je me souviens de mes premiers pas avec Simulink et tout particulièrement des questions que je me suis posées à propos des entrées du modèle: d’où sortaient les signaux utilisés pour les calculs?

Voilà donc le point de départ : comment spécifier les signaux d’entrée d’un modèle? Lister toutes les possibilités prendrait bien trop longtemps et plus d’un billet de blog, je vais donc me limiter dans ce billet à la manière qui me semble la plus facile et la plus élégante à mettre en place.

Tout d’abord, il faut spécifier les entrées du modèle en utilisant des blocs In1 que l’on peut trouver dans la bibliothèque Simulink/Sources. Pour que ce bloc définisse une entrée du modèle il faut qu’il se trouve au niveau racine du modèle (pas dans un sous-système).

Remarquez que chaque bloc In1 du modèle contient un numéro correspondant à l’ordre des entrées, cela aura toute son importance lorsqu’il faudra associer des données à ces entrées.

Les valeurs des signaux d’entrée doivent être stockées dans le workspace de base de MATLAB.
Ces signaux se composent de 2 parties: un vecteur temps et un vecteur de données. Chacun des vecteurs doit être en colonne. Je vous conseille de créer un vecteur temps (on l’appellera t) et autant de vecteurs de données (qu’on appellera u1,u2,…) qu’il y a d’entrées dans votre modèle.

Il ne reste plus qu’à associer ces données aux entrées du modèle.
Cette opération s’effectue grâce à l’interface « Configuration Parameters » du modèle, accessible via le menu « Simulation/Configuration Parameters » ou grâce au raccourci Ctrl+B.
Il faut aller dans l’onglet « Data Import/Export » et cocher la checkbox « Input » qui se trouve dans le panel nommé « Load data from workspace » pour signifier au modèle qu’il doit aller chercher les signaux d’entrée dans le workspace de MATLAB.
Le champ d’édition « Input » est maintenant activé (par défaut il contient la chaîne « [t,u]« ), il suffit de lister les vecteurs de données entre crochets. Le premier vecteur doit être le vecteur temps et il doit y avoir autant de vecteurs de données qu’il y a de ports d’entrée.
Pour un modèle avec 3 entrées, voici ce qu’on pourrait écrire : « [t,u1,u2,u3]« .

Et voilà les signaux d’entrée sont définis dans MATLAB et associés au modèle, vous pouvez exécuter la simulation.