RzlCtrl: Unterschied zwischen den Versionen

Aus RaumZeitLabor Wiki
Keine Bearbeitungszusammenfassung
 
(11 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{AchtungKasten1|title=Durch RZL-Door & RZL-Lock ersetzt|msg=Das Projekt RzlCtrl wurde durch [[RZL-Door]] + [[RZL-Lock]] ersetzt.}}
{{ProjektInfoBox
{{ProjektInfoBox
|name        = rzlCtrl
|name        = rzlCtrl
|status      = experimental
|status      = obsolete
|image      = RaumZeitLabor - Logo - Schwarz.svg
|image      = RZLCtrl 5.1 Side.jpg
|description = I/O Hardware für den [[Hausbus3]]
|description = I/O Hardware für den [[Hausbus3]]
|category    = Infrastruktur
|author      = [[Benutzer:Spike|spike]]
|author      = [[Benutzer:Spike|spike]]
|maintainer  = [[Benutzer:Spike|spike]]
|maintainer  = [[Benutzer:Spike|spike]]
Zeile 15: Zeile 18:
}}
}}


[[Datei:RZLCtrl 5.2 Top.jpg|250px|thumb|Oberseite der rzlCtrl-Platine]]
[[Datei:RZLCtrl 5.1 Bottom.jpg|250px|thumb|Unterseite der rzlCtrl-Platine]]
== Obsolete ==
Wurde durch [[RZL-Door]] und [[RZL-Lock]] ersetzt.


== Old Stuff ==
Im RZL gibt es diverse $Dinge die an den [[Hausbus3]] angebunden sind bzw (wieder) werden sollen. Außerdem erfordert das [[Neben3raum_(Werkstatt)|Wachstum]] zusätzliche Hardware.
Als kontinuierlichen Weiterentwicklung sollen daher eine Platinen erstellt werden welche als Eierlegende Wollmilchsau möglichst vielen Ansprüchen gerecht wird.


Im RZL gibt es diverse $Dinge die an den Hausbus3 angebunden ist bzw werden soll. Ausserdem erfordert das [[Neben3raum_(Werkstatt)|Wachstum]] zusätzliche Hardware.
Ursprünglich war vorgesehen eine Platine zu Entwickeln die - je nach Firmware - sowohl außen als auch innen eingesetzt werden kann.
Als kontinuierlichen Weiterentwicklung soll daher eine Platine erstellt werden welche als Eierlegende Wollmilchsau möglichst vielen Ansprüchen gerecht wird.
Das hat sich durch die neue Location jedoch geändert. Jetzt ist das PinPad ein extra [[RZL-Door|Projekt]].


Vorschläge, Kritik und Helfer sind gerne gesehen.  
Vorschläge, Kritik und Helfer sind gerne gesehen.  


== Eierlegende Wollmilchsau ==
== Aktueller Status ==
* Türsteuerung
Nachdem der Umzug alles über den Haufen geworfen hat, beginnt das Projekt von vorne.
** Pinpad aussen mit RS485 nach innen
Auch wird von ESP8266 auf ESP32 gewechselt.
** Pin Prüfung / Motor Ansteuerung / Sensoren innen
* Lichtsteuerung
* "Zugangskontrolle" für Laser (Nein, es kommt nicht an jede Maschine so ein teil)
 


== Aufbau ==
Ein Atmega64 als zentraler Controller und ein ESP zur MQTT anbindung.
Der Atmega64 soll alle Funktionen Unabhängig vom ESP (offline) erledigen können.


== Grundlegender Aufbau ==
* Außen [[RZL-Door]]
* RS485 Zwischen innen und Außen
* Innen
** Pin Prüfung
** Motor Ansteuerung
** Klingel Auswertung
** Türöffner (unten) Ansteuerung


== Versorgung ==
* 24V
* 5V+ für Motor


== I/O Anschlüsse ==
=== Aufbau ===
Ein Atmega64 als zentraler Controller und ein ESP32 zur MQTT anbindung.
Der Atmega64 soll alle Funktionen Unabhängig vom ESP32 (offline) erledigen können.


