Schlagwort-Archive: App

MQTT-Smartes Garagentor

Technische Beschreibung MQTT-Smartes Garagentor
Technische Beschreibung MQTT-Smartes Garagentor

Das Modul sowie der Source Code zu diesem Projekt kann in unserem Web Shop erworben werden.

Key Features

  • Leichte Integration in einen bestehenden Torantrieb
  • Temperatur und Feuchtesensor
  • Verschlei√üfreie Ultraschallmessung
  • Torstellung und Fahrzeugerkennung
  • Bedienung auch per 433 MHz Funkfernbedienung
  • Anmeldung von bis zu vier Funkfernbedienungen
  • Bedienung per BLYNK App, ¬©Amazon Alexa, Webbrowser und MQTT m√∂glich
  • ¬©Amazon Alexa Integration
  • Funktionsparametrierung der am Modul mittels Taster,
    per MQTT, Webbrowser und BLYNK App
  • Potentialfreier Relais Ausgangskontakt zur Ansteuerung des Torantriebs, Eingang f√ľr einen zus√§tzlichen vor Ort Taster
  • Innovativer Mikrokontroller ESP-07S mit 4 MB Flash
  • Kompakte Bauform und leichte Montage
  • WIFI-Manager, Landingportal f√ľr die WIFI- und MQTT Konfiguration
  • Integrierter Web-Server
  • MQTT-Client Funktion
  • OTA-Firmware Update

Allgemeines

Ob Sie Ihren vorhandenen Garagentorantrieb smart machen m√∂chten oder nur einen Ersatz f√ľr eine verlorene oder defekte original Funkfernbedienung suchen. Haben sie hier eine L√∂sung gefunden, die beides kann.

Das Modul wird einfach zwischen den vorhandenen Taster (Schl√ľsselschalter) und den Taster Eingang am bestehenden Garagentorantrieb geschaltet. Hierf√ľr stellt das Modul ebenfalls einen Taster Eingang und einen potentialfreien Relaisausgang zur Toransteuerung zur Verf√ľgung.

Das MQTT-Smarte Garagentor Modul ben√∂tigt dann nur noch eine Spannungsversorgung, die √ľber einen mini USB-B Anschluss am Ger√§t angeschlossen wird. F√ľr die Spannungsversorgung wird ein externes Stecker Netzteil =5V/500 mA Gleichspannung ben√∂tigt.

Das Modul stellt neben einem 433 MHz Empf√§ngermodul auch noch weitere Funktionen zur Verf√ľgung. Um es mit dem lokalen WLAN-Netzwerk zu verbinden, wird tempor√§r ein lokaler Access Point ge√∂ffnet √ľber den mittels Webbrowser die Konfiguration f√ľr die lokale WLAN-Anbindung, die Anbindung an die BLYNK App und einen MQTT-Broker konfiguriert werden kann.

Auf dem Modul befindet sich noch ein Taster und zwei Status Led‚Äės.
√úber den Taster kann eine Vielzahl an Funktionen des Moduls programmiert oder ausgef√ľhrt werden. Zwei Status Led‚Äôs signalisieren die Betriebs- und Statuszust√§nde des Moduls.

Wurde das Modul nach Vorgaben montiert und in Betrieb genommen, kann mit der eingebauten Ultraschall Höhenstandsmessung neben der Torstellungen auch erkannt werden, ob sich ein Fahrzeug in der Garage befindet. Besitzen ihre Fahrzeuge zudem unterschiedliche Fahrzeughöhen, können anhand dieser unterschiedlichen Bauhöhen sogar noch die einzelnen Fahrzeuge unterschieden werden.

Dar√ľber hinaus verf√ľgt das Modul √ľber eine Temperatur- und Luftfeuchtigkeitsmessung um die Klimatischen Bedingungen im inneren der Garage zu erfassen und auszuwerten.

Wurde eine Verbindung zu ihren lokalen WLAN hergestellt, k√∂nnen alle Konfigurations- und Betriebsparameter sowohl √ľber das integrierte Webinterface mit einem Browser, die BLYNK App oder per MQTT konfiguriert, angezeigt und bedient werden.

Die Weboberfl√§che kann √ľber die lokale IP-Adresse in Ihrem Netzwerk, mit einem Webbrowser aufgerufen werden.

