

AWTK全稱 Toolkit AnyWhere,是 ZLG 開發(fā)的開源 GUI 引擎,旨在為嵌入式系統(tǒng)、WEB、各種小程序、手機(jī)和 PC 打造的通用 GUI 引擎,為用戶提供一個(gè)功能強(qiáng)大、高效可靠、簡單易用、可輕松做出炫酷效果的 GUI 引擎。
簡介
運(yùn)動(dòng)控制是 PLC 重要的應(yīng)用領(lǐng)域,本文以一個(gè)簡化版的跑步機(jī)為例,介紹一下在 AWPLC 中,使用運(yùn)動(dòng)控制塊的基本方法。
對于單軸運(yùn)動(dòng)控制,從控制的方法來說,可以分為 3 類:
位置控制。讓軸轉(zhuǎn)動(dòng)指定的位置;
速度控制。讓軸以指定的速度轉(zhuǎn)動(dòng);
力矩控制。讓軸以指定的力矩轉(zhuǎn)動(dòng)。
在 PLCOpen 的運(yùn)動(dòng)控制功能塊中,對以上控制方法都有支持。跑步機(jī)是一個(gè)典型的速度控制類應(yīng)用,常見速度類控制應(yīng)用也很多,比如抽油煙機(jī)、洗衣機(jī)、扶手電梯和傳送帶等。速度控制是最簡單的控制方式,使用 MC_MoveVelocity 這個(gè)功能塊就可以了,它讓軸以指定的速度轉(zhuǎn)動(dòng),其圖形表示如下:

*這是一個(gè)標(biāo)準(zhǔn)的功能塊,具體用法可以參考 PLCOpen 的文檔,網(wǎng)上也有很多文章介紹。
6 個(gè)按鈕。 ● 啟動(dòng)按鈕。 ●停止按鈕。 ●增加速度按鈕。 ●減小速度按鈕。 ●1 檔按鈕。 ●2 檔按鈕。 數(shù)碼管。用來顯示當(dāng)前的速度。 伺服電機(jī)。因?yàn)闆]有真實(shí)硬件,找了一個(gè)二手伺服電機(jī),看起來比較 Low,反正能轉(zhuǎn)起來吧,下一步會(huì)支持 ZLG 專業(yè)的運(yùn)動(dòng)控制器。運(yùn)動(dòng)控制算法用的一個(gè)開源的庫(實(shí)現(xiàn)不太完整),以后會(huì)集成 ZLG 算法專家提供的運(yùn)動(dòng)控制庫(也可以集成第三方商業(yè)運(yùn)動(dòng)控制算法)。

程序界面如下所示(為了方便理解,我們把功能塊圖也放到了界面上):

2. 軟件模擬
按鈕和數(shù)碼管都用軟件模擬。
PLC程序
運(yùn)動(dòng)控制的功能塊,參數(shù)通常比較多,占地比較大,一個(gè)屏幕放不下幾個(gè)。在這個(gè)例子中,我們把它放到兩個(gè)程序中:
主程序程序負(fù)責(zé)運(yùn)動(dòng)控制和開關(guān)機(jī)。
速度調(diào)節(jié)和檔位切換。
* 注意:實(shí)際速度與硬件選型有關(guān),需要對電機(jī)控制器的參數(shù)進(jìn)行配置,這里為了簡化,把速度設(shè)置到0-100之間。

