TD/TP Outils de Simulation 1 Outils de simulation M1 ASE Prise en main de Matla
TD/TP Outils de Simulation 1 Outils de simulation M1 ASE Prise en main de Matlab et Simulink Année 2009-2010 I-Introduction L’objectif de cette manipulation est de maîtriser les principales fonctionnalités du plus représentatif des logiciels de calcul scientifique: le logiciel de calcul Matlab et sa Toolbox graphique Simulink. Conseils pour la rédaction: La rédaction de la manipulation se fait directement sur machine, en utilisant le 'copier/coller' sous Windows vers un logiciel de traitement de texte (Open Office..). Cette règle s'applique aussi bien pour les résultats graphiques que les programmes ou les schémas graphiques. Il est inutile de consacrer une page complète pour un graphique ou un schéma. [Le compte-rendu n'est pas évalué au nombre de pages et de copies d'écran, dont l'excès nuit à la lisibilité. Les copies d'écran ne sont que la consignation du travail fait en manipulation et leur nombre excessif ne saurait apporter un poids supplémentaire au compte-rendu] Il est impératif de porter un regard critique sur les résultats et d'identifier les sources d'erreurs apportées par la simulation numérique. Le compte-rendu sera évalué principalement sur les remarques personnelles soulignant le lien entre les résultats obtenus et les principes théoriques. LE COMPTE-RENDU EST A RENDRE EN FIN DE SEANCE II–Manipulation de concepts de base On considère un système dynamique caractérisé par une fonction de transfert de la forme Gp= K p2/ωn 2 2 zp/ωn 1 (1) dont on désire tracer la réponse indicielle et la réponse fréquentielle. On suppose que ωn= 3 rd /s et K = 5 . • Réponse temporelle • Rappel sur la réponse indicielle d'un système du 2nd ordre Pour un système du deuxième ordre ayant un gain statique unitaire, la réponse à l'échelon unitaire est donnée par la solution générale ( z ≠1 ) : yt= 1 p2 p1 −p2 ep1 t p1 p2 −p1 e p2 t avec p1 = −z −z2 −1ωn et p2 = −z z2 −1ωn pôles de la fonction de transfert. Note importante : les possibilités de calculs complexes sous Matlab permettent d'utiliser directement cette solution, y compris pour le cas z 1 . D'un point de vue théorique, le cas z = 1 (présence d'un pôle double) est exclu de cette solution; le travail demandé ici envisage une approche expérimentale du cas z = 1 . Master ASE M1 - Outils de simulation – 2009-2010 TD/TP Outils de Simulation 2 Travail demandé 1) Calculer sous Matlab les pôles p1 et p2 du système pour z = 0,3 . Construire un vecteur temps de 0 à 10s, pas 0,1s Calculer le vecteur de sortie yt (pas besoin de boucle itérative!). Tracer la réponse temporelle (ne pas oublier de préciser l'échelle des temps pour le tracé en précisant l'abscisse) Vérifier rapidement la cohérence des résultats (pseudo-période T≈2 n , amplitude du dépassement de 30% environ). Note importante : le travail ne consiste pas à utiliser la fonction step appliquée à un second ordre mais à faire le calcul à partir de y(t) .!!! 2) Relancer le calcul la réponse indicielle pour z = 0,1 0,3 0,5 0,7 2 et 5 et représenter la réponse sur un même graphique (utiliser hold on ). 3) Analyser le résultat Matlab obtenu pour z = 1 . Peut-on s'approcher de z = 1 en prenant une valeur de z très proche de 1 (1+0.001 par exemple)? L'erreur introduite influe-t-elle le résultat (valeur crête, pseudo-période)? 4) Pour z = 0,3 , tracer sur le même graphe la réponse obtenue pour un pas de 0.1s et pour le pas 2s du vecteur temps. Les solutions se superposent-elles ? Y a-t-il une approximation dans le calcul des valeurs, dans la tracé ? • Réponse fréquentielle Le système dynamique étant caractérisé par la fonction de transfert Gp= K p2/ωn 2 2 zp/ωn 1 , la réponse fréquentielle est obtenue en faisant p = j ω dans l'expression Les possibilités de calcul complexe de Matlab permettent de calculer Gjω par écriture directe, après avoir fixé les valeurs de ωn , z , K et ω Travail demandé 1) Construire un vecteur fréquence OMEGA en suite logarithmique représentant l'étendue fréquentielle d'observation de ωn/100 à 100 ωn avec n=3rd/ s (utiliser la fonction logspace dont on consultera l'aide en ligne) En déduire le vecteur fréquence complexe j (on rappelle que j=sqrt(-1) ) 2) Calculer le vecteur réponse Gjω obtenu pour p= j et z = 0,3 puis le vecteur module en dB , le vecteur phase en rd ou degré (utiliser abs, log10 et angle) 3) Tracer dans une même fenêtre l'amplitude et la phase du lieu de Bode de cette fonction de transfert (utiliser semilogX et subplot ; ne pas oublier de marquer les échelles du graphe) Comment obtient-on le lieu de Black-Nichols ? Note importante : le travail ne consiste pas à utiliser la fonction bode appliquée à un second ordre mais à faire le calcul à partir de Gjω .!!! Master ASE M1 - Outils de simulation – 2009-2010 TD/TP Outils de Simulation 3 III–Etude des systèmes dynamiques sous Matlab Rappel: Matlab permet représenter directement les systèmes décrits par leur fonction de transfert. Plusieurs représentations sont possibles : polynomiale, pôles et zéros ou par blocs; le logiciel dispose des outils nécessaires pour passer d'une forme à l'autre et pour étudier les réponses de ces systèmes. • Forme polynomiale (transfert function) On considère que la fonction de transfert Gp est écrite sous la forme : Gp= bm pm bm−1 p m−1 m−1 ... b0 an pn an−1 pn−1 . .. a0 Cette fonction de transfert se définit en Matlab sous forme de deux vecteurs lignes représentatifs des coefficients des polynômes du numérateur et du dénominateur. >> num = [bm bm−1 ... b0 ] et >> den = [an an−1 ... a 0 ] Les noms utilisés pour la description sont génériques (vous pouvez donner un autre nom au numérateur ou au dénominateur) La fonction TF(num, den) permet de construire la fonction de transfert à partir de ses composants (numérateur et dénominateur). • Forme zéros-pôles ( ZPK ) Dans cette représentation, on considère que Gp est représentée sous la forme : Gp= K p −z1... p −zn p −p1... p −pn Cette fonction de transfert se défini en Matlab sous forme de deux vecteurs ligne représentatifs des coefficients des polynômes du numérateur et du dénominateur. >> mes_zeros = [ z1 z 2 ... zn] et >> mes_poles = [ p1 p2 ... pn] La fonction ZPK(mes_zeros, mes_poles, K) permet de construire la fonction de transfert à partir de ses composants (numérateur et dénominateur). Travail demandé 1) Soit la fonction de transfert Gp= p 1 p2 0,5 p 1 Définir cette fonction de transfert dans Matlab par la forme polynomiale. 2) Donner la représentation zéros-pôles de ce système (utiliser zpkdata ). 3) Représenter dans le plan complexe les pôles et zéros (utiliser pzmap) et pointer les pôles et zéros. Noter les résultats donnés par Matlab sur le comportement prévisible en boucle ouverte en déplaçant/cliquant la souris sur le graphique [si votre version de Matlab inclus la fonctionnalité des info-bulles] Master ASE M1 - Outils de simulation – 2009-2010 TD/TP Outils de Simulation 4 • Réponse temporelle Rappel: la réponse temporelle est obtenue sur un système quelconque par simulation. Les différentes possibilités offertes par Matlab sont: impulse(sys) ou y=impulse(sys, t ) calcul de la réponse impulsionnelle pour les instants définis par le vecteur t step(sys) ou y=step(sys, t ) calcul de la réponse indicielle pour les instants définis par le vecteur t y=lsim(sys, u, t ) calcul de la réponse à l'entrée u pour les instants définis par le vecteur t Travail demandé 1) Pour la fonction de transfert précédemment définie, déterminer la réponse indicielle en utilisant le paramétrage par défaut (pas de vecteur temps!). La réponse a-t-elle les propriétés prévues par l'analyse zéros-pôles [info-bulle]? Commentez le résultat. 2) Repérer sur la simulation précédente les bornes temporelles. Construire un vecteur temps de pas T ech = 2s . Simuler la réponse indicielle avec vecteur temps et superposer le résultat au précédent. La méthode de simulation adoptée par Matlab pour les fonctions de transfert est-elle exacte ou approchée ? Master ASE M1 - Outils de simulation – 2009-2010 TD/TP Outils de Simulation 5 • Réponses fréquentielles L'étude fréquentielle est souvent envisagée pour le réglage en boucle fermée d'un système. Cette approche permet d'établir la notion de marge de gain et marge de phase d'un système. Rappel: Les différentes réponses fréquentielles usuelles sont : bode (sys) ou bode(sys,w) lieu de Bode (pour les pulsations du vecteur w) nyquist (sys) ou nyquist(sys,w) lieu de Nyquist (pour les pulsations du vecteur w) nichols (sys) ou nichols(sys,w) lieu de Black (pour les pulsations du vecteur w) margin(sys) calcul des marges de gain et de phase, ainsi que de leur pulsations associées Travail demandé On considère le système bouclé constitué des sous-systèmes K et G suivants: e y G K avec Gp= 0.1 p p2 0,5 p 1 et K gain de bouclage 1) Tracer le lieu de Black/Nichols de la boucle ouverte uploads/s3/ td-matlab-m1ase.pdf
Documents similaires










-
37
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 26, 2022
- Catégorie Creative Arts / Ar...
- Langue French
- Taille du fichier 0.2003MB