基于PLC的實(shí)時(shí)測(cè)量技術(shù)在遠(yuǎn)程污水監(jiān)控系統(tǒng)中的應(yīng)用
本文介紹的分布式遠(yuǎn)程污水監(jiān)控系統(tǒng)采用分布式的構(gòu)建方案,利用基于西門子PLC的實(shí)時(shí)測(cè)量技術(shù)對(duì)各污水排放點(diǎn)的排污流量、管道壓力等參數(shù)進(jìn)行采集、監(jiān)測(cè),以達(dá)到分散連接、集中監(jiān)控的目的。西門子PLC的I/O接口多,兼具模擬量、數(shù)字量和串行通信這幾類接口,擴(kuò)展模塊豐富;能工作于惡劣環(huán)境,故障率低、壽命長(zhǎng),非常適合在工業(yè)環(huán)境下使用。所以系統(tǒng)以西門子S7-200 PLC、傳感器和智能檢測(cè)儀表作為下層基本測(cè)量單元,將各個(gè)污水監(jiān)控點(diǎn)的測(cè)量數(shù)據(jù)經(jīng)過PLC初步處理后,按照自由口通信方式打包傳送給基于ARM9的嵌入式數(shù)據(jù)采集模塊進(jìn)行匯總和存儲(chǔ),然后再通過以太網(wǎng)送給本地機(jī)上層應(yīng)用軟件進(jìn)行顯示。整個(gè)下層測(cè)量單元相當(dāng)于一個(gè)結(jié)構(gòu)靈活可變、功能多樣的智能儀表子系統(tǒng),PLC相當(dāng)于這個(gè)子系統(tǒng)的通信接口??梢愿鶕?jù)不同的測(cè)量需要對(duì)下層測(cè)量單元的硬件結(jié)構(gòu)和測(cè)量功能進(jìn)行適當(dāng)改變,使整個(gè)系統(tǒng)具有很大的靈活性,稍作修改即可用于其他監(jiān)控系統(tǒng)。
1 分布式系統(tǒng)結(jié)構(gòu)
系統(tǒng)的分布式結(jié)構(gòu)示意圖如圖1所示。當(dāng)系統(tǒng)啟動(dòng)或復(fù)位后,各排污點(diǎn)的下層測(cè)量單元開始定時(shí)采樣、上傳數(shù)據(jù);嵌入式模塊接收到PLC傳來數(shù)據(jù)后,存入自身的數(shù)據(jù)庫中并判斷是否要觸發(fā)報(bào)警設(shè)備,同時(shí)將數(shù)據(jù)定時(shí)傳給上位機(jī)。這些實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)最后均匯總到網(wǎng)絡(luò)服務(wù)器上,從而使整個(gè)系統(tǒng)構(gòu)成了分布式的監(jiān)控結(jié)構(gòu)體系,主管部門只要通過應(yīng)用軟件的人機(jī)交互界面就可在各自辦公位置對(duì)排污點(diǎn)的各項(xiàng)指標(biāo)數(shù)據(jù)有一個(gè)準(zhǔn)確的了解,進(jìn)而達(dá)到對(duì)分布區(qū)域廣泛的各個(gè)排污點(diǎn)運(yùn)行情況進(jìn)行集中監(jiān)控的目的。本文引用地址:http://www.ex-cimer.com/article/195459.htm
嵌入式數(shù)據(jù)采集模塊上的每個(gè)串口可連接多達(dá)253個(gè)不同速率和協(xié)議的設(shè)備,因此為了降低成本,將距離較近的排污點(diǎn)測(cè)量單元通過一個(gè)串口集中管理器后接在同一個(gè)嵌入式數(shù)據(jù)采集模塊上。在PLC程序中設(shè)置好與上位機(jī)通信時(shí)所需的PLC站號(hào)后,嵌入式數(shù)據(jù)采集模塊就可通過輪巡的檢測(cè)方式接收各測(cè)量單元傳來的數(shù)據(jù)。但是實(shí)際中同一嵌入式數(shù)據(jù)采集模塊上所接的下層測(cè)量單元不應(yīng)過多,因?yàn)檫@會(huì)造成輪巡一次的時(shí)間過長(zhǎng),影響報(bào)警的實(shí)時(shí)性。
2 PLC下層測(cè)量單元硬件設(shè)計(jì)
根據(jù)實(shí)際情況只需對(duì)各排污點(diǎn)的管道壓力、污水瞬時(shí)流量、污水總流量、紅外線人體探頭的開關(guān)狀態(tài)和供電的開關(guān)狀態(tài)進(jìn)行監(jiān)測(cè)。其中管道壓力由水壓傳感器測(cè)量,其測(cè)量數(shù)據(jù)為4~20 mA的模擬量;紅外線人體探頭的開關(guān)狀態(tài)和供電的開關(guān)狀態(tài)由PLC測(cè)量,其測(cè)量數(shù)據(jù)為數(shù)字量;污水瞬時(shí)流量和總流量由基于HART協(xié)議的智能電磁流量計(jì)測(cè)量,其測(cè)量數(shù)據(jù)通過串行通信傳送給PLC。由于PLC還要將處理后的數(shù)據(jù)傳送給嵌入式數(shù)據(jù)采集模塊,這需要占用一個(gè)串行通信口,所以系統(tǒng)選用帶有2個(gè)RS-485串行通信口的西門子S7-200 224XP型PLC。根據(jù)西門子224XP PLC的硬件資源,基于PLC的下層基本測(cè)量單元硬件連接圖如圖2所示。
如圖2所示,紅外線人體探頭和供電開關(guān)分別接到PLC的數(shù)字量輸入口I0.0和I0.1上;水壓傳感器接在PLC上的模擬量輸入口0(AIW0)上;PLC的通信口0通過屏蔽雙絞線與嵌入式數(shù)據(jù)采集模塊的RS-485接口相連;電磁流量計(jì)需要經(jīng)過基于HART協(xié)議的調(diào)制解調(diào)器后才能接到PLC的串口上。系統(tǒng)中采用的調(diào)制解調(diào)器一端帶有4~20 mA的模擬傳輸線路(如電話線)接口,一端帶有RS-232接口,因此還需在調(diào)制解調(diào)器串口端再接一個(gè)RS-232轉(zhuǎn)RS-485模塊后才能接到PLC的通信口1上。HART協(xié)議是半雙工協(xié)議,同一時(shí)間內(nèi)調(diào)制解調(diào)器只能處于調(diào)制或解調(diào)的工作狀態(tài),所以需要通過PLC產(chǎn)生高低電平來進(jìn)行控制,故將PLC的Q0.1口接到調(diào)制解調(diào)器的工作狀態(tài)控制端上。當(dāng)PLC輸出高電平時(shí),處于調(diào)制工作狀態(tài);當(dāng)輸出低電平時(shí),處于解調(diào)工作狀態(tài)。
3 PLC下層測(cè)量單元軟件設(shè)計(jì)
根據(jù)PLC在系統(tǒng)中的作用,PLC程序應(yīng)具有定時(shí)采集數(shù)據(jù)并通過自由口通信方式發(fā)送到上位機(jī)、自動(dòng)報(bào)警、自動(dòng)向上位機(jī)發(fā)送保持連接信號(hào)等功能。另外還要能響應(yīng)上位機(jī)的數(shù)據(jù)補(bǔ)調(diào)命令,返回相應(yīng)數(shù)值;響應(yīng)上位機(jī)的參數(shù)修改命令,修正PLC的系統(tǒng)時(shí)間等。
整個(gè)PLC程序采用模塊化設(shè)計(jì),將完成某一功能的代碼段編寫為子程序,設(shè)置入口參數(shù)和出口參數(shù),當(dāng)需要完成這項(xiàng)功能時(shí),只需設(shè)置合適的參數(shù)并在程序中直接調(diào)用即可。這樣可縮短程序的長(zhǎng)度,便于程序的修改和移植。整個(gè)PLC程序是由主程序、子程序和中斷程序3部分組成,每個(gè)功能模塊程序包含若干子程序和中斷程序,下面分別介紹。
3.1 PLC主程序
主程序主要是對(duì)自由口通信參數(shù)進(jìn)行設(shè)置以及對(duì)程序中用到的各計(jì)數(shù)器和標(biāo)志位寄存器進(jìn)行復(fù)位,以免PLC斷電重啟之后產(chǎn)生未知錯(cuò)誤。電磁流量計(jì)采用HART協(xié)議長(zhǎng)幀結(jié)構(gòu)命令,因此要先發(fā)送0#命令獲得生產(chǎn)廠家的代碼、設(shè)備型號(hào)碼和設(shè)備識(shí)別碼等總共38 bit的信息[4],用于填寫其他長(zhǎng)幀命令的地址。PLC每次重啟后,在主程序中調(diào)用一次0#命令子程序,并將流量計(jì)返回的地址存儲(chǔ)在固定的寄存器中。另外,PLC采集的壓力模擬量是一個(gè)緩慢變化的過程量,為了避免測(cè)量誤差,還需對(duì)壓力采集量進(jìn)行濾波;本文采用了平均值濾波法,每隔0.1 s觸發(fā)平均值濾波中斷程序?qū)毫y(cè)量數(shù)據(jù)進(jìn)行處理。主程序流程圖如圖3所示。
評(píng)論