PiUS-It! FAQ (Frequently Asked Questions, häufig gestellte Fragen)

    Autor   : Dirk Weyand
    Version : 1.5.2
    Datum   : 20/03/2023

Inhalt

1. Allgemeines
2. Häufig gestellte Fragen
2.1 Was muss man bei der Admin IP eingeben ?
2.2 Was ist die Access Whitelist ?
2.3 Wieso werden keine Grafiken im Browser dargestellt ?
2.4 Wie kann man sich Details zu den Grafiken ansehen ?
2.5 Wie funktioniert die Suche ?
2.6 Ich möchte mir die Messwerte von 10:00 bis 12:00 Uhr vom 7.Juli ansehen. Wie geht das ?
2.7 Was ist die Ereignissteuerung ?
2.8 Wie löscht man ein Ereignis ?
2.9 Wozu dient der Heartbeat ?
2.10 Was bewirkt der Wartungs-Button ?
2.11 Wieso zeigt das LCD-Modul nichts an ?
2.12 Weshalb bleiben zwei Zeilen bei meinem Display immer leer ?
2.13 Weshalb sieht man nur weisse Blöcke auf dem Display ?
2.14 Wie kann man die Module als Respawn-Prozesse ins System integrieren, wenn keine inittab vorhanden ist ?
2.15 Warum kann ich einige der hier genannten Optionen bei meinem PiUS nicht nutzen ?
2.16 Ich möchte den Füllstand meiner Zisterne an eine SmartHome Steuerungszentrale senden, geht das ?
2.17 Wie kann man den Füllstand als Systemvariable an die HomeMatic CCU senden ?
2.18 Wie kann man HTTP Actions nutzen um den Füllstand von PiUS mit openHAB auszulesen ?
2.19 Warum funktioniert die Software bei meinem Raspberry Pi nicht ?
2.20 Fortsetzung folgt . . .
3. Glossar

1. Allgemeines

PiUS-It! ist eine von TGD-Consulting entwickelte Software, welche die Nutzung eines Raspberry Pi als Füllstandsanzeige mit optionaler Steuerung zur automatischen Nachspeisung für Zisternen, Tanks und Regenwassertonnen ermöglicht. Die Management Software PiUS-It! ist eine embedded App und besteht aus mehreren Modulen,

Alle Module benötigen eine REBOL3-Laufzeitumgebung/Interpreter. Weitere Informationen zum π-Ultraschall-Sensor (PiUS) und zur PiUS-It! Management Software erhalten Sie hier.

Dies sind die FAQ zu PiUS-It!, neue Fragen können Sie hier stellen.

[ zurück nach oben ]

2. Häufig gestellte Fragen (Frequently Asked Questions)

2.1 Was muss man bei der Admin IP eingeben ?

Bei der Admin IP werden die IP-Adressen der Rechner eingetragen, welche den PiUS über das Webinterface administrieren dürfen. Die Admin IP beschränkt dabei den Zugriff auf die "config.html" Seite des PiUS und legt den IP-Filter des PiUS-It! Webserver-Moduls für diese Seite entsprechend fest.

Achtung: Nur berechtigte IP-Adressen können Änderungen an den Einstellungen der PiUS-It! Management Software durchführen. In der Voreinstellung sind dies nur Rechner, welche sich im selben IP-Segment wie der PiUS befinden. Bei Bedarf kann die Zugriffsmöglichkeit auf dedizierte IP-Adressen eingeschränkt werden.

2.2 Was ist die Access Whitelist ?

Mit Hilfe der Access Whitelist wird der IP-Filter des PiUS-It! Webserver-Moduls für die Seiten "show.html" und "search.html" sowie für alle übrigen Ressourcen festgelegt. Falls bei Access Whitelist eine IP-Adresse (z.B. 192.168.1.100) oder ein IP-Segment (z.B. 192.168.1.0) eingetragen wird, so ist der Zugriff auf den Webserver des PiUS nur von Rechnern mit diesen IP-Adressen möglich. Ist die Access Whitelist leer, ist der Zugriff auf den Webserver nicht eingeschränkt und von allen Rechnern aus möglich.

2.3 Wieso werden keine Grafiken im Browser dargestellt ?

