段彤
(北京國電清新環(huán)保技術(shù)股份有限公司,北京 100142)
EDPF-NT Plus系統(tǒng)問世以來,在火電系統(tǒng)的機組控制的應(yīng)用上獲得了巨大成功。本次在鹽倉污水處理廠污泥處理裝置中,通過EDPF-NT Plus的通訊模塊再通過Modbus-RTU總線對制氧機、電磁加熱器、電熱管加熱器等成套設(shè)備進行控制和監(jiān)視,是EDPF-NT Plus系統(tǒng)在污水處理領(lǐng)域應(yīng)用的一個重要嘗試。提供了既利用EDPF-NT Plus系統(tǒng)的控制算法豐富、人機界面友好、運行安全可靠等特點,又最大程度地發(fā)揮裝置中各分系統(tǒng)的效能,節(jié)約投資的一個設(shè)計思路。
EDPF-COMII通訊模塊是國電智深EDPF-NT分布式網(wǎng)絡(luò)測量單元,具有4個RS485串口,1個RS232串口。其中,兩個RS485串口用HDLC協(xié)議和DCS的DPU(Distributed Control Unit)通訊,剩下兩個RS485串口可獨立設(shè)定為Modbus總線的主站或從站。
每一路串口通道最多可以帶32個從站(slave),每個COM-II通訊模塊有1028個寄存器。其中,0~128的寄存器為數(shù)字量、模擬量混用寄存器,128~1028的寄存器為模擬量專用寄存器。如果0~128個寄存器完全用于數(shù)字量使用,則可以有128×16=2048個數(shù)字量。這剩下的兩個和外部設(shè)備通訊的RS485接口可以共用這個通訊模塊中的1028個寄存器。
RS485接口與S7-200PLC接線的拓?fù)浣Y(jié)構(gòu)如圖1所示,一路RS485接口可以構(gòu)成一個Multidrop的串口總線。作為從站(slave)的電加熱器、制氧機、電磁加熱器的S7-200PLCCN系列的PLC,并行連接到RS485的主干通道上。其中電加熱器的從站地址(Node)為20、制氧機的從站地址(Node)為21、電磁加熱器的從站地址(Node)為22。
圖1 COMII通訊模塊與電加熱器、制氧機、電磁加熱器通訊的拓?fù)浣Y(jié)構(gòu)圖Fig.1 The Network Topology of the COMII Module and Heater,Oxygenator,as well as Galvanothermy Tube
圖2 模塊SAMA圖Fig.2 The module SAMA diagram
圖3 超級終端輸入指令界面Fig.3 The instructions interface of hyper terminal
EDPF-COMII模塊配有單獨的RJ11的監(jiān)控口,用戶可以通過它,利用專用的RS232的電纜和Window2000或WindowXP的超級終端(如圖3所示),對Modbus任務(wù)進行設(shè)置,并監(jiān)視、檢查EDPF-COMII模塊的運行狀態(tài)。
首先確定S7-200PLC的串行接口的通訊參數(shù):通訊速率為9600,無奇偶校驗位、8位數(shù)據(jù)位[1],然后用S命令設(shè)定COMII通訊模塊的參數(shù):#S=COM2 9600 N 8 1 1 M 1000,和S7-200PLC的通訊參數(shù)相對應(yīng)。上述命令共有7項,其中第0項表示要設(shè)定的端口號;第1項表示要設(shè)定通訊口的波特率,除本端口設(shè)定的9600bit/s外,還支持19200bit/s、57600bit/s、115200bit/s等;第2項表示奇偶校驗,0表示奇校驗,E表示偶校驗,N表示無校驗;第3項表示8位數(shù)據(jù)位;第4項表示1位停止位;第5項的意思如下:通訊模塊作為主站時無意義,通訊模塊作為從站時表示從站的地址,可以隨意設(shè)定;第6項表示此通訊口設(shè)定為主站模式(master)還是從站模式(slave);第7項表示此串口每項通訊任務(wù)執(zhí)行正確后的延長時,這里為1000×2ms=2s。
如圖2所示,國電智深EDPF-NT Plus系統(tǒng)的模塊組態(tài)和邏輯組態(tài)基于Visio平臺。在Visio的IO模具中找到COMAI、COMAO、COMAO的模塊。然后拖入到Visio的空白處,其中COMAI在系統(tǒng)的屬性中選擇主模塊地址為18,卡件的位置為C6(第C排的第6個)。主模塊寄存器起始地址為1000;COMAO的主模塊地址為18,卡件的位置為C6,主模塊寄存器的起始地址為1064,第二塊COMAO的起始地址為1128(模擬量占用兩個寄存器)。和普通的數(shù)字量和模擬量不同的是,COM通訊模塊依據(jù)對其寄存器分配情況,可以在模塊組態(tài)中對應(yīng)多個虛擬模塊。因為S7-200PLC的通訊模塊的寄存器需要接收的是整數(shù)型數(shù)據(jù),所以這里選擇的數(shù)據(jù)類型為uint16。
2.3.1 Modbus的功能碼中W命令的格式
W命令在“=”后面有0~7,共8個參數(shù)項,命令的格式為
評語集N={優(yōu),良,中,差},其中,優(yōu)(4分),良(3分),中(2分),差(1分);權(quán)重集X={0.15,0.35,0.20,0.30},即色澤15分,口感35分,組織狀態(tài)20分,風(fēng)味30分,共100分。
COM1 TASKID(0~255) SLAVEADDR(1~128) FUNC SAddr NRegs MemSAddr TOver[2]
其中,參數(shù)的含義如下:
第0項為要設(shè)定的通訊端口號,在本項目中本文用通訊模塊的第二通道與加熱器相連。所以,在第0項設(shè)定為COM2;TASKID(0~255)表示從第0個任務(wù)開始的任務(wù)列表;SLAVEADDR(1~128)表示COM模塊要訪問的設(shè)備地址,在Multidrop的模式下,電加熱器S7-200PLC中已經(jīng)設(shè)定好的設(shè)備地址為20,此處設(shè)定也為20。
FUNC是命令功能代碼:
功能碼1:讀取從站的只讀線圈狀態(tài)(00001按位寫至內(nèi)存)。
功能碼2:讀取從站只讀開關(guān)量狀態(tài)(10001按位寫至內(nèi)存中)。
功能碼3:讀取從站中保存寄存器(40001)開始的內(nèi)容寫至內(nèi)存中。
功能碼4:讀取從站模擬量寄存器(50001)開始的內(nèi)容寫到內(nèi)存中。
功能碼5:讀取COM模塊中內(nèi)存的數(shù)據(jù),僅從0~127個寄存器中某一位中讀取。
功能碼16:讀取COM模塊中的內(nèi)存數(shù)據(jù),寫至從站中(40001)開始的保存寄存器[3]。
SAddr:Multidrop總線網(wǎng)絡(luò)的下面各S7-200PLC的寄存器或線圈的起始地址,輸入數(shù)值=起始地址-4000,如果起始地址為4006,則輸入的數(shù)值應(yīng)為6。
圖4 點記錄編輯界面一Fig.4 The 1st interface of point editor
圖5 點記錄編輯界面二Fig.5 The 2nd interface of point editor
圖6 邏輯SAMA圖Fig.6 The logic SAMA diagram
NRegs:讀寫寄存器或者線圈的數(shù)量。
MemSAddr:表示輸入輸出數(shù)據(jù)位對應(yīng)的EDPF-COMII模塊內(nèi)存區(qū)起始地址。
Tover:通訊任務(wù)等待超時(單位時間為2ms)。
2.3.2 FUNC命令3號功能碼的使用
例如#W=COM2 0 20 3 6 1 1000 1000,這個命令行表達(dá)的意思是:設(shè)定的通訊模塊的端口號為COM2,第0個任務(wù),讀取的從站為Multidrop的第20號站,讀取從站中4006寄存器的狀態(tài),存入COM通訊模塊中地址為1000的寄存器中,通訊任務(wù)的等待超時為2ms×1000=2s。
2.3.3 FUNC命令16號功能碼的使用
例如#W=COM2 15 20 16 0 1 1064 1000,這個命令行表達(dá)的意思是:設(shè)定的通訊模塊的端口號為COM2,第15個任務(wù),從站為Multidrop的第20號站,將COMII通訊模塊中1064的寄存器中的內(nèi)容,寫入S7-200PLC中地址為4000的寄存器中,通訊任務(wù)的等待超時為2ms×1000=2s。
和增加普通模塊的點一樣,也可以用點記錄編輯器給COM模塊增加數(shù)字量點和模擬量點。設(shè)置點名為2COM1064(見圖4),選擇的模塊為DPU_C6_1064(見圖2),選擇的通道為1,因為S7-200PLC的地址表為4000的寄存器要求量程的范圍是(32000~6400),所以在圖5的信號上下限設(shè)定:32000~6400(這一點和普通的硬接線點不一樣);在量程上下限設(shè)定:32000~6400。
圖6為邏輯SAMA圖,圖形的左邊是模擬量算法和開關(guān)量算法選擇庫,功能塊T為轉(zhuǎn)換模塊,當(dāng)虛線的選擇的箭頭的邏輯為1時,Y引腳的邏輯就處于導(dǎo)通狀態(tài)[4]。SH999_TEMPT和MANUAL_AUTO1兩個中間數(shù)字量點同時為1時,現(xiàn)場加熱器所控制的溫度-氧化反應(yīng)器的反應(yīng)區(qū)溫度TI103_TE通過折線函數(shù)f(x)自動給2COM1064賦值;如果SH999_TEMPT和MANUAL_AUTO1兩個中間數(shù)字量點有一個為0時,則可以進行手動賦值。這樣,通過Mulidrop網(wǎng)絡(luò),COM_II通訊卡的第1064個寄存器內(nèi)的整數(shù)數(shù)據(jù),就可以傳到S7-200PLC的以4000為起始地址的寄存器中。經(jīng)S7-200PLC轉(zhuǎn)換后,通過AO通道給可控硅控制器的輸出賦值,完成調(diào)功加熱工作。
在污泥處理中,利用DCS的通訊模塊與分系統(tǒng)的PLC采用Multidrop方式通訊有如下優(yōu)點:
可以保持原有分系統(tǒng)的完整性。各個分系統(tǒng)的廠家對其設(shè)備非常熟悉,在配置參數(shù)的時候,必然采取最佳方案,尤其是制氧機、電熱管加熱器等較為復(fù)雜的分系統(tǒng),采用其生產(chǎn)廠家配套的PLC進行數(shù)據(jù)采集、參數(shù)控制,就更加安全、精確、迅速。這就避免了因DCS組態(tài)人員對于分系統(tǒng)的工藝、設(shè)備不熟悉或者硬件配置上的失誤而延長調(diào)試時間或在調(diào)試過程中造成不必要的設(shè)備損壞或人員傷害。
可以大量節(jié)省DCS硬件投資。以此次鹽倉污泥處理項目為例,如果所有的信號都通過硬接線接入DCS,就會需要大量的電纜。經(jīng)過計算,電加熱器、制氧機、電磁加熱器的S7-200PLC的投資也遠(yuǎn)小于所需增加的DCS模塊的投資。
[1]張子榮.S7-200PLC的Modbus RTU的從站通訊在化工火炬中的應(yīng)用[J].中國石油化工標(biāo)準(zhǔn)與質(zhì)量,2012,4:22-23.
[2]北京國電智深控制技術(shù)有限公司,EDPF-NT Plus通訊模塊COMII使用手冊[Z].2009,4:5-8.
[3]呂國芳,唐海龍,李進.基于Modbus RTU的串口調(diào)試軟件的實現(xiàn)[J].計算機技術(shù)與發(fā)展,2009,(19)9:236-239.
[4]北京國電智深控制技術(shù)有限公司,EDPF-NT Plus控制算法參考手冊[Z].2010,12:162-166.