15 mars 2019

Écran Sphérique - Étude - Contrôle de l’Intensité Lumineuse


Pour contrôler l’intensité traversant chacune des leds RGB, et ainsi, varier sa couleur, une méthode bien connue est la modulation de la largeur des impulsions - PWM - Pulse Width Modulation.

Nous voyons que la tension moyenne résultante (en bleu) est proportionnelle au « temps haut » th et à la période T du signal. C’est ce que l’on appelle le rapport cyclique - Rcy.
Afin de moduler cette largeur des impulsions, nous utilisons un circuit programmable (microcontrôleur par exemple) et nous modifions l’état de sa sortie (« 0 » ou « 1 ») suivant un temps prédéfini.


À chaque cycle, on compare le nombre de cycle enregistré dans la variable "Cycle" à la constante "CycleMax" dépendant à l'échantillonnage désiré. Pour 4 bits, nous aurons CycleMax = 2^n - 1 = 2^4 - 1 = 15. Si "Cycle" est supérieur ou égal, on le réinitialise à 0. Puis on applique, à la sortie "Out", le résultat de la comparaison entre "Value" et "Cycle". Enfin, on incrémente notre compteur "Cycle". En modifiant la valeur d’entrée "Value" (0 → 15), alors nous modifions le rapport cyclique RCY en conséquence.
Plus nous utilisons de bits pour coder une valeur, plus le besoin en nombre de cycles grandit (2^n - 1) où n est le nombre de bits. Ce qui augmente considérablement le traitement du circuit programmable si l’on code une valeur sur 8 bits (255), 12 bits (4095) ou 16 bits (65535). Heureusement, beaucoup de ces circuits simplifient les traitements par accélération matérielle (électronique dédiée). Mais ces systèmes permettent de contrôler seulement un nombre limité de sorties.

La Modulation Binaire est une autre approche, bien meilleure lorsqu'il s'agit de contrôler un grand nombre de sorties avec un échantillonnage élevé.