Raspi an USV

Für welche Projekte verwendet Ihr OpenHAB? Was habt Ihr automatisiert? Stellt eure Projekte hier vor.

Moderatoren: Cyrelian, seppy

Antworten
nw378
Beiträge: 295
Registriert: 22. Sep 2018 10:38
Answers: 5

Raspi an USV

Beitrag von nw378 »

Mein NAS hängt sicherheitshalber an einer USV.

Was liegt da näher, als auch den openHAB-Raspi und die Fritzbox(!) an die USV anzuschließen?
So laufen im Falle eines Stromausfalls Internet, Netzwerk und OH zunächst weiter und OH kann im worst-Worstcase (wenn die USV leer genudelt ist) geordnet herunterfahren.

Damit OH auch weiß, was dann zu tun ist, habe ich mir ein Skript auf dem NAS gebastelt, das jede Minute einmal läuft.
Dies schickt die Daten der USV an einen MQTT Broker.
Dafür nutze ich https://mqttx.app/cli in einem Docker Container.

Code: Alles auswählen

#!/usr/bin/env bash
CHARGE=$(upsc ups | grep battery.charge: | awk '{print $2}')
RUNTIME=$(upsc ups | grep battery.runtime: | awk '{print $2}')
MODEL=$(upsc ups | grep device.model: | cut -c 15-)
VOLTAGE=$(upsc ups | grep output.voltage.nominal: | awk '{print $2}')
JSON='{"Charge": '$CHARGE',"Voltage": '$VOLTAGE',"Runtime": '$RUNTIME',"Model": '$MODEL'}'
docker exec mqttx-cli mqttx pub -t 'Eaton/USV' -h 192.168.178.60 -p 1883 -m "$JSON"
Einlesen in openHAB:

.things

Code: Alles auswählen

Thing mqtt:topic:mosquitto:Eaton "MQTT Eaton USV" (mqtt:broker:mosquitto) {
    Channels:
      Type number :  charge                        [ stateTopic="Eaton/USV", transformationPattern="JSONPATH:$.Charge" ]
      Type number :  voltage                       [ stateTopic="Eaton/USV", transformationPattern="JSONPATH:$.Voltage" ]
      Type number :  runtime                       [ stateTopic="Eaton/USV", transformationPattern="JSONPATH:$.Runtime" ]
      Type string :  model                         [ stateTopic="Eaton/USV", transformationPattern="JSONPATH:$.Model" ]

} 
.items

Code: Alles auswählen

//USV
Number USV_charge         "Ladestand [%s]"                            {channel="mqtt:topic:mosquitto:Eaton:charge", stateDescription=""[pattern="%.0f %%"]}
Number USV_voltage        "Spannung [%s]"                             {channel="mqtt:topic:mosquitto:Eaton:voltage", unit="V", stateDescription=""[pattern="%.0f V"]}
Number:Time USV_runtime   "Laufzeit [%s]"                             {channel="mqtt:topic:mosquitto:Eaton:runtime",  unit="s", stateDescription=""[pattern="%.0f min"]}
String USV_model          "USV [%s]"                                  {channel="mqtt:topic:mosquitto:Eaton:model"}
.rules (bei kleiner 20% herunterfahren):

Code: Alles auswählen

rule "USV: Akkustand fällt ab."
when
    Item USV_charge changed
then
    switch newState {
        case (newState < 20) : { sendNotification("me@mail.de","⚠ Achtung: USV unter 20% ! \nSystem wird heruntergefahren.")
                                 executeCommandLine("sudo","poweroff")
                                 return; }
        case (newState < 90) :   sendNotification("me@mail.de","⚠ Achtung: USV unter 90% ! \nStromversorgung prüfen!")
    }
end
Und in der Sitemap sieht das ganze so aus:
usv.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openHAB 4.3.3 @ RPi 4 / SSD - InfluxDB2 und Grafana @ Synology Docker - KNX

Benutzeravatar
udo1toni
Beiträge: 15240
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Raspi an USV

Beitrag von udo1toni »

Kennst Du NUT? (Network UPS Tools) Es gibt für openHAB ein eigenes NUT Binding, und NUT unterstützt sehr viele verschiedene UPS. Der Witz dabei: Es gibt auch für praktisch jedes Betriebssystem Clients, die dann über Netzwerk auf den NUT Server zugreifen können, um die System gezielt geordnet herunterzufahren.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

nw378
Beiträge: 295
Registriert: 22. Sep 2018 10:38
Answers: 5

Re: Raspi an USV

Beitrag von nw378 »

Nää, wieder alles umsonst zusammengebastelt. :lol:

Dann scheint es wohl deutlich mehr Leute mit dem gleichen Ansinnen zu geben.

Schau ich mir mal an. Obwohl ich meine Lösung jetzt auch nicht als umwegig finde...
openHAB 4.3.3 @ RPi 4 / SSD - InfluxDB2 und Grafana @ Synology Docker - KNX

Benutzeravatar
udo1toni
Beiträge: 15240
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Raspi an USV

Beitrag von udo1toni »

Nein, definitiv nicht. NUT ist halt die OpenSource Profi-Variante :lol:
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

nw378
Beiträge: 295
Registriert: 22. Sep 2018 10:38
Answers: 5

Re: Raspi an USV

Beitrag von nw378 »

Bin jetzt auf die "Profi-Variante" umgestiegen.

Praktisch: ich brauche lediglich auf der Diskstation den USV-Server aktivieren und die openHAB Ip eintragen.
Und schon lässt sich der Rest über das Binding einrichtenn. Danke für den Tip!
usv.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openHAB 4.3.3 @ RPi 4 / SSD - InfluxDB2 und Grafana @ Synology Docker - KNX

Antworten