Vorstellung: HM-Bell - Sensor/Aktor für Haustürklingel
Verfasst: 01.09.2020, 15:25
Hallo zusammen,
ich habe in den letzten Monaten einiges aus den hier vorgestellten Projekten mitgenommen und darf nun selbst einen Beitrag dazu leisten und eines meiner Projekte vorstellen:
Eine Platine zum Signalabgriff sowie zum Ein- und Ausschalten einer konventionellen, AC betriebenen Haustürklingel.
Das Projekt basiert auf der Software für den HM-LC-Sw2-FM (2-Ch. Input/Output) und dient zur aktiven Benachrichtigung nach dem Betätigen der Klingel per Pushdienst und zur Deaktivierung der Haustürklingel über Nacht. Die Fernbedienung der Klingel ist nicht vorgesehen.
Die Hardware besteht grob aus einem Arduino, einem CC1101, zwei Spannungswandlern und zwei Relais.
Der gesamte Aufbau hat eine fallback Funktion, sodass die Relais im spannungslosen Zustand geschlossen sind. Damit ist sichergestellt, dass im unwahrscheinlichen Fall eines Hardwareausfalls die Funktion im lokalen Betrieb erhalten bleibt.
Da unsere Haustürklingel mit einem konventionellen 8V/12V AC Klingeltrafo gesteuert wird, welcher im Regelfall absolut ineffizient betrieben wird, ist der Stromverbrauch durch das im inaktiven Fall angezogene Relais über Nacht irrelevant.
Um den Aufbau so zu realisieren brauchte ich einen AC/DC Converter für die Versorgungsspannung und einen zweiten für die Signalerkennung beim Betätigen der Klingel.
Der erste Gleichrichter ist somit kontinuierlich an die AC Versorgungsspannung des Trafo angebunden und versorgt den Arduino. Parallel wird ein Pufferkondensator geladen, der für den Anzug des ersten Signalrelais und das parallele Senden Des CC1101 genug Energie vorhält. Der CC1101 wird DC mäßig vom Arduino mit 3,3V versorgt.*
Der zweite Gleichrichter wird erst durch das Betätigen der Klingel gespeist und zieht über einen zweiten Festspannungsregler ein weiteres, zweipoliges Signalrelais an. Dieses Relais schaltet ausgangsseitig den Gong und den Schalteingang des 2. HM Channels am AVR. So kann auch im Ausgeschalteten Zustand eine Benachrichtigung gesendet werden.
Über den ersten HM Channel kann die Klingel über das Relais ein oder ausgeschaltet werden. (Invertierte Belegung für Fallback).
Zur Visualisierung des Einschaltzustandes ist auch das erste Relais zweipolig ausgelegt und speist im geschlossenen Zustand eine Signal LED (diese ist bei uns im Klingeltaster und hat daher einen separaten Signalausgang am PCB).
Ein Gehäuse für den Aufbau ist nicht vorhanden, da das PCB für den Einbau in eine tiefe Unterputzdose vorgesehen ist. Allerdings kann das PCB mittels M3 Durchgangslöcher auch verschraubt werden.
*Achtung: Die Logikpegel des AT Mega 328P und des CC1101 sind hier nicht angeglichen! Das Ausgangslevel des µC ist mit 4,2 - 5 V über dem von TI spezifizierten 3,9 V an den Signaleingängen. Durch die kurzen Signalzeiten des SPI und der internen Clampdioden des CC1101 funktioniert das allerdings trotzdem. Dies kann mit einem Spannungsteiler, externen Schutzdioden, oder einem Pegelwandler auch sauber aufgebaut werden.
Um dieses Problem zu umgehen kann anstelle eines Arduino Nano auch ein Pro Mini verendet werden, dann müssen auch die Relais für 3,3V ausgelegt, oder mittels Transistor geschaltet werden.
HM Steuerung:
Channel 1 (Aktor): Klingel ein(off) / aus(on) (invertierte Belegung)
Channel 2 (sensor): wenn betätigt, Status in CCU aktualisieren
Homematic Programm: Das automatische zurücksetzen des Ch. 2 schaltet den Trigger für die Pushbenachrichtigung wieder zurück und die Verzögerung verhindert mehrfach Benachrichtigung bei mehrfachem kurzen Klingeln.
Danke @Psi für das erste Review und Feedback.
PS: Es ist schon echt praktisch, dem Paketboten vom Büro aus die Garage zum Ablegen der Pakete zu öffnen.
EDIT: Hier der Link zum Projekt auf GitHub. Dort wurde auch schon die Levelanpassung in der Version 2.1 berücksichtigt. https://github.com/paso42/HM-Bell
ich habe in den letzten Monaten einiges aus den hier vorgestellten Projekten mitgenommen und darf nun selbst einen Beitrag dazu leisten und eines meiner Projekte vorstellen:
Eine Platine zum Signalabgriff sowie zum Ein- und Ausschalten einer konventionellen, AC betriebenen Haustürklingel.
Das Projekt basiert auf der Software für den HM-LC-Sw2-FM (2-Ch. Input/Output) und dient zur aktiven Benachrichtigung nach dem Betätigen der Klingel per Pushdienst und zur Deaktivierung der Haustürklingel über Nacht. Die Fernbedienung der Klingel ist nicht vorgesehen.
Die Hardware besteht grob aus einem Arduino, einem CC1101, zwei Spannungswandlern und zwei Relais.
Der gesamte Aufbau hat eine fallback Funktion, sodass die Relais im spannungslosen Zustand geschlossen sind. Damit ist sichergestellt, dass im unwahrscheinlichen Fall eines Hardwareausfalls die Funktion im lokalen Betrieb erhalten bleibt.
Da unsere Haustürklingel mit einem konventionellen 8V/12V AC Klingeltrafo gesteuert wird, welcher im Regelfall absolut ineffizient betrieben wird, ist der Stromverbrauch durch das im inaktiven Fall angezogene Relais über Nacht irrelevant.
Um den Aufbau so zu realisieren brauchte ich einen AC/DC Converter für die Versorgungsspannung und einen zweiten für die Signalerkennung beim Betätigen der Klingel.
Der erste Gleichrichter ist somit kontinuierlich an die AC Versorgungsspannung des Trafo angebunden und versorgt den Arduino. Parallel wird ein Pufferkondensator geladen, der für den Anzug des ersten Signalrelais und das parallele Senden Des CC1101 genug Energie vorhält. Der CC1101 wird DC mäßig vom Arduino mit 3,3V versorgt.*
Der zweite Gleichrichter wird erst durch das Betätigen der Klingel gespeist und zieht über einen zweiten Festspannungsregler ein weiteres, zweipoliges Signalrelais an. Dieses Relais schaltet ausgangsseitig den Gong und den Schalteingang des 2. HM Channels am AVR. So kann auch im Ausgeschalteten Zustand eine Benachrichtigung gesendet werden.
Über den ersten HM Channel kann die Klingel über das Relais ein oder ausgeschaltet werden. (Invertierte Belegung für Fallback).
Zur Visualisierung des Einschaltzustandes ist auch das erste Relais zweipolig ausgelegt und speist im geschlossenen Zustand eine Signal LED (diese ist bei uns im Klingeltaster und hat daher einen separaten Signalausgang am PCB).
Ein Gehäuse für den Aufbau ist nicht vorhanden, da das PCB für den Einbau in eine tiefe Unterputzdose vorgesehen ist. Allerdings kann das PCB mittels M3 Durchgangslöcher auch verschraubt werden.
*Achtung: Die Logikpegel des AT Mega 328P und des CC1101 sind hier nicht angeglichen! Das Ausgangslevel des µC ist mit 4,2 - 5 V über dem von TI spezifizierten 3,9 V an den Signaleingängen. Durch die kurzen Signalzeiten des SPI und der internen Clampdioden des CC1101 funktioniert das allerdings trotzdem. Dies kann mit einem Spannungsteiler, externen Schutzdioden, oder einem Pegelwandler auch sauber aufgebaut werden.
Um dieses Problem zu umgehen kann anstelle eines Arduino Nano auch ein Pro Mini verendet werden, dann müssen auch die Relais für 3,3V ausgelegt, oder mittels Transistor geschaltet werden.
HM Steuerung:
Channel 1 (Aktor): Klingel ein(off) / aus(on) (invertierte Belegung)
Channel 2 (sensor): wenn betätigt, Status in CCU aktualisieren
Homematic Programm: Das automatische zurücksetzen des Ch. 2 schaltet den Trigger für die Pushbenachrichtigung wieder zurück und die Verzögerung verhindert mehrfach Benachrichtigung bei mehrfachem kurzen Klingeln.
Danke @Psi für das erste Review und Feedback.
PS: Es ist schon echt praktisch, dem Paketboten vom Büro aus die Garage zum Ablegen der Pakete zu öffnen.
EDIT: Hier der Link zum Projekt auf GitHub. Dort wurde auch schon die Levelanpassung in der Version 2.1 berücksichtigt. https://github.com/paso42/HM-Bell