Aus Sicherheitsgr√ľnden wurde eine Anmeldung an der Weboberfl√§che des Regensensors eingef√ľhrt!
Die Standard Anmeldedaten f√ľr die Eingabeaufforderung lauten:

Benutzername: admin
Kennwort: Password

Hinweis:
Wird keine Sicherheitsabfrage f√ľr die Weboberfl√§che gew√ľnscht, lassen Sie das Kennwortfeld einfach leer!

Versionsverlauf:

Intended:

  • Version 1.01
    Keine Anfragen

Released:

  • 19.05.2022¬† Version 1.00
    Fertigstellung der Version 1.00

Pressure Sensor

Pressure Sensor Dokumentation
Pressure Sensor Dokumentation

 

Key Features:

  • Weiter Eingangsspannungsbereich von 8 ‚Äď 27V
  • Konfiguration aller Modulparameter direkt am Pressure Sensor Modul m√∂glich
  • OLED-Display f√ľr die Anzeige der Messwerte und der Men√ľfunktionen
  • Bedienung √ľber einen Drehwahlschalter oder einen Taster
  • Drei konfigurierbare potentialfreie Ausgangskontakte f√ľr das √úber- und Unterschreiten einer einstellbaren Druckschwelle, sowie eines Sensorfehlers
  • F√ľr jedes Relais kann die Ruhelage NO (normally open) oder NC (normally closed) separat festgelegt werden
  • Werte- und Fehleranzeige im Sensor Sensordisplay
  • Werte- und Fehleranzeige √ľber die Blynk App und ein Web Interface zug√§nglich
  • Messwerte- und Statusmeldungen im Textformat √ľber integrierte Micro USB-Schnittstelle (seriell Port)
  • Vielseitige auch f√ľr beliebige andere Druckmessaufgabe eingesetzt Messung
  • Zwei verschiedene Messmethoden, Messung des absoluten oder des relativen Drucks
  • Manuelle und automatische Kalibrierung bei der relativen Druckmessung
  • Spezielle Funktion f√ľr Druckschlauchmessungen, automatischen Differenzdruckabgleich
  • Teilbares System, dass aus einem wechselbaren Drucksensor, dem eigentlichen Auswertemodul
  • Men√ľgef√ľhrte kundenspezifisch Sensoranpassung.
  • Aktualisierung der Firmware mittels OTA

Allgemeines

Die hier beschriebene Druckmessung entstand aus dem Projekt Timekeeper, dass auf Anfrage f√ľr eine Zeitmessung zu Trainingszwecke f√ľr eine Gleichm√§√üigkeitspr√ľfung durchgef√ľhrt wurde.
Als der Timekeeper beim Auftraggeber im Einsatz war, stellte sich heraus, dass das justieren der Lichtschranken gerade bei Sonnenschein eine m√ľhselige Unterfangen darstellt.

Außerdem hängt die Genauigkeit der Erfassung hierbei auch immer von der Justierung der Lichtschranken ab. Da je nach Höhe und Winkel der Start- und Ziellichtschranke, diese bei verschieden Fahrzeugen unterschiedlich ausgelöst werden können. Diese Fehler bewegen sich zwar meist nur in Millisekunden Bereichen, können aber durchaus die Wertungsergebnisse beeinflussen.

So wurde die Idee geboren, einen alternative Messmethode zu testen. Es sollte eine Druckschlauchmessung aufgebaut werden, die quer √ľber die Fahrbahn gelegt werden kann, umso eine Messmethode zu erhalten, die direkt an den R√§dern des Fahrzeugs misst. Also Unabh√§ngig von der Form und Bauart der Karosserie.

Es wurde ein PVC-Schlauch, der an einem Ende geschlossen war, an eine Handels√ľbliche Druckmessung angeschlossen und der Potentialfreie Ausgangskontakt mit dem entsprechenden Initiator Eingang des Timekeeper Moduls verbunden.

Die ersten Tests lieferten bereits sehr viel versprechend Ergebnisse und bewiesen, dass der grundsätzliche Testaufbau funktionierte.

Nach dem die ersten Erfahrungen mit verschiedene Schlauchmaterialien, Druckaufnehmer und den in der Praxis auftretenden St√∂reinfl√ľssen gesammelt wurden. War schnell klar, dass eine handels√ľbliche Druckmessung die Anforderungen an diese Aufgabe nur bedingt erf√ľllen kann.

