技術頻道

      基于Modbus的EPS應急電源監控系統的研究

      1 引言
      隨著環保和消防要求的提高,柴油發電機逐漸失去優勢,而由于逆變技術的成熟發展,新型無公害、高可靠性、動力型的大型應急電源EPS(EmergencyPowerSupply)逐步成為代替柴油發電機組的“綠色電源”,目前已經在建筑領域得到大面積推廣。同時,隨著微處理器、計算機和數字通信技術的飛速發展,計算機控制已經擴展到了幾乎所有的工業領域。將所有的功能集成于統一開放的平臺上,通過人機界面可以使復雜的控制和數據處理變得更加簡單。
      2 監控系統設計
      美國電子工業協會(EIA)制定的RS485標準作為一種多點差分數據傳輸的電氣規范,現已成為業界應用最為廣泛的標準通信接口之一。這種通信接口允許在簡單的一對雙絞線上進行多點、雙向通信。平衡發送、平衡接收,具有傳輸距離遠、通信速率高、抗干擾能力強、軟硬件支持豐富與現場儀表接口簡單、易于實現和擴展等特點。接口總線上可連接32個設備,加中繼器后最多可達255個設備。因此,許多領域都采用RS485作為數據傳輸鏈路,例如汽車電子、電信設備、局域網、蜂窩基站、工業控制儀器儀表等。本系統采用一臺PC作為上位機,下位機由若干臺P89C51單片機擔任,監控系統結構圖如圖1所示。

      上位機的RS232串行口通過RS232/RS485轉換器轉換為RS485總線,各下位機通過MAX485芯片連接到總線上。各個下位機設有自己惟一的地址,且下位機之間不能通信,一切通信受上位機控制。開始時,所有下位機都處于監聽狀態,等待上位機發出指令。當上位機發出指令時,所有下位機都接收并且將其中的地址幀與自己的地址比較,如果相同則繼續接收后面的指令或數據,若不同則不予理睬。
      3 通信協議Modbus
      Modbus協議是應用于電子控制器上的一種通用語言。通過此協議,控制器相互之間、控制器經由網絡和其他設備之間可以通信。他已經成為一通用工業標準,不同廠商生產的控制設備利用其可以連成工業網絡,進行集中監控。
      Modbus協議定義了消息域格式和內容的公共格式,如表1和表2所示,使控制器能認識和使用消息結構,而無需考慮通信網絡的拓撲結構。他描述了一個控制器訪問其他設備的過程,當采用Modbus協議通信時,此協議規定每個控制器需要知道自己的設備地址,識別按地址發來的消息,如何響應來自其他設備的請求,如何偵測錯誤并記錄。

      系統通信采用主從技術,即只有主設備能發出查詢,從設備響應消息。主設備可單獨和從設備通信,從設備返回一個消息。如果采用廣播方式(地址為零)查詢,從設備不作任何回應。
      Modbus協議有兩種模式:ASCII和RTU模式。一個Modbus通信系統中只能選擇一種模式,不允許兩種模式混合使用。本系統采用RTU模式,消息的起始位以至少3.5個字符傳輸時間的停頓開始(一般采用4個),在傳輸完最后一個字符后,有一個至少3.5個字符傳輸時間的停頓來標識結束。一個新的消息可在此停頓后開始。在接收期間,如果等待接收下一個字符的時間超過1.5個字符傳輸時間,則認為是下一個消息的開始。校驗碼采用CRC16方式,只對設備地址、功能代碼和數據段進行。整個消息幀必須作為一連續的流傳輸,傳輸速率較ASCII模式高。
      Modbus可能的從設備地址是0~247(十進制),單個設備的地址范圍是1~247。可能的功能代碼范圍是十進制的1~255。其中有些代碼適用于所有的控制器,有些是針對某種Modicon控制器,有些是為用戶保留或備用。
      4 軟件設計
      本系統上位機軟件采用VC6.0開發,操作系統為Windows98,上位機向串口讀寫數據,通過485總線將控制信息送到現場的每臺EPS設備,就可以監控網絡上任何一臺EPS設備,同時現場采集到的電壓、電流等信號實時顯示在上位機的界面上。
      (1)人機界面子程序
      包括實時信息動態更新及數字顯示,異常判斷及報警聲音提示。
      (2)串口通信子程序
      在Windows98中將串行口和文件的操作統一起來。對他們打開、讀、寫、關閉等操作都使用相同的API函數,但是又是有區別的,比如串行口不能像文件一樣被刪除,這些差別體現在API函數中部分的參數設置上。在VC中設計串行通信程序時要用到一些通信的API函數,如CreateFile(),CloseHandle(),ReadFile(),WriteFile(),SetupComm(),WaitCommEvent()等。除上述幾個函數外,還要經常用到一個重要的記錄DCB(設備控制塊)。DCB中記錄有可定義的串行口參數,設置串行口參數時必須先用GetCommState函數將系統默認值填入DCB控制塊,然后才可把用戶想改變的自定義值設定。
      PC機串行通信從調用CreateFile()函數開始,接著設置串行口波特率、數據位、校驗位、停止位等參數和超時參數,最后選擇一種工作方式來讀寫串行口。在Windows環境下,串行通信有4種方式可供選擇:查詢方式、同步I/O、異步I/O和事件驅動方式。這幾種方式各有自己的優缺點:
      ①查詢方式比較直接,但要占用大量的CPU時間;
      ②同步I/O方式直到讀取指定的字節數或超時的時候才返回,這樣很容易長時間地阻塞線程;
      ③異步I/O可以在后臺讀寫數據,而在前臺做其他的事情;
      ④事件驅動方式是由Windows通知應用程序某些事件什么時候發生,然后根據所發生的事情來對串口進行操作。
      在監測系統中,由于事件的偶然性和要求傳送的實時性,計算機常采用事件驅動I/O方式來進行現場監測。事件驅動I/O方式是指線程通過監視通信資源中的一組事件來進行I/O操作,這種方式類似于MSDOS下的中斷方式,效率比較高。在實際項目應用和開發過程中,大多用的這種工作方式來實現PC機和下位機的通信。
      上位機部分通信程序的實現過程如下:

      5 系統抗干擾問題
      實時監控系統在工業中的應用越來越多,由于現場的電氣環境比較復雜,容易形成各種干擾源,特別是在較惡劣的工業環境中,因此研究解決系統抗干擾問題對確保系統的穩定運行非常重要。RS485本身具有較強的抗電磁干擾能力,但實際應用中仍然會出現一些問題,為此應注意以下幾個方面:
      (1)RS485支持半雙工或全雙工模式網絡拓撲,一般采用終端匹配的總線型結構,不支持環形或星型網絡。最好采用一條總線將各個節點串接起來,從總線到每個節點的引出線長度應盡量短,以便使引出線中的反射信號對總線信號的影響最低。
      (2)采用雙絞線作為RS485傳輸線時,雖然對電磁感應噪聲有較強的抑制能力,但對靜電感應引起噪聲的抑制能力較差,因此應選用帶屏蔽的雙絞線,同時雙絞線的屏蔽層要正確接地。
      (3)通過在總線兩端A,B加入匹配電阻的方法,解決信號反射問題。
      (4)對于RS485網絡,合理的接地系統對系統的可靠性很重要。基于共模干擾和EMI問題,選擇集中供電方式,可基本消除各處參考電位不等的情況。
      (5)在切換大功率感性負載、閃電等過程中,都會產生幅度很高的瞬態干擾,如果不加以適當防護就會損壞接口。對于這種瞬態干擾可以采用隔離或旁路的方法加以防護。
      6 結語
      本文提出的主從分布式多機通信系統硬件電路簡單、控制靈活。用VC語言實現上位機數據傳送的優點是可有效地實現通信的底層控制。由于RS485總線通信方式仍屬于串行通信方式,通信速度偏低,若要提高通信速度,還需對控制系統做進一步的改進。

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

      主站蜘蛛池模板: 成人免费视频一区二区| 国产精品女同一区二区| 一区二区三区在线|日本| 日韩人妻一区二区三区蜜桃视频 | 麻豆va一区二区三区久久浪| 国产成人AV一区二区三区无码| 色久综合网精品一区二区| 无码国产亚洲日韩国精品视频一区二区三区| 激情无码亚洲一区二区三区| 中文无码AV一区二区三区| 精品无码综合一区二区三区 | 无码人妻AⅤ一区二区三区水密桃 无码欧精品亚洲日韩一区夜夜嗨 无码毛片一区二区三区中文字幕 无码毛片一区二区三区视频免费播放 | 精品无码国产AV一区二区三区| 精品一区二区三区在线播放视频| 中文字幕一区二区三区免费视频| 日本一区二区三区免费高清| 亚洲视频一区网站| 久久伊人精品一区二区三区| 无码aⅴ精品一区二区三区浪潮| 国产成人无码一区二区在线播放| 精品久久一区二区| 久久精品午夜一区二区福利 | 波多野结衣的AV一区二区三区| 人妻无码一区二区视频| 精品一区二区三区影院在线午夜| 国产精品熟女视频一区二区| 国产精品成人一区二区三区| 国产一区二区在线观看视频| 国产精品一区二区综合| а天堂中文最新一区二区三区| 国产在线视频一区二区三区98| 无码精品人妻一区二区三区免费看| 日韩人妻无码一区二区三区久久99| 久久久精品人妻一区二区三区| 2020天堂中文字幕一区在线观| 亚洲中文字幕一区精品自拍| 美女福利视频一区二区| 一夲道无码人妻精品一区二区| 一区二区三区四区视频| 国产一区二区好的精华液| 一区二区三区美女视频|