Le MOC3041 est un optocoupleur à sortie triac, en boîtier DIP-6 traversant. Sa sérigraphie MOC3041 est lisible sur le boîtier blanc de la photo. Il réunit deux fonctions dans un seul composant : une isolation galvanique entre la commande et le secteur, et un déclenchement au passage par zéro de la tension alternative.
La partie gauche, celle de la commande, est une diode infrarouge : elle se branche exactement comme une LED, entre une sortie de microcontrôleur et la masse. La partie droite est un petit triac bilatéral, qui ne sert pas à alimenter la charge mais à déclencher un triac de puissance. Le fabricant l’écrit noir sur blanc dans sa note d’application : ce composant ne doit pas être utilisé pour commuter directement une charge, il est un organe de déclenchement.
Cette distinction est la clé de la fiche : le MOC3041 supporte 400 V crête côté sortie, mais seulement des impulsions de courant de l’ordre de l’ampère. Le courant de la lampe ou du moteur passe par le triac externe, jamais par lui.
Caractéristiques techniques
| Référence | MOC3041 (sérigraphie du boîtier), famille MOC304x / MOC303x |
|---|---|
| Boîtier | DIP-6 traversant, pas de 2,54 mm, 6 broches (3 par rangée) |
| Entrée | Diode infrarouge à l’arséniure de gallium ; anode broche 1, cathode broche 2 |
| Tension directe de la LED | 1,25 V typique, 1,5 V maximum sous 30 mA |
| Courant de déclenchement (IFT) | 15 mA maximum pour le MOC3041 — 10 mA pour le MOC3042, 5 mA pour le MOC3043, mêmes broches et mêmes caractéristiques par ailleurs |
| Courant d’entrée recommandé | Entre 15 mA et 60 mA : en dessous du maximum d’IFT rien n’est garanti, au-delà des 60 mA la LED s’abîme |
| Courant direct continu maximal | 60 mA |
| Tension inverse de la LED | 6 V — une alimentation à l’envers sur les broches 1 et 2 détruit la diode |
| Tension de blocage de sortie (VDRM) | 400 V crête pour la famille MOC304x ; 250 V crête pour la famille MOC303x |
| Sortie | Triac bilatéral, bornes 4 et 6 ; commutation par les deux polarités |
| Tension à l’état passant | 1,8 V typique sous 100 mA crête, 3 V maximum |
| Courant de maintien | 250 µA typique dans les deux sens |
| Courant de pointe répétitif | 1 A en impulsions de 100 µs à 120 par seconde — une pointe, pas un courant de charge |
| Vitesse de montée admissible (dv/dt) | 1000 V/µs garantie, 2000 V/µs typique |
| Détection de passage par zéro | Intégrée : le triac interne ne s’amorce pas tant que la tension entre ses bornes est supérieure à 20 V crête environ |
| Fuite à l’état bloqué | 100 nA au plus |
| Isolement | 7500 V crête en surtension (60 Hz, une seconde) ; 4170 V alternatifs efficaces pendant une minute selon UL1577 sur les versions à suffixe M |
| Température de fonctionnement | −40 à +85 °C ; stockage −40 à +150 °C |
| Dissipation de la LED | 120 mW à 25 °C, à déclasser de 1,41 mW par degré au-dessus |
Brochage du boîtier DIP-6
Le repère est le point moulé dans le plastique, ou le chanfrein d’un des grands côtés. Vue de dessus, repère vers le bas, la broche 1 est la première de la rangée de gauche et la numérotation descend le long de cette rangée, puis remonte par la rangée de droite : les broches 4, 5 et 6 font face aux broches 3, 2 et 1.
| Broche 1 | ANODE — entrée de la diode infrarouge, côté positif de la commande |
|---|---|
| Broche 2 | CATHODE — entrée de la diode infrarouge, côté masse de la commande |
| Broche 3 | Aucune connexion interne, à laisser libre |
| Broche 4 | Première borne du triac interne, celle qui part vers la gâchette du triac de puissance |
| Broche 5 | Substrat du boîtier, jamais câblée dans les montages d’usage |
| Broche 6 | Seconde borne du triac interne, celle qui rejoint le fil de phase |
Le triac interne est bidirectionnel : ses deux bornes sont interchangeables, permuter les broches 4 et 6 ne change rien au fonctionnement. L’isolement, lui, se mesure entre la paire 1-2 et la paire 4-6 : c’est lui qui empêche le secteur de remonter dans la carte à microcontrôleur.
Une seule erreur est destructrice : inverser les broches 1 et 2. La diode infrarouge n’aime pas la tension inverse et ne survit pas à 6 V en sens inverse. La flèche du premier caractère de la sérigraphie, ou le repère de cathode que porte le boîtier, lève le doute avant la mise sous tension.
Le passage par zéro : ce que cela change
Quand la commande réclame l’allumage alors que la sinusoïde du secteur est à son maximum, le triac interne attend. Il ne s’amorce qu’au moment où la tension entre ses bornes redescend sous une vingtaine de volts, c’est-à-dire au voisinage du passage par zéro, et il conduit alors la demi-alternance qui suit.
- C’est un interrupteur tout ou rien, pas un variateur. Le déclenchement étant forcément calé sur le zéro, on ne peut pas découper la sinusoïde en son milieu pour réduire la puissance. Le MOC3041 remplace un relais, il ne remplace pas un gradateur.
- L’ordre d’allumage est obéi au passage par zéro suivant, soit 10 ms au plus tard à 50 Hz. Invisible à l’œil, mais à ne pas oublier dans un asservissement rapide.
- L’extinction n’est pas immédiate non plus. Un triac s’éteint quand le courant qui le traverse retombe sous son courant de maintien, donc au passage par zéro du courant. Sur une charge résistive, cela se confond avec le zéro de tension ; sur une charge inductive, le décalage se voit.
- L’allumage à zéro volt protège la charge. Pas d’appel de courant sur le pic de tension, pas d’arc, beaucoup moins de parasites conduits et rayonnés. C’est la raison d’être de ce composant : il rend un interrupteur statique silencieux et propre.
- Une variation lente reste possible sur une charge résistive : au lieu de hacher la sinusoïde, on allume et on éteint des demi-alternances entières par trains. La puissance moyenne se règle alors sans aucun parasite, ce qui suffit pour un chauffage, jamais pour l’éclairage d’une pièce.
Applications courantes
- Relais statique maison : remplacer le contact d’un relais par un triac, avec la commande logique isolée du secteur. Aucune pièce mécanique en mouvement, aucune usure de contact, aucune limite au nombre de manœuvres.
- Éclairage 230 V tout ou rien, allumage différé, minuterie, scénarios.
- Résistances de chauffe et appareils résistifs, pilotés par trains de demi-alternances.
- Moteurs à courant alternatif, électrovannes, pompes, en tout ou rien — la commande ne peut pas inverser le sens ni régler la vitesse.
- Appareils domestiques commandés depuis un microcontrôleur ou un module sans fil, où il faut une barrière infranchissable entre la logique 5 V et le secteur.
- Interfaces industrielles : sortie de carte de commande vers un contacteur statique, à la place d’un relais électromécanique.
Mini-projet : allumer et éteindre une lampe 230 V depuis un bouton
Le montage typique du fabricant, dans sa variante la plus simple : bouton poussoir sur l’Arduino, diode de commande alimentée par une sortie numérique, triac de puissance déclenché par la sortie du MOC3041, lampe sur le secteur.
Ce qu’il faut
| L’isolation | Le MOC3041 de cette page |
|---|---|
| La commande | Uno R3 avec câble USB |
| L’étage de puissance | Un triac de puissance tenant au moins 600 V et le courant de la charge — un BT136 pour une lampe de 100 W, un modèle plus gros pour un moteur |
| La résistance d’entrée | 10 résistances 1/4 W 220 ohms, pour fixer le courant de la diode autour de 16 mA sous 5 V |
| La résistance de gâchette | 10 résistances 1/4 W 330 ohms, entre la broche 4 et la gâchette du triac |
| La charge | Une lampe à incandescence 230 V, ou une charge résistive de même tension, avec son fusible |
| Le bouton | Un bouton poussoir momentané entre D2 et la masse, la résistance de tirage interne de l’Arduino suffit |
| Le support | Câbles Dupont et une plaque d’essai 830 points pour la partie 5 V uniquement |
Le câblage
Le secteur est dangereux. Tout le câblage se fait hors tension, l’étage de puissance se monte sur une plaque à souder ou dans un boîtier — jamais sur une plaque d’essai — et un fusible en série avec la ligne est la seule protection contre une fausse manœuvre. L’isolation du MOC3041 protège le microcontrôleur, pas la personne qui touche le montage.
Partie commande, en 5 V :
Broche 1 du MOC3041 (ANODE) | → sortie numérique D3 de l’Arduino, par une résistance de 220 ohms |
|---|---|
Broche 2 du MOC3041 (CATHODE) | → masse de l’Arduino |
| Bouton poussoir | → entre D2 et la masse, tirage interne activé dans le programme |
Partie puissance, en 230 V :
| Broche 6 du MOC3041 | → borne MT2 du triac, du côté du fil de phase (c’est la borne qui sert de référence au triac) |
|---|---|
| Broche 4 du MOC3041 | → résistance de 330 ohms → gâchette (G) du triac |
| Borne MT1 du triac | → lampe → neutre |
| Fil de phase | → fusible → borne MT2 du triac, donc au même point que la broche 6 |
Les deux masses ne se rejoignent jamais : celle de l’Arduino reste de son côté, celle du secteur n’existe pas. C’est tout l’intérêt du montage.
Deux précautions qui viennent du datasheet. La résistance de gâchette n’est pas décorative : sans elle, le courant de déclenchement n’est pas limité et la gâchette du triac prend tout ce que l’optocoupleur peut donner. Et sur une charge inductive — moteur, transformateur, électrovanne — l’association résistance de 39 ohms et condensateur de 0,01 µF en parallèle sur le triac, appelée amortisseur, n’est pas facultative : c’est elle qui absorbe le pic de tension au moment de la commutation. Sur une lampe à incandescence, elle peut être omise.
Le programme
À téléverser par USB. Aucune bibliothèque à installer.
/*
* Interrupteur secteur tout ou rien pilote par un MOC3041
* Carte : Arduino Uno R3
* Montage : D3 - 220 ohms - broche 1 (anode) du MOC3041
* broche 2 (cathode) du MOC3041 - masse de l'Arduino
* broche 6 du MOC3041 - borne MT2 du triac, cote phase
* broche 4 du MOC3041 - 330 ohms - gachette du triac
* bouton entre D2 et la masse, resistances de tirage internes activees
*
* Composants, brochage et fiche complete : www.marocproduits.com
*/
const int BOUTON = 2;
const int COMMANDE = 3;
bool lampeAllumee = false;
int niveauPrecedent = HIGH;
unsigned long instantAppui = 0;
void setup() {
pinMode(BOUTON, INPUT_PULLUP);
pinMode(COMMANDE, OUTPUT);
digitalWrite(COMMANDE, LOW); // lampe eteinte a la mise sous tension
Serial.begin(9600);
Serial.println("Interrupteur secteur pret");
}
void loop() {
int niveau = digitalRead(BOUTON);
unsigned long maintenant = millis();
if (niveau == LOW) {
if (niveauPrecedent == HIGH) {
if ((maintenant - instantAppui) > 200) {
instantAppui = maintenant;
lampeAllumee = !lampeAllumee;
digitalWrite(COMMANDE, lampeAllumee ? HIGH : LOW);
Serial.println(lampeAllumee ? "Lampe allumee" : "Lampe eteinte");
}
}
}
niveauPrecedent = niveau;
}Comment ça marche
- Le bouton est câblé entre la broche et la masse, et le tirage interne la maintient au niveau haut quand personne ne l’appuie : appuyer fait donc passer la lecture à l’état bas. C’est l’inverse de l’intuition, et c’est ce que teste la condition
niveau == LOW. - La comparaison avec
niveauPrecedentdétecte le front, pas l’état : sans elle, la lampe basculerait des milliers de fois par seconde tant que le doigt reste sur le bouton. - Le délai de 200 millisecondes ajoute un anti-rebond logiciel : un contact mécanique produit plusieurs fermetures en quelques millisecondes, que le programme ignorerait sinon comme plusieurs appuis.
digitalWrite(COMMANDE, HIGH)fait passer environ 16 mA dans la diode du MOC3041, au-dessus du maximum d’IFT de 15 mA : le déclenchement est garanti pour n’importe quel exemplaire, même le plus gourmand. Une résistance de 330 ohms ne laisserait passer que 11 mA, en dessous du seuil garanti — c’est l’erreur la plus fréquente sur ce montage.- La lampe ne s’allume pas à l’instant où le programme écrit sur la broche : elle s’allume au passage par zéro suivant, soit 10 ms plus tard au maximum à 50 Hz.
- À l’extinction, l’Arduino éteint la diode, mais le triac externe reste conducteur jusqu’à ce que le courant de la lampe retombe sous son courant de maintien : la lampe s’éteint donc à la fin de la demi-alternance en cours.
- Une fois amorcé, un triac ne s’éteint plus tant que le courant ne s’annule pas : il est verrouillé. C’est ce qui rend l’ensemble insensible aux parasites — un pic de tension ne peut pas ouvrir un interrupteur déjà fermé — et c’est aussi ce qui interdit de commander une charge continue par ce moyen.
Si la lampe ne s’allume pas
- La sortie D3 est bien à l’état haut et la diode reçoit son courant ? Mesurer la tension aux bornes de la résistance de 220 ohms : elle doit être proche de 3,8 V, ce qui correspond aux 16 mA attendus. Une tension nulle signale une broche mal programmée, une tension trop faible une résistance trop grande.
- Le triac est-il monté dans le bon sens ? Un triac n’a pas de sens au sens strict, mais la référence de la gâchette, elle, en a un. Si le montage suit le schéma mais que le triac chauffe sans rien allumer, permuter les bornes MT1 et MT2 puis vérifier que la gâchette est bien pilotée par la branche qui contient la résistance de 330 ohms.
- Les deux parties du montage partagent-elles bien un point commun côté puissance ? La broche 6 et la borne MT2 doivent être au même potentiel, sur le fil de phase. Un montage où la broche 6 rejoint le neutre ne déclenche rien.
- La charge est-elle vraiment alimentée ? Un fusible en série, et non un fusible de récupération déjà grillé, se vérifie au multimètre avant de chercher plus loin.
- Le composant est-il vivant ? Hors tension, un multimètre en position diode ne montre rien entre les broches 4 et 6, et environ 1,2 V entre les broches 1 et 2 dans le bon sens. Une mesure de continuité entre 1 et 4, ou entre 2 et 6, signifierait que la barrière d’isolement est percée : le composant est à remplacer.
Variante : commander une charge continue, ou vérifier un état
Le MOC3041 ne convient pas au courant continu. Une fois amorcé, son triac interne reste conducteur tant que le courant ne retombe pas sous le courant de maintien, ce qui n’arrive jamais avec une alimentation continue : on peut allumer, jamais éteindre. Pour une charge continue — moteur, électrovanne, LED de puissance — l’optocoupleur PC817 joue le rôle d’isolation et sa sortie à transistor se commande dans les deux sens ; il se complète alors d’un relais 5 V ou d’un transistor de puissance selon le courant demandé.
Il reste un usage légitime du MOC3041 en basse tension : la détection de passage par zéro n’est pas accessible autrement, mais on peut alimenter l’entrée du composant depuis le secteur par une résistance de forte valeur, la sortie délivrant alors une impulsion brève à chaque passage par zéro. C’est le montage des synchroniseurs de gradateur et des compteurs de cycles, à condition d’accepter que la diode d’entrée consomme son courant en permanence.
Questions fréquentes
Peut-on faire un gradateur, ou régler l’intensité d’une lampe, avec le MOC3041 ?
Non. Le passage par zéro du MOC3041 l’interdit : le composant refuse de s’amorcer tant que la tension entre ses bornes n’est pas redescendue sous une vingtaine de volts, alors qu’un gradateur travaille précisément en amorçant le triac en plein milieu de la sinusoïde. Pour cela il faut un pilote sans détection de zéro, de la famille MOC302x ou MOC305x, qui déclenche dès que la commande arrive, quel que soit l’instant. Avec le MOC3041, la variation de puissance reste possible, mais seulement par trains de demi-alternances entières — utilisable sur une résistance de chauffe, pas sur un éclairage.
Peut-il commuter directement une lampe 230 V ?
Non, et c’est écrit dans le datasheet. Le triac interne ne supporte que des pointes de 1 A en impulsions de 100 µs : il est dimensionné pour fournir le courant de gâchette d’un triac de puissance, pas pour porter la charge. Une lampe branchée directement sur les broches 4 et 6 s’allumerait peut-être quelques instants, puis l’optocoupleur mourrait. Le triac externe est obligatoire.
Comment choisir le triac de puissance ?
Trois critères dans cet ordre : la tension de blocage, au moins 600 V pour le réseau 230 V ; le courant, la moitié au maximum du courant nominal du triac pour une charge résistive ; et la sensibilité de gâchette, qui doit être compatible avec le courant que l’optocoupleur fournit. Un triac à gâchette sensible, de la famille BT136 ou BT139, se déclenche sans peine. Un modèle à gâchette peu sensible, prévu pour de gros courants, peut avoir besoin de plus de courant que le MOC3041 n’en donne : dans ce cas, on intercale un petit transistor entre l’optocoupleur et la gâchette.
Faut-il une varistance ou un amortisseur ?
L’amortisseur, résistance de 39 ohms et condensateur de 0,01 µF, est nécessaire sur une charge inductive : c’est lui qui absorbe le pic de tension produit par la bobine à l’extinction, et sans lui l’optocoupleur finit par mourir. Sur une charge résistive, il peut être omis. Une varistance en parallèle sur la ligne complète la protection contre les surtensions du réseau, qui ne dépendent pas de la charge.
Pourquoi 220 ohms en entrée et pas 330 ohms, comme dans certains schémas ?
Parce que le seuil du MOC3041 est élevé : il demande jusqu’à 15 mA pour être garanti de déclencher. Sous 5 V, la résistance de 330 ohms ne laisse passer que 11 mA — le montage fonctionne avec beaucoup d’exemplaires, puis cesse de fonctionner avec d’autres, ce qui donne des pannes qui n’apparaissent qu’à la deuxième fabrication. Aucune erreur de conception ne coûte plus cher à diagnostiquer. Sous 3,3 V, la résistance descend à 100 ohms pour retrouver la même marge.
Peut-on le commander depuis une sortie 3,3 V ?
Oui, en ajustant la résistance. La diode a besoin d’environ 1,3 V et les 3,3 V d’un module laissent donc passer le courant voulu avec une résistance de 100 ohms, ce qui demande environ 20 mA à la sortie du microcontrôleur : à vérifier, toutes les sorties 3,3 V ne les fournissent pas. Si la sortie est limitée, intercaler un petit transistor NPN, la broche ne pilotant alors que la base.
Le MOC3041 chauffe-t-il ?
À peine. Le courant de la charge ne le traverse pas : seule la diode d’entrée dissipe de la puissance, soit environ 25 mW dans ce montage, et la chute de tension à l’état passant concerne des courants de gâchette très brefs. Un boîtier qui chauffe signale un montage fautif — typiquement une charge branchée directement sur la sortie.
Quelle différence avec un relais électromécanique ?
Le relais découple par un contact, le MOC3041 par une barrière optique : les deux isolent. Le relais supporte n’importe quelle forme de courant, continu compris, et n’introduit presque aucune chute de tension, mais il claque, s’use et finit par coller après quelques centaines de milliers de manœuvres. L’ensemble MOC3041 et triac ne s’use pas, ne fait aucun bruit et se commande à zéro volt, mais ne s’applique qu’au courant alternatif et ne peut pas régler la puissance. Pour un usage tout ou rien sur le secteur, l’ensemble statique est le meilleur choix dès que le nombre de manœuvres devient important.
Un module tout fait existe-t-il ?
Un relais statique est exactement cela : un MOC3041 ou son équivalent, un triac de puissance, et l’amortisseur, dans un boîtier à cosses. Le prendre tout fait se justifie dès que l’on commande un appareil du réseau et que l’on veut éviter de manipuler soi-même le secteur — la partie dangereuse est déjà enfermée et repérée. Le composant nu reste utile pour comprendre le montage, pour réparer un module existant, ou lorsque le triac doit être choisi suivant un cahier des charges précis.
À combiner avec
Pour reproduire le mini-projet de cette page : le MOC3041 de cette page, un Uno R3, des résistances de 220 ohms pour l’entrée, des résistances de 330 ohms pour la gâchette, et des câbles Dupont pour la partie commande. La partie puissance se soude : un fer à souder 40 W et une plaque d’essai pour mettre la logique au point avant de passer au circuit définitif suffisent. Pour une installation fixe et propre, le boîtier rail DIN reçoit la carte et se clipse dans un tableau. Si le montage doit commander une charge continue, lui préférer le PC817 avec un relais 5 V, ou un relais statique si l’on veut la version déjà assemblée, avec une varistance en protection du réseau.







Avis
Il n’y a pas encore d’avis.