Un petit outil simple que j'utilise pour lire notre compteur de puissance intelligent (néerlandais) et pour envoyer les données à un affluxDB sur un autre appareil. Cela me permet d'exécuter plus de services publics sur le même Raspberry Pi sans qu'il ne soit dédié à simplement lire le compteur de puissance.
Il est construit pour être ré-compilable pour EG A PI, mais il peut probablement fonctionner sur n'importe quel appareil Linux. Il n'utilise presque pas de puissance CPU et moins de 3 Mo de RAM.
$ ./powreader --help Powreader 1.0
Powreader interprets the output from the digital power meter and outputs it in JSON or pushes it to an InfluxDB.
USAGE:
powreader [OPTIONS] <SERIALPORT>
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
-i, --influxdb <influxdb> Sets the full host and port to the influxdb. Data is transfered over UDP. This argument
is given in the form of HOST:PORT. If this argument is not set, data will be printed as
a JSON stream.
ARGS:
<SERIALPORT> Sets the serial port to use
J'ai fait une configuration systemd qui garantit que ce programme s'exécute toujours. La chaîne d'exécution pour moi est:
/home/ubuntu/powreader --influxdb=192.168.0.50:8089 /dev/ttyUSB0Où le '/ dev / ttyUSB0' est la connexion série avec le compteur de puissance intelligent et la partie affluxDB est l'emplacement de la base de données affluxDB que j'utilise pour pousser les données avec UDP.
Ensuite, j'utilise Grafana pour afficher les mesures en graphiques et jauges.