Konzept SmartHome Steuerung

Einfach manuell durch besonders langes drücken des Tasters. In dem Fall wird der Status dann einfach invertiert.

An sich darf dieser Fehler eh nur sehr selten auftreten. Ausfälle der Relais sind wenig Wahrscheinlich und die Ansteuerung läuft komplett über den Controller.

Naja, eigentlich konterkariert dieses Vorgehen ja die Grundidee des SmaerHome.

Ich muss mich im Normalfall darauf verlassen können, das ein Schaltvorgang garantiert ausgeführt wird.
Wenn ich erst nachschauen muss ob und dann spezielle Schaltungen vornehmen - wofür brauche ich dann noch SmartHome?

Aber das ist wohl Ansichtssache.

Gruß Tommy

Die Warscheinlichkeit dafür ist genau so hoch, wie bei einem Normalen Relais. Wenn das klebt oder nicht schaltet passiert auch nichts.
Die Funktion ist eher für den Fall das bei einem Stromausfall o.ä. etwas unvorhergesehenes passiert.

Wie gesagt, normale Relais haben auch ihre Nachteile und vielfältige Fehlermöglichkeiten. Zudem habe ich so immer die Möglichkeit auf den jetzigen Stand ohne SmartHome zurück zu gehen. Das wäre mit Relais so nicht einfach möglich.

Ok, ich kenne die Schaltzuverlässigkeit der aktuellen Stromstoßrelais nicht. Früher (TM) gab es da schon signifikante Schaltfehler.

Ich würde sowieso weitestgehend auf mechanischen Kontakte verzichten. Das ist aber auch Ansichtssache.

Gruß Tommy

Also aus Erfahrung würde ich den Stromstoßschalter auch nicht so sehr trauen wie Relais.
Aber Grundsätzlich hast Du recht, die Stromstoßschalter sind schon recht zuverlässig, nur würden mir 99,5% nicht reichen.
Technische defekte bei beiden Varianten mal ausgeschlossen.

Wenn ich Stromstoßschalter nehmen würde, würde der Schalter immer direkt den Stromstoßschalter schalten und ein weiterer Schließerkontakt den Zustand an die Steuerung melden. Dazu noch einen Ausgang der Steuerung parallel an den Stromstoßschalter.
Dann könnte die Steuerung ausfallen und dennoch würde alles laufen. Sobald die Steuerung wieder läuft, weiß sie auch den Zustand vom Stromstoßschalter.

Vorab ich will keine Werbung für Wago machen, habe damit nur meine privaten Erfahrungen gesammelt.
Beruflich verwenden wir Scheider, B&R, Siemens, Rockwell, ....

Sicerlich gibt es fertige Lösungen. Aber wie bei allem gibt es auch da Verschiedene Vor- und Nachteile.

Also Nachteile fallen mir nicht ein.

Fertige SmartHome Systeme sind teuer und hängen fast immer direkt an einem speziellen Hersteller. Geht der pleite oder backt in Zukunft Brote, sitzt man auf einem teuren Berg Elektroschrott.
Dazu kommt noch das weit größere Problem mit der Sicherheit und der Datenverarbeitung ( " nach Hause Telefonieren").

Also wenn Du z.B. Wago, Siemens, ... nimmst, würde ich mir wenig sorgen mache, auch wird es dann noch lange Zeit Teile bei eBay oder so geben.
Mit der Sicherheit ist das wohl so eine Sache. Die SPS kann für das Internet gesperrt werden oder auch ein eigens Netz mit Wlan bekommen. Wer sagt Dir, das so ein ESP nicht auch nach draußen telefoniert, wer weiß was in den Chips integriert ist?! Wer hat Interesse daran deine Lampen oder was auch immer zu hacken?

Industrieelle SPS System wären an sich sicher eine gute Wahl. Sind aber auch nicht Billig. Ich habe Beruflich sehr viel mit den Siemen SPS Steuerungen zu tun, da würde eine aktuelle S7-1200 mit allem Zubehöhr auch mit 1200 bis 1500 € zu Buche schlagen.

Wie schon geschrieben würde man es mit einer Wago für 600-700Euro hinbekommen und man hat was vernünftiges.

