Il existe de nombreuses façons de générer un courant constant, il suffit de chercher « schema courant constant » sur Google pour en trouver à la pelle. Philippe Demerliac a même fait une vidéo très intéressante sur sa chaîne Cyrob : Générateurs de courant : Les bases. Pour être honnête, c'est cette vidéo qui m'a inspirée. L'excellent site Sonelec a aussi fait tout un article sur le sujet: Générateurs de courant constant.
Les générateurs de courant constant, aussi appelés sources de courant, sont souvent utilisés pour alimenter des LED par exemple, car je rappelle que les LED sont alimentées en courant et non en tension.
Mais alors, pourquoi essayer d'autres choses? C'est que mon besoin est de pouvoir alimenter une LED mais avec une très grande dynamique: pouvoir aller jusqu'à des hautes tensions, de plusieurs centaines de volts. Là, la plupart des solutions proposées sur les liens précédents ne sont plus valables.
Je suis en train de me faire une alimentation à découpage intégrant un correcteur actif de facteur de puissance comme l'a très bien décrit Ioduremetallique dans sa vidéo Fabrication d'un PFC actif de 650 W. Or ce montage, comme toutes les alimentations à découpage, utilisent des condensateurs pour stocker une tension continue de plusieurs centaines de volts (comme le secteur redressé par exemple), ce qui représente un très grand risque d'électrocution même une fois l'alimentation débranchée. Il doit y avoir normalement une résistance en parallèle de ces condensateurs afin de les décharger quand l'alimentation est coupée.
Le choix de cette résistance est important car si on la met trop faible, on va consommer beaucoup d'énergie (qui va partir en chaleur) via cette résistance. Cette énergie sera totalement perdue. Si, au contraire, on met une résistance trop grande, il va falloir beaucoup de temps pour que ces condensateurs se déchargent ce qui fait que l'alimentation reste dangereuse pendant [trop] longtemps après l'avoir débranchée du secteur. À ce propos, on trouve le schéma d'un excellent déchargeur de condensateur sur le site de Cyrob : CP0079, tout comme l'a fait Électro-Bidouilleur dans sa vidéo n°143 qui montre comment construire un déchargeur de condensateur. De plus, il est déjà arrivé, certes rarement, que cette résistance en parallèle des condensateurs soit coupée.
Quel est le but ?
Le but de mon montage est d'avoir une LED allumée sur le PCB tant que la tension aux bornes de ces condensateurs est « dangereuse ». Ce montage doit être le plus simple possible, consommer le moins possible et surtout être extrêmement fiable. Sachant que mon alimentation va charger les condensateurs à 480V maximum, cela devient une contrainte importante.
Quelles sont mes contraintes ?
Alors, justement, quelles sont mes contraintes:
- Tension d'entrée de 0V à 500V
- La LED doit être allumée pour toute tension supérieure à 32V maximum (j'accepte qu'elle s'allume aussi pour une tension inférieure)
- Le courant dans la diode doit être entre 1 et 2mA car je veux utiliser une diode CMS et je ne cherche pas à illuminer une pièce entière mais plus à être visible en consommant le minimum
- La source de tension est continue
- Doit pouvoir fonctionner en continu et non uniquement quand les condensateurs se déchargent
- Doit être simple, peu onéreux et surtout très fiable
J'ai déjà eu l'occasion de faire plusieurs fois le plus simple qu'il soit, à base d'un simple transistor FET (J112). Ce schéma fonctionne très bien et ne coûte vraiment rien (quelques centimes) mais celui-ci est limité à 30V, donc complètement hors des clous en ce qui me concerne.
Les différentes idées
Utilisation d'une simple résistance
Partons de la tension maxi de 500V
Si nous utilisons une LED qui accepte 20mA maximum avec une tension dans le sens passant de 2V, il faut donc lui ajouter une résistance en série qui se calcule en utilisant la loi d'Ohm. R=U/I avec U=500V-2V et I=0,02A. Soit R=24900Ω. La valeur normalisée la plus proche est 24kΩ. La puissance dissipée dans la résistance se calcule alors avec la formule P=U⋅I. Soit (500V-2V)*20mA=498V*0,02A=9,96W. Disons donc 10W. Il faudra donc utiliser une résistance de puissance munie éventuellement d'un radiateur.
Comment va se comporter ce montage à la tension minimale de 32V?
Le courant dans la diode sera de (32V-2V)/24kΩ, soit 1mA. Ce qui est acceptable.
Ce circuit semble donc correspondre à la plupart des critères. Cependant, il consomme jusqu'à 10W en permanence et nécessite une diode de puissance qui prend de la place. C'est malgré tout le circuit le plus simple qu'il soit. Il faut cependant faire attention au fait que toutes les résistances, même de puissance, ne peuvent pas accepter 500V à ses bornes. La résistance RH02525K00FE02 correspond aux critères car d'après son datasheet, elle accepte des tensions jusqu'à 1000V et peut être utilisée jusqu'à 50% de sa puissance maximale sans radiateur, elle accepte donc 12,5W maximum sans radiateur. Elle risque quand même de chauffer pas mal, mais sans sortir de sa plage d'utilisation. Son coût est d'environ 5€.
Bien que ce montage correspond aux critères, n'est-il pas possible de faire mieux afin de perdre moins d'énergie ?
Utilisation d'une Zener en plus du JFET
Ma première idée était d'utiliser un des schémas classiques mais de le mettre en parallèle à une diode Zener afin d'en limiter la tension maximale.
Si on part du circuit à base du JFET J112, il faut limiter la tension en dessous de 30V (son datasheet indique de ne jamais dépasser 35V). Si on se base sur 2mA pour 30V, et qu'on considère que la tension aux bornes de la diode est de 2V, le JFET va devoir dissiper (30V-2V)*2mA=28V*0,002A=56mW. Là encore, son datasheet indique une puissance à ne pas dépasser de 350mW. Supposons donc que nous avons une diode Zener de 30V en parallèle pour garantir que ce générateur de courant reste dans sa plage d'utilisation, il est nécessaire de mettre une résistance en série de cette diode pour limiter le courant.
Partons de la tension mini
Pour garantir 1mA dans la Zener et 2mA dans la LED pour 32V, cela revient à mettre une résistance de 660Ω en série avec la diode Zener. La diode dissipera donc 31mW et la résistance 6mW, tout est bon.
Que se passe-t-il maintenant si je monte la tension à 500V ?
Le courant dans la résistance va être de I=U/R, soit (500V-30V)/660Ω=712mA ! Le courant dans la Zener sera de 712mA-2mA (pour la LED), soit 710mA !
Si ces valeurs ne vous disent pas déjà qu'on est vraiment hors plage, calculons la puissance dissipée en utilisant la formule P=U⋅I :
- Pour la diode Zener: U=30V, I=700mA. Donc P=30V*0,7A=21W. Les diodes Zener classique sont données pour 500mW à 3W. Nous sommes bien au delà !
- Pour la résistance: U=500V-30V=470V, I=712mA. Donc P=470V*0,712A=335W ! Ça devient un bon radiateur électrique...
En plus, même si on considère qu'on a les composants qui vont bien, ce circuit va consommer 500V*712mA=356W ! Rappelons-le, c'est juste pour alimenter une petite LED qui elle ne consomme que 2V*0,002A = soit 4mW. Bonjour le rendement !
Partons de la tension maxi
Si on raisonne dans l'autre sens, c'est à dire en partant de la tension max. Si on choisi une Zener capable de dissiper 3W (comme par exemple une 1SMB5936BT3G), on voit qu'elle accepte un courant max de 50mA. Si nous utilisons une résistance de 10kΩ, le courant dans la Zener sera de 45mA et la diode dissipera 1,35W. Par contre, la résistance dissipera quand même 22W. Il faut donc choisir une résistance de puissance, assez coûteuse. Il faudrait en effet une HS100 10K J pour pouvoir dissiper les 22W sans devoir utiliser un radiateur selon son datasheet. Ce genre de résistance coûte environ 10€ pièce ! Ceci dit, c'est déjà nettement mieux que tout à l'heure car la consommation maximale du montage descend à 22,5W (contre 356W précédemment).
OK, mais que se passe-t-il avec la tension mini maintenant ?
À 32V, la tension aux bornes de la résistance de 10kΩ sera de 2V. Le courant la traversant sera de I=U/R=2V/10kΩ=200µA ! Ce qui est totalement insuffisant pour allumer la LED. Nous ne sommes donc plus conforme aux contraintes fixées.
Cette solution est donc incompatible avec le cahier des charges.
Utilisation d'un abaisseur de tension (DC-DC buck converter)
Il est possible d'utiliser un abaisseur de tension, aussi appelé buck converter en anglais. Il existe beaucoup de petits modules chinois pour pas cher qu'on peut commander partout sur Internet. Mais aucun accepte une tension d'entrée de 500V. Un circuit du genre LNK302P pourrait répondre à ce besoin, même si ce n'est pas son utilisation principale. Ce composant est peu onéreux (environ 1€), mais il faut lui adjoindre 1 bobine, un opto-coupleur, une diode rapide, une résistance et un condensateur.
Cependant, la tension d'alimentation doit être au minimum de 50V (70V conseillé). Nous sommes donc hors spécification ici. Cette solution par sa complexité et le risque de défaillance est donc écartée.
Utilisation d'un transistor BJT
Un autre montage classique pour faire un générateur de courant constant est d'utiliser un simple transistor (NPN ou PNP), une résistance et un générateur de tension fixe (par exemple une diode Zener).
J'ai voulu pour cela faire comme la plupart des bidouilleurs, à savoir utiliser si possible ce que j'ai en stock. Or le transistor acceptant la plus grande tension entre le collecteur est l'émetteur dont je dispose est un 2n5550. Il a un VCEO max de 140V. Pour limiter la tension à 100V environ entre le collecteur et l'émetteur, j'ai utilisé 2 diodes Zener de 51V en série. Cela donne le schéma suivant :
Note : la diode D9 est facultative. Elle améliore la dérive en température.
Une simulation avec LTspice montre que le courant dans la LED (D3) est constant à 1,8mA à partir de 50V, mais il est déjà à 1mA à 28V ce qui correspond au cahier des charges.
Je dispose de l'ensemble de ces composants en stocks, sauf les 2 résistances de puissance (5W) de 10kΩ. Je dispose par contre de résistances 2kΩ d'1W, ce qui peut faire l'affaire surtout que cela réduira la tension aux bornes de chaque résistance.
On peut vérifier la puissance dissipée dans les résistances de puissance et les diodes Zener:
Cette solution conviendrait mais consomme à peut près autant que la simple résistance... Ceci dit, le front d'allumage de la LED est plus franc.
N'est-il pas possible de faire mieux?
La solution qui me semble la plus optimale est de pouvoir se passer des Zener de 51V (D4 et D6) car c'est ça qui fait que le montage consomme beaucoup plus au delà de 100-150V. Or ces Zener sont là car le transistor choisi n'est pas capable de supporter les 500V. En cherchant sur les moteurs de recherche paramétriques de différents revendeur j'ai ai trouvé plusieurs qui conviendraient. Pour ne pas être obligé d'en acheter beaucoup, j'en ai vu un que ferait l'affaire, même s'il semble surdimensionné.
Il s'agit du BUL216. Ce transistor NPN accepte 800V entre le collecteur est l'émetteur et est capable de dissiper 90W (en utilisant un radiateur). Il coûte moins de 2€ l'unité.
À ce propos, quelle est la puissance que va devoir dissiper le transistor ? Dans le pire des cas, il va faire passer 2mA pour une différence de potentielle de 500V moins le seuil de la diode (2V) moins la différence de tension aux bornes de la résistance de régulation (R1 dans le schéma précédent). Si on considère que la différence de tension entre la base et l'émetteur est à peu près égale à celle aux bornes de la diode D9, cela veut dire que la différence de tension aux bornes de la résistance R1 est égale à celle au niveau de la diode Zener D1. J'avais pris une diode Zener de 8,2V. Si on ajoute la tension au niveau de la LED, ça fait un total d'environ 10V.
Donc le transistor va devoir dissiper (500V-10V)*2mA = 980mW. Soit moins d'1W. Attention, le montage complet consomme plus car il y a de la puissance dissipée dans la Zener et les 2 résistances.
Le consommation maximale au niveau de la résistance de la diode Zener est de 3,5W. Les autres composants ont des puissances négligeables. Cela fait donc un circuit qui consomme au maximum 5W.
Quelle est en théorie la puissance minimale que peut consommer un générateur de courant constant ayant une tension d'entrée de 500V et un courant de 2mA ? Simple : P=UI donc P=500V*0,002A=1W.
Quelque soit le montage ou la solution retenue, on ne pourra pas consommer moins que 1W... Sauf si la LED n'est pas allumée en permanence ou si on utilise du découpage.
Par exemple, il serait possible de faire un montage qui consomme le minimum de courant en utilisant un DIAC. Un schéma simple est donné sur le lien suivant: https://www.electronics-lab.com/project/230v-blinking-led/
Cependant, je n'ai pas retenu cette solution pourtant simple, car pour moi la tension de déclenchement (environ 30V) est correcte, mais plus on va se rapprocher de cette tension, moins la LED va clignoter souvent (je n'ai pas simulé mais c'est mon intuition). J'ai peur que la LED ne clignote que trop peu fréquemment avec des tensions basses mais encore dangereuses. C'est pour ça que je n'ai pas retenu cette solution.
Autres solutions ?
Il existe des diodes de régulation de courant, mais celles-ci ne supportent pas 500V. Maintenant dans un datasheet (celui du LT3092), on voit à la page 15 qu'il est possible de mettre deux sources de courant programmables en série, en leur ajoutant une diode Zener de 35V en parallèle pour s'assurer qu'elle ne dépasse pas la tension maximale absolue de 40V par source. Ne serait-ce pas la solution qui consommerait le moins de courant, mais qui nécessite pas mal de composants ?
J'ai fait une simulation sur LTspice en mettant 15 « cellules » N-JFET J112 en série et cela semble fonctionner mais il faut 15 résistances de 1,5kΩ (¼W), une de 2,7kΩ (½W), 15 J112 et 15 diodes Zener 33V (½W), 3 diodes 1N4148 (facultatives) en plus de la LED !
On voit que l'intensité du courant dans la LED est constant de 32V à 500V (1,1mA). Que la puissance dissipée par chaque résistance est inférieure à 2mW, celle dans les Zener est nulle. Enfin, les composants qui dissipent le plus de puissance sont les J112 qui dissipent chacun 33mW maximum lorsqu'on atteint les 500V.
Sur cette simulation, on voit aussi que les Zener ne servent à rien. Mais je pense que cela sert en cas de déséquilibre entre les « cellules ». Effectivement, pour essayer j'ai mis des résistances à 1,6kΩ et d'autres à 1,5kΩ (ce qui est très loin de la précision habituelle des résistances) et là les Zener entrent en action. Le courant de sortie au niveau de la LED peut alors légèrement bouger (de quelques centaines de µA) en fonction de la tension, mais cela reste dans une plage tout à fait acceptable. Cependant, j'ai bien peur que cet équilibrage soit fragile, et que je risque une défaillance.
LA solution ?
Après avoir discuté de ce projet sur le Discord de Cyrob, FR4SW m'a confirmé que mettre des générateurs de courant en série n'est pas une bonne idée et que d'utiliser la solution avec un transistor BJT et un régulateur de tension est d'après lui la meilleure solution. Il m'a suggéré d'utiliser un composant bien connu, le TL431 et m'a fait découvrir par la même occasion un excellent site qui montre une multitude de montages (dont certains peu connus) utilisant un TL431.
Sur la solution à base d'un transistor haute tension, le problème ne venait pas du transistor, mais de la puissance perdue dans la résistance de polarisation de la diode Zener. Or on sait que la puissance dissipée dans une résistance est proportionnelle au carré du courant qui la parcours. Donc LA solution consiste à faire baisser ce courant. Un TL431 nécessite quand même 1mA minimum. N'est-il pas possible de trouver mieux ? Et bien si ! Il existe des régulateurs shunt à très basse consommation. Le moins cher que j'ai trouvé est un LM4040DTB-250GT3. C'est un régulateur shunt de 2,5V (fixe), mais qui ne nécessite dans le pire des cas que 65µA minimum pour garantir ces 2,5V. J'ai également cherché un transistor haute tension avec un fort gain à un tarif raisonnable. J'ai trouvé le PBHV8540Z qui a un Hfe minimum garanti de 100 (pour un typique de 200). Bien que ce transistor ai un VCEO de 400V, il a un VCESM de 500V. Or la base n'est pas ouverte, il y a du courant qui y circule (environ 1mA/200=5µA). Ça peut paraître juste, mais il faut enlever la tension de la LED et de la résistance de 1,8kΩ, ainsi que la valeur de la Zener. Résultat, on ne devrait pas avoir plus de 480V entre le collecteur et l'émetteur du transistor.
Donc pour calculer la résistance nécessaire pour avoir 65µA dans le shunt à 32V, il ne faut pas oublier le courant qui passe par la base du transistor. Dans le pire des cas, on a 1mA/100=10µA. Ça fait que les résistances de polarisation doivent être au minium de 65µA+10µA=75µA. Le calcul de la résistance devient : (32V-2,5V)/75µA≈393kΩ. Compte-tenu de la tension et pour répartir la puissance dissipée, j'ai découpé cette résistance en 4 résistances en série que j'ai arrondi à 110kΩ.
Il faut noter que ce genre de shunt a un front beaucoup plus abrupte qu'une simple Zener. Du coup, pour relever un peu le seuil à partir duquel la LED va s'allumer, j'ai ajouté une Zener de 15V. Cette Zener pourrait d'ailleurs être remplacée par un TL431 ce qui permettrait de régler ce seuil.
Maintenant, que se passe-t-il si la tension passe en dessous de 32V ? Le courant qui va traverser la diode de shunt est en dessous du minimum, du coup son comportement est non documenté. Si le shunt se comporte comme un court-circuit, le transistor sera bloqué, donc la LED éteinte et le courant qui va traverser les résistances sera de l'ordre de 40µA. Si au contraire, le shunt est ouvert, on aura environ 40µA dans la base du transistor, qui devient capable de faire passer 8mA environ, ce qui reste tout à fait acceptable pour la LED. D'ailleurs, si le transistor est saturé, le courant traversant la LED sera de 8mA pour 32V. Donc dans un cas comme dans l'autre, aucun problème pour les composants. La seule chose qu'on ne sait pas c'est si la LED sera allumée ou éteinte, mais vu que j'accepte qu'elle soit allumée pour une tension < 32V.
Dans ce cas, les 4 résistances ne vont dissiper que (500V-15V-2,5V)²/440kΩ=529mW et non plus plusieurs Watts ! Cette puissance est à répartir en 4, du coup il est possible d'utiliser des résistances classique ¼W. Le transistor va dissiper (500V-2,5V-2V-15V)*1mA=480mW. Ce transistor CMS est donné pour 700mW max sur une empreinte standard et jusqu'à 1,5W sur une empreinte plus grande (6cm²), donc ça passe sans problème sans radiateur. Ça fait qu'on ne dissipe au total environ que 1W dans le pire des cas pour l'ensemble du circuit.
Le transistor coûte environnement 50 centimes et le shunt 35 centimes d'euro. La Zener, la LED et les résistances ont un coût négligeable. Ce montage coûte donc environ 1€ en composant pour un très bon rendement ! Je sais quoi commander comme composant ce weekend et je vous tiendrais au courant.
C'est magnifique. Merci FR4SW !
Qu'en pensez-vous ? Avez-vous de meilleures idées ?
N'hésitez pas à commenter ci-dessous !