Startseite Lösungen Einführung in das UART-Protokoll für Smart Displays

Einführung in das UART-Protokoll für Smart Displays

Oct 18, 2024

Einführung

Das Smart Display UART-Protokoll ist ein von WINSTAR entwickeltes proprietäres Kommunikationsprotokoll für die Kommunikation und Steuerung zwischen einem Host-Controller und WINSTAR Smart Displays über die UART-Schnittstelle. In Verbindung mit dem WINSTAR GUI Builder ermöglicht es einen effizienten HMI-Entwicklungsprozess – vom Design der Benutzeroberfläche bis hin zur Gerätekommunikation und -steuerung.

Mit dem GUI Builder können Entwickler HMI-Benutzeroberflächen mit verschiedenen Widgets erstellen – von grundlegenden Elementen wie Button und Text bis hin zu Gauge und Keypad – und diese an unterschiedliche Anwendungsanforderungen anpassen. Der visuelle Entwicklungsansatz vereinfacht das UI-Design und bietet gleichzeitig die notwendige Flexibilität für anwendungsspezifische Benutzeroberflächen.

Nach der Erstellung der Benutzeroberfläche kann der Host-Controller über UART mit dem Smart Display kommunizieren und es mithilfe des proprietären Kommunikationsprotokolls und der entsprechenden WINSTAR-Befehle steuern. Die Verbindung von UI-Design und UART-Kommunikation vereinfacht die HMI-Entwicklung und Systemintegration.

WINSTAR entwickelt den GUI Builder kontinuierlich weiter, um eine effiziente und flexible Entwicklungsumgebung für Smart Display-Anwendungen bereitzustellen.

Smart Display GUI Builder – Einrichtung eines UART-Projekts

Der Smart Display GUI Builder bietet eine intuitive und benutzerfreundliche Oberfläche zur effizienten Erstellung von HMI-Projekten. Verschiedene Widgets lassen sich einfach per Drag-and-drop auf der Seite platzieren und anschließend auf dem Smart Display anzeigen und bedienen. Die einfache Handhabung und die flexiblen Funktionen unterstützen unterschiedliche Anwendungsanforderungen und ermöglichen eine effiziente Entwicklung.

Im Folgenden wird beschrieben, wie Sie mit dem Smart Display GUI Builder ein UART-Projekt erstellen und Objekte über UART steuern.

UART-Protokollprojekt erstellen

Um ein UART-Projekt zu erstellen, geben Sie den Projektnamen ein, wählen Sie den passenden Smart Display-Gerätetyp und anschließend unter Protocol die Option "SmartDisplay protocol (UART)" aus.

Gauge und Horizontal Slider Widget zur Hauptseite hinzufügen

Nach dem Hinzufügen eines Widgets verfügt jedes Objekt über eine eindeutige Index ID sowie die entsprechenden Einstellungen für Page Index und Object ID. Anhand dieser beiden Einstellungen kann der Host das jeweilige Objekt über UART-Befehle steuern.

Interaktion zwischen UART und Widget simulieren

Klicken Sie auf das Symbol "Simulator With GUI", um den Simulator zu starten.

Nach dem Start des Simulators können Sie den mit GAUGE_0 gekennzeichneten Schieberegler im unteren Bereich bewegen, um die Datenübertragung vom Host an GAUGE_0 zu simulieren. Beobachten Sie dabei die Änderungen des Gauge im Simulator und prüfen Sie die UART-Befehle im Message Log auf der rechten Seite. Über den Horizontal Slider im Simulator lässt sich außerdem die Datenübertragung von der Device-Seite simulieren.

Smart Display-Geräteeinstellungen aktualisieren

Nachdem Sie die Funktionen mit dem Simulator überprüft haben und alles ordnungsgemäß funktioniert, können Sie das Gerät verbinden und die Projekteinstellungen auf das Smart Display übertragen.

Warten Sie, bis der Upload und die Aktualisierung abgeschlossen sind.

Interaktion zwischen Device und Widget überprüfen

Nach dem Übertragen des Projekts können Sie die Funktionen direkt auf dem Smart Display überprüfen. Verbinden Sie das Gerät über den GUI Builder, klicken Sie auf "Test Device" und testen Sie anschließend die Interaktion zwischen Host und Device.