Zu dem Punkt wer kann das weiter betreiben wenn ich das nicht kann. In meinem direkten Umfeld gibt es keinen der das könnte, so oder so nicht. Daher ist die Installation so ausgelegt das man alles auf Stand null zurück klemmen könnte.

Also selbst bei uns auf dem Land kenne ich 2 Elektriker die Wago als Steuerung für Häuser verbauen, da wird man jemanden finden. Das Problem bleibt und ist bei Deiner Lösung sicherlich x mal höher als bei einer SPS, bei einem Ausfall sitzt Du oder Deine Frau / Freundin / Kinder erstmal im dunklen. Also bei mir würden die das nicht lustig finden.

Das Problem mit den Stromstoßschaltern ist mir bekannt. Das hat aber dafür wieder andere Vorteile. So brauchen Stromstoßschalter zum beispiel keinen Haltestrom. Da duese dann eh nur über die SmartHome Steuerung gesteuert werden, ist die gefahr gering das es nicht passt. Zudem baue ich für den Notfall eine Synchronisationsfunktion ein.

Hatte ich oben schon etwas zu geschrieben.
Also wer eine Steuerung einbaut und sich Gedanken um den Haltestrom von Relais macht, der rechnet falsch. Wenn das Relais eine Lampe einschaltet, verbraucht dies >10Watt, da ist der Haltestrom wohl zu vernachlässigen.
Diese Notfallfunktion ist ja in Ordnung, hat mit SmartHome dann nicht mehr viel zu tun.

Ein weiter Vorteil einer Siemens, Wago oder so, ist die VISU. Der Aufwand das in einem ESP zumachen ist nicht zu unterschätzen.

Ich möchte Dir nichts einreden. Jeder soll machen was er möchte. Sind nur meine Erfahrungen oder Meinungen.

Für die 24V to 3.3V würde ich das evtl. so machen:

Einen EL 817 (1,2V und 20mA) nehmen.

Eingangsseitig (24V) einen 1k2 Widerstand in Reihe.
Ausgangsseitig (3.3V) einen 1k Widerstand in Reihe zum GND und am PIN 3 vom EL, noch einen 10k Widerstand in Reihe zum Eingang vom ESP.

Ist dann Galvanisch getrennt. Ein Spannungsteiler wäre mir nicht sicher genug.

hd458:
Ausgangsseitig (3.3V) einen 1k Widerstand in Reihe zum GND und am PIN 3 vom EL, noch einen 10k Widerstand in Reihe zum Eingang vom ESP.

In #13 hatte ich das ungefähr so vorgeschlagen, allerdings verstehe ich diese Widerstände nicht.

Ich würde es einfacher machen: Pin 4 Collector an den µC-Eingang und Pin 3 Emitter an GND, dann den internen PullUp (ca. 50 kΩ) aktivieren. Spricht was dagegen?

In #13 hatte ich das ungefähr so vorgeschlagen, allerdings verstehe ich diese Widerstände nicht.

ups, habe ich nicht gelesen oder ignoriert. :slight_smile:

Ich würde es einfacher machen: Pin 4 Collector an den µC-Eingang und Pin 3 Emitter an GND, dann den internen PullUp (ca. 50 kΩ) aktivieren. Spricht was dagegen?

Glaub nicht das etwas dagen spricht. Wie aktiviere ich den Internen PullUp?
Geht das bei jedem ESP?

hd458:
ups, habe ich nicht gelesen oder ignoriert. :slight_smile:

Zwei Leute, ein Gedanke, paßt schon :slight_smile:

hd458:
Glaub nicht das etwas dagen spricht. Wie aktiviere ich den Internen PullUp?

  pinMode(taster1, INPUT_PULLUP);

hd458:
Geht das bei jedem ESP?

Das geht nicht bei jedem Pin, wobei die Nutzungsmöglichkeiten der Pins sowieso eingeschränkt sind. Das Datenblatt vom ESP32 erwähnt auch PullDown.

Danke agmue habe auch mal etwas gegoogelt :slight_smile:

Glaube aber das ich die internen Widerstände nicht benutze.