Nach dem erstmaligen Start der PiUS-It! Management Software ist noch keine ausreichende Anzahl an Messwerten vorhanden, um einen Verlauf des Pegelstandes als Grafik (Plot) darzustellen. Sie müssen daher die Software mindestens 24h in Betrieb haben, bevor genügend Daten zur Generierung der Plots vorhanden sind. Die Plots werden in einem nächtlichen Batch jeweils um kurz vor Mitternach erstellt und als Resource dem Webserver-Modul zur Verfügung gestellt.

Darüber hinaus kann es nur zwei Gründe geben, warum keine Grafiken dargestellt werden:

Hinweis: Das Kommandozeilenprogramm gnuplot installiert man so:

sudo apt-get update && sudo apt-get install gnuplot

2.4 Wie kann man sich Details zu den Grafiken ansehen ?

Klicken Sie dazu einfach auf die Grafik und sie wird in einem separaten Browserfenster in original Größe dargestellt. Sollten dadurch immer noch nicht alle gewünschten Details erkennbar sein, können Sie mit Hilfe der Suche detailiertere Plots erstellen, siehe auch folgenden Abschnitt 2.5 .

2.5 Wie funktioniert die Suche ?

Die Suche erreicht man mit Hilfe des entsprechenden Buttons von der Hauptseite des PiUS vom Browser aus. Die Suchfunktion bietet mehrere Möglichkeiten. Zulässige Suchparameter sind dabei entweder

Es werden nur die Grafiken passend zur Suche dargestellt. Da die Plots bei der Suche dynamisch generiert werden, können einige Sekunden vergehen bis das Browserfenster aktualisiert wird.

2.6 Ich möchte mir die Messwerte von 10:00 bis 12:00 Uhr vom 7.Juli ansehen. Wie geht das ?

Geben Sie dafür zunächst das Datum bei der Suche ein:

7-Jul-2014

Es werden nun die Grafiken für den 7.Juli ( Tag / Woche / Monat / Jahr ) angezeigt.

Präzisieren Sie ihre Suche nun für den gewünschten Zeitraum. Die Uhrzeiten müssen dabei durch ein Space voneinander getrennt sein, siehe Beispiel:

10:00 12:00

Jetzt wird zusätzlich eine Grafik für den genauen Zeitraum im Browser dargestellt.

Anstelle der obigen iterativen Suche kann auch direkt der gewünschte Zeitraum mit Beginn und Ende im DD-MMM-YYYY/HH:MM Format eingegeben werden.

7-Jul-2014/10:00 7-Jul-2014/12:00

Da bei dieser Art der Suche mehr Zeichen im Suchfeld einzugeben sind, ist die iterative Suche intuitiver und anschaulicher und führt daher auch meistens schneller zum erwünschten Ergebnis.

2.7 Was ist die Ereignissteuerung ?

Mit Hilfe der optionalen Ereignissteuerung lassen sich automatisch pegelabhängige Ereignisse auslösen. Es gibt zwei unterschiedliche Arten von Ereignissen:

Bei GPIO-Ereignissen wird ein konfigurierbarer GPIO des Raspberry Pi pegelabhängig geschaltet (Low|High). Auf diese Weise kann z.B. eine automatische Nachspeisung der Zisterne mit entsprechenden Relais-Modulen und Magnet-Ventilen realisiert werden. Das Eingabefeld bei diesem GPIO-Ereignis sieht folgendermaßen aus:

26 Nachspeisung

Dabei entspricht 26 dem zu schaltenden GPIO und Nachspeisung ist ein beliebiger Kommentar für das Ereignis, quasi als Merkhilfe zur Funktion des GPIOs gedacht.
Das gültige Eingabeformat bei GPIO-Ereignissen ist <Zahl|Nummer des GPIO><Space><Kommentar>.

Das Eingabeformat bei Shell-Befehlen darf dagegen nicht mit <Zahl><Space> beginnen, ansonsten ist es beliebig. Folgende Platzhalter $level, $cm oder $date im Eingabefeld werden beim Auslösen des Ereignisses durch die aktuellen Werte ersetzt. Die Parameter haben folgende Bedeutung:

Über Ereignisse, die Shell-Befehle auslösen, kann zum Beispiel auch eine Benachrichtigung per E-Mail bei Erreichen oder Unter/Überschreiten eines Pegels versendet werden. Voraussetzung dafür ist dann allerdings, dass ein entsprechender MTA oder Mail-Client auf dem RPi vorhanden ist.

