Variateur de ventilateur commande par arduino
Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 35

Variateur de ventilateur commande par arduino



  1. #1
    Forcerouge

    Variateur de ventilateur commande par arduino


    ------

    Bonjour a vous tres chers experts de l'electronique,

    Dans le cadre d'un petit projet DIY pour mon usage personnel, j'aurais besoin de realiser un montage electronique afin de faire varier la vitesse d'un ventilateur monophase d'environ 160Watts 220 Volts.

    Pour le moment, mon systeme (qui fonctionne), consiste a utiliser un servomoteur pour actionner le potentiomentre d'un variateur diac/triac (gradateur). Le servomoteur est pilote par un arduino en fonction de plusieurs parametres (telecommande, capteurs, etc.)
    Etant donne que c'est un peu artisanal comme solution, je prefererais changer cette partie de mon systeme pour quelque chose de plus durable et compact.

    J'avais pense a faire un circuit en utilisant un optotriac (par exemple, le MOC 3041), que je commanderais directement depuis l'arduino. L'arduino enverrait des impulsion a l'optotriac, qui, si j'ai bien compris son fonctionnement, agirait comme un interrupteur, ouvrant et fermant le circuit par intermittence, et reduisant de ce fait la quantite d'energie recue par le moteur du ventilateur.

    Cependant, meme si la theorie me semble relativement simple, je suis un peu bloque au niveau de la pratique. A savoir que je ne suis pas certain de savoir comment cabler tout ca concretement. Par exemple, comment faire pour que l'Arduino envoie les impulsions au bon moment par rapport au signal 50Hz du secteur? Il semblerait que le MOC 3041 soit equipe d'un "zero crossing" mais je ne suis pas totalement certain de bien comprendre son fonctionnement et si cela permet d'eviter d'avoir a se soucier du timing. D'autre part, le moteur etant une charge inductive, je ne suis pas certain de savoir comment proteger le systeme.

    Serait il possible que l'un d'entre vous, dans sa grande bonte, m'aide tout d'abord a faire un schema rapide afin que je puisse comprendre ce que je devrais faire pour parvenir a controler le moteur et quels seraient les composants a utiliser?

    Merci beaucoup d'avance pour votre aide!

    -----

  2. #2
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    1/ Commande
    Il faut un MOC3021 (et non un MOC3041) et il va commander ton triac à la place du Diac

    Synchro

    Il faut que ton µC sache quand le secteur passe par zéro . Par exemple avec ce schéma :
    Nom : Synchro_Secteur.jpg