Diese 2 Cent für den Widerstand können einem unter Umständen viel Zeit ersparen, denn nicht jeder Controller verfügt über interne Pullup-Widerstände wenn ich das jetzt richtig gelesen habe.

Wenn man dann nicht dran denkt an die fehlenden Pullup-Widerstände, wird man lange nach zufällig auftretenden Fehlern suchen.

Arduino Unos haben da ja auf dem Board eine LED verbaut, da kann ich dann auch schon den Pullup-Widerstand nicht aktivieren.

Sonst sollten meine Widerstände aber doch passen?!

hd458:
Danke agmue habe auch mal etwas gegoogelt :slight_smile:

Ich auch und bin auf eine Tabelle ESP32 Peripherals gestoßen, die Texte wie "outputs PWM signal at boot" enthält. Da muß ich genau überlegen, was ich da anschließen möchte. Für mich verhindert das einfache Flexibilität. Die könnte man eher mittels MCP23017/MCP23S17 erhalten, da verfügen auch alle IOs über PullUps.

hd458:
Diese 2 Cent für den Widerstand können einem unter Umständen viel Zeit ersparen, denn nicht jeder Controller verfügt über interne Pullup-Widerstände wenn ich das jetzt richtig gelesen habe.

Die 2 Cent sind im Gegensatz zum Löten kein Problem.

hd458:
Sonst sollten meine Widerstände aber doch passen?!

Warum zwei? Die 10 kΩ vom Eingang nach 3,3 V reichen doch.

Aber ich schreibe nur meine Meinung, viele Wege führen nach Rom. Suche Dir den aus, der am besten zu Dir paßt.

Ich auch und bin auf eine Tabelle ESP32 Peripherals gestoßen, die Texte wie "outputs PWM signal at boot" enthält. Da muß ich genau überlegen, was ich da anschließen möchte.

Sehr interessant, dass muss ich mir mal mit meinem schlechten Englisch durchlesen.

Für mich verhindert das einfache Flexibilität. Die könnte man eher mittels MCP23017/MCP23S17 erhalten, da verfügen auch alle IOs über PullUps.

Habe mir diese mal gekauft LINK

Sehe ich das richtig, das der Chip selber Pullup Widerstände hat?
Dann bräuchte ich auf der Ausgangseitet vom Optokoppler gar keine Widerstände?
Oder noch einen Widerstand zur Strombegrenzung?

Die 2 Cent sind im Gegensatz zum Löten kein Problem.

Ja das stimmt schon :roll_eyes:

Warum zwei? Die 10 kΩ vom Eingang nach 3,3 V reichen doch.

Habe zwischen Pin 3 und Eingang einen 1K und einen 10k vom Pin 3 nach GND.

Den 1k zur Strombegrenzung und den 10k als Pullup.

Ist das falsch :confused:

Aber ich schreibe nur meine Meinung, viele Wege führen nach Rom. Suche Dir den aus, der am besten zu Dir paßt.

Finde es super Meinung zu hören, man kann nur dazu lernen. Spiele zu Zeit nur etwas rum.

hd458:
Sehe ich das richtig, das der Chip selber Pullup Widerstände hat?
Dann bräuchte ich auf der Ausgangseitet vom Optokoppler gar keine Widerstände?

Ja. mcp.pinMode(0, INPUT); mcp.pullUp(0, HIGH); // turn on a 100K pullup internally
Ja.

hd458:
Oder noch einen Widerstand zur Strombegrenzung?

Der PullUp 100k ist groß genug. Nur in Anwendungsfällen, wo der zu groß ist, ist tatsächlich ein externer notwendig.

hd458:
Habe zwischen Pin 3 und Eingang einen 1K und einen 10k vom Pin 3 nach GND.

Den 1k zur Strombegrenzung und den 10k als Pullup.

Ist das falsch :confused:

... nach GND ist ein PullDown, dann muß der Transistor nach VCC schalten.

hd458:
Finde es super Meinung zu hören, man kann nur dazu lernen. Spiele zu Zeit nur etwas rum.

Zum Kennenlernen spiele ich immer gerne mal rum. Die Bibliothek Adafruit_MCP23017 ist ganz gut.

Allerdings kapern wir gerade ein anderes Thema, da möchte ich mich doch etwas zurückhalten.

