陳維琨,吳鳳英
(1.中環(huán)天儀股份有限公司,天津300384;2.天津理工大學(xué)自動化學(xué)院,天津300384)
目前的鋼管生產(chǎn)廠對無縫鋼管的質(zhì)量要求越來越高,要求采用適當(dāng)?shù)墓に囘^程控制來滿足應(yīng)用,HCCS系統(tǒng)(以下簡稱HCCS),是利用伺服閥控制連軋機(jī)的軋輥液壓缸位置來控制軋機(jī)的輥縫和壓力,進(jìn)而在線控制鋼管的壁厚。某無縫軋管機(jī)組HCCS 需要和PQF(三輥可調(diào)式連軋管機(jī)組)PLC進(jìn)行實(shí)時通訊,HCCS和PQF PLC之間采用TCP/IP 協(xié)議進(jìn)行通訊,正常生產(chǎn)過程中,工藝人員通過HMI 對輥縫進(jìn)行調(diào)整軋出特定的壁厚和長度。設(shè)定值通過TCP/IP 和ProfibusDP 網(wǎng)傳輸?shù)紿CCS 系統(tǒng),HCCS 系統(tǒng)進(jìn)行調(diào)整后再反饋到HMI 完成調(diào)整。工藝操作畫面(HMI)會顯示HCCS的軋制力、伺服缸的位置、輥縫等信息方便工藝調(diào)整。由于現(xiàn)場設(shè)備較多,電磁環(huán)境惡劣,如果要保證整個通訊系統(tǒng)的穩(wěn)定性,就要保證底層的通訊網(wǎng)絡(luò)非常穩(wěn)定和成熟。目前HCCS和PQF PLC之間收發(fā)數(shù)據(jù)極不穩(wěn)定,這對正常的生產(chǎn)造成了較大的影響。
經(jīng)過對HCCS 和PQF PLC 之間數(shù)據(jù)傳輸進(jìn)行檢測,發(fā)現(xiàn)PQF PLC側(cè)的數(shù)據(jù)包地址經(jīng)常顯示為無效,造成數(shù)據(jù)包地址無效的原因是由于傳輸?shù)膱笪牡拇笮“l(fā)生了錯誤(原數(shù)據(jù)包被含信息量更大的數(shù)據(jù)包所替代)。造成這種錯誤的情況較多,主要有:網(wǎng)絡(luò)負(fù)載或網(wǎng)絡(luò)數(shù)據(jù)包沖突;網(wǎng)卡的問題;軟件版本問題以及網(wǎng)卡緩存飽和等。目前有兩種方案可以對該問題進(jìn)行解決:一是,從PLC 內(nèi)部對整個邏輯語言進(jìn)行修改;二是,選用ANSALDO 公司的STS 軟件,在HCCS 和PQF中間建立服務(wù)器網(wǎng)關(guān),通過OPC 技術(shù)進(jìn)行通訊改造。
經(jīng)過分析,方案1在現(xiàn)有條件下難以實(shí)現(xiàn),容易造成兼容性和穩(wěn)定性方面的問題。方案2選用安裝STS 軟件的服務(wù)器作為中間網(wǎng)關(guān),通過STS通訊軟件可以實(shí)現(xiàn)對報文信息的重新建立;分拆報文從中選出包含正確接收緩存信息的報文數(shù)據(jù);拋棄無法建立正確報文數(shù)據(jù)的錯誤報文。通過解決錯誤報文的問題從而解決HCCS 和PQF PLC 通訊過程中經(jīng)常出現(xiàn)的緩存錯誤問題。因此通過對比分析,考慮穩(wěn)定和可靠性原則,確定采用方案2進(jìn)行通訊改造。
OPC 是用于工業(yè)控制領(lǐng)域的OLE(object linking and embedding)。按照OPC 基金會的定義,OPC 是一套技術(shù)規(guī)范和工業(yè)標(biāo)準(zhǔn),為基于Windows 操作平臺的工業(yè)應(yīng)用程序提供高效的信息集成和交互功能的組件對象模型接口標(biāo)準(zhǔn),以微軟的分布式組件對象模型COM/DCOM/COM+技術(shù)為基礎(chǔ),采用客戶/服務(wù)器模式,提供自動化控制、設(shè)備管理和設(shè)備之間的軟件應(yīng)用互操作性和設(shè)備的互換性。OPC 的作用是為服務(wù)器和客戶的鏈接提供統(tǒng)一和標(biāo)準(zhǔn)的接口規(guī)范。OPC 的服務(wù)器是數(shù)據(jù)的供應(yīng)方,負(fù)責(zé)為OPC 客戶提供數(shù)據(jù);OPC 客戶是數(shù)據(jù)的使用方,處理OPC服務(wù)器提供的數(shù)據(jù)[1-2]。
軟件配置為:SIMATIC Step 7 V5.4,SIMATIC NET PC SOFTWARE V6.2 SP1,STS SOFTWARE 其中SIMATIC Step 7 V5.4 和SIMATIC NET PC SOFTWARE V6.2 SP1 用于對西門子PLC 進(jìn)行編程并組態(tài)OPC Server 創(chuàng)建OPC tag文件格式,添加數(shù)據(jù)塊中的報文數(shù)據(jù)。STS SOFTWARE 中可以通過配置MemSTS,配置交換數(shù)據(jù)的報文報頭、通訊地址,及其每個數(shù)據(jù)的內(nèi)容。并且每個數(shù)據(jù)包都有自己固定的區(qū)域,字長必須和報文的長度匹配。
硬件配置為:SIEMENS 工控機(jī),SIEMENS PLC 400(CPU416 3DP),以太網(wǎng)通訊模塊,數(shù)字量輸入/輸出模塊,模擬量輸入/輸出模塊,存儲卡,編程線纜,自適應(yīng)以太網(wǎng)卡,網(wǎng)線等。
我們可以先在西門子工控機(jī)上建立OPC 服務(wù)器,通過以太網(wǎng),OPC 服務(wù)器中的數(shù)據(jù)就可以與西門子PLC中的數(shù)據(jù)建立起互為映像的關(guān)系。
圖1所示系統(tǒng)改造前HCCS和PQF PLC之間的通訊,通過工業(yè)以太網(wǎng)連接到工業(yè)交換機(jī)采用TCP/IP 協(xié)議進(jìn)行通訊。改造后,在PQF PLC 和HCCS 中間增加OPC STS 服務(wù)器,OPC STS 服務(wù)器作為工業(yè)網(wǎng)關(guān),PQF PLC 和HCCS 進(jìn)行通訊時必須先經(jīng)過OPC STS 服務(wù)器進(jìn)行數(shù)據(jù)報文的轉(zhuǎn)發(fā)才能實(shí)現(xiàn)。PQF PLC 和STS 服務(wù)器之間采用OPC 技術(shù)進(jìn)行通訊,STS 服務(wù)器向HCCS 轉(zhuǎn)發(fā)數(shù)據(jù)報文時則仍采用TCP/IP協(xié)議。
圖1 HCCS和PQF PLC通訊改造簡圖Fig.1 HCCS and PQF PLC communication transformation diagram
這里要建立的OPC Server 與PLC 的連接是以SIMATIC NET為基礎(chǔ)的。SIMATIC NET是西門子在工業(yè)控制層面上提供的一個開放的,多元的通訊系統(tǒng)。首先,新建NetPro工程。第2步,配置PLC IP地址。第3步,組態(tài)OPC服務(wù)進(jìn)入Station Configurator,第1個插槽添加OPC Server,第2 個添加IE General;在STEP7 中組態(tài)OPC 服務(wù)器插入SIMATIC PC STATION,改名字與Station Configurator 中一致。第4 步,組態(tài)網(wǎng)卡此處IP為OPC 服務(wù)器IP 地址。第5步,建立連接,進(jìn)入NetPor,若前面設(shè)置的以太網(wǎng)名字不同則會出現(xiàn)2 條Industrial Ethernet,導(dǎo)致編譯不通。在OPC Server 處建立連接。第6步,進(jìn)行測試,進(jìn)入Scout,點(diǎn)擊Local Server(s)中的OPC.SimaticNet,若能進(jìn)入DB塊,則說明通訊正常[3-4]。
首先安裝STS 服務(wù)軟件,安裝后進(jìn)入STSConsole,新建項(xiàng)目并在配置屬性中添加BAS目標(biāo)工作站以及添加IP 地址等和PQF PLC 端建立通訊。通訊建立后對PQF PLC進(jìn)行連接測試,主要步驟為:第1步,開始菜單中運(yùn)行窗口里執(zhí)行cmd 命令,在彈出的DOS 窗口中輸入ping 192.168.5.30;第2 步,雙擊打開桌面上的start sts快捷方式,然后雙擊桌面上的STSConsole;第3步,進(jìn)入到STSConsole 界面里點(diǎn)擊open project并打開相應(yīng)的項(xiàng)目點(diǎn)擊下拉菜單選擇STS-GATEWAY 再點(diǎn)擊旁邊的連接圖標(biāo)(軟件啟動完畢)查看狀態(tài)。
STS 服務(wù)器與PQF PLC 之間采用OPC 技術(shù)進(jìn)行通訊,而與HCCS之間則采用TCP/IP協(xié)議進(jìn)行通訊。
STS服務(wù)器內(nèi)的軟件對于發(fā)送和接收的數(shù)據(jù)報文實(shí)行一種觸發(fā)機(jī)制,這種機(jī)制允許STS服務(wù)器可以發(fā)送外部的數(shù)據(jù)并且能檢測到即將接收到的數(shù)據(jù)。PQL PLC 向STS 服務(wù)器發(fā)送的所有數(shù)據(jù)報文定義成字節(jié)隊(duì)列進(jìn)行發(fā)送。這種數(shù)據(jù)的轉(zhuǎn)換方式來自于PLC內(nèi)部智能模塊部分,下面將對TCP/IP 協(xié)議的工作原理以及HCCS 和PQF PLC 間通過STS 服務(wù)器進(jìn)行數(shù)據(jù)交換進(jìn)行一下描述。
TCP/IP 協(xié)議采用7 層模型,它的工作原理主要為以下8個步驟:
1)在源主機(jī)上,應(yīng)用層將一串應(yīng)用數(shù)據(jù)流傳送給傳輸層;
2)傳輸層將應(yīng)用層的數(shù)據(jù)流截成分組,并加上TCP報頭形成TCP段,送交網(wǎng)絡(luò)層;
3)在網(wǎng)絡(luò)層給TCP段加上包括源、目的主機(jī)IP地址的IP報頭,生成一個IP數(shù)據(jù)包,并將IP數(shù)據(jù)包送交鏈路層;
4)鏈路層在其MAC幀的數(shù)據(jù)部分裝上IP數(shù)據(jù)包,再加上源、目的主機(jī)的MAC 地址和幀頭,并根據(jù)其目的MAC地址,將MAC幀發(fā)往目的主機(jī)或IP路由器;
5)在目的主機(jī),鏈路層將MAC 幀的幀頭去掉,并將IP數(shù)據(jù)包送交網(wǎng)絡(luò)層;
6)網(wǎng)絡(luò)層檢查IP報頭,如果報頭中校驗(yàn)和與計算結(jié)果不一致,則丟棄該IP 數(shù)據(jù)包;若校驗(yàn)和與計算結(jié)果一致,則去掉IP 報頭,將TCP 段送交傳輸層;
7)傳輸層檢查順序號,判斷是否是正確的TCP 分組,然后檢查TCP 報頭數(shù)據(jù)。若正確,則向源主機(jī)發(fā)確認(rèn)信息;若不正確或丟包,則向源主機(jī)要求重發(fā)信息;
8)在目的主機(jī),傳輸層去掉TCP 報頭,將排好順序的分組組成應(yīng)用數(shù)據(jù)流送給應(yīng)用程序。這樣目的主機(jī)接收到的來自源主機(jī)的字節(jié)流,就像是直接接收來自源主機(jī)的字節(jié)流一樣[5]。
如圖2 所示,當(dāng)PLC 準(zhǔn)備好來自內(nèi)部DB(數(shù)據(jù)塊)的緩存數(shù)據(jù)(字節(jié)隊(duì)列)后,PQF PLC 向STS 服務(wù)器發(fā)送請求數(shù)據(jù)報the_SendReq 設(shè)為“1”,STS服務(wù)器的觸發(fā)器觸發(fā)并啟動匹配的腳本信息(HCCS_OUT.CS)并復(fù)制從PQF PLC接收到的緩存數(shù)據(jù),將復(fù)制后的數(shù)據(jù)存儲在STS服務(wù)器內(nèi)的BAS(基礎(chǔ)自動化)輸入輸出區(qū),下一步STS服務(wù)器向PQF PLC回復(fù)已收到緩存數(shù)據(jù)the_SendReq設(shè)為“0”。STS服務(wù)器內(nèi)部將已準(zhǔn)備好發(fā)送的數(shù)據(jù)報the_DataRdy 設(shè)為“1”并將復(fù)制好的PLC緩存數(shù)據(jù)進(jìn)行重新排列和封裝,將正確的數(shù)據(jù)報頭信息(正確的HCCS地址)添加到數(shù)據(jù)報里轉(zhuǎn)發(fā)給HCCS。最后STS服務(wù)器內(nèi)部的觸發(fā)器進(jìn)行重新的復(fù)位操作。
圖2 PQF PLC 向HCCS發(fā)送數(shù)據(jù)報Fig.2 PQF PLC send data to the HCCS
如圖3 所示,STS 服務(wù)器和HCCS 之間仍然采用TCP/IP 協(xié)議進(jìn)行通訊。當(dāng)HCCS 向STS 服務(wù)器通過TCP/IP 通道發(fā)送一個新的數(shù)據(jù)報后,STS 中的觸發(fā)器自動將該數(shù)據(jù)the_DataRdy 設(shè)置為“1”(該觸發(fā)執(zhí)行時間為500 ms)。STS 觸發(fā)器運(yùn)行匹配的腳本信息(HCCSinput.cs)并復(fù)制來自TCP 通道的緩存數(shù)據(jù)將其存儲在STS 服務(wù)器內(nèi)部的HCCS 輸入輸出區(qū),將the_DataRdy 設(shè)置為“0”重建報文信息并自動轉(zhuǎn)發(fā)(通過OPC客戶端)給PQF PLC 中匹配的DB(數(shù)據(jù)塊),然后向PQF PLC 發(fā)送數(shù)據(jù)the_Recvd 觸發(fā)為“1”。最后來自PQF PLC 邏輯內(nèi)部的觸發(fā)器重新復(fù)位,并將數(shù)據(jù)the_Recvd觸發(fā)為“0”。
圖3 HCCS向PQF PLC發(fā)送數(shù)據(jù)報Fig.3 HCCS send data to the PQF PLC
STS 內(nèi)部的輸入輸出區(qū)如圖4 所示,數(shù)據(jù)被存儲在相應(yīng)的內(nèi)部區(qū)域,在HCCS 輸入輸出區(qū)內(nèi)包含著BAS_HCCS_WD以及BAS_HCCS_RRPD等字節(jié)信息,而BAS輸入輸出區(qū)內(nèi)則包含著相對應(yīng)的T26281以及T26282等代碼。
圖4 STS內(nèi)部的輸入輸出區(qū)Fig.4 STS inner I/O area
本系統(tǒng)通過OPC 技術(shù)采用STS 監(jiān)控軟件實(shí)時顯示通訊數(shù)據(jù),并且通過STS軟件的觸發(fā)機(jī)制對數(shù)據(jù)報文進(jìn)行處理分析,存入相對應(yīng)的輸入輸出區(qū)域內(nèi),然后進(jìn)行數(shù)據(jù)的重組轉(zhuǎn)發(fā),整個過程實(shí)現(xiàn)了軋管生產(chǎn)過程中,對HCCS 和PQF PLC 通訊過程中數(shù)據(jù)的檢測、監(jiān)控、重組轉(zhuǎn)發(fā)等功能。
系統(tǒng)的主要特點(diǎn)為:
1)實(shí)時檢測和監(jiān)控HCCS 和PQF PLC 之間數(shù)據(jù)通訊的連接狀態(tài),以及數(shù)據(jù)的完整性;
2)STS軟件實(shí)時將連接的日志文件存儲在數(shù)據(jù)庫中,便于有效掌握系統(tǒng)的運(yùn)行狀態(tài);
3)系統(tǒng)運(yùn)行穩(wěn)定可靠、便于維護(hù),通過對通訊數(shù)據(jù)的監(jiān)控可以避免停機(jī)故障和重大質(zhì)量事故的發(fā)生。
本系統(tǒng)通過OPC 技術(shù)以及STS 服務(wù)器軟件在HCCS和PQF PLC雙方建立網(wǎng)絡(luò)連接后,在滿足通訊協(xié)議的基準(zhǔn)下,通過監(jiān)控軟件能直觀地監(jiān)控通訊的數(shù)據(jù),將雙方通訊進(jìn)行數(shù)據(jù)交換的內(nèi)容直觀地體現(xiàn)出來,能較迅速地發(fā)現(xiàn)、解決通訊問題。OPC技術(shù)提高了數(shù)據(jù)交換過程中的穩(wěn)定性,STS軟件特有的對數(shù)據(jù)報的檢測、監(jiān)控、重組轉(zhuǎn)發(fā)等功能則提高了雙方通訊的穩(wěn)定性和可靠性,該系統(tǒng)的成功實(shí)施為其他冶金行業(yè)的工業(yè)網(wǎng)絡(luò)改造提供了較高的參考價值。
[1]姜建芳,蘇少鈺,陳慶偉,等.西門子S7-300 系列PLC 與PC機(jī)通信實(shí)現(xiàn)的研究[J].制造業(yè)與自動化,2003,25(1):52-54.
[2]李南,薛孝存,王大海,等.淺談OPC 技術(shù)[J].中國儀器儀表,2003(1):5-7.
[3]梁首發(fā).S7-300可編程序控制器及工控組態(tài)軟件WinCC應(yīng)用[J].中國儀器儀表,2001(3):16-17.
[4]亢紅波,馬伯淵,商高平.PLC 控制系統(tǒng)中基于OPC 技術(shù)的多上位機(jī)解決方案[J].工業(yè)控制計算機(jī),2006,19(1):68-69.
[5]石林鎖,王濤,劉順波.基于OPC規(guī)范的客戶應(yīng)用程序?qū)崿F(xiàn)[J].微計算機(jī)信息,2003,19(5):68-71.