Der Nachteil eines solchen Messverfahrens ist eine vergleichsweise ungenaue Messung, da die Kunststoffschl√§uche ein gewisses Eigenleben haben, das zum Beispiel zu temperaturabh√§ngigen Kriecheffekten und Offsetproblemen f√ľhrt.

Es musste also eine speziell auf diese Art der Anwendung zuggeschnittene Lösung entwickelt werden.

Spezielle Funktion f√ľr die Schlauchdruckmessung

Das Hauptproblem stellt nicht die Messung an sich dar, sondern die Umgebungsbedingungen. Den der Druck im inneren des Schlauches ist nat√ľrlich in erster Linie abh√§ngig von der Umgebungstemperatur.

Stellen wir uns folgendes vor, der Messaufbau wird am fr√ľhen Morgen installiert und getestet. Die Ausl√∂seschwelle beim √úberfahren des Schlauchs wird auf ein optimales Ausl√∂severhalten f√ľr die Art und L√§nge des Schlauchs programmiert.

Der Tag beginnt mit einem relativ k√ľhlen Vormittag, entwickelt sich aber gegen die Mittagszeit zu einem sehr sonnigen Tag.
Am Nachmittag entstehen am Himmel größere vorbeiziehende Wolkenfelder.

So k√∂nnte ein normaler Sommer Tag aussehen … was passiert aber nun mit dem Druck im Sensorschlauch?

In der Fr√ľh wurde die Messung kalibriert und optimal eingestellt.
Am Vormittag steigt der Druck im Schlauchsensor jedoch stetig an. Im Extremfall sogar bis √ľber die programmierte Ausl√∂seschwelle.

Am Nachmittag wechselt der Druck im Schlauch im Verhältnis der vorbeiziehenden Wolkenfelder hin und her.
All dies hat Einfluss auf das Ausl√∂severhalten und die Genauigkeit der Messung und kann sogar zu Fehlausl√∂sungen f√ľhren.

Genau f√ľr diesen Anwendungsfall wurde eine spezielle Zusatzfunktion in diese Druckmessung integriert.

Diese √ľberwacht st√§ndig den Druck im Sensorschlauch, steigt bzw. f√§llt der Druck (Delta P) √ľber- oder unter einen programmierbaren Schwellwert und bleibt f√ľr eine definierbare Zeit (t) au√üerhalb der definierten Grenze, wird eine (AC) automatische Nullpunkt Kalibration des Relativdruckwertes durchgef√ľhrt.

Aufgabenstellung:

Es sollte eine Druckmessung mit einem weiten Eingangsspannungsbereich von 8 – 27V entwickelt werden.
Damit ein Betrieb mit einem Bleiakku (12V KFZ-Batterie), einem externen Netzteil oder eine direkte Versorgung aus dem Timekeeper Modul m√∂glich ist. Dieser wird √ľblicherweise mit 24V gespeist.

Die Konfiguration der Modulparameter sollte direkt am Pressure Sensor Modul m√∂glich sein. F√ľr die Anzeige sollte ein kleines OLED-Display f√ľr die Anzeige der Messwerte und der Men√ľfunktionen vorhanden sein. Die Bedienung erfolgt dabei √ľber einen Drehwahlschalter bzw. alternativ √ľber einen Taster, der die Navigation und Auswahl der Men√ľ Punkte erlaubt.

Das Modul sollte √ľber drei konfigurierbare, potentialfreie Ausgangskontakte verf√ľgen. Welche das √úber- und Unterschreiten einer einstellbaren Druckschwelle, sowie einen Sensorfehler ausgeben k√∂nnen. F√ľr jedes dieser drei Relais kann die Ruhelage NO (normally open) oder NC (normally closed) separat festgelegt werden.

Optional zur Werte- und Fehleranzeige am Sensor Modul, sollten diese Informationen auch √ľber die Blynk App und ein Web Interface zug√§nglich sein.

√úber die integrierte Micro USB-Schnittstelle sollen nach Aktivierung dieser Funktion im Menu, die Messwerte sowie die Statusmeldungen im Textformat ausgegeben werden. Damit diese f√ľr eine externe Weiterverarbeitung genutzt werden k√∂nnen.

