pid pour asservissement variateur mécanique  RESOLU

Forum traitant des automates industriels de marque Schneider - Telemecanique
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2076
Inscription : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: pid pour asservissement variateur mécanique

Message par philou77 »

Re !

Sur ton tour tu sélectionnes la gamme de vitesse (1 ou 2)
Ensuite la gamme de vitesse te donne une vitesse mini et maxi de la gamme choisie via ton variateur hydraulique.
Le choix de la vitesse finale est fait par le potentiomètre 0-> Mini, 100% Maxi.

C'est juste ?

Pour ta mise à l'échelle de la consigne via le potentiomètre :
Pour la Gamme 1
Etendue = 375 Tr/Min - 50 Tr/ Min = 325
Consigne Tr/min = ((325 tr/Min * Consigne Pts)/4095)+50

Tu peux faire la même chose en remplaçant les Tr/Min par un nombre de points codeur
Etendue = 781-104 = 677
Consigne Pts = ((677 * Consigne Pts)/4095)+104
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
dédé1052
Première mise en service
Première mise en service
Messages : 58
Inscription : 22 juin 2020, 11:15

Re: pid pour asservissement variateur mécanique

Message par dédé1052 »

Salut,

Oui c'est bien ça sauf que ça n'est pas un potentiomètre qui gère la consigne, c'est mon boitier CSMIO. Mais bon il se comporte exactement comme un potentiomètre 0-10V.

Ok pour la mise à l'échelle, moi j'étais parti pour mettre à l'échelle le compteur, toi tu es parti sur la consigne, je vais prendre ta formule.

Pour la suite je soustrais le résultat de ta formule au résultat de l'instruction SPD. Mais c'est après que ça se gâte... Tu me conseilles de faire un PID accélération et un autre décélération, pour réaliser cela je regarde le signe de la soustraction et je fais une condition "si"?

Attention pour la sortie analogique, ça sera du 0/+10v avec 5v si la consigne correspond à la bonne vitesse de rotation.
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2076
Inscription : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: pid pour asservissement variateur mécanique

Message par philou77 »

Re !
dédé1052 a écrit : 04 mai 2022, 18:39 Pour la suite je soustrais le résultat de ta formule au résultat de l'instruction SPD.
Pourquoi soustraire ?

Je tenterais de faire :
Postulat de départ est : Sortie Pilotage Vanne Proportionnelle 0-10V <-> 0 4095 Pts ?

Vitesse Mini Décélérant = 0V -> 0Pts
Vitesse Atteinte = 5V - 2048 Pts
Vitesse Maxi (Accélérant) : Maxi = 10V -> 4095

Mesure ----> Pid Accélère (Valeur de sortie de 0 à 2047)
Consigne|

Mesure ----> Pid Décélère (Valeur de sortie de 0 à 2048)
Consigne|

sortie = 2048 + SortiePidAccélère - Sortie PidDécélère

A moins qu'un pro du pid puisse passer par ici et te donner un conseil car moi je suis pas pro dans la régulation.
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Gigi
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 145
Inscription : 13 janv. 2022, 22:51
Localisation : Tourcoing

Re: pid pour asservissement variateur mécanique

Message par Gigi »

Je veux pas faire de la pub mais le site d’Hervé discours est très bien fait pour expliquer la notion de PID .
Mais je pense que dans ton cas c’est un seul PID qu’il te faut la difficulté ici c’est de bien définir l’écart entre la mesure et la consigne pour ensuite appliquer la correction PID qui va commander ton système, en gros c’est la sortie du correcteur PID qui décide si tu dois accélérer ou décélérer .
Le PID va fournir une consigne ,un mot, qui convertit en V va commander ton variateur.
C'est en forgeant qu'on devient forgeron !
dédé1052
Première mise en service
Première mise en service
Messages : 58
Inscription : 22 juin 2020, 11:15

Re: pid pour asservissement variateur mécanique

Message par dédé1052 »

Salut,

Je viens de regarder quelques tutos d'Hervé Discours, c'est vrai que c'est bien fait, surtout pour les débutants comme moi.
Pour ce qui est de la définition de l'écart entre la mesure et la consigne, je pense qu'on a bien bossé dessus, on ne doit pas être trop mal. Après c'est vrais que pour les paramètres de correction du PID, ça ne va pas être de la tarte... De toutes façons je devrais réaliser beaucoup d'essais pour les déterminer.

Effectivement ça serait bien qu'un pro du PID donne son avis sur ce sujet, personnellement je n'en connais pas.

