0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【插針機HMI開發(fā)】用AWTK開發(fā)人機界面

ZLG致遠電子 ? 2024-04-19 08:23 ? 次閱讀

插針機中有兩個重要的部件HMI和PLC,HMI提供用戶操作和界面顯示,而PLC則控制電機的運動邏輯。致遠電子的ZTP800和AWTK-HMI解決方案可以快速開發(fā)插針機或其他設(shè)備的HMI界面。

14f0a22c-fde3-11ee-9118-92fbcf53809c.jpg ?AWTK介紹致遠電子的AWTK是開源GUI引擎,提供了AWTK-C、AWTK-MVVM和AWTK-HMI等多種解決方案來實現(xiàn)界面編程。其中AWTK-C解決方案使用C語言來開發(fā)GUI,靈活度最高,但是學(xué)習(xí)使用門檻也較高。AWTK-MVVM解決方案則進一步簡化C的編程,支持控件與變量綁定聯(lián)動,讓界面和業(yè)務(wù)開發(fā)分離。而AWTK-HMI解決方案使用最簡單,內(nèi)置Modbus通信模塊,不用寫C代碼,只需使用AWStudio軟件拖拽控件和配置屬性即可實現(xiàn)HMI界面,因此本次也是使用AWTK-HMI方案來實現(xiàn)插針機的上位機。


14e503fe-fde3-11ee-9118-92fbcf53809c.jpg ?插針機系統(tǒng)介紹

本次使用ZTP800作為插針機的HMI設(shè)備,中間使用Modbus協(xié)議與PLC通信。ZTP800中內(nèi)置的AWTK-HMI運行時引擎,讓用戶無需額外編寫C代碼即可實現(xiàn)插針機的人機交互界面。

15051464-fde3-11ee-9118-92fbcf53809c.png

圖2插針機系統(tǒng)介紹

注:AWTK-HMI是開源的HMI運行時引擎,如想了解編譯方法請參考AWTK-HMI倉庫的說明文檔,在ZTP800的部署AWTK可以參考ZTP800在線文檔的AWTK移植章節(jié)。


14e503fe-fde3-11ee-9118-92fbcf53809c.jpg ?插針機HMI開發(fā)流程

只需要3步:

在PC配置好Modbus的通信點表文件;

使用AWStudio軟件通過簡單拖拽做界面設(shè)計;

最后把工程下載到ZTP800運行。

1. 定義Modbus寄存器點表先定義一個Modbus寄存器點表來約定HMI和PLC的通信規(guī)范,HMI作為Modbus主機,PLC作為從機。該表格需要根據(jù)插針機的需求來定,例如:手動移動托板,手動移動主軸,調(diào)整主軸/托板速度等。15138daa-fde3-11ee-9118-92fbcf53809c.png圖3 Modbus 寄存器只讀表格圖

151ad95c-fde3-11ee-9118-92fbcf53809c.png

圖4 Modbus寄存器寫入表格圖22. 創(chuàng)建AWTK-HMI的Modbus配置文件

AWTK-HMI要使用Modbus通信功能,需要用戶創(chuàng)建一個配置文件modbus_model.json。

151e4718-fde3-11ee-9118-92fbcf53809c.png

圖5 modbus_model.json配置文件

modbus_model.json主要用于配置Modbus通信的寄存器和AWTK變量對象的映射關(guān)系,每個channel(通道)用于表示一片讀寫Modbus寄存器區(qū)域,而variables定義了AWTK變量對象和channel的關(guān)系。3. AWTK-HMI界面開發(fā)

在AWStudio創(chuàng)建一個新AWTK工程,如下圖:

1530142a-fde3-11ee-9118-92fbcf53809c.png

圖6 插針機首頁開發(fā)界面

把需要顯示的控件從工具欄拖放到頁面上:

15342876-fde3-11ee-9118-92fbcf53809c.png

圖7 插針機操作界面