Bei der Entwicklung der Messung sollte Wert daraufgelegt werden, dass diese sehr vielseitig, auch f√ľr beliebige andere Druckmessaufgabe eingesetzt werden kann.
Es sollen zwei verschiedene Messarten möglich sein, Messung des Absoluten Drucks sowie die Messung des Relativen Drucks.

Die Messung des Relativen Drucks sollte auch manuell Kalibriert werden können.

F√ľr den Einsatz in Verbindung mit einer Druckschlauchmessung, muss eine spezielle Funktion implementiert werden, die bei Bedarf einen automatischen Differenzdruckabgleich durchf√ľhren kann. Dieser soll immer dann durchgef√ľhrt werden, wenn der Druck einen definierbaren Schwellwert (P) f√ľr eine definierbare Zeit (t) √ľber- bzw. unterschreitet.

Das Pressure Sensor Modul sollte ein Teilbares System werden, das aus einem wechselbaren Drucksensor, dem eigentlichen Auswertemodul und einem schnell wechselbaren Schlauchsystem besteht.

Auf diese Weis ist es leicht möglich das Sensorsystem je nach Anforderung kundenspezifisch anzupassen.

In einem weiterer Entwicklungsschritt, soll die Firmware um eine eigenständige Zeitnahme Funktionalität erweitert werden.
Die Zeitmessung beginnt mit dem ersten √úberfahren des Schlauchsensors und endet mit dem zweiten √úberfahren.
Damit die Zeitmessung nicht sofort nach dem Überfahren mir den Hinterreifen wieder beendet wird, soll eine Verzögerungszeit zwischen der Start- und Endzeiterfassung eingegeben werden können, um dies zu verhindern.

Der Drucksensor:

Der verwendete Drucksensor ist ein analog arbeitender Sensor.
Er besitzt ein robustes Edelstahlgeh√§use in dem sich ein pr√§ziser Druckkeramiksensor befindet. Die Vorverarbeitung des Messwerts √ľbernimmt ein integrierter Mikrocontroller.
Der Sensor besitzt eine lange Lebensdauer bei einer geringen Langzeitdrift.

Die Verbindung zur Auswerteelektronik wird √ľber eine dreipolige wasserdichte PACK-Steckverbindung hergestellt.
Die Versorgungsspannung des Sensors betr√§gt 5V ¬Ī 0,25V
Die Sensoren gibt es mit verschiedenen Druchmessbereichen, die jeweils im Men√ľ des Pressure Sensors ausgew√§hlt werden k√∂nnen.

Sensortypen: 5 psi, 15 psi, 30 psi, 60 psi, 100 psi, 150 psi, 200 psi

Weiter Infos zu den Sensoren finden Sie in der ZIP-Datei.

Der Analogausgang arbeitet in einem Spannungsbereich von 0,5V ‚Äď 4,5V linear zum Skalendruck. Der Zerst√∂rungsdruck liegt beim 3-fachen Skalendruck.
Da der Sensorwert √ľber ein Analogsignal im Bereich von 0,5V ‚Äď 4,5V √ľbertragen wird, ist es leicht m√∂glich, beim einem √úber- bzw. Unterschreiten dieser Werte, eine Drahtbruch bzw. Kurzschluss Auswertung vorzunehmen.

Farbcode der Sensoranschlussdrähte:

  • Analogausgang 0,5-4,5V¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬† Gr√ľn
  • +5V (VDD)¬†¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬† ¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬† Schwarz
  • Masse (GND)¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬† ¬† Rot

Anschlussbelegung Hardware

Anschlussbelegung V1.00

REL. MIN¬†¬†¬†¬†¬† Potentialfreier Kontakt f√ľr eine min. Druck
REL. MAX¬†¬†¬† Potentialfreier Kontakt f√ľr eine max. Druck
REL. ERR ¬†¬†¬†¬† Potentialfreier Kontakt f√ľr eine Sensorst√∂rung
SENS.             Sensor analog Eingang max. 0-5V
GND               Ground (Minus)
+5V                 Spannungsversorgung 5V Sensor
+3,3V             Spannungsversorgung 3,3V Sensor
+8-27V-       Spannungsversorgung Pressure Sensor Modul

Versionsverlauf:

Intended:

  • Integration einer direkten Zeitmessung mit Blynk APP und Web-Interface

