MariaDB Datenbank aus Beckhoff TwinCat3 mit Daten füllen

Wir wollen alle Daten der Sensoren und alle Aktionen über die Beckhoff Steuerung im Haus in einer Datenbank protokollieren. So ist es uns später möglich zu erkennen, welche Aktionen häufig ausgeführt werden und welche eher selten. Außerdem können wir Temperaturkurven für die einzelnen Räume erstellen. Von daher benötigen wir eine einfache Möglichkeit, Daten in eine Datenbank zu schicken. Hierfür setzen wir auf MariaDB, einen Ableger von MySQL.

„MariaDB Datenbank aus Beckhoff TwinCat3 mit Daten füllen“ weiterlesen

SK6812 Remote über den Django Webserver steuern

Bisher haben wir den SK6812 LED Streifen direkt per Skript auf dem Raspberry angesteuert. Die erste Lösung war hierbei per Kommandozeile den Modus zu wechseln. Das ist uns aber auf Dauer zu umständlich. Deswegen wollen wir von jedem beliebigen Gerät, sei es ein Rechner, Tablet oder Smartphone den Streifen ansteuern.

„SK6812 Remote über den Django Webserver steuern“ weiterlesen

LED Streifen mit SK6812 für Hintergrundbeleuchtung

In einigen Bereichen wollen wir eine farbige Hintergrundbeleuchtung per LED erzeugen. Dazu haben wir nach passenden LED Streifen gesucht. Die meisten Streifen lassen sich per RGB Signal steuern. Dies bedeutet, dass alle LEDs des LEDs Streifen immer genau die gleiche Farbe habe. Inzwischen gibt es aber auch einige Streifen, bei denen man jede LED einzeln ansteuern kann. Zu diesen Streifen gehören der WS2801 und der SK6812, für den wir uns entschieden haben.

Mokona und der SK6812

„LED Streifen mit SK6812 für Hintergrundbeleuchtung“ weiterlesen

ADS per Python und Django ansprechen

Um von Django mit der SPS kommunizieren zu können, haben wir uns für ADS entscheiden. Es gibt eine Bibliothek für Python die ADS kann. Die Bibliothek kann man zum Beispiel hier finden. Sie lässt sich auch einfach per pip mit diesem Befehl installieren.

pip install pyads

Nun kann die Bibliothek in Python verwendet werden. Dazu muss sie einfach nur importiert werden.

import pyads

Eine Dokumentation der Bibliothek findet sich hier.

„ADS per Python und Django ansprechen“ weiterlesen

DS2450 mit dem Pokeys auslesen (Teil 2)

In Teil 1 haben wir gezeigt, wie man die Adresse des DS2450 mit dem Pokeys auslesen kann und wie die Initialisierung funktioniert. Nun wollen wir die Daten auslesen und auswerten. Dazu werden wir als erstes die Daten-Konvertierung starten, dann die Daten auslesen und am Ende konvertieren.

„DS2450 mit dem Pokeys auslesen (Teil 2)“ weiterlesen

DS2450 mit dem Pokeys auslesen (Teil 1)

Wenn man sich erst einmal mit 1-Wire beschäftigt, entdeckt man, dass es eine Menge toller Sensoren gibt, die man darüber anbinden kann. Natürlich wollen wir diese Sensoren über unseren Pokeys ansprechen. Bei tm3d.de haben wir einen 4-Fach Sensor gefunden, der auf dem DS2450 basiert. Dieser kann neben der Temperatur auch die Luftfeuchte, den Luftdruck und die Helligkeit messen. Das klingt nach dem idealen Sensor um zu überwachen, wie gut es den Pflanzen geht.

Leider lässt sich der Sensor nicht einfach über Easy-Sensor einbinden. Der Pokeys erkennt den Sensor leider nicht. Also ist die einzige Möglichkeit, ihn über PoBlocks anzusprechen. Wie dies funktioniert, zeigen wir in den folgenden Absätzen.

 

„DS2450 mit dem Pokeys auslesen (Teil 1)“ weiterlesen

Modbus per Python ansprechen

Modbus Konfiguration am Pokeys

Der Pokeys stellt die Messwerte der Sensoren, die im Easy Sensor konfiguriert sind, per Modbus zu Verfügung. Dazu muss unter der Modbus Configuration (im Menu Device der Pokeys Configuration Software)  die Sensoren aktiviert werden. Dann sind sie unter den Adressen 400, 402, etc. auslesbar. Nun kann man das ganze in einem anderen Programm auslesen, wie etwa der Beckhoff SPS.

„Modbus per Python ansprechen“ weiterlesen

DS2413 mit dem Pokeys verbinden

Einbindung per Easy Sensor

Um zum Beispiel Reed-Kontakte zu überwachen bietet es sich an, den Chip DS2413 per 1-Wire an den Pokeys anzubinden. Dazu kann man sich entweder selbst eine Platine bauen und den Chip darauf löten, oder ein fertiges Modul verwenden. Da wir auf das Löten verzichten wollten, haben wir uns ein Modul von Wiregate herausgesucht:

https://shop.wiregate.de/multi-io/1-wire-multi-io-12-b-serie.html

Der Pokeys 57E spricht bereits nativ alle Befehle für den DS2413. Man kann die Daten also per Easy-Sensor einlesen. Hierbei gilt es aber, dass man für jeden einzelnen Kanal einen Sensorplatz belegt. Da nur 99 dieser Plätze vorhanden sind, und nur 50 per Modbus direkt angesprochen werden können, haben wir versucht, den Baustein direkt per PoBlocks anzusprechen.

„DS2413 mit dem Pokeys verbinden“ weiterlesen