1引言
自來水是保障城市經濟發展和人民生活的重要基礎設施,是保障城市繁榮發展、人民生活以及發展國民經濟不可缺少的先決條件。從另一個方面來說,我國是一個高度缺水的發展中國家,隨著改革開放的不斷深入和發展以及人口數量的不斷增長,無論從自來水產量和質量上,社會都對城市供水提供了更高的要求。而實現水廠與供水調度系統的自動化,是保證自來水安全、優質與供水生產">

      技術頻道

      供水自動監控調度系統的設計與實現

      1引言
      自來水是保障城市經濟發展和人民生活的重要基礎設施,是保障城市繁榮發展、人民生活以及發展國民經濟不可缺少的先決條件。從另一個方面來說,我國是一個高度缺水的發展中國家,隨著改革開放的不斷深入和發展以及人口數量的不斷增長,無論從自來水產量和質量上,社會都對城市供水提供了更高的要求。而實現水廠與供水調度系統的自動化,是保證自來水安全、優質與供水生產調度的科學性、高效性以及合理性的有效措施,現在已經逐步發展為以提高供水質量,提高供水系統安全,降低人耗、物耗、水耗這一綜合效益為目標。為了達到這一目標,要求供水調度系統從設計和選型上就必須考慮到水廠、管網和管理信息系統的一體化和配套完整性。本文介紹的就是某自來水公司供水自動監控及調度系統的設計與實現方法。
      2 系統功能分析與設計
      2.1項目背景
      此自來水公司現擁有自來水廠三個,加壓站兩個及遍布全城的供水管網。自來水廠擬完成絕大部分工藝參數的自動檢測及部分參數的自動控制,取水、制水及送水實現自動程控。水廠參數應實時傳送至公司總調度室,并能接收并執行總調度室指令。加壓站及管網全部納入系統,加壓站實現自動化,管網全部壓力、流量等數據實時傳送至總調度室。
      2.2調度控制中心的基本功能
      (1) 數據通訊采集:接收水廠和管網測壓點的壓力、流量、泵運行參數、耗電量等信息。對采集的數據進行統計和處理,提供對整個系統的網絡數據庫管理。
      (2) 畫面顯示:廠站、管網的動態運行圖、實時趨勢圖、棒圖、運行報表、及其其他自定義畫面。還可顯示日期、時間、報警、數據、工藝流程、設備狀態、趨勢、操作指導、調度指令等。
      (3) 報警管理:提供全方位的報警功能,可在多種畫面中以直觀方式通知調度人員系統發生異常。不同級別的報警可在所有操作站上接收,報警沒有確認時保持閃光。報警內容有:實際值和偏差值報警、給定值限值報警、系統自診斷報警、識別變送器運行在4~20mA范圍以外的報警、輸出限幅報警、電源故障報警、模板故障報警、通信故障報警等等。
      (4) 統計計算和分析:系統能對供水量、供水總量等進行統計計算,并具有數據存儲、查詢、建帳等功能,供管理人員進行分析。
      根據以上功能分析,可以將系統設計為C/S(客戶/服務器)模式,各水廠和加壓站設立下位機,負責預處理現場測量點傳感器采集的數據,然后通過RS-232將預處理數據傳送給監控中心的上位機。上位機對接收到的數據進一步判斷,存在越限報警的便啟動報警處理方案,并對采集的所有數據分類存儲到數據庫中。圖1是監控網絡的組成結構示意圖。

      3 串口通信的實現
      各測量點測得的數據的是通過RS-232標準串行接口傳送到監控中心的,因為RS-232驅動能力太低,所以使用了MODEM作為中繼器。監控中心讀取到這些數據之后,再根據預定義好的規約分析數據,做出報警判斷及進行數據存儲。監控中心軟件運行在Windows 2000操作系統下,為了方便對數據庫編程,可以采用Delphi(Windows平臺下的可視化軟件開發工具)作為監控軟件的開發工具。在Delphi中編寫串口讀寫程序的方法基本可以分為兩種,一是采用封裝了串口讀寫方法的控件,二是直接調用Win32 API。使用已有控件可以提高編程效率,只需要幾條簡潔的語句就可以實現串口的讀寫,但是靈活性太差,不能完全按照個人意愿讀寫串口,并且有些控件的健壯性也沒有得到充分的驗證,所以本系統程序編寫采用Win32 API(應用編程適配器:Windows的32位應用程序編程接口,一組調用操作系統或其他程序而獲得訪問服務的例行程序)完成。
      API函數不僅提供了打開和讀寫通訊端口的操作方法,還提供了名目繁多的函數以支持對串行通訊的各種操作。下面以處理串口接收數據的子程序為例介紹一下本系統的串口通信程序。接收消息之前應該先用clearcommerror函數處理串口通信錯誤并報告當前串口狀態,如果出現錯誤向用戶發出提示并退出此子程序,如果沒有錯誤就再判斷串口接收的數據數是否超過預定以緩沖區的大小。限于篇幅,本文略過這段語句,直接給出讀取并處理數據的主體程序,并給出程序的注釋。
      procedure TMainForm.WMCOMMNOTIFY(var message:tmessage);
      var
      Temp : string; inputbuffer: array[0..4000>of Char;
      nBytesRead, dwError:DWORD ; showReceive:string;
      commstate:TCOMSTAT;//存放串口狀態的結構體
      begin
      //略過預處理程序……
      //使用readfile函數讀取串口數據;在win32 API中使用文件操作函數操作串口
      if(not readfile(hcomm,inputbuffer,commstate.cbInQue,nbytesread,@read_os)) then
      begin
      if(dwerror<>0)and(dwerror<>error_io_pending) then
      begin//讀取串口錯誤,則提示用戶,并關閉所有相關句柄
      messagebox(0,'readfile error','notice',mb_ok);
      stop:=true;
      closehandle(read_os.hEvent);
      closehandle(post_event);
      closehandle(hcomm);
      exit;
      end
      else
      begin
      waitforsingleobject(hcomm,infinite);
      getoverlappedresult(hcomm,read_os,nbytesread,false);
      end;
      end;
      if nbytesread>0 then
      begin
      temp:=system.copy(inputbuffer,1,commstate.cbinque);
      receivebuffer:=receivebuffer+temp;
      buffer:=receivebuffer;
      if (temp[length(temp)>=#13)or(temp[length(temp)>=#10)or (length(receivebuffer)>128)
      //上位機和下位機定義通信規約為以ASCII的13或者10作為幀結束標志
      then
      begin
      //若處于顯示接收內容模式,顯示接收到的內容
      if NShowRecerve.Checked then
      begin
      showreceive:=buffer;
      StatusBar1.Panels[2>.Text:='接受內容:'+showreceive;
      end
      else
      StatusBar1.Panels[2>.Text:='接受內容:';
      //分析故障信息
      if temp[length(temp)>=#10 then
      failureinfoparse(buffer);//條用故障處理子程序,此子程序分析故障類型,判斷故障設備,并把故障信息記錄到數據庫
      receivebuffer:='';//處理完一幀數據就清空緩沖區,為下一次讀取做準備
      end; end; end;
      setevent(post_event);
      end;
      上位機的圖形化監控軟件完成調度控制中心的基本功能。上位機網絡由一個應用程序服務器、兩個監控工作站、一個模擬屏控制機和數據庫服務器組成。上述串口讀寫程序就工作在應用程序服務器上。
      4 結束語
      本文介紹了一個供水自動監控及調度系統的設計和實現,采用了分布式控制結構,使系統處理事故和進行調度的效率有所改善和提高。但因為考慮設計成本等因素,這種設計方案并不是最優的,在以后的實踐研究中會做出進一步改進。

      文章版權歸西部工控xbgk所有,未經許可不得轉載。

      主站蜘蛛池模板: 日韩在线一区视频| 国产伦精品一区二区三区免费下载 | 日韩一区二区三区免费体验| 日本在线视频一区二区三区| 乱色精品无码一区二区国产盗| 精品人妻一区二区三区四区在线 | 久久久国产精品一区二区18禁| 韩国一区二区三区| 亚洲字幕AV一区二区三区四区| 夜夜嗨AV一区二区三区| 无码人妻精品一区二区蜜桃百度| 伊人久久大香线蕉AV一区二区| 日韩免费视频一区二区| 精品国产一区二区三区2021| 视频一区视频二区在线观看| 成人精品视频一区二区| 亚洲精品色播一区二区| 国产精品高清视亚洲一区二区| 精品国产a∨无码一区二区三区| 无码少妇精品一区二区免费动态| 亚洲av无码一区二区乱子伦as| 精品国产AⅤ一区二区三区4区 | 国产乱码精品一区二区三区香蕉 | 一区二区三区观看免费中文视频在线播放| 一区精品麻豆入口| 人妻无码一区二区三区四区| 国产aⅴ精品一区二区三区久久| 日韩经典精品无码一区| 无码人妻精品一区二区三区99性| 亚欧成人中文字幕一区| 人妻无码一区二区不卡无码av| 国产精品毛片VA一区二区三区| 无码少妇一区二区三区浪潮AV| 亚洲AV综合色区无码一区爱AV| 日韩电影一区二区三区| 亚洲一区二区三区91| 国产激情一区二区三区小说| 国产欧美一区二区精品仙草咪| 国产乱码精品一区二区三区四川| 夜色阁亚洲一区二区三区| 91福利国产在线观看一区二区|