Projekt Raumpanel (Arduino)

Hier mal ein Projekt mit dem ich mich die letzte Zeit beschäftigt habe.
Das System besteht aus einem Arduino Uno mit Ethernet-Anbildung und einem Blauen 4*20 LCD.

Die Frontplatte besteht aus gefrästem, schwarz eloxiertem Aluminium.
Die „Distanzstücke“ bestehen aus schwarzem Nut 5 Maschinenbauprofil mit den Maßen 20*20 mm (Alternativ kann es natürlich auch in der Wand eingebaut werden.

Die Kommunikation läuft über UDP. (z.Z. nur in Richtung IPS)

Die roten Taster dienen zum durchblättern der verschiedenen Funktionen. Die drei grauen Tasten sind zum Auswählen der Funktionen. ( z.B. Heizung ==> An, Aus , Auto )

Die Motivation zum Bau dieses Raumpanels war die umständliche (mehrere Schritte) Verwendung von der App. Hier liegen die Hauptfunktionen direkt auf der ersten Seite.
Des weiteren wird das Display bei nicht benutzen automatisch abgedunkelt.



nicht schlecht, (Sallos) Lars und Du, ihr solltet euch „zusammentun“.

Gruß Helmut,

Oh Ja danke für den Tipp :slight_smile: sieht auch sehr interessant aus :blush:
Ich finde es nur blöd über Modbus zu gehen

Tach,

wie läuft deinen Kommunikations denn ab? UDP?

erzähl doch mal.

Ich mag halt Modbus weil es einfach und ne industrie Standart ist.

Also ich habe mir quasi en kleines Protokoll geschriebene was ne Nummer und den Wert dazu übergibt. das ganze wird als String verarbeitet und im XML-Stil geschrieben … braucht zwar ein beisschen overhead aber da kommt es glaube ich nicht drauf an :wink:

Bin gerade dabei das ganze Protokoll noch ein bisschen umzuschreiben um damit auch direkt IO’s ansteuern zu können so dass ich z.B. den Rolladen auf und zu bekomme wenn der Server mal ausgefallen sein sollte :wink:

Der Aufbau ist so:

</get> ==> Anfrage (Wert aus IO holen)
</set> ==> Wert setzen
</info> ==> ist quasi die Ack-Nachricht und setzt die Variablen auf dem Server wenn das gerät z.B. direkt geschaltet wurde.
<adress> </adress> ==> Adresse ( z.B. „1.2“)
<value> </value> ==> Wert des Kanals durch die Verwendung von String kann der Wert Bool, Int, double oder sogar String sein

Eine Nachricht kann z.B. so aussehen
</set><adress>1.2</adress><value>1</value>
Hier wird der Kanal 1.2 auf den Wert 1 gesetzt. Das IO setzt den Ausgang und sendet eine Nachricht zurück:
</info><adress>1.2</adress><value>1</value>
Der Server setzt jetzt die Variable im Server auf 1
Das Mapping der Variablen erfolgt im Skript auf dem Server.