龐海亮,潘 豐
(輕工過(guò)程先進(jìn)控制教育部重點(diǎn)實(shí)驗(yàn)室 江南大學(xué),江蘇無(wú)錫 214122)
?
液洗機(jī)配料控制系統(tǒng)設(shè)計(jì)
龐海亮1,潘 豐2
(輕工過(guò)程先進(jìn)控制教育部重點(diǎn)實(shí)驗(yàn)室 江南大學(xué),江蘇無(wú)錫 214122)
文中通過(guò)對(duì)液洗機(jī)配料過(guò)程的分析,設(shè)計(jì)具有上位機(jī)、下位機(jī)、人機(jī)界面的控制系統(tǒng),為了兼顧配料過(guò)程的高效和高精度,在配料方式上,采取大料原料快速自動(dòng)配料和小料原料掃碼確認(rèn)高精度手動(dòng)配料的解決方案;在配料參數(shù)組態(tài)上,通過(guò)WinCC的腳本工具編寫(xiě)腳本,實(shí)現(xiàn)配方管理功能并采用下載配方的方式進(jìn)行快速參數(shù)組態(tài);在系統(tǒng)報(bào)表生成上,通過(guò)編寫(xiě)腳本和數(shù)據(jù)庫(kù)語(yǔ)句實(shí)現(xiàn)將變量運(yùn)行數(shù)據(jù)導(dǎo)出到Excel表格文件中進(jìn)行報(bào)表統(tǒng)計(jì)的功能。
組態(tài)軟件;液洗機(jī);配料過(guò)程;配方
液狀洗滌用品生產(chǎn)設(shè)備簡(jiǎn)稱(chēng)液洗機(jī),是以均質(zhì)為原理的物料混合設(shè)備,一般用于液狀、油脂性物料的均質(zhì)混合,在化妝品、化工、食品等行業(yè)中應(yīng)用廣泛。液洗機(jī)的生產(chǎn)分為四個(gè)環(huán)節(jié):清洗環(huán)節(jié)、配料環(huán)節(jié)、均質(zhì)生產(chǎn)環(huán)節(jié)、成品出料環(huán)節(jié)。其中配料環(huán)節(jié)中配料精度和原料配比對(duì)產(chǎn)品影響較大,同時(shí)配料速度對(duì)整個(gè)生產(chǎn)效率也有著很大的影響,所以需要解決配料速度和配料精度協(xié)調(diào)的問(wèn)題,在保證配料精度前提下提高配料速度。
本文設(shè)計(jì)了由上位機(jī)、人機(jī)界面、下位機(jī)、掃碼器組成的液洗機(jī)配料控制系統(tǒng),通過(guò)上位機(jī)的配方功能進(jìn)行快速配料參數(shù)組態(tài);在配料方式上,對(duì)大料原料按配方進(jìn)行自動(dòng)稱(chēng)量投料,小料原料通過(guò)掃碼確認(rèn)手動(dòng)稱(chēng)量投料。在數(shù)據(jù)報(bào)表方面,通過(guò)監(jiān)控軟件腳本控件編寫(xiě)功能腳本,將變量運(yùn)行的歷史數(shù)據(jù)導(dǎo)出到外部Excel表格文件中,實(shí)現(xiàn)報(bào)表統(tǒng)計(jì)功能。
液洗機(jī)生產(chǎn)產(chǎn)品的原料可分為,大料原料:投料量較多的原料,存儲(chǔ)于原料儲(chǔ)罐,配料時(shí)采取稱(chēng)重控制自動(dòng)配料方式;小料原料:投料量較小的原料(一般為一些特殊添加物等原料),配料精度要求很高,在配料間由工人掃碼確認(rèn)后手動(dòng)稱(chēng)量投料。
在啟動(dòng)配料前,首先通過(guò)WinCC監(jiān)控系統(tǒng)調(diào)用存儲(chǔ)于工控機(jī)磁盤(pán)中的配方文件,將各個(gè)原料進(jìn)料設(shè)定值讀取到監(jiān)控系統(tǒng)參數(shù)設(shè)置控件中并下載到對(duì)應(yīng)PLC中以完成生產(chǎn)參數(shù)組態(tài)。參數(shù)設(shè)置好后啟動(dòng)配料系統(tǒng)開(kāi)始進(jìn)料,以當(dāng)前所進(jìn)原料為A原料為例。
(1) 先對(duì)A原料的進(jìn)料設(shè)定值進(jìn)行判斷,如果A原料進(jìn)料設(shè)定值為0則所選產(chǎn)品配方中不需要A原料;如果A原料進(jìn)料設(shè)定值不為0則所選產(chǎn)品配方中需要A原料。
(2)假設(shè)A原料的進(jìn)料設(shè)定值為100kg,程序?qū)?duì)A原料儲(chǔ)罐中原料儲(chǔ)量值進(jìn)行判斷,如果儲(chǔ)量值小于進(jìn)料設(shè)定值則系統(tǒng)會(huì)進(jìn)行報(bào)警提示;如果儲(chǔ)量值大于進(jìn)料設(shè)定值則打開(kāi)相應(yīng)的輸料閥門(mén)進(jìn)行輸料。
(3)進(jìn)料過(guò)程是由液洗鍋稱(chēng)重模塊進(jìn)行測(cè)量控制,并通過(guò)對(duì)原料儲(chǔ)罐加壓進(jìn)行快速排料,在進(jìn)料過(guò)程中要對(duì)液洗鍋內(nèi)料體的稱(chēng)重值進(jìn)行實(shí)時(shí)采集,以判斷進(jìn)料量是否達(dá)到設(shè)定值,并采用PID控制算法調(diào)節(jié)比例調(diào)節(jié)閥開(kāi)度來(lái)控制不同階段的進(jìn)料流速,以提高大料配料精度。
(4)當(dāng)A原料進(jìn)料量達(dá)到設(shè)定值時(shí)關(guān)閉原料儲(chǔ)罐輸料閥停止配料,A原料自動(dòng)配料完成,并開(kāi)始下一種大料原料的循環(huán)進(jìn)料過(guò)程。
在結(jié)束大料原料自動(dòng)配料流程后,開(kāi)始小料原料的配料,由于小料原料進(jìn)料量小、配料精度要求高,所以采取人工稱(chēng)量投料的方式。同時(shí)由于小料原料種類(lèi)較多,進(jìn)料量設(shè)定值各不相同,為防止人工誤操作,通過(guò)掃碼器采集原料代號(hào)和配方對(duì)比來(lái)確認(rèn)是否為配方所需小料,如果經(jīng)掃碼確認(rèn)后是配方所需原料,則在配料車(chē)間人機(jī)界面上會(huì)顯示該料進(jìn)料量設(shè)定值,并對(duì)該原料做已投放標(biāo)記;如果不是配方所需原料或者有已投放標(biāo)記,則會(huì)報(bào)警提示。配料流程如圖1所示。
圖1 液洗機(jī)配料工藝流程
2.1 液洗機(jī)配料系統(tǒng)硬件結(jié)構(gòu)
液洗機(jī)配料控制系統(tǒng)以S7-200 PLC作為控制器、研華工控機(jī)預(yù)裝WinCC監(jiān)控系統(tǒng)作為上位機(jī)、Smart Line觸摸屏作為人機(jī)界面和掃碼器共同組成硬件環(huán)境。
原料儲(chǔ)罐存儲(chǔ)大料原料,以稱(chēng)重感器對(duì)原料存儲(chǔ)量進(jìn)行采集。原料為油脂性物料,為避免硬化、結(jié)塊,需攪拌電機(jī)進(jìn)行攪拌。為保證配料時(shí)原料能快速?gòu)膬?chǔ)罐中排出,除依靠原料自重排料,還通過(guò)加壓進(jìn)行排料。
每個(gè)原料儲(chǔ)罐出口處有開(kāi)關(guān)量閥門(mén)控制原料的流通,所有原料儲(chǔ)罐輸料管匯聚到一個(gè)主輸料管上與液洗鍋連接,在主輸料管上配置有比例調(diào)節(jié)閥,用于控制不同階段的進(jìn)料速度,以提高進(jìn)料精度。設(shè)備結(jié)構(gòu)如圖2所示。
圖2 液洗機(jī)配料系統(tǒng)結(jié)構(gòu)
2.2 配料控制系統(tǒng)軟件框架
WinCC是Windows Control Center(視窗控制中心)的簡(jiǎn)稱(chēng),它是集數(shù)據(jù)采集與過(guò)程控制于一體的專(zhuān)用組態(tài)軟件。WinCC集成了SCADA、組態(tài)、腳本(Script)語(yǔ)言和OPC等技術(shù),除提供用于過(guò)程可視化和操作的全部基本功能之外還提供寬范圍的編輯功能和接口為用戶使用各種通用軟件的功能,特別適合與PLC連接共同使用,作為工業(yè)控制過(guò)程中上位機(jī)的人機(jī)接口[1]。
WinCC監(jiān)控系統(tǒng)是配料控制系統(tǒng)的監(jiān)控管理層,集成了設(shè)備運(yùn)行狀態(tài)顯示、運(yùn)行數(shù)據(jù)顯示、生產(chǎn)參數(shù)組態(tài)、配方管理、數(shù)據(jù)歸檔記錄、報(bào)警提示等功能。
設(shè)備運(yùn)行狀態(tài)和數(shù)據(jù)的動(dòng)態(tài)實(shí)時(shí)顯示,通過(guò)WinCC畫(huà)面編輯器組態(tài)設(shè)備運(yùn)行畫(huà)面和數(shù)據(jù)顯示窗口,并將畫(huà)面控件、數(shù)據(jù)顯示窗口與WinCC變量連接,通過(guò)變量值改變實(shí)現(xiàn)數(shù)據(jù)顯示和畫(huà)面動(dòng)態(tài)顯示功能。
數(shù)據(jù)記錄功能是對(duì)溫度、壓力、稱(chēng)重值、產(chǎn)品名稱(chēng)、生產(chǎn)批次等重要生產(chǎn)數(shù)據(jù)進(jìn)行歸檔記錄,WinCC自帶數(shù)據(jù)歸檔控件,能對(duì)歸檔變量進(jìn)行快速數(shù)據(jù)歸檔記錄[1]。
生產(chǎn)參數(shù)組態(tài)是在WinCC參數(shù)組態(tài)畫(huà)面中進(jìn)行生產(chǎn)參數(shù)設(shè)置,通過(guò)配方管理功能對(duì)配方文件進(jìn)行調(diào)用、讀取,實(shí)現(xiàn)按配方自動(dòng)進(jìn)行參數(shù)組態(tài)。同時(shí),在參數(shù)自動(dòng)組態(tài)完成后也可在通過(guò)手動(dòng)輸入數(shù)據(jù)進(jìn)行參數(shù)微調(diào)。
配方管理是配料參數(shù)組態(tài)時(shí)對(duì)產(chǎn)品配方的調(diào)用和新建,通過(guò)WinCC腳本工具編寫(xiě)腳本實(shí)現(xiàn)。液洗機(jī)生產(chǎn)所需原料種類(lèi)較多,不同產(chǎn)品配料參數(shù)各不相同,為了能夠快速完成配料參數(shù)組態(tài),采取具有腳本功能的按鈕來(lái)實(shí)現(xiàn)配方管理功能,將配方文件中的數(shù)據(jù)自動(dòng)讀取到WinCC組態(tài)畫(huà)面中,并且可將當(dāng)前參數(shù)保存為新的配方文件。
報(bào)警功能是對(duì)設(shè)備的故障、大料存儲(chǔ)量不足、小料配料誤操作進(jìn)行報(bào)警提示。系統(tǒng)的報(bào)警信號(hào)主要是閥門(mén)、電機(jī)故障和大料原料存儲(chǔ)量不足、小料配料誤操作,通過(guò)向PLC發(fā)送報(bào)警信號(hào),啟動(dòng)蜂鳴器和報(bào)警畫(huà)面來(lái)報(bào)警提示。
人機(jī)界面是工人操作的平臺(tái),采用西門(mén)子觸摸屏組態(tài)軟件WinCCFlexible進(jìn)行開(kāi)發(fā),集成可視化操作界面、報(bào)警畫(huà)面、生產(chǎn)參數(shù)組態(tài)畫(huà)面、配方調(diào)用畫(huà)面;配料車(chē)間的人機(jī)界面用于顯示掃碼器采集的小料原料的進(jìn)料量設(shè)定值、已投放標(biāo)記和誤操作提示等功能。
下位機(jī)程序以梯形圖為編程語(yǔ)言,采用模塊化的編程思想,編寫(xiě)配料主程序、稱(chēng)重采集子程序、壓力采集子程序、PID子程序、通訊子程序。主程序完成配料流程的邏輯控制、故障報(bào)警和對(duì)子程序的調(diào)用;稱(chēng)重子程序和壓力采集子程序?qū)Ω鱾€(gè)罐體的稱(chēng)重值和壓力值進(jìn)行采集;PID子程序用于控制比例調(diào)節(jié)閥的開(kāi)度;通訊子程序主要完成PLC和掃碼器、WinCC監(jiān)控系統(tǒng)的通訊。
手動(dòng)配料掃碼功能,通過(guò)掃碼器采集原料條形碼代號(hào),所有的小料原料有唯一的條形碼,經(jīng)掃碼器采集為一組數(shù)字,并以字符串類(lèi)型存儲(chǔ)于變量中傳送給PLC,通過(guò)字符串轉(zhuǎn)換指令轉(zhuǎn)換為整數(shù)數(shù)據(jù),以這些整數(shù)數(shù)據(jù)代替原料名稱(chēng),在程序中通過(guò)與配方中的原料代號(hào)作比較,判斷是否為所需原料或者已投放過(guò)的原料??刂葡到y(tǒng)軟件架構(gòu)如圖3所示。
圖3 配料控制系統(tǒng)功能框架
3.1 WinCC監(jiān)控系統(tǒng)與PLC的通訊
PC Access軟件是專(zhuān)用于S7-200 PLC的OPC Server軟件,向OPC客戶端提供數(shù)據(jù)信息,可以與任何標(biāo)準(zhǔn)的OPC Client通訊,集成了PPI、MPI、Profibus-DP、西門(mén)子以太網(wǎng)通訊協(xié)議、Modems等通訊協(xié)議[2-3]。
PC Access和PLC的通訊連接,采用以太網(wǎng)通訊協(xié)議,建立變量連接,進(jìn)行數(shù)據(jù)交換。
(1)將工控機(jī)的以太網(wǎng)卡和PLC的以太網(wǎng)通訊模塊CP243-1建立物理連接。
(2)對(duì)CP243-1以太網(wǎng)通訊模塊進(jìn)行配置,設(shè)置IP地址、模塊連接數(shù)目、TSAP地址等參數(shù)屬性。
(3)在PC Access中建立Siemens TCP/IP Ethernet通道。
(4)在通道中建立對(duì)應(yīng)PLC TSAP地址和IP地址的站點(diǎn)。
(5)在站點(diǎn)中建立對(duì)應(yīng)PLC寄存器地址的變量。
WinCC監(jiān)控系統(tǒng)和PC Access的通訊連接,采用PC Access作為OPC服務(wù)器,WinCC監(jiān)控系統(tǒng)作為OPC客戶機(jī),通過(guò)建立通訊通道、導(dǎo)入變量來(lái)實(shí)現(xiàn)[2-3]。
(1)在WinCC監(jiān)控系統(tǒng)的變量管理界面中,添加OPC.CN數(shù)據(jù)通訊驅(qū)動(dòng),建立OPC通訊通道。
(2)在OPC通訊通道中添加系統(tǒng)參數(shù),在彈出的目錄中選擇S7200 OPC Server,將PC Access中的變量導(dǎo)入到WinCC變量管理的OPC通訊通道中。
最終實(shí)現(xiàn)WinCC上位機(jī)監(jiān)控系統(tǒng)和下位機(jī)PLC的通訊。
3.2 人機(jī)界面與PLC的通訊
S7-200 CPU226共有兩個(gè)PORT通訊口,本文設(shè)計(jì)的人機(jī)界面共兩個(gè):一個(gè)放置在生產(chǎn)車(chē)間,一個(gè)放置在小料原料配料車(chē)間。在小料配料車(chē)間配置一個(gè)串口通訊的掃碼器,通過(guò)通訊纜線和PLC的PORT通訊口連接。針對(duì)這樣的硬件環(huán)境,本文采用兩個(gè)觸摸屏并聯(lián)在1個(gè)PORT通訊口上通過(guò)多主站PPI通訊協(xié)議實(shí)現(xiàn)與PLC的通訊,掃碼器和PLC的另一個(gè)PORT通訊口通過(guò)自由通訊口模式進(jìn)行通訊的方案。
PPI(Point-to-Point Interface)通信方式是一種主—從協(xié)議,是專(zhuān)門(mén)為S7-200開(kāi)發(fā)的通信協(xié)議,是S7-200 CPU默認(rèn)的最基本的通信方式[4]。它通過(guò)S7-200 CPU內(nèi)置的接口Port0或Port1采用通用RS-485雙絞線電纜進(jìn)行聯(lián)網(wǎng)通信,網(wǎng)絡(luò)中的所有S7-200 CPU都默認(rèn)為PPI從站,主站可以是S7-300/400、SIMATIC編程器、觸摸屏等。
通過(guò)PPI可實(shí)現(xiàn)多主站與從站的通訊,將觸摸屏設(shè)為主站、PLC設(shè)置為從站,各個(gè)站點(diǎn)地址互不相同[4]。兩個(gè)觸摸屏用RS-485雙絞線電纜和PLC并聯(lián),設(shè)置統(tǒng)一的傳輸波特率,實(shí)現(xiàn)2個(gè)觸摸屏共用1個(gè)Port通訊口和PLC進(jìn)行通訊。
3.3 掃碼器與PLC的通訊
S7-200PLC CPU226的通訊口,一般用于PPI /MPI 或自由口通訊,在自由口通訊模式下,它允許用戶自己定義字符通訊格式,如數(shù)據(jù)長(zhǎng)度和奇偶校驗(yàn)等,因此它可以實(shí)現(xiàn)多種自定義通訊協(xié)議,用戶通過(guò)編寫(xiě)程序?qū)σ恍┨厥獾耐ㄓ嵓拇嫫鬟M(jìn)行配置來(lái)實(shí)現(xiàn)自定義通訊協(xié)議[5-6]。
掃碼器具有RS232串口通訊接口,通過(guò)RS232/RS485轉(zhuǎn)換器與PLC的通訊口連接,在PLC中編寫(xiě)自定義通訊程序,將掃碼器采集到的數(shù)據(jù)傳輸?shù)絇LC指定的變量地址中,以完成掃碼器對(duì)小料原料代號(hào)的采集功能。
從WINCC6.0開(kāi)始采用SQL2000SP3做為WinCC的后臺(tái)數(shù)據(jù),并由SIEMENS為WinCC做了二次開(kāi)發(fā)。WinCC的內(nèi)部數(shù)據(jù)庫(kù)分為兩類(lèi),組態(tài)數(shù)據(jù)庫(kù)和運(yùn)行數(shù)據(jù)庫(kù),WinCC在運(yùn)行時(shí)根據(jù)WinCC的設(shè)置,數(shù)據(jù)歸檔以時(shí)間為基準(zhǔn)形成數(shù)據(jù)片段存儲(chǔ)于運(yùn)行數(shù)據(jù)庫(kù)中的數(shù)據(jù)表中,主要為3個(gè)數(shù)據(jù)表,ARCHIVE(用戶歸檔記錄)、TAGPRESSED (TAGUNPRESSED)(壓縮/非壓縮變量歸檔記錄)、MSARCLONG(報(bào)警記錄)[7-9]。通過(guò)建立和WinCC數(shù)據(jù)庫(kù)的連接,可實(shí)現(xiàn)對(duì)變量運(yùn)行的歷史數(shù)據(jù)進(jìn)行訪問(wèn),并編寫(xiě)腳本將數(shù)據(jù)導(dǎo)出到外部Excel表格文件中進(jìn)行報(bào)表統(tǒng)計(jì)和數(shù)據(jù)處理操作。
4.1 腳本實(shí)現(xiàn)報(bào)表功能
WinCC自帶的WinCC Online Trend Control控件可以以趨勢(shì)形式、表格形式顯示在線過(guò)程數(shù)據(jù),但用戶不能對(duì)這些數(shù)據(jù)直接進(jìn)行訪問(wèn)與處理,且當(dāng)WinCC不在運(yùn)行狀態(tài)時(shí),WinCC控件就不能訪問(wèn)已經(jīng)記錄的過(guò)程數(shù)據(jù),所以在對(duì)數(shù)據(jù)記錄和處理上存在局限性[8-9]。
編寫(xiě)腳本和SQL語(yǔ)句通過(guò)OLE-DB方式連接WinCC運(yùn)行數(shù)據(jù)庫(kù),對(duì)歸檔數(shù)據(jù)按條件進(jìn)行篩選并導(dǎo)出到Excel表格文件中,以實(shí)現(xiàn)將生產(chǎn)數(shù)據(jù)生成報(bào)表并進(jìn)行后期數(shù)據(jù)統(tǒng)計(jì)等操作。在使用OLE-DB方式連接數(shù)據(jù)庫(kù)時(shí),需要提供正確的數(shù)據(jù)庫(kù)連接字符串,連接字符串主要包括:Provider, 連接數(shù)據(jù)庫(kù)的類(lèi)型;Catalog,所連接數(shù)據(jù)庫(kù)名稱(chēng);DataSource,服務(wù)器名稱(chēng)。
通過(guò)WinCC OLE-DB連接WinCC運(yùn)行數(shù)據(jù)庫(kù)后,并使用SQL查詢語(yǔ)句將數(shù)據(jù)篩選后存儲(chǔ)在RecordSet數(shù)據(jù)集中,根據(jù)數(shù)據(jù)在RecordSet數(shù)據(jù)集中的存儲(chǔ)格式編寫(xiě)VBS腳本將數(shù)據(jù)導(dǎo)出到Excel文件中。數(shù)據(jù)導(dǎo)出界面如圖4所示。
圖4 數(shù)據(jù)報(bào)表功能界面
實(shí)現(xiàn)Excel報(bào)表功能的主要步驟:
(1)在WinCC中創(chuàng)建過(guò)程值歸檔記錄,將需要記錄運(yùn)行數(shù)據(jù)的變量通過(guò)WinCC歸檔組件建立歸檔,在WinCC的運(yùn)行數(shù)據(jù)庫(kù)中保存歸檔值。
(2)在WinCC按鈕控件中編寫(xiě)腳本,定義正確的數(shù)據(jù)庫(kù)連接字符串,建立和WinCC運(yùn)行數(shù)據(jù)庫(kù)的連接。
sPro = "Provider=WinCCOLEDBProvider.1;"
sDsn = "Catalog=" &tagDSNName.Value& ";"
sSer = "Data Source=.WinCC"http://定義連接字符串,其中數(shù)據(jù)庫(kù)名稱(chēng)為WinCC運(yùn)行后自動(dòng)生成,其余為固定格式
sCon = sPro + sDsn + sSer
Set conn = CreateObject("ADODB.Connection")
conn.ConnectionString = sCon
conn.CursorLocation = 3
conn.Open//利用連接字符串連接WinCC運(yùn)行數(shù)據(jù)庫(kù)
(3)創(chuàng)建Excel模板,在特定的路徑下創(chuàng)建Excel文件作為模板,控制數(shù)據(jù)輸出格式。
Set objExcelApp = CreateObject("Excel.Application")//建立Excel對(duì)象
objExcelApp.Visible=False //Excel不顯示界面,后臺(tái)運(yùn)行方式
objExcelApp.Workbooks.Open"D:WinCCWriteExcelabc.xlsx" //創(chuàng)建“D:WinCCWriteExcel”路徑下的abc.xlsx表格
objExcelApp.Worksheets(sheetname).Activate //將表格置為活動(dòng)表格
(4)組態(tài)數(shù)據(jù)篩選界面,在WinCC畫(huà)面中添加控件,通過(guò)SQL語(yǔ)句對(duì)WinCC運(yùn)行數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行篩選并保存到RecordSet數(shù)據(jù)集中。
sSql="Tag:R,(A1,A2,A3),'"&BeginTime&"','"&EndTime& "',"http://通過(guò)開(kāi)始時(shí)間和結(jié)束時(shí)間對(duì)數(shù)據(jù)庫(kù)Achieve表中的歸檔變量A1,A2,A3的記錄值進(jìn)行篩選
Set oCom = CreateObject("ADODB.Command")
oCom.CommandType = 1
oCom.CommandText = sSql//定義SQL數(shù)據(jù)查詢語(yǔ)句并執(zhí)行
(5)編寫(xiě)VBS腳本,在查詢界面的控件中編寫(xiě)腳本,將數(shù)據(jù)導(dǎo)出到所創(chuàng)建的Excel表格中。
Set oRs = oCom.Execute
m = oRs.RecordCount
i=2,j=1,n=0
If (m > 0) Then//數(shù)據(jù)集中的記錄條目不為零
objExcelApp.Worksheets(sheetname).cells(i,j).value=oRs.Fields(n).Name //往表格中相應(yīng)位置填充變量名稱(chēng)
oRs.MoveFirst
i=i+1
Do While Not oRs.EOF//是否到記錄末尾,循環(huán)填寫(xiě)表格
objExcelApp.Worksheets(sheetname).cells(i,j).value= oRs.Fields(n).Value//在對(duì)應(yīng)變量名稱(chēng)下填充變量值
oRs.MoveNext
i=i+1,j=j+1,n=n+1
Loop
oRs.Close
Else
MsgBox "沒(méi)有所需數(shù)據(jù)"
Exit Sub
End If
4.2 配方功能
配方功能中包括配方下載和配方新建,通過(guò)腳本來(lái)實(shí)現(xiàn)。配方文件存儲(chǔ)在工控機(jī)磁盤(pán)中,在下載配方時(shí),通過(guò)編寫(xiě)腳本的按鈕控件調(diào)用Windows文件選擇窗口,并將所選配方文件的路徑存儲(chǔ)于WinCC變量"path"中。在獲得所選配方路徑后,通過(guò)點(diǎn)擊編寫(xiě)腳本的按鈕打開(kāi)"path"路徑下的配方文件并將數(shù)據(jù)讀取到WinCC組態(tài)畫(huà)面的參數(shù)設(shè)置控件中。配方下載功能流程如圖5所示。
圖5 配方下載流程
新建配方的原理和配方下載類(lèi)似,通過(guò)兩個(gè)編寫(xiě)腳本的按鈕和一個(gè)輸入輸出域組成。其中一個(gè)按鈕通過(guò)調(diào)用Windows路徑窗口來(lái)選擇保存配方文件的路徑,輸入輸出域完成配方名稱(chēng)的輸入,并將保存配方文件的路徑值和配方名稱(chēng)值進(jìn)行字符串連接,并賦值給WinCC變量“path”;另一個(gè)按鈕的功能是創(chuàng)建以“path”為路徑和名稱(chēng)的Excel文件,并將WinCC組態(tài)畫(huà)面中參數(shù)設(shè)置控件中的數(shù)值寫(xiě)入到Excel文件中。配方新建功能流程如圖6所示。
圖6 配方新建流程
本文針對(duì)液洗機(jī)配料過(guò)程設(shè)計(jì)控制系統(tǒng),通過(guò)對(duì)原料進(jìn)料量和進(jìn)料精度的分析,將配料過(guò)程分為大料原料的自動(dòng)進(jìn)料和小料原料的掃碼確認(rèn)手動(dòng)稱(chēng)量投料,既保證了配料過(guò)程的高效,也保證了小料原料的高精度要求。
為了能快速組態(tài)配料參數(shù),采用了WinCC腳本工具編寫(xiě)配方管理功能的腳本,在WinCC組態(tài)畫(huà)面中組態(tài)具有腳本功能的按鈕,實(shí)現(xiàn)讀取配方文件進(jìn)行自動(dòng)組態(tài)的功能,對(duì)于當(dāng)前的生產(chǎn)參數(shù)也可通過(guò)腳本按鈕保存為新的配方文件。同時(shí)在分析了WinCC自帶數(shù)據(jù)歸檔控件對(duì)處理數(shù)據(jù)方面的局限性后,通過(guò)開(kāi)發(fā)具有腳本功能的按鈕控件實(shí)現(xiàn)對(duì)WinCC歸檔數(shù)據(jù)導(dǎo)出到外部Excel文件中的功能,進(jìn)行生產(chǎn)報(bào)表統(tǒng)計(jì)。
[1] 劉曉明.深入淺出西門(mén)子WinCC V6.北京:北京航空航天大學(xué)出版社,2004.
[2] 張始榮,楊曉青.西門(mén)子PCAccess在高速?gòu)椓z機(jī)上的應(yīng)用.紡織機(jī)械,2010,13(4):58-61.
[3] 李偉,朱釩,邵新宇.基于組態(tài)軟件WINCC的配料監(jiān)控系統(tǒng)開(kāi)發(fā)與設(shè)計(jì)能實(shí)現(xiàn).儀表技術(shù)與傳感器,2010(4):41-44
[4] 李敏.基于PPI協(xié)議的PLC通信控制設(shè)計(jì).自動(dòng)化與儀器儀表,2013(2):66-68.
[5] 李如甲,程武山,董林.基于RS485的智能儀表與PLC串行通訊.儀表技術(shù)與傳感器,2011(8):34-36.
[6] 謝明磊.PLC自由口通信在特殊量監(jiān)測(cè)中的應(yīng)用.儀表技術(shù)與傳感器,2010(10):69-71.
[7] 呂麗平,白鑫,張娟.WinCCVBS腳本在PU夾芯板連續(xù)生產(chǎn)線的應(yīng)用與研究.制造業(yè)自動(dòng)化,2012(1):18-20.
[8] 朱建軍.基于WinCC的配料監(jiān)控系統(tǒng)復(fù)雜報(bào)表的實(shí)現(xiàn).化工自動(dòng)化及儀表,2013,40(12):1153-1155.
[9] 趙雪梅.WinCCVBS腳本在聚氨酯板生產(chǎn)線訂單和報(bào)表管理系統(tǒng)中的應(yīng)用.現(xiàn)代制造工程,2013(3):39-42.
Design of Blending System for Liquid Washing Machine
PANG Hai-liang1,PAN Feng2
(Key Laboratory of Advanced Process Control for Light Industry (Ministry of Education) ,Jiangnan University,Wuxi 214122,China)
In the paper,by analyzing the blending process of liquid washing machine,we designed its control system which consists of upper computer,lower computer and interface.and took the scheme of automatic blending for big material and manual blending for small material with the confirmation by scanning code in order to combine efficient with high-precision in blending process.In the configuration of blending parameters,through WinCC scripting tool scripting,we realized the management function of formula and parameters quickly configuration by downloading formula.On the generation of system reports,we also realized the function of exporting the runtime data of variables into excel to make statement by writing the scripts?and?database statements.
WinCC; liquid washing machine; blending process; formula
國(guó)家自然科學(xué)基金資助項(xiàng)目(61273131);江蘇省產(chǎn)學(xué)研聯(lián)合創(chuàng)新資金項(xiàng)目(BY2013015-39)
2014-09-09 收修改稿日期:2015-02-11
TP319
A
1002-1841(2015)07-0081-05
龐海亮(1989—),碩士,主要研究方向:工業(yè)過(guò)程優(yōu)化控制。E-mail:phlahut@foxmail.com