Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:controller:vzlogger

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
software:controller:vzlogger [2015/08/08 20:37] – [Meters & Protocols] udo1software:controller:vzlogger [2019/05/06 12:20] – Ort Konfig jau
Zeile 1: Zeile 1:
 ====== vzlogger ====== ====== vzlogger ======
 +
 +This description is also available in [[/software/controller/vzlogger/overview_en|english]].
  
 **vzlogger**... **vzlogger**...
-  * is a tool to read and log measurements of a wide variety of smartmeters and sensors to the volkszaehler.org middleware+  * ist ein Werkzeug zum Lesen der Messwerte von Sensoren und Smartmeter um sie an die volkszahler.org Middleware weiterzureichen 
-  * can run as a daemon in background or via cron. +  * unterstütz auch [[https://www.mysmartgrid.de/|MySmartGrid]] und [[https://en.wikipedia.org/wiki/InfluxDB|InfluxDB]] 
-  * includes a tiny onboard HTTPd to serve realtime readings to the AJAX web frontend.+  * kann als daemon im Hintergrund arbeiten oder per cron aufgerufen werden
 +  * enthält einen kleinen eingebauten httpd um Echtzeitwerte als AJAX-Frontend bereitzustellen 
 +  * liefert die Daten auch über einen zweiten, zusätzlichen Push-Kanal aus.
  
 ===== Features ===== ===== Features =====
-  * evaluates middleware return code +  * wertet den Return Code der Middleware aus 
-  * buffering readings in case of:  +  * puffert die Werte in Falle von:  
-    * network timeout +    * Netzwerktimeout 
-    * invalid middleware return code/exception or misconfiguration +    * ungültigem Middleware Return Code, Fehlern oder Fehlkonfigurationen 
-  * "local interfaceonboard HTTPd ([[http://bugs.volkszaehler.org/view.php?id=9|[9] ]]) +  * "lokales Interfaceeingebauter httpd 
-  * easily extendable with new sensor/meter protocols +  * einfach um weitere Sensoren oder SmartMeter Protokolle zu erweitern 
-  * runs on embedded devices (Plug-ComputersRoutersFluksos etc..) +  * auf Embedded Systemen lauffähig (Mini-Computer, [[/howto/raspberry_pi_image|Raspberry Pi]], Router, Flukso, etc..) 
-  * portable (conforms to POSIX standards)+  * portierbar (entspricht POSIX Standards)
  
 ===== Installation ===== ===== Installation =====
  
-vzlogger is hosted at [[https://github.com/volkszaehler/vzlogger]].+Vzlogger wird über Github bereitgestellt [[https://github.com/volkszaehler/vzlogger]].
  
-==== installation ==== +==== Installationsanleitung ==== 
-for installing the current version, refer to  [[/software/controller/vzlogger/installation_cpp-version]].+Die Anleitung findet ihr auf einer getrennten Seite: [[/software/controller/vzlogger/installation_cpp-version]].
  
  
-===== Meters Protocols =====+===== Zähler Protokolle =====
  
-The following table contains an overview of the existing protocols supported by vzlogger:+Die folgende Tabelle enthält eine Übersicht der von vzlogger unterstützen Protokolle: 
 + 
 +^ID^Beschreibung^Status^Beispiel & Anwendung^Links & Referenzen^ 
 +|''file''|lesen von Datei oder fifo|**implemented**|[[http://owfs.org/|OWFS]], ''/proc/'' Dateisystem|[[http://linux.die.net/man/3/exec|read(3)]]| 
 +|''exec''|Programmausagben parsen|**untested**|[[http://www.digitemp.com/|digitemp]]|[[http://linux.die.net/man/3/exec|exec(3)]]| 
 +|''sml''|SML wie von  EDL-21, eHz and SyM<sup>2</sup> Zählern genutzt|**implemented**| |[[software:sml|SML]]| 
 +|''s0''|S0-Zähler an UART, GPIO oder indirekt über USB angeschlossen|**implemented**|[[/hardware/controllers/raspberry_pi_erweiterung_mit_schaltausgaengen_rev.1|Rpi-Erweiterung Rev.1]] oder [[/hardware/controllers/raspberry_pi_erweiterung_klein|klein]]| 
 +|''d0''|DLMS/D0 zeilenbasiertes Textformat|**implemented**| | [[development:standards|DIN EN 62056-21]]| 
 +|''w1therm''| 1Wire-Sensoren basierend auf DSxxxxx|**implemented**| |1Wire Busmaster DS2482 ist Voraussetzung| 
 +|''ocr''|OCR (Bilderkennung) z.B. über USB-Cam|**implemented**| |[[http://wiki.volkszaehler.org/meterocr_konfigurieren]]| 
 +|''random''|Zufallsgenerator für Werte via [[http://en.wikipedia.org/wiki/Random_walk|random walk]]|**implemented**|für Test- und Demonstrationszwecke| | 
 +|''oms''|Open Metering System, based on M-Bus communication|**implemented**| |[[development:standards#oms_group|OMS Group]]| 
 +|''fluksov2''|auslesen des Flukso onboard SPI fifo|**implemented**| | 
 +|''fluksousb''|USB-Adapterplatine für S0 und Stromwandler auslesen|**planned**|[[hardware:controllers:fluksousb|]]|[[https://github.com/comsound/flukso|'Bart's Protokoll']]| 
 +|''vsm103''|Voldcraft VSM-103 Drehstromzähler|**planned**| |[[hardware:channels:meters:power:vsm-103|VSM-103]]| 
 +|''kd302''|Energiekostenmessgerät KD 302|**planned**| |[[hardware:channels:meters:power:kd_302|KD 302]]| 
 +|''ccost''|Wetterstation vergleichbar mit kommerziellen SmartMeter Systemen|**planned**| |[[http://www.currentcost.co.uk/powermeter/|CurrentCost]], [[http://umweltsuende.wordpress.com/2010/09/16/klein-aber-fein/|Umweltsünde]], [[http://www.jibble.org/currentcost/|Jibble]]| 
 +|''tweetawatt''|KillAWatt mod mit XBee wireless Kommunikation|**planned**| |[[https://github.com/adafruit/Tweet-a-Watt|Sourcecode]], [[http://www.ladyada.net/make/tweetawatt/|Blog]]| 
 +|''ansi''|ANSI Standard der ein Protokoll beschreibt wie es für Zweiwegekommunkation mit Stromzählern in Nordamerika genutzt wird.|**planned**| |[[development:standards#ansi|ANSI C12]]|
  
-^ID^Description^Status^Example & Usecases^Links & References^ 
-|''file''|Read from file or fifo|<html><span style="color: green">implemented</span></html>|[[http://owfs.org/|OWFS]], ''/proc/'' Filesystem|[[http://linux.die.net/man/3/exec|read(3)]]| 
-|''exec''|Parse program output|<html><span style="color: orange">untested</span></html>|[[http://www.digitemp.com/|digitemp]]|[[http://linux.die.net/man/3/exec|exec(3)]]| 
-|''sml''|SML as used by EDL-21, eHz and SyM<sup>2</sup> meters|<html><span style="color: green">implemented</span></html>| |[[software:sml]]| 
-|''s0''|S0-meter directly or indirectly (USB)  connected to UART or GPIO|<html><span style="color: green">implemented</span></html>|Quick and dirty method|[[/hardware/controllers/s0-an-rs232]]| 
-|''d0''|DLMS/D0 linebased cleartext|<html><span style="color: green">implemented</span></html>| | [[development:standards|DIN EN 62056-21]]| 
-|''w1therm''| Support 1Wire-Sensors based on DSxxxxx|<html><span style="color: green">implemented</span></html>| |1Wire Busmaster DS2582 ist Voraussetzung| 
-|ocr|OCR (image processing/recognizing) with USB-Cam|<html><span style="color: green">implemented</span></html>| | | 
-|''random''|Generate random values with a [[http://en.wikipedia.org/wiki/Random_walk|random walk]]|<html><span style="color: green">implemented</span></html>|Testing and demonstration | | 
-|''fluksov2''|Read from Flukso's onboard SPI fifo|<html><span style="color: green">implemented</span></html>| | 
-|''fluksousb''|[[hardware:controllers:fluksousb|]]|<html><span style="color: red">planned</span></html>| |[[https://github.com/comsound/flukso|'Bart's Protokoll']]| 
-|''vsm103''|Voldcraft VSM-103 Drehstromzähler|<html><span style="color: red">planned</span></html>| |[[hardware:channels:meters:power:vsm-103|VSM-103]]| 
-|''kd302''|Energiekostenmessgerät KD 302|<html><span style="color: red">planned</span></html>| |[[hardware:channels:meters:power:kd_302|KD 302]]| 
-|''ccost''|Weatherstation alike commercial smart metering system|<html><span style="color: red">planned</span></html>| |[[http://www.currentcost.co.uk/powermeter/|CurrentCost]], [[http://umweltsuende.wordpress.com/2010/09/16/klein-aber-fein/|Umweltsünde]], [[http://www.jibble.org/currentcost/|Jibble]]| 
-|''tweetawatt''|KillAWatt mod with XBee wireless communication|<html><span style="color: red">planned</span></html>| |[[https://github.com/adafruit/Tweet-a-Watt|Sourcecode]], [[http://www.ladyada.net/make/tweetawatt/|Blog]]| 
-|''ansi''|ANSI standard that describes a protocol used for two-way communications with an electricity meter, mostly used in North American markets.|<html><span style="color: red">planned</span></html>| |[[development:standards#ansi|ANSI C12]]| 
-|''oms''|Open Metering System, based on M-Bus communication|<html><span style="color: green">implemented</span></html>| |[[development:standards#oms_group|OMS Group]]| 
  
 ===== APIs ===== ===== APIs =====
  
-Vzlogger is able to push the gathered data to different backend systems for further processing or storageThis is done via the `api` parameter that is configured per channel. Vzlogger's default backend api is volkszaehler, which is the volkszaehler middleware. Additonal options are mysmartgrid and a 'null' api.+Vzlogger ist in der Lage die erfassten Daten an verschiedene Endsysteme, zur weitere Verabeitung oder Speicherung, zu schickenDas geschieht über den `api` Parameter der für jedem channel konfiguriert wird. 
 +Vzloggers Standard-Endsystem ist die Middleware eines volkszaehler. Weitere Endsysteme sind MySmartGridInfluxDB und eine 'null' API.
  
-===== Configuration ===== 
  
-The vzlogger configuration is done with a file containing JSON encoded settings. General settings also can be set via the [[#command_line_parameters|command line]]. You must have at least one meter in your configuration. Channels are optional. A meter can have more channels. Ex. if you want to log to multiple middleware servers.+===== Konfiguration =====
  
-All meter protocols have own propertiesWe do not describe them here in detailJust take a look at the example configurationIt contains a meter for every protocol.+Die Konfiguration erfolgt über eine Datei die nach JSON kodierte Einstellungen enthältÜberlicherweise zu finden unter ''/etc/vzlogger.conf''. Einige grundlegende Parameter lassen sich auch über [[#Kommandozeilenparameter|Kommandozeile]] bestimmen. 
 +Es sind ein oder mehr meter in der Konfiguration erforderlichChannels sind optionalEin meter kann mehrere channel enthalten und damit auch mehrere Middlewares bedienen.
  
-A detailed example configuration is included in the distribution, +Alle Zählerprotokolle haben gesonderte Eigenschaften die hier im Detail nicht weiter beschrieben werden. Zu jedem Protokoll gibt es eine kommentierte Beispielkonfiguration. Einzusehen bei github: https://github.com/volkszaehler/vzlogger/blob/master/etc/
-see https://github.com/volkszaehler/vzlogger/blob/master/etc/vzlogger.conf+
  
-You can also find different user's configurations in the [[//howto]] section.+Die einzelnen Parameter sind hier im Wiki nochmal in deutsch beschrieben: [[software/controller/vzlogger/vzlogger_conf_parameter]] 
 +Konfigurationen diverser Nutzer finden sich im Bereich [[//howto|HowTo]]. Spezifische Beispiele für einzelne Zähler  im Bereich [[/hardware/channels/meters/power/edl-ehz]].
  
-You can also use these script: [[http://volkszaehler.github.io/vzlogger/|vzlogger.conf-editor]]+Als Unterstützung bei der Syntax dient der [[http://volkszaehler.github.io/vzlogger/|vzlogger.conf-Editor]].
  
 +==== Identifier ====
 +Je nach Zähler oder Sensor stehen ein oder mehre Werte zur Verfügung. Um diese den Channels zuordnen zu können sind eindeutige Identifier notwendig. Diese werden zum Teil vom Protokoll oder auch durch die Hardware bestimmt.
 +^ Meter ^ Identifier ^ Bemerkung ^
 +| SML, D0 | [[software:obis|Obis-Codes]] z.B. 1-0:1.8.0 | Welche Obis-Codes/Identifier gesendet werden ist abhängig vom Gerät |
 +| OMS | [[software:obis|Obis-Codes]] 1.8.0, 2.8.0, 1.7.0, 2.7.0 | max. die 4 Obis-Codes, abhängig vom Gerät |
 +| S0 | "Impulse" und "Impulse_neg" | Anzahl Impulse (pro Sekunde) |
 +| S0 | "Power" und "Power_neg" | Impulse pro Zeiteinheit umgerechnet in "Leistung" (per Parameter resolution) |
 +| 1Wire | ID des 1-Wire-Sensors | Pro gefundenem Sensor ein Identifer mit Temp. als Wert |
 +| FluksoV2 | 2 pro Channel mittels ChannelId und -ChannelId | Consumption = -ChannelId, Power = +ChannelId |
 +| File, Exec | (leer) oder per $i erkannter Identifier | z.B. $i = $v => Temperatur = 10 => Identifier "Temperatur", Value = 10 |
 +| OCR | konfigurierbar | siehe Config Option "identifier" |
 +| Random |  | kein Identifier Name, nur Wert und Zeit |
  
-===== Command line parameters ===== + 
-^parameter^^example (default)^description+===== Kommandozeilenparameter ===== 
-^long^short| | | +^Parameter^^Beispiel (Default)^Beschreibung
-|%%--%%config|-c|/etc/vzlogger.conf|configuration file+^lang^kurz| | | 
-|%%--%%log|-o|/var/log/vzlogger.log|log file+|%%--%%config|-c|/etc/vzlogger.conf|Konfigurationsdatei
-|%%--%%daemon|-d|//off//|run as daemon+|%%--%%log|-o|/var/log/vzlogger.log|Logfile
-|%%--httpd%%|-l|//off//|activate local interface (tiny HTTPd which serves live readings)| +|%%--%%daemon|-d|//off//|im Hintergrund ausführen
-|%%--httpd-port%%|-p|8080|TCP port for HTTPd+|%%--httpd%%|-l|//off//|lokales Interface aktivieren (kleiner httpd für Echtzeitwerte)| 
-|%%--%%help|-h| |show short help+|%%--httpd-port%%|-p|8080|TCP-Port des httpd
-|%%--%%verbose|-v//level//|0|enable verbose output (0-20)| +|%%--%%help|-h| |Kurzhilfe
-|%%--%%version|-V| |show version of vzlogger|+|%%--%%verbose|-v//level//|0|tiefe der Ausgabe erhöhen (0-15; 0 = log_alert, 1 = log_error, 3 = log-warning, 5 = log_info, 10 = log-debug, 15 = log_finest)| 
 +|%%--%%version|-V| |Version des vzlogger ausgeben|
  
 ===== Links ===== ===== Links =====
-  * [[https://github.com/volkszaehler/vzlogger/|Sourcecode]] on github.com+  * [[https://github.com/volkszaehler/vzlogger/|Quellcode]] auf github.com
   * [[https://github.com/volkszaehler/libsml|libsml]]   * [[https://github.com/volkszaehler/libsml|libsml]]
- 
-===== Generate Debian packages for your favorite platform ===== 
- 
-<note important>Package source seems to be defunct!</note> 
- 
-<code> 
-$ sudo echo "deb-src http://packages.0l.de/debian/ squeeze main non-free" >> /etc/apt/sources.list 
-$ sudo apt-get update 
-$ apt-get source vzlogger 
-$ cd vzlogger-<version> 
-$ sudo apt-get install debhelper 
-$ dpkg-buildpackage -b 
-</code> 
  
software/controller/vzlogger.txt · Zuletzt geändert: 2022/06/17 08:15 von boenki