Affichages : 810
Taille : 17,6 Ko
    Ainsi le µC sait quel est le déphasage à calculer et à envoyer
    J'aime pas le Grec

  3. #3
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Merci Daudet pour ta reponse!

    Je n'ai pas acces a la piece jointe, je suppose qu'il faut que j'attende un peu.

    Simple curiosite, pourquoi un 3021 et non un 3041?

    Autre question, dois je rajouter une resistance ou quelque chose en entree de l'optotriac?


    Merci encore pour ton aide, si tu as des suggestions quant a mon montage, n'hesite pas

  4. #4
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    Simple curiosite, pourquoi un 3021 et non un 3041?
    3021 = Commande par variation du retard de phase de déclenchement
    3041 = Commande par 1/2 période entière (pas besoin de synchro)
    Autre question, dois je rajouter une resistance ou quelque chose en entree de l'optotriac?
    A ton avis ?
    Dernière modification par DAUDET78 ; 06/11/2014 à 08h32.
    J'aime pas le Grec

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

    Re : Variateur de ventilateur commande par arduino

    La piece jointe est enfin visible.

    Pas con le coup de l'opto coupleur pour recuperer les transitions sur l'Arduino, merci je n'y avais pas pense!

    Pour ce qui est de la resistance, je dirais que oui mais je ne saurais pas clairement dire pourquoi ni quelle devrait etre sa valeur. (desole d'etre un peu nul, j'apprends tout doucement l'electronique en tant que hobbyiste).
    Disons que je n'arrive pas a visualiser a quel niveau il y aurait court circuit s'il n'y en avait pas...

  7. #6
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Ben , une LED .... c'est avant tout une diode . Tu connais la relation, en direct, de la tension et du courant ?
    J'aime pas le Grec

  8. #7
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Ah, non on s'est mal compris alors, je parlais de l'entree de l'optotriac du cote triac.

    Du cote led je me doute bien qu'il faut une resistance, pas de souci

  9. #8
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    je parlais de l'entree de l'optotriac du cote triac.
    On parle alors de sortie .....de l'optotriac !
    J'aime pas le Grec

  10. #9
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par DAUDET78 Voir le message
    1/ Commande
    Il faut un MOC3021 (et non un MOC3041) et il va commander ton triac à la place du Diac

    Synchro

    Il faut que ton µC sache quand le secteur passe par zéro . Par exemple avec ce schéma :
    Pièce jointe 262477
    Ainsi le µC sait quel est le déphasage à calculer et à envoyer
    Encore un petite question:

    Sur le schema, il y a deux resistances de 25K.

    Est ce que cela poserait un probleme si je les remplacait par une resistance de 51K?
    Je pose la question car je ne parviens pas a trouver de resistance de 25K en 1W. Ce qui s'en approche le plus etant 2x24 K ou sinon 1x51K...
    Un avis?

    (c'est pas evident a trouver la ou je vis et je suis en train de passer ma commande en fait, d'ou ma question)

    Merci d'avance!

  11. #10
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par DAUDET78 Voir le message
    On parle alors de sortie .....de l'optotriac !
    Ah oui, c'est juste. Desole, l'habitude du DC...

    Du coup est ce qu'il faut ajouter des composants particuliers entre l'optotriac et le triac alimentant le moteur?
    Je vois parfois une resistance sur certains schemas de datasheets, parfois deux. Du coup je ne suis pas sur...

  12. #11
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    Sur le schema, il y a deux resistances de 25K.
    poses toi la question : pourquoi cet enfoiré à mis deux résistances en série ???
    Est ce que cela poserait un probleme si je les remplacait par une resistance de 51K?
    Tu as la réponse à la question d'avant !
    Ce qui s'en approche le plus etant 2x24 K
    24K ou 25K, C'est kif kif
    J'aime pas le Grec

  13. #12
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par DAUDET78 Voir le message
    poses toi la question : pourquoi cet enfoiré à mis deux résistances en série ???
    Je me permettrais pas, au pire je dirais "grand galopin"
    Je dois bien avouer que c'est un mystere pour moi le coup des deux resistances en serie... A moins, peut etre que ce soit pour eviter a une seule resistance de trop chauffer (hypothese me paraissant stupide mais je tente ma chance...)

    Citation Envoyé par DAUDET78 Voir le message
    Tu as la réponse à la question d'avant !
    J'en deduis que oui, deux resistances sont necessaires. Cela dit je ne suis pas certain de savoir pourquoi.


    Citation Envoyé par DAUDET78 Voir le message
    24K ou 25K, C'est kif kif
    Super, merci beaucoup!

  14. #13
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    A moins, peut etre que ce soit pour eviter a une seule resistance de trop chauffer (hypothese me paraissant stupide mais je tente ma chance...)
    Non, c'est pas idiot ! C'est la seconde raison. Il est plus facile d'évacuer les calories produites par deux fois 0,5W dans deux lieux différents que 1W en un seul endroit.

    Mais la première raison, c'est la tension . 230V AC, c'est 230*1,4142 = 325V crête ! Et on est en limite de tenue en tension d'une résistance. Si on met deux résistances, elles supportent 163V ..... ce qui est OK !
    J'aime pas le Grec

  15. #14
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par DAUDET78 Voir le message
    Non, c'est pas idiot ! C'est la seconde raison. Il est plus facile d'évacuer les calories produites par deux fois 0,5W dans deux lieux différents que 1W en un seul endroit.

    Mais la première raison, c'est la tension . 230V AC, c'est 230*1,4142 = 325V crête ! Et on est en limite de tenue en tension d'une résistance. Si on met deux résistances, elles supportent 163V ..... ce qui est OK !

    Ahhhhhh, ok!...
    J'y aurais pas pense, j'avoue!

  16. #15
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    J'y aurais pas pense, j'avoue!
    D'autres y ont pensé avant ! Et ça permet de faire de l'obsolescence programmée facilement ... regarde ICI
    J'aime pas le Grec

  17. #16
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Bon, j'ai pu (grace a toi mon cher Daudet que je remercie chaleureusement) commander mes pieces, a savoir:
    Optotriac MOC3021
    Opto Coupleur 4N35
    2 x resistances 1W 24K
    Diode 1N4004
    Resistance de 1K
    Resistance de 10K pour le pull up cote Arduino.

    Je pense avoir bien compris dans le detail le fonctionnement de la partie detection du signal par l'arduino.

    La ou j'ai encore quelques doutes c'est du cote de la transmission de la puissance a partir de l'optotriac.
    Pas tout a fait sur de comment m'y prendre.

    Je suppose qu'il doit probablement falloir mettre une resistance quelque part entre l'optotriac et le triac de puissance, afin que le la tension arrivant a la gachette ne soit pas trop elevee, cela dit je ne suis pas sur.
    Egalement, je ne sais pas s'il faut mettre un condensateur quelque part pour attenuer d'eventuels parasites ni quelle devrait etre sa valeur dans ce cas.

  18. #17
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    Je suppose qu'il doit probablement falloir mettre une resistance quelque part entre l'optotriac et le triac de puissance,
    Regarde la datasheet du MOC3021
    un servomoteur pour actionner le potentiomentre d'un variateur diac/triac (gradateur)
    récupère le variateur, tu as les filtres, le triac
    Dernière modification par DAUDET78 ; 07/11/2014 à 07h30.
    J'aime pas le Grec

  19. #18
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Il semblerait a priori qu'il faille que je mette une resistance de 1K en 1W, d'apres un schema trouve sur le Web.

    J'ai vu d'autres schemas legerement differents avec plusieurs resistances dans des datasheet de ce composant. Du coup je n'etais pas vraiment sur puisque je ne sais pas si ces resistances ont un rapport avec l'utilisation que je compte faire du systeme, a savoir commander un moteur et non une simple ampoule. Je dirais que ca n'a a priori pas d'incidence mais bon, je suis loin d'etre une fleche en electronique pour le moment, d'ou mes questions afin d'etre certain (disons que si on me repond la meme chose que ce que je pense deja etre bon, ca m'aide a voir que je ne suis pas dans l'erreur, or sur du 230 V j'ai pas specialement envie de me planter )

    Je comptais effectivement recuperer le variateur que j'ai deja, mais comme il a tendance a faire legerement gresiller le moteur a basse vitesse, ce qui fait un peu de bruit (sorte de bourdonnement sourd), je me demandais s'il n'y avait pas un moyen de l'ameliorer en repartant de zero et en ajoutant des composants de meilleure qualite (les chinois ayant tendance a prendre les composants les moins chers possible en general), dans le but de peut etre pouvoir supprimer ce desagrement.

  20. #19
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par Forcerouge Voir le message
    mais comme il a tendance a faire legerement gresiller le moteur a basse vitesse,
    Ce n'est pas le composant fabriqué à Tokyo ou à Hong kong qui est responsable du grésillement ...... mais la commande par phase !
    J'aime pas le Grec

  21. #20
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Juste une petite update pour dire que j'ai bien recu les composants et teste le systeme...


    ...Eh bien ca marche parfaitement!
    Donc merci encore pour ton aide precieuse DAUDET!

    Je peux desormais controler la vitesse de mon ventilateur grace a une telecommande infrarouge et un arduino
    J'ai rajoute un pont de diodes au montage propose initialement, afin d'avoir deux signaux par periode au lieu d'un seul et redige le code permettant de gerer la frequence du secteur, celle du moteur et la gestion de la telecommande.

    Je posterai quelques photos du montage ainsi que le code quand j'aurai un peu de temps, des fois que ca interesse quelqu'un d'autre,

    Bonne journee a tous et encore merci pour votre aide!

  22. #21
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Chose promise, chose due, voici quelques photos de mon montage ainsi que le code qui permet de commander un ventilateur grace a une telecommande. Pour info, ce montage est destine a devenir un purificateur d'air, car il se trouve que je vis dans un pays particulierement touche par la pollution atmospherique...

    125176IMG0167.jpg


    555105IMG0168.jpg


    920848IMG0169.jpg


    Voici le code:

    [== Indéfini ==]
    #include "IRremote.h"
    #define Relay1 9
    int AC_LOAD = 12; // Output to Opto Triac pin
    int dimming = 128; // Dimming level (0-128) 0 = ON, 128 = OFF
    int receiver = 8;
    int _prevpos;
    long _lastkey;
    int _pas = 1;
    boolean zeroTriggered = false; // variable globale
    int dimtime;
    int relaypos;

    unsigned long zeroStartTime;
    unsigned long zeroStartTime2;


    IRrecv irrecv(receiver); // create instance of 'irrecv'
    decode_results results;

    void setup()
    {
    Serial.begin(9600);
    pinMode(AC_LOAD, OUTPUT);// Set AC Load pin as output
    attachInterrupt(0, zero_crosss_int, RISING); // Choose the zero cross interrupt # from the table above
    irrecv.enableIRIn(); // Start the receiver
    pinMode(Relay1, OUTPUT);
    digitalWrite(Relay1,HIGH);
    relaypos=0;
    }

    //the interrupt function must take no parameters and return nothing

    void zero_crosss_int()
    {
    zeroTriggered = true;
    dimtime = (75*dimming); // For 60Hz =>65
    zeroStartTime = micros();
    zeroStartTime2 = 0;
    }
    void processZeroVolt()
    {
    if(zeroTriggered)
    {
    if(zeroStartTime2 == 0 && (micros() - zeroStartTime) > dimtime)
    {
    digitalWrite(AC_LOAD, HIGH);
    zeroStartTime2 = micros();
    }

    if(zeroStartTime2 > 0 && (micros() - zeroStartTime2) > 10)
    {
    digitalWrite(AC_LOAD, LOW);
    zeroTriggered = false;
    }
    }
    }

    void loop(){

    if (irrecv.decode(&results)) // have we received an IR signal?
    {
    Serial.println(results.value, HEX);
    translateIR();
    irrecv.resume();
    }
    processZeroVolt();
    }


    void translateIR(){
    switch(results.value) {

    case 0xFFA25D: // Bouton ON/OFF
    if(relaypos==0){
    digitalWrite(Relay1, LOW);
    relaypos=1;}
    else{digitalWrite(Relay1, HIGH);
    relaypos=0;}
    dimming = 78;
    delay(15);
    _prevpos = 78;
    break;

    case 0xFF22DD: //Bouton Play (non utilise)
    break;

    case 0xFF6897: //Bouton 0: vitesse mini
    dimming = 78;
    delay(15);
    _prevpos = 78;
    break;

    case 0xFF30CF: //Bouton 1: premiere vitesse
    dimming = 70;
    delay(15);
    _prevpos = 70;
    break;

    case 0xFF18E7: //Bouton 2: deuxieme vitesse
    dimming = 60;
    delay(15);
    _prevpos = 60;
    break;

    case 0xFF7A85: //Bouton 3: vitesse maxi
    dimming = 38;
    delay(15);
    _prevpos = 38;
    break;

    case 0xFF02FD: //Bouton fleche gauche: Ralentir ventilo
    if(_prevpos <78){
    dimming =(_prevpos+_pas);
    delay(50);
    _prevpos=_prevpos+_pas;}
    else;
    _lastkey = 0xFF02FD;
    break;

    case 0xFFC23D: //Bouton fleche droite: Accelerer ventilo
    if(_prevpos >39){
    dimming =(_prevpos-_pas);
    delay(50);
    _prevpos=_prevpos-_pas;}
    else;
    _lastkey = 0xFFC23D;
    break;

    case 0xFFFFFFFF: //Appui repete: continuer a accelerer ou ralentir(selon action precedente)
    translateIR2();
    break;
    }
    } //END translateIR

    void translateIR2(){ //Fonction repetition de touche
    results.value = _lastkey;
    translateIR();
    }

    En esperant que ce sera utile a quelqu'un !


    J'ai par contre une petite question car il y a quelque chose que je ne parviens pas a comprendre, donc si quelqu'un pouvait m'eclairer ce serait vraiment sympa:

    J'ai utilise le montage decrit par Daudet en page 1 de ce post. A la difference pres que j'ai ajoute un pont de diodes en entree.
    Donc deux resistances de 24K, l'une en entree 1 du pont de diode, l'autre en entree deux. La sortie positive du pont de diode est connectee a l'entree de la LED de l'optocoupleur, et la masse a sa sortie (voir photos).

    Comme la tension d'usage de la LED est de 1,2 V, et que le pont de diode abaisse déjà la tension d'a peu pres 1V, on cible genre 218V de perte de tension pour arriver à quelque chose d' un peu supérieur aux 1,2V (si on est trop en dessous elle ne pourra pas s'allumer).
    Pour calculer la charge ensuite, on fait le calcul U = RI, soit 218V = RI. Donc si on veut cibler une intensité de 0,01A qui correspond a la consommation de cette LED, ça donne R = 21,8kΩ.
    À partir de là, la résistance va agir comme un chauffage qui va consommer P = UI = 2,18W d'électricité.

    La tension du circuit à la sortie de cette charge consommatrice serait donc réduite et, si on mesurait la tension aux bornes des broches supérieures de l'optocoupleur, on aurait à la crête du signal un bête 1.2V, non?

    La LED de l'opto devrait dans ce cas plutôt s'allumer lorsque la tension serait à la crête (1-2V) plutôt qu'à 0V ? Du coup je ne suis pas sur de bien detecter un passage par 0V, il me semble que ce que determine mon montage c'est plutot le moment ou la tension depasse un certain seuil proche de la valeur crete du signal 50Hz. J'ai loupe un episode quelque part?

    Merci pour votre aide
    Dernière modification par Forcerouge ; 21/11/2014 à 04h37. Motif: typos

  23. #22
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Mince alors, personne pour m'eclairer?

  24. #23
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    C'est plus facile de raisonner sur un schéma que sur un texte .....
    Pourquoi tu as fait un redressement double alternance ?
    J'aime pas le Grec

  25. #24
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Ah, desole, je vais essayer de poster un schema, mais en attendant une petite explication ci dessous en esperant que ce soit comprehensible avec les photos au dessus (si c'est pas comprehensible dis le moi, je ferai un schema ce soir quand j'aurai acces a mon autre ordi):

    Phase --> Resistance 24K --> pont de diode --> diode optocoupleur 4N35 -->Pont de diode -->Resistance 24K --> Neutre

    La question que je me pose c'est qu'etant donne les resistances, la LED ne devrait rester allumee qu'aux alentours de la crete du signal 220V, non?... Du coup je ne comprends pas comment on detecte le point zero au juste?

    J'ai utilise un pont de diode car je me suis dit que sans le pont de diode je n'aurais le signal qu'une fois toutes les deux demi periodes, au lieu d'une fois par demi periode, d'ou perte de la moitie de la puissance en sortie.

    Merci pour ton aide!

  26. #25
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Ah, desole, je vais essayer de poster un schema, mais en attendant une petite explication ci dessous en esperant que ce soit comprehensible avec les photos au dessus (si c'est pas comprehensible dis le moi, je ferai un schema ce soir quand j'aurai acces a mon autre ordi):

    Phase --> Resistance 24K --> pont de diode --> diode optocoupleur 4N35 -->Pont de diode -->Resistance 24K --> Neutre

    La question que je me pose c'est qu'etant donne les resistances, la LED ne devrait rester allumee qu'aux alentours de la crete du signal 220V, non?... Du coup je ne comprends pas comment on detecte le point zero au juste?

    J'ai utilise un pont de diode car je me suis dit que sans le pont de diode je n'aurais le signal qu'une fois toutes les deux demi periodes, au lieu d'une fois par demi periode, d'ou perte de la moitie de la puissance en sortie.

    Merci pour ton aide!

  27. #26
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    J'ai besoin de ton schéma... je pense qu'il y a une modification à faire .....
    Citation Envoyé par Forcerouge Voir le message
    J'ai utilise un pont de diode car je me suis dit que sans le pont de diode je n'aurais le signal qu'une fois toutes les deux demi periodes,
    Exact
    au lieu d'une fois par demi periode, d'ou perte de la moitie de la puissance en sortie.
    Faux !
    Avec la synchro toutes les périodes, il faut lancer un Timer de 10mS . Tu as ainsi la possibilité de piloter la demi-alternance positive (en direct) et la demi-alternance négative (après 10ms). La détection du zéro est meilleure sans pont
    J'aime pas le Grec

  28. #27
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Petite amélioration ....
    Citation Envoyé par DAUDET78 Voir le message
    Avec la synchro toutes les périodes,
    • Tu lances un timer (entre 0 et 10ms) pour faire ton retard de phase
    • A la fin du timer , tu allumes ton triac (pour faire la commande de la demi-alternance positive) ET tu relance le timer pour 10ms
    • A la fin du timer , tu allumes ton triac (pour faire la commande de la demi-alternance négative)
    J'aime pas le Grec

  29. #28
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Citation Envoyé par DAUDET78 Voir le message
    J'ai besoin de ton schéma... je pense qu'il y a une modification à faire .....
    Pas de souci, le voici. Desole pour la qualite vraiment pas terrible..

    Nom : schema detecteur.png