首先,需要給窗口配置v-model屬性,啟用Modbus功能。在窗口增加一個自定義屬性v-model,屬性值設(shè)置為【modbus_client(name=modbus_model,share=true)】,代表該頁面使用modbus_model.json的通信配置。如下圖:1537ef60-fde3-11ee-9118-92fbcf53809c.png

圖8 變量綁定規(guī)則界面

下一步,把上面modbus_model.json映射好的變量綁定到控件上面,讓Label控件根據(jù)變量當(dāng)前值自動改變顯示內(nèi)容,或自動把Edit控件設(shè)置的參數(shù)下發(fā)給下位機。

例如要讓Label控件顯示補針狀態(tài),可以給這個Label控件添加自定義屬性【v-data:text】,屬性值設(shè)置為【g_is_needle_model?”補針狀態(tài)”:”非補針狀態(tài)”】,代表控件的text屬性會跟隨g_is_needle_model變量變化。如下圖:

1546e696-fde3-11ee-9118-92fbcf53809c.png圖9 添加自定義屬性界面例如要把設(shè)置托板速度的Edit控件的輸入數(shù)值下發(fā)到下位機,可以給這個Edit控件添加自定義屬性【v-data:text】,屬性值設(shè)置為【g_plane_speed】,代表控件的text屬性改變后會立即更新g_plane_speed變量。如下圖:155f4c5e-fde3-11ee-9118-92fbcf53809c.png圖10 添加自定義屬性界面2

Modbus模塊會自動同步g_is_needle_model、g_plane_speed等變量,并周期讀寫從機,因此上面控件顯示就會周期性的更新,或周期性的把輸入值寫入從機。
用戶甚至可以把變量值立即寫入從機,在控件的事件響應(yīng)腳本中增加代碼【exec('update', 'write_registers')】即可,其中write_registers就是modbus_model.json定義的通道名。

4. AWTK-HMI工程下載運行

上面的工程開發(fā)完成后,點擊AWStudio上的打包按鈕,在工程目錄下會生成出一個res文件夾,如下圖所示。把res文件夾的內(nèi)容下載到ZTP800的AWTK-HMI運行時程序的對應(yīng)位置,重啟設(shè)備就可以順利啟動我們新開發(fā)的HMI界面。

15632874-fde3-11ee-9118-92fbcf53809c.png

圖11 res文件夾156b9eb4-fde3-11ee-9118-92fbcf53809c.png圖12 運行效果

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3125

    瀏覽量

    42067
  • HMI
    HMI
    +關(guān)注

    關(guān)注

    9

    文章

    575

    瀏覽量

    48304
  • awtk
    +關(guān)注

    關(guān)注

    0

    文章

    37

    瀏覽量

    198
