Répondre à la discussion
Affichage des résultats 1 à 27 sur 27

réalisation d'un régulateur de température PID



  1. #1
    redtronic

    Exclamation réalisation d'un régulateur de température PID

    Bonjour à tous,
    voila, je veux réaliser un régulateur de température PID pour un four industrielle avec un pic16f877, le probleme c'est que je suis pas tres fort en maths ,
    une amie m'avais donner une formule de transfert: H(p)= 1.01* exp(-689*p) / (1+1680*p). je veux l'ecrire en C, un coup de main est le bienvennu, merci d'avance.

    -----

    Redtronic

  2. Publicité
  3. #2
    gcortex

    Re : réalisation d'un régulateur de température PID

    voir bas page 2 et bas page 3 :
    http://g-cortex.franceserv.com/pdf/C...rvissement.pdf

    + gradateur à train d'onde par tranches de 10%
    Dernière modification par gcortex ; 30/03/2011 à 12h37.

  4. #3
    gcortex

    Re : réalisation d'un régulateur de température PID

    avec delta-sigma 24 bits
    vu le prix d'un four, tu peux même investir dans un pic18

  5. #4
    redtronic

    Re : réalisation d'un régulateur de température PID

    merci gcortex, je vais voir ton lien.
    Redtronic

  6. #5
    DAUDET78

    Re : réalisation d'un régulateur de température PID

    Si tu dois réguler un four industriel ... utilise un régulateur tout fait !
    L'age n'est pas un handicap .... Encore faut-il arriver jusque là pour le constater !

  7. A voir en vidéo sur Futura
  8. #6
    Forhorse

    Re : réalisation d'un régulateur de température PID

    Il y'a quelque temps j'ai travaillé sur un regulateur PID a base de 16F876
    Le but était de reguler une tension et non pas une temperature, mais le principe est quasi le même (sauf l'action qui est direct à la place d'inverse)
    Je m'était inspiré de divers exemples trouvé sur le net, mais tous montrent le même principe.

    Il n'y a pas de constante de temps, car si la routine est appelée à intervalle regulier (toujours identique) celle-ci se retrouve fatalement integrée dans les constantes de reglage
    ça marchait pas trop mal, le plus délicat étant de trouver le bon reglage des trois bandes.

    Mon code est en basic, mais le principe est là (ça devrait pas être difficile de traduire ça en C, c'est que des calculs)
    Code:
        'Calcul de l'écart mesure - consigne
        errorPID = mesurePID - intConsigne
        diffErrorPID = errorPID - lastErrorPID  'difference de l'erreur du cycle précendent (bande D)
        sumErrorPID = sumErrorPID + errorPID    'cumul des erreurs (Bande I)
        'Limitation de l'action de la bande integrale
        If sumErrorPID > 25500 Then sumErrorPID = 25500
        If sumErrorPID < -25500 Then sumErrorPID = -25500
        
      
       Clear actionPID
       Clear intTemp
       'Calcul de la bande proportionnelle
       intTemp = errorPID * intkP
       actionPID = intTemp / 10
           
      
       Clear intTemp
       'Calcul de la bande integrale
       intTemp = sumErrorPID * intkI
       intTemp = intTemp / 1000
       actionPID = actionPID + intTemp
       
       Clear intTemp
       'Calcul de la bande dérivée
       intTemp = diffErrorPID * intkD
       intTemp = intTemp / 100
       lastErrorPID = errorPID
        
       actionPID = actionPID + intTemp
    Dernière modification par Forhorse ; 30/03/2011 à 13h03.

  9. Publicité
  10. #7
    Forhorse

    Re : réalisation d'un régulateur de température PID

    Citation Envoyé par DAUDET78 Voir le message
    Si tu dois réguler un four industriel ... utilise un régulateur tout fait !
    C'est vrai que vu le prix d'un regulateur, ça vaut pas le coup de s'embêter, surtout qu'ils integrent maintenant tous une fonction d'autoreglage.
    Et regler un PID pour reguler la temperature d'un four industriel, c'est loin d'être facile ! (j'ai déjà donné, j'y ai passé 2 jours)

  11. #8
    redtronic

    Re : réalisation d'un régulateur de température PID

    Citation Envoyé par DAUDET78 Voir le message
    Si tu dois réguler un four industriel ... utilise un régulateur tout fait !
    Bonjour Daudet78,
    oui acheter un régulateur c'est plus simple, mais moi je veux le réaliser et je suis très curieux de voir le résultat.
    J'ai réaliser pas mal d'automates pour des machines industrielles, et maintenant je me penche sur le domaine des fours.
    Redtronic

  12. #9
    redtronic

    Re : réalisation d'un régulateur de température PID

    Bonjour Forhorse,
    merci pour votre message, je vais essayer de comprendre et traduire votre code en C.
    Redtronic

  13. #10
    Forhorse

    Re : réalisation d'un régulateur de température PID

    Attention quand même, mon code réalise un PID a action directe. Pour réguler la chauffe il faut un PID a action inverse. Il y a une adaptation à faire.

  14. #11
    redtronic

    Re : réalisation d'un régulateur de température PID

    bonjour à tous,
    se que je veux réaliser est de pouvoir sélectionner le mode de régulation P, PI, PD ou PID, de modifier Kp, Ti et Td dans un menu... j'aimerais bien que quelqu’un m'explique le fonctionnement de ce type de régulation ou me donner un exemple. merci d'avance .
    Redtronic

  15. #12
    redtronic

    Re : réalisation d'un régulateur de température PID

    Bonjour Forhorse,
    quelle est la différence entre une action directe et inverse? es-qu'un relais classique branché sur la sortie du régulateur fait l'affaire ou bien un relais statique(sortie analogique)?
    Redtronic

  16. Publicité
  17. #13
    Forhorse

    Re : réalisation d'un régulateur de température PID

    Action directe : Si la mesure est inférieure à la consigne, alors la sortie du régulateur tend à diminuer
    exemple : régulation de refroidissement
    Action inverse : Si la mesure est inférieur à la consigne, alors la sortie du régulateur tend à augmenter.
    exemple : régulation de chauffage

    Après en sortie d'une routine PID tu as une valeur sous forme d'une fraction (%; x/255, etc...)
    C'est à toi ensuite de traiter cette valeur pour l'adapter à ton process : sortie analogique, PWM, train d'ondes, etc...

  18. #14
    BastienBastien
    Invité

    Re : réalisation d'un régulateur de température PID

    Hi,

    Citation Envoyé par Forhorse Voir le message
    Action directe : Si la mesure est inférieure à la consigne, alors la sortie du régulateur tend à diminuer
    exemple : régulation de refroidissement
    Action inverse : Si la mesure est inférieur à la consigne, alors la sortie du régulateur tend à augmenter.
    exemple : régulation de chauffage
    En fait ça dépend si tu calcules l'erreur epsilon avec un '+' ou un '-' sur l'entrée attribuée à la mesure, right ?

    Ton projet est intéressant, redtronic !
    Je vais suivre ce thread !

  19. #15
    Forhorse

    Re : réalisation d'un régulateur de température PID

    C'est une convention en ce qui concerne les régulateur PID (cf. notice de plusieurs régulateurs du commerce)
    Après, n'ayant jamais eu besoin que d’implémenter un régulateur à action inverse, j'avoue ne m'être jamais penché si la différence vient de la façon de calculer l'erreur ou d'un autre point du calcul.

  20. #16
    redtronic

    Re : réalisation d'un régulateur de température PID

    Citation Envoyé par Forhorse Voir le message
    ... Après en sortie d'une routine PID tu as une valeur sous forme d'une fraction (%; x/255, etc...)
    C'est à toi ensuite de traiter cette valeur pour l'adapter à ton process : sortie analogique, PWM, train d'ondes, etc...
    bonjour Forhorse,
    d'abord je vous remercie pour votre gentillesse.
    prenons un exemple:
    consigne=60°C,
    température mesurée=80°C,
    DeltaErr=20
    pouvez vous m’écrire ces valeurs dans les fonctions de transfert pour (P, PI, PD, PID) on sachant que j'utilise une PT100, et en sortie de l'étage d'adaptation on a:
    0V = 0x00 hex =>0°C
    et
    5V = 0xFF hex =>100°C
    Redtronic

  21. #17
    redtronic

    Re : réalisation d'un régulateur de température PID

    Citation Envoyé par BastienBastien Voir le message
    ...Ton projet est intéressant, redtronic !
    Je vais suivre ce thread !
    bonjour BastienBastien,
    merci . oui, ce projet est très intéressant, normalement j'ai pas de problème de programmation en C, mes pour la correction, c'est des maths: (moi != maths)
    Redtronic

  22. #18
    Forhorse

    Re : réalisation d'un régulateur de température PID

    c'est pas des maths bien compliqué, si tu regardes l'exemple que je t'ai donné, il n'y a que des additions, soustractions, multiplications et divisions.
    Avec un compilateur C ça ne pose aucun probleme (j'y arrive bien en BASIC alors qu'il parait que le BASIC est moins performant que le C..."

  23. Publicité
  24. #19
    stefjm

    Re : réalisation d'un régulateur de température PID

    Citation Envoyé par Forhorse Voir le message
    C'est une convention en ce qui concerne les régulateur PID (cf. notice de plusieurs régulateurs du commerce)
    Je n'ai jamais compris d'où cela venait!

    Tous les cours de régulation que j'ai pu trouvé calculent l'erreur comme étant la consigne moins la mesure, ce qui parait tout à fait logique. (L'erreur, c'est bien la différence entre ce qu'on veut et ce qu'on obtient...)
    http://fr.wikipedia.org/wiki/Automat...me_boucl.C3.A9

    Certains régulateurs industriels font le contraire! erreur=mesure-consigne.

    Après c'est le souk avec les actions directes et inverses! (un simple signe sur les coeff du correcteur)
    Citation Envoyé par Forhorse Voir le message
    Après, n'ayant jamais eu besoin que d’implémenter un régulateur à action inverse, j'avoue ne m'être jamais penché si la différence vient de la façon de calculer l'erreur ou d'un autre point du calcul.
    Sans me pencher sur les signes, je ne saurais pas le programmer juste du premier coup.
    Moi ignare et moi pas comprendre langage avec «hasard», «réalité» et «existe».

  25. #20
    redtronic

    Re : réalisation d'un régulateur de température PID

    salut Forhorse,
    pour ton programme en basic, c'est une régulation série normalement ou bien parallèle?
    Redtronic

  26. #21
    Forhorse

    Re : réalisation d'un régulateur de température PID

    je sais pas ce que c'est...
    C'est quoi la différence entre les deux ?

  27. #22
    redtronic

    Re : réalisation d'un régulateur de température PID

    Citation Envoyé par Forhorse Voir le message
    je sais pas ce que c'est...
    C'est quoi la différence entre les deux ?
    salut,
    ben ya la régulation série, parallèle et mixte, la différence je sais pas!
    Redtronic

  28. #23
    redtronic

    Re : réalisation d'un régulateur de température PID

    type de régulation: voir le tableau.
    Images attachées Images attachées
    Redtronic

  29. #24
    Forhorse

    Re : réalisation d'un régulateur de température PID

    Si tu comprends quelque chose à ces diagrammes (moi non) alors tu pourras certainement trouver la réponse toi même en lisant mon code.

  30. Publicité
  31. #25
    redtronic

    Re : réalisation d'un régulateur de température PID

    salut, non moi aussi je suis comme toi, j'aimerais bien que quelqu’un m'explique la différence.
    Redtronic

  32. #26
    redtronic

    Re : réalisation d'un régulateur de température PID

    bonjour tout le monde, j'ai besoin d'aide svp pour réaliser ce montage!
    Redtronic

  33. #27
    stefjm

    Re : réalisation d'un régulateur de température PID

    Salut,
    Tu prends par exemple le PID parallèle.
    Tu le discrétises en remplaçant p par (1-z^-1)/Te.
    La multiplication par z^-1 est l'opérateur retard.
    Tu trouves alors l'équation de récurrence qui donne la commande à l'instant présent en fonction des erreurs passée et des commandes passées.
    Tu satures la commande au max et min admis.
    Tu gères la mémorisation du passé pour le coup d'après.
    Tu veilles à exécuter périodiquement à Te le calcul de la commande.

    C'est ce que fait l'algo donné par Forhorse.(J'ai pas vérifié quel correcteur il implémente.)
    Moi ignare et moi pas comprendre langage avec «hasard», «réalité» et «existe».

Sur le même thème :

Discussions similaires

  1. realisation d'un pid pour réguler un débit
    Par maciste07 dans le forum Électronique
    Réponses: 3
    Dernier message: 18/05/2009, 16h27
  2. regulateur pid de temperature
    Par waela007 dans le forum Électronique
    Réponses: 5
    Dernier message: 20/04/2009, 20h10
  3. Sortie contact Régulateur PID de température
    Par electahar dans le forum Électronique
    Réponses: 2
    Dernier message: 24/07/2008, 11h45
  4. analyse d'un régulateur PID de température
    Par kesamba dans le forum Électronique
    Réponses: 5
    Dernier message: 02/06/2008, 09h07
  5. analyse d'un regulateur PID en cascade
    Par kesamba dans le forum Électronique
    Réponses: 0
    Dernier message: 06/03/2008, 12h50