Affichages : 715
Taille : 14,1 Ko


    Citation Envoyé par DAUDET78 Voir le message
    Avec la synchro toutes les périodes, il faut lancer un Timer de 10mS . Tu as ainsi la possibilité de piloter la demi-alternance positive (en direct) et la demi-alternance négative (après 10ms). La détection du zéro est meilleure sans pont
    OK, je comprends ta technique, meme si j'avoue ne toujours pas comprendre comment on detecte un zero a la base car pour moi il me semble qu'on detecte un point en dessous ou au dessus duquel la LED ne recoit plus assez de courant pour s'allummer, qui peut etre bien avant ou apres le zero en fonction de la resistance choisie...

    J'ai choisi cette option egalement car le code me semblait plus simple a apprehender.
    Cela dit je peux changer si cela pose probleme, mais j'aimerais surtout comprendre comment fonctionne le zero crossing ici car pour moi il y a quelque chose d'illogique (surement que j'ai du louper une subtilite du raisonnement je pense)

    Merci encore et toujours pour ton aide!

  30. #29
    DAUDET78

    Re : Variateur de ventilateur commande par arduino

    Avec un 4N35 de mon schéma #2
    - Si l'entrée est à -325V la LED n'est pas alimentée. Le phototransistor est OFF
    - Si l'entrée est à +325V la LED est alimentée avec un courant de 6,5mA. Le phototransistor est ON

    Quand passe t-on du OFF au ON ? A un certain moment qu'il est difficile de calculer.
    En effet, pour que le µC détecte un changement d'état, il faut que sa tension d'entrée passe dans la zone Vdd/2 soit 2,5V
    Or le gain du photocoupleur, en régime linéaire, est au minimum de 100% (à T=25°) et probablement plus. Donc avec une PullUP de 10K, le courant collecteur est de (5-2,5)/10K=0,25mA . donc il faut un If dans la LED de 0,25/1,00= 0,25mA

    Donc la détection de zéro se fait réellement au environ de 0,25*50K=12,5V ou en dessous.

    Tu peux calculer l'erreur en degrés, tu verras que l'angle de conduction n'est plus de 180° mais un peu moins, mais que la perte de puissance est négligeable .


    Par contre, en double alternance, il y a un problème. Pour des tensions inférieures à 12,5V et si le CTR du phototransistor est plus élevé que 100% (cas d'un échantillon de bon photocoupleur ...manque de bol!), on risque de ne pas détecter le passage par zéro (pour accroitre le défaut, mettre un 0,1µF en parallèle sur la LED) ......
    J'aime pas le Grec

  31. #30
    Forcerouge

    Re : Variateur de ventilateur commande par arduino

    Alors je pense que, grace a tes explications, je commence a comprendre au moins le principe...
    En fait il ne faut pas voir l'optocoupleur comme une sorte de systeme binaire... Il laissera passer un courant de sortie proportionnel au courant d'entree dans la led, c'est bien ca? (enfin proportionnel dans une certaine mesure)
    Jusqu'a present, j'imaginais la LED soit eteinte, soit allummee, donc le circuit soit ouvert soit ferme.

    Du coup, si par exemple j'augmentais la valeur de la pull up, je pourrais detecter un niveau plus proche encore du zero, non? (theoriquement, hein, je compte pas le faire en pratique )
    Mettons par exemple que je veuille passer a un seuil a 4V au lieu de 12,5.
    Il faudrait que je mette une resistance de pull up de 31.25K, ce qui ferait une intensite de 0.08mA, donc une intensite dans la LED de 0,08mA egalement, avec ma resistance de depart a 50K cela ferait une detection a partir de 4V?
    J'ai bien compris le raisonnement?


    Citation Envoyé par DAUDET78 Voir le message
    Par contre, en double alternance, il y a un problème. Pour des tensions inférieures à 12,5V et si le CTR du phototransistor est plus élevé que 100% (cas d'un échantillon de bon photocoupleur ...manque de bol!), on risque de ne pas détecter le passage par zéro (pour accroitre le défaut, mettre un 0,1µF en parallèle sur la LED) ......
    Par contre je n'ai pas encore compris cette partie... Je ne vois pas bien ou se situe le probleme ni l'utilite d'un condensateur ici: est ce pour monter en intensite plus rapidement?

    J'admire ton savoir dans le domaine en tout cas... La somme de connaissances qu'il faut accumuler pour ne serait ce que comprendre les principes de fonctionnement de circuits electroniques simples m'impressionne.
    Dernière modification par Forcerouge ; 26/11/2014 à 04h56.

Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. [Divers] variateur de vitesse sur ventilateur ps3 12v
    Par mickmimi dans le forum Dépannage
    Réponses: 1
    Dernier message: 14/06/2013, 12h56
  2. Réponses: 1
    Dernier message: 24/12/2012, 15h13
  3. Variateur ventilateur tout simplet!?!
    Par invite5bdffb84 dans le forum Électronique
    Réponses: 2
    Dernier message: 29/06/2011, 13h17
  4. Variateur de vitesse ventilateur
    Par invite055783b5 dans le forum Électronique
    Réponses: 5
    Dernier message: 06/10/2006, 13h07
  5. variateur de vitesse ventilateur 220v
    Par invite055783b5 dans le forum Dépannage
    Réponses: 0
    Dernier message: 05/10/2006, 16h42
Découvrez nos comparatifs produits sur l'informatique et les technologies.