2.8 Wie löscht man ein Ereignis ?

Ein bereits konfiguriertes Ereignis kann jederzeit wieder entfernt werden. Nutzen Sie dafür folgende Schritte:

  1. Wählen Sie zunächst das gewünschte Ereignis über die bzw. Button aus.
  2. Drücken Sie anschließend den Button hinter dem Ereigniseingabefeld, um das Ereignis dauerhaft zu löschen.

Danach wird der Trigger für das Ereignis entfernt und die Aktion wird bei Erreichen des Pegelstandes nicht mehr ausgeführt.

2.9 Wozu dient der Heartbeat ?

Die Funktion des Heartbeat kann zur Live-Überwachung oder zur Datenübermittlung an einen externen Server genutzt werden. Bei aktiviertem Heartbeat wird bei jedem geloggten Messwert ein HTTP-Get Request an den externen Server gesandt. Die oben genannten Platzhalter $level, $cm oder $date können in der Heartbeat-URL ebenfalls zur Parameterübergabe an den externen Server verwendet werden.

2.10 Was bewirkt der Wartungs-Button ?

Eine regelmäßige Inspektion und Wartung erhöht neben der Aufrechterhaltung der einwandfreien Funktion auch die Lebensdauer ihrer Zisterne. Der Wartungszyklus kann je nach Art der Zisterne variieren. Insbesondere die Wartungshäufigkeit von Filtern unterscheidet sich individuell nach Grundstücks- und Dachbeschaffenheit. Damit das kostbare Nass auch in der Zisterne landet und nicht direkt bei verstopften Filtern in den Überlauf entsorgt wird, ist daher eine regelmäßige Wartung erforderlich.

Den Zeitraum zwischen den Wartungen konfigurieren Sie als Wartungsintervall in den PiUS-It! Systemeinstellungen. Zur eigenen Erinnerung wird auf ihrer PiUS-It! Homepage immer der Zeitpunkt der nächsten Wartung angezeigt. Durch Anklicken des Buttons wird nur ein interner Timer auf das konfigurierte Wartungsintervall zurückgesetzt und der Countdown bis zur nächsten Inspektion beginnt erneut. Ähnlich wie bei einer Service-Anzeige beim Auto, dessen Rücksetzung aber normalerweise durch eine Kfz-Werkstatt und nicht wie bei PiUS-It! durch einen selbst erfolgt.

2.11 Wieso zeigt das LCD-Modul nichts an ?

Um ein Liquid Chrystal Display basierend auf dem Hitachi HD44780 LCD-Controller mit dem PiUS-It! System betreiben zu können, müssen Sie das Display zunächst gemäß des LCD-Verdrahtungsplanes
PiUS LCD-Modul (optional): Beispiel Verdrahtungplan
an den Raspberry Pi anschließen. Danach ist das optionale LCD-Modul (PiLCDisplay.r) zu aktivieren. Geben Sie dazu in der Shell folgendes ein:

cd /home/pi/pius && mv _PiLCDisplay.r PiLCDisplay.r

Die PiUS-It! Management Software unterstützt sowohl die weit verbreiteten zweizeiligen 32 Zeichen LCDs (16x2) als auch 80 Zeichen LCD-Module (20x4). Damit das Display reibungslos zusammen mit der Software funktioniert muss deren Konfiguration an das verwendete LCD-Modul angepasst werden. Dazu ist die Variable LCD in zwei Software-Modulen entsprechend zu konfigurieren. Mit Hilfe von nano PiLCDisplay.r passen Sie den globalen Parameter LCD wie folgt an:

LCD: 16x2               ; Typ des LCD-Displays/Darstellungsbereich (oder 20x4 bei 80 Zeichen Display)

Nun muss noch im UltraSonic-Modul der Parameter LCD gesetzt werden. Dies erfolgt ebenfalls mit Hilfe von nano PiUltraSonic.r und Anpassung des Parameters bei den Globals am Anfang des Skriptes:

LCD: 32                ; none|32|80 für Art des angeschlossenen LCD-Display   

Speichern Sie alle Änderungen und nach einem Neustart der PiUS-It! Management Software wird dann automatisch das entsprechende Software-Modul zur Ansteuerung des LCDs gestartet. Falls Sie eine Begrüßungsnachricht auf ihrem Display sehen, haben Sie erfolgreich das optionale LCD-Modul aktiviert.

