謝小成,姜莉莉,許玉枝
(廣東工業(yè)大學(xué) 機(jī)電工程學(xué)院,廣東 廣州 510006)
隨著我國國內(nèi)生產(chǎn)成本的不斷攀升,傳統(tǒng)生產(chǎn)模式的企業(yè)利潤越來越低.如何提高企業(yè)的生產(chǎn)效率和質(zhì)量,已經(jīng)成為攸關(guān)企業(yè)生存的大問題.生產(chǎn)自動(dòng)化作為一種快速提高企業(yè)生產(chǎn)效率的方式,已經(jīng)成為國內(nèi)生產(chǎn)企業(yè)產(chǎn)業(yè)升級(jí)的發(fā)展趨勢(shì).由于生產(chǎn)自動(dòng)化是一個(gè)相當(dāng)復(fù)雜的系統(tǒng),為了確保實(shí)現(xiàn)產(chǎn)業(yè)升級(jí)的目標(biāo),必須引入一種能夠?qū)φ麄€(gè)系統(tǒng)進(jìn)行全面評(píng)估的方法.系統(tǒng)仿真作為一種全面分析、設(shè)計(jì)、運(yùn)行、評(píng)價(jià)復(fù)雜系統(tǒng)的重要工具[1],因而被廣泛地運(yùn)用在企業(yè)生產(chǎn)自動(dòng)化升級(jí)改造過程中[2-6].
仿真建模需要采集生產(chǎn)現(xiàn)場的各種設(shè)備參數(shù)和生產(chǎn)過程的各種工藝參數(shù).設(shè)備參數(shù)一般可以通過現(xiàn)場設(shè)備來直接獲取,生產(chǎn)工藝參數(shù)則必須通過大量的生產(chǎn)數(shù)據(jù)來總結(jié).因此,如何準(zhǔn)確有效地采集生產(chǎn)過程數(shù)據(jù)并將其轉(zhuǎn)化為生產(chǎn)工藝參數(shù),是仿真建模過程中必須解決的問題.一般情況下,生產(chǎn)過程參數(shù)是由人工來采集和總結(jié)的,這就使得仿真工藝參數(shù)不能準(zhǔn)確及時(shí)地反映現(xiàn)實(shí)生產(chǎn)狀況.
可編程邏輯控制器(PLC)作為一種專為工業(yè)自動(dòng)化控制現(xiàn)場環(huán)境而設(shè)計(jì)的控制器,因其具有編程簡單、通用性好、抗干擾能力強(qiáng)和可靠性高等特點(diǎn)而廣泛應(yīng)用在自動(dòng)化生產(chǎn)中,已經(jīng)成為現(xiàn)代工業(yè)自動(dòng)化的主要支柱之一[7].PLC作為一種工業(yè)控制器,除了具有強(qiáng)大的工業(yè)控制能力外,還具有數(shù)據(jù)處理和通信聯(lián)網(wǎng)功能.在先進(jìn)的工業(yè)網(wǎng)絡(luò)技術(shù)的幫助下,PLC可以迅速有效地收集、傳送和管理生產(chǎn)數(shù)據(jù)[8-9].本文將提出一種建立實(shí)時(shí)仿真模型的方法來獲取生產(chǎn)過程數(shù)據(jù).該實(shí)時(shí)仿真模型是一種以 Flexsim仿真軟件為平臺(tái),以 PLC控制的自動(dòng)化生產(chǎn)過程為仿真對(duì)象的三維實(shí)時(shí)動(dòng)態(tài)仿真模型.
本文設(shè)計(jì)的實(shí)時(shí)仿真系統(tǒng)將主要由仿真引擎、決策系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、仿真模型、數(shù)據(jù)模型、仿真輸出以及設(shè)備間的通信組成.仿真引擎主要在綜合仿真模型信息、實(shí)時(shí)參數(shù)和決策狀態(tài)修改指令等參數(shù)后,生成離散任務(wù)并安排事件觸發(fā);決策系統(tǒng)可以根據(jù)實(shí)時(shí)參數(shù)對(duì)系統(tǒng)運(yùn)行狀態(tài)進(jìn)行評(píng)估和修改;數(shù)據(jù)采集系統(tǒng)接收來自自動(dòng)化控制系統(tǒng)的加工信號(hào),采集其中各設(shè)備和工件的實(shí)時(shí)加工數(shù)據(jù),并將這些數(shù)據(jù)保存到數(shù)據(jù)模型中.實(shí)時(shí)仿真系統(tǒng)主要的工作流程為:
1)數(shù)據(jù)采集系統(tǒng)實(shí)時(shí)采集自動(dòng)化控制現(xiàn)場的加工數(shù)據(jù),包括設(shè)備的加工狀態(tài),零件的加工工序,加工時(shí)間等,并將這些數(shù)據(jù)保存到對(duì)應(yīng)的數(shù)據(jù)模型中.
2)仿真引擎獲取實(shí)時(shí)仿真模型中的相關(guān)信息,如設(shè)備信息,現(xiàn)場布局信息,設(shè)備可利用信息和各設(shè)備間的相互關(guān)系等.
3)仿真引擎接收來自數(shù)據(jù)模型的實(shí)時(shí)參數(shù),主要包括工件和設(shè)備的實(shí)時(shí)加工信息.
4)仿真引擎綜合實(shí)時(shí)參數(shù)和模型信息后,向決策系統(tǒng)發(fā)出狀態(tài)修改請(qǐng)求指令.
5)仿真引擎根據(jù)決策系統(tǒng)的狀態(tài)修改指令對(duì)仿真系統(tǒng)的運(yùn)行狀態(tài)進(jìn)行修改.
6)實(shí)時(shí)仿真系統(tǒng)在運(yùn)行相應(yīng)的時(shí)間后,暫停系統(tǒng)運(yùn)行,輸出各仿真實(shí)體的過程數(shù)據(jù).
實(shí)時(shí)仿真系統(tǒng)框架結(jié)構(gòu)如圖 1所示.
實(shí)時(shí)仿真系統(tǒng)對(duì)實(shí)時(shí)數(shù)據(jù)的響應(yīng)模式:當(dāng)實(shí)時(shí)參數(shù)與模型實(shí)體的參數(shù)存在差異時(shí),可通過相應(yīng)的仿真實(shí)體腳本程序不斷循環(huán)刷新實(shí)體狀態(tài)參數(shù)來實(shí)現(xiàn).
實(shí)時(shí)仿真模型的數(shù)據(jù)處理過程主要包括 PLC控制現(xiàn)場數(shù)據(jù)采集和 Flexsim模型運(yùn)行所需數(shù)據(jù)調(diào)用.PLC與 Flexsim間的數(shù)據(jù)傳輸是以數(shù)據(jù)庫為中介的,如圖 2所示.
在數(shù)據(jù)傳輸過程中,PLC,DB和 Flexsim三者之間的數(shù)據(jù)變量存在一一對(duì)應(yīng)的關(guān)系.在數(shù)據(jù)采集時(shí),將 PLC的控制數(shù)據(jù)保存到對(duì)應(yīng)的數(shù)據(jù)庫變量中;在數(shù)據(jù)調(diào)用時(shí),從數(shù)據(jù)庫中找到與 Flexsim設(shè)備名稱相對(duì)應(yīng)的設(shè)備變量值,并將此值賦給仿真實(shí)體的對(duì)應(yīng)變量.在整個(gè)實(shí)時(shí)仿真模型的數(shù)據(jù)處理過程中,共用到四款軟件:Step7 v5.4+PLCSIM v5.3+WinCC v6.2+ SQL2005.其中,PLCSIM v5.3是一款 PLC仿真軟件.由于PLCSIM可以很好地模擬真實(shí) PLC的控制過程,同時(shí)為了更好地展示仿真模型與 PLC控制的同步過程,本文選用S7-PLCSIM作為自動(dòng)化控制設(shè)備.
Step v5.4,PLCSIM v5.3和 WinCC v6.2是西門子公司基于全集成自動(dòng)化系統(tǒng)的思路而設(shè)計(jì)的三款軟件.全集成自動(dòng)化 TIA(Totally Integrated Automation)即統(tǒng)一的組態(tài)和編程,統(tǒng)一的數(shù)據(jù)庫管理和統(tǒng)一的通信,是集統(tǒng)一性和開放性于一身的自動(dòng)化技術(shù)[10].因此,PLC控制系統(tǒng)在集成自動(dòng)化技術(shù)框架下,可以將仿真 PLC和仿真實(shí)驗(yàn)對(duì)象集成在一臺(tái)計(jì)算機(jī),實(shí)現(xiàn) PLC控制系統(tǒng)的全仿真.全仿真 PLC系統(tǒng)結(jié)構(gòu)框架如圖 3所示.
如圖 3所示,PLC全仿真控制系統(tǒng)由三個(gè)軟件通過各自的對(duì)應(yīng)接口相連.該系統(tǒng)不需要任何硬件就實(shí)現(xiàn)了將 PLC編程軟件、PLC本身和組態(tài)軟件的所有功能集成于一臺(tái)計(jì)算機(jī)上.在全集成自動(dòng)化的系統(tǒng)架構(gòu)下,不需要為這些程序之間的通信編寫程序就可以進(jìn)行通信,大大簡化了 PLC實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)難度[11].
對(duì)于 PLC特定變量的采集,也可以通過WinCC的全局 VBS腳本動(dòng)作和全局 C腳本動(dòng)作來實(shí)現(xiàn).下面一段代碼是在 WinCC全局 C腳本中觸發(fā)一段程序,其作用是旨在周期性地通過內(nèi)部變量來采集與 PLC相關(guān)聯(lián)的外部變量的值.同理,也可以通過內(nèi)部變量來改變外部變量的方式,實(shí)現(xiàn)對(duì) PLC的控制狀態(tài)的操控.
Set TagBit("output",Get TagBit("P100"));//內(nèi)部變量 P100賦值給外部變量output
Set TagDouble("Tank100",GetTagDouble//外部變量賦值給內(nèi)部變量 Tank100
VB作為一種可視化的、面向?qū)ο蠛筒捎檬录?qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語言,可直接調(diào)用Windows內(nèi)部的廣泛應(yīng)用程序接口(API)函數(shù),動(dòng)態(tài)鏈接庫(DLL),對(duì)象的鏈接與嵌入(OLE),開放式數(shù)據(jù)連接(ODBC)等技術(shù)[12].利用 WinCC中 VBS全局腳本觸發(fā)器,可以快速建立 WinCC與具有數(shù)據(jù)源名稱 (DSN)的數(shù)據(jù)庫連接,并且可運(yùn)用 objcommand.execute等操作命令對(duì)數(shù)據(jù)庫進(jìn)行數(shù)據(jù)庫修改、更新和讀寫等指令操作[13].
因此,在西門子全集成自動(dòng)化框架下,通過WinCC的全局腳本,可以很方便地采集 PLC中的設(shè)備控制參數(shù),并可將這些數(shù)據(jù)保存到各種開放式的數(shù)據(jù)庫中.
Flexsim是美國 Flexsim公司開發(fā)的,迄今為止世界上第一個(gè)在圖形環(huán)境中集成了 C++IDE和編譯器的仿真軟件.Flexsim的資料、圖像和結(jié)果都可以與其它軟件公用,而且它可以從 Excel表讀取資料和輸出資料(或任何 ODBC DAT ABASE),可以從生產(chǎn)線上讀取實(shí)時(shí)資料以作分析功能[14-15].
Flexsim可通過 ODBC接口訪問 Access,SQL server等數(shù)據(jù)庫,從數(shù)據(jù)庫中讀取相關(guān)數(shù)據(jù)信息.其主要操作步驟為:①在 Windows系統(tǒng)下創(chuàng)建數(shù)據(jù)源名稱,用以定義一個(gè)數(shù)據(jù)庫和必須用到的 ODBC驅(qū)動(dòng)程序;② 在 Flexsim的任何腳本中都可以利用dbopen()命令打開相關(guān)數(shù)據(jù)庫.如:通過 Flexsim實(shí)體腳本中輸入語句命令即可建立與 DSN名為數(shù)據(jù)庫的鏈接.因此Flexsim可對(duì)數(shù)據(jù)庫上相關(guān)數(shù)據(jù)進(jìn)行調(diào)用.另外,Flexism中也存在如 Custom Draw Code等實(shí)時(shí)觸發(fā)的腳本.所以,以 Flexsim軟件作為仿真平臺(tái),利用腳本觸發(fā)器可以實(shí)時(shí)讀取數(shù)據(jù)庫中的數(shù)據(jù).
仿真實(shí)例是基于廣東工業(yè)大學(xué) CALS實(shí)驗(yàn)室的“環(huán)保型廢舊輪胎綜合處理設(shè)備”項(xiàng)目中產(chǎn)品油回收油路控制系統(tǒng)的相關(guān)功能需求來設(shè)計(jì)的.其主要設(shè)備包括一個(gè)進(jìn)油閥門,一個(gè)出油閥門,上限液位傳感器,下限液位傳感器,集油罐容器等設(shè)備見圖 4.該油路的 PLC控制過程要求能實(shí)現(xiàn)自動(dòng)啟動(dòng)、自動(dòng)停止和自動(dòng)預(yù)警等功能.
圖4 集油罐Fig.4 Gathering tank
圖5 仿真實(shí)體與組態(tài)控制Fig.5 Simulation object and configuration control
圖6 仿真輸出與組態(tài)過程對(duì)比Fig.6 Contrast between the simulation output and the config uration progress
圖7 實(shí)時(shí)仿真數(shù)據(jù)輸出Fig.7 Output data of real-time simulation
當(dāng)上一級(jí)煉油設(shè)備有初級(jí)原油輸出時(shí),打開進(jìn)油閥;當(dāng)集油罐中的油位上升到上限位傳感器時(shí),打開出油閥;當(dāng)集油罐中的油位下降到下限位傳感器時(shí),關(guān)閉輸出閥;開始下一個(gè)工作流程;當(dāng)上一級(jí)煉油設(shè)備沒有原油輸出時(shí),關(guān)閉進(jìn)油閥和輸油閥.
在油路控制實(shí)時(shí)仿真中,Flexsim需要采集PLC控制系統(tǒng)中的 5個(gè)過程變量,分別是進(jìn)油閥的開關(guān)量,出油閥的開關(guān)量,上限位傳感器值,下限位傳感器值和集油罐容量.當(dāng)油路 PLC控制系統(tǒng)控制現(xiàn)場設(shè)備的狀態(tài)參數(shù)發(fā)生變化時(shí),Flexsim相對(duì)應(yīng)地根據(jù)相關(guān)采集參數(shù)的變化來改變仿真模型狀態(tài).圖 5(a)為集油罐在 Flexsim中的仿真模型,其中實(shí)體 FluidTank2右側(cè)長方條為其液位標(biāo)示,左右折管分別為輸入輸出閥.
WinCC是作為一種過程監(jiān)視軟件,具有對(duì)PLC的狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控的特性.為了對(duì)比本文所設(shè)計(jì)的仿真系統(tǒng)的實(shí)時(shí)性,對(duì)油路 PLC控制系統(tǒng)建立了基于WinCC的組態(tài)監(jiān)控系統(tǒng),圖 5(b)為油路控制系統(tǒng)的WinCC控制界面.
運(yùn)行油路控制實(shí)時(shí)仿真系統(tǒng)與WinCC組態(tài)監(jiān)控系統(tǒng),使集油罐進(jìn)出油工作一個(gè)周期,分別得出 Flexsim和 WinCC中如圖 6所示的油位隨時(shí)間變化圖.其中(a)圖為 Flexsim的仿真輸出,(b)圖為WinCC組態(tài)監(jiān)控輸出.需要說明的是,由于集油罐中出油的速率是進(jìn)油速率的兩倍,所以兩圖中的油位與時(shí)間兩分段函數(shù)直線與時(shí)間軸所成的角度分別為 45°和 60°.從(a)(b)兩圖可以看出,Flexsim實(shí)時(shí)仿真系統(tǒng)較好地保持了與 PLC運(yùn)行狀態(tài)的一致性.
油路控制系統(tǒng)實(shí)時(shí)仿真不僅實(shí)現(xiàn)了仿真效果與自動(dòng)化生產(chǎn)現(xiàn)場運(yùn)行狀態(tài)的同步,而且對(duì)現(xiàn)實(shí)系統(tǒng)進(jìn)行了全面的數(shù)據(jù)收集,這其中包括系統(tǒng)中設(shè)備的運(yùn)行利用率,各種事件的觸發(fā)時(shí)間以及相關(guān)變量的變化等,如圖 7所示.
本文建立了面向 PLC自動(dòng)化控制生產(chǎn)過程的仿真系統(tǒng),該系統(tǒng)不僅實(shí)現(xiàn)了對(duì) PLC自動(dòng)化生產(chǎn)系統(tǒng)的實(shí)時(shí)仿真,而且記錄了所有仿真過程參數(shù).仿真過程參數(shù)的采集將有助于提取自動(dòng)化生產(chǎn)現(xiàn)場的過程工藝參數(shù),這就為對(duì)現(xiàn)實(shí)系統(tǒng)作進(jìn)一步的分析優(yōu)化和仿真優(yōu)化建模提供了數(shù)據(jù)基礎(chǔ).由于仿真優(yōu)化是基于現(xiàn)實(shí)系統(tǒng)的運(yùn)行過程數(shù)據(jù),所以可信度大大提升.實(shí)時(shí)仿真的實(shí)現(xiàn)也拓展了仿真在自動(dòng)化生產(chǎn)中的應(yīng)用,使得仿真可以對(duì)整個(gè)自動(dòng)化生產(chǎn)過程進(jìn)行數(shù)據(jù)采集和仿真優(yōu)化,這將有助于提升自動(dòng)化生產(chǎn)的生產(chǎn)效率.
[1]humfa,計(jì)算機(jī)仿真 [EB/O L].(2011.9.8)[2011.9.18]http://baike.baidu.com/view/113908.htm.
[2]卓奕君.基于 Flexsim的生產(chǎn)線優(yōu)化設(shè)計(jì)[J].北京信息科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,26(3):83.Zhuo Yijun.Design of optimized product lines based on flexsim[J].Journal of Beijing Information Science& Technology University,2011,26(3): 83. (in Chinese)
[3]寶斯琴塔娜.基于 FLEXSIM的流水線生產(chǎn)物流優(yōu)化[J].工業(yè)工程與管理,2008(4):106-109.Bao Siqintana.Optimizing the logistics of streamIine based on software FLEX SIM [J]. Industrial Engineering and Management,2008(4):106-109.(in Chinese)
[4]王福鑫,向號(hào).基于 Flexsim軟件的生產(chǎn)線仿真優(yōu)化[J].機(jī)械工程師,2010(11):88-89.Wang Fuxin,Xiang Hao.Simulation and optimization of the production line based on flexsim software[J].M echanical Engineer,2010(11):88-89.(in Chinese)
[5]肖聃.基于車間仿真的工藝經(jīng)濟(jì)性評(píng)價(jià)系統(tǒng)的研究與開發(fā)[J].武漢理工大學(xué),2009(8):79-82.XiaoDan. Research and developmentofprocess economical evaluation system based on workshop simulation[J]. Thesis ofWuhan University of Technology,2009(8):79-82.(in Chinese)
[6]石宇強(qiáng).基于 Flexsim仿真的生產(chǎn)物流系統(tǒng)分析 [J].制造技術(shù)與機(jī)床,2008(6):137.Shi Yuqiang.Analysis on production logistics system based on flexsim simulation software [J].Manufacturing Technology & Anufacturing Technology& MachineTool,2008(6): 137.(in Chinese)
[7]袁池.遠(yuǎn)程監(jiān)控與維護(hù)系統(tǒng)及其在 PC-PLC網(wǎng)絡(luò)上的實(shí)現(xiàn)[J].上海交通大學(xué)學(xué)報(bào),2003,37(3):450.Yuan Chi. Remote monitoring and maintenance system and its realization on PC-PLC network[J].Journal of Shanghai Jiaotong University,2003,37(3):450.(in Chinese)
[8]曹子龍.一種基于 rfid/Plc的生產(chǎn)狀態(tài)數(shù)據(jù)采集技術(shù)[J].工業(yè)控制計(jì)算機(jī),2009,22(8):12-14.Cao Zilong. An RFID/PLC-based technology for acquiring production state data[J].Industrial Control Computer,2009,22(8):12-14.(in Chinese)
[9]何默為.上位機(jī)與 PLC遠(yuǎn)程通信實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)采集研究[J].機(jī)械與電子,2007(4):49-52.He Mowei. Research on using remote serial communication to realize data acquisition [J].Machinery& Electronics,2007(4): 49-52. (in Chinese)
[10]呂增芳.西門子全集成自動(dòng)化理念初探[J].山西電子技術(shù),2006(3):89-90.L ǜ Zengfang. The primary investigates on totally integrated automation principle of siemens[J].Shanxi Electronic Technology, 2006(3): 89-90. (in Chinese)
[11]曾興柱,齊強(qiáng),張鑫意.基于西門子全集成自動(dòng)化技術(shù)的全仿真 PLC實(shí)驗(yàn)系統(tǒng)[J].西安電力高等專科學(xué)校學(xué)報(bào),2009(1):34-36.Zeng Xingzhu,Qi Qiang,Zhang Xiyi.Develop a fully simulated PLC testing system in laboratory by using totally integrated automation principle of siemes[J].Journal of Xi’an Electric Power College,2009(1):34-36.(in Chinese)
[12]李波.基于 V C的 PLC數(shù)據(jù)采集管理系統(tǒng) [J].現(xiàn)代電子技術(shù),2009(6):46-49.Li Bo. PLC data acquisition management system based on VC[J].China Academic Journal Electronic Publishing House,2009(6):46-49.(in Chinese)
[13]楊力,李月恒,于智.基于 WinCC V6.2的 VB腳本操作自定義 SQL數(shù)據(jù)庫[J].工業(yè)控制計(jì)算機(jī),2010(5):23-25.YangLi,Li Yueheng,Yu Zhi.Operating userdefined SQL database based on V BS script of WinCC V6.2[J].Industrial Control Computer 2010(5):23-25.(in Chinese)
[14]戴虎,劉根豹,虞春躍.Flexsim模擬環(huán)境[C].中國系統(tǒng)工程學(xué)會(huì)決策科學(xué)專業(yè)委員會(huì)第六屆學(xué)術(shù)年會(huì)論文集,2005.
[15]賴明勇.物流信息系統(tǒng)驅(qū)動(dòng) Flexsim的仿真互操作機(jī)制研究 [J].湖南大學(xué)學(xué)報(bào)(自然科學(xué)版),2009,36(11):83-87.Lai Mingyong.Simulation interoperating mechanism of logistic information system driven Flexsim[J].Journal of Hunan University(Natural Sciences),2009,36(11):83-87.(in Chinese)