Released:

  • 03.05.2021: Version X.01 (f√ľr alle Hardware Versionen)
    – Ergebnisliste im Webserver
    – Ergebnistabelle im Webserver als CSV exportierbar
    – Anzeige der Ergebnisse in der Blynk App.
    – Konfiguration verschiedener Drucksensoren von 5 psi – 200 psi
  • 15.12.2020: Version 1.00
    – Druckmessung relativ / absolut
    – Autocalibration
    – Sensorfehlererkennung Relaisausgang NC/NO
    – Seriale Ausgabe der Werte √ľber USB,
    РMin/Max Wert Relaisausgänge NC/NO
    – Webbrowser Darstellung
    – Blynk Applikation

Einen eigenen lokalen Blynk Server auf dem Raspberry PI installieren

Logen Sie sich auf ihrer Raspberry z.B. per ssh ein.

Nun wird die aktuelle Java Version (Java 8) installiert :

sudo apt-get install oracle-java8-jdk

Stellen Sie sicher, dass nun die aktuelle Java Version installiert wurde.

java -version
Output: java version "1.8.0_40"

Download des Blynkserver jar Files in das „/home/pi/Blynk Verzeichnis.
Sollte das Verzeichnis noch nicht existiert muss es zuerst angelegt werden.

Alle folgenden „sudo“ Anweisungen kann man sich sparen, wenn man gleich in den „sudo bash“ wechselt, dies ist vergleichbar mit dem „su“ bei anderen Linux Distributionen.

pwd
/home/pi/
sudo mkdir Blynk
cd Blynk
sudo wget "https://github.com/blynkkk/blynk-server/releases/download/v0.39.10/server-0.39.10.jar"

Es ist auch möglich,  die Server Datei manuell via ssh oder scp herunter zuladen und in das entsprechende Verzeichnis hinein zu kopieren .

Um den Mailversand zu aktivieren, muss im Verzeichnis /home/pi/Blynk eine Datei mit dem Namen mail.properties angelegt werden.

Der Inhalt dieser Datei hat folgendes Format.

mail.smtp.auth=true
mail.smtp.starttls.enable=true
mail.smtp.host=smtp.gmail.com
mail.smtp.port=587
mail.smtp.username=Anmeldename
mail.smtp.password=Kennwort

Die aktuelle Blynk Server Version ist unter:
https://github.com/blynkkk/blynk-server/releases
zu finden.

  • Server mit den default Einstellungen starten (Hardware Port 9443 SSL)
    sudo java -jar server-0.39.10.jar -dataFolder /home/pi/Blynk        
    
  • Als R√ľckmeldung des Servers erscheint eine Meldung wie diese :
    Blynk Server successfully started.
    All server output is stored in current folder in 'logs/blynk.log' file.
    

Aktiviere automatischen Server Neustart

Um diese Option zu aktivieren, suchen Sie das Verzeichnis:
/etc/init.d/rc.local
√∂ffnen sie die Datei mit dem vi Editor und f√ľgen sie die folgende Zeile hinzu:

sudo vi rc.local
java -jar /home/pi/Blynk/server-0.39.10.jar -dataFolder /home/pi/Blynk &

Sollte dieser Ansatz nicht funktionieren, versuche Sie bitte folgendes:

sudo crontab -e

und f√ľgen sie die folgenden Zeilen hinzu

    @reboot java -jar /home/pi/server-0.39.10.jar -dataFolder /home/pi/Blynk &

anschließend speichern und beenden.

Der Administrationsbereich kann anschließend bei laufendem Blynk Server mit folgender URL im Browser geöffnet werden.

https://your_ip|(127.0.0.1):9443/admin

Um den Blynkserver im Lokalen Netzwerk auch √ľber das Internet erreichen zu k√∂nnen wird der Einsatz einer DynDNS Adresse empfohlen. Diese kann dann z.B. in einer Fritzbox hinterlegt werden, √§ndert sich die IP-Adresse der Fritzbox (alle 24 Stunden veranla√üt durch den Provider), wird automatisch die DynDNS Adresse informiert und der Server ist somit immer mit einem Pseudo Domain Name erreichbar.
In lokalen Router m√ľssen au√üerdem noch ein paar Portfreigaben definiert werden. EIn Auszug der wichtigsten Einstellungen ist hier zu sehen.

 

Viele weitere Informationen zur Konfiguration der Blynk Servers.