Hinweis: Das LCD-Modul ist nur im aktuellen Release der Software enthalten! Sie müssen daher ggf. erst noch ein Upgrade auf die aktuelle Version der PiUS-It! Management Software erwerben.

2.12 Weshalb bleiben zwei Zeilen bei meinem Display immer leer ?

Vermutlich haben Sie ein vierzeiliges 80 Zeichen LCD-Modul und die Software-Module nicht passend konfiguriert.

Um ein 20x4 LCD-Display ordnungsgemäß an einem PiUS-It! System zu betreiben, muss die Variable LCD im PiLCDisplay.r Skript wie folgt

LCD: 20x4               ; Typ des LCD-Displays/Darstellungsbereich (oder 16x2 bei 32 Zeichen Display)

und bei PiUltraSonic.r so gesetzt werden:

LCD: 80                ; none|32|80 für Art des angeschlossenen LCD-Display

Speichern Sie alle Änderungen entsprechend ab und nach einem Neustart der PiUS-It! Management Software werden dann automatisch alle vier Zeilen des LCDs richtig angesteuert. Falls Sie eine vierzeilige Begrüßungsnachricht auf ihrem Display sehen, haben Sie ihr LCD-Modul erfolgreich konfiguriert.

2.13 Weshalb sieht man nur weisse Blöcke auf dem Display ?

Falls Sie nur weisse Blöcke auf ihrem LCD-Display sehen, ist vermutlich der eingestellte Kontrast des LCD-Moduls zu groß und man kann daher die Zeichen nicht erkennen.

Hinweis: In diesem Fall ist eine Reduzierung des Kontrastes des LCD mit einen Widerstand notwendig. Bitte beachten Sie das Datenblatt ihres LCD-Moduls. Ein 7k5 Widerstand kann zur Verminderung des Kontrastes am LCD/PIN3 eingefügt werden.

2.14 Wie kann man die Module als Respawn-Prozesse ins System integrieren, wenn keine inittab vorhanden ist ?

Falls bei ihrem Raspbian keine /etc/inittab zu finden ist, wird die aktuelle Jessie Distribution anstelle von Wheezy verwendet. Bei Raspbian Jessie werden die Prozesse nicht mehr über das init-System sondern per systemd gestartet. Eine /etc/inittab ist daher nur bei Wheezy basierten Distributionen zu finden.

Um das Webserver-Modul von PiUS-It! unter Jessie als Respawn-Prozess ins System einzubinden, muss nur der folgende systemd-Service per sudo nano /etc/systemd/system/WebserverPiUS.service eingetragen werden:

[Unit]
Description=PiUS-It! Webserver-Modul, respawn
After=network-online.target
Wants=network-online.target

[Service]
WorkingDirectory=/home/pi/pius
ExecStart=/home/pi/pius/bin/r3 Webserver.r
User=pi
Restart=always
RestartSec=1
StandardOutput=append:/home/pi/pius/nohup.out
StandardError=append:/home/pi/pius/nohup.out

[Install]
WantedBy=multi-user.target

Anschließend wird der Service noch per

sudo systemctl enable WebserverPiUS.service

aktiviert und fortan wird beim Hochfahren des Raspberry Pi das PiUS-It! Webserver-Modul automatisch als Respawn-Prozess gestartet.

Das PiUS-It! Management Software Modul bindet man übrigens auf die gleiche Art und Weise per sudo nano /etc/systemd/system/PiUSItMgmt.service

[Unit]
Description=PiUS-It! Mgmt-Modul, respawn
After=network.target

[Service]
WorkingDirectory=/home/pi/pius
ExecStart=/home/pi/pius/bin/r3 PiUSIt.r
User=pi
Restart=always
RestartSec=1
StandardOutput=append:/home/pi/pius/nohup.out
StandardError=append:/home/pi/pius/nohup.out

[Install]
WantedBy=multi-user.target

und

sudo systemctl enable PiUSItMgmt.service

ein.

2.15 Warum kann ich einige der hier genannten Optionen bei meinem PiUS nicht nutzen ?

