Hallo zusammen,
ich dreh mich hier bei meinen Recherchen irgendwie im Kreis und bräuchte einen grundsätzlichen Rat.
Wir nutzen FHEM zur Hausautomatisierung und ich möchte einen Arduino UNO mit W5100 Ethernet Shield zur Kommunikation mit FHEM nutzen. Grundsätzlich misst der Arduino Temperaturen, schaltet 2 Relais unabhängig voneinander und gibt and einen Leistungsregler ein PWM. Soweit so gut.
Zur Temperatur:
Der UNO soll in regelmäßigen Abständen (z.B. 2 Minuten) Daten ans FHEM übermitteln (bzw. FHEM soll sich diese Daten in regelmäßigen Abständen holen) können. Das wäre Prinzipiell kein Problem mit dem Web-Server Beispiel. Die Bereitstellung ist (zeitlich gesehen) auch unkritisch. Heißt, mir kommt es hier nicht auf die ein oder andere Sekunde an.
Zu den Relais:
Die Informationen zum Schalten der Relais kommen vom FHEM. Da kann ich nicht voraussehen, wann das exakt kommt. Heißt hier muss der Arduino immer beim FHEM abfragen, oder lauschen, oder wie auch immer.
Zum PWM-Signal:
Der Basiswert fürs PWM-Signal kommt vom FHEM. Diese Basissignal kann sich zu jedem beliebigen Zeitpunkt (stark) ändern. Der Arduino muss also für dieses Signal dauerhaft mit hoher Priorität empfangsbereit sein (oder sich ständig holen können).
Wie aufsetzen?
Ich hab jetzt die grundsätzliche Frage, wie ich das Ganze aufsetzen soll. Ist das FHEM ein Server, der Arduino ein Client oder umgekehrt. Ist der Arduino ein Server und Client gleichzeitig? Ich hab dann nach einiger Recherche auch noch den Begriff "Websocket" gefunden, was sich für mein laienhaftes Verständnis gar nicht schlecht anhört. Aber ist die "Websocket-Lösung" auf dem Uno überhaupt umsetzbar?
Ich bin hier leider Anfänger und erhoffe mir aus der Community einen Fingerzeig in die richtige Richtung.
Danke und viele Grüße