Les projets‎ > ‎Scilab-Xcos‎ > ‎Scilab-CPGE‎ > ‎

Réaliser différentes études

Il est possible d'étudier l'influence des différents paramètres du moteur sur sa réponse temporelle à l'aide du bloc PARAM_VAR (dans ‘fonctionnalités avancées’ de la toolbox CPGE).
Intégrer ce bloc au modèle, double-cliquer dessus et renseigner les champs pour, par exemple, étudier l'influence de l'inertie équivalente.
Attention, il faut que les paramètres soient déjà définis dans le contexte pour pouvoir renseigner leurs valeurs.

Valider. Double-cliquer sur l’échelon, entrer un instant initial (pas de temps) de 0.1 (s). Lancer la simulation et renseigner la durée  de calcul (0.5). Une fenêtre s’ouvre et les différentes courbes paramétrées sont tracées et automatiquement mises à l’échelle.

Remarque : pour l’instant le bloc PARAM_VAR ne fonctionne qu’avec le bloc AUTO_SCOPE (ou son équivalent CSCOPE)

Etude fréquentielle

Il est possible de tracer facilement des réponses fréquentielles à partir d'un schéma-bloc. Pour cela, il faut tout d'abord indiquer l'entrée et le sortie du schéma à l'aide de bloc « grandeurs physiques » dans lesquels on peut rentrer le nom de la grandeur considérée. Ces noms seront utilisés comme paramètres pour l’analyse fréquentielle.
Ajouter un bloc REP_FREQ et double-cliquer dessus pour renseigner les paramètres de calcul :
  • choix du type de diagramme : 1 Bode, 2 Black, 3 Nyquist
  • entrée des grandeurs d’entrée et de sortie : on renseigne ici les noms définis dans les blocs grandeurs physiques.
  • bornes de fréquence (pulsation minimale, maximale, nombre de points).

Il est possible également de choisir d’afficher ou non les marges (1 ou 0). Cette option ne fonctionne bien que pour les diagrammes de Bode et de Black.
Valider et lancer la simulation pour voir la réponse fréquentielle s’afficher.

Remarque : l’utilisation des blocs AUTO_SCOPE ou CSCOPE (réponse temporelle) est inactivé lorsque le bloc Bode est utilisé. Il est cependant possible de laisser les blocs AUTO_SCOPE et échelon en place.

Il est enfin possible d'étudier l'influence d'un paramètre sur les réponses fréquentielles du moteur. Il suffit pour cela de combiner les blocs REP_FREQ et PARAM_VAR.

Etude non-linéaire


Le bras Maxpid peut être modélisé par le schéma-bloc suivant qui prend en compte quelques non-linéarités possibles :


Ce schéma tient compte de la saturation de la tension de commande du moteur à 21,1 V et de la non-linéarité de la partie mécanique. Pour cette raison, il est nécessaire de prendre en compte la position initiale du bras. Les effets de la pesanteur ne sont pas pris en compte.


Les valeurs des différents paramètres de ce modèle (hormis les paramètres du moteur) sont données dans le tableau suivant :


Paramètres

Notation

Valeurs

AmplificateurKa0,001
Gain proportionnel du correcteurKpVariable
Constante de force électromotriceKe52,5 10-3 Nm/A
Gain de la chaine de mesure en positionKmes2607 inc/rad

La construction du schéma-bloc ne pose pas de problème particulier. Vous pouvez télécharger le fichier suivant pour éviter de dessiner tout le schéma-bloc. Les blocs non-linéaires se situent dans la palette Non-linéarités.

Pour gagner du temps, une partie du schéma est déjà réalisée dans le fichier maxpid_NL.xcos donné en bas de page.




Ce fichier contient :

  • une consigne sous forme d'un échelon de position (en degrés) un gain pur pour convertir la consigne en degré en radians ;
  • une saturation du moteur qui ne nécessite que la définition des valeurs limites haute et basse (21.1 et -21.1 ici).
  • le modèle de moteur à courant continu identique à celui réaliser précédemment (avec les paramètres définis dans le contexte) ;
  • une fonction non-linéaire représentant la partie cinématique du maxpid. Cette fonction est obtenue à partir d'une fermeture cinématique. Pour renseigner le nombre d’entrées (notées u1, u2,...) et de sorties (notées y1, y2...), il est nécessaire de renseigner après un double clic sur le bloc les deux premières cases : [1,1] pour une entrée (input) ou une sortie (output) ; [1,1;1,1] pour 2 variables ; [1,1;1,1;1,1] pour 3 et ainsi de suite. Cliquer sur OK. Renseigner la fonction dans la fenêtre suivante (y1=f(u1) si un paramètre d’entrée). Ne rien mettre dans les autres fenêtres.
  • un intégrateur qui permet d'obtenir la variation de l'angle du bras à partir de la vitesse du bras
  • un sommateur qui additionne la sortie de l'intégrateur et la position initiale du bras (sous forme d’entrée constante)  pour déterminer la position du bras à chaque instant.

Une fois le schéma complété, il doit ressembler à celui de la figure ci-dessous.

Pour travailler en boucle ouverte ou en boucle fermée, il suffit d’insérer dans la boucle de retour un interrupteur (palette Sortie, bouton SELF_SWITCH

). Vous pouvez commuter entre les modes BO ou BF en double-cliquant sur le bloc.

Pour ajouter une animation 2D du Maxpid, ajouter le bloc MAXPID situé dans la palette Fonctionnalités avancées. Ce bloc prend en entrée un angle en radians. Il nécessite une horloge pour définir le pas de temps (le pas de temps n’est pas forcément le même que pour le scope).

Ce bloc a été réalisé à partir des fonctionnalités graphiques de Scilab. D’autres blocs peuvent être créés sur le même principe (qui dépasse le cadre de ce tutoriel).


ċ
maxpid_NL.xcos
(109k)
David VIOLEAU,
15 janv. 2012 à 09:50
Comments