+ Antworten
Seite 1 von 4 1 2 3 ... LetzteLetzte
Ergebnis 1 bis 10 von 32
  1. #1
    Registriert seit
    Jun 2013
    Beiträge
    205

    Standard Status Display (I2C) über Arduino

    Hallo,

    ist es möglich IPS Variablen auf einem I2C Display über einen Arduino ausgeben?

    Ich habe viele Arduino Projekte mit Display gesehen und frage mich ob ich mir nicht ein eigenes Status Dipslay basteln kann. Zunächst würde es mir ausreichen wenn ich Zahlen/Texte ausgeben kann und ggf. automatisch durch diverse Anzeigevariablen durchblättern kann oder automatisch durchlaufen lassen.

  2. #2
    Registriert seit
    Jun 2005
    Beiträge
    3,648

    Hallo Kalli,
    ich empfehle Dir das Display von Nextion.

    Das Display wird mit einem kostenlosen Editor gefüttert und hat alles was Du brauchst um ein Statusdisplay und mehr in IP-Symcon zu werden. Wiki hier

    Wer sie bestellen will, dem rate ich zu den Nextion Enhanced Modellen, die haben auch Ports mit I/O und PWM-Funktion.
    Es gibt auch schon Fräsdateien für das 3,5" Model, sodass eine preisgünstige Abdeckung verfügbar ist (nicht das 3D-Model)

    Man braucht keinen Ardunio um zum oder vom Display zu schreiben. Alles was man braucht ist eine ser. Schnittstelle im TTL-Format.

    Wenn ich Zeit finde, gibt es auch eine kleine Platine mit Funkanbindung mit 433MHz in Schalterdosengröße.
    Sicher kann man auch ein ESP8266 mit UDP-Anbindung proggen und nutzen

    Ich hatte es auf dem Hamburg-Treffen gezeigt. Hier noch ein paar Bilder

    Dieses Beispiel zeigt die Ausgabe von Text-Variablen, das Magic-Script des IP-Symcon-LCD-Display geht auch damit, Grafiken sind natürlich schicker, siehe Bild

    Gruß Helmut
    Geändert von Helmut (27.06.16 um 13:35 Uhr)

  3. #3
    Registriert seit
    Jun 2005
    Beiträge
    3,648

    Standard Nextion Enhanced TFT

    Ich hatte in Hamburg ja erwähnt, dass die Enhanced Variante des Touch TFT Port-Pin hat. Sogar zum Teil mit PWM-Funktion.

    Mit einer Platine des WiFi up-WLAN-Modul, ohne ESP8266 dafür mit 433MHz Funk, habe ich diese Ports genutzt um das Steuer IC des Polumschalt-Relais auf der uP - Platine zu Triggern.

    Triggern deshalb, weil ein Impuls genügt um die Spannung des Relais umzupolen und das Relais damit zuschalten.

    Hintergrund: das Display hat als Hauptschirm den Taster. Mit einem Touch wird also immer das Licht im Raum eingeschaltet.
    Jetzt also auch direkt in der Schalterdose, in der das uP-Modul mit Netz-Schaltwandler und Relais steckt und auch das Display und Funkadapter mit Spannung versorgt. Gemessen bei voller Hintergrundbeleuchtung 180mA, 2% gedimmtes Display um 50mA.


    Drückt man auf die kleine Tastfläche unten, wird die Übersicht angefordert. In meinem Beispiel in HH war es EG, OG und Heizung.
    Diese Übersichten enthalten auch Schaltmöglichkeiten durch Touchbutton und stellen mit Hilfe einiger PHP Zeilen den Zustand des Hauses dar, siehe Bilder vorheriger Post.
    Also welche Temperaturen, welche Zustände der Aktoren, Fenster und Türen.

    Das Bild sagt im Grunde alles aus, was ich für diese Ansteuerung des uP-Modul von Gernot im Nextion-Editor gemacht habe. Wer das File haben möchte, melde sich.

    Auf der Agenda steht als nächstes der Umgang mit Uhr und Datum, die kann das Enhanced Modul Akku-gepuffert:
    Es sollen die Müll-Abfuhr-Termine rechtzeitig ins Display eingeblendet werden.

    Gruß Helmut
    Angehängte Grafiken Angehängte Grafiken  
    Geändert von Helmut (06.07.16 um 22:00 Uhr)

  4. #4
    Registriert seit
    Jun 2013
    Beiträge
    205

    Hey Helmut, danke für die Antwort! Das schaut ja schon mal klasse aus! Wie würde ich eigentlich das Display mit den gewünschten Daten füllen? Fangen wir mal Simpel mit einem Raum an:

    Schreibtischlampe, Deckenlicht, Status Computer An aus, Philips Hue leuchten.

    Hier würde ich jeweils gerne die Möglichkeit haben den Status zu sehen. Bei den Hues würde auch an und aus zunächst reichen. Ein Traum wäre es noch die Gerätschaften via Display schalten zu können.


    Die UP Variante ist genial, kann man sich diese selbst zusammenbasteln? Regelt diese von 230v auf 3,3 bzw 5v herunter? Sind die Komponenten zuverlässig? Immer wenn ich 230v lese denke ich an Hitze.

  5. #5
    Registriert seit
    Jun 2005
    Beiträge
    3,648

    Grundsätzlich mußt Du für eine Statusrückmeldung was in das Display basteln, ich erzähle mal wie ich es gemacht habe:

    Ein Grundrissplan auf das Display, keine Tastfunktion damit.

    Dann dort wo eine Leuchte ist, zB im Wz ein Button, dessen Text ist eine "0".

    Parameter des Button ist beim loslassen des Button soll er den Text "WZ-Leuchte ;" über die RS232 Schnittstelle ausgeben, das wird in den entsprechenden Feldern des Editors eingetragen.

    Diesen Text mit dem Endezeichen, das ich mir dafür ausgesucht habe, werte ich mit einem Cutter in IP-Symcon aus um auf dem Laufenden zu sein.
    Eine Schaltung über das Display und auch eine Webfrontschaltung, wie auch immer, muß ja synchron sein.

    Wenn IP-Symcon den Zustand der Wz-Leuchte darstellen soll, dann braucht man nur die Seite wo die Leuchte abgebildet ist zu wissen und den Namen des Buttons angeben, zB page0.b1.txt="1" abgeschlossen mit 3 mal 0xFF in Hex.
    zB. Parameter der Uhr aus IPS setzen:
    PHP-Code:
     SPRT_SendText(34638 /*[HMI Serial Port]*/"rtc0=".$datum_jahr."\xFF\xFF\xFF"); //Sendet das Jahr 
    oder andere Parameter, zB Text als Raum-Temperaturwert ins Display oder das Display dimmern:
    PHP-Code:
      SPRT_SendText(34638 /*[HMI Serial Port]*/"EG.t0.txt=\"21,7 °C\xFF\xFF\xFF" );
    SPRT_SendText(34638 /*[HMI Serial Port]*/"EG.t1.txt=\"24,0 °C\xFF\xFF\xFF" );
    SPRT_SendText(34638 /*[HMI Serial Port]*/"dim=15\xFF\xFF\xFF"); //Sendet ein dim 
    Viel kann man auch ohne Hardware mit dem Editor im Debug-Fenster machen. Mit Display ist es natürlich spannender ;-)

    Zu der Hardware, die ich jetzt genommen habe, Vorteil ist, dass das Relais keinen Strom mehr zieht, wenn es einmal gepulst worden ist.
    Das Display kann man ja runter dimmern, wenn es keine Aktion machen muß. Und man kann ja auch die nötigen 5Volt per KNX oder Telefonkabel mitführen, dann hast Du keinen Schaltwandler wovor Du Ängste hast.

    Ich nahm das WiFi-uP-Modul nur weil ich es per Funk ohne Kabel nutzen wollte, muß man ja nicht, man kann ;-)

    Wer mein Nextion-Projekt mit den Statusdisplay mal haben willst, einfach anmailen, ADR ist in meinem WWW ganz unten.
    Geändert von Helmut (07.07.16 um 08:43 Uhr) Grund: Linksschreibung

  6. #6
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    Hallo Helmut,

    ich habe Schwierigkeiten Textfelder auf dem Display zu ändern.

    Folgender Code bringt immer als Fehlerantwort 0x1A (Variable name invalid)!

    PHP-Code:
    CSCK_SendText(36105 /*[Client Socket]*/"main.t0.txt=\"21,7 °C\xFF\xFF\xFF"); 
    Ein Dim-Befehl oder das Textfeld unsichtbar machen funktioniert!

    PHP-Code:
    CSCK_SendText(36105 /*[Client Socket]*/"dim=99\xFF\xFF\xFF"); //Sendet ein dim
    CSCK_SendText(36105 /*[Client Socket]*/"vis t1,0\xFF\xFF\xFF" ); 
    Hast du eine Idee woran das liegen kann?

    Gruß Tommy
    Irren ist menschlich. Aber wenn man richtig Mist bauen will, braucht man einen Computer. (Dan Rather, CBS-Fernsehreporter)

  7. #7
    Registriert seit
    Jun 2005
    Beiträge
    3,648

    Gibt es die Variable denn mit dem Namen, bist Du bei Befehlssendung auf der Seite main, ist sie auch genauso geschrieben, also main und t0 ?
    Schrägstrich nach = richtig?

  8. #8
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    Die Variablennamen main und t0 gibt es! Schrägstrich (Backslash) ist aus deinem Beispiel!

    Wie geschrieben das Unsichtbar machen mit der Variablen t0 oder t1 funktioniert!
    Geändert von elektroniktommy (18.07.16 um 17:40 Uhr)
    Irren ist menschlich. Aber wenn man richtig Mist bauen will, braucht man einen Computer. (Dan Rather, CBS-Fernsehreporter)

  9. #9
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    PHP-Code:
    CSCK_SendText(36105 /*[Client Socket]*/"main.t1.txt="."\x22"."217.1°C"."\x22"."\xFF\xFF\xFF"); 
    So funktioniert es oder so:

    PHP-Code:
    CSCK_SendText(36105 /*[Client Socket]*/"main.t1.txt=\"217.1°C\"\xFF\xFF\xFF"); 
    Der Text muß immer in Anführungszeichen stehen und die müssen mit gesendet werden!!

    Gruss Tommy
    Irren ist menschlich. Aber wenn man richtig Mist bauen will, braucht man einen Computer. (Dan Rather, CBS-Fernsehreporter)

  10. #10
    Registriert seit
    Jun 2005
    Beiträge
    3,648

    Zitat Zitat von elektroniktommy Beitrag anzeigen
    ..... Schrägstrich (Backslash) ist aus deinem Beispiel!

    ....!
    Dann muß Du den Abschluß nach °C mit \" und dann noch \xFF\xFF\xFF"); machen
    PHP-Code:
     CSCK_SendText(36105 /*[Client Socket]*/"main.t0.txt=\"21,7 °C \"\xFF\xFF\xFF"); 
    Probier mal, ich hole nachher mal mein Display und teste ;-)
    Gruß Helmut
    Geändert von Helmut (18.07.16 um 19:51 Uhr)

Ähnliche Themen

  1. IPS Status LCD-Display
    Von Helmut im Forum Skripte, PHP, SQL
    Antworten: 2
    Letzter Beitrag: 07.10.15, 17:32
  2. Arduino über LAN in IPS einbinden (2-Wege Kommunikation)
    Von Bayaro im Forum Anleitungen / Nützliche PHP Skripte
    Antworten: 3
    Letzter Beitrag: 05.10.15, 19:01
  3. Receive von Arduino-Daten über SerialPort
    Von jan-hendrik im Forum Mikrocontroller
    Antworten: 5
    Letzter Beitrag: 20.08.15, 21:09
  4. Probleme mit Arduino seriell über USB
    Von Titus im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 4
    Letzter Beitrag: 27.03.13, 08:42
  5. I2C über XBee
    Von cali im Forum IPS-868 / ProJET, XBee, ZigBee, XPort
    Antworten: 5
    Letzter Beitrag: 02.02.09, 15:05