La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.
Créer un modèle simple
Vous pouvez utiliser Simulink® pour modéliser un système, puis simuler le comportement dynamique de ce système. Les techniques de base utilisées pour créer un modèle simple dans ce tutoriel sont les mêmes que celles utilisées pour des modèles plus complexes. Cet exemple simule le mouvement simplifié d'un véhicule. Un véhicule est généralement en mouvement lorsque la pédale d'accélérateur est enfoncée. Une fois la pédale relâchée, le véhicule tourne au ralenti et s'arrête.
Un bloc Simulink est un élément de modèle qui définit une relation mathématique entre son entrée et sa sortie. Pour créer ce modèle simple, vous avez besoin de quatre blocs Simulink.
Nom du bloc | Objectif du bloc | Objectif du modèle |
---|---|---|
Pulse Generator | Générer un signal d'entrée pour le modèle | Représenter la pédale d'accélérateur |
Gain | Multiplier le signal d'entrée par une valeur constante | Calculer comment appuyer sur la pédale d'accélérateur affecte l'accélération du véhicule |
Integrator, Second-Order | Intégrer le signal d'entrée deux fois | Obtenir la position à partir de l'accélération |
Outport | Désigner un signal comme sortie du modèle | Désigner la position comme sortie du modèle |
La simulation de ce modèle intègre une brève impulsion deux fois pour obtenir une rampe. Les résultats s'affichent dans une fenêtre Scope. L'impulsion d'entrée représente un appui sur la pédale d'accélérateur — 1 lorsque la pédale est enfoncée et 0 lorsque la pédale ne l'est pas. La rampe de sortie correspond à la valeur croissante de la distance au point de départ.
Ouvrir un nouveau modèle
Utilisez l'éditeur Simulink pour créer vos modèles.
Démarrez MATLAB®. Dans la barre d'outils MATLAB, cliquez sur le bouton Simulink
.
Cliquez sur le modèle Blank Model.
L'éditeur Simulink s'ouvre.
Dans l'onglet Simulation, sélectionnez Save > Save as. Dans la zone de texte File name, saisissez un nom pour votre modèle. Par exemple,
simple_model
. Cliquez sur Save. Le modèle est enregistré avec l'extension de fichier.slx
.
Ouvrir l'explorateur de bibliothèques Simulink
Simulink offre un ensemble de bibliothèques de blocs, organisées par fonctionnalité dans l'explorateur de bibliothèques. Les bibliothèques suivantes sont communes à la plupart des workflows :
Continuous — Blocs pour les systèmes à états continus
Discrete — Blocs pour les systèmes à états discrets
Math Operations — Blocs qui implémentent des équations algébriques et logiques
Sinks — Blocs qui stockent et affichent les signaux qui y sont connectés
Sources — Blocs qui génèrent les valeurs des signaux qui pilotent le modèle
Dans l'onglet Simulation, cliquez sur le bouton Library Browser
.
Configurez l'explorateur de bibliothèques afin qu'il s'affiche au-dessus des autres fenêtres du bureau. Dans la barre d'outils de l'explorateur de bibliothèques Simulink, sélectionnez le bouton Stay on top
.
Pour parcourir les bibliothèques de blocs, sélectionnez une catégorie, puis une zone fonctionnelle dans le volet de gauche. Pour rechercher dans toutes les bibliothèques de blocs disponibles, saisissez un terme de recherche.
Par exemple, recherchez le bloc Pulse Generator. Dans la zone de recherche de la barre d'outils de l'explorateur, saisissez pulse
, puis appuyez sur Entrée. Simulink recherche dans les bibliothèques les blocs dont le nom ou la description contient pulse
, puis affiche les blocs.
Obtenez des informations détaillées sur un bloc. Faites un clic droit sur le bloc Pulse Generator, puis sélectionnez Help for the Pulse Generator block. Le navigateur d'aide s'ouvre et affiche la page de référence du bloc.
Les blocs disposent généralement de plusieurs paramètres. Vous pouvez accéder à tous les paramètres du bloc en double-cliquant sur le bloc.
Ajouter des blocs à un modèle
Pour commencer à créer le modèle, parcourez la bibliothèque et ajoutez les blocs.
Dans la bibliothèque
Sources
, faites glisser le bloc Pulse Generator vers l'éditeur Simulink. Une copie du bloc Pulse Generator contenant une zone de texte pour la valeur du paramètre Amplitude s'affiche dans votre modèle. Saisissez1
.Les valeurs des paramètres sont conservées tout au long de la simulation.
Ajoutez les blocs suivants à votre modèle en utilisant la même approche.
Bloc Bibliothèque Paramètre Gain Simulink/Math Operations
Gain :
2
Integrator, Second-Order Simulink/Continuous
Initial condition :
0
Outport Simulink/Sinks
Port number :
1
Ajoutez un deuxième bloc Outport en copiant le bloc existant et en le collant à un autre point à l'aide des raccourcis clavier.
Votre modèle dispose désormais des blocs dont vous avez besoin.
Organisez les blocs en cliquant et déplaçant chaque bloc. Pour redimensionner un bloc, tirez sur un des coins.
Connecter les blocs
Connectez les blocs en créant des lignes entre les ports de sortie et d'entrée.
Cliquez sur le port de sortie à droite du bloc Pulse Generator.
Le port de sortie et tous les ports d'entrée adaptés à une connexion sont indiqués par un symbole de chevron bleu
.
Pointez sur
pour voir le repère de connexion.
Cliquez sur le repère. Simulink connecte les blocs avec une ligne et une flèche indiquant la direction du flux du signal.
Connectez le port de sortie du Gain block au port d'entrée du bloc Integrator, Second-Order.
Connectez les deux sorties du bloc Integrator, Second-Order aux deux blocs Outport.
Enregistrez votre modèle. Dans l'onglet Simulation, cliquez sur le bouton Save.
Ajouter un Signal Viewer
Pour visualiser les résultats de la simulation, connectez la première sortie à un Signal Viewer.
Cliquez sur le signal. Dans l'onglet Simulation, sous Prepare, cliquez sur le bouton Add Viewer. Sélectionnez Scope. Une icône Viewer s'affiche sur le signal et une fenêtre Scope s'ouvre.
Vous pouvez ouvrir le Scope à tout moment en double-cliquant sur l'icône.
Exécuter la simulation
Après avoir défini les paramètres de configuration, vous êtes prêt à simuler votre modèle.
Dans l'onglet Simulation, définissez le temps d'arrêt de la simulation en modifiant la valeur dans la barre d'outils.
Le temps d'arrêt par défaut de
10.0
est approprié pour ce modèle. Cette valeur de temps n'a pas d'unité. L'unité de temps dans Simulink dépend de la façon dont les équations sont construites. Cet exemple simule le mouvement simplifié d'un véhicule pendant 10 secondes. D'autres modèles peuvent avoir des unités de temps en millisecondes ou en années.Pour exécuter la simulation, cliquez sur le bouton Run
.
La simulation est exécutée et produit la sortie dans le Viewer.
Affiner le modèle
Cet exemple utilise un modèle existant, moving_car.slx
, et modélise un capteur de proximité basé sur ce modèle de mouvement. Dans ce scénario, un capteur numérique mesure la distance entre le véhicule et un obstacle à 10 m. Le modèle génère la mesure du capteur et la position du véhicule, en tenant compte des conditions suivantes :
Le véhicule s'arrête immédiatement lorsqu'il atteint l'obstacle.
Dans le monde physique, un capteur mesure la distance de façon imprécise, ce qui entraîne des erreurs numériques aléatoires.
Un capteur numérique fonctionne à intervalles de temps fixes.
Modifier les paramètres de bloc
Pour commencer, ouvrez le modèle moving_car
. Sur la ligne de commande MATLAB, saisissez :
open_system('moving_car.slx')
Vous devez d'abord modéliser l'arrêt immédiat lorsque la position de la voiture atteint 10
. Le bloc Integrator, Second-Order dispose d'un paramètre à cet effet.
Double-cliquez sur le bloc Integrator, Second-Order. La boîte de dialogue Block Parameters s'affiche.
Sélectionnez Limit x, puis saisissez
10
pour Upper limit x. La couleur d'arrière-plan du paramètre change pour indiquer une modification qui n'est pas appliquée au modèle. Cliquez sur OK pour appliquer les modifications et fermer la boîte de dialogue.
Ajouter de nouveaux blocs et connexions
Ajoutez un capteur qui mesure la distance à l'obstacle.
Modifiez le modèle. Élargissez la fenêtre du modèle pour afficher les nouveaux blocs si nécessaire.
Recherchez la distance réelle. Pour recherche la distance entre la position de l'obstacle et la position du véhicule, ajoutez le bloc Subtract de la bibliothèque
Math Operations
. Ajoutez également le bloc Constant de la bibliothèqueSources
pour définir la valeur constante de la position de l'obstacle à10
.Modélisez la mesure imparfaite qui serait typique d'un capteur réel. Générez du bruit en utilisant le bloc Band-Limited White Noise de la bibliothèque
Sources
. Définissez le paramètre Noise power à0.001
. Ajoutez le bruit à la mesure en utilisant un bloc Add de la bibliothèqueMath Operations
.Modélisez un capteur numérique qui se déclenche toutes les 0,1 secondes. Dans Simulink, l'échantillonnage d'un signal à un intervalle donné nécessite un échantillonneur-bloqueur. Ajoutez le bloc Zero-Order Hold de la bibliothèque
Discrete
. Après avoir ajouté le bloc au modèle, définissez le paramètre Sample Time sur0.1
.Ajoutez un autre bloc Outport pour le connecter à la sortie du capteur. Conservez la valeur par défaut du paramètre Port number.
Connectez les nouveaux blocs. La sortie du bloc Integrator, Second-Order est déjà connectée à un autre port. Pour créer une branche dans ce signal, cliquez sur le signal pour mettre en surbrillance les ports potentiels pour la connexion, puis cliquez sur le port approprié.
Annoter les signaux
Ajoutez des noms aux signaux du modèle.
Double-cliquez sur le signal et saisissez le nom du signal.
Pour terminer, cliquez en dehors de la zone de texte.
Répétez ces étapes pour ajouter les noms comme indiqué.
Comparer plusieurs signaux
Comparez le signal de actual distance
avec le signal measured distance
.
Créez et connectez un Scope Viewer au signal
actual distance
. Faites un clic droit sur le signal et sélectionnez Create & Connect Viewer > Simulink > Scope. Le nom du signal s'affiche dans le titre du Viewer.Ajoutez le signal
measured distance
au même Viewer. Faites un clic droit sur le signal et sélectionnez Connect to Viewer > Scope1. Assurez-vous de vous connecter au Viewer que vous avez créé à l'étape précédente.Exécutez le modèle. Le Viewer affiche les deux signaux,
actual distance
en jaune etmeasured distance
en bleu.Zoomez sur le graphique pour observer l'effet du bruit et de l'échantillonnage. Cliquez sur le bouton Zoom
. Cliquez et définissez une fenêtre autour de la zone que vous souhaitez voir de plus près en faisant glisser votre souris.
Vous pouvez effectuer un zoom avant à plusieurs reprises pour observer les détails.
À partir du tracé, notez que la mesure peut dévier de la valeur réelle de 0,3 m. Ces informations deviennent utiles lors du design d'une fonction de sécurité, par exemple, un avertissement de collision.
Voir aussi
Blocs
- Pulse Generator | Gain | Second-Order Integrator | Add | Constant | Zero-Order Hold | Band-Limited White Noise