陳景輝
(黑龍江省冶金研究所,哈爾濱150040)
喂絲機是大型現代化煉鋼廠常用的冶金設備,多用在應用爐外精煉工藝的精煉車間,常用于向加入特殊合金進行鋼水成分微調,改善鋼材品質。其主要工作原理是由電動機拖動的多組成對的滾子夾緊合金芯線并高速導入包含高溫鋼水的鋼包中,在喂絲的同時進行吹氬攪拌,在高溫的作用下芯線迅速融化并彌散進入鋼水,芯線內的成分與鋼水發生相應的物理化學反應,達到改變鋼水成分的功能,進而能夠根據需要煉制特殊合金鋼。
經過多年的發展,喂絲機的控制技術也不斷的發生著改變?,F階段喂絲機的控制系統結構多采用較成熟而且可靠的PLC控制的變頻調速的技術方案。我所生產的喂絲機多采用西門子S7-300系列可編程控制器(PLC)作為控制的核心,用來進行全面的邏輯控制和數據計算。PLC通過PROFIBUS-DP網絡控制變頻器的啟動、停止和調速,來實現喂絲機的喂絲、退絲的功能。同時很多時候用戶需要喂絲機可以進行遠程的操作,并且具備與精煉爐通訊的能力,可以將實時的操作數據傳入精煉爐主控計算機,進而進入工廠級自動化系統,這里就需要應用工業以太網來實現了。
一個典型的例子是我所生產應用于江蘇永鋼集團煉鋼車間現場的一組喂絲機。這一組喂絲機由應用在同一生產平臺的兩套喂絲機構成,兩套喂絲機分別放置于A工位和B工位,但是兩套喂絲機的控制柜都位于電氣控制室內,而且是并排緊挨著放置。由于在訂貨初期并未提出聯網遠程控制的要求,所以在我所供貨的時候提供的是兩套相同的喂絲機,分別采用了相同的配置:一套S7-300 PLC控制4臺變頻器,每套內部建立一條PROFIBUS-DP網絡,PLC的CPU以及4臺變頻器分別掛載到此PROFIBUS-DP網絡上,
網絡結構是PLC做主站控制4個DP從站,兩套之間是分立的兩個PROFIBUS-DP網絡,同時系統內并未配置以太網模塊,不具備與上位計算機的通訊能力。但是,當設備到達現場進行安裝調試時,客戶提出要求希望能夠進行遠程控制和實時采集一些數據。在這種情況下,最好的方案是每套喂絲機的PLC增加一個以太網模塊,增加兩條以太網線接入上位機自動控制系統的路由器。但是由于一些客觀原因,客戶提出僅增加一個以太網模塊,將兩套喂絲機PLC通訊數據經由其中的一臺的PLC進行收發的方案。這個方案的優點是硬件連接上的改動很小,只需將原來兩個系統的DP網絡連接在一起,由于兩個控制柜本來就緊挨在一起放置,所以實現起來非常容易。同時僅僅增加了一塊以太網CP模塊,成本上的增加是最少的。
于是,我們不得不對系統的系統結構進行了修改,主要分為幾個步驟進行。
物理上將兩個網絡連接在一起成為一個網絡。
只要將兩個網絡的末端的插頭分別用同一根DP通訊電纜連接起來,并且將原來的末端插頭的終端電阻由”ON”位置切換到“OFF”位置,這樣物理上兩個分立的DP網絡連接成為一個網絡了。
將A工位喂絲機的PLC定義為DP主站,B工位喂絲機PLC定義為DP從站,將原來的兩套喂絲機上的變頻器全部掛在主站上,同時B工位PLC也作為DP從站掛載到主站的PROFIBUSDP網絡上,主站同時還組態了以太網模塊,負責與上位機的以太網通訊。這樣兩套獨立的喂絲機合并成為一套控制系統,并緊密的聯系在了一起,兩個工位的喂絲機還要進行實時的數據交換。
要實現兩個CPU間的通訊還要進行通訊組態,雙擊圖1中的B工位CPU也就是(2)CPU 314C-2DP,在彈出的“DP從站屬性”窗口選擇“組態”選項卡,點擊“新建”建立一些通訊數據組態,模式選擇“MS”即主從模式通訊,主站地址的“輸入”對應從站地址的“輸出”或者主站地址的“輸出”對應從站地址的“輸入”,“長度”根據需要傳送的數據長度來設置,但不應超過16字節,“一致性”選擇“全部”表示一次性全部傳輸而不是按字節傳輸,最后根據我們的需要分別建立了一些數據組態最終如圖2所示。

