En regardant autour de moi, en pensant que je voulais mesurer facilement la quantité d'énergie utilisée, la prise d'alimentation intelligente FX-5204PS de Fujitsu Component -strip / smart-power-strip / index.html) était en panne. Il est sorti il y a longtemps, mais il semble qu'il soit toujours en production.
Le FX-5204PS dispose d'un port USB B femelle. Je me suis demandé si l'utilisation était déchargée de là par série ou autre, et il s'est avéré qu'un pilote de périphérique dédié était nécessaire. J'ai pensé que je devrais arrêter de l'utiliser pendant un moment, mais quand je l'ai cherché, il y avait une personne qui avait déjà écrit un pilote de périphérique en 2011 (il y a plus de 5 ans à partir de cet article).
OpenBSD ... De plus, la personne qui le sait semble être l'auteur.
Si vous cherchez ailleurs,
SEIL ... Cela semble être un port d'OpenBSD.
Mais ce que je veux utiliser, c'est Linux ou Mac. Considérant qu'il est difficile de créer un pilote dépendant du système d'exploitation et de le maintenir en permanence, j'ai décidé qu'il serait préférable de l'utiliser facilement dans la bibliothèque USB de l'espace utilisateur. J'ai demandé à la personne qui a écrit le pilote de la version OpenBSD sur le contenu du code source et l'ai écrit dans PyUSB [module FX5204PS](https: // github. Il s'agit de com / keiichishima / FX5204PS /). Puisqu'il s'agit de Python, il fonctionne sur diverses plates-formes. Même OS X (macOS n'a pas été testé).
Le but initial a été atteint, même s'il s'agissait d'une petite omission, comme ne pas considérer le cas où deux appareils ou plus étaient connectés en même temps.
Si vous affichez l'état avec le visualiseur que vous avez créé de manière lâche avec pygame
, il ressemblera à ce qui suit.
Les informations pouvant être obtenues avec le module FX5204PS sont à peu près les mêmes que celles du driver OpenBSD: tension, fréquence, température, consommation électrique pour chaque prise (valeur instantanée, valeur moyenne (réinitialisée en 5 secondes par défaut), valeur maximale (réinitialisée en 5 secondes par défaut)) ).
Si vous trouvez des bogues, veuillez les signaler via github et nous les traiterons autant que possible.
Recommended Posts