收藏 人收藏

    評論

    相關(guān)推薦

    人機界面開發(fā)與應(yīng)用

    人機界面開發(fā)與應(yīng)用彭彥卿,廈門理工學(xué)院電子與電氣工程系,廈門市廈港新村72號605,361005[摘 要] 研究人機界面主畫面、參數(shù)設(shè)定與顯示畫面、報警顯示畫面的開發(fā)與應(yīng)用
    發(fā)表于 11-01 09:25 ?21次下載

    EasyARM開發(fā)套件PC人機界面軟件

    EasyARM開發(fā)套件PC人機界面軟件
    發(fā)表于 07-15 15:08 ?48次下載

    人機界面設(shè)計與應(yīng)用

    本專題為你介紹人機界面設(shè)計及相關(guān)應(yīng)用。內(nèi)容包括人機界面人機交互的含義與區(qū)別,人機界面硬件選型、開發(fā)軟件下載,
    發(fā)表于 11-30 13:53
    <b class='flag-5'>人機界面</b>設(shè)計與應(yīng)用

    使用STM32設(shè)計人機界面 (HMI)

    使用STM32設(shè)計人機界面 (HMI)
    發(fā)表于 11-25 14:49 ?0次下載

    基于單片的綜合應(yīng)用程序HMI人機界面控制步進電機【C語言】

    基于單片的綜合應(yīng)用程序HMI人機界面控制步進電機【C語言】
    發(fā)表于 01-06 14:22 ?9次下載

    基于單片的綜合應(yīng)用程序HMI人機界面控制步進電機(新程序)

    基于單片的綜合應(yīng)用程序HMI人機界面控制步進電機(新程序)【C語言】
    發(fā)表于 01-06 18:03 ?47次下載

    hmi人機界面包括什么_hmi人機界面設(shè)計

     HMI是Human Machine Interface的縮寫,即“人機接口”,也叫人機界面。HMI人機界面是系統(tǒng)和用戶之間進行交互和信息交
    發(fā)表于 12-05 17:26 ?2.7w次閱讀
    <b class='flag-5'>hmi</b><b class='flag-5'>人機界面</b>包括什么_<b class='flag-5'>hmi</b><b class='flag-5'>人機界面</b>設(shè)計

    人機界面HMI的8大知識點匯總

    本文開始介紹了人機界面HMI的定義及接口種類,其次闡述了HMI人機界面產(chǎn)品的組成與工作原理及它的基本功能,最后闡述了HMI
    發(fā)表于 03-12 10:45 ?5.7w次閱讀
    <b class='flag-5'>人機界面</b><b class='flag-5'>HMI</b>的8大知識點匯總

    單片綜合應(yīng)用人機界面資料合集免費下載

    本文檔的主要內(nèi)容詳細介紹的是單片綜合應(yīng)用人機界面資料合集免費下載包括了:HMI人機界面(2.4寸屏)C程序,HMI
    發(fā)表于 07-16 08:00 ?4次下載
    單片<b class='flag-5'>機</b>綜合應(yīng)用<b class='flag-5'>人機界面</b>資料合集免費下載

    人機界面(HMI)的典型應(yīng)用

    HMI人機界面的簡寫,它為PLC控制系統(tǒng)、I/O模塊或者其他控制系統(tǒng)提供一個人性化的操作界面,而人機界面則通過RS232、485、MODBUS、CAN總線等協(xié)議與這些控制系統(tǒng)交互數(shù)據(jù)
    發(fā)表于 09-11 14:04 ?6116次閱讀
    <b class='flag-5'>人機界面</b>(<b class='flag-5'>HMI</b>)的典型應(yīng)用

    人機界面HMI七大知識的詳細介紹

    人機界面HMI七大知識你知道多少?
    發(fā)表于 02-14 09:36 ?1952次閱讀

    人機界面編程什么語言_人機界面設(shè)計方法原則

    人機界面編程使用的語言和技術(shù)有很多,其中比較常見的包括以下幾種:   C++:C++是一種高級編程語言,可以用于開發(fā)各種應(yīng)用程序和操作系統(tǒng),也可以用于開發(fā)人機界面。   Java
    發(fā)表于 03-16 15:29 ?2209次閱讀

    人機界面的應(yīng)用

    人機界面的應(yīng)用 HMI人機界面的簡寫,它為PLC控制系統(tǒng)、I/O模塊或者其他控制系統(tǒng)提供一個人性化的操作界面,而人機界面則通過RS232、
    發(fā)表于 04-14 11:02 ?456次閱讀

    人機界面集成框架

    人機界面HMI)集成框架指的是一種用于構(gòu)建、設(shè)計、管理和部署人機界面的軟件框架,它可以幫助開發(fā)人員和系統(tǒng)管理員快速創(chuàng)建、調(diào)整和維護HMI
    發(fā)表于 04-14 15:42 ?772次閱讀

    人機界面編程什么語言 怎么c++編寫人機界面程序

    人機界面編程一般使用 HMI 軟件進行編寫。常見的 HMI 軟件有 WinCC、ProTool、GP-Pro EX 等,這些軟件提供了圖形化編程界面,使得編程變得簡單易懂。
    的頭像 發(fā)表于 04-15 16:23 ?4430次閱讀