=== 8 Digitale Ein/Ausgänge ===
* 24V Output, Kurzschlussfest, max 1,9A Pro Kanal
* 24V Eingang


=== Versorgung ===
* 24V (Kann bis 9V runter)
* 5V+ für Motor (Kann bei bedarf mit der 24V Versorgung zusammengelegt werden)


=== H-Bridge für Motor ===
=== I/O Anschlüsse ===
6A, 5-25V, unkaputtbar (laut Hersteller)
* 8 Digitale Ein/Ausgänge
** 24V Output, Kurzschlussfest, max 1,9A Pro Kanal
** 24V Eingang
** 4x 24V und 4x GND Anschlüsse (neu)
* 2 Analoge Eingänge (neu)
** 0..30V (Jeweils mit extra 24V Anschluss)
* H-Bridge für Motor (6A, 5-25V, unkaputtbar (laut Hersteller))




=== 485 BUS ===
=== RS485 BUS ===
192008N1
192008N1
* Protokoll
* Protokoll
  z.B.: <SOH>Version<RS>Ziel-Adresse<STX>$data<ETX>16Bit CRC<EOT>
  z.B.: <SOH>Version<RS>Ziel-Adresse<STX>$data<ETX>16Bit CRC<EOT>
  Oder: Klartext zwischen Pinpad und Tür (kiss :-)
  Oder: Klartext zwischen Pinpad und Tür (KISS :-)




Zeile 65: Zeile 83:


=== S0 ===
=== S0 ===
Stichwort: Smartmeter
Gestrichen.
* Galvanisch getrennt
* Zeit zwischen 2 Datenpunkten?
 


=== 125Khz RFID Leser ===
=== 125Khz RFID Leser ===
Nur für die simplen "Serial Number" Tags
Gestrichen.


=== Anschluss für Externer RFID Leser (neu) ===
Gestrichen.


=== 1-Wire Temperatursensor ===
=== 1-Wire Temperatursensor ===
* Wenn Ausserhalb der Platine gemessen werden soll können weitere Sensoren auf den RS485 Bus geschaltet werden.
Gestrichen. Wenn benötigt dann per RS485 Bus.
 


=== Display ===
=== Display ===
Irgendwas zwischen 1X8 und 2x16
Irgendwas zwischen 1X8 und 4x20




=== Keypad ===
=== Keypad ===
4x4 Matrix
4x4 Matrix
=== Gehäuse ===
Für BOPLA Reglocard 2000 Optimiert




== Gehäuse ==
== Software ==
Zur Diskusion stehen:
* Bopla regelocard
* Irgendwas für Hutschiene


=== AVR ===
Die Software für den AVR schreibt [[Benutzer:Spike|spike]]
* Die Low-Level Treiber sind fertig.
* Fast alle Hi-Level Funktionen sind fertig.


== Software ==
=== ESP32 ===
Die für den AVR schreibt [[Benutzer:Spike|spike]], den ESP8266 übernimmt [[Benutzer:Borax|borax]].
Die Software schreibt [[Benutzer:Spike|spike]]




=== Struktur ===
=== Struktur ===
bisherige Überlegungen:
bisherige Überlegungen:
* ESP Übersetzt zwischen RS232 (AVR) udn WLAN (MQTT/https)
* ESP Übersetzt zwischen RS232 (AVR) und WLAN (MQTT/https)
** RS232 Protokoll ist noch festzulegen
** RS232 Protokoll ist noch festzulegen
** soll regelmässig die Pins von der UserDB per https hohlen und zum AVR schicken (https, bisher hat die Schnittstelle von der userDB nur http, [[Benutzer:ranlvor|ranlvor]] wird sie auf https upgraden)
** soll regelmäßig die Pins von der UserDB per https hohlen und zum AVR schicken (https, bisher hat die Schnittstelle von der userDB nur http, [[Benutzer:ranlvor|ranlvor]] wird sie auf https upgraden)
** ESP hat fixe topics die er abonniert und neue Ereignisse immer an den AVR weiterleitet
** ESP hat fixe topics (to be defined) die er abonniert und neue Ereignisse immer an den AVR weiterleitet
** ESP sendet topics entsprechend der Daten die er vom AVR bekommt. Die komplette Logik befindet sich im AVR, der ESP leitet stumpf durch
** ESP sendet topics entsprechend der Daten die er vom AVR bekommt. Die komplette Logik befindet sich im AVR, der ESP leitet stumpf durch


