Home Soluciones Introducción al Protocolo UART para Pantallas Inteligentes

Introducción al Protocolo UART para Pantallas Inteligentes

Oct 18, 2024

Introducción

El protocolo UART de Smart Display es un protocolo de comunicación propietario desarrollado por WINSTAR para permitir la comunicación y el control entre un controlador host y los Smart Displays WINSTAR a través de la interfaz UART. Junto con WINSTAR GUI Builder, ofrece un flujo de desarrollo HMI eficiente, desde el diseño de la interfaz de usuario hasta la comunicación y el control del dispositivo.

Con GUI Builder, los desarrolladores pueden crear interfaces HMI utilizando diferentes Widgets, desde elementos básicos como Button y Text hasta Gauge y Keypad, para adaptarse a los requisitos de cada aplicación. Este enfoque de desarrollo visual simplifica el diseño de la UI y aporta mayor flexibilidad a la hora de crear interfaces específicas para cada aplicación.

Una vez creada la interfaz de usuario, el controlador host puede comunicarse con el Smart Display a través de UART y controlarlo mediante el protocolo de comunicación propietario y los comandos de WINSTAR. La integración del diseño de la UI con la comunicación UART ayuda a simplificar el desarrollo HMI y la integración de sistemas.

WINSTAR continúa mejorando GUI Builder para ofrecer un entorno de desarrollo más eficiente y flexible para aplicaciones con Smart Display.

Smart Display GUI Builder – Configuración de un proyecto UART

Smart Display GUI Builder ofrece una interfaz intuitiva y fácil de utilizar para crear proyectos HMI de forma eficiente. Basta con arrastrar y soltar los distintos Widgets en la página para mostrarlos en el Smart Display e interactuar con ellos. Su facilidad de uso y la flexibilidad de sus funciones permiten adaptarse a diferentes requisitos de aplicación y agilizar el proceso de desarrollo.

A continuación, se explica cómo crear un proyecto UART con Smart Display GUI Builder y cómo controlar objetos a través de UART.

Crear un proyecto con protocolo UART

Para crear un proyecto UART, introduzca el nombre del proyecto, seleccione el tipo de Smart Display adecuado para la aplicación y elija "SmartDisplay protocol (UART)" en la opción Protocol.

Añadir un Gauge y un Horizontal Slider Widget a la página principal

Después de añadir un Widget, cada objeto dispone de un Index ID único, además de los ajustes correspondientes de Page Index y Object ID. Mediante estos dos ajustes, el Host puede controlar el objeto a través de comandos UART.

Simular la interacción entre UART y el Widget

Haga clic en el icono "Simulator With GUI" para iniciar el simulador.

Una vez iniciado el simulador, mueva el control deslizante identificado como GAUGE_0 en la parte inferior para simular el envío de datos desde el Host a GAUGE_0. Observe los cambios del Gauge en el simulador y consulte el registro de comandos UART en el Message Log situado a la derecha. También puede utilizar el Horizontal Slider del simulador para simular el envío de datos desde el Device.

Actualizar la configuración del Smart Display

Después de comprobar el funcionamiento mediante el simulador, si todo funciona correctamente, conecte el dispositivo y cargue la configuración del proyecto en el Smart Display.

Espere hasta que finalicen la carga y la actualización.

Verificar la interacción entre el Device y el Widget

Después de cargar el proyecto en el dispositivo, puede comprobar su funcionamiento directamente en el Smart Display. Conecte el dispositivo mediante GUI Builder, haga clic en "Test Device" y compruebe la interacción entre el Host y el Device.

Ventana Test Device

Esta interfaz de prueba permite simular la modificación del valor de un objeto desde el Host. Mueva el control deslizante GAUGE_0 situado en la parte inferior para simular el envío del valor de Object 0 desde el Host y observe los cambios del Gauge en el dispositivo. En el Message Log de la parte inferior también puede consultar Send command y Response command. Además, puede utilizar el Horizontal Slider del dispositivo para comprobar el Event command enviado desde el Device.

Mediante la ventana Test Device descrita anteriormente, puede simular el envío de comandos UART desde el Host para controlar el Smart Display. Observe el resultado en el Smart Display y utilice el Touch Panel para comprobar que el Host recibe el Event command correspondiente.

Smart Display GUI Builder – Widgets personalizados

Cuando los Widgets predeterminados de Smart Display GUI Builder no se ajustan a los requisitos de diseño, es posible personalizar sus iconos sustituyendo las imágenes correspondientes y adaptar así la interfaz a las necesidades de cada aplicación. En el caso de botones simples o botones de tipo toggle, basta con sustituir las imágenes On/Off. Para Widgets más complejos, además de sustituir las imágenes, puede ser necesario configurar parámetros adicionales para garantizar que el Widget se muestre correctamente.

Ejemplo de personalización de un Gauge

Puede crear un Gauge personalizado sustituyendo las imágenes y ajustando los parámetros correspondientes del Gauge.

Texto multilingüe

El Text Widget del Smart Display es compatible con Unicode, lo que permite mostrar texto en distintos idiomas. Siga los pasos que se indican a continuación para configurar los textos en los idiomas necesarios.

1. Añada un Custom Font, seleccione la fuente y el tamaño deseados y defina el rango de caracteres Unicode que desea mostrar. Puede consultar Unicode Character Blocks para identificar el rango Unicode correspondiente. Si el rango de caracteres necesario es demasiado amplio, como puede ocurrir con los caracteres chinos, y el espacio disponible en la memoria Flash no es suficiente, puede incluir únicamente los caracteres que vaya a utilizar en la sección Custom Characters para reducir el espacio de almacenamiento necesario para la fuente.

2. Configure la fuente del Text Widget: seleccione el Text Widget cuyos ajustes de fuente desea modificar.

3. Añada un Text Widget y compruebe en el simulador que el texto se muestra correctamente.

Introducción a los comandos UART personalizados

A continuación, se presenta el protocolo de comandos utilizado para la comunicación UART. Estos comandos permiten al Host controlar distintas funciones del Smart Display, como cambiar de página, ajustar el brillo de la retroiluminación y activar el buzzer.

A continuación se presentan la configuración predeterminada de UART:

Default baud rate: 115200 (Puede ser modificado a través del GUI Builder)
Parity Bit: None
Data Bit: 8
Stop Bit: 1

El formato principal de datos para UART es el siguiente:

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)

El protocolo UART tiene principalmente tres tipos de comandos: Comando de Envío, Comando de Respuesta y Comando de Evento, con los siguientes formatos en orden.

1. Formato del comando de envío

El comando de envío se utiliza para que el lado del Host envíe comandos al lado del 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.Formato del comando de respuesta

El comando de respuesta se utiliza para que el lado del SmartDisplay responda al lado del Host con los resultados del comando de envío.

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. Comando de evento

Cuando el lado del SmartDisplay necesita informar datos de manera proactiva, utilizará este comando, por ejemplo, cuando se activa un botón.

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

* Para obtener el código detallado del comando de envío y del comando de evento, consulte el documento de la Guía del usuario de UART de SmartDisplay.

Explicación y ejemplos del protocolo de comando de envío/respuesta

A continuación, se describe secuencialmente el formato de datos y ejemplos para cada carga útil de comando.

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.
Para cambiar de página, primero debes configurar el Estado del Dispositivo en Modo de Configuración (ConfigMode). Luego, envía el comando para cambiar de página. Después de completar el comando de cambio de página, establece el Estado del Dispositivo en Modo de Visualización (Display Mode) para finalizar la operación de cambio de página. La secuencia de comandos relacionados es la siguiente:

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

Explicación y ejemplos del protocolo de comando de evento.

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.

Con GUI Builder es posible crear interfaces de usuario arrastrando y soltando Widgets. El enfoque WYSIWYG (What You See Is What You Get) permite desarrollar la interfaz de forma más intuitiva y eficiente. El simulador integrado también permite previsualizar la interfaz y evaluar el diseño de la UI antes de utilizar el display físico.

Una vez finalizada la UI, el controlador host puede comunicarse con el Smart Display a través de UART utilizando el protocolo de comunicación propietario de WINSTAR, lo que permite controlar el dispositivo e intercambiar datos. Este flujo de trabajo integra el diseño de la UI, la simulación y la comunicación con el dispositivo, simplificando el desarrollo de HMI y la integración de sistemas.

Antes de adquirir un UART Smart Display, puede utilizar GUI Builder y el simulador integrado para evaluar si el diseño de la interfaz y las funcionalidades se adaptan a los requisitos de su aplicación.

Solicitar la descarga de GUI Builder — complete el formulario online para recibir el enlace de descarga.

¿Tiene preguntas sobre soluciones de pantallas para su negocio? Contacte con nosotros!

Subscribirse

Reciba correos electrónicos sobre nuevas actualizaciones de Winstar

Contacte con nosotros

Precio/Ficha técnica/Consulta general

Soporte técnico

Contacte con nosotros para cualquier información técnica

go top
Contacto
close

Valoramos tu privacidad

Al hacer clic en "Permitir todas las cookies", aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación en el sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing y rendimiento. Puedes encontrar más información sobre este tema en nuestra política. Política de privacidad

Valoramos tu privacidad

Winstar y ciertos terceros utilizan cookies en www.winstar.com.tw. Los detalles sobre los tipos de cookies, su propósito y las partes involucradas se describen a continuación y en nuestra Política de Cookies. Haga clic en “Permitir todos” para dar su consentimiento para el uso de cookies y tener la mejor experiencia posible en nuestros sitios web. También puede establecer sus preferencias o rechazar cookies (excepto las cookies estrictamente necesarias).

Gestionar preferencias de consentimiento

Siempre activo
Cookies esenciales

Estas cookies son esenciales para permitirte navegar por el sitio web y utilizar sus funciones, como establecer tus preferencias de privacidad, iniciar sesión o completar formularios.

Cookies de análisis

También conocidos como "cookies estadísticas", estas cookies recogen información sobre cómo utilizas un sitio web, como qué páginas has visitado y qué enlaces has clicado. Ver detalles.