Test Device-Fenster

Über diese Testoberfläche können Sie simulieren, wie der Host den Wert eines Objekts ändert. Bewegen Sie den mit GAUGE_0 gekennzeichneten Schieberegler im unteren Bereich, um das Senden des Werts von Object 0 durch den Host zu simulieren, und beobachten Sie die Änderungen des Gauge auf dem Gerät. Im Message Log im unteren Bereich können Sie außerdem Send command und Response command überprüfen. Betätigen Sie zusätzlich den Horizontal Slider auf dem Gerät, um den von der Device-Seite gesendeten Event command zu überprüfen.

Über das oben beschriebene Test Device-Fenster können Sie simulieren, wie der Host UART-Befehle zur Steuerung des Smart Display sendet. Beobachten Sie das Ergebnis auf dem Smart Display und bedienen Sie das Smart Display über das Touch Panel, um zu überprüfen, ob der Host den entsprechenden Event command empfängt.

Smart Display GUI Builder – Benutzerdefinierte Widgets

Wenn die im Smart Display GUI Builder verfügbaren Standard-Widgets die Designanforderungen nicht erfüllen, können die entsprechenden Bilder ersetzt und Widget-Symbole individuell angepasst werden. So lässt sich die Benutzeroberfläche gezielt an die jeweilige Anwendung anpassen. Bei einfachen Schaltflächen oder Toggle-Buttons genügt es, die On/Off-Bilder auszutauschen. Bei komplexeren Widgets können zusätzlich zur Bildanpassung weitere Parametereinstellungen erforderlich sein, damit das Widget korrekt dargestellt wird.

Beispiel für die Anpassung eines Gauge

Ein benutzerdefiniertes Gauge lässt sich erstellen, indem die entsprechenden Bilder ausgetauscht und die zugehörigen Gauge-Parameter angepasst werden.

Mehrsprachige Texte

Das Text Widget des Smart Display unterstützt Unicode und ermöglicht damit die Darstellung von Texten in verschiedenen Sprachen. Gehen Sie wie folgt vor, um Texte für die gewünschten Sprachen einzurichten.

1. Fügen Sie einen Custom Font hinzu, wählen Sie die gewünschte Schriftart und Schriftgröße und legen Sie anschließend den benötigten Unicode-Zeichenbereich fest. Den entsprechenden Unicode-Bereich können Sie unter Unicode Character Blocks überprüfen. Ist der benötigte Zeichenbereich sehr umfangreich, beispielsweise bei chinesischen Schriftzeichen, und reicht der verfügbare Flash-Speicher nicht aus, können Sie unter Custom Characters ausschließlich die tatsächlich benötigten Zeichen festlegen und so den Speicherbedarf der Schriftart reduzieren.

2. Legen Sie die Schriftart für das Text Widget fest: Wählen Sie das Text Widget aus, dessen Schrifteinstellungen Sie ändern möchten.

3. Fügen Sie ein Text Widget hinzu und überprüfen Sie im Simulator, ob der Text korrekt dargestellt wird.

Einführung in benutzerdefinierte UART-Befehle

Im Folgenden wird das für die UART-Kommunikation verwendete Befehlsprotokoll vorgestellt. Mit diesen Befehlen kann der Host verschiedene Funktionen des Smart Display steuern, darunter den Seitenwechsel, die Einstellung der Hintergrundbeleuchtung und die Aktivierung des Summers.

Poniżej znajdują się domyślne ustawienia UART:

Default baud rate: 115200 (można go zmienić za pomocą GUI Builder)
Parity Bit: None
Data Bit: 8
Stop Bit: 1

Główny format danych dla UART jest następujący:

