羅超
(云南省電子信息高級(jí)技工學(xué)校,昆明650225)
傳統(tǒng)的PLC實(shí)訓(xùn)系統(tǒng)存在直觀性差、建設(shè)空間和面積占用大等缺點(diǎn)。在此,基于組態(tài)王設(shè)計(jì)四層電梯仿真實(shí)訓(xùn)平臺(tái),詳細(xì)闡述平臺(tái)的設(shè)計(jì)和構(gòu)建過程,這為同類院校構(gòu)建類似仿真實(shí)訓(xùn)平臺(tái)提供借鑒和參考,在教學(xué)試用中,效果良好。
組態(tài)軟件;組態(tài)王;四層電梯;PLC;仿真平臺(tái);實(shí)驗(yàn)平臺(tái)
《可編程序控制器》是實(shí)踐性和應(yīng)用性都很強(qiáng)的一門課程,是電氣信息類等專業(yè)的必修課,實(shí)驗(yàn)實(shí)訓(xùn)教學(xué)是該課程的一個(gè)重要環(huán)節(jié)[1-2]。在PLC的實(shí)訓(xùn)教學(xué)中,傳統(tǒng)的PLC實(shí)訓(xùn)系統(tǒng)采用模擬屏結(jié)合指示燈的方法進(jìn)行演示[3],學(xué)生無法直觀看到系統(tǒng)真實(shí)被控對(duì)象的動(dòng)作狀態(tài)及工藝流程,直觀性差,同時(shí)也降低了實(shí)驗(yàn)效果和學(xué)生對(duì)PLC實(shí)驗(yàn)的興趣[3]。要想逼真地演示系統(tǒng)中被控對(duì)象的動(dòng)作狀態(tài)及工藝流程(如液位變化、接觸器動(dòng)作、指示燈點(diǎn)亮、傳感器狀態(tài)、電動(dòng)機(jī)運(yùn)轉(zhuǎn)、控制系統(tǒng)工藝流程等),必須提供真實(shí)的被控對(duì)象(如儲(chǔ)水罐、電磁閥、接觸器、指示燈、電動(dòng)機(jī)、傳感器等)。然而,真實(shí)的系統(tǒng)被控對(duì)象存在占地面積大、空間需求高、質(zhì)量大、價(jià)格高、出現(xiàn)問題不易維修等缺點(diǎn)[3-4],不利于學(xué)校實(shí)訓(xùn)教學(xué)的開展。在此,以四層電梯仿真實(shí)訓(xùn)平臺(tái)構(gòu)建為例,設(shè)計(jì)了基于組態(tài)王的PLC四層電梯仿真實(shí)訓(xùn)平臺(tái),詳細(xì)闡述了平臺(tái)的構(gòu)建過程和構(gòu)建方法,這為實(shí)訓(xùn)室建設(shè)空間受限、面積有限的職業(yè)院校開發(fā)、構(gòu)建類似仿真實(shí)訓(xùn)平臺(tái)提供了借鑒和參考。同時(shí),由于仿真平臺(tái)可以以動(dòng)畫方式直觀展示系統(tǒng)運(yùn)行狀態(tài)和工藝流程,這提升了實(shí)訓(xùn)教學(xué)的趣味性和直觀性,有利于增強(qiáng)學(xué)生學(xué)習(xí)的興趣和主觀能動(dòng)性,達(dá)到錘煉學(xué)生設(shè)計(jì)復(fù)雜PLC程序的能力。
四層電梯仿真實(shí)訓(xùn)系統(tǒng)由安裝于上位機(jī)計(jì)算機(jī)的基于組態(tài)王6.55開發(fā)的仿真實(shí)訓(xùn)平臺(tái)和下位機(jī)PLC軟硬件組成,如圖1所示。①仿真實(shí)訓(xùn)平臺(tái)由模擬生產(chǎn)實(shí)際中的各種輸入設(shè)備、被控對(duì)象及執(zhí)行元件等圖形對(duì)象、變量及程序構(gòu)成,用于直觀展示控制系統(tǒng)運(yùn)行時(shí)各種器件的動(dòng)作狀態(tài)和運(yùn)行工藝;②下位機(jī)PLC的軟硬件用于執(zhí)行學(xué)生編寫的PLC程序。
圖1 仿真實(shí)訓(xùn)平臺(tái)構(gòu)成
圖2是已開發(fā)完成的四層電梯仿真實(shí)訓(xùn)平臺(tái),主要由一個(gè)個(gè)不同種類和作用的圖素對(duì)象堆砌而成,包括指令元件(外召按鈕、轎廂內(nèi)選按鈕、平層傳感器、上下終端保護(hù)開關(guān)等)、執(zhí)行元件(曳引電動(dòng)機(jī)、門機(jī)電動(dòng)機(jī)、外召顯示及方向、轎廂顯示及方向等)和生產(chǎn)環(huán)境(機(jī)房、轎廂、井道、底坑、曳引輪、導(dǎo)向輪、曳引鋼絲繩、層門、緩沖器、限速器等)等。從圖2中可看出,要構(gòu)建四層電梯仿真實(shí)訓(xùn)平臺(tái),必須逐一設(shè)計(jì)、制作一個(gè)個(gè)的單個(gè)圖形對(duì)象,最后將這些圖形對(duì)象組態(tài)為仿真平臺(tái)的圖形畫面。這些圖形對(duì)象有的從組態(tài)王圖庫中直接調(diào)用,有的需要人為使用組態(tài)王工具箱制作,有的甚至需要編寫與圖形對(duì)象相關(guān)的組態(tài)王C語言程序,才能保證圖形對(duì)象的正常運(yùn)行。
圖2 四層電梯仿真實(shí)訓(xùn)平臺(tái)
圖2中,因四層電梯仿真實(shí)訓(xùn)平臺(tái)的組成圖形對(duì)象較多,難以一一列舉。在此,僅以樓層顯示器圖素對(duì)象為例,詳細(xì)闡述復(fù)雜圖素對(duì)象的設(shè)計(jì)和構(gòu)建過程。
樓層顯示器主要用于在轎廂和層站處顯示電梯轎廂當(dāng)前所處樓層的位置,如圖3(a)所示。在仿真實(shí)訓(xùn)平臺(tái)中,要構(gòu)建樓層顯示器,須經(jīng)歷以下步驟。①制作單個(gè)“8”字形圖形對(duì)象。每個(gè)“8”是由7條“-”直線圖形對(duì)象構(gòu)成,每條“-”直線對(duì)象均是獨(dú)立的圖形對(duì)象且有自己的動(dòng)畫連接屬性。在此,使用組態(tài)王開發(fā)環(huán)境的工具箱“直線”工具,依次繪制8條直線,并排列為8字形。②定義變量。在組態(tài)王的數(shù)據(jù)詞典中定義7個(gè)離散型變量a,b,c,d,e,f,g(因每個(gè)“8”由7條“-”直線對(duì)象構(gòu)成,因此需要定義7個(gè)離散變量),每個(gè)離散變量對(duì)應(yīng)一條“-”直線圖形對(duì)象。③建立動(dòng)畫連接。在每條直線對(duì)象的“線屬性”動(dòng)畫連接中,建立7個(gè)離散變量與7條直線圖形對(duì)象(每個(gè)”8”由7條直線構(gòu)成)之間的動(dòng)畫連接。系統(tǒng)運(yùn)行時(shí),通過每個(gè)離散變量值(0或1)的變化,控制每條直線對(duì)象顯示不同的顏色,通過7個(gè)離散變量值的變化的組合,實(shí)現(xiàn)字符0~9的顯示,這類似于七段數(shù)碼管的顯示。④制作圖素精靈。利用組態(tài)王中的“創(chuàng)建圖素精靈”命令,將上述步驟中已建立動(dòng)畫連接的單個(gè)”8”字形圖形對(duì)象轉(zhuǎn)換為圖素精靈,并保存于組態(tài)王的圖庫中。在此,創(chuàng)建圖素精靈的目的在于可以重復(fù)使用該圖形對(duì)象。⑤構(gòu)建樓層顯示器。如圖3(a)所示,樓層顯示器由兩個(gè)單個(gè)“8”字形的圖形對(duì)象和一個(gè)矩形圖形對(duì)象(黃色底色)構(gòu)成。因此,從組態(tài)王的圖庫中調(diào)取兩個(gè)”8”字形圖庫精靈并繪制一個(gè)填充色為黃色的矩形圖形對(duì)象,經(jīng)排列、對(duì)齊,構(gòu)成完整的樓層顯示器。⑥創(chuàng)建自定義譯碼函數(shù)。該函數(shù)主要實(shí)現(xiàn)待顯示字符0~9到七段數(shù)碼管之間字型碼的譯碼功能。⑦調(diào)試驗(yàn)證。此處主要用于驗(yàn)證程序運(yùn)行時(shí),樓層顯示器是否正確顯示,自定義譯碼函數(shù)是否正確。運(yùn)行中的樓層顯示器如圖3(b)所示。至此,整個(gè)樓層顯示器圖素對(duì)象構(gòu)建完畢。實(shí)際開發(fā)中,也可將樓層顯示器創(chuàng)建為圖素精靈,以方便重復(fù)使用。另外,圖形對(duì)象的制作也可參見文獻(xiàn)[5-6]。
圖3 樓層顯示器動(dòng)作前后圖素對(duì)象效果對(duì)比
根據(jù)上述樓層顯示器的制作方法,繪制、制作圖2中四層電梯仿真實(shí)訓(xùn)平臺(tái)所需的圖素對(duì)象和圖素精靈,定義相應(yīng)的變量,建立動(dòng)畫連接,構(gòu)建完成四層電梯仿真實(shí)訓(xùn)平臺(tái)。為使仿真實(shí)訓(xùn)平臺(tái)產(chǎn)生滿足工藝要求的動(dòng)畫效果,還應(yīng)根據(jù)工藝流程需要,建立一些輔助的內(nèi)存變量,用于控制電梯轎廂升降、曳引輪旋轉(zhuǎn)等動(dòng)畫效果,在此不作詳述。
在完成四層電梯仿真實(shí)訓(xùn)平臺(tái)畫面構(gòu)建后,應(yīng)根據(jù)四層電梯運(yùn)行控制要求,編寫滿足工藝要求的輔助命令語言程序,以保證滿足工藝要求的動(dòng)畫效果和仿真平臺(tái)的正常運(yùn)行。由于組態(tài)王的應(yīng)用程序命令語言和畫面命令語言采用的是類似MCS-51單片機(jī)的循環(huán)輪詢程序執(zhí)行方式,為保證程序邏輯和編程者思維的清晰,根據(jù)經(jīng)驗(yàn),應(yīng)盡量采用有限狀態(tài)機(jī)的方法編制組態(tài)王的命令語言程序。在單片機(jī)中,狀態(tài)機(jī)一般采用C語言的switch語句實(shí)現(xiàn),但是,由于組態(tài)王不支持switch語句,狀態(tài)機(jī)程序可以采用if…else語句實(shí)現(xiàn)。
此外,在構(gòu)建組態(tài)王的仿真實(shí)訓(xùn)平臺(tái)時(shí),為方便調(diào)試程序(與下位機(jī)PLC程序無關(guān)),可先把所變量定義為內(nèi)存變量,待上位機(jī)組態(tài)王仿真實(shí)訓(xùn)平臺(tái)開發(fā)、調(diào)試成功后,再將必要的變量修改為I/O變量,與下位機(jī)PLC進(jìn)行聯(lián)調(diào)。
在完成上述工作后,在組態(tài)王中運(yùn)行仿真平臺(tái),調(diào)試、驗(yàn)證仿真平臺(tái)的正確性。至此,仿真實(shí)訓(xùn)平臺(tái)開發(fā)完畢。
為保證仿真實(shí)訓(xùn)系統(tǒng)的正常使用,開展實(shí)驗(yàn)時(shí),應(yīng)完成以下步驟。①給出I/O變量表。實(shí)驗(yàn)時(shí),應(yīng)給出四層電梯仿真實(shí)訓(xùn)平臺(tái)與下位機(jī)PLC鏈接軟元件的I/O變量表,以供學(xué)生編寫PLC程序時(shí)使用。②設(shè)置通信參數(shù)。應(yīng)在學(xué)生實(shí)驗(yàn)前,設(shè)置好上位計(jì)算機(jī)和下位PLC的通信參數(shù),保證計(jì)算機(jī)和PLC通信正常。③編寫PLC程序。根據(jù)步驟1中給出的I/O變量,學(xué)生自行編寫四層電梯的PLC程序,之后將編寫完的PLC程序下載到的PLC中。④運(yùn)行仿真實(shí)訓(xùn)系統(tǒng)。同時(shí)運(yùn)行四層電梯仿真實(shí)訓(xùn)平臺(tái)和下位機(jī)PLC中的程序。據(jù)四層電梯控制要求,在仿真實(shí)訓(xùn)平臺(tái)中操作外召按鈕、轎廂內(nèi)選按鈕等指令元件,觀察PLC程序執(zhí)行時(shí),仿真實(shí)訓(xùn)平臺(tái)中的各種元器件是否按工藝要求產(chǎn)生相應(yīng)動(dòng)作和動(dòng)畫。若各種對(duì)象按工藝要求產(chǎn)生動(dòng)作動(dòng)畫,說明PLC中的梯形圖程序編寫正確,反之,說明PLC中程序存在錯(cuò)語。應(yīng)分析、判斷PLC程序的出錯(cuò)原因,反復(fù)調(diào)試PLC程序,直到PLC程序滿足工藝要求。與PLC處于聯(lián)調(diào)狀態(tài)、運(yùn)行中的四層電梯仿真實(shí)訓(xùn)平臺(tái)如圖4(a)、(b)所示。注意:實(shí)訓(xùn)教學(xué)時(shí),仿真實(shí)訓(xùn)平臺(tái)已由教師開發(fā)完成且保證上下位機(jī)通信正常,學(xué)生只需按給定的變量表,編寫PLC程序,通過觀察仿真實(shí)訓(xùn)平臺(tái)中各種對(duì)象的動(dòng)作和狀態(tài),調(diào)試PLC程序即可。
圖4 運(yùn)行中的仿真實(shí)訓(xùn)平臺(tái)
四層電梯仿真實(shí)訓(xùn)平臺(tái)能以動(dòng)畫的方式直觀展示系統(tǒng)中各部件的動(dòng)作狀態(tài)及運(yùn)行工藝。它彌補(bǔ)了傳統(tǒng)實(shí)訓(xùn)系統(tǒng)直觀性差的缺點(diǎn),有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,提高學(xué)生學(xué)習(xí)的主動(dòng)性,增強(qiáng)學(xué)習(xí)效果和學(xué)習(xí)的趣味性。同時(shí),它也為資金匱乏、實(shí)驗(yàn)場地建設(shè)受限的院校構(gòu)建類似仿真實(shí)訓(xùn)平臺(tái)提供借鑒和參考。在教學(xué)試用中,效果良好。