J'étais tenté de soustraire la consigne à la vitesse réelle afin de déterminer s'il faut accélérer ou ralentir, cela en regardant le signe de la soustraction.
Sinon comment faire?

Oui d'après la doc la sortie analogique c'est 0-4095 pts donc pour 5v Vconsigne=Vréelle c'est bien 2048, ok pour ajouter ça au résultat du PID, je pensais faire la même chose.
Après la division en 2 PID accélération/décélération je ne comprends pas bien...
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2076
Inscription : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: pid pour asservissement variateur mécanique

Message par philou77 »

Salut !

Si j'ai bien compris....
En regardant des post fait par dédé1052 sur un autre forum en 2020 (oui je cherche un peu dédé ;-))
La difficulté ici c'est le variateur hydraulique commandé par un distributeur proportionnel en -0V-10V et son fonctionnement expliqué par dédé1052.
vu que le distributeur proportionnel est un 3 positions (centre en H ?) :
Position centrale = Pression égale des deux cotés du vérin, ça bouge pas
Position Gauche = Montée des vitesses
Position Droite = Descente des vitesses
En cas d'arrêt machine, plus de pression générale, retour en position Droite de l'électrovanne proportionnelle (via ressort de rappel),Ouverture des cônes, vitesse nulle.

à +5V le variateur ne bouge plus (mais il doit bien maintenir sa vitesse, les cônes ne bougent pas)
de 5V à 10V il accélère (et donc déplace ses cônes en les fermant)
de 5V à 0V il décélère (et donc ouvre ses cônes en les ouvrant)

Son but est double :
- Atteindre la vitesse souhaitée (dans la gamme)
- Maintenir la vitesse en fonction des efforts de coupe

Dédé1052 DOIT NOUS VALIDER ce fonctionnement.


Donc Quand :
Mesure = Consigne alors Sortie = 5V
Mesure > Consigne alors Sortie va de 5V à 0V
Mesure < Consigne alors Sortie va de 5V à 10 V

1 seul PID peut faire cela ?
Dernière modification par philou77 le 06 mai 2022, 19:59, modifié 2 fois.
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Gigi
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 145
Inscription : 13 janv. 2022, 22:51
Localisation : Tourcoing

Re: pid pour asservissement variateur mécanique

Message par Gigi »

Je pense que dans un premier temps on cherchait à te faire calculer un écart et te faire appliquer une consigne proportionnelle à cet écart tu risque d’obtenir dans ce cas une erreur statique ( écart consigne mesure) que tu peux corriger , les questions que tu dois te poser :
Un dépassement ( mesure supérieure à la consigne) est il possible?
Dois je avoir un temps de réaction faible?
La stabilité par contre me semble primordiale.
La plupart des automates comportent des blocs fonction PID que tu peux gérer en P,PI où PID , dans ce cas il faut regarder la doc et comprendre le principe du réglage.
Les méthodes de réglages sont soit.
Empirique , des essais des mesures et des calculs de P,I et D.
Soit une méthode manuelle ,on fixe une valeur de P et I et D à 0 et on ajuste un par un les paramètres ( voir la vidéo)
Soit de l’auto réglage, possibilité offerte dans certains automates.
En général c’est plutôt un mix pour obtenir un bon compromis.
Regarde dans la doc peut-être trouveras tu ton bonheur.
C'est en forgeant qu'on devient forgeron !
dédé1052
Première mise en service
Première mise en service
Messages : 58
Inscription : 22 juin 2020, 11:15

Re: pid pour asservissement variateur mécanique

Message par dédé1052 »

Salut,

Pour ce qui est du dépassement, oui c'est possible. Pour le temps de réaction, là je ne sais pas trop. D'après mes souvenirs lorsque la broche était à l'arrêt et que je demandait une vitesse en plage moyenne, ça mettait peut être une seconde ou 2 pour y parvenir. D'ailleurs on entendait clairement un dépassement de vitesse puis une décélération pour arriver à la vitesse de consigne.
Oui c'est primordiale d'avoir une stabilité.

Quand je regarde la doc PID sur le site Lollette, je n'ai pas l'impression qu'on puisse faire de l'auto réglage, ils nous donnent la marche à suivre pour un réglage manuel...

Tu as tout compris Philou77 et effectivement ça n'est pas mon premier forum, le 4ème en fait... Mais c'est celui ci qui m'apporte le plus de réponses en grande partie grâce à toi, encore merci. Je m'accroche pour terminer ce projet mais ça n'est pas simple quand on y connait rien et quand ça ne va pas fort coté vie privée. J'espère y parvenir.