圖1
在網絡組態完成后還不能完成數據的交換,我們還要進行網絡編程。網絡編程是分為兩個方面:變頻器控制與監視數據和兩個CPU間的通訊。
對于變頻器的控制,前面的硬件組態也是很關鍵的,我們在組態變頻器的時候已經設置了8臺變頻器的DP地址分別是3、4、5、6、7、8、9、10,并設置了通訊的類型是“PPO3”即0 PZW 2PZD,其中的一個PZD分別是控制字或狀態字,另外一個PZD的內容是變頻器給定轉速值或實時轉速值。我們調用SFC14"DPRD_DAT"和SFC15"DPWR_DAT"來進行DP讀寫的操作,在主站的CPU中的OB1中加入如下程序:

圖2


限于篇幅此處B1~B4變頻器讀狀態字與寫控制字略。
以A工位的1號變頻器為例說明,其中LADDR為變頻器的I/O地址,在圖1的視圖下選中相應的變頻器DP站的時候在下方的表格里可以看到;RECORD為發送或接受的數據,本例中我們都放入了一個數據塊DB21中,DB21的結構如圖3所示,RET_VA存放出錯時的錯誤代碼。
同樣兩個CPU間的通訊也是類似,不同的是在從站的OB1中也需要加入與主站對應的程序。
主站中的程序如下:

RET_VAL:=MW242
RECORD:=P#DB22.DBX52.0 BYTE 16
//從I19地址讀入B工位喂絲機各流實際速度值
CALL"DPRD_DAT"
LADDR:=W#16#13
RET_VAL:=MW244
RECORD:=P#DB22.DBX68.0 BYTE 16
//從I35地址讀入B工位各流累計長度值
CALL"DPRD_DAT"
LADDR:=W#16#23
RET_VAL:=MW246
RECORD:=P#DB22.DBX84.0 BYTE 16
//從I51地址讀入B工位變頻器控制值
CALL"DPRD_DAT"
LADDR:=W#16#33
RET_VAL:=MW254
RECORD:=P#DB21.DBX 48.0WORD 8
//從O1地址寫出B工位喂絲機遠程操作值
CALL"DPWR_DAT"
LADDR:=W#16#1
RECORD:=P#DB22.DBX134.0 BYTE 2
RET_VAL:=MW248
//從O3地址寫出B工位喂絲機各流遠程設定長度值
CALL"DPWR_DAT"
LADDR:=W#16#3
RECORD:=P#DB22.DBX136.0 BYTE 16
RET_VAL:=MW250
//從O19地址寫出B工位喂絲機各流遠程設定速度值
CALL"DPWR_DAT"
LADDR:=W#16#13
RECORD:=P#DB22.DBX152.0 BYTE 16
RET_VAL:=MW252
//從O35地址寫出B工位變頻器狀態值
CALL"DPWR_DAT"
LADDR:=W#16#23
RECORD:=P#DB21.DBX 32.0WORD 8
RET_VAL:=MW256
從站中的程序如下:
相應的B工位通訊程序也類似,此處略去。在兩個CPU通訊的程序里LADDR是對應于圖2中的地址的,RECORD是要傳送的數據地址或者是要接受數據的地址,RET_VA存放出錯時的錯誤代碼。

圖3