富士觸摸屏與西門(mén)子PLC通訊中的問(wèn)題及解決方案
發(fā)布時(shí)間:2019-07-31 11:22:23來(lái)源:
0 引言
隨著計(jì)算機(jī)網(wǎng)絡(luò)及現(xiàn)場(chǎng)總線技術(shù)技術(shù)的發(fā)展, PLC 及觸摸屏在工業(yè)控制和樓宇自動(dòng)化中的應(yīng)用非常廣泛。現(xiàn)場(chǎng)總線技術(shù)及其總線接口模塊、智能儀表、控制設(shè)備等組成的綜合監(jiān)控系統(tǒng)已成為當(dāng)前自動(dòng)化技術(shù)發(fā)展的一個(gè)重要方向。在工控領(lǐng)域,PLC與觸摸屏結(jié)合運(yùn)用的技術(shù)已越來(lái)越為工程人員所了解與熟悉 , 由于觸摸屏具有操作簡(jiǎn)便、界面美觀直接、編程容易掌握、與PLC通訊良好、抗干擾能力強(qiáng)等等特點(diǎn) , 它正迅速地滲入各個(gè)行業(yè) , 發(fā)揮自動(dòng)化控制的比較大優(yōu)勢(shì)。
PROFIBUS 提供了兩種通信協(xié)議: DP 、 FMS ,富士 UG 系列的觸摸屏支持其中的 DP 協(xié)議。富士觸摸屏具有很強(qiáng)的兼容性, 可以與近 30個(gè)廠家的 PLC通訊,兼容性極強(qiáng),而且還可以和計(jì)算機(jī)通訊(開(kāi)放式通訊協(xié)議)。
通過(guò)接口單元、 UG031-P 通訊卡及總線的連接, UG 觸摸屏可以作為從站和作為主站的西門(mén)子的 S7-300 或 S7-400 系列的 PLC 通信(網(wǎng)絡(luò)結(jié)構(gòu)示意見(jiàn)圖一)。
圖一: PROFIBUS-DP 的網(wǎng)絡(luò)結(jié)構(gòu)
1 系統(tǒng)結(jié)構(gòu)
本文的背景為某食品加工廠某控制系統(tǒng)包括原料混料線、薯餅生產(chǎn)線、包裝線等構(gòu)成的主線系統(tǒng),以及蒸汽鍋爐系統(tǒng)、水系統(tǒng)、壓縮空氣系統(tǒng)、照明系統(tǒng)、通風(fēng)系統(tǒng)和消防系統(tǒng)等構(gòu)成的輔助系統(tǒng)。各系統(tǒng)位置比較分散,控制點(diǎn)較多,其中包括 140 多臺(tái)電機(jī), 29 臺(tái)變頻器, 15 個(gè)溫濕度控制點(diǎn)。
由于系統(tǒng)比較復(fù)雜,控制采取分層控制策略,由兩臺(tái)上位機(jī)完成工廠級(jí)的監(jiān)控及數(shù)據(jù)管理功能,觸摸屏和 PLC 完成現(xiàn)場(chǎng)級(jí)的控制,采用 Profibus 現(xiàn)場(chǎng)總線的方式進(jìn)行通訊。上位機(jī)留有接口,可連接局域網(wǎng)和廣域網(wǎng),以利于進(jìn)一步的開(kāi)發(fā)。其中數(shù)字輸入點(diǎn)有 900 多點(diǎn),數(shù)字輸出有 400 多點(diǎn),模擬量輸入 20 個(gè)。
下面以這個(gè)食品加工廠為例,組成一個(gè)集中控制系統(tǒng),系統(tǒng)結(jié)構(gòu)如圖二所示。
其中 PLC(1) 用于主系統(tǒng), PLC(2) 用于輔助系統(tǒng)。輔助系統(tǒng)的組成與主系統(tǒng)相似,因此圖中省略了其構(gòu)成。 PLC 選用 S7-300 系列的 CPU315-2DP 和 S7-200 系列的 CPU226 , PID 模塊為 FM355C ,通訊模塊為 CP342-5 ,擴(kuò)展模塊為 IM153-1 , I/O 模塊則使用到:數(shù)字輸入模塊選 SM321 、數(shù)字輸出為 SM322 、模擬量輸入為 SM331 。上位機(jī)選用西門(mén)子的工控機(jī),它內(nèi)置了 PCI 接口的 CP5611 卡用于與
PLC 通訊。
選用 S7-300 系列的 CPU315-2DP 是為了能進(jìn)行擴(kuò)展 I/O 模塊以滿(mǎn)足控制點(diǎn)數(shù)的要求,而用于擴(kuò)展的 IM 模塊的選型則是依據(jù) IM 模塊與中央控制器 CPU315-2DP 的距離。
由于所有的 I/O 模塊均放在同一組控制柜里,因此選用了通訊距離在 5 米范圍內(nèi)的 IM153-1[1] 。當(dāng) IM 模塊與中央控制器的距離較遠(yuǎn)時(shí)可以選擇通訊范圍為 100 米的型號(hào)的 IM 模塊。
觸摸屏選用富士 UG420H-SC1, 10.4英寸、 128色 STN顯示,基于 Windows95/98/NT操作平臺(tái)下的專(zhuān)用組態(tài)軟件,界面友好直觀,易學(xué)易用,大大節(jié)省產(chǎn)品開(kāi)發(fā)周期。編程軟件中備有大量的圖形庫(kù)(開(kāi)關(guān)、燈、棒圖等)供選擇,還可以根據(jù)用戶(hù)需求編輯所需要的工藝圖形,能夠轉(zhuǎn)換 BMP文件和 AUTOCAD中的 DXF文件。
圖二: 控系統(tǒng)硬件組成及結(jié)構(gòu)
2 觸摸屏的通訊設(shè)置及界面設(shè)計(jì)
在硬件連接完成后,需要在組態(tài)軟件中指定系統(tǒng)的硬件配置以及設(shè)置一些通信參數(shù)等等。首先制定所使用的觸摸屏的類(lèi)型,這里選擇默認(rèn)的 UG420 ( 640*480 10.4inches );下一步指定和觸摸屏通訊的 PLC 類(lèi)型及型號(hào),這里選 SIEMENS S7-PROFIBUS ;比較后一步指定系統(tǒng)參數(shù),首先是讀區(qū)和寫(xiě)區(qū),讀區(qū)是指作為從 PLC 讀入數(shù)據(jù)的緩沖,如果系統(tǒng)中需要顯示趨勢(shì)圖的話那么讀區(qū)應(yīng)當(dāng)設(shè)大一些,一般設(shè) 1000 個(gè)字就可以了,寫(xiě)區(qū)用于顯示存儲(chǔ)屏幕的狀態(tài)、頁(yè)碼、畫(huà)面層疊以及報(bào)警狀態(tài)等等。另外在對(duì)話框 No.of Word Setting for I/O 中需要指出觸摸屏的 MPI 地址,以及傳輸?shù)膸L(zhǎng)度, MPI 地址在 PLC 的硬件組態(tài)里已經(jīng)定義好了,兩者必須一致,否則會(huì)出現(xiàn)通信錯(cuò)誤。另外幀長(zhǎng)度為 32 字節(jié); 奇偶校驗(yàn)為奇校驗(yàn);數(shù)據(jù)長(zhǎng)度 8位;停止位 1位;通訊方式 RS-485。
UG00S-CW 具有非常完善而強(qiáng)大的組態(tài)功能,在開(kāi)發(fā)組態(tài)的時(shí)候,開(kāi)發(fā)者可以不去考慮通信協(xié)議的問(wèn)題,因?yàn)楦皇抗疽呀?jīng)將這一切的技術(shù)細(xì)節(jié)都屏蔽掉了,它具有智能的尋址功能。在建立一個(gè)按鈕時(shí),這個(gè)按鈕在 PLC 中的預(yù)先有定義(在西門(mén)子 PLC 中,無(wú)論是數(shù)字量還是模擬量的定義都是在 DB 塊中)。假設(shè)這個(gè)按鈕的地址是 DB2.DBX2.0 (它的含義是第 2 個(gè) DB 塊中第 2 個(gè)字節(jié)的第 0 位),觸摸屏中按鈕的地址應(yīng)表示為 DB2 : 2-0 。我們可以看到,除了地址的書(shū)寫(xiě)方式有所不同以外,你幾乎無(wú)需作其他的工作,你無(wú)需去定義變量、更無(wú)需去理會(huì)通信的幀結(jié)構(gòu)等等。
對(duì)于模擬量同樣如此,只不過(guò)在模擬量中你需要指出模擬量所占的字節(jié)個(gè)數(shù),其他的同數(shù)字量一樣簡(jiǎn)單。
可以說(shuō), UG00S-CW 在處理基本的模擬數(shù)字量的時(shí)候非常簡(jiǎn)單、方便,但是在處理一些較為復(fù)雜的情況時(shí)卻遇到了意想不到的問(wèn)題。在這個(gè)食品生產(chǎn)線的集中控制系統(tǒng),其中就涉及到富士觸摸屏和西門(mén)子 PLC 中的通信格式的兼容問(wèn)題。
系統(tǒng)中有些 PID 控制的模擬量需要用趨勢(shì)圖來(lái)顯示, UG00S-CW 中顯示趨勢(shì)圖并不復(fù)雜,首先點(diǎn)一下趨勢(shì)圖的圖標(biāo),在彈出的對(duì)話框中選擇趨勢(shì)圖的類(lèi)型,然后選擇每條曲線對(duì)應(yīng)的地址即可。但是在聯(lián)機(jī)調(diào)試時(shí)卻總是出現(xiàn) comunication error (通信錯(cuò)誤)信息,經(jīng)過(guò)排查發(fā)現(xiàn)問(wèn)題出在趨勢(shì)圖上,如果將趨勢(shì)圖從程序中去掉,則一切正常,后來(lái)我就嘗試先將西門(mén)子 PLC 中的對(duì)應(yīng)的模擬量數(shù)據(jù)讀入觸摸屏的緩沖(即內(nèi)部存儲(chǔ)區(qū)),然后將趨勢(shì)圖每條曲線的地址改為對(duì)應(yīng)的內(nèi)部地址。經(jīng)過(guò)聯(lián)機(jī)調(diào)試,發(fā)現(xiàn)不再出現(xiàn) comunication error 信息,但是趨勢(shì)圖的曲線的顯示卻極不正常。經(jīng)過(guò)觀察,發(fā)現(xiàn)除了當(dāng)模擬量的值為零時(shí)曲線顯示正常,而為非零時(shí)曲線則指向無(wú)窮大。這個(gè)問(wèn)題曾讓筆者百思不得其解,后來(lái)終于想到有可能是西門(mén)子
PLC 和富士觸摸屏在存儲(chǔ)格式上可能會(huì)不兼容。原來(lái)富士觸摸屏中趨勢(shì)圖中的模擬量一般都是雙字( 4 字節(jié)),它從西門(mén)子 PLC 讀取的順序是將第一字讀為高字,第二個(gè)字讀為低字,而西門(mén)子 PLC 中模擬量的存儲(chǔ)為先存低字再存高字,這樣富士觸摸屏從西門(mén)子 PLC 中讀入的數(shù)據(jù)剛好都是高低字顛倒的。因?yàn)橐话隳M量的值都比較小,所以高字都為零,這樣相當(dāng)于將原來(lái)的值乘了一個(gè) 2 的 16 次方的數(shù),遠(yuǎn)遠(yuǎn)超過(guò)了模擬量的上限,所以才出現(xiàn)了以上情況。
為了解決以上問(wèn)題,需要將 PLC 中的數(shù)據(jù)讀入,然后依次高低字顛倒,然后再將趨勢(shì)圖的曲線地址指向存儲(chǔ)修正數(shù)據(jù)的內(nèi)部地址即可。為了完成這個(gè)功能,需要用到 UG00S-CW 的宏指令,富士 UG00S-CW 平臺(tái)提供了豐富的宏命令集,
主要有以下幾類(lèi):
屏幕類(lèi),當(dāng)打開(kāi)一個(gè)界面時(shí)可執(zhí)行的 OPEN macro ,當(dāng)關(guān)閉一個(gè)界面時(shí)可執(zhí)行的 CLOSE macro ,當(dāng)打開(kāi)一個(gè)界面后不斷循環(huán)執(zhí)行直到這個(gè)界面關(guān)閉為止時(shí)停止的 CYCLE macro 。
按鈕類(lèi),當(dāng)按下一個(gè)按鈕時(shí)可執(zhí)行的 ON macro 和當(dāng)松開(kāi)一個(gè)按鈕時(shí)可執(zhí)行的 OFF macro 。
宏模式,即宏指令程序段受某一個(gè)比特位的控制,當(dāng)這一位為 1 時(shí)執(zhí)行,為 0 時(shí)停止,這個(gè)比特位可以是 PLC 中的地址,也可以是觸摸屏的內(nèi)部地址。
富士 UG00S-CW 的宏命令集和匯編語(yǔ)言非常相似,不過(guò)此外還增加了許多系統(tǒng)命令功能和輔助功能,使得開(kāi)發(fā)程序更加方便快捷。觸摸屏中的存儲(chǔ)格式是字,地址用 $u 來(lái)表示,例如 $u1000 就表示第 1000 個(gè)字, $u1000-14 就表示第 1000 個(gè)字的第 14 位,觸摸屏中沒(méi)有用來(lái)表示字節(jié)的地址表示方式。在這個(gè)食品生產(chǎn)線上有多個(gè) PID 控制回路,每個(gè)回路對(duì)應(yīng)一個(gè)趨勢(shì)圖,以第一個(gè)回路為例,它占用 Buffer1 (比較多有 12 個(gè) Buffer 可供使用)趨勢(shì)圖有三條曲線 PV 、 SP 、 OP ,它們所對(duì)應(yīng)的 PLC 地址分別為 DB10 : DBD0 , DB10 : DBD4 , DB10 : DBD8 ,然后將調(diào)整后的地址存入定為 $u500~$u505 ,程序段如下:
/* 首先將模擬量讀入觸摸屏內(nèi)部,使用塊賦值 BMOV 指令,即將 DB10 : DBD0~ DB10 : DBD8 賦值到 $u500~$u505*/
$u500=DB0010 : 0000 C : 12 ( BMOV )
// 下面將各個(gè)量的高字和低字顛倒
$u600=$u500 ( W )
$u500=$u501 ( W )
$u501=$u600 ( W )
$u602=$u502 ( W )
$u502=$u503 ( W )
$u503=$u602 ( W )
$u604=$u504 ( W )
$u500=$u505 ( W )
$u505=$u604 ( W )
然后將此程序段拷貝到每一屏幕的 CYCLE macro 中,然后將 buffer 地址初始地址指向 $500 ,抽樣模式定為: Constant Sample ,曲線條數(shù)(即 No. of Word )定為 3 條,存儲(chǔ)長(zhǎng)度為 500 ,其他的設(shè)置為默認(rèn)值,趨勢(shì)圖中對(duì)應(yīng)三條曲線的地址改為 $u500,$u502,$u504 ,這樣才能保證觸摸屏中的數(shù)據(jù)和 PLC 中的數(shù)據(jù)同步更新。將程序下載到觸摸屏,經(jīng)過(guò)聯(lián)機(jī)測(cè)試,一切正常。
3 結(jié)束語(yǔ)
富士觸摸屏以及西門(mén)子 PLC 由于其產(chǎn)品具有很高的穩(wěn)定性,而且在軟件開(kāi)發(fā)上非常高效快捷,因此在工控方面,兩者相結(jié)合是一個(gè)很不錯(cuò)的選擇,能夠充分發(fā)揮兩者的優(yōu)點(diǎn)。但是由于兩者畢竟不是同一廠商,所以難免會(huì)在某些細(xì)節(jié)的兼容性上會(huì)有紕漏,這是我們?cè)谠O(shè)計(jì)工控系統(tǒng)時(shí)特別要注意的地方,硬件漏洞軟件補(bǔ)是
IT 界永恒不變的方法,在開(kāi)發(fā)商還沒(méi)有使他們的產(chǎn)品盡善盡美之前,我們應(yīng)當(dāng)運(yùn)用我們自己的智慧來(lái)完善我們的系統(tǒng)。