Die Antworten in der FAQ beziehen sich immer auf den Funktionsumfang der aktuellen Version der PiUS-It! Management Software. Falls Sie noch ein älteres Release der Software verwenden, können durchaus nicht alle Funktionen bei ihrem PiUS implementiert sein.

Da unsere Software einer ständigen Weiterentwicklung unterliegt, gibt es von Zeit zu Zeit natürlich auch neue Upgrades dieser Software. Eine Übersicht der Neuerungen finden Sie in den Release-Notes. Falls Sie ihre Lizenz auf die aktuelle Version der PiUS-It! Management Software upgraden möchten, können Sie als Bestandskunden die jeweils aktuelle Version hier zu einem vergünstigten Upgrade-Preis erwerben.

2.16 Ich möchte den Füllstand meiner Zisterne an eine SmartHome Steuerungszentrale senden, geht das ?

Ja, das geht. Das aktuelle Release der PiUS-It! Management Software kann mit folgenden SmartHome Steuerungszentralen kommunizieren:

Konfigurieren Sie dazu entweder die zugehörigen globalen Variablen im PiUltraSonic.r Skript oder legen eine entsprechende SmartHome-Optionsdatei im pius Verzeichnis per

cd /home/pi/pius && nano .PiUSIt.SmartHome

an. Ein Beispiel für den Inhalt der Optionsdatei .PiUSIt.SmartHome sieht so aus:

tcp://192.168.1.10:4321     ; IP-Adresse und Port des SmartHome-Servers für den Empfang des Füllstandes als TCP Telegramm
Zisterne1                   ; eindeutige ID von PIUS

Natürlich müssen Sie noch die Steuerungszentrale selbst für den Empfang der Messwerte von PiUS vorbereiten und konfigurieren. Hier ist beispielhaft verdeutlicht, was im Falle des Gira HomeServers zu tun ist. Beim Gira HomeServer ist entsprechend der Optionsdatei ein "IP/EIB-Telegramm empfangen" einzurichten (IP-Telegramm-Typ: TCP / IP-Telegramm-Port: 4321).

2.17 Wie kann man den Füllstand als Systemvariable an die HomeMatic CCU senden ?

Die Übermittlung des aktuellen Füllstandes an eine Systemvariable der HomeMatic CCU ist einfach zu konfigurieren.
Die Konfigurationsdatei für die Anbindung an HomeMatic lautet .PiUSIt.HomeMatic und besteht aus zwei Zeilen. Die Erste enthält den Namen oder die IP-Adresse der HomeMatic CCU/RaspberryMatic die zweite Zeile enthält den Namen der Systemvariable, die bei der HomeMatic CCU konfiguriert (Zahl, 0 - 100) wurde.

Legen Sie daher zunächst die entsprechende HomeMatic-Optionsdatei im pius Verzeichnis per

cd /home/pi/pius && nano .PiUSIt.HomeMatic

an. Ein Beispiel für den Inhalt der Optionsdatei .PiUSIt.HomeMatic sieht so aus:

192.168.100.50     ; IP-Adresse oder Hostname der HomeMatic CCU/RaspberryMatic 
Fuellstand-Tank    ; Name der Systemvariable

In diesen Tweet ist auf den zugehörigen Bilder verdeutlicht, wie die Systemvariable beispielhaft angelegt wird und wie die Darstellung der Werte in der HomeMatic CCU erfolgt.
Damit die Systemvariable auf der Startseite von HomeMatic zu sehen ist, muss sie zu den Favoriten hinzugefügt sein.

Abschließend starten Sie die PiUS-It! Management Software neu oder rebooten einfach den Raspberry Pi. Dadurch wird nun jedesmal, wenn PiUS einen Messwert ins Log schreibt, dieser auch an HomeMatic gesendet.

2.18 Wie kann man HTTP Actions nutzen um den Füllstand von PiUS mit openHAB auszulesen ?

PiUS bietet über ein Export-CGI die einfache Möglichkeit den Füllstand per HTTP-Requests abzufragen. Es werden sowohl GET als auch POST Anfragemethoden unterstützt. Der Einfachheit sind hier allerdings nur Beispiele für GET-Requests aufgeführt, da man diese zum Testen auch über den Webbrowser absenden kann.

Das Export-CGI bietet die folgenden Optionen zur Abfrage einzelner Parameter. Die zugehörigen HTTP-Requests sehen wie folgt aus: