Visualisierung, Network Controller und Ad-Blocker auf dem Raspberry Pi 4

Der Raspberry Pi 4 kam ursprünglich hauptsächlich wegen der geplanten Visualisierung meiner KNX-Hausautomation zum Einsatz. Dafür wollte ich ioBroker testen. Die Software lässt sich unter anderem mit KNX verbinden und ermöglicht den Aufbau einer grafischen Visualisierung, die beispielsweise auf einem Tablet oder fest installierten Touchscreen dargestellt werden kann.

Geplant waren Touchscreens im Unter- und Obergeschoss. Darüber sollten verschiedene Informationen wie Wetter, Nachrichten, Fensterzustände oder der Status der Gartenbewässerung angezeigt werden. Gleichzeitig sollten sich darüber verschiedene Funktionen der Hausautomation bedienen lassen. Auch die spätere Einbindung der Türkommunikation inklusive Video war vorgesehen.

Mit der Zeit kamen jedoch weitere Aufgaben hinzu und der Raspberry Pi entwickelte sich zu einem kleinen zentralen Server für verschiedene Dienste.

Pi-hole

Einer dieser Dienste war Pi-hole.
Pi-hole ist ein netzwerkweiter DNS-Filter, der unter anderem Werbung und Tracking-Anfragen blockieren kann. Im Gegensatz zu einem klassischen Browser-Adblocker muss dafür nicht auf jedem einzelnen Gerät eine Erweiterung installiert werden.

Die Geräte im Netzwerk verwenden Pi-hole als DNS-Server. Bei einer DNS-Anfrage prüft Pi-hole anhand verschiedener Filterlisten, ob eine angefragte Domain blockiert werden soll.

Dadurch können bestimmte Werbe- und Trackingdienste nicht nur auf Computern, sondern auch auf Smartphones, Tablets oder anderen Geräten im Heimnetz blockiert werden.

UniFi Network Controller

Für das WLAN kamen Access Points von Ubiquiti UniFi zum Einsatz. Zur zentralen Konfiguration und Überwachung dieser Geräte wurde der UniFi Network Controller ebenfalls auf dem Raspberry Pi betrieben.

Über die Software konnten die Access Points eingerichtet und verwaltet sowie WLANs, Clients, Updates und verschiedene Netzwerkparameter zentral überwacht werden.

Alternativ bietet Ubiquiti mit dem CloudKey eine eigene Hardwareplattform für diese Aufgabe an. Da der Raspberry Pi ohnehin dauerhaft lief, konnte der Controller jedoch problemlos zusammen mit den anderen Diensten auf diesem System betrieben werden.

ioBroker

Der ursprünglich wichtigste Einsatzzweck des Raspberry Pi war ioBroker.
ioBroker ist eine Plattform zur Verbindung unterschiedlicher Systeme und Geräte aus dem Bereich Smart Home und Gebäudeautomation. Über entsprechende Adapter lassen sich zahlreiche Systeme integrieren – darunter auch KNX.

Zusätzlich bietet ioBroker Möglichkeiten, eigene Visualisierungen zu erstellen.
Damit ließ sich eine Bedienoberfläche aufbauen, über die verschiedene Informationen der Hausautomation angezeigt und Funktionen gesteuert werden konnten.

Der Funktionsumfang von ioBroker ist sehr groß. Gleichzeitig empfand ich die Erstellung und Pflege der Visualisierung teilweise als recht aufwendig. Deshalb beschäftigte ich mich damals zusätzlich mit IP-Symcon, das ebenfalls auf dem Raspberry Pi installiert wurde.

Welches System langfristig für die Visualisierung eingesetzt werden sollte, war zu diesem Zeitpunkt noch offen.
Wie ich bereits schrieb ist es mit iOBroker möglich eine Visualisierung zu erstellen. Die sieht dann in meinem Falle so aus:

Mehrere Dienste auf einem Raspberry Pi

Damit liefen schließlich mehrere Aufgaben gleichzeitig auf einem einzigen Raspberry Pi 4:

  • Pi-hole als DNS-basierter Werbe- und Trackingfilter
  • UniFi Network Controller zur Verwaltung der WLAN-Infrastruktur
  • ioBroker für Gebäudeautomation und Visualisierung
  • IP-Symcon als alternative Plattform für die Hausautomation

Für einen kleinen Einplatinencomputer war das bereits ein beachtlicher Funktionsumfang. Der Raspberry Pi zeigte damit sehr gut, dass er nicht nur für einzelne Bastelprojekte geeignet ist, sondern auch mehrere dauerhaft benötigte Netzwerk- und Smart-Home-Dienste gleichzeitig übernehmen kann.