* AVR kümmert sich die I/Os
* AVR kümmert sich um die I/Os
** offline PIN Kontrolle und Türsteuerung
** offline PIN Kontrolle und Türsteuerung
=== Kommunikation zwischen ESP und AVR ===
Die Kommunikation läuft über Seriell direkt auf der Platine. Die Geschwindigkeit wurde erstmal auf 115200 BAUD festgelegt (kein tieferer Grund). Zeitlich ist das ganze nicht weiter kritisch.
Auf der Platine ist eine Reset-Leitung vorgesehen mit der es dem AVR möglich ist, den ESP im Falle von Problemen zurückzusetzen (quasi wie ein Watchdog). Aus diesem Grund sollte der ESP regelmäßig Heartbeat Botschaften an den AVR senden. Am besten könnte man in diesen Botschaften ein paar Informationen an den AVR weitergeben, so wie WiFi status, MQTT Status usw. Das ist bisher aber noch nicht definiert.
=== I/O Neben3raum ===
* 1x (DALI-TX) Ansteuerung Vorschaltgeräte
* 1x (out) Spannungsversorgung der Leuchtstoffröhren per Relais
* 3x (in) Taster
* 1x (in) Status des Hauptschalter
* 1x (out) Abschaltung des Hauptschalters
* 2x (Analog in) Licht Dimmen
* 1x (out) Hauptraum Türstatus






=== I/O Tür Hauptraum ===
* 1x (in) Tür Geöffnet / Geschlossen
* 1x (in) Riegel Endlage ZU
* 1x (in) Riegel Endlage AUF
* 1x (Motor) Türantrieb


[[Kategorie:Projekt]]
=== MQTT Topics ===
[[Kategorie:Hardware]]
* "/etc/motd"
[[Kategorie:Infrastruktur]]
* ....

Aktuelle Version vom 17. Dezember 2022, 18:23 Uhr

Achtung Achtung: Durch RZL-Door & RZL-Lock ersetzt Achtung
Das Projekt RzlCtrl wurde durch RZL-Door + RZL-Lock ersetzt.
         
rzlCtrl

Release status: obsolete [box doku]

Beschreibung I/O Hardware für den Hausbus3
Kategorie  Infrastruktur
Autor(en)  spike
Verantwortliche(r)  spike
Letzte Version  v0.0.1
Oberseite der rzlCtrl-Platine
Unterseite der rzlCtrl-Platine


Obsolete

Wurde durch RZL-Door und RZL-Lock ersetzt.

Old Stuff

Im RZL gibt es diverse $Dinge die an den Hausbus3 angebunden sind bzw (wieder) werden sollen. Außerdem erfordert das Wachstum zusätzliche Hardware. Als kontinuierlichen Weiterentwicklung sollen daher eine Platinen erstellt werden welche als Eierlegende Wollmilchsau möglichst vielen Ansprüchen gerecht wird.

Ursprünglich war vorgesehen eine Platine zu Entwickeln die - je nach Firmware - sowohl außen als auch innen eingesetzt werden kann. Das hat sich durch die neue Location jedoch geändert. Jetzt ist das PinPad ein extra Projekt.

Vorschläge, Kritik und Helfer sind gerne gesehen.

Aktueller Status

Nachdem der Umzug alles über den Haufen geworfen hat, beginnt das Projekt von vorne. Auch wird von ESP8266 auf ESP32 gewechselt.


Grundlegender Aufbau

  • Außen RZL-Door
  • RS485 Zwischen innen und Außen
  • Innen
    • Pin Prüfung
    • Motor Ansteuerung
    • Klingel Auswertung
    • Türöffner (unten) Ansteuerung


Aufbau

