[發明專利]一種解決基于MODBUS的串口通信瓶頸的方法有效
| 申請號: | 201210338555.8 | 申請日: | 2012-09-13 |
| 公開(公告)號: | CN102843380A | 公開(公告)日: | 2012-12-26 |
| 發明(設計)人: | 郭家樓;陳超 | 申請(專利權)人: | 深圳市亞特爾科技有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L29/08 |
| 代理公司: | 北京英特普羅知識產權代理有限公司 11015 | 代理人: | 齊永紅;郭少晶 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 解決 基于 modbus 串口 通信 瓶頸 方法 | ||
技術領域
本發明涉及工業通信領域,更為具體地,涉及一種解決基于MODBUS的串口通信瓶頸的方法。
背景技術
MODBUS通信協議為分布式工業控制系統(DCS)常用的協議,該協議為純軟件協議,應用時通常采用RS485連接,而在工業應用中為保證可靠性,采用RS485連接時的波特率通常設置的比較低,因此限制了通信的帶寬和速度,這樣,一旦連接的遠程測控終端(RTU)較多時,通信的瓶頸立刻就能顯露出來,進而影響通信的實時性和可靠性,致使工業生產受到嚴重影響。
發明內容
本發明的目的在于解決上述問題,提供一種可以解決基于MODBUS的串口通信瓶頸的方法,進而改進大負荷低帶寬時的通信瓶頸問題。
本發明采用的技術方案為:一種解決基于MODBUS的串口通信瓶頸的方法為:在遠程測控終端與建立組態系統的上位機之間設置一接口轉換系統,通過所述接口轉換系統采集遠程測控終端的測量數據來模擬遠程測控終端,上位機的組態系統從接口轉換系統中讀取所述測量數據,以實現將采用串口通信的遠程測控終端虛擬成為采用以太網通信的遠程測控終端,其中,所述遠程測控終端支持MODBUS通信協議,并采用RS485硬件接口;所述接口轉換系統具有一與上位機進行通信連接的網口,以及至少一個串口,每個串口通過RS485總線掛接最多256個遠程測控終端;利用接口轉換系統解決基于MODBUS的串口通信瓶頸的方法為:
接口轉換系統在完成各串口的初始化動作后,通過各串口讀取所有遠程測控終端的配置文件,之后為所有遠程測控終端建立與各自一一對應的內存映射區,以將各串口設備仿真為網口設備;接口轉換系統在讀取配置文件后針對網口執行以下的網口處理方法,針對每個串口執行以下的串口處理方法;
所述串口處理方法為:接口轉換系統通過尋址讀取掛在同一串口上的所有遠程測控終端中的數據,并將讀取到的來自每個遠程測控終端的數據存放至所建立的與各自相對應的內存映射區中;
所述網口處理方法為:接口轉換系統在通過網口接收到上位機的組態系統發出的數據請求后,對所述數據請求進行解析,以確定所述數據請求針對的遠程測控終端,之后,接口轉換系統將與確定的遠程測控終端相對應的設備映射區中存儲的數據反饋給上位機的組態系統。
其中,所述串口處理方法中接口轉換系統在讀取一地址的遠程測控終端的數據時,若連續讀取預設的最大反復讀取次數后仍無響應,則判定相應地址上不存在遠程測控終端。
其中,所述串口處理方法中接口轉換系統讀取掛在一串口上的地址為D的遠程測控終端中的數據的步驟為:
S101:接口轉換系統讀取地址為D的遠程測控終端中的數據,之后執行S102;
S102:判斷地址為D的遠程測控終端是否有響應,如有則執行S103,如沒有則執行步驟S107;
S103:將讀取的數據放入與地址為D的遠程測控終端對應的內存映射區中;
S107:計數值i=i+1,之后執行S108;其中,計數值i的初值等于0;
S108:判斷計數值i是否小于最大反復讀取次數N,若是則執行S101,若否則執行S109;
S109:判定地址為D的遠程測控終端不存在。
其中,所述串口處理方法中接口轉換系統在一次輪詢中讀取掛在同一串口上的所有遠程測控終端中的數據的步驟為:
S101:接口轉換系統讀取地址為D的遠程測控終端中的數據,之后執行S102,其中,地址D的初值等于D0,D0為掛在串口上的遠程測控終端的最小地址值;
S102:判斷地址為D的遠程測控終端是否有響應,如有則執行S103,如沒有則執行步驟S107;
S103:將讀取的數據放入與地址為D的遠程測控終端對應的內存映射區中,之后執行S1041;
S104:地址D=D+△d,計數值i=0,之后執行S105;
S105:判斷地址D是否小于D1,如是則執行步驟S101,如否則結束一次輪詢;其中D1為掛在串口上的遠程測控終端的最大地址值;
S107:計數值i=i+1,之后執行S108;其中,計數值i的初值等于0;
S108:判斷計數值i是否小于最大反復讀取次數N,若是則執行S101,若否則執行S109;
S109:判定地址為D的遠程測控終端不存在,地址D=D+△d,計數值i=0,之后執行S110;其中,△d為相鄰遠程測控終端的地址差值;
S110:判斷D是否小于D1,如是則執行步驟S101,如否則結束一次輪詢。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市亞特爾科技有限公司,未經深圳市亞特爾科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210338555.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:木結構抗震房屋用羽子板
- 下一篇:地下管道淤泥清理裝置





