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.
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
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
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.