Ein Atmega64 als zentraler Controller und ein ESP32 zur MQTT anbindung. Der Atmega64 soll alle Funktionen Unabhängig vom ESP32 (offline) erledigen können.


Versorgung

  • 24V (Kann bis 9V runter)
  • 5V+ für Motor (Kann bei bedarf mit der 24V Versorgung zusammengelegt werden)

I/O Anschlüsse

  • 8 Digitale Ein/Ausgänge
    • 24V Output, Kurzschlussfest, max 1,9A Pro Kanal
    • 24V Eingang
    • 4x 24V und 4x GND Anschlüsse (neu)
  • 2 Analoge Eingänge (neu)
    • 0..30V (Jeweils mit extra 24V Anschluss)
  • H-Bridge für Motor (6A, 5-25V, unkaputtbar (laut Hersteller))


RS485 BUS

192008N1

  • Protokoll
z.B.: <SOH>Version<RS>Ziel-Adresse<STX>$data<ETX>16Bit CRC<EOT>
Oder: Klartext zwischen Pinpad und Tür (KISS :-)


Dali

Zum ansteuern von EVGs, insbesondere im Neben3raum

  • Galvanisch getrennt
  • Reicht für 30 EVGs
  • Die EVGs müssen vorher mit einer individuellen Adresse versehen werden


S0

Gestrichen.

125Khz RFID Leser

Gestrichen.

Anschluss für Externer RFID Leser (neu)

Gestrichen.

1-Wire Temperatursensor

Gestrichen. Wenn benötigt dann per RS485 Bus.

Display

Irgendwas zwischen 1X8 und 4x20


Keypad

4x4 Matrix

Gehäuse

Für BOPLA Reglocard 2000 Optimiert


Software

AVR

Die Software für den AVR schreibt spike

  • Die Low-Level Treiber sind fertig.
  • Fast alle Hi-Level Funktionen sind fertig.

ESP32

Die Software schreibt spike


Struktur

bisherige Überlegungen:

  • ESP Übersetzt zwischen RS232 (AVR) und WLAN (MQTT/https)
    • RS232 Protokoll ist noch festzulegen
    • soll regelmäßig die Pins von der UserDB per https hohlen und zum AVR schicken (https, bisher hat die Schnittstelle von der userDB nur http, ranlvor wird sie auf https upgraden)
    • ESP hat fixe topics (to be defined) die er abonniert und neue Ereignisse immer an den AVR weiterleitet
    • ESP sendet topics entsprechend der Daten die er vom AVR bekommt. Die komplette Logik befindet sich im AVR, der ESP leitet stumpf durch
  • AVR kümmert sich um die I/Os
    • offline PIN Kontrolle und Türsteuerung

Kommunikation zwischen ESP und AVR

Die Kommunikation läuft über Seriell direkt auf der Platine. Die Geschwindigkeit wurde erstmal auf 115200 BAUD festgelegt (kein tieferer Grund). Zeitlich ist das ganze nicht weiter kritisch. Auf der Platine ist eine Reset-Leitung vorgesehen mit der es dem AVR möglich ist, den ESP im Falle von Problemen zurückzusetzen (quasi wie ein Watchdog). Aus diesem Grund sollte der ESP regelmäßig Heartbeat Botschaften an den AVR senden. Am besten könnte man in diesen Botschaften ein paar Informationen an den AVR weitergeben, so wie WiFi status, MQTT Status usw. Das ist bisher aber noch nicht definiert.



I/O Neben3raum

  • 1x (DALI-TX) Ansteuerung Vorschaltgeräte
  • 1x (out) Spannungsversorgung der Leuchtstoffröhren per Relais
  • 3x (in) Taster
  • 1x (in) Status des Hauptschalter
  • 1x (out) Abschaltung des Hauptschalters
  • 2x (Analog in) Licht Dimmen
  • 1x (out) Hauptraum Türstatus



I/O Tür Hauptraum

  • 1x (in) Tür Geöffnet / Geschlossen
  • 1x (in) Riegel Endlage ZU
  • 1x (in) Riegel Endlage AUF
  • 1x (Motor) Türantrieb

MQTT Topics

  • "/etc/motd"
  • ....