Introduction au protocole UART pour les écrans intelligents
Le protocole UART de SmartDisplay est un protocole de communication propriétaire développé par WINSTAR, conçu pour permettre aux clients de contrôler facilement leurs écrans HMI (Interface Homme-Machine) via l'interface UART. Ce protocole innovant combine le constructeur d'interface utilisateur convivial de Winstar, offrant aux clients un outil intuitif et puissant pour personnaliser et construire rapidement des widgets répondant à leurs besoins.
Grâce au constructeur d'interface, les clients peuvent facilement concevoir une variété d'objets HMI pour interagir, allant de simples boutons et textes à des jauges et claviers complexes, répondant ainsi à divers scénarios d'application. Cela permet non seulement de gagner du temps et de réduire les coûts, mais rend également la conception des interfaces plus flexible et unique.
En utilisant les commandes de protocole UART personnalisées de WINSTAR, l'interaction et le contrôle avec le Smart Display peuvent être facilement réalisés. Nous nous engageons à fournir la meilleure expérience client et à améliorer continuellement notre constructeur d'interface pour garantir qu'il réponde aux besoins évolutifs de nos clients.
Que vous soyez un designer professionnel ou un débutant, nous croyons que le protocole UART de SmartDisplay sera un choix idéal pour créer d'excellentes interfaces HMI. Explorons ensemble cette technologie innovante et insufflons plus de vitalité et d'inspiration dans vos produits.
Instructions de configuration de projet UART pour le Smart Display GUI Builder
Le SmartDisplay GUI Builder vous offre une interface intuitive et conviviale, vous permettant de créer facilement vos propres projets HMI. Il vous suffit de glisser-déposer divers widgets sur la page à l'aide du GUI Builder, et vous pouvez les afficher et interagir avec eux sur votre appareil SmartDisplay sans effort. Avec une opération simple et une fonctionnalité flexible, il peut répondre à vos divers besoins, rendant votre travail plus efficace.
Ce qui suit présentera comment créer un projet UART à l'aide du Smart Display GUI Builder et expliquera comment contrôler des objets via UART.
■ Créer un projet de protocole UART
Pour créer un projet UART, saisissez le nom du projet, sélectionnez le type d'appareil SmartDisplay et choisissez le protocole SmartDisplay (UART) dans l'option de protocole en fonction de vos besoins.
■ Ajouter un widget Gauge et un widget Slider horizontal à la page principale
Après avoir ajouté un widget, chaque objet a un ID d'index unique. Chaque objet a également ses paramètres d'index de page et d'ID d'objet. En connaissant ces deux paramètres, le côté hôte peut contrôler cet objet via des commandes UART.
■ Simuler l'interaction entre UART et le widget
Cliquez sur l'icône "Simulateur avec GUI" pour lancer le simulateur.
Après avoir lancé le simulateur, vous pouvez faire glisser le curseur étiqueté GAUGE_0 en bas pour simuler l'envoi de données à GAUGE_0 par l'hôte. Observez les changements dans le Gauge du simulateur et consultez le journal des commandes UART dans le Journal des messages à droite. Vous pouvez également interagir avec le Slider horizontal sur le simulateur pour simuler des données envoyées depuis le côté de l'appareil.
■ Mettre à jour les paramètres de l'appareil SmartDisplay
Après avoir vérifié la fonctionnalité via le simulateur, si tout fonctionne correctement, vous pouvez vous connecter à l'appareil et télécharger les paramètres du projet sur l'appareil SmartDisplay.
Attendez que le processus de téléchargement et de mise à jour soit terminé.
■ Vérifier l'interaction entre l'appareil et le widget
Après avoir téléchargé le projet sur l'appareil, vous pouvez valider davantage la fonctionnalité du côté de l'appareil SmartDisplay. Connectez-vous à l'appareil avec le GUI Builder, cliquez sur "Tester l'appareil" et vous pourrez tester l'interaction entre l'hôte et l'appareil.
■ Fenêtre de test de l'appareil
Grâce à cette interface de test, vous pouvez simuler le côté hôte modifiant la valeur de l'objet. Faites glisser le curseur étiqueté GAUGE_0 en bas pour simuler l'envoi par l'hôte de la valeur de l'objet 0. Observez les changements dans le Gauge sur l'appareil, et vous pouvez également voir les variations dans la commande d'envoi et la commande de réponse dans le Journal des messages en bas. De plus, interagissez avec le Slider horizontal de l'appareil pour confirmer la commande d'événement envoyée depuis le côté de l'appareil.
Grâce à la fenêtre de test de l'appareil décrite ci-dessus, vous pouvez simuler l'envoi de commandes UART par l'hôte pour contrôler le SmartDisplay. Consultez l'écran de résultats sur le SmartDisplay et confirmez la réception des informations de commande d'événement sur le côté hôte en opérant le SmartDisplay via le panneau tactile.
Smart Display GUI Builder – Widget Personnalisé
Lorsque les widgets par défaut sur le SmartDisplay ne répondent pas aux exigences de conception, les clients peuvent concevoir eux-mêmes des icônes de widgets personnalisés. 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 paramètres supplémentaires 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 textes multilingues. Les clients peuvent suivre les étapes ci-dessous pour configurer le texte multilingue souhaité à afficher.
1. Ajouter une police personnalisée : sélectionnez la police et la taille souhaitées dans l'ordre, et choisissez la plage de texte Unicode à afficher (vous pouvez consulter le site https://unicode-table.com/en/blocks/ pour confirmer la plage Unicode du texte à afficher). Si la plage de texte à afficher est trop grande (comme les caractères chinois), ce qui entraîne un espace Flash insuffisant, vous pouvez réduire l'espace Flash de la police en définissant uniquement les caractères à inclure dans la section des caractères personnalisés.
2. Définir la police pour l'affichage du widget de texte : sélectionnez les paramètres du widget de texte à modifier.
3. Ajouter un widget de texte et vérifier dans le simulateur que l'affichage du texte est correct.
Introduction aux commandes CAN personnalisées
Ensuite, nous allons expliquer le protocole de commande utilisé pour le UART. Grâce à ces instructions, le côté hôte peut facilement contrôler le SmartDisplay, y compris changer de page, ajuster la luminosité de l'écran ou activer le buzzer.
The following are the default UART settings:
Default baud rate: 115200 (Cela peut être modifié via le GUI Builder)
Parity Bit: None
Data Bit: 8
Stop Bit: 1
Le format de données principal pour le UART est le suivant :
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) |
Le protocole UART se compose principalement de trois types de commandes : la commande d'envoi, la commande de réponse et la commande d'événement, avec les formats suivants dans cet ordre.
(1) Format de la commande d'envoi
La commande d'envoi est utilisée par le côté hôte pour envoyer des commandes au côté 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 de la commande de réponse
La commande de réponse est utilisée par le côté SmartDisplay pour répondre au côté hôte avec les résultats de la commande d'envoi.
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) Commande d'événement
Lorsque le côté SmartDisplay doit proactivement rapporter des données, il utilisera cette commande, par exemple, lorsqu'un bouton est déclenché.
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 |
* Pour des détails sur le code de la commande d'envoi et le code de la commande d'événement, veuillez consulter le document du guide de l'utilisateur UART de SmartDisplay.
■ Explication et exemples du protocole de commande d'envoi/réponse
Ce qui suit décrit séquentiellement le format des données et des exemples pour chaque charge utile de commande.
● 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.
Pour changer de page, vous devez d'abord définir l'état de l'appareil sur ConfigMode. Ensuite, envoyez la commande de changement de page. Après avoir terminé la commande de changement de page, définissez l'état de l'appareil sur Display Mode pour finaliser l'opération de changement de page. La séquence des commandes associées est la suivante :
● 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
■ Explication et exemples du protocole de commande d'événement
● 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.
Les clients peuvent concevoir des interfaces utilisateur en faisant glisser et déposer des widgets à l'aide du GUI Builder, réalisant ainsi un effet WYSIWYG (Ce que vous voyez est ce que vous obtenez), rendant la conception de l'interface intuitive et efficace. De plus, la prévisualisation des résultats de conception via le simulateur permet aux clients de voir instantanément la présentation de l'interface, offrant une compréhension précoce de l'effet final, ce qui permet de gagner du temps et des efforts. En fin de compte, grâce au protocole UART personnalisé de Winstar, les clients peuvent facilement contrôler le dispositif. Ce processus de conception de bout en bout permet une intégration fluide de la conception et du contrôle pour les clients, améliorant la commodité et la précision opérationnelles. L'application du protocole UART SmartDisplay offre plus de possibilités opérationnelles et de commodité aux clients, élargissant le champ de développement et d'applications des produits. Cette solution complète améliore non seulement l'efficacité du travail des clients, mais stimule également la créativité et la compétitivité des produits. Excité ? Téléchargez rapidement le SmartDisplay GUI Builder. Avant d'acheter le SmartDisplay, vous pouvez essayer le simulateur pour confirmer si le SmartDisplay répond à vos besoins ! Contactez-nous