楊素珍,黃煥炮,張敏,李曉紅
(北京國電智深控制技術(shù)有限公司,北京市, 100022)
目前,國產(chǎn)分散控制系統(tǒng)(distributed control system,DCS)在火力發(fā)電廠的應(yīng)用越來越多,國內(nèi)主要的DCS有國電智深EDPF-NT+、浙大中控JX系列和利時(shí)MACS系列等。根據(jù)現(xiàn)場實(shí)際情況,經(jīng)常需要將第三方的數(shù)據(jù)送到DCS,或?qū)CS系統(tǒng)數(shù)據(jù)送到第三方系統(tǒng)。本文提出利用Modbus協(xié)議通訊來解決數(shù)據(jù)傳送的問題,這樣可以避免增加采集控制設(shè)備,而且便于統(tǒng)一監(jiān)視及控制。EDPF-NT+系統(tǒng)軟件結(jié)合了先進(jìn)的網(wǎng)絡(luò)通信、信息、監(jiān)控、管理技術(shù)為一體,具有開放式結(jié)構(gòu)、良好的硬件兼容性和軟件可擴(kuò)展性;在通訊接口方面,支持Modbus通訊協(xié)議,能與各類控制設(shè)備及計(jì)算機(jī)實(shí)現(xiàn)通訊連接,已成功應(yīng)用于火電廠1 000 MW機(jī)組,且在水電、化工、新能源等領(lǐng)域的應(yīng)用也逐漸顯現(xiàn)出優(yōu)勢。
Modbus協(xié)議已經(jīng)成為工業(yè)通訊的通用標(biāo)準(zhǔn)。通過該協(xié)議控制器之間可進(jìn)行通訊,還可以將不同廠商的控制設(shè)備連成工業(yè)網(wǎng)絡(luò)進(jìn)行集中監(jiān)控。Modbus協(xié)議通訊為客戶機(jī)對(duì)服務(wù)器[1-2](即1主1從),主站方發(fā)出請求,從站作出應(yīng)答進(jìn)行環(huán)路交換信息。許多工業(yè)設(shè)備使用Modbus協(xié)議作為通訊標(biāo)準(zhǔn)[3-4]。EDPFNT+支持Modbus RTU通訊模式[5-6]及Modbus TCP通訊模式,且通訊操作簡單靈活,組態(tài)方便,安全可靠。
EDPF-NT+在與Modbus RTU通訊中,只作主站,接口站通過虛擬分散處理單元(distributed processing unit,DPU)建立任務(wù),利用TCP/IP網(wǎng)絡(luò)連接到串口服務(wù)器,串口服務(wù)器再以RS485方式連接到可編程控制器(programmable logic controller,PLC)或IO模塊的網(wǎng)關(guān)(即作從站的通訊設(shè)備)。使用串口服務(wù)器是為了將RS485數(shù)據(jù)轉(zhuǎn)換為DPU數(shù)據(jù)。串口服務(wù)器有4、8、16口,可以方便擴(kuò)充通訊及與多方設(shè)備建立通訊。圖1為EDPF-NT+基于Modbus RTU的架構(gòu)圖。
圖1 EDPF NT+與Modbus串口通訊結(jié)構(gòu)Fig.1Structure of serial communication between EDPF-NT+and Modbus
EDPF-NT+在基于Modbus TCP通訊中可作主站,也可作從站。系統(tǒng)可通過網(wǎng)線與Modbus TCP建立通訊。作主站時(shí),如果1臺(tái)接口站需要與多方設(shè)備進(jìn)行通訊,中間可以用交換機(jī)或Hub進(jìn)行擴(kuò)展。接口站需要使用不同的端口與對(duì)方通訊。作從站時(shí),需在502端口上等待請求[7]。
EDPF-NT+系統(tǒng)通訊,只需在虛擬的DPU[6-7]中添加相應(yīng)的虛擬I/O模塊。每個(gè)開關(guān)量信號(hào)對(duì)應(yīng)1個(gè)寄存器的1位或1個(gè)線圈及1個(gè)離散量。EDPF-NT+可以將1個(gè)寄存器的16位自動(dòng)分配解包到相對(duì)應(yīng)模塊的連續(xù)的16個(gè)通道中。再配置擴(kuò)展I/O程序來完成不同功能的任務(wù),如讀線圈、離散量、保持寄存器、輸入寄存器等。表1為卡件類型及功能碼對(duì)應(yīng)表。
表1 卡件類型及功能碼對(duì)應(yīng)表Tab.1Correspondence between card types and function codes
Modbus RTU是基于串口的通訊,EDPF-NT+接口站與第三方系統(tǒng)之間通過串口服務(wù)器連接在一起。串口服務(wù)器一端通過以太網(wǎng)方式和DCS連接,另一端通過RS 485方式和第三方系統(tǒng)連接。通常串口服務(wù)器具有多個(gè)連接端口,每個(gè)端口連接1個(gè)第三方系統(tǒng)。串口服務(wù)器的地址與EDPF-NT+的接口站IP需要配置在同一網(wǎng)段,串口服務(wù)器每個(gè)端口應(yīng)配置同網(wǎng)段IP及不同的端口號(hào),應(yīng)用中需要定義每個(gè)端口的波特率、停止位、奇偶校驗(yàn)等信息(第三方系統(tǒng)廠家提供)。
(1)串口的接線。用1根交叉網(wǎng)線,一端連接EDPF-NT+接口站網(wǎng)口,另一端接串口服務(wù)器的以太網(wǎng)口;就地過來485線接串口服務(wù)器的端口上[8]。
(2)Modbus TCP的接線。用1根普通的網(wǎng)線,一端接到EDPF-NT+接口站網(wǎng)口,另一端接到第三方系統(tǒng)的通訊設(shè)備的網(wǎng)口或網(wǎng)關(guān)上。
(1)與第三方采集器通訊提供資料:規(guī)約類型為Modbus RTU;通訊端口為RS232/RS 485;通訊速率為9600bps;通訊參數(shù)為8、1、1、N;Modbus主機(jī)為DCS系統(tǒng)(響應(yīng)數(shù)據(jù));Modbus從機(jī)為采集器(查詢命令、確認(rèn)命令);地址為C9H;功能碼為03H;起始寄存器地址為0000H。
(2)與第三方DEH的PLC通信提供資料:子站地址為 1;協(xié)議9600,8,n, 1;開關(guān)量4150-4151,以保持寄存器來讀取。
通訊之前,需要先建立虛擬DPU。假設(shè)新建的虛擬DPU為30號(hào)站,則接口站的A網(wǎng)卡增加IP為: 172.101.1.30,B網(wǎng)卡增加IP為:172.101.2.30。
在PO中添加虛擬DPU 30,增加完在D盤目錄下新建虛擬DPU的運(yùn)行文件夾。
配置完虛擬DPU后需要增加虛擬卡件,增加虛擬卡件是在DPU 30中新建IO模塊,添加實(shí)際模擬量的模塊DPU 30 A1及開關(guān)量的DPU 30 A2。
根據(jù)第三方采集器說明,需要讀取從站的1~16號(hào)保持寄存器的數(shù)據(jù),首先增加Bidc開關(guān)量輸入卡,設(shè)備號(hào)為DCS自定義,此處定為1。從站ID C9H為十六進(jìn)制,轉(zhuǎn)換成十進(jìn)制為201,起始寄存器號(hào)0、起始點(diǎn)號(hào)為第1塊通道,功能碼為3,數(shù)據(jù)類型、字節(jié)順序類型與第三方一致。
根據(jù)第三方PLC說明需要讀取從站PLC的4150與4151號(hào)保持寄存器的數(shù)據(jù),首先增加Bidc MDI卡,設(shè)備號(hào)為DCS自定義,此處定為2。從站為1,起始寄存器號(hào)4150,功能碼為3。
再進(jìn)行配置卡件圖,并轉(zhuǎn)換下載SAMA圖。
(1)應(yīng)用Excel數(shù)據(jù)庫模板,將1~16號(hào)寄存器轉(zhuǎn)換為DPU 30的A1卡件1~16通道數(shù)據(jù)。
(2)PLC的通訊為8個(gè)開關(guān)量打包到1個(gè)寄存器中,只需將4150寄存器的8個(gè)開關(guān)量分配到A2的1~8通道,4151寄存器分配到A2的17~24通道。
導(dǎo)入數(shù)據(jù)庫,配置點(diǎn)組,下載點(diǎn)組及數(shù)據(jù)庫,信號(hào)類型可選為源碼輸入不變。
串口服務(wù)器主要有2項(xiàng)大的配置,一為串口參數(shù)配置,二為工作模式配置。在配置串口服務(wù)器前,需要在接口站增加第3塊網(wǎng)卡,用交叉線連接到串口服務(wù)器Ethemet 10/100M口,根據(jù)串口服務(wù)器默認(rèn)IP為192.168.0.233(可修改),再為第3塊網(wǎng)卡添加與串口服務(wù)器同網(wǎng)段IP地址。
(1)串口參數(shù)設(shè)置。串口參數(shù)配置的是第三方設(shè)備的相關(guān)串口參數(shù):將采集器過來的485線連接到串口服務(wù)器第1個(gè)端口,PLC過來的485線連接到第2個(gè)端口,再通過用戶數(shù)據(jù)報(bào)協(xié)議轉(zhuǎn)發(fā)到同一臺(tái)接口站來擴(kuò)展通訊。因采集器與PLC提供的串口參數(shù)相同[11],所以將端口1、2設(shè)置為:波特率9600,數(shù)據(jù)位8,停止位1,校驗(yàn)位none,流量控制none,類型改為485或不更改。
(2)工作模式設(shè)置。工作模式是用于配置串口服務(wù)器與接口站的通訊模式:因接口站與串口服務(wù)器是UDP協(xié)議,所以需要將第1及第2個(gè)端口的工作模式配置為TCP/UDP Socket。再將協(xié)議改為UDP,對(duì)端主機(jī)設(shè)置為通訊網(wǎng)卡的IP地址192.168.0.208,端口號(hào)任意設(shè)置。保存配置,重啟串口服務(wù)器即可。
將C:Program FilesEDPF-NT plusTemplate路徑下的EIO.ini文件,拷貝至運(yùn)行主目錄config system下。打開EIO文件,按實(shí)際情況將EIO文件下的相應(yīng)內(nèi)容修改。根據(jù)實(shí)際情況,DCS方需要定義第1個(gè)設(shè)備號(hào)1對(duì)應(yīng)采集器的201號(hào)設(shè)備通訊,并建1號(hào)任務(wù)為讀32個(gè)線圈數(shù)據(jù);DCS方再定義第2個(gè)設(shè)備號(hào)2對(duì)應(yīng)PLC的2號(hào)設(shè)備通訊,并建1號(hào)任務(wù)為讀40個(gè)保持寄存器數(shù)據(jù)。
配置好EIO后,可直接重啟虛擬DPU,完成通訊。如果是Modbus TCP通訊,此EIO.ini文件需要更改2處:Protocol=modbusTCP,RemotePort=502。
(1)與第三方設(shè)備通訊成功,但值(模擬量值)不對(duì),可以檢查字節(jié)順序類型是否一致或通訊測點(diǎn)的起始位置是否按錯(cuò)位處理。通常通訊數(shù)據(jù)類型應(yīng)為源碼輸入,不進(jìn)行標(biāo)量變換,否則修改為自定義,并計(jì)算轉(zhuǎn)換系數(shù)。
(2)對(duì)于第三方廠家將16個(gè)及16個(gè)以內(nèi)開關(guān)量打包到1個(gè)寄存器的情況,只需在任務(wù)中讀1個(gè)寄存器,在各個(gè)通道建對(duì)應(yīng)的測點(diǎn)名,模擬量輸入卡件自動(dòng)將寄存器中的16個(gè)開關(guān)量解包到各通道。
(3)對(duì)于1個(gè)寄存器為16個(gè)開關(guān)量,但只取某1位值的情況,只需將這1位開關(guān)量測點(diǎn)名建在對(duì)應(yīng)的通道上即可。
在通訊中,可以用輔助的Modbus調(diào)試軟件調(diào)試設(shè)備,根據(jù)雙方是否能發(fā)送或接受數(shù)據(jù)報(bào)文來判斷并分析線路、協(xié)議等是否正常。在EDPF-NT+系統(tǒng)中,通過虛擬控制器與第三方系統(tǒng)進(jìn)行Modbus協(xié)議通訊,應(yīng)用廣泛,不僅能降低生產(chǎn)成本,并且程序運(yùn)行穩(wěn)定、維護(hù)簡便。
[1]GB/T 19582.3—2008基于Modbus協(xié)議的工業(yè)自動(dòng)化網(wǎng)絡(luò)規(guī)范[S].中國:中國標(biāo)準(zhǔn)出版社,2008.
[2]陳銘.基于MODBUS協(xié)議的設(shè)備和PLC實(shí)現(xiàn)通信的研究[J].湖南科技學(xué)院學(xué)報(bào),2009(4):60-62.
[3]李喜東,劉波濤.Modbus RTU串行通訊協(xié)議在工業(yè)現(xiàn)場的應(yīng)用[J].自動(dòng)化技術(shù)與應(yīng)用,2005(07):37-40.
[4]呂國芳,唐海龍.基于Modbus RTU的串口調(diào)試軟件的實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2009(9):236-238,241.
[5]郭永吉,王興貴.ModbusRTU模式下工控機(jī)與智能儀表的通訊實(shí)現(xiàn)[J].甘肅科學(xué)學(xué)報(bào),2008(1):51-53.
[6]劉沛津,谷立臣.基于Modbus/TCP的火電廠實(shí)時(shí)數(shù)據(jù)集成及網(wǎng)絡(luò)通信控制器研制[J].電力自動(dòng)化設(shè)備,2009(8):128-131.
[7]張海艷.RS232/485與CAN總線協(xié)議轉(zhuǎn)換器的研究與設(shè)計(jì)[D].大連:大連海事大學(xué),2008.
[8]朱建平,辛伊波.工業(yè)控制系統(tǒng)串行異步通信研究[J].自動(dòng)化儀表,2003(6):53-55.
(編輯:沈雷)