<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

【插針機HMI開發】用AWTK開發人機界面

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

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

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


14e503fe-fde3-11ee-9118-92fbcf53809c.jpg ?插針機系統介紹

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

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

圖2插針機系統介紹

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


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

只需要3步:

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

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

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

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

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

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

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

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

圖5 modbus_model.json配置文件

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

在AWStudio創建一個新AWTK工程,如下圖:

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

圖6 插針機首頁開發界面

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

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

圖7 插針機操作界面

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

圖8 變量綁定規則界面

下一步,把上面modbus_model.json映射好的變量綁定到控件上面,讓Label控件根據變量當前值自動改變顯示內容,或自動把Edit控件設置的參數下發給下位機。

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

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

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

4. AWTK-HMI工程下載運行

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

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

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

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開源
    +關注

    關注

    3

    文章

    3026

    瀏覽量

    41776
  • HMI
    HMI
    +關注

    關注

    9

    文章

    501

    瀏覽量

    47996
  • awtk
    +關注

    關注

    0

    文章

    29

    瀏覽量

    179
收藏 人收藏

    評論

    相關推薦

    人機界面開發與應用

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

    EasyARM開發套件PC機人機界面軟件

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

    什么是人機界面HMI)?

    HMI是Human Machine Interface的英文縮寫,“人機接口”,也叫人機界面。舉個例子來說,在一座工廠里頭,我們要搜集工廠各個區域的溫度、濕度以及工廠中機器的狀態等等的信息透過
    發表于 07-27 14:44 ?4147次閱讀

    人機界面設計與應用

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

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

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

    hmi人機界面包括什么_hmi人機界面設計

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

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

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

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

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

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

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

    什么是人機界面?

    人機界面(Human Machine Interface,HMI)通常是指自動化系統與用戶之間進行可視化信息交互的媒介。在工業自動化系統中,HMI通常與可編程序控制器、通用變頻器、智能設備和裝置
    的頭像 發表于 10-30 13:27 ?4942次閱讀

    大彩科技新品首發新1代HMI人機界面

    該產品是一款7.0寸分辨率為 800*480的M型醫用級組態HMI人機界面屏。使用VisualHMI人機界面組態開發平臺開發,內部集成了DC
    的頭像 發表于 11-23 14:12 ?1246次閱讀
    大彩科技新品首發新1代<b class='flag-5'>HMI</b><b class='flag-5'>人機界面</b>

    人機界面編程用什么語言_人機界面設計方法原則

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

    人機界面的應用

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

    人機界面集成框架

    人機界面HMI)集成框架指的是一種用于構建、設計、管理和部署人機界面的軟件框架,它可以幫助開發人員和系統管理員快速創建、調整和維護HMI
    發表于 04-14 15:42 ?648次閱讀

    大彩科技新品首發--新1代HMI人機界面!

    該產品是一款7.0寸分辨率為 800*480的M型醫用級組態HMI人機界面屏。使用VisualHMI人機界面組態開發平臺開發,內部集成了DC
    的頭像 發表于 11-22 14:46 ?1322次閱讀
    大彩科技新品首發--新1代<b class='flag-5'>HMI</b><b class='flag-5'>人機界面</b>!
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>