Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware:channels:heating_control:viessmann_optolink

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
hardware:channels:heating_control:viessmann_optolink [2018/03/06 10:39] – [Test] mpseyboldhardware:channels:heating_control:viessmann_optolink [2019/01/19 15:42] – root, systemctl jau
Zeile 9: Zeile 9:
 [[https://github.com/openv/openv/issues/399|vcontrold für VItodens 300]] installieren, testen und den Adressen der eigenen Steuerung der Heizungsanlage anpassen. [[https://github.com/openv/openv/issues/399|vcontrold für VItodens 300]] installieren, testen und den Adressen der eigenen Steuerung der Heizungsanlage anpassen.
 Zum Test anfänglich nur ''get''  Befehle auf Speicheradressen verwenden (z.b. einer ähnlichen Anlagensteuerung) und die Ausgaben mit denen am Bedienfeld auf Konsistenz prüfen. Zum Test anfänglich nur ''get''  Befehle auf Speicheradressen verwenden (z.b. einer ähnlichen Anlagensteuerung) und die Ausgaben mit denen am Bedienfeld auf Konsistenz prüfen.
-Dann Parameter am Bedienfeld ändern und prüfen ob der Inhalt der gelesenen Speicheradresse sich wie erwartet ändert.+Dann Parameter am Bedienfeld ändern und nochmals prüfen ob der Inhalt der gelesenen Speicheradresse sich wie erwartet ändert.
  
 ==== vzlogger ==== ==== vzlogger ====
 Im vzlogger den MeterExec verwenden um die Daten via ''vclient'' von ''vcontrold'' des [[https://github.com/openv/vcontrold|openv projekts]] auszulesen. Der Format String mit `$i` muss stets (auch bei nur einem value) verwendet werden. Im vzlogger den MeterExec verwenden um die Daten via ''vclient'' von ''vcontrold'' des [[https://github.com/openv/vcontrold|openv projekts]] auszulesen. Der Format String mit `$i` muss stets (auch bei nur einem value) verwendet werden.
 +<note important>Wegen Sicherheitbedenken ist MeterExec standardmäßig nicht in der Lage Prozesse mit root-Rechten anzustoßen. Eine Lösung ist vzlogger mit den Rechten eines lokalen Users zu starten.</note>
 +
 <code base vzlogger.conf>... <code base vzlogger.conf>...
 +"log" : "/home/pi/vzlogger.log",
 +...
 "meters": [{ "meters": [{
    "enabled": true,    "enabled": true,
Zeile 32: Zeile 36:
 }] }]
 ... ...
 +</code>
 +
 +==== Systemdienst ====
 +Um vcontrold über systemctl zu steuern eine Konfiguration unter ''/etc/systemd/system/vcontrold.service'' anlegen:
 +<code base vcontrold.service>
 +[Unit]
 +Description=vcontrold daemon
 +After=syslog.target systemd-udev-settle.service
 +
 +[Service]
 +Type=forking
 +ExecStartPre=/bin/ls /dev/bus/usb/001
 +ExecStart=/usr/local/sbin/vcontrold -x /etc/vcontrold/vcontrold.xml
 +ExecReload=/bin/kill -HUP $MAINPID
 +Restart=always
 +RestartSec=120
 +StandardOutput=null
 +
 +[Install]
 +WantedBy=multi-user.target
 +</code>
 +
 +Es kann nun als Dienst gestartet werden:
 +<code>sudo systemctl start vcontrold</code>
 +
 +Start des Dienstes beim Boot hiermit aktivieren:
 +<code>sudo systemctl enable vcontrold</code>
 +
 +Da vzlogger mit reduzierten Rechten laufen und erst nach vcrontrold starten sollte ist auch seine Konfig ''/etc/systemd/system/vzlogger.service'' anzupassen:
 +<code base vzlogger.service>
 +[Unit]
 +Description=vzlogger
 +After=syslog.target network.target
 +After=mysql.service ntp.service
 +After=vcontrold.service
 +
 +[Service]
 +User=pi
 +ExecStartPre=/bin/ls /dev/bus/usb/001
 +ExecStart=/usr/local/bin/vzlogger -c /etc/vzlogger.conf
 +ExecReload=/bin/kill -HUP $MAINPID
 +StandardOutput=null
 +
 +[Install]
 +WantedBy=multi-user.target
 </code> </code>
  
 ==== Weiteres ==== ==== Weiteres ====
 Zum Steuern der Anlage (setzen von Werten in den Adressen) kann man parallel über bash Scripte die ''vclient'' entsprechend aufrufen. Zum Steuern der Anlage (setzen von Werten in den Adressen) kann man parallel über bash Scripte die ''vclient'' entsprechend aufrufen.
hardware/channels/heating_control/viessmann_optolink.txt · Zuletzt geändert: 2022/04/21 20:16 von jau