Ana sayfa Çözümler Akıllı Ekranlar için UART Protokolü Tanıtımı

Akıllı Ekranlar için UART Protokolü Tanıtımı

Oct 18,2024

Tanıtım

Smart Display UART protokolü, bir host kontrolcü ile WINSTAR Smart Display arasında UART arayüzü üzerinden iletişim ve kontrol sağlamak amacıyla WINSTAR tarafından geliştirilmiş tescilli bir iletişim protokolüdür. WINSTAR GUI Builder ile birlikte kullanıldığında, kullanıcı arayüzü tasarımından cihaz iletişimi ve kontrolüne kadar HMI geliştirme sürecinin daha verimli şekilde yürütülmesini sağlar.

GUI Builder ile geliştiriciler, temel Button ve Text öğelerinden Gauge ve Keypad gibi farklı Widget’lara kadar çeşitli bileşenleri kullanarak farklı uygulama gereksinimlerine uygun HMI arayüzleri oluşturabilir. Bu görsel geliştirme yaklaşımı, UI tasarımını kolaylaştırırken uygulamaya özel arayüzlerin oluşturulmasında daha fazla esneklik sağlar.

Kullanıcı arayüzü oluşturulduktan sonra host kontrolcü, UART üzerinden Smart Display ile iletişim kurabilir ve WINSTAR’ın tescilli iletişim protokolü ile komutlarını kullanarak cihazı kontrol edebilir. UI tasarımı ile UART iletişiminin birlikte kullanılması, HMI geliştirme ve sistem entegrasyonu süreçlerinin kolaylaştırılmasına yardımcı olur.

WINSTAR, Smart Display uygulamalarında daha verimli ve esnek bir geliştirme deneyimi sunmak amacıyla GUI Builder’ı sürekli olarak geliştirmektedir.

Smart Display GUI Builder – UART Projesi Ayarları

Smart Display GUI Builder, HMI projelerinin verimli bir şekilde oluşturulması için sezgisel ve kullanıcı dostu bir arayüz sunar. Farklı Widget’ları GUI Builder üzerinde sayfaya sürükleyip bırakarak Smart Display üzerinde görüntüleyebilir ve bu öğelerle etkileşim sağlayabilirsiniz. Kolay kullanım ve esnek işlevler, farklı uygulama gereksinimlerine uyum sağlamayı ve geliştirme sürecini daha verimli hale getirmeyi sağlar.

Aşağıdaki adımlarda, Smart Display GUI Builder ile bir UART projesinin nasıl oluşturulacağı ve nesnelerin UART üzerinden nasıl kontrol edileceği açıklanmaktadır.

UART Protokol Projesi Oluşturma

Bir UART projesi oluşturmak için proje adını girin, uygulama gereksinimlerine uygun Smart Display cihaz tipini seçin ve Protocol seçeneği altında "SmartDisplay protocol (UART)" öğesini seçin.

Ana Sayfaya Gauge ve Horizontal Slider Widget Ekleme

Bir Widget eklendikten sonra her nesnenin benzersiz bir Index ID’si ve ilgili Page Index ile Object ID ayarları bulunur. Host, bu iki ayarı kullanarak ilgili nesneyi UART komutları üzerinden kontrol edebilir.

UART ile Widget Arasındaki Etkileşimi Simüle Etme

Simülatörü başlatmak için "Simulator With GUI" simgesine tıklayın.

Simülatörü başlattıktan sonra, Host tarafından GAUGE_0’a veri gönderilmesini simüle etmek için alt bölümde GAUGE_0 olarak işaretlenmiş kaydırıcıyı hareket ettirin. Simülatördeki Gauge değişikliklerini gözlemleyebilir ve sağ taraftaki Message Log bölümünden UART komut kayıtlarını kontrol edebilirsiniz. Ayrıca, Device tarafından veri gönderilmesini simüle etmek için simülatördeki Horizontal Slider’ı kullanabilirsiniz.

Smart Display Cihaz Ayarlarını Güncelleme

Simülatör üzerinden işlevleri doğruladıktan ve sistemin doğru şekilde çalıştığını kontrol ettikten sonra cihazı bağlayabilir ve proje ayarlarını Smart Display cihazına yükleyebilirsiniz.

Yükleme ve güncelleme işlemi tamamlanana kadar bekleyin.

Device ile Widget Arasındaki Etkileşimi Doğrulama

