mercredi 20 avril 2022

Electronique : La Bascule R/S



 

Electronique : La Bascule R/S


Faisant suite à l'article précédent, nous allons aujourd'hui étudier une bascule très simple : la bascule R/S. Historiquement il s'agit de la première bascule électronique.

Une bascule R/S est, en électronique, un moyen simple d'obtenir une mémoire à 1 seul bit. Elle se met à UN grâce à une impulsion sur son entrée S (SET), et se remet à ZÉRO grâce à une impulsion sur son entrée R (RESET).

1. Le schéma de base

On peut fabriquer une bascule R/S à l'aide de deux portes NON-ET (NAND) :

Au repos, les deux entrées R et S sont à UN, les sorties Q1 et Q2 sont dans un état indéterminé.

Il suffit d'un front descendant sur l'entrée S pour que la sortie Q1 passe à ZÉRO. La sortie complémentaire Q2 passe à UN.

Il suffit d'un front descendant sur l'entrée R pour que la sortie Q1 passe à UN. La sortie complémentaire Q2 passe à ZÉRO.

Il existe un cas pour lequel les deux sorties ne sont pas complémentaires : lorsque S et R sont toutes deux à ZERO, les sorties sont à UN. Il s'agit d'un état interdit.

Ce deuxième schéma est réalisé à l'aide de deux portes NON-OU (NOR). Cette bascule fonctionne sur des fronts montants.

Il suffit d'un front montant sur l'entrée S pour que la sortie Q1 passe à UN. La sortie complémentaire Q2 passe à ZÉRO.

Il suffit d'un front montant sur l'entrée R pour que la sortie Q1 passe à ZÉRO. La sortie complémentaire Q2 passe à UN.

Il existe un cas pour lequel les deux sorties ne sont pas complémentaires : lorsque S et R sont toutes deux à UN, les sorties sont à ZÉRO. Il s'agit d'un état interdit.

2. Application pratique

Voyons maintenant une application pratique : la commande d'une pompe.

Comme dans l'article précédent, imaginons que nous ayons une cuve d'eau à remplir. L'eau provient d'un puits. Un capteur de niveau est présent en haut de la cuve :


Il s'agit d'un capteur à contact sous ampoule (ILS), très fiable. Deux autres capteurs du même type sont montés dans le puits, en haut et en bas :

Afin de ne pas activer la pompe trop souvent, on désire qu'elle soit actionnée uniquement si le puits est plein.

Il y a donc deux conditions d'arrêt de la pompe : 

  • S1 est fermé : la cuve est pleine
  • S3 est fermé : le puits est vide
La pompe est un modèle 12V.

Voici le schéma retenu :


Nous retrouvons ici une bascule R/S :

  • l'entrée 1 de la porte NAND U1A représente l'entrée R
  • l'entrée 6 de la porte NAND U1B représente l'entrée S

La porte U1C permet d'interdire le fonctionnement de la pompe si la cuve est pleine. Sur le schéma, son entrée porte un petit nom : ENABLE

La porte U1D permet d'inverser le signal de commande car le IRF520 est un MOSFET canal N, un niveau HAUT permet de le rendre passant. On aurait pu tout aussi bien utiliser un MOSFET canal P à la place du canal N, en obtenant le même fonctionnement, sans inverser le signal.

Le choix du MOSFET canal N n'est pas anodin : ce sont les MOSFETs les plus courants et le choix est immense. De plus le CD 4011 comporte 4 portes, il en reste donc une que l'on peut utiliser pour l'inversion.

Par défaut, si les 3 capteurs sont ouverts, cela veut dire plusieurs choses :

  • SW1 ouvert : la cuve n'est pas pleine. La résistance R2 applique un niveau UN sur l'entrée ENABLE, autorisant le fonctionnement de la pompe
  • SW2 ouvert : le puits n'est pas plein. La résistance R1 applique un niveau UN sur l'entrée S
  • SW3 ouvert : le puits est vide. La résistance R3 applique un niveau ZERO sur l'entrée R, ce qui entraîne une coupure de la pompe

Les conditions de départ sont donc correctes : la pompe est coupée.

On peut remarquer également que l'état interdit ne peut pas exister. Si R et S sont à ZÉRO cela voudrait dire que SW3 est ouvert (le puits est vide) et que SW2 est fermé (le puits est plein), ce qui est impossible.

Voyons le fonctionnement des différents capteurs :

SW1 : s'il est ouvert, un niveau UN est présent sur l'entrée ENABLE, et autorise le fonctionnement de la pompe.

Si la cuve est pleine, SW1 se ferme et un niveau ZÉRO est présent sur l'entrée ENABLE, et interdit le fonctionnement de la pompe.

SW3 : s'il est ouvert (le puits est vide), un niveau ZÉRO est présent sur l'entrée R, et interdit le fonctionnement de la pompe.

