王恒壓供水:一變頻拖三泵設(shè)計與調(diào)試全解析)
做恒壓供水項目最怕聽到業(yè)主說一句話晚上洗澡的時候花灑水忽大忽小。這個問題我在多個小區(qū)泵房都碰到過根子就是供水壓力沒穩(wěn)住。這幾年做下來最穩(wěn)的一套做法就是用西門子S7-200 PLC配合組態(tài)王組態(tài)軟件再加一臺變頻器循環(huán)控制三臺水泵也就是業(yè)內(nèi)常說的一變頻拖三泵。這套系統(tǒng)既能解決恒壓問題又能省設(shè)備成本現(xiàn)在很多高職院校的畢業(yè)設(shè)計和中小型泵房改造項目都在用。這篇文章我就把整套方案從頭到尾拆開講包括硬件選型、I/O分配、PLC程序邏輯、組態(tài)王畫面搭建以及我在現(xiàn)場調(diào)試時踩過的坑希望能給正在做同類項目的朋友一些能直接落地的參考。1. 方案立定一變頻循環(huán)三泵為什么比多臺變頻劃算恒壓供水的需求很直白小區(qū)、工廠、高層建筑的用水量隨著時間不斷波動白天用水大深夜幾乎沒人用水。如果水泵一直以額定轉(zhuǎn)速運行壓力要么過高要么不足而且水泵頻繁啟停電費高、設(shè)備壽命短。解決思路也統(tǒng)一——用壓力變送器測管網(wǎng)壓力PLC把實際壓力跟設(shè)定壓力比較實時調(diào)整水泵轉(zhuǎn)速讓壓力始終穩(wěn)定在設(shè)定值附近??刂妻D(zhuǎn)速的手段是變頻器它根據(jù)PLC給的模擬量信號改變電機頻率。1.1 為什么是三臺泵加一臺變頻器很多第一次做這個項目的人會問干脆每臺泵配一臺變頻器同時調(diào)速不更平滑嗎理論上確實平滑但恒壓供水主要應(yīng)對的是流量變化單靠一臺變頻泵調(diào)速范圍有限變頻泵流量不夠時就得加一臺工頻泵補充。用一臺變頻器輪流拖動三臺泵本質(zhì)上是用最少的錢解決寬流量范圍問題小流量時一臺變頻泵低速運行流量增大后啟動第二臺工頻泵補充再增大就啟動第三臺。這種一變頻多工頻的方式比三臺全變頻節(jié)省兩臺變頻器的成本而設(shè)備投資里變頻器往往比水泵本身還貴。從可靠性角度說三臺泵互為備用哪一臺故障了就切到另一臺不會因為主泵檢修就停水。從運行經(jīng)濟性說每臺泵不會長時間連續(xù)運行可以按累計運行時間輪換磨損均勻。我見過太多泵房因為一直用1號泵結(jié)果1號泵軸承磨損嚴(yán)重另外兩臺泵幾乎沒動過的案例。1.2 為什么選S7-200而不是Smart 200或1200這幾年西門子主推的是Smart 200和博途平臺的1200/1500S7-200已經(jīng)停產(chǎn)多年。但我在項目里依然沿用S7-200原因很實際第一大量存量項目還在用改造升級時程序邏輯可以直接沿用用戶不需要重學(xué)新軟件第二S7-200的編程軟件Micro/WIN簡單到幾乎沒有學(xué)習(xí)門檻梯形圖拖拽就能出程序?qū)S護電工很友好第三成本低庫存CPU模塊幾十塊錢就能買到。當(dāng)然如果你是全新項目且預(yù)算充足直接上Smart 200會更合適程序能用Micro/WIN Smart遷移后面我會單獨講遷移注意點。S7-200里我習(xí)慣用CPU224XP CN自帶兩路模擬量輸入和一路模擬量輸出做恒壓供水剛好夠用能省一塊EM231擴展模塊。如果手頭只有普通CPU224那要加EM231模擬量輸入模塊和EM232模擬量輸出模塊也能實現(xiàn)只是接線更多。1.3 組態(tài)王在整個系統(tǒng)里的角色組態(tài)王是北京亞控的組態(tài)軟件在中小型工業(yè)監(jiān)控項目里占有率非常高。它負(fù)責(zé)干三件事第一可視化——把泵房畫成畫面壓力、頻率、泵狀態(tài)一目了然第二數(shù)據(jù)記錄——歷史趨勢曲線、報警記錄、運行報表第三參數(shù)下發(fā)——操作員在值班室就能改壓力設(shè)定值不用去現(xiàn)場調(diào)PLC。跟西門子S7-200通信組態(tài)王有現(xiàn)成的S7-200驅(qū)動走PPI協(xié)議一根編程電纜接上就能通比OPC配置省事得多。2. 硬件搭建與I/O規(guī)劃從主電路到模擬量接線方案定了接下來就是硬件選型和接線。我把一套典型配置列出來這套配置我在兩個項目里都用過穩(wěn)定可靠。設(shè)備型號/規(guī)格數(shù)量作用PLC西門子S7-200 CPU224XP CN1核心控制PID運算泵組調(diào)度壓力變送器擴散硅式0~1.0MPa4~20mA二線制1采集出水總管壓力變頻器ABB ACS510或國產(chǎn)匯川11kW1拖動任意一臺泵調(diào)速水泵立式多級離心泵11kW揚程匹配管網(wǎng)3供水設(shè)備接觸器每臺泵變頻/工頻各一個6切換電機接變頻器或工頻電網(wǎng)熱繼電器與電機電流匹配3過載保護中間繼電器24VDC線圈若干PLC輸出隔離驅(qū)動接觸器隔離器4~20mA信號隔離器1抗變頻器干擾2.1 主電路設(shè)計里最容易忽略的互鎖主電路方面每臺泵有兩個接觸器一個接變頻器輸出叫變頻接觸器一個直接接電網(wǎng)叫工頻接觸器。啟動時先合變頻接觸器變頻器拖這臺泵軟啟動需要在工頻下滿速運行時變頻器先停機斷開變頻接觸器再合工頻接觸器。這兩個接觸器必須電氣互鎖否則一旦同時吸合工頻電源會倒送進變頻器輸出端直接炸模塊。我在接線時會在控制回路里讓兩個接觸器的常閉觸點互相串在對方線圈回路里同時選帶機械聯(lián)鎖的接觸器雙保險。PLC程序里也要互鎖——Q點輸出順序必須保證先斷后合。三臺泵的工頻接觸器還要注意總電流問題。理論上三臺泵可以同時工頻運行但實際電網(wǎng)容量和變壓器容量有限我一般會在程序中限制最多兩臺泵工頻同時運行第三臺泵變頻低頻運行避免啟動電流沖擊疊加。2.2 I/O分配表與接線要點I/O分配表我貼出來直接照著做就行地址信號注釋I0.0啟動按鈕無源觸點常開I0.1停止按鈕無源觸點常閉I0.2手動/自動選擇無源觸點ON自動I0.31#泵熱繼故障熱繼電器常閉觸點串聯(lián)I0.42#泵熱繼故障同上I0.53#泵熱繼故障同上I0.6水池低液位液位開關(guān)ON缺水AIW0出水壓力4~20mA壓力變送器AQW0頻率給定4~20mA或0~10V送變頻器Q0.01#泵變頻接觸器中間繼電器驅(qū)動Q0.11#泵工頻接觸器中間繼電器驅(qū)動Q0.22#泵變頻接觸器同上Q0.32#泵工頻接觸器同上Q0.43#泵變頻接觸器同上Q0.53#泵工頻接觸器同上Q0.6故障報警燈蜂鳴器指示燈接線時有三個點很容易出錯。第一個是壓力變送器二線制4~20mA信號的正極接PLC的24V電源正負(fù)極接AIW0的AA-短接到電源負(fù)。信號線和動力線千萬不要走同一個線槽我見過太多項目為了省幾米線把模擬量跟變頻輸出線綁在一起結(jié)果壓力值跳得跟心電圖一樣。第二個是PLC輸出端J200系列繼電器輸出型可以直接帶中間繼電器線圈但一定要在感性負(fù)載兩端反向并聯(lián)續(xù)流二極管否則斷電瞬間的反電動勢會把Q點打壞。第三個是變頻器的頻率給定端子如果PLC輸出的是4~20mA變頻器AI端子別忘了撥碼開關(guān)選對信號類型很多變頻器出廠默認(rèn)0~10V電壓輸入接上信號沒反應(yīng)檢查這一步。2.3 壓力變送器的安裝位置直接影響控制品質(zhì)壓力變送器要裝在出水總管上最好選在泵房出水口和水表之間取壓口朝下或斜45度安裝避免氣泡積聚。取壓管里如果有空氣壓力值會滯后PID調(diào)節(jié)起來會來回震蕩。我每次都會在取壓點裝一個針型閥既能檢修隔離又能用來排氣。量程選擇根據(jù)實際管網(wǎng)靜壓來小區(qū)一般選0~1.0MPa如果樓高超過10層建議選0~1.6MPa。量程選大了信號分辨率降低選小了壓力容易超量程輸出錯誤。3. PLC核心邏輯PID穩(wěn)壓與泵組輪換時序設(shè)計這是整套系統(tǒng)的心臟。S7-200的程序我分四塊寫主程序、PID子程序、泵組邏輯子程序、故障處理子程序。梯形圖雖然直觀但貼完整程序太長我這里用文字把核心邏輯講透照著這個思路拖梯形圖兩三天就能搭完。3.1 PID閉環(huán)S7-200的PID向?qū)в梅▔毫﹂]環(huán)控制用的是S7-200自帶的PID指令。在Micro/WIN里通過PID向?qū)渲弥付ɑ芈?過程變量選AIW0輸出選AQW0設(shè)定值SP初始填0.5MPa對應(yīng)的工程量百分比。向?qū)詣訋湍闾幚砹砍虤w一化生成一個PID0子程序每個掃描周期調(diào)用一次。需要注意PID向?qū)傻淖映绦蚶镞^程變量和設(shè)定值都被換算成了0~1之間的實數(shù)。程序里不能直接拿0.5MPa去跟它比要先做標(biāo)定PV歸一化值等于AIW0讀數(shù)除以32000SP歸一化值等于設(shè)定壓力除以量程上限。比如量程1.0MPa要設(shè)0.5MPa壓力SP就填0.5。輸出也是0~1向?qū)湍阌成涞紸QW0的0~32000最終變成4~20mA信號給變頻器。PID參數(shù)我一般先按經(jīng)驗設(shè)一個保守的初值比例增益Kp取1.5~2積分時間Ti取10~15秒微分Td設(shè)0。這種大慣性系統(tǒng)微分環(huán)節(jié)很容易把噪聲放大我基本不用。整定的時候先只加比例看壓力趨勢是否震蕩不震蕩再逐步減小積分時間直到壓力受流量波動影響能在幾秒內(nèi)恢復(fù)。詳細(xì)整定經(jīng)驗放到第五章講。3.2 泵組加減泵邏輯怎么判斷該加一臺泵了變頻泵調(diào)速范圍有限頻率降到25Hz以下出口壓力就不夠了升到50Hz滿速壓力還是不夠就必須加泵。判斷條件不能只看瞬時值我用的是一個帶持續(xù)延時的判斷法加泵條件變頻器輸出頻率≥上限值持續(xù)60秒且當(dāng)前壓力設(shè)定壓力-0.02MPa。這時候說明一臺泵已經(jīng)滿負(fù)荷還補不上水量需要啟動下一臺泵工頻運行。減泵條件變頻器輸出頻率≤下限值持續(xù)60秒且當(dāng)前壓力設(shè)定壓力0.02MPa當(dāng)前運行泵數(shù)≥2。說明變頻泵低頻運行流量都過??梢酝5粢慌_工頻泵。60秒延時的目的是防止水龍頭開一下關(guān)一下導(dǎo)致泵頻繁加減。這個時間我試過30秒和120秒30秒在用水波動大的小區(qū)還是容易誤動作120秒又反應(yīng)太慢60秒是個平衡點。加泵時先啟動下一臺泵的工頻接觸器這臺泵以工頻滿速直接投入同時變頻泵從50Hz自動降到40Hz左右避免瞬間壓力飆升。減泵時直接斷開工頻接觸器變頻泵從低頻自動升回高頻。具體選哪臺泵作為下一臺不能用固定順序必須輪換否則1號泵天天高強度工作2號3號泵生銹閑置。我程序里用三個累加器分別記錄每臺泵的運行時間每次優(yōu)先啟動累計時間最短的泵優(yōu)先停掉累計時間最長的泵。3.3 休眠與喚醒夜間小流量的保命邏輯半夜用水量接近零時如果還讓泵以最低頻率運行壓力可能依然超過設(shè)定值而且電機效率極低。這時候系統(tǒng)應(yīng)該進入休眠——停掉最后一臺運行的泵靠管網(wǎng)自身壓力和穩(wěn)壓罐維持等到壓力跌到喚醒壓力以下再重新啟動。休眠判斷當(dāng)前運行泵數(shù)1變頻器輸出頻率≤下限值持續(xù)180秒壓力設(shè)定壓力0.05MPa。滿足后停泵并置休眠標(biāo)志。喚醒判斷壓力設(shè)定壓力-0.1MPa持續(xù)10秒重新軟啟動水泵。這個邏輯我后來發(fā)現(xiàn)不能做得太激進——頻率下限不能設(shè)太低我在一個項目里把下限設(shè)到20Hz泵在休眠邊緣反復(fù)啟停一夜啟停二十多次第二天早上熱繼電器就跳了。后來把下限提高到25Hz休眠延時加到3分鐘問題解決。水泵啟動次數(shù)和壽命直接相關(guān)恒壓供水里寧可多轉(zhuǎn)一會不要頻繁啟停是條鐵律。3.4 故障處理邏輯的取舍熱繼電器動作、變頻器報警、水池缺水這些故障信號要進PLC。我的處理原則是故障泵立即從運行隊列中摘除報警燈亮故障消除后按復(fù)位按鈕泵重新參與輪換。水池缺水信號最優(yōu)先——不管在自動還是手動狀態(tài)一律停掉所有泵防止水泵空轉(zhuǎn)損壞機封。對于變頻器本身的故障我的做法是禁止該泵自動切工頻運行只報警。有人喜歡變頻故障后直接切工頻保證供水但我試過幾次都發(fā)現(xiàn)這種強制續(xù)命反而危險變頻器還沒斷開就吸合工頻接觸器反送電把IGBT炸了修一臺變頻器的錢夠買兩臺接觸器。保證供水可以靠備用泵不值得為省一臺泵的容量冒險。4. 組態(tài)王上位機PPI通信、變量映射與監(jiān)控畫面組態(tài)王跟S7-200通信是老搭檔了S7-200停產(chǎn)這么多年組態(tài)王驅(qū)動庫里依然有它的專用驅(qū)動。配置這一塊網(wǎng)上教程不少但有幾個細(xì)節(jié)值得單獨說。4.1 PPI通信設(shè)置速率、停止位、地址一個都不能錯PC接S7-200用的是USB-PPI編程電纜就是西門子綠頭的PC/PPI電纜或者兼容型號。組態(tài)王里新建設(shè)備驅(qū)動選西門子_S7-200PPI設(shè)備地址填PLC的站號默認(rèn)是2。通信參數(shù)必須跟PLC通信口參數(shù)一致波特率96008位數(shù)據(jù)偶校驗EVEN1位停止位。很多人第一步就卡在通信失敗十有八九是編程電纜驅(qū)動沒裝好或者PLC里的通信參數(shù)被人改過。設(shè)備地址和通信參數(shù)在Micro/WIN的系統(tǒng)塊-通信端口里能看到波特率是9600還是187.5k跟實際PPI電纜支持有關(guān)。USB-PPI電纜大多支持自適應(yīng)但組態(tài)王側(cè)必須手動填對。采集頻率我默認(rèn)1000毫秒壓力這個變量不搞太快太快反而增加CPU負(fù)擔(dān)而且PID調(diào)節(jié)在PLC內(nèi)部做完組態(tài)王純粹做監(jiān)控1秒刷新足夠了。4.2 數(shù)據(jù)詞典變量規(guī)劃組態(tài)王的核心是數(shù)據(jù)詞典相當(dāng)于PLC變量表的上位機投影。我習(xí)慣把變量分成三類I/O實數(shù)、I/O整數(shù)、I/O離散。壓力AIN是整數(shù)原始值0~32000要在組態(tài)王里建一個I/O實數(shù)變量壓力_MPa用轉(zhuǎn)換函數(shù)把AIN原始值換算成工程值——這個換算邏輯不能放組態(tài)王腳本里最好在PLC程序里算好組態(tài)王直接讀實數(shù)腳本越少越穩(wěn)定。需要從組態(tài)王下發(fā)到PLC的變量包括壓力設(shè)定值、PID參數(shù)如果開放、手動/自動模式、手動啟停某臺泵的指令。這些變量在PLC里用V區(qū)地址分配好組態(tài)王直接讀寫V區(qū)對應(yīng)的數(shù)據(jù)塊。V區(qū)地址分配我習(xí)慣集中放在程序最前面用注釋寫清楚方便后面維護。4.3 畫面怎么搭才實用組態(tài)王畫面不要花里胡哨泵房值班人員要的三樣?xùn)|西流程圖上泵是轉(zhuǎn)是停、壓力趨勢曲線、報警信息。我搭的畫面分四頁主畫面顯示三臺泵運行狀態(tài)、變頻器頻率、當(dāng)前壓力、設(shè)定壓力用顏色區(qū)分變頻運行工頻運行停機故障值班員一掃就知道全廠狀態(tài)控制畫面放手動/自動切換按鈕、壓力設(shè)定值輸入框、泵輪換使能復(fù)選框這部分加操作員權(quán)限普通看門的不許亂點趨勢畫面用組態(tài)王的歷史趨勢控件曲線畫實際壓力和設(shè)定壓力兩條線時間范圍選最近1小時到24小時可調(diào)報警畫面列出超壓、欠壓、泵故障、缺水等事件帶時間戳和確認(rèn)按鈕。手動模式邏輯優(yōu)先級高于自動。手動運行時PID自動退出操作員直接給定頻率PLC只做最基礎(chǔ)的過載保護和聯(lián)鎖。這個模式在調(diào)試初期和自動故障時都很有用。5. 現(xiàn)場調(diào)試實錄常見的干擾、震蕩與掉線問題程序?qū)懞昧水嬅孀龊昧苏嬲目简灢艅倓傞_始。調(diào)試階段我碰到的三個問題最典型每個都值得單獨寫一節(jié)。5.1 變頻器干擾讓壓力值亂飛差點懷疑傳感器壞了第一次上電變頻器一轉(zhuǎn)組態(tài)王上的壓力值就在0.1MPa和0.9MPa之間亂跳完全沒法看。我第一反應(yīng)是壓力變送器壞了拿萬用表直接在變送器輸出端測穩(wěn)得很。問題出在信號傳輸鏈路上——模擬量線跟動力線在同一個線槽里走了十幾米變頻器輸出有強烈的諧波只要一變頻干擾就耦合進信號線。處理辦法做了三件事第一模擬量信號線換成雙絞屏蔽電纜屏蔽層單端接地接在PLC側(cè)的PE端子第二信號線和動力線分槽走實在要過同一個橋架加金屬隔板第三在壓力變送器輸出端加一個4~20mA隔離器把現(xiàn)場信號和PLC數(shù)字側(cè)完全電氣隔離。三招下去壓力值穩(wěn)得像死水。后來我養(yǎng)成一個習(xí)慣凡是變頻器應(yīng)用場景模擬量信號必加隔離器這是成本最低的保命措施。5.2 PID震蕩比例、積分和系統(tǒng)的脾氣恒壓供水震蕩有兩種表現(xiàn)。一種是高頻小震蕩壓力曲線像鋸齒多半是PID反應(yīng)太激進比例系數(shù)太大或者壓力變送器安裝位置離泵太近水流波動直接影響取壓。解決把比例降一半加長取壓管的阻尼緩沖。一種是低頻大震蕩壓力在設(shè)定值上下大幅擺動周期幾十秒這通常是積分時間太短系統(tǒng)追過了頭。我整定PID的經(jīng)驗流程是這樣的先用純比例從0開始慢慢加加到出現(xiàn)持續(xù)等幅震蕩記下這個臨界比例Kp和震蕩周期Tu然后把Kp設(shè)為臨界值的0.5~0.6倍積分時間設(shè)為Tu的0.85倍左右。這套Ziegler-Nichols經(jīng)驗法雖然老但在壓力控制的慣性系統(tǒng)里非常實用我調(diào)了三四個項目都是用它一次調(diào)穩(wěn)。還有一點PID輸出和泵組加泵邏輯配合時死區(qū)要設(shè)好。我習(xí)慣把壓力設(shè)定值死區(qū)設(shè)為±0.02MPa在這個范圍內(nèi)PID保持輸出不動避免微小壓力波動引起頻繁調(diào)節(jié)。5.3 組態(tài)王掉線編程電纜和運行狀態(tài)沖突項目調(diào)試過程中組態(tài)王時不時整個畫面灰掉顯示通信失敗但PLC本體程序運行正常。排查了一圈發(fā)現(xiàn)是我自己干的蠢事——調(diào)試時Micro/WIN在線監(jiān)控PLC組態(tài)王同時也在讀同一個通信口。S7-200只有一個通信口編程電纜同時只能被一個軟件占用Micro/WIN一進入監(jiān)控狀態(tài)組態(tài)王自然就掉線了。這個坑幾乎每個第一次做S7-200加組態(tài)王組合的人都會踩。解決方法是調(diào)試階段把Micro/WIN監(jiān)控斷開或者干脆給PLC配一個EM277通信模塊單獨擴一路通信口給組態(tài)王用編程口留給編程器。雖然項目現(xiàn)場不太可能需要邊組態(tài)王運行邊在線改程序但這套冗余配置在后期維護階段很值。另外要注意PPI通信和Modbus協(xié)議不能同時使用S7-200這個通信口要么走PPI要么走自由口協(xié)議組態(tài)王的驅(qū)動和第三方設(shè)備要搞清楚誰在用這個口。5.4 升級到Smart 200或1200時的遷移提示如果你現(xiàn)在做新項目我建議直接用Smart 200替代老S7-200。遷移不算復(fù)雜Micro/WIN Smart軟件可以直接導(dǎo)入老的S7-200程序梯形圖邏輯基本不用改但通信這塊要全部換掉。Smart 200自帶以太網(wǎng)口組態(tài)王需要通過Modbus TCP驅(qū)動讀數(shù)據(jù)不再是PPI。PLC側(cè)要做兩件事定義Modbus TCP從站地址映射表把原來的V區(qū)數(shù)據(jù)映射到Modbus寄存器在程序里調(diào)用MBUS_SLAVE庫指令使能Modbus TCP服務(wù)。PID參數(shù)、泵組邏輯、I/O分配這些核心東西完全不浪費換個殼子就能跑。這也正是當(dāng)初選S7-200平臺的價值——方案和邏輯是可以跨代復(fù)用的資產(chǎn)不是寫一次就作廢的代碼。根據(jù)我這些年的實操經(jīng)驗恒壓供水這套系統(tǒng)的成敗七分在邏輯設(shè)計三分在通信和抗干擾。邏輯想清楚了泵組該加該減不猶豫壓力自然穩(wěn)抗干擾做足了組態(tài)王畫面自然整整齊齊。這篇文章把從方案確定到現(xiàn)場調(diào)試的完整鏈條都過了一遍照著這個思路做即使第一次接觸S7-200應(yīng)該也能少走不少彎路。最后再提醒一句變頻器的輸出側(cè)不要用萬用表長時間測電壓諧波會讓讀數(shù)亂七八糟還容易燒表真有懷疑就斷電檢線。