Pour célébrer les 50 000 abonnés à sa chaîne Cyrob, Philippe Demerliac a décidé de refaire un challenge. Tout est décrit dans sa vidéo « 2 fils challenge ».
Voici un rappel du cahier des charges :
Le montage DOIT fonctionner
- Le module de commande est alimenté en 12V continu +/- 10%
- Les poussoirs sont de simples contacts normalement ouverts
- La consommation doit être nulle si aucun poussoir n'est actionné
- Appuyer les 2 poussoirs en même temps est sans danger et peut au choix, ne rien faire ou commander 1 ou 2 relais
- Pas de commutation parasite, chaque poussoir commande son relais, l'autre ne doit pas être impacté même brièvement
- Chaque relais peut rester commuté sans limite de temps
- Le module avec les 2 relais n'est relié QUE par 2 fils au module de commande et n'est pas alimenté (Pas de pile, alim, etc...)
- Les poussoirs et les relais comptent pour 4 composants, faire avec le moins de composants total (donc + de 4, si égalité, conso mini compte)
Ce concours s'est terminé le mardi 25 Janvier 2022 à 21 heures.
Comment ai-je abordé le problème ?
Le module relais
J'ai commencé par m'occuper du module relais car c'est le plus simple. On sait qu'il ne doit y avoir que 2 fils connectés à ce module, qu'il doit contenir 2 relais et qu'il n'y a aucune alimentation sur ce module. Les poussoirs ne sont pas sur ce module.
Pour ça je vois rapidement 2 moyens de faire ce module :
- Le plus simple: utiliser des diodes qui vont permettre de piloter 1 relais à la fois selon le sens du courant
- Plus complexe: alimenter ce circuit en utilisant les 2 fils mais y superposer un signal numérique pour piloter les relais. Dans ce cas, les relais peuvent être commandés en même temps mais cela nécessite une électronique de décodage ce qui est plus complexe et va nécessité des composants supplémentaires
J'ai donc choisi la première option.
Le plus simple est d'utiliser des diodes pour activer un relais ou l'autre selon le sens du courant. Sans diode de roue libre, 2 diodes suffisent (voir solution 1). Dans ce cas, si le courant va du FIL1 au FIL2, le Relais 1 se colle. Dans l'autre sens, c'est le relais 2. En absence de tension, aucun relais ne se colle. Il est important de noter qu'il n'est pas possible d'actionner les 2 relais en même temps avec cette configuration. Si on ajoute les diodes de roue libre, cela en ajoute 2 et on se retrouve dans la solution 2. On remarque alors que les 4 diodes forment un pont de Graetz (le classique pont de diodes qui sert à redresser du courant alternatif).
Si le pont de diode compte comme un seul composant, la solution 2 bis est la meilleures car elle n'utilise que 3 composants en tout (en comptant les 2 relais). Sinon, c'est la solution 1 qui est le mieux en terme de nombre de composant, mais l'absence de diode de roue libre peut poser des problèmes.
N'y a-t-il pas moyen d'améliorer la solution 1 ?
Et bien si ! Si on ne met que les diodes de roue libre et qu'on met les deux relais en série, un seul à la fois sera en fonction selon le sens du courant.
Dans l'ensemble de ces solutions, un seul relais à la fois est commandé à travers une seule diode. Vue de l'extérieur (depuis les FIL1 et FIL2) ces schémas sont identiques.
Le module de commande
Quelle que soit la solution retenue pour le module relais, il faut donc que l'appui sur un bouton fasse passer le courant dans un sens entre FIL1 et FIL2 et l'appui sur l'autre bouton fasse passer le courant dans l'autre sens. L'appui sur aucun bouton ne devant utiliser aucun courant, cela implique aucun courant dans FIL1 et FIL2 (et donc les relais restent au repos).
Reste le cas où les deux boutons sont enfoncés en même temps. On sait qu'il est impossible de commander les deux relais en même temps mais le cahier des charges indique bien que tout est possible (un seul relais commandé, les deux ou aucun). On a aussi comme contrainte que les deux boutons poussoirs sont de simples boutons normalement ouverts.
La première idée qui m'est venue pour alimenter le module relais dans un sens ou dans l'autre est d'utiliser la même chose que pour alimenter un moteur CC dans un sens ou l'autre, à savoir un pont en H. Dans le monde des bidouilleurs, le L293 est le plus connu. Par contre, celui-ci n'est composé que de demi-ponts en H : il va falloir inverser une des entrées. De plus, sur ces entrées il ne supporte que du 5V, il faut donc réduire la tension. Pour les entrées, il est possible d'utiliser des ponts diviseurs. Pour le circuit, soit une diode Zener avec une résistance, soit un régulateur 5V intégré. J'ai pris cette deuxième option car elle nécessite moins de composant.
Lorsqu'aucun des boutons n'est pressé, aucun courant ne circule. Si au moins un est pressé, cela alimente le rail ⨁ et donc le 5V.
- Si seul le bouton 2 est pressé, le circuit est juste alimenté avec les entrées par défaut, donc 1A aura la valeur logique basse (L) et 2A la valeur haute (H). Le courant circulera donc de FIL1 vers FIL2.
- Si le bouton 1 est pressé (seul ou non), 1A sera à haut et 2A sera à bas, on aura donc l'inverse. Le courant circulera du FIL2 vers le FIL1.
On est alors à 9 composants en comptant les 2 boutons poussoirs. La consommation sera d'environ 15mA, sans compter les relais (on a donc au moins le courant minimum du régulateur de tension).
Peut-on faire mieux?
L'idéal serait de se passer ce cette tension de 5V. Essayons avec des composants discrets. Regardons ce module :
L'idée ici est que le MOSFET est passant par défaut, sauf si le bouton poussoir est pressé. Dans ce cas, il est bloqué et la diode évite le court-circuit. Sur le fil de sortie on a donc l'alimentation positive ou la masse selon que le bouton soit pressé ou non. Si on répète ce circuit pour l'autre bouton, on a alors le courant qui va passer dans un sens ou dans l'autre si un seul des bouton est enfoncé, et il ne va pas passer si les 2 sont appuyés en même temps.
C'est ce que j'ai retenu pour ma solution finale car ce montage utilise peu de composant et consomme très peu (ça se compte en µA, sans compter les relais, 1 seul à la fois).
La solution complète proposée
Peut-on encore réduire ne nombre de composants ?
Après, j'ai voulu aller encore plus loin. L'idée du pont en H du début reste valide. Du coup j'ai cherché s'il n'existait pas un circuit contenant un pont en H tout fait ou on indique directement le sens, donc ne nécessitant pas l'inverseur avec le MOSFET. Et bien, oui ! De tels composants existent ! Par exemple le BD6230. Il accepte sans problème du 12V, y compris au niveau des commandes et est capable d'alimenter directement les relais. Il dispose d'une entrée par sens de rotation du moteur (il est fait pour piloter un moteur DC), ce qui correspond exactement à notre besoin. En plus les entrées ont des résistances de pull down, pas besoin d'en rajouter en externe. Il suffit juste de relier chacun des deux boutons poussoirs aux entrées FIN (forward input) et RIN (reverse input) et d'alimenter le circuit. Pour l'alimentation, une diode sur chaque bouton alimentera le circuit dès qu'un au moins des boutons est pressé.
Maintenant, quand on regarde l'étage d'entrée des entrées FIN et RIN, on voit qu'il y a des diodes de protection en plus de la résistance de pull down mais il n'est pas spécifié dans la documentation technique quel courant max supportent ces diodes. Généralement on trouve des valeurs de l'ordre de 10-20mA. Du coup, si on utilise des relais qui ne consomment que très peu de courant, disons de l'ordre de 10mA comme certains relais reed, il est alors possible d'utiliser ces diodes pour alimenter le circuit. Ce n'est évidemment pas quelque chose à faire en temps normal, mais ici ça permet d'économiser la diode d'alimentation
De plus, il existe des relais reed qui intègrent la diode de roue libre, donc j'arrive à répondre au cahier des charges avec 1 seul composant supplémentaire (en plus des 2 boutons poussoir et des 2 relais) mais c'est très moche !
Il est dur (impossible ?) de réduire plus le nombre de composant, par contre on voit que ce montage consomme un peu plus que le précédent.
Voilà, j'ai hâte de voir vos réalisations et de savoir qui va gagner.
And the winner is...
Les résultats sont maintenant disponibles. Énormément de schémas et de solutions très intéressantes. Merci à tous les participants ! Ma solution à un seul composant est la solution gagnante. D'autres avaient aussi une solution avec un seul composant mais utilisait un relais ce qui consomme plus que le BD6230 qui consomme au maximum 2,5mA sous 36V.
N'hésitez pas à commenter ! 😉