Header Byte(1 Byte) Length(1 Byte) Payload(N Byte) CRC(2 Byte)
Command Header Value: 4 + Payload length
Payload max size: 250
Payload data max size: 250 Modbus CRC16
(Calculate Modbus CRC16
https://www.modbustools.com/modbus_crc16.html)

Protokół UART ma trzy główne typy poleceń: polecenie wysyłające, polecenie odpowiedzi oraz polecenie zdarzenia, w następujących formatach:

1. Format polecenia wysyłającego

Polecenie wysyłające służy stronie Host do wysyłania poleceń do strony SmartDisplay.

Header Byte(1 Byte) Length(1 Byte) Payload(N byte) CRC(2 Byte)
Start with 0x53 (S) Value: 4 + Payload length
Payload max size: 250
Command code: 1 byte
Command parameter: 0 ~ N bytes
Modbus CRC16
 

2. Format polecenia odpowiedzi

Polecenie odpowiedzi jest używane przez stronę SmartDisplay do odpowiadania stronie Host z wynikami polecenia wysyłającego.

Header Byte(1 Byte) Length(1 Byte) Payload(N byte) CRC(2 Byte)
Start with 0x52 (R) Value: 4 + Payload length
Payload max size: 250
Command Code: 1 byte
Error Code: 1 byte
Response Data: 0 ~ N bytes
Modbus CRC16
 

3. Polecenie zdarzenia

Kiedy strona SmartDisplay potrzebuje proaktywnie zgłosić dane, użyje tego polecenia, na przykład, gdy przycisk zostanie naciśnięty.

Header Byte(1 Byte) Length(1 Byte) Payload(N byte) CRC(2 Byte)
Start with 0x45 (E) Value: 4 + Payload length
Payload max size: 250
Event Command Code: 1 byte
Event Data: 0 ~ N bytes
Modbus CRC16

* Aby uzyskać szczegółowe kody poleceń wysyłających i poleceń zdarzenia, prosimy o zapoznanie się z dokumentem podręcznika użytkownika SmartDisplay UART.

Erklärung und Beispiele des Send-/Response-Befehlsprotokolls

Im Folgenden wird der Datenformat und Beispiele für jede Befehlslast der Reihe nach dargestellt.

Set Object Value: 0x3

Send Command

Command Code 1 Byte 0x3
Parameter data 8 Byte uint16 PageIndex;
uint16 ObjectId;
int32 value;

Response command

Command Code 1 Byte 0x3
Error Code 1 Byte 0: Success
1: Failed

Example: Set Object value

Set Object Buffer Data: 0x5

Send Command

Command Code 1 Byte 0x5
Parameter data N Byte uint16 PageIndex;
uint16 ObjectId;
uint8 [] data (max 100 bytes)
// Unicode String for Text
// Clock setting for Digital Clock

Response command

Command Code 1 Byte 0x5
Error Code 1 Byte 0: Success
1: Failed

Example: Set Object Text: test

Example: Set Clock Widget date time: 2024/09/01 04:05:06

Set Brightness: 0x6

Send Command

Command Code 1 Byte 0x6
Brightness 1 Byte Brightness value

Response command

Command Code 1 Byte 0x6
Error Code 1 Byte 0: Success
1: Failed

Example: Set brightness to 90.

Set Buzzer: 0x7

Send Command

Command Code 1 Byte 0x7
Cycle 1 Byte Cycle value
High 1 Byte High value (Unit: 10 ms)
Low 1 Byte Low value (Unit: 10 ms)

Response command

Command Code 1 Byte 0x7
Error Code 1 Byte 0: Success
1: Failed

Example: Emitting buzzer: Cycle:1, High: 200 ms, Low: 0 ms

Set Page Index: 0x8

Send Command

Command Code 1 Byte 0x8
Page Index 1 Byte Page Index value

Response command

Command Code 1 Byte 0x8
Error Code 1 Byte 0: Success
1: Failed

Example: Switching Page Index to 1.
Um die Seiten zu wechseln, müssen Sie zunächst den Gerätestatus auf ConfigMode setzen. Dann senden Sie den Befehl zum Seitenwechsel. Nachdem der Befehl zum Seitenwechsel abgeschlossen ist, setzen Sie den Gerätestatus auf Display Mode, um den Seitenwechsel abzuschließen. Die Reihenfolge der verwandten Befehle ist wie folgt:

Set Device State: 0x20

Send Command

Command Code 1 Byte 0x20
Device State 1 Byte 0: ConfigMode
1: DisplayMode
 

Response command

Command Code 1 Byte 0x20
Error Code 1 Byte 0: Success
1: Failed

Example: Refer to the example of switching pages

Erklärung und Beispiele des Event-Command-Protokolls

Page change event: 0x1

Event Command

Event Code 1 Byte 0x01
Parameter data 2 Byte Uint16 PageIndex

Example: SmartDisplay switches to Page 1.

Object Text change event: 0x2

Event Command

Event Code 1 Byte 0x02
Parameter data N +2 Byte Uint16 ObjectId
N byte Unicode Text
 

Example: Keypad widget sends the text "1234"

Object Value change event: 0x3

Event Command

Event Code 1 Byte 0x03
Parameter data 6 Byte Uint16 ObjectId
int32 value

Example: Object value change event.

Mit dem GUI Builder lassen sich Benutzeroberflächen per Drag-and-Drop von Widgets erstellen. Der WYSIWYG-Ansatz (What You See Is What You Get) ermöglicht eine intuitive und effiziente UI-Entwicklung. Mit dem integrierten Simulator kann die Benutzeroberfläche zudem vor dem Einsatz des physischen Displays in der Vorschau angezeigt und das UI-Design überprüft werden.

Nach Fertigstellung der Benutzeroberfläche kann der Host-Controller über UART mit dem Smart Display kommunizieren. Dabei kommt das proprietäre Kommunikationsprotokoll von WINSTAR zum Einsatz, das die Gerätesteuerung und den Datenaustausch ermöglicht. Dieser Workflow verbindet UI-Design, Simulation und Gerätekommunikation und vereinfacht damit die HMI-Entwicklung und Systemintegration.

Vor dem Kauf eines UART Smart Displays können Sie den GUI Builder und den integrierten Simulator nutzen, um zu prüfen, ob UI-Design und Funktionen für die Anforderungen Ihrer Anwendung geeignet sind.

GUI Builder zum Download anfordern — füllen Sie einfach das Online-Formular aus, um den Download-Link zu erhalten.

Haben Sie Fragen zu Displaylösungen für Ihr Unternehmen? Kontaktieren Sie uns!

Abonnieren

Erhalten Sie E-Mails mit den aktuellsten Neuigkeiten von Winstar

Kontaktieren Sie uns

Preis /Datenblatt/ Allgemeine Anfrage

Technischer Support

Kontaktieren Sie uns wegen technischer Informationen

go top
Kontakt
close

Wir schätzen Ihre Privatsphäre

Durch Klicken auf „Alle Cookies zulassen“ stimmen Sie der Speicherung von Cookies auf Ihrem Gerät zu, um die Navigation auf der Website zu verbessern, die Nutzung der Website zu analysieren und unsere Marketing- und Leistungsbemühungen zu unterstützen. Weitere Informationen zu diesem Thema finden Sie in unserer Richtlinie. Datenschutzrichtlinie

Wir schätzen Ihre Privatsphäre

Winstar und bestimmte Drittparteien verwenden Cookies auf www.winstar.com.tw. Die Einzelheiten zu den Arten von Cookies, ihrem Zweck und den beteiligten Drittparteien sind unten sowie in unserer Cookie-Richtlinie beschrieben. Klicken Sie auf „Alle zulassen“, um unserer Verwendung von Cookies zuzustimmen und die bestmögliche Erfahrung auf unseren Websites zu erzielen. Sie können auch Ihre Präferenzen festlegen oder Cookies ablehnen (mit Ausnahme der unbedingt erforderlichen Cookies).

Einwilligungspräferenzen verwalten

Immer aktiv
Notwendige Cookies

Diese Cookies sind unerlässlich, um Ihnen das Navigieren auf der Website zu ermöglichen und ihre Funktionen zu nutzen, wie z. B. das Festlegen Ihrer Datenschutzpräferenzen, das Einloggen oder das Ausfüllen von Formularen.

Analyse-Cookies

Diese Cookies, auch als „Statistik-Cookies“ bekannt, sammeln Informationen darüber, wie Sie eine Website nutzen, z. B. welche Seiten Sie besucht und auf welche Links Sie geklickt haben. Siehe Details.