|
中達電通公司
摘 要: 隨著觸摸屏技術的發展及生產過程對人機界麵(HMI)功能提升,人機界麵一機多屏的應用方式越來越普遍。本文用清晰的圖示結合實際工程開發案例詳細的說明台達DOP是如何實現一機多屏功能的。
關鍵字:人機界麵 宏指令
1 引言
現在市麵上很多的人機界麵都提供了方便的一台控製器連接兩台或者多台HMI的功能,也就是工程上常說的一機多屏係統,如台灣威綸科技股份有限公司WeinView係列和台灣HITEC(海泰克)等都可以實現一機多屏係統。台達的DOP係列觸摸屏人機功能很強,但在Screen Editor編輯軟件中並沒有提供一機多屏集成應用功能,本文提出DOP觸摸屏一機多屏功能集成設計技術。
2 原理設計
台達DOP係列觸摸屏的特點之一是提供了2個通訊口,而且2個通訊口可以獨立使用。可以用一個通訊口連接控製器,另一個通訊口連接第二台或者第三台觸摸屏,以下將結合工程案例給出DOP係列觸摸屏一機多屏係統設計。所有的從機與PLC的(de)數(shu)據(ju)交(jiao)換(huan)都(dou)是(shi)通(tong)過(guo)主(zhu)機(ji)中(zhong)的(de)宏(hong)完(wan)成(cheng)周(zhou)轉(zhuan)的(de)。每(mei)台(tai)人(ren)機(ji)可(ke)以(yi)運(yun)行(xing)不(bu)一(yi)樣(yang)的(de)程(cheng)序(xu)。舉(ju)一(yi)反(fan)三(san),這(zhe)種(zhong)形(xing)式(shi)推(tui)廣(guang)的(de)一(yi)個(ge)變(bian)型(xing)就(jiu)是(shi)可(ke)以(yi)在(zai)多(duo)台(tai)人(ren)機(ji)和(he)多(duo)台(tai)控(kong)製(zhi)器(qi)之(zhi)間(jian)輕(qing)鬆(song)的(de)完(wan)成(cheng)數(shu)據(ju)的(de)交(jiao)換(huan)。
2.1一機雙屏係統設計

圖1 DOP觸摸屏一機多屏係統框圖
參見圖1,用一個DOP觸摸屏作為Master HMI,其餘若幹個人機作為Slave HMI,分別為2#、3#......。Master HMI的COM1與台達EH 係列PLC通過RS232連接,Master HMI的COM2與各個Slave HMI通過RS485連接。這樣,Master HMI作為兩條線路上的主站,負責交換兩條線路上的數據。
本例采用兩台HMI同一個PLC連接,圖1係統圖簡如圖2所示,兩台DOP觸摸屏直接通過MODBUS ASCII來連接。
 圖2 DOP觸摸屏一機雙屏係統框圖
2.2 雙屏數據同步顯示
功能1:兩台HMI同時顯示PLC的數據變化。DOP有個很大的特點就是支持宏指令功能,所以這些功能都要依靠宏來實現。我們先設功能1中PLC用到的寄存器地址為D200, D201。2#Slave HMI與之對應的地址設為$109, $110,根據表1DOP內部與MODBUS的對應關係可以知道對應MODBUS的地址為W40110, W40111。然後在Master HMI中用BMOV指令將D區傳送給$區就行了。
表1 DOP內部與MODBUS的對應關係
|
Modbus address |
HMI 內部數據定義 |
|
W40001 ~ W41024 |
$0 ~ $1023 |
內部緩存器 |
|
W42001 ~ W43024 |
$M0 ~ $M1023 |
斷電保持內部緩存器 |
|
W44001 |
RCPNO |
配方編號緩存器 |
|
W45001 ~ ... |
RCP0 ~ RCPn |
配方緩存器 |
|
|
|
|
|
B00001 ~ B01024 |
$2000.0 ~ $2063.15 |
內部緩存器(bit) |
|
B01025 ~ B02048 |
$M200.0 ~ $M263.15 |
斷電保持內部緩存器(bit) |
2.3 雙屏數據同步修改
功能2:當其中任意一台HMI修改PLC寄存器的數值時,同時能在另一台HMI上一起變化。參見圖3,要實現主從人機換畫麵同步,就要用【係統控製區】來幫忙了。設主從人機共用從機的MODBUS地址W40100來切換畫麵。
2.4 雙屏畫麵同步切換
功能3:當一台HMI切換畫麵時,另一台HMI也會自動切換。參見圖4,其中綠色表示在2#Slave HMI中執行的;桔色表示在1#Master HMI中執行的。
本功能實現關鍵是主從機都可以改變PLC中的數據。設PLC中的寄存器地址為D100, D101。2#Slave HMI與之相對應的地址是W40010, W40011。我們的思路是這樣:當1#Master HMI完成對D100, D101的數值輸入的時候,觸發一個標誌位1#$101.0(1#表示1#Master,2#表示2#Slave HMI)。在1#backgroud宏中檢查$101如果為1,就Call子宏2,在子宏2中用BMOV指令把D100, D101分為傳送給2#W40010, 2#W40011以達到數據同時改變。同時啟動D100, D101的執行後宏,先做200ms延時,之後複位$101.0.
同樣的做法,當2#完成對2#W40010, 2#W40011數值輸入後觸發標誌位2#B00001。因為在1#backgroud宏的IF語句中不能直接使用BasePort或者Link2的地址,所以要先把2#B00001GET到$100.0,之後在在1#backgroud宏中檢查$100如果為1,就Call子宏1,在子宏1中用BMOV指令把2#W40010, 2#W40011分為傳送給D100, D101以達到數據同時改變。同時啟動2#W40010, 2#W40011的執行後宏,先做200ms延時,之後複位2#B00001。
3種功能實現的圖示圖下圖所示:
圖3雙屏數據同步顯示
 圖4雙屏數據同步修改
 圖5 雙屏畫麵同步切換
3 Screen Editor軟件設計
係統原理設計要通過Screen Editor來軟件實現。由於篇幅的限製,一些基本的軟件操作就不在此文說明,本文隻提到一些比較關鍵的點。
3.1 1#Master HM程序設計 啟動Screen Editor軟件,建立一個新文件,【設定模組參數】的設置


上圖中1#Master HMI的COM1連接DVP PLC,作為PLC的主站。與PLC的通訊參數設置

新建一個Link2,用1#Master HMI的COM2去連接2#Slave HMI,如圖通訊Link2
新建1-Screen_1畫麵。其中D101的屬性設置與D100一樣。


建立2-Screen_1畫麵,來配合切換畫麵的實現

2-Screen_2畫麵
建立Backgroud宏
建立兩個子宏
子宏1 子宏2
至此,1#Master HMI的程序就編寫完成了。
3.2 2#Slave HMI的程序編寫
【設定模組參數】

為2#建立2個畫麵

至此,2#Slave HMI的程序完成了。一機雙屏實際運行的情況如圖6所示。
 圖6 一機雙屏實際運行
4結束語
台達電子作為享譽國際的機電產品供應商,每一樣產品都是精雕細琢的傑作。台達人機的2個通訊口獨立使用和方便的宏指令結合,可以完成許多複雜的通訊功能。希望以此為例,大家能夠挖掘處更多的潛在應用。
參考文獻
[1]台達DOP A係列人機界麵應用技術手冊
2006年4月6日
|