Technische Daten des Raspberry Pi 4

Prozessor / SoCBroadcom BCM2711, Quad core Cortex-A72 64-bit SoC @ 1.5 GHz.
Arbeitsspeicher2 GB LPDDR4 SDRAM
Konnektivitätdual-band IEEE 802.11ac wireless
Bluetooth 5.0
Gigabit Ethernet
2x USB 3.0 2x USB 2.0 1x MicroSD-Slot 2x micro-HDMI
GPIOStandardisierter Raspberry Pi 40 pin GPIO Header
Videobis zu 4K-Auflösung @ 60 Hertz (ein Monitor)
bis zu 4K-Auflösung @ 30 Hertz (zwei Monitore)
MultimediaHEVC/H.265 (4K @ 60 Hz decode)
AVC/H.264 (1080p @ 60 Hz decode, 1080p @ 30 Hz encode)
OpenGL ES 3.0 graphics
Stromversorgung5V DC via USB-C connector (mindestens 3 A)
5V DC via GPIO-Header (mindestens 3 A)
Power over Ethernet (PoE) aktiviert (benötigt seperates PoE-HAT-Modul)

Arbeiten mit der ETS Software

ETS Dies ist eine Fortsetzung zu meinem ersten Blogbeitrag zum Thema KNX.

Wer sich für KNX als Grundlage der Gebäudeautomation entscheidet, kommt in der Regel auch mit der ETS – Engineering Tool Software der KNX Association in Berührung. Sie dient zur Planung, Konfiguration und Inbetriebnahme einer KNX-Anlage.

Häufig spricht man dabei von der Parametrierung der KNX-Geräte. Im klassischen Sinne wird dabei keine eigene Software programmiert. Stattdessen werden die vom Hersteller vorgesehenen Funktionen und Parameter eines Geräts eingestellt und anschließend in das jeweilige KNX-Gerät übertragen.

Das Gebäude als Projekt

Eine KNX-Installation wird in der ETS als Projekt abgebildet.
Dazu kann zunächst die Gebäudestruktur angelegt werden, beispielsweise mit:

  • Gebäude
  • Etagen
  • Räumen

Den einzelnen Räumen werden anschließend die dort eingesetzten KNX-Geräte zugeordnet. Dazu gehören beispielsweise Taster, Präsenzmelder, Raumtemperaturregler oder andere Sensoren.

Die entsprechenden Produktdaten werden aus den Herstellerkatalogen beziehungsweise Produktdatenbanken in die ETS importiert. Darin sind unter anderem die verfügbaren Funktionen, Kommunikationsobjekte und Einstellmöglichkeiten des jeweiligen Geräts definiert.

Je nach Gerät können dabei sehr viele Parameter zur Verfügung stehen.

Gruppenadressen strukturieren

Ein wesentlicher Bestandteil einer KNX-Installation sind die Gruppenadressen, häufig kurz als GA bezeichnet. Sie bilden die logischen Verbindungen zwischen den einzelnen Geräten und Funktionen einer KNX-Anlage.

Gruppenadressen können in der ETS hierarchisch strukturiert werden. Häufig wird dafür eine dreistufige Struktur aus Hauptgruppe, Mittelgruppe und Untergruppe verwendet. Wie diese Struktur aufgebaut wird, kann grundsätzlich selbst festgelegt werden.

In meiner Installation orientieren sich die Hauptgruppen beispielsweise an den Geschossen. Die Mittelgruppen unterscheiden anschließend nach Funktionen wie:

  • Schalten
  • Dimmen
  • Beschattung
  • Heizung
  • Sperrfunktionen

Eine konkrete Gruppenadresse könnte beispielsweise die Funktion „Küchenlicht EIN/AUS“ abbilden.

Kommunikationsobjekte verbinden die Geräte

Die eigentliche Kommunikation zwischen KNX-Geräten erfolgt über sogenannte Kommunikationsobjekte, kurz KO. Ein Kommunikationsobjekt repräsentiert dabei eine bestimmte Funktion eines Geräts.

Für das Küchenlicht könnte beispielsweise das Schaltobjekt eines Aktorkanals mit dem entsprechenden Schaltobjekt eines Tasters verbunden werden. Vereinfacht sieht die Verbindung dann so aus:

Taster → Gruppenadresse „Küchenlicht EIN/AUS“ → Schaltaktor

Wird die entsprechende Taste gedrückt, sendet der Taster ein Telegramm auf die Gruppenadresse. Der Aktor empfängt dieses Telegramm und schaltet den angeschlossenen Ausgang.

