基于PLC的水位測(cè)控裝置開(kāi)發(fā)與應(yīng)用
1 引言
水位測(cè)控裝置是水電廠的重要測(cè)控設(shè)備,水電廠的上下游水位是防汛安全的重要數(shù)據(jù),攔污柵壓差影響機(jī)組出力、水工建筑安全,水頭值影響調(diào)速器協(xié)聯(lián)曲線,進(jìn)而影響機(jī)組效率甚至安全穩(wěn)定運(yùn)行,因此水位測(cè)控裝置需滿足長(zhǎng)期穩(wěn)定可靠運(yùn)行。目前的水電廠水位測(cè)控裝置普遍采用定制儀表采集前端水位傳感器的格雷碼值,換算柵差、水頭等,輸出開(kāi)關(guān)信號(hào)報(bào)警,輸出4~20ma信號(hào)至監(jiān)控、遠(yuǎn)動(dòng)、調(diào)速器。在運(yùn)行維護(hù)中存在以下問(wèn)題:采用電纜長(zhǎng)距離輸送格雷碼信號(hào),防雷、抗干擾能力差,儀表、傳感器易損壞;4個(gè)24位格雷碼傳感器需100芯電纜維護(hù)困難;定制的儀表擴(kuò)展性差,輸入、輸出校準(zhǔn),參數(shù)整定操作復(fù)雜;價(jià)格高,備品備件采購(gòu)困難。因此開(kāi)發(fā)基于通用硬件設(shè)備的水位測(cè)控裝置意義重大。
根據(jù)水電廠水位測(cè)控具體要求,我們自主設(shè)計(jì)了基于plc的水位測(cè)控系統(tǒng),具有高可靠性、配置靈活、安裝維護(hù)簡(jiǎn)單方便特點(diǎn)。
2 系統(tǒng)功能結(jié)構(gòu)
水東水電站裝設(shè)有上游、#1攔污柵后、#2攔污柵后、下游四個(gè)水位測(cè)量井,配置浮子式水位測(cè)量裝置,采用絕對(duì)值光電編碼器將水位信息轉(zhuǎn)換成數(shù)字信號(hào)。壩上傳感器距離中控室500m,下游傳感器距離中控室30m,為提高系統(tǒng)的防雷、抗干擾能力,壩上傳感器通信采用光纖傳輸。水位測(cè)控裝置plc通過(guò)rs485串行口采集編碼器水位數(shù)據(jù),經(jīng)過(guò)換算處理模擬量輸出模塊輸出4~20ma的上游、下游海拔值信號(hào)至遠(yuǎn)動(dòng)rtu裝置,輸出4~20ma的水頭信號(hào)至機(jī)組調(diào)速器電氣調(diào)節(jié)裝置。計(jì)算機(jī)監(jiān)控系統(tǒng)通過(guò)網(wǎng)絡(luò)連接水位測(cè)控裝置plc,采集所有水位信息,故障報(bào)警信號(hào)等,并可遠(yuǎn)程設(shè)置相關(guān)參數(shù)、定值,系統(tǒng)功能結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)功能結(jié)構(gòu)圖
3 實(shí)現(xiàn)原理
3.1 浮子式水位測(cè)量裝置
該裝置安裝在測(cè)井口上方,當(dāng)液位變化時(shí),浮子隨之上升或下降,測(cè)繩帶動(dòng)線輪做旋轉(zhuǎn)運(yùn)動(dòng),與線輪同軸連接的多圈絕對(duì)值編碼器就輸出與液位對(duì)應(yīng)的數(shù)字信號(hào)(見(jiàn)圖2)。裝置具有結(jié)構(gòu)簡(jiǎn)單、合理,可靠性高、適應(yīng)性強(qiáng)等優(yōu)點(diǎn),能夠長(zhǎng)期用于液位測(cè)量。
圖2 浮子式水位測(cè)量裝置
3.2 編碼器
根據(jù)現(xiàn)場(chǎng)實(shí)際需求,編碼器選用現(xiàn)場(chǎng)總線型輸出的多圈絕對(duì)值編碼器。
絕對(duì)值編碼器由機(jī)械位置確定編碼,每個(gè)編碼唯一不重復(fù),它不受停電、干擾的影響,無(wú)需記憶,無(wú)需找參考點(diǎn),而且不用一直計(jì)數(shù),什么時(shí)候需要知道位置,什么時(shí)候就去讀取,這樣,編碼器的抗干擾特性、數(shù)據(jù)的可靠性大大提高了。多圈絕對(duì)值編碼器另一個(gè)優(yōu)點(diǎn)是由于測(cè)量范圍大,實(shí)際使用往往富余較多,這樣在安裝調(diào)試時(shí)不必費(fèi)勁找零點(diǎn),將在測(cè)量范圍內(nèi)的某一中間位置作為起始點(diǎn)就可以了,從而大大簡(jiǎn)化了安裝調(diào)試難度。
編碼器信號(hào)輸出主要有并行格雷碼輸出、串行ssi輸出、總線型輸出、模擬量4~20ma輸出。并行格雷碼和模擬量輸出信號(hào)讀取簡(jiǎn)單但不適合長(zhǎng)距離傳輸,串行ssi輸出大部分是與西門子plc的ssi模塊配套成本較高?,F(xiàn)場(chǎng)總線型編碼器用通訊方式傳輸信號(hào),信號(hào)遵循rs485的物理格式,連接線少,傳輸距離遠(yuǎn),對(duì)于編碼器的保護(hù)和可靠性就提高了。信號(hào)的接收設(shè)備只需一個(gè)接口,就可以讀多個(gè)編碼器信號(hào),多個(gè)編碼器集中控制的情況下可以大大節(jié)省成本。
3.3 水位測(cè)控裝置plc
plc選用m340模塊化plc,它是施耐德公司生產(chǎn)的性能價(jià)格比很高的可編程控制器,已廣泛應(yīng)用于工業(yè)控制的各個(gè)領(lǐng)域。cpu模塊選用高性能、大內(nèi)存的bmx p34 2020,帶一個(gè)100m以太網(wǎng)、一個(gè)485串行口;輸入、輸出模塊可根據(jù)現(xiàn)場(chǎng)實(shí)際需求靈活配置。
4 軟件設(shè)計(jì)
4.1 編程步驟
plc的硬件配置、控制程序采用施奈德的編程軟件包unity pro完成,pc通過(guò)網(wǎng)絡(luò)或usb與m340 plc進(jìn)行程序傳送。首先進(jìn)行plc硬件組態(tài),含底版、電源、cpu、輸入輸出模塊等。通過(guò)電源模塊屬性可查看電源使用情況,應(yīng)保留一定余量,否則需更換容量更大的電源模塊;在cpu模塊的serialport口配置串行鏈路參數(shù)如:485 modbus主站、波特率9600、幀延時(shí)4ms、數(shù)據(jù)位8位、停止位1位、偶校驗(yàn);創(chuàng)建網(wǎng)絡(luò)鏈路ethernet1并配置ip地址等網(wǎng)絡(luò)通信參數(shù),將cpu模塊的ethernet口鏈接到網(wǎng)絡(luò)鏈路ethernet1;根據(jù)現(xiàn)場(chǎng)模擬量信號(hào)要求配置模擬量輸出模塊參數(shù);定義相關(guān)變量等。
4.2 plc程序設(shè)計(jì)
(1)程序結(jié)構(gòu)。程序采用模塊化設(shè)計(jì),具有較高可讀性、可維護(hù)性其程序結(jié)構(gòu)如圖3所示。
圖3 程序結(jié)構(gòu)圖
(2)程序注釋。plc上電首次掃描執(zhí)行初始化init()子程序,初始化通信參數(shù),上、下游海拔預(yù)置值,各個(gè)傳感器調(diào)零值,攔污柵壓差整定值等。
傳感器通信comm()子程序,分時(shí)讀取傳感器水位值,通信故障時(shí)水位保持原值。
計(jì)算calc()子程序,計(jì)算出上、下游,攔污柵后的實(shí)際海拔值,攔污柵壓差、各機(jī)組有效水頭等。
信號(hào)輸出out()子程序,攔污柵壓差過(guò)大報(bào)警、通信故障報(bào)警、裝置故障報(bào)警、4~20ma模擬量輸出等。
數(shù)據(jù)上送sent()子程序,根據(jù)監(jiān)控上位機(jī)通信規(guī)約,組織上送數(shù)據(jù)信文,含各實(shí)際海拔值、有效水頭、詳細(xì)故障信息、攔污柵壓差報(bào)警定值等。
4.3 水位信號(hào)讀取
m340 plc和編碼器串行rs485通信采用modbus rtu通信規(guī)約,這個(gè)通訊協(xié)議已廣泛被國(guó)內(nèi)外各行業(yè)作為系統(tǒng)集成的一種通用工業(yè)標(biāo)準(zhǔn)協(xié)議,有利于系統(tǒng)的維護(hù)和擴(kuò)展。plc為主站,編碼器為從站。
查編碼器技術(shù)手冊(cè),水位測(cè)值的modbus地址是4x0000,根據(jù)modbus通信規(guī)約信息幀結(jié)構(gòu)讀取地址 1 傳感器的水位測(cè)量值,應(yīng)發(fā)送以下通信碼:m340 plc讀取水位信息主要用read_var功能模塊:
01 03 0000 0001 840a
站地址 功能碼 首地址 個(gè)數(shù) crc校驗(yàn)碼
功能模塊說(shuō)明[1]
adr
通信地址:語(yǔ)法為 addm (`r.m.c.node`機(jī)架號(hào).模塊號(hào).通道號(hào).站地址) 類型。
obj 要讀取的對(duì)象類型
’%m’:內(nèi)部位
’%mw’:內(nèi)部字
’%s’:系統(tǒng)位
’%sw’:系統(tǒng)字
num 讀取的第一個(gè)對(duì)象的索引。
nb 要讀取的對(duì)象的數(shù)量。
recp輸出參數(shù)包含所讀取對(duì)象的值的字表。
gest交換管理表:4個(gè)字的數(shù)組。
表1 交換管理表
圖4 read_var功能模塊
圖4中read_var功能模塊實(shí)現(xiàn)將地址1傳感器水位值送入%mw1,交換管理表置于%mw400:4,%mw401==0,說(shuō)明通信成功,非零值記錄故障代碼。通信過(guò)程需占用一定時(shí)間,保證通信可靠,防止通信阻塞,4個(gè)傳感器通信分時(shí)進(jìn)行,用上升沿觸發(fā)。讀取交換管理表確認(rèn)通信是否成功,通信失敗應(yīng)將故障代碼上送上位機(jī)并報(bào)警,將水位值保持為上一次正確通信時(shí)讀取的值。
4.4 上位機(jī)監(jiān)控軟件設(shè)計(jì)
上位機(jī)系統(tǒng)與plc之間通過(guò)以太網(wǎng)連接,水東電廠的計(jì)算機(jī)監(jiān)控系統(tǒng)采用南瑞集團(tuán)公司的nc2000系統(tǒng)。nari nc2000計(jì)算機(jī)監(jiān)控系統(tǒng)是南瑞集團(tuán)面向水利水電領(lǐng)域的新一代計(jì)算機(jī)監(jiān)控系統(tǒng)軟件[2]。nc2000具有良好的人機(jī)界面和網(wǎng)絡(luò)功能,與施耐德plc網(wǎng)絡(luò)通信采用tcp/ip modbus規(guī)約。在組態(tài)環(huán)境下,設(shè)計(jì)人員對(duì)plc進(jìn)行驅(qū)動(dòng)配置,運(yùn)行環(huán)境以圖形畫面形式的人機(jī)界面監(jiān)控水位信息、故障報(bào)警,對(duì)有關(guān)數(shù)據(jù)存儲(chǔ)歷史庫(kù),生成報(bào)表,同時(shí)利用web功能使系統(tǒng)具有在線監(jiān)控功能,即在授權(quán)的情況下在任何一臺(tái)聯(lián)網(wǎng)的計(jì)算機(jī)上用標(biāo)準(zhǔn)的瀏覽器可遠(yuǎn)程監(jiān)控。限于篇幅,上位機(jī)程序不再詳述。
5 結(jié)束語(yǔ)
系統(tǒng)的設(shè)計(jì)結(jié)構(gòu)合理,采用多圈絕對(duì)值編碼器采集水位,以可編程控制器為控制核心,提高了系統(tǒng)的自動(dòng)化程度,保證了系統(tǒng)運(yùn)行的可靠性;硬件、軟件模塊化設(shè)計(jì)具有良好的擴(kuò)展性和靈活性,可根據(jù)現(xiàn)場(chǎng)實(shí)際需求更改系統(tǒng)的配置規(guī)模。該系統(tǒng)在福建水東電站現(xiàn)場(chǎng)運(yùn)行表明工作穩(wěn)定,在監(jiān)視報(bào)警、綜合計(jì)算、信號(hào)輸出等各方面滿足電站的運(yùn)行要求,取得了很好的效果,有較高的推廣價(jià)值。