Chez Yoctopuce, il y a une machine à café en libre service. Pour avoir un café il suffit de se déplacer vers la machine, placer sa tasse dessous, appuyer sur un bouton et attendre. Cette attente peut parfois être un peu longue parce que la machine doit moudre une dose de café en grains et éventuellement chauffer si elle n'a pas servi depuis quelques heures. Il arrive donc assez souvent que le "client" parte faire autre chose en attendant et oublie de revenir chercher son café, qui sera retrouvé tout froid par le "client" suivant. Pour mettre un terme à ce gaspillage un peu bête, on a trouvé une solution grâce au tout nouveau Yocto-RFID-15693.
Qui a laissé mourir son café?
RFID power!
L'idée est de placer une étiquette RFID autocollante sous la tasse de chacun et ainsi de détecter si une tasse reste trop longtemps sous la machine à café. Il se trouve qu'on a remarqué que le Yocto-RFID-15693 n'a aucun mal à détecter la tasse si on plaque l'antenne RFID-Ant-13.56 sous la table où est posée la machine à café. En fait, la tasse est détectée si elle se trouve dans une zone d'environ 10x10cm à l’aplomb de l'antenne, ce qui est juste parfait pour notre application.
Début de solution : une tasse avec une étiquette RFID
En pratique, ce projet est relativement trivial, on a simplement fixé sur un support fait de verre acrylique découpé:
- Un YoctoHub-Wireless-n pour la communication réseau
- Un lecteur Yocto-RFID-15693
- Une antenne RFID-Ant-13.56
Plutôt que de faire dépasser une antenne WiFi standard, on a utilisé une antenne autocollante UFL-Wlan-Flex-Antenna. Le tout est vissé sous la table sur laquelle est posée la machine à café.
Un lecteur RFID + un hub wifi et le tour est joué
Le système est alimenté par un bête chargeur USB et piloté un par script Python qui tourne sur une machine distante. Le fonctionnement de base du script est assez simple: dès qu'un tag RFID est détecté, un décompte de 120 secondes commence. Si le tag est toujours là quand le décompte se termine, on enclenche le buzzer du Yocto-RFID-15693.
Amélioration 1
Le Yocto-RFID-15693 dispose d'une LED RGB pilotable par l'utilisateur, mais comme dans notre cas, cette LED se retrouve sous la table, on a profité de la possibilité d'ajouter des LED supplémentaires pour intégrer une barrette de LED directement dans l'épaisseur de la table. La barrette s'allume en vert lorsqu'une tasse est détectée et clignote en rouge lorsque la tasse a été oubliée. En plus du coté spectaculaire, cela offre un moyen simple de s'assurer que le système est bien centré et voit les tasses. En effet, la machine à café étant simplement posée sur la table, il n'est pas impossible que quelqu'un la déplace de quelques centimètres par inadvertance.
On a intégré une barrette de LED directement dans la table
Amélioration 2
Certains d'entre nous ayant l'habitude travailler avec un casque audio sur les oreilles, il n'est pas certain qu'ils entendent le buzzer du Yocto-RFID-15693, on a donc décidé d'utiliser notre projecteur DMX512, toujours installé au plafond depuis nos expériences avec le protocole DMX512. Lorsque le décompte approche de la fin, notre script mets le projecteur sous tension à l'aide d'un Yocto-PowerRelay-V3 et à la fin du décompte, le projecteur est braqué sur la place de travail du coupable collaborateur un peu distrait.
Si votre place de travail est baignée d'une lumière rouge, c'est que vous avez oublié quelque chose
Petite subtilité, l'orientation du projecteur correspondant à la place de travail du propriétaire de chaque tasse n'est pas préprogrammée dans le script de contrôle, mais stockée dans la mémoire du tag collé à chaque tasse. Ainsi, pas besoin de modifier le code pour ajouter une tasse à l'inventaire.
Le boîtier de contrôle de notre projecteur DMX512
Toute l'électronique nécessaire à piloter le projecteur, à savoir un YoctoHub-Ethernet, un Yocto-PowerRelay-V3 et un Yocto-RS485, est installée dans un boîtier indépendant ce qui mets le contrôle du projecteur à disposition d'autres projets du même genre.
Conclusion
Avec quelques modules Yoctopuce, on a très facilement résolu de manière un peu rigolote un problème assez agaçant. Évidement, ça ne marche que parce que la partie de la machine à café sur laquelle on pose la tasse est en plastique. Par contre, on ne sait pas combien de lavages les étiquettes RFID vont tenir, on songe à les vernir pour qu'elle résistent mieux à l'eau, on verra à l'usage.
Si vous voulez jeter un oeuil au script python qui pilote le tout, vous le trouverez ici.