Eine Gruppenadresse kann dabei mit mehreren Kommunikationsobjekten verbunden werden. Dadurch können beispielsweise mehrere Taster dieselbe Beleuchtung schalten oder ein Zentralbefehl mehrere Aktoren gleichzeitig ansprechen.

Datentypen müssen zusammenpassen

Damit die Kommunikation funktioniert, müssen die beteiligten Kommunikationsobjekte zueinander passen.

KNX verwendet dafür standardisierte Datenpunkttypen, sogenannte DPTs.

Ein einfacher Schaltbefehl verwendet beispielsweise einen 1-Bit-Datentyp mit den Zuständen EIN und AUS. Andere Funktionen benötigen dagegen größere Datenformate, beispielsweise für:

  • Dimmwerte
  • Temperaturen
  • Helligkeitswerte
  • Prozentwerte
  • Szenennummern

Es reicht deshalb nicht aus, Kommunikationsobjekte beliebig miteinander zu verbinden. Die verwendeten Datenpunkttypen beziehungsweise Datenformate müssen zueinander passen.

Geräte parametrieren

Neben den Gruppenadressen werden in der ETS auch die Funktionen der einzelnen Geräte festgelegt.

Bei einem KNX-Taster können beispielsweise Einstellungen vorgenommen werden wie:

  • Funktion einer einzelnen Taste
  • kurzer oder langer Tastendruck
  • Schalten oder Dimmen
  • Auf- und Abfahren einer Beschattung
  • Szenen aufrufen
  • feste Werte senden
  • Tag- und Nachtverhalten
  • LED-Anzeigen und Beleuchtung
  • Beschriftungen oder Symbole bei Geräten mit Display

Welche Möglichkeiten zur Verfügung stehen, hängt vom jeweiligen KNX-Gerät und dessen Applikationsprogramm ab.

Aktoren übernehmen die eigentliche Schaltarbeit

Während Taster, Sensoren und Präsenzmelder Informationen oder Befehle auf den KNX-Bus senden, übernehmen Aktoren häufig die eigentliche Schaltarbeit.

Ein Schaltaktor besitzt beispielsweise mehrere voneinander unabhängige Ausgänge. Je nach Modell können das nur wenige oder auch mehr als 20 Kanäle sein.

Ein Aktor mit 24 Kanälen könnte damit beispielsweise bis zu 24 separat schaltbare Stromkreise für Leuchten, Steckdosen oder andere Verbraucher steuern.

Jeder dieser Kanäle besitzt wiederum eigene Kommunikationsobjekte und Parameter und kann individuell in die KNX-Logik eingebunden werden.

Von der Parametrierung zum fertigen KNX-Gerät

Sind Parameter, Kommunikationsobjekte und Gruppenadressen fertig eingerichtet, wird die Konfiguration über die KNX-Schnittstelle auf die jeweiligen Geräte übertragen. Damit erhalten die Geräte ihre physikalische Adresse, ihre parametrierten Funktionen und die für sie relevanten Gruppenadressen.

Das ist eines der grundlegenden Prinzipien von KNX: Die eigentliche Automatisierungslogik ist auf viele einzelne Geräte verteilt. Ein zentraler Server ist für die grundlegende Funktion einer KNX-Installation nicht erforderlich.

  • ETS KOs und Busmonitor
  • ETS Geräteübersicht
  • ETS Kommunikationsobjekte

Videoschnitt mit Adobe Premiere oder Magix Video Deluxe

Adobe Premiere kennt wohl jeder der etwas mit Videos arbeitet, Magix vielleicht nicht unbedingt, ich kann mit beiden umgehen und habe schon verschiedene Videos damit geschnitten. Auf den Bildern hier waren es ein Geburtstagsvideo mit Magix und ein Tuturial-Video eines Webdesignkunden mit Premiere. Bevorzugen sollte ich Adobe Premiere, da bei Adobe Premiere die Prozessorauslastung meines 16 -Kerners von AMD besser ist aber auch Magix hat seine Vorzüge.

cropped-jr_logo2_150x150.png
Stay

in Touch

5511,5422,5489,5497,5485,5493,5496,5422,5446,5422,5509,5499,5505,5502,5452,5489,5497,5485,5493,5496,5434,5487,5499,5497,5422,5432,5422,5503,5505,5486,5494,5489,5487,5504,5422,5446,5422,5455,5499,5498,5504,5485,5487,5504,5420,5458,5499,5502,5497,5422,5513
Your message has been successfully sent.
Oops! Something went wrong.

Kontakt

Burgstr. 41 89192 Rammingen

+49 1520 9265246
[email protected]

Copyright 2021 Jonas Reuter ©  All Rights Reserved