Je te confirme donc ce fonctionnement.

A noter que le distributeur proportionnel est à l'origine en 0-24v, j'ai ajouté un boitier d'amplification de la même marque (ATOS E-MI-AC) pour faire la transition entre l'automate et le distributeur.
dédé1052
Première mise en service
Première mise en service
Messages : 58
Inscription : 22 juin 2020, 11:15

Re: pid pour asservissement variateur mécanique

Message par dédé1052 »

Bonjour à tous,

J'ai procédé à un essai de régulation PID, mais en tournant la broche à la main, juste histoire de voir ce que fourni le PID en résultat.
J'ai finalement opté pour la mise à l'échelle du compteur et non de la consigne car c'est plus facile pour moi de visualiser un résultat sur 0-4095pts.
Cela se comporte plutôt bien, lorsqu'il y a une grosse différence entre la consigne et la vitesse réel, on a bien un résultat de PID élevé et inversement quand c'est faible. Evidement je n'ai pas testé la stabilité en tournant la broche à la main...

constats :
- j'ai remarqué une erreur au niveau de la consigne, l'échelle n'est pas bonne et le 50tr/min est affiché aux alentour de 500/600pts sur l'automate. Bon ça c'est un problème de config sur le logiciel de commande de la machine, je n'en ai pas encore trouvé l'origine.

- lorsque la broche est à l'arrêt, j'ai un résultat de comptage à -624 avec la mise à l'échelle sur 0/4095, ainsi qu'un résultat négatif lorsque la broche tourne à moins de 50tr/min. Cela est logique, je suis censé travailler entre 50 et 375tr/min. Cela ne me dérange pas plus que ça, je comptais mettre un relais sur la sortie analogique. En effet je dois couper le signal de sortie lorsque la broche est à l'arrêt, et je dois activer le signal environ 1seconde ou 2 après la mise en route du moteur de broche, ceci dans le but d'éviter des écrasements de courroie. Est-ce que le fait de couper le signal analogique peut poser des problèmes, par exemple des surtensions au moment du changement d'état du relais?

- lorsque la vitesse réelle commence à s'approcher de la consigne, le résultat du PID s'approche de 0, ce qui est normal. Mais quand la vitesse réelle dépasse faiblement ou fortement la consigne, le résultat du PID reste à 0.
J'avais mis des limites de résultat entre 0/4095, puis j'ai eu l'idée de mettre -4095/4095. Du coup lors d'un dépassement on a plus 0 mais une valeur négative donc un résultat de PID exploitable à mon sens. Qu'en pensez vous? je pars dans cette direction, c'est à dire avec un seul PID?

Pour les paramètres PID, j'ai mis :
1: Kp= 15%
2: Ki= 0%
3: Kd= 0% (je règlerai ces 3 premiers paramètres avec de nombreux essais...)
4: seuil erreur 20
5: limite supérieur 4095
6: limite inférieur -4095
7: type de PID absolue
8: veille 0 (à à quoi ça correspond?)
9: seuil de l'intégrale 0 (dois-je le laisser à 0?

Merci pour votre aide
dédé1052
Première mise en service
Première mise en service
Messages : 58
Inscription : 22 juin 2020, 11:15

Re: pid pour asservissement variateur mécanique

Message par dédé1052 »

Bonjour,

Malheureusement ça sent l'abandon de projet. j'ai voulu tester la sortie analogique de l'automate en la connectant sur ma carte d'amplification Atos. J'ai mis 2047pts sur cette sortie, j'ai bien mesuré 5V pile poil. Mais sur la sortie de la carte d'amplification j'ai mesuré 23V. J'ai d'abord pensé qu'il s'agissait d'un problème de mise à l'échelle, j'ai donc tenté de régler les potards de la carte, en vain. J'ai obtenu 0 ou 23v. J'en ai déduit qu'elle était HS, peut-être une mauvaise manip lors de mes précédents essais. J'ai donc fait la même manip sur mon autre carte, et ça m'a fait la même chose. Je suis dégouté, les 2 sont HS. J'ai vérifié mes cablages, il n'y avait pas d'erreur. J'ai fait l'essai en plaçant un potard sur la consigne de la carte au lieu de l'automate, ça me fait la même chose, alors que ça fonctionnait très bien auparavant. Je précise que j'avais placé un relai sur cette consigne carte, pensez vous que c'est cela qui a cramé mes cartes? J'aurais dû brancher ce relai sur une entrée digitale de l'automate et faire fonctionner la sortie analogique uniquement si cette entrée était active.
Répondre