Si le puits est en cours de remplissage, SW3 se ferme et un niveau UN est présent sur l'entrée R. Mais un front montant ne fait pas basculer la R/S et ne permet donc pas le fonctionnement de la pompe.

SW2 : s'il est ouvert un niveau UN est présent sur l'entrée S. Rien ne se passe.

Si le puits est plein, SW2 se ferme et un niveau ZÉRO est présent sur l'entrée S. C'est un front descendant, la R/S bascule et met en marche la pompe.

La pompe va donc fonctionner jusqu'à ce que le puits soit vide, SW3 s'ouvre et l'entrée R passe à ZÉRO. C'est un front descendant, la R/S bascule et arrête la pompe.

Bien entendu, si la cuve est pleine, SW1 se ferme et l'entrée ENABLE passe à ZÉRO, ce qui arrête la pompe. Il suffira donc de vider partiellement la cuve pour que la pompe se remette en route.

L'avantage d'un tel montage est, comme dans l'article précédent, sa simplicité et son faible coût. Ici, une pompe 12V est utilisée. Une diode de roue libre permet d'absorber la surtension générée par le moteur de la pompe lors de la coupure.

Une alimentation 12V complète le tout. Sa puissance dépendra principalement de celle de la pompe.

Si on le désire, on peut très bien remplacer la pompe par un modèle 230V, actionnée par un relais 12V ou 5V (comme dans l'article précédent), suivant ce que l'on peut trouver dans ses fonds de tiroir. Il faudra simplement choisir l'alimentation qui convient. Dans ce cas, un petit modèle de 3W sera amplement suffisant.

3. Téléchargements

Pour télécharger le projet : https://bitbucket.org/henri_bachetti/rainwater-tank.git

Cette page vous donne toutes les informations nécessaires :

https://riton-duino.blogspot.com/p/migration-sous-bitbucket.html

Le projet se trouve dans le sous répertoire pump-control.

4. conclusion

Ce petit exemple peut paraître un peu plus complexe que celui de l'article précédent, car il fait appel à une bascule. Les habitués d'ARDUINO trouveront certainement qu'écrire quelques lignes de code est plus simple. Mais il ne faut pas oublier un détail : un montage en logique câblée permet d'éviter certains désagréments des microcontrôleurs : le plantage, qu'un simple parasite peut parfois provoquer, et dans le cas présent, en cas de plantage, une inondation est à craindre.

Un autre avantage est qu'un montage de ce type peut être facilement alimenté par batterie + panneau solaire, car il ne consomme presque rien, mis à part le faible courant circulant dans les résistances. On peut d'ailleurs changer leurs valeur de 100KΩ par des 1MΩ, ce qui divisera par dix la consommation.

Avec un microcontrôleur, il faudra faire beaucoup plus d'efforts pour arriver au même résultat :

Certaines personnes seront plus à l'aise avec un ARDUINO, mais ce n'est pas forcément le cas de tout un chacun.


Cordialement

Henri


lundi 18 avril 2022

Electronique : Les Monostables

 

Electronique : Les Monostables


Il n'est pas nécessaire de disposer d'un microcontrôleur pour réaliser des temporisations. Différents moyens existent pour arriver à cette fin :

  • NE555
  • circuits monostables :
    • TTL : 74121, 74123
    • CMOS : CD4047, CD4098, etc.
  • circuits purement analogiques

Mais il existe aussi une possibilité assez méconnue : le monostable DIY réalisé à l'aide de portes logiques, NOR ou NAND.

1. Circuit monostable DIY


Sur ce schéma deux monostables sont représentés :

  • un monostable déclenchant sur front montant
  • un monostable déclenchant sur front descendant

1.1 Généralités

La sortie d'une porte NOR (NON-OU) est à UN tant que ses deux entrées sont à ZERO. Elle bascule à ZÉRO si une des deux entrées passe à UN, ou les deux :

Entrée 1     Entrée 2 Sortie
0 01
0 10
1 00
1 10

La sortie d'une porte NAND (NON-ET) est à UN tant que l'une de ses deux entrées est à ZERO. Elle bascule à ZÉRO si ses deux entrées passent à UN :

Entrée 1     Entrée 2 Sortie
0 01
0 11
1 01
1 10

1.2. Monostable déclenchant sur front montant 

Le premier monostable, bâti à l'aide de deux portes NOR, produit une impulsion de niveau HAUT de longueur fixe lorsqu'un front montant est détecté sur l'entrée.

Au repos, la sortie est à ZÉRO, grâce à la résistance R1. Un front montant fait basculer la sortie de U1A à ZÉRO et charge le condensateur C1 jusqu'à atteindre environ 40% de la tension d'alimentation. Pendant ce temps, l'entrée de U1B est à ZERO, sa sortie à UN. Lorsque le condensateur est suffisamment chargé la sortie de U1B re-bascule à ZÉRO.

1.3. Monostable déclenchant sur front descendant

Le deuxième monostable, bâti à l'aide de deux portes NAND (NON-ET), produit une impulsion de niveau BAS de longueur fixe lorsqu'un front descendant est détecté sur l'entrée.

Au repos, la sortie est à UN, grâce à la résistance R2. Un front descendant fait basculer la sortie de U2A à UN et charge le condensateur C1 jusqu'à atteindre environ 60% de la tension d'alimentation. Pendant ce temps, l'entrée de U2B est à UN, sa sortie à ZERO. Lorsque le condensateur est suffisamment chargé la sortie de U2B re-bascule à UN.

1.4. Implémentation

Ces circuits sont implémentés à base de portes logiques NOR et NAND CMOS, dont les avantages sont multiples :

  • large plage d'alimentation : 3V à 15V
  • consommation extrêmement faible : < 1µA

La valeur de la temporisation obtenue dépend des valeurs des couples condensateur / résistance, ainsi que des niveaux de commutation des portes logiques :

T = RC / 2

Avec les valeurs utilisées, 100µF et 100KΩ, la temporisation sera donc de 5 secondes.

Ces monostables ne sont pas redéclenchables, c'est à dire que si un nouveau front est détecté alors que la sortie est active, la longueur de la temporisation ne sera pas modifiée.

Pourquoi avoir choisi de réaliser ces temporisations sans avoir recours à des composants monostables spécialisés, alors que l'écart de prix est faible ? Un boîtier CD4001 ou CD4011 comporte 4 portes. Nous allons pouvoir utiliser les deux portes restantes pour un autre usage, par exemple inverser l'entrée ou la sortie :

Ces deux montages sont équivalents. Ils permettent d'inverser la logique sur l'entrée ou la sortie d'un monostable.

2. Application pratique

Voyons maintenant une application pratique : la commande d'une électrovanne motorisée :

Cette vanne 230V à trois fils est à raccorder comme suit :

  • un fil de neutre
  • un fil d'ouverture
  • un fil de fermeture

Il existe des modèles 12V ou 24V. La puissance nécessaire pour la commande est de 6W.

Le temps d'ouverture est de 15 secondes. L'électrovanne possède des capteurs de fin de course, ce qui fait que si la commande dure plus longtemps, il n'y a aucun risque de l'endommager.

Important : si le temps pendant lequel la commende d'ouverture est appliquée est trop court, elle ne pourra pas être commandée dans l'autre sens. Il faut donc impérativement que le temps de commande soit supérieur à 15 secondes.

Imaginons que nous ayons une cuve d'eau à remplir. L'eau provient de la toiture, par simple gravité. Un capteur de niveau est présent en haut de la cuve :

Il s'agit d'un capteur à contact sous ampoule (ILS), très fiable. Le capteur est ouvert au repos et fermé si la cuve est pleine. Si la cuve est pleine, il faut impérativement couper l'arrivée d'eau, afin d'éviter une inondation.

Sur ce schéma nous trouvons deux monostables, commandés tous deux par le capteur de niveau SW1 :

  • celui du haut permet d'ouvrir la vanne lorsque le capteur est ouvert
  • celui du bas permet de fermer la vanne lorsque le capteur est fermé

Le signal de sortie du monostable du bas est inversé en sortie afin de pouvoir commander le relais K2. On aurait pu tout aussi bien utiliser un transistor PNP à la place du transistor NPN Q2, en obtenant le même fonctionnement, sans inverser le signal.

A la mise sous tension, si le capteur est ouvert, la vanne s'ouvre, si le capteur est fermé, la vanne se ferme.

L'avantage d'un tel montage, outre sa simplicité et son faible coût, est d'être très tolérant par rapport à sa tension d'alimentation : 3V à 15V. On peut très bien l'équiper de relais 12V ou 5V, suivant ce que l'on peut trouver dans ses fonds de tiroir. Il faudra simplement choisir l'alimentation adéquate.

Ici, deux relais 5V sont utilisés, avec chacun leur transistor de commande et leur diode de roue libre. Deux varistances 275V permettent d'absorber la surtension générée par le moteur de la vanne lors de la coupure.

Une alimentation 5V 3W complète le tout. Une Hi-link HLK-PM01 conviendra parfaitement, ou un bloc secteur 5V / 500mA. Si la vanne est un modèle 12V, une alimentation 12V pourra fournir la puissance nécessaire à l'ensemble, mais il faudra choisir une alimentation un peu plus puissante : environ 10W.

3. Téléchargements

Pour télécharger le projet : https://bitbucket.org/henri_bachetti/rainwater-tank.git

Cette page vous donne toutes les informations nécessaires :

Le projet se trouve dans le sous répertoire valve-control.

4. conclusion

Ce petit projet en logique câblée permet de se rendre compte que l'informatique et les microcontrôleurs ne sont pas la seule voie possible lorsque l'on désire réaliser des montages simples.


Cordialement

Henri