So langsam verliere ich etwas den Überblick, daher eine kurze Zusammenfassung zu meinem aktuellen Stand:

Zur Verdeutlichung der benötigten Anzahl an EIn-/Ausgängen habe ich mal noch die Planung dazu mit angehängt. Insgesamt sind 60 Eingänge und 66 Ausgänge verteilt auf zwei Steuerungen notwendig.

Controller und Netzwerkanbindung:

  • Ein ESP32 pro Stockwerk
  • Updates über OTA per WLAN
  • LAN Anbindung per W5500 Netzwerkchip (wobei ich mir noch uneinig bin ob doch einfach WLAN)
    [Der Aufwand für das Patchen ist quasi null, ich habe je UV zwei Netzwerkanschlüsse legen lassen]
  • Der interne Status wird auf dem EEPROM der RTC gespeichert

Kommunikation mit dem SmartHome Server:

Hier kommt das MQTT Protokoll zum Einsatz. Somit entfällt der relativ schwergewichtige Webserver.

Ein- und Ausgänge:

Grundlegend würde ich hier auf die MCP23017 setzen und davon je 3 Stück als Eingänge und Ausgänge pro Stockwerk verwenden. Was mir allerdings noch Fragen aufwirft ist die Schnittstelle zu den 24V Signalen.

Grundlegend finde ich den Ansatz mit Optokopplen gut, damit ist eine Beschädigung des MCP und ESP kaum mehr möglich. Ich habe allerdings etwas Probleme passende Bauteile zu finden. Am besten wären ja Arrays mit möglichst acht Optokopplern in einem DIL Gehäuse und dazu gleich passend die Widerstandsnetzwerke mit acht Widerständen gegen GNO oder VCC.

Meine Ursprüngliche Idee war Ein- und Ausgänge einfach über einen ULN2803 zu führen. Was allerdings keine Galvanische Trennung gewährleistet. Dafür aber sehr kompakt ist.

Bei den Platinen bin ich ebenfalls noch am überlegen die nicht wir angedacht auf Lochraster Platinen auf zu bauen, sondern richtige Layouts zu erstellen und Ätzen zu lassen. Platinenlayouts habe ich aber das letzte mal in der Ausbildung vor mehr als 10 Jahre selbst erstellt und selbst geätzt. Einen Anbieter dafür müsste ich auch erst suchen.

Mein Ziel wäre dabei möglichst die 48 Ein- bzw. Ausgänge jeweils auf einer 160x100mm Platine unter zu bringen.,

@agmue

Erstmal Danke für die ganzen Hinweise! Das ganze Thema sollte bei mir später kommen aber, warum nicht jetzt :wink:

... nach GND ist ein PullDown, dann muß der Transistor nach VCC schalten.

Ja genau, so bei meiner Schaltung. Einfach ausgedrückt, ich habe plus 3.3 Volt am Eingang vom ESP. Oder???

Zum Kennenlernen spiele ich immer gerne mal rum. Die Bibliothek Adafruit_MCP23017 ist ganz gut.

Nur zum kennen lernen, im Alttag nicht zu gebrauchen?

Allerdings kapern wir gerade ein anderes Thema, da möchte ich mich doch etwas zurückhalten.

Stimmt nicht, agent4788 wollte auch 24Volt zum schalten und eine Eingangserweiterung wird braucht er auch :slight_smile:

Zur Verdeutlichung der benötigten Anzahl an EIn-/Ausgängen habe ich mal noch die Planung dazu mit angehängt. Insgesamt sind 60 Eingänge und 66 Ausgänge verteilt auf zwei Steuerungen notwendig.

Wie in den Posts zuvor, würde ich einen MCP23017 nehmen, wie z.B. in meinen Link in Post#31

Ein ESP32 pro Stockwerk
Updates über OTA per WLAN
LAN Anbindung per W5500 Netzwerkchip (wobei ich mir noch uneinig bin ob doch einfach WLAN)
[Der Aufwand für das Patchen ist quasi null, ich habe je UV zwei Netzwerkanschlüsse legen lassen]
Der interne Status wird auf dem EEPROM der RTC gespeichert

