Ajout du mode AutoGain au Yocto-Spectral(-C)

Ajout du mode AutoGain au Yocto-Spectral(-C)

Depuis la sortie du Yocto-Spectral et du Yocto-Spectral-C, plusieurs personnes ont pu mettre la main sur ce module qui permet de reconnaître les couleurs et de mesurer le spectre lumineux dans le domaine visible et le proche infrarouge. Rapidement, on nous a demandé s’il serait possible d’implémenter un mode AutoGain, pour régler automatiquement le gain en fonction de la luminosité afin d'augmenter la plage dynamique de mesures utilisables.


Lors de la conception du module, nous avions passé beaucoup de temps à perfectionner la prédiction de couleur, mais un peu moins sur l’exploitation des spectres eux-mêmes. C'est pourquoi nous étions passés à côté de la fonctionnalité de contrôle automatique de gain, qui est plus utile dans le cadre d'une mesure d'illumination ambiante. Mais cette omission est désormais comblée, et le nouveau mode AutoGain est maintenant disponible par une simple mise à jour de logiciel. Voyons comment le paramétrer.

Auto gain

Le mode AutoGain permet d’automatiser les mesures spectrales lorsqu’il existe de fortes variations d’intensité lumineuse, sans risquer la saturation et en garantissant des valeurs cohérentes. Le principe est simple:

  • choisir un canal de référence sur lequel sera basé le contrôle du gain ;
  • définir un seuil minimum et un seuil maximum de la valeur brute sur ce canal ;
  • le module ajuste automatiquement le gain pour maintenir la mesure dans cette plage:
    - lorsque la valeur lue dépasse le seuil maximum, le gain diminue
  • - lorsque la valeur lue descend en dessous du seuil minimum, le gain augmente


Les valeurs de seuil utilisées pour la régulation du gain sont les valeurs brutes, c’est-à-dire non normalisées par le gain ou le temps d’intégration. Attention à ne pas définir des seuils trop proches : sinon, l’AutoGain risque de modifier le gain à chaque mesure, car la valeur lue ne restera jamais stable entre les deux seuils.

Nous avons également ajouté une possibilité supplémentaire: la réduction automatique du gain en cas de saturation détectée par le capteur, quel que soit le canal concerné. Ce paramètre a l'avantage de garantir qu'aucun canal du spectre ne soit saturé, mais comme le gain est global pour tous les canaux, il peut mener à un gain très faible en raison de la saturation d'un seul canal.

Configuration

Pour simplifier la configuration, l'interface qui s'affiche dans VirtualHub a été mis à jour avec une interface intuitive permettant de régler facilement l’AutoGain.

Pour déterminer la configuration idéale, il est conseillé d’effectuer les essais directement dans l'interface de test du Yocto-Spectral, puis de sauvegarder les paramètres sur la page de configuration du module. L’interface de configuration du Yocto-Spectral a également été adaptée pour permettre l’enregistrement des paramètres définis.


  
Les interfaces du Yocto-Spectral et Yocto-Spectral-C ont été mises à jour



En mode AutoGain, il est possible de choisir à la fois le temps d’intégration et le gain. Cependant, seul le gain sera ajusté immédiatement si la valeur lue sort des seuils définis (ou si une saturation est détectée, à condition que le changement de gain en cas de saturation soit activé).

Une nouvelle méthode a aussi été ajoutée à la classe YColorSensor:

colorSensor.configAutoGain(channel, minRaw, maxRaw, noSatur)


Paramètres :

  • channel(string) : nom du canal de référence utilisé pour le contrôle du gain.
  • minRaw(int) : seuil minimum de la valeur brute avant augmentation du gain.
  • maxRaw(int) : seuil maximum de la valeur brute avant la diminution du gain.
  • noSatur(bool) : active la réduction du gain en cas de saturation détectée.


Si l’un des paramètres n’est pas valide, la fonction n'en tiendra pas compte. Si le nom du canal indiqué ne correspond pas à un canal valide pour le capteur, l'AutoGain s'appliquera au canal VIS.

Cette fonction ne sauvegarde pas automatiquement la configuration : il faut donc penser à appeler saveToFlash() pour que les réglages soient conservés après en cas de mise hors tension du module.

Conclusion

Le mode AutoGain vous sera très utile pour effectuer des mesures de spectre sur des sources lumineuses très variables ou en extérieur sur de longues durées. Il permet d'assurer la continuité et la validité des valeurs mesurées, même lorsque l’intensité lumineuse passe brutalement d’un niveau très faible à un niveau très fort.

Commenter aucun commentaire Retour au blog












Yoctopuce, get your stuff connected.