Projeyi cihaza yükledikten sonra işlevleri doğrudan Smart Display üzerinde doğrulayabilirsiniz. GUI Builder ile cihaza bağlanın, "Test Device" seçeneğine tıklayın ve Host ile Device arasındaki etkileşimi test edin.

Test Device Penceresi

Bu test arayüzü üzerinden Host tarafından bir nesnenin değerinin değiştirilmesini simüle edebilirsiniz. Host tarafından Object 0 değerinin gönderilmesini simüle etmek için alt bölümdeki GAUGE_0 kaydırıcısını hareket ettirin ve cihaz üzerindeki Gauge değişikliklerini gözlemleyin. Alt bölümdeki Message Log üzerinden Send command ve Response command bilgilerini de kontrol edebilirsiniz. Ayrıca, Device üzerindeki Horizontal Slider’ı kullanarak Device tarafından gönderilen Event command bilgisini doğrulayabilirsiniz.

Yukarıda açıklanan Test Device penceresi üzerinden Host tarafından Smart Display’i kontrol etmek için UART komutlarının gönderilmesini simüle edebilirsiniz. Sonucu Smart Display üzerinde gözlemleyin ve Touch Panel üzerinden Smart Display’i kullanarak Host’un ilgili Event command bilgisini aldığını doğrulayın.

Smart Display GUI Builder – Özelleştirilebilir Widget’lar

Smart Display GUI Builder’da bulunan standart Widget’lar tasarım gereksinimlerini karşılamadığında, ilgili görseller değiştirilerek Widget simgeleri özelleştirilebilir ve arayüz uygulama gereksinimlerine uygun hale getirilebilir. Basit butonlar veya toggle butonlar için On/Off görsellerinin değiştirilmesi yeterlidir. Daha karmaşık Widget’larda ise doğru görüntüleme sağlamak için görsellerin değiştirilmesine ek olarak ilgili parametrelerin de ayarlanması gerekebilir.

Özelleştirilmiş Gauge Ayar Örneği

İlgili görselleri değiştirip Gauge parametrelerini ayarlayarak özelleştirilmiş bir Gauge oluşturabilirsiniz.

Çok Dilli Metin

Smart Display Text Widget, Unicode desteği sayesinde farklı dillerde metinlerin görüntülenmesine olanak tanır. İhtiyaç duyulan dillerdeki metinleri yapılandırmak için aşağıdaki adımları izleyin.

1. Bir Custom Font ekleyin, istediğiniz yazı tipini ve boyutunu seçin, ardından görüntülenecek Unicode karakter aralığını belirleyin. İlgili Unicode aralığını kontrol etmek için Unicode Character Blocks sayfasından yararlanabilirsiniz. Çince karakterlerde olduğu gibi gerekli karakter aralığı çok genişse ve kullanılabilir Flash alanı yetersiz kalıyorsa, Custom Characters bölümüne yalnızca kullanılacak karakterleri ekleyerek yazı tipi için gereken depolama alanını azaltabilirsiniz.

2. Text Widget için yazı tipini ayarlayın: Yazı tipi ayarlarını değiştirmek istediğiniz Text Widget’ı seçin.

3. Bir Text Widget ekleyin ve metnin doğru görüntülendiğini simülatörde kontrol edin.

Özel UART Komutlarına Giriş

Sonraki bölümde UART iletişiminde kullanılan komut protokolü açıklanmaktadır. Bu komutlar sayesinde Host, Smart Display üzerinde sayfa değiştirme, arka aydınlatma parlaklığını ayarlama ve buzzer’ı etkinleştirme gibi çeşitli işlevleri kontrol edebilir.

Aşağıda varsayılan UART ayarları verilmiştir:

Default baud rate: 115200 (Can be modified through GUI Builder)
Parity Bit: None
Data Bit: 8
Stop Bit: 1

UART için ana veri formatı aşağıdaki gibidir:

<> <>
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)

UART protokolü esasen üç ana komut türüne sahiptir: Gönderim komutu, Yanıt komutu ve Olay Komutu. Bunların formatları sırasıyla aşağıda belirtilmiştir.

1. Gönderim Komutu Formatı

Gönderim komutu, Ana Bilgisayar tarafının SmartDisplay tarafına komut göndermesi için kullanılır.

<> <>
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. Yanıt Komutu Formatı

Yanıt komutu, SmartDisplay tarafının Ana Bilgisayar tarafına Gönderim komutunun sonuçlarıyla yanıt vermesi için kullanılır.