點(diǎn)擊 START 按鈕。將狀態(tài) RUNNING 設(shè)置為 TRUE。 RUNNING 為 TRUE 會(huì)激活功能塊 MC_Power 啟動(dòng)電機(jī)。 電機(jī)啟動(dòng)完成,MC_Power 的 Status 輸出 TRUE,MC_MoveVelocity 開始執(zhí)行,設(shè)置初始速度。
關(guān)機(jī)過程:
點(diǎn)擊 STOP 按鈕,MC_Stop 開始執(zhí)行。 停機(jī)完成,MC_Stop 的 Done 輸出 TRUE,此時(shí)將狀態(tài) RUNNING 設(shè)置為 FALSE,并將速度清零。
注意事項(xiàng):
MC_Power 的參數(shù) Enable_Negative 設(shè)置為 false,禁止反轉(zhuǎn)。
MC_MoveVelocity 的 ContinouseUpdate 設(shè)置為 true,否則速度調(diào)節(jié)無效。
增加速度:
點(diǎn)擊 INC 按鈕。將速度增加 5,如果速度大于 100,取 100,設(shè)置到速度變量 VELOCITY。
減小速度:
點(diǎn)擊 DEC 按鈕。將速度減小 5,如果速度小于0,取0,設(shè)置到速度變量 VELOCITY。
切換到 1 檔:
將 40設(shè)置到速度變量 VELOCITY。
切換到 2 檔:
將 80設(shè)置到速度變量 VELOCITY。
用戶界面
應(yīng)用程序不需要編程,用 AWTK Designer 設(shè)計(jì)好界面,將控件與模型進(jìn)行綁定即可。下面介紹一下控件與模型的綁定方法。這里用的是 AWTK-MVVM,數(shù)據(jù)綁定規(guī)則與 AWTK-MVVM 是完全一樣的。
模型可以用 io、plc 或者 io+plc。io 可以用來綁定 IO 變量,plc 可以用來綁定程序 PLC 內(nèi)部變量。
示例:
由于符號(hào)%在程序里具有特殊功能,所以在綁定 IO 變量時(shí),把%換成_。比如:將%QX0.0寫作_QX0.0。
*由此可見,在 AWPLC 功能塊圖的幫助下,我們不要寫 C 代碼或腳本,即可完成應(yīng)用程序的開發(fā)。AWPLC 用低代碼降低了開發(fā)的門檻,提高了開發(fā)的效率。AWPLC 等您來玩!
【版權(quán)聲明】本文為ZLG開發(fā)者社區(qū)用戶原創(chuàng)內(nèi)容,未經(jīng)授權(quán)不得轉(zhuǎn)載。歡迎更多用戶到社區(qū)交流互動(dòng)、創(chuàng)作博文,一經(jīng)采用,可獲得百元京東E卡。






原文標(biāo)題:【產(chǎn)品應(yīng)用】用 AWTK 和 AWPLC 快速開發(fā)嵌入式應(yīng)用程序 (10)- 簡易跑步機(jī)
文章出處:【微信公眾號(hào):ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
致遠(yuǎn)電子
+關(guān)注
關(guān)注
13文章
411瀏覽量
31758
原文標(biāo)題:【產(chǎn)品應(yīng)用】用 AWTK 和 AWPLC 快速開發(fā)嵌入式應(yīng)用程序 (10)- 簡易跑步機(jī)
文章出處:【微信號(hào):ZLG_zhiyuan,微信公眾號(hào):ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
AWTK-WEB 快速入門(6) - JS WebSocket 應(yīng)用程序

AWTK-WEB 快速入門(5) - C 語言 WebSocket 應(yīng)用程序

AWTK-WEB 快速入門(4) - JS Http 應(yīng)用程序

AWTK-WEB 快速入門(2) - JS 應(yīng)用程序

霍爾傳感器的應(yīng)用——跑步機(jī)

霍爾元件DH220在跑步機(jī)中的應(yīng)用
AWTK-WEB 快速入門(1) - C 語言應(yīng)用程序

【AWTK使用經(jīng)驗(yàn)】如何使用系統(tǒng)輸入法與開啟最大化窗口功能

霍爾開關(guān)給跑步機(jī)帶來精準(zhǔn)感應(yīng)

跑步機(jī)的心聲——N8900藍(lán)牙音頻芯片賦予智能健身新維度

EsDA,一站式嵌入式軟件

七大嵌入式GUI盤點(diǎn)
嵌入式linux開發(fā)的基本步驟有哪些?
【AWTK最新動(dòng)態(tài)】AWTK 1.8版本發(fā)布

評論