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

comment créer une résistance variable via un arduino



  1. #1
    rodymary

    comment créer une résistance variable via un arduino


    ------

    Bonjour,

    Voici mon besoin :
    Ma chaudière viessmann possède une régulation sur loi d'eau, càd qu'elle ajuste la puissance de son brûleur selon la température extérieure.
    Pour cela elle est reliée à une sonde de température extérieure, qui est une simple résistance variable selon la température (modèle NTC10K donc étalonée à 10Kohms pour 25°, la plage d'utilisation classique est d'environ 5K lorsqu'il fait 40° jusqu'à 100K s'il fait -20°).
    Le problème est que la courbe de cette loi d'eau n'est pas réglable sur mon modèle de chaudière, et donc j'ai froid quand il fait doux l'hiver, et trop chaud quand il fait très froid.
    Sur des chaudière un peu plus haut de gamme on peut régler la pente de cette courbe pour l'adapter à l'isolation de sa maison, pas moi, snif.

    Et la solution que j'imaginais :
    "Leurrer" ma chaudière en créant une résistance variable pilotée par un arduino.
    Le principe que je voyais était le suivant : je lis la résistance de la sonde extérieure via un arduino, ça je sais faire, puis je pilote un potentiomètre numérique de type MCP41100 selon une courbe choisie pour créer une résistance variable.

    L'idée me semble bonne mais n'étant pas électronicien j'aimerais avoir votre avis avant de tester cela.
    Merci de votre aide

    -----

  2. Publicité
  3. #2
    jiherve

    Re : comment créer une résistance variable via un arduino

    bonsoir,
    dans le principe cela fonctionne mais le diable se cache dans les détails.
    Comment la resistance est elle utilisée par la chaudière ?
    JR
    l'électronique c'est pas du vaudou!

  4. #3
    gcortex

    Re : comment créer une résistance variable via un arduino

    Une résistance de 4.7K et un transistor (BC547) piloté par une sortie PWM (avec condensateur de 470nF).
    Dernière modification par gcortex ; 25/01/2020 à 08h39.

  5. #4
    gienas
    Modérateur

    Re : comment créer une résistance variable via un arduino

    Bonjour à tous

    Citation Envoyé par jiherve Voir le message
    ... dans le principe cela fonctionne mais le diable se cache dans les détails.
    Comment la resistance est elle utilisée par la chaudière? ...
    C'est aussi ma crainte.

    Il faudrait savoir impérativement à quelle référence est portée la sonde.

    Citation Envoyé par gcortex Voir le message
    Une résistance de 4.7K et un transistor (BC547) piloté par une sortie PWM (avec condensateur de 470nF).
    Est-il possible de savoir à quoi correspond cette "proposition"? Comment s'organise-t-elle?

    Je rappelle que l'objectif c'est de présenter, entre deux bornes, une résistance de valeur connue.

  6. A voir en vidéo sur Futura
  7. #5
    gcortex

    Re : comment créer une résistance variable via un arduino

    oui avec une alim flottante pour l'arduino, sinon une borne à la masse.
    Si le rapport cyclique vaut 1/2, le courant est divisé par 2, donc la résistance doublée.

  8. #6
    gcortex

    Re : comment créer une résistance variable via un arduino

    Une CTN se pré-linéarise. çà doit se faire aussi avec une CTP.
    cad une résistance de 10K en série. ou une vraie mesure :
    http://www.ti.com/lit/ds/symlink/lm35.pdf (ou capteur numérique DS?)

    Côté prog, des arcs de parabole :
    https://fr.wikipedia.org/wiki/Th%C3%...A8me_de_Taylor
    Dernière modification par gcortex ; 25/01/2020 à 11h05.

  9. Publicité
  10. #7
    rodymary

    Re : comment créer une résistance variable via un arduino

    Bonjour à tous et merci pour toutes ces réponses.
    Avant d'essayer de vous comprendre, car c'est assez technique, je me permets de vous schématiser un peu plus l'existant puis mon idée de montage.

    L'existant :
    situation actuelle.JPG

    Le projet :

    1) la lecture le la sonde extérieure NTC10K avec un arduino :
    lecture NTC10K.JPG

    2) un bout de code pour transformer la valeur de la sonde selon une équation me permettant de me rapprocher de ma courbe idéale, ok pas de problème

    3) générer une résitance variable :
    restitution.JPG

    Pour ce dernier point, je sèche.

  11. #8
    umfred

    Re : comment créer une résistance variable via un arduino

    ton câblage de le résistance programmable est mauvais, tu dois brancher pb0 (ou pa0) et pw0 (pw0 c'est le point de réglage de la résistance variable) à la place de ta ntc actuelle (surtout pas de liaison avec le circuit de commande).

  12. #9
    freepicbasic

    Re : comment créer une résistance variable via un arduino

    Personnellement j aurais préféré mettre un vrai potentiomètre avec un servo moteur.
    ça permet d'avoir une vrai isolation électrique et d'éviter les mauvaises surprises...

    Quant au soft, un simple tableau avec la conversion de valeur, valeur lu => valeur à appliquer.
    Reste a faire ce tableau.
    Un simple programme (même en basic) sur le PC pourrait sortir la liste de valeur.
    A+, pat

  13. #10
    annjy

    Re : comment créer une résistance variable via un arduino

    Bonjour,

    Je me demande si on ne peut pas faire avec simplement 2 résistances.

    une R1 en parallèle avec la NTC, et une R2 en série avec (R1//NTC), de manière à tromper la régulation, et lui faire voi ce que j'ai appelé Température équivalente.

    Je joins la feuille de calcul en XLS, mais comme mon excel est une vieille version, j'ajoute une version PDF.

    cdlt,
    JY
    Images attachées Images attachées
    Fichiers attachés Fichiers attachés
    Dernière modification par Antoane ; 26/01/2020 à 15h42. Motif: Conversion pdf -> png
    A+

  14. #11
    mizambal

    Re : comment créer une résistance variable via un arduino

    hello.
    Citation Envoyé par rodymary Voir le message
    potentiomètre numérique de type MCP41100
    Verifie que ça colle au niveau du courant, un potentiomètre numérique c'est généralement quelques mA

  15. #12
    Yvan_Delaserge

    Re : comment créer une résistance variable via un arduino

    Pour avoir une resistance variable commandee par un Arduino, j'essaierais un Vactrol.
    Un Vactrol maison.
    Il s'agit d'une LDR (Resistance Dependante de la Lumiere). Une cellule photoelectrique, quoi. On les trouve pour pas cher sur Ebay. En fonction de l'eclairage, leur resistance peut aller de 5 a 500 Kohms. Tu colles dessus une ampoule de lampe de poche. Tu entoures cet assemblage avec de la bande adhesive noire, puis du papier alu, enfin tu te debrouilles pour que toit ca fonctionne dans l'obscurite la plus absolue.
    Tu branches l'ampoule sur une des sorties analogiques de l'Arduino.
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  16. Publicité
  17. #13
    freepicbasic

    Re : comment créer une résistance variable via un arduino

    J aime bien cette idée de LDR et ampoule, ça pourrait être utile pour d'autres application .
    Par contre pour la linéarité, ça risque de ne pas être top, et en plus un montage fait main sera un exemplaire unique avec ses caractéristiques propres.

    Pour le montage avec potentiomètre et servo, j ai oublié de spécifier un potentiomètre linéaire.
    (Le potentiomètre devrait être aussi à l’abri de la poussière)

    Pour la longévité du système une ampoule n'a pas de durée de vie éternelle , ainsi qu'un servo d'ailleurs, un moteur pas à pas serait surement plus durable dans le temps.

    Si le montage d'origine est défaillant comme décrit dans le post#1.
    Le mieux et le plus facile, serait de s'en servir en mode on/off avec seulement 2 valeurs de résistances commutées par relais et de mettre une sonde de température sur l'Arduino genre LM35 par exemple ou autre sonde, en plus on peut en mettre plusieurs pour gérer des baisses ou montés subites de la température extérieure.
    A+, pat

  18. #14
    Yvan_Delaserge

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par Yvan_Delaserge Voir le message
    Pour avoir une resistance variable commandee par un Arduino, j'essaierais un Vactrol.
    Un Vactrol maison.
    Il s'agit d'une LDR (Resistance Dependante de la Lumiere). Une cellule photoelectrique, quoi. On les trouve pour pas cher sur Ebay. En fonction de l'eclairage, leur resistance peut aller de 5 a 500 Kohms. Tu colles dessus une ampoule de lampe de poche. Tu entoures cet assemblage avec de la bande adhesive noire, puis du papier alu, enfin tu te debrouilles pour que toit ca fonctionne dans l'obscurite la plus absolue.
    Tu branches l'ampoule sur une des sorties analogiques de l'Arduino.
    Mieux qu'une ampoule, une LED verte. Les LDR ont leur pic de sensibilite a 540 nm.
    La linearite (ou la non-) n'a pas d'importance, dans la mesure ou on cherche a modifier une caracteristique qui ne l'est probablement pas non plus. Avec une sortie analogique PWM de l'Arduino, on dispose d'une courbe de sortie de 1024 points, chaque point est ajustable separement.
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  19. #15
    annjy

    Re : comment créer une résistance variable via un arduino

    Bjr,

    c'est trop simple avec 2 résistances ? ou j'ai mr..dé quelque part ?

    cdlt,
    JY
    A+

  20. #16
    Yvan_Delaserge

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par annjy Voir le message
    Bjr,

    c'est trop simple avec 2 résistances ? ou j'ai mr..dé quelque part ?

    cdlt,
    JY
    Non, je pense que ta solution est la plus elegante de toutes.
    Un civet, un plat de côtes et puis, glissez-moi une petite paupiette avec.( Lino Ventura)

  21. #17
    freepicbasic

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par annjy Voir le message
    Bjr,

    c'est trop simple avec 2 résistances ? ou j'ai mr..dé quelque part ?

    cdlt,
    JY
    2 resistance en série à la place du capteur CTN et on court circuite l'une des 2.
    Dans 1 cas le système voit une température très chaude et dans l'autre très froide , on fait du on/off.

    C'est tout, l'Arduino fait tout on peut même mettre un afficheur LCD si on veut.
    Ou plus simple un thermostat du commerce.

    Je préfèrerais faire mon appli perso sur le net il y a de quoi s'inspirer pour ce genre de sujet...


    Mieux qu'une ampoule, une LED verte.
    Pour la Led et LDR, les LED réagissent très vite on peut moduler du son par exemple.
    Le LDR met combien de temps à réagir ?
    On risque de voir les créneaux si on met un scope !
    L’œil a une sensibilité exponentiel , qu' en est il de la LDR ? (c est surement pas linéaire... à vérifier.)
    Dernière modification par freepicbasic ; 27/01/2020 à 08h59.
    A+, pat

  22. #18
    annjy

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par Yvan_Delaserge Voir le message
    Non, je pense que ta solution est la plus elegante de toutes.
    c'est "pourquoi faire simple si on peut faire compliqué".....ce post
    pas d'alim supplémentaire, pas d'électronique supplémentaire, donc fiabilité à toute épreuve....

    cdlt,
    JY
    A+

  23. Publicité
  24. #19
    annjy

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par freepicbasic Voir le message
    2 resistance en série à la place du capteur CTN et on court circuite l'une des 2.
    Dans 1 cas le système voit une température très chaude et dans l'autre très froide , on fait du on/off.

    C'est tout, l'Arduino fait tout on peut même mettre un afficheur LCD si on veut.
    Ou plus simple un thermostat du commerce.
    ...............
    Bjr,
    voir mon post#10.

    j'ai simplement oublier de préciser:
    valeurs des résistances en Kiloohms, et chaudière réglée sur la courbe C.

    cdlt,
    JY
    A+

  25. #20
    jiherve

    Re : comment créer une résistance variable via un arduino

    bonjour,
    la solution LDR/LED loupiotte fonctionne si l'ensemble est placé dans un système bouclé, mon premier GBF à pont de Wien commis au début des 70's fonctionnait comme çà pour la régulation d'amplitude; En boucle ouverte c'est la cata , au mieux pourrait on s'en tirer avec une paire de LDR strictement identiques éclairées par la même source lumineuse , l'une des LDR permettant la "linearisation" du bousin quand l'autre serait utilisé comme resistance variable pilotée
    jR
    l'électronique c'est pas du vaudou!

  26. #21
    rodymary

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par annjy Voir le message
    Je me demande si on ne peut pas faire avec simplement 2 résistances.
    une R1 en parallèle avec la NTC, et une R2 en série avec (R1//NTC), de manière à tromper la régulation, et lui faire voi ce que j'ai appelé Température équivalente...
    Un grand merci à tous pour vos idées, mais un plus grand MERCI en particulier à annjy, ta solution est tellement simple, fiable et paramétrable, tout ça sans arduino ni autre composant actif !!

    Après vérification du modèle exact de ma sonde extérieure, il s'avère que ce n'est pas une NTC 10K mais une ZAF 200 NTC 5K, j'ai mesuré sa résistance à différentes températures et elle donne exactement la moitié d'une 10K, étalonée donc à 5Kohms pour 25°.

    J'ai tout mis sur excel comme tu l'as fait et j'ai compris que R1 (celle en parallèle avec la NTC) joue sur l'inclinaison de la pente, c'est justement ce qu'il me manquait ! Et R2 (celle en série) joue sur la translation de la courbe (ce que je peux faire en natif via le potar de la chaudière).

    Je vais fixer la R2 à 5K (ou un petit potentiomètre réglable) qui correspond à la hauteur de ma ligne verte (je pourrai toujours l'ajuster avec le potar de la chaudière), et pour R1 je vais mettre un potentiomètre 50K qui me permettra de régler la pente, sachant que 20K correspond à ma pente verte idéale.

    Je vais faire ce montage, et je vous dirais si c'est OK ou pas, en tous cas un grand merci à tous, j'étais parti sur une usine à gaz pour au final une solution si simlple et efficace

    Rodolphe

  27. #22
    annjy

    Re : comment créer une résistance variable via un arduino

    Bsr,

    ci joint mes dernières cogitations avec un NTC 5K (si les valeurs que j'ai prises sont bonnes)
    Je trouve en résistances de valeurs normalisées R2 à 6,2K, et R1 à 15K

    on n'est pas à 1% près sur ce genre de manip.....

    cordialement,
    JY
    Fichiers attachés Fichiers attachés
    A+

  28. #23
    annjy

    Re : comment créer une résistance variable via un arduino

    PS:
    je suis de la génération "analogique", donc ma première idée n'est pas le microprocesseur.
    mais je dois convenir que dans certains cas, ça peut être plus simple....

    bonne soirée à tous,
    JY
    A+

  29. #24
    freepicbasic

    Re : comment créer une résistance variable via un arduino

    J'ai fait un prog en VB6 avec la solution ANJY
    voir l'image en bleu la CTN seule et violet après correction avec les 2 résistances.

    Code:
    Private Sub Command1_Click()
     Dim Mylist(20) As String
     
     Y = 100
     a = 0
     Picture1.Width = Form1.Width - 2500
     Picture1.Height = Form1.Height - 800
    
    W = Picture1.Width
    H = Picture1.Height
    
    Z = (H / 2) - 100
    
    Picture1.Line (100, H - 200)-(W, H - 200)
    'Picture1.Line (100, Z)-(W, Z)
    
    
    Picture1.Line (100, 0)-(100, H)
    
    For i = 100 To W Step 200
    Picture1.Line (i, H - 100)-(i, H - 200)
    Next i
    
    For i = 100 To (H - 200) Step 200
    Picture1.Line (0, i)-(100, i)
    Next i
    
    
    
    'For i = 0 To 6.28 Step 0.02
    ' X = Z - (Sin(i) * 1000)
    ' X2 = 1200 - (Sin(i) * 1000)
    ' Y = i * 500
    ' 'pRINT SIN(A), A
    ' 'PRINT X,Y
    ' Picture1.PSet (Y, X), 255
    ' 'A = A + S
    'Next
    
    xs = 0
    xs2 = 0
    ys = 0
      stp% = W / 1
      stp% = stp% / List1.ListCount
    
    For i = 0 To List1.ListCount - 1
      Mylist(i) = List1.list(i)
      MyPos = InStr(Mylist(i), ",")
      R = Right$(Mylist(i), Len(Mylist(i)) - MyPos)
      v = Val(R)
      nr = v
      v = H - (H / 100 * v)
      XX% = (i + 1) * stp%
    '  Picture1.PSet (v, XX), 535
      If i <> 0 Then
          Picture1.Line (ys, xs)-(XX%, v), &H8000
      End If
        Picture1.Line (XX%, v)-(XX%, v - 200), &HFF
    
      vv = Val(Text1.Text) / 1000
      nr = (nr * vv) / (nr + vv)
      nr = nr + (Val(Text2.Text) / 1000)
      List2.AddItem (Str(nr))
      nr = H - (H / 100 * nr)
      If i <> 0 Then
        Picture1.Line (ys, xs2)-(XX%, nr), &HFF00FF
      End If
        Picture1.Line (XX%, nr)-(XX%, nr - 100), &HFF
      xs2 = nr
      xs = v
      ys = XX%
      
    Next
    
    End Sub
    
    Private Sub Command2_Click()
    End
    End Sub
    
    Private Sub Form_Load()
    Picture1.Width = Form1.Width - 2500
    Picture1.Height = Form1.Height - 800
    List1.AddItem ("-20 , 95.79")
    List1.AddItem ("-15 , 72.047")
    List1.AddItem ("-10 , 54.77")
    List1.AddItem ("-5  , 32.5")
    List1.AddItem (" 0  , 29")
    List1.AddItem (" 5  , 25.27")
    List1.AddItem (" 10 , 19.8")
    List1.AddItem (" 15 , 15.61")
    List1.AddItem (" 20 , 12.4")
    End Sub
    
    Private Sub Form_Terminate()
    End
    End Sub
    
    Private Sub Timer1_Timer()
    Command1_Click
    Timer1.Enabled = False
    
    End Sub
    Images attachées Images attachées
    A+, pat

  30. Publicité
  31. #25
    annjy

    Re : comment créer une résistance variable via un arduino

    Citation Envoyé par freepicbasic Voir le message
    J'ai fait un prog en VB6 avec la solution ANJY
    voir l'image en bleu la CTN seule et violet après correction avec les 2 résistances.
    Sympa,
    mais Excel fait ça très bien aussi.....(voir post #22 - j'aurais pu rajouter des courbes ou changer de données X ou Y).

    cdlt,
    JY
    A+

  32. #26
    annjy

    Re : comment créer une résistance variable via un arduino

    Bonjour,

    j'ai l'impression qu'on s'écarte du sujet initial, qui, je le rappelle, était un problème de chaudière.
    Peut-être vaudrait-il mieux créer une nouvelle discussion ?

    Parce qu'après le 30 janvier, ça risque de coûter 10 points....( même aux modérateurs ? )

    cdlt,
    JY
    A+

  33. #27
    Antoane
    Responsable technique

    Re : comment créer une résistance variable via un arduino

    Effectivement, merci.

    Les messages traitant de la réalisation d'une résistance commandée en tension à partir d'un opto-coupleur à sortie LDR ont été déplacés ou copiés dans : https://forums.futura-sciences.com/e...ortie-ldr.html
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  34. #28
    rodymary

    Re : comment créer une résistance variable via un arduino

    Bonsoir à tous,

    Le petit montage est en place, j'ai prévu R1 et R2 en variable, respectivement 20K et 5K, et je vais attendre quelques jours pour voir ce que relève ma domotique.
    Je vous tiendrai au courant.

    Voici mon petit boitier placé au plus près de la sonde NTC5K :

    montage régul pente NTC5K - montage.jpg

    Rodolphe

  35. #29
    annjy

    Re : comment créer une résistance variable via un arduino

    Bsr,
    merci du retour d'infos.

    continue à nous informer des résultats

    Cdlt,
    JY
    A+

Discussions similaires

  1. creer une tension variable +/-
    Par edy1 dans le forum Électronique
    Réponses: 21
    Dernier message: 22/03/2011, 20h01
  2. comment déterminer une densité d'une variable qui est en fonction d'une autre variable
    Par kariminfo dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 11/09/2010, 20h30
  3. comment déterminer une densité d'une variable qui est en fonction d'une autre variable
    Par kariminfo dans le forum Mathématiques du supérieur
    Réponses: 7
    Dernier message: 04/09/2010, 20h40
  4. Réponses: 1
    Dernier message: 21/09/2009, 16h26
  5. Comment choisir cette résistance variable?
    Par sim254 dans le forum Électronique
    Réponses: 25
    Dernier message: 20/05/2008, 18h51
Découvrez nos comparatifs produits sur l'informatique et les technologies.