<> <>
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. Olay Komutu

SmartDisplay tarafı veri bildirmek gerektiğinde bu komutu kullanır; örneğin, bir düğmeye basıldığında.

<> <>
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

* Ayrıntılı Gönderim Komutu kodu ve Olay Komutu kodu için lütfen SmartDisplay UART Kullanıcı Kılavuzu belgesine başvurun.

Gönderim/Yanıt Komutu Protokolü Açıklaması ve Örnekleri

Aşağıda, her bir komut yükü için veri formatı ve örnekleri sırasıyla açıklanmaktadır.

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.
Sayfaları değiştirmek için öncelikle Cihaz Durumunu ConfigMode olarak ayarlamanız gerekir. Ardından, sayfa değişim komutunu gönderin. Sayfa değişim komutunu tamamladıktan sonra, Cihaz Durum Modunu Görüntüleme Modu olarak ayarlayarak sayfa değiştirme işlemini tamamlayın. İlgili komutların sıralaması aşağıdaki gibidir:

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

Olay Komutu Protokolü Açıklaması ve Örnekleri

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.

GUI Builder ile Widget’lar sürükle ve bırak yöntemiyle yerleştirilerek kullanıcı arayüzleri oluşturulabilir. WYSIWYG (What You See Is What You Get) yaklaşımı, UI geliştirme sürecini daha kolay ve verimli hale getirir. Entegre simülatör sayesinde fiziksel ekran kullanılmadan önce arayüz önizlenebilir ve UI tasarımı değerlendirilebilir.

UI tasarımı tamamlandıktan sonra host kontrolcü, UART üzerinden Smart Display ile iletişim kurabilir ve WINSTAR’ın tescilli iletişim protokolünü kullanarak cihaz kontrolü ve veri alışverişi gerçekleştirebilir. Bu iş akışı; UI tasarımı, simülasyon ve cihaz iletişimini bir araya getirerek HMI geliştirme ve sistem entegrasyonu süreçlerini kolaylaştırır.

Bir UART Smart Display satın almadan önce GUI Builder ve entegre simülatörü kullanarak arayüz tasarımının ve işlevlerin uygulama gereksinimlerinize uygun olup olmadığını değerlendirebilirsiniz.

GUI Builder’ı indirmek için başvurun — indirme bağlantısını almak için çevrimiçi başvuru formunu doldurmanız yeterlidir.

İşletmenize yönelik ekran çözümleri hakkında sorularınız mı var? Bize Ulaşın!

Abone Ol

Winstar'dan haber güncellemeleri hakkında e-posta alın

Bize Ulaşın

Fiyat/Veri sayfası/Genel bilgi talebi

Teknik Destek

Her türlü teknik bilgi için bize ulaşın

go top
İletişim
close

Gizliliğinize değer veriyoruz

"Tüm Çerezlere İzin Ver" seçeneğine tıklayarak, site gezinmesini geliştirmek, site kullanımını analiz etmek ve pazarlama ve performans çalışmalarımıza yardımcı olmak amacıyla cihazınıza çerezlerin kaydedilmesini kabul etmiş olursunuz. Bu konu hakkında daha fazla bilgiye politikamızda ulaşabilirsiniz. Gizlilik Politikası

Gizliliğinize değer veriyoruz

Winstar ve bazı üçüncü taraflar www.winstar.com.tw adresinde çerezler kullanmaktadır. Çerez türleri, amaçları ve ilgili üçüncü taraflar hakkındaki ayrıntılar aşağıda ve Çerez Politikamızda açıklanmaktadır. Web sitemizde en iyi deneyimi yaşamak için çerez kullanımına izin vermek amacıyla “Hepsine İzin Ver” düğmesine tıklayabilirsiniz. Ayrıca tercihlerinizi ayarlayabilir veya zorunlu olanlar haricindeki çerezleri reddedebilirsiniz.

Rıza tercihlerini yönet

Her zaman aktif
Gerekli Çerezler

Bu çerezler, web sitesinde gezinmenizi ve gizlilik tercihlerinizi ayarlamak, oturum açmak veya formları doldurmak gibi özellikleri kullanmanızı sağlamak için gereklidir.

Analitik Çerezler

“İstatistik çerezleri” olarak da bilinen bu çerezler, bir web sitesini nasıl kullandığınız hakkında bilgi toplar; örneğin, hangi sayfalara girdiğinizi ve hangi bağlantılara tıkladığınızı. Ayrıntılara bakın.