IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Régulation de température avec PID


Sujet :

Arduino

  1. #21
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    J'ai mis en oeuvre ta solution f-leb : ça marche les quelques premières minutes mais au bout d'un certain moment, le relais ne bascule plus en mode ON même si la température n'atteint pas la température de consigne.

    @Vincent : la température est de l'ordre de 80-90 °C

    Ci-après une copie d'écran de mon suivi de température à l'aide de l’hystérésis
    Nom : testèregulation.jpg
Affichages : 1100
Taille : 27,6 Ko
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  2. #22
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    C'est quoi cette consigne qui oscille ? (le trait fin du graphique)

    Une consigne c'est fixe, surtout avec un réglage par hystérèse. Sur une hystérèse on réduit l'oscillation en réduisant la grandeur de l'hystérèse (jusqu'à devenir instable car on rentre dans le bruit de mesure).
    Pour un réglage par PID et PWM (et oui avec le relai c'est du PWM à très base fréquence), les grandeurs perturbantes (la variation de la circulation d'air autour de la barre) doivent avoir une constante de temps de 5 à 10 fois supérieur à la période PWM pour que cela marche correctement, et avec le relais et sa constante de temps en 10aines de secondes, j'ai le sentiment que ce n'est pas le cas.

    Delias

  3. #23
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    Citation Envoyé par Delias Voir le message
    C'est quoi cette consigne qui oscille ? (le trait fin du graphique)
    Ce n'est pas la consigne : j'ai juste modélisé par un signal sinusoidal la partie de régulation pour connaître l'amplitude par rapport à la valeur de consigne : comme j'ai fait plusieurs essais en variant la valeur de l'hystérésis.
    Un bout du programme correspondant est celui-là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    float temperature = sensors.getTempCByIndex(0);
      if (testMontee == 0)
      {
     
        if (temperature <= tempConsigne - ecartTemp)
        {
          digitalWrite(relais, HIGH);
          testRelais = 1;
        }
        else
        {
          digitalWrite(relais, LOW);
          testRelais = 0;
          testMontee = 1;
        }
      }
      if (testMontee == 1)
      {
     
        if (temperature <= tempConsigne + ecartTemp)
        {
          digitalWrite(relais, HIGH);
          testRelais = 1;
        }
        else
        {
          digitalWrite(relais, LOW);
          testRelais = 0;
        }
        if (temperature >= tempConsigne - ecartTemp)
        {
          digitalWrite(relais, LOW);
          testRelais = 0;
        }
        else
        {
          digitalWrite(relais, HIGH);
          testRelais = 1;
        }
    La variable testMontee me permet de différencier la 1ère montée en température des suivantes.
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  4. #24
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 187
    Points : 11 568
    Points
    11 568
    Par défaut
    Tu as les spécs de la résistance chauffante ? Sa résistance ? Une doc peut-être ?
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  5. #25
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    Citation Envoyé par Vincent PETIT Voir le message
    Tu as les spécs de la résistance chauffante ? Sa résistance ? Une doc peut-être ?
    la doc non (j'ai pris une que je trouvais dans la boite à trouvailles du labo! !)

    C'est une RH25 7ohm
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  6. #26
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    Bonjour

    Pourrait-on avoir les ordres de grandeur de la mesure et la valeur de l'écart utilisé pour l'hystérèse ? Je lis 3,5 oscillations en 600 secondes, ai-je juste ? Car si c'est bien cela, l'écart de l'hystérèse est réglé bien trop grand.

    Ici c'est un système avec une certaine inertie et du retard (le temps que la température émise par la résistance met pour arriver à la mesure). C'est presque les bonnes conditions pour avoir un écart quasi nul pour le réglage par hystérèse. Seul une protection contre le bruit de mesure est nécessaire (soit sous la forme d'un écart faible, soit sous la forme d'un anti-rebond logiciel).

    Bonne suite

    Delias

  7. #27
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    Citation Envoyé par Delias Voir le message
    Pourrait-on avoir les ordres de grandeur de la mesure et la valeur de l'écart utilisé pour l'hystérèse ? Je lis 3,5 oscillations en 600 secondes, ai-je juste ?
    A partir du programme mis post précédent, j'ai réglé l'écart de température sur 0.4 (c'est la valeur qui m'a donné le moins d'amplitude des oscillations) et une température de consigne de 80°C.
    Pour la fréquence, je lis 6 oscillations en 1000s qui correspond à la valeur que tu indiques (je n'ai plus le fichier sous la main ce week-end donc je n'ai pas accès à la valeur modélisée. : après vérification sur le fichier source, la période modélisée des oscillations est de 171 s (compatible donc avec les mesures graphiques)
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  8. #28
    Expert confirmé

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2013
    Messages
    1 324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2013
    Messages : 1 324
    Points : 4 134
    Points
    4 134
    Par défaut Ohm sweet Ohm
    Bonjour,

    Citation Envoyé par nlbmoi Voir le message
    C'est une RH25 7ohm
    En rapprochant cette valeur d'un précédent message où il est fait état d'une alimentation 20V limitée à 2A, la puissance délivrée sera très loin des 40W. En effet, la limitation de courant à 2A prendra le pas sur la tension de consigne (au lieu de (20 V)²/7 Ohm soit 57 W nous aurons (2 A)²*7 Ohm soit 28 W). Peut être que ce n'est pas un problème : est-ce que le résistance alimentée en permanence permet d'avoir une température sensiblement supérieure à celle souhaitée ?

    Autre chose, plus la régulation souhaitée sera fine (avec une ondulation limitée) plus le relais va basculer souvent d'un état dans l'autre. Or un relais est un organe électro-mécanique dont la durée de vie est directement liée au nombre de basculement. Un passage en électronique pure pourrait être un plus d'autant qu'il ouvre la porte à une commande pseudo analogique (PWM) et donc, entre autres, celle des PID.

    Salutations
    Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better. (Samuel Beckett)

  9. #29
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    Citation Envoyé par Guesset Voir le message
    Autre chose, plus la régulation souhaitée sera fine (avec une ondulation limitée) plus le relais va basculer souvent d'un état dans l'autre. Or un relais est un organe électro-mécanique dont la durée de vie est directement liée au nombre de basculement. Un passage en électronique pure pourrait être un plus d'autant qu'il ouvre la porte à une commande pseudo analogique (PWM) et donc, entre autres, celle des PID.
    Je suis preneur de toute solution : j'ai utilisé un relais initialement car c'était facile à mettre en oeuvre pour un premier essai.
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  10. #30
    Membre expérimenté
    Profil pro
    chercheur
    Inscrit en
    Avril 2004
    Messages
    830
    Détails du profil
    Informations personnelles :
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : chercheur

    Informations forums :
    Inscription : Avril 2004
    Messages : 830
    Points : 1 453
    Points
    1 453
    Ce qui s'énonce clairement se conçoit bien ( Le hautbois)

  11. #31
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 187
    Points : 11 568
    Points
    11 568
    Par défaut
    Citation Envoyé par Guesset Voir le message
    est-ce que le résistance alimentée en permanence permet d'avoir une température sensiblement supérieure à celle souhaitée ?
    A priori oui si j'en crois la doc https://www.mouser.fr/datasheet/2/427/rhnh-1762472.pdf

    Nom : path19419.png
Affichages : 970
Taille : 150,2 Ko

    Cette résistance peut dissiper 25W @25°C lorsqu'elle est posée sur un dissipateur de 1077,42cm² de surface (somme de la surface de la base du dissipateur et de toutes les ailettes). Ça c'est la condition de test du constructeur.

    Nom : path18953.png
Affichages : 929
Taille : 35,9 Ko

    Cela veut dire que la résistance thermique globale (résistance dans son boîtier alu + le dissipateur de 1077,42cm²) est de : Rth = TMAX - TAMBIANTE / PMAX
    Rth = 250°C - 25°C / 25W
    Rth = 9°C/W

    1W dissipé par la résistance fixée sur son dissipateur fera augmenter la température de 9°C en plus de la température ambiante.
    5W dissipés par la résistance fixée sur son dissipateur fera augmenter la température de 45°C en plus de la température ambiante.
    10W dissipé par la résistance fixée sur son dissipateur fera augmenter la température de 90°C en plus de la température ambiante.
    Ainsi de suite

    Le constructeur dit qu'il a atteint 25W à 25°C

    Dans l'air donc sans dissipateur c'est un peu différent :

    Nom : ellipse18951.png
Affichages : 929
Taille : 13,2 Ko

    Nom : text18963.png
Affichages : 958
Taille : 49,8 Ko

    La doc dit que la résistance ne peut dissiper que la moitié de sa puissance soit 12.5W @ 25°C.
    Rth = 250°C - 25°C / 12.5W
    Rth = 18°C/W

    nlbmoi, ça serait intéressant de faire un essai de vérification avec deux thermomètres pour voir si en appliquant 3V aux bornes de la résistance de 7Ω seule donc non posée sur une surface dissipante (soit un courant d'un peu moins de 500mA) on devrait lui faire dissiper 1.28W et sa température devrait monter à 23°C au dessus de la température ambiante.



    Citation Envoyé par Guesset Voir le message
    Un passage en électronique pure pourrait être un plus d'autant qu'il ouvre la porte à une commande pseudo analogique (PWM) et donc, entre autres, celle des PID.
    Tout à fait, on rendrait plus linéaire la commande du PID.
    Pour ça on pourrait remplacer le relais par de l'électronique mais avec des courants allant jusque 2A ça se complique d'un point de vu thermique.

    Un générateur de courant variable ressemble à ça :


    RL est à remplacer par la résistance RH025 7Ω et il faudrait équiper le transistor d'un sacré dissipateur.

    Par exemple,
    V+ = 20V
    Vin = 1V
    Alors il passera un courant Iout = 1A au travers de la RH025, du transistor et de la 1Ω

    Donc :
    Aux bornes de la 7Ω : un tension de 7V va apparaître et elle va dissiper R*I² ou U²/R, soit 7W
    Aux bornes de la 1Ω : un tension de 1V va apparaître et elle va dissiper R*I² ou U²/R, soit 1W
    Aux bornes du transistor les jeux sont faits : forcément un tension de 16V va apparaître (parce que 16V + 1V + 7V = 20V de V+)... et il va dissiper forcément 12W (parce que 12W + 1W + 7W = 20W de l'alimentation puisqu'elle est de 20V et se voit débiter un courant de 1A), en fait le transistor va se comporter comme une résistance de 12Ω (parce que 12Ω + 1Ω + 7Ω = 20Ω et 20Ω c'est R globale vue de l'alimentation de 20V de V+... 20V / Iout de 1A = 20Ω)

    8W pour un transistor, il faut déjà un bon radiateur. Un transistor comme proposé avant ne dépasse pas les 2.5W sans aucun radiateur/dissipateur.


    C'est jouable mais il faut avoir un AOP (voir si tu en as sous la main et quelles marques) et un bon dissipateur pour le transistor.
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  12. #32
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 187
    Points : 11 568
    Points
    11 568
    Par défaut
    Citation Envoyé par Guesset Voir le message
    une commande pseudo analogique (PWM)
    Oui on pourrait aussi attaquer en PWM un transistor MOS pour faire du découpage afin de régler le courant moyen passant dans la résistance chauffante. Le montage serait plus simple mais demandera une petite mise au point car un transistor MOS c'est facile d'emploi sauf quand il s'agit de puissance ; il faut faire attention aux temps de commutation, se préoccuper de l'évacuation des charges accumulées dans les capa parasites (c'est très capacitif un MOS), soigner l'attaque de la grille en tension mais aussi en courant.

    C'est faisable aussi !

    Voici un exemple concret d'une mauvaise attaque de la grille du MOS, le transistor de découpe pas de manière franche et il va dissiper fortement durant ce problème.

    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  13. #33
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    Citation Envoyé par Vincent PETIT Voir le message

    nlbmoi, ça serait intéressant de faire un essai de vérification avec deux thermomètres pour voir si en appliquant 3V aux bornes de la résistance de 7Ω seule donc non posée sur une surface dissipante (soit un courant d'un peu moins de 500mA) on devrait lui faire dissiper 1.28W et sa température devrait monter à 23°C au dessus de la température ambiante.
    Comme c'est les vacances, je n'ai pas accès au matériel.
    Je reviens vers vOus d'ici 2 semaines avec l'essai.
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

  14. #34
    Membre éprouvé

    Homme Profil pro
    Technicien
    Inscrit en
    Août 2013
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2013
    Messages : 437
    Points : 1 190
    Points
    1 190
    Par défaut
    Citation Envoyé par Vincent PETIT Voir le message

    nlbmoi, ça serait intéressant de faire un essai de vérification avec deux thermomètres pour voir si en appliquant 3V aux bornes de la résistance de 7Ω seule donc non posée sur une surface dissipante (soit un courant d'un peu moins de 500mA) on devrait lui faire dissiper 1.28W et sa température devrait monter à 23°C au dessus de la température ambiante.
    J'ai fait l'essai
    - tension d'alimentation : 3.2V ; intensité délivrée : 0.37A --> puissance électrique fournie à la résistance 1.18 W
    - température initiale : 18.50 °C ; température d'équilibre : 38.50 °C --> un écart donc de 20 °C
    [Nouveau] Envie de tracer des circuits électriques : essayez le package LaTeX CircuiTikZ

    Pour créer une belle table des matières sur LibreOffice - N'oubliez pas de consulter les FAQ en cas de question !

    Envie de se lancer dans l'aventure Arduino : allez faire un tour sur ce cours.


    Ma réponse vous a plu ? Un petit vote serait sympa

Discussions similaires

  1. Régulation température avec un seul capteur
    Par DavidBoulouart dans le forum Automation
    Réponses: 22
    Dernier message: 09/02/2016, 22h29
  2. Réponses: 5
    Dernier message: 05/06/2009, 16h28
  3. Régulation de température
    Par bennacer dans le forum LabVIEW
    Réponses: 9
    Dernier message: 18/05/2009, 09h05
  4. [LabVIEW 8.6] Régulation de température en temps réel
    Par polo_olop dans le forum LabVIEW
    Réponses: 8
    Dernier message: 08/04/2009, 08h15
  5. Réponses: 4
    Dernier message: 22/11/2007, 10h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo