Introdução ao Protocolo UART para Displays Inteligentes
O protocolo UART do SmartDisplay é um protocolo de comunicação proprietário desenvolvido pela WINSTAR, projetado para permitir que os clientes controlem facilmente suas telas de HMI (Interface Homem-Máquina) através da interface UART. Este protocolo inovador combina o GUI Builder amigável da Winstar, oferecendo aos clientes uma ferramenta intuitiva e poderosa para personalizar e construir rapidamente widgets que atendam às suas necessidades.
Através do GUI Builder, os clientes podem facilmente projetar uma variedade de objetos HMI para interação, que vão desde botões simples e textos até gauges e teclados complexos, atendendo a diversos cenários de aplicação. Isso não apenas economiza tempo e custos para os clientes, mas também torna o design da interface mais flexível e único.
Usando os comandos personalizados do protocolo UART da WINSTAR, a interação e o controle com o Smart Display podem ser facilmente alcançados. Estamos comprometidos em oferecer a melhor experiência ao cliente e em melhorar continuamente nosso GUI Builder para garantir que atenda às necessidades em evolução de nossos clientes.
Seja você um designer profissional ou um iniciante, acreditamos que o protocolo UART do SmartDisplay será uma escolha ideal para criar excelentes interfaces HMI. Vamos explorar juntos esta tecnologia inovadora e infundir mais vitalidade e inspiração em seus produtos!
Instruções de Configuração de Projeto UART – Smart Display GUI Builder
O SmartDisplay GUI Builder oferece uma interface intuitiva e fácil de usar, permitindo que você crie facilmente seus próprios projetos de HMI. Basta arrastar e soltar vários widgets na página usando o GUI Builder, e você pode exibi-los e interagir com eles no seu dispositivo SmartDisplay sem esforço. Com uma operação simples e funcionalidade flexível, ele pode atender às suas diversas necessidades, tornando seu trabalho mais eficiente.
A seguir, apresentaremos como criar um projeto UART usando o Smart Display GUI Builder e explicaremos como controlar objetos através do UART.
■ Criar projeto de protocolo UART
Para criar um projeto UART, insira o nome do projeto, selecione o tipo de dispositivo SmartDisplay e escolha o protocolo SmartDisplay (UART) na opção de protocolo com base em suas necessidades.
■ Adicionar um widget Gauge e um slider horizontal à página principal
Após adicionar um widget, cada objeto terá um ID de índice exclusivo. Cada objeto também possui configurações de Índice de Página e ID de Objeto. Conhecendo essas duas configurações, o lado do Host pode controlar este objeto através de comandos UART.
■ Simular a interação entre UART e o widget
Clique no ícone "Simulator With GUI" para iniciar o simulador.
Após iniciar o simulador, você pode arrastar o slider rotulado GAUGE_0 na parte inferior para simular o Host enviando dados para o GAUGE_0. Observe as mudanças no Gauge do simulador e veja o log de comandos UART no Log de Mensagens à direita. Você também pode interagir com o slider horizontal no simulador para simular dados sendo enviados do lado do dispositivo.
■ Atualizar as configurações do dispositivo SmartDisplay
Após verificar a funcionalidade através do simulador, se tudo estiver funcionando corretamente, você pode conectar-se ao dispositivo e fazer o upload das configurações do projeto para o dispositivo SmartDisplay.
Aguarde a conclusão do processo de upload e atualização.
■ Verificar a interação entre o Dispositivo e o Widget
Após fazer o upload do projeto para o dispositivo, você pode validar ainda mais a funcionalidade no lado do dispositivo SmartDisplay. Conecte-se ao dispositivo com o GUI Builder, clique em "Test Device" e você poderá testar a interação entre o Host e o Dispositivo.
■ Janela de Teste do Dispositivo
Através desta interface de teste, você pode simular o lado do Host modificando o valor do objeto. Arraste o slider rotulado GAUGE_0 na parte inferior para simular o Host enviando o valor do Objeto 0. Observe as mudanças no Gauge no dispositivo e você também poderá visualizar as variações nos comandos de Envio e Resposta no Log de Mensagens na parte inferior. Além disso, interaja com o slider horizontal do Dispositivo para confirmar o comando de Evento enviado do lado do Dispositivo.
Through the Test Device window described above, you can simulate the Host sending UART commands to control the SmartDisplay. View the result screen on the SmartDisplay and confirm the reception of Event command information on the Host side by operating the SmartDisplay through the Touch Panel.Através da janela de Teste do Dispositivo descrita acima, você pode simular o Host enviando comandos UART para controlar o SmartDisplay. Veja a tela de resultados no SmartDisplay e confirme o recebimento das informações do comando de Evento no lado do Host, operando o SmartDisplay através do Painel Touch.
SmartDisplay GUI Builder – Widget Personnalisé
Lorsque les widgets par défaut du SmartDisplay ne répondent pas aux exigences de conception, les clients peuvent concevoir leurs propres icônes de widget personnalisées. En mettant à jour les images correspondantes, ils peuvent obtenir une interface de widget personnalisée. Pour des boutons simples ou des boutons à bascule, changer les images On/Off peut satisfaire les besoins de personnalisation. Cependant, pour des widgets plus complexes, en plus du remplacement d'images, des réglages supplémentaires des paramètres peuvent être nécessaires pour garantir que le widget s'affiche correctement.
■ Explication et Exemple de Gauge Personnalisé
Vous pouvez obtenir une interface de widget personnalisée en modifiant successivement les images et les paramètres du Gauge.
■ Texte Multilingue
Le Widget de Texte SmartDisplay prend en charge l'Unicode, permettant l'affichage de texte multilingue. Les clients peuvent suivre les étapes ci-dessous pour configurer le texte multilingue souhaité à afficher.
1. Adicione uma Fonte Personalizada, selecione a fonte e o tamanho desejados e escolha a faixa de texto Unicode a ser exibida (você pode consultar o site https://unicode-table.com/en/blocks/ para confirmar a faixa Unicode do texto a ser exibido). Se a faixa de texto a ser exibida for muito grande (como caracteres chineses), o que pode levar a um espaço Flash insuficiente, você pode reduzir o espaço Flash da fonte definindo apenas os caracteres que devem ser incluídos na seção de Caracteres Personalizados.
2. Définissez la police pour l'affichage du Widget de Texte : Sélectionnez quels paramètres du Widget de Texte modifier.
3. Ajoutez un Widget de Texte et vérifiez dans le simulateur que l'affichage du texte est correct.
Introdução ao comando CAN personalizado
A seguir, explicaremos o protocolo de comando utilizado para UART. Por meio dessas instruções, o lado do Host pode controlar facilmente o SmartDisplay, incluindo a troca de páginas, o ajuste do brilho de fundo ou a ativação do som do buzzer.
Abaixo estão as configurações padrão de UART:
Default baud rate: 115200 (Pode ser modificado através do GUI Builder.)
Parity Bit: None
Data Bit: 8
Stop Bit: 1
O formato principal de dados para UART é o seguinte:
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) |
O protocolo UART possui principalmente três tipos principais de comandos: comando de envio, comando de resposta e comando de evento, com os seguintes formatos na ordem.
(1) Formato do Comando de Envio
O comando de envio é usado pelo lado Host para enviar comandos para o lado 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 do Comando de Resposta
O comando de resposta é usado pelo lado SmartDisplay para responder ao lado Host com os resultados do comando de envio.
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
Quando o lado SmartDisplay precisa relatar dados proativamente, ele usará este comando, por exemplo, quando um botão for acionado.
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 detalhes sobre o código do Comando de Envio e o código do Comando de Evento, consulte o documento do Guia do Usuário do SmartDisplay UART.
■ Explicação e exemplos do protocolo de comando de Envio/Resposta
A seguir, apresentamos, de forma sequencial, o formato de dados e exemplos 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 trocar de páginas, você precisa primeiro definir o Estado do Dispositivo como ConfigMode. Em seguida, envie o comando de mudança de página. Após completar o comando de mudança de página, defina o Modo do Estado do Dispositivo como Display Mode para finalizar a operação de troca de página. A sequência de comandos relacionados é a seguinte:
● 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
■ xplicação e exemplos do 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.
Customers can design UI by dragging and dropping widgets using the GUI Builder, achieving a WYSIWYG (What You See Is What You Get) effect, making UI design intuitive and efficient. Additionally, previewing the design results through the simulator allows customers to instantly view the UI presentation, providing an early understanding of the final effect, saving time and effort. Ultimately, through Winstar's custom UART protocol, customers can easily control the device. This end-to-end design process enables seamless integration of design and control for customers, enhancing operational convenience and accuracy. The application of the SmartDisplay UART protocol brings more operational possibilities and convenience to customers, expanding the scope of product development and applications. This comprehensive solution not only enhances customer work efficiency but also boosts product creativity and competitiveness. Excited? Quickly download the SmartDisplay GUI Builder. Before purchasing Smart Display, you can try the simulator to confirm if Smart Display meets your needs! Fale Conosco