ESP32 habe ich hier zum Testen zum Sammeln von Umweltdaten am laufen und läuft stabil.
Updates gehen fast immer über OTA, aber zweimal war es nicht möglich.
LAN würde mich sehr interessieren, da ich ein Kabel besser finde :wink:
Warum nicht.

Grundlegend würde ich hier auf die MCP23017 setzen und davon je 3 Stück als Eingänge und Ausgänge pro Stockwerk verwenden. Was mir allerdings noch Fragen aufwirft ist die Schnittstelle zu den 24V Signalen.....

Da hat agmue ja schon viel zu geschrieben.
Ich werde wenn ich Zeit finde mal einen Aufbau mit einen ESP8266, MCP23017, EL 817 und einen 1k2 in Reihe zum Optokoppler für die 24Volt.

Es gibt auch Gehäuse mit 4 Optokoppler LINK.

Würde bevor ich eine Platine mache, erstmal das ganze auf einem Steckbord machen und einbauen. Wenn dann alles läuft Platine und Festeinbau.

Die MCP auf der kleinen Steckplatine habe ich auch schon gesehen, aber mir leuchtet der Unterschied nicht ganz ein. Auf der Platine scheint ja noch ein zusätzlicher IC zu sein, den ich aber nicht zuordnen kann. Ansonsten sind ja die reinen MCP23017 im DIL Gehäuse mit IC Sockel auch nicht schlecht.

Ich würde wie schon zu beginn geschrieben auch die LAN Anbindung bevorzugen. Das gerät wird nicht beweglich sein und viele kleine Pakete ins Netzwerk schicken. Was für ein WLAN war möglich ist. Aber für Teilnehmer die große Datenmengen Übertragen wollen wie eine Handbremse wirkt.

@hd458
Natürlich wird das vorab auf dem Steckbrett aufgebaut, alles andere wäre für mich sinnlos. Dazu fehlt mir die Ersahrung um zu wissen ob das direkt so wie gedacht funktioniert.

agent4788:
Mein Ziel wäre dabei möglichst die 48 Ein- bzw. Ausgänge jeweils auf einer 160x100mm Platine unter zu bringen.,

ich habe angenommen, das soll alles in deinen Schaltschrank/UV?
Wenns an den Platinenbau geht (und das wird noch lange dauern), würde ich erst ein Gehäuse suchen und dann erst die Platinengröße festlegen.

Mindest-Länge abhängig von der notwendigen Anzahl an Kontakten/Steckerleisten oben/unten.
Platinen-Breite, so dass es in dieses Gehäuse passt.

Ein Beispiele zum selber Weitersuchen:
AK-P-06 von SZOMK - wird dir etwas zu schmal sein, da nur 2 x 20 Kontakte, aber es gibt auch breitere Varianten wie z.B. das AK-P-22 oder höhere für zweireihige Buchsenleisten.

Dazu konträr: Von den Produktionskosten wären Platinen bis 100x100mm ideal.

Ja, das ganze soll in die UV Eingebaut werden. Beim Gehäuse hatte ich folgendes vorgesehen:

https://www.delock.de/produkt/65985/merkmale.html

Da sollten die 160x100mm Platinen rein passen. Wenn ich klemmen nur an den beiden langen Außenkanten setze würde ich rein Theoretisch auf 60 Stück kommen, Bei 48 Ein- bzw. Ausgängen würde ich ~ 50 Klemmen benötigen.

Ein Zweistöckiger Aufbau wäre natürlich noch besser.

Hi

Wenn die Opto-Koppler in DIP sind - spielt Es doch keine Rolle, ob man Die als Single oder Quad nimmt - gesockelt muß Der eh sein, wenn man einen Defekt zeitnah - und ohne die komplette Hütte töten zu müssen - reparieren will.
Hier tendierte ich definitiv zu Single - gleicher Platz, aber einzeln tauschbar.
Je eine Status-LED an jede Seite und man sieht zumindest, was anliegt.
Hier ist ggf. Löten angesagt, da man wohl nur 2 Reihen zur Verfügung hat und die Verbindung zwischen LED und Widerstand wohl eine 3.te benötigen würde - zumindest auf dem Steckbrett, als Platine bekommt man Das wohl irgendwo unter.

MfG