Modbus工業現場總線與無線zigbee間的協議轉換裝置及其方法
2023-07-22 00:30:11 2
專利名稱:Modbus工業現場總線與無線zigbee間的協議轉換裝置及其方法
技術領域:
本發明涉及的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,包括 MODBUS總線接口模塊、電平轉換驅動模塊和與主控模塊,其中MODBUS總線接口模塊與現 場總線相連傳輸MODBUS總線數據報文信息,MODBUS總線接口模塊用於現場總線和電平轉 換驅動模塊間的串行二進位數據傳輸,MODBUS總線接口模塊與電平轉換驅動模塊相連傳輸 MODBUS總線數據報文信息,電平轉換驅動模塊用於信號電平值較高的現場總線接口與TTL 低電平的主控模塊之間的電平轉換,電平轉換驅動模塊與主控模塊相連傳輸TTL電平數據 信息,主控模塊用於實現MODBUS總線數據報文信息和無線ZIGBEE數據之間的轉換以及無 線ZIGBEE數據的接收和發送。 所述的MODBUS現場總線接口模塊,包括第一 RS232接口和第一 RS485接口 , 其中第一 RS232接口和第一 RS485接口分別與現場總線和電平轉換驅動模塊相連傳輸 MODBUS總線數據報文信息。 所述的電平轉換驅動模塊,包括RS232電平轉換驅動模塊和RS485電平轉換驅動 模塊,其中RS232電平轉換驅動模塊和RS485電平轉換驅動模塊分別與MODBUS現場總線 接口模塊相連傳輸MODBUS總線數據報文信息,RS232電平轉換驅動模塊用於實現RS232接 口高電平與TTL電平之間的轉換,RS485電平轉換驅動模塊用於實現RS485接口高電平與 TTL電平之間的轉換,RS232電平轉換驅動模塊和RS485電平轉換驅動模塊分別與主控模塊 相連傳輸TTL電平數據信息。 所述的RS232電平轉換驅動模塊包括RS232電平轉換晶片和第二 RS232接口 ,其 中RS232電平轉換晶片和主控模塊相連傳輸TTL電平數據信息,RS232電平轉換晶片通過 第二 RS232接口與MODBUS現場總線接口模塊相連傳輸MODBUS總線數據報文信息。
所述的RS485電平轉換驅動模塊包括RS485電平轉換晶片和第二 RS485接口 ,其 中RS4S5電平轉換晶片和主控模塊相連傳輸TTL電平數據信息,RS485電平轉換晶片通過 第二 RS485接口與MODBUS現場總線接口模塊相連傳輸MODBUS總線數據報文信息。
所述的主控模塊包括控制器、射頻天線、串行接收緩衝器和串行發送緩衝器,其 中控制器與電平轉換驅動模塊相連傳輸TTL電平數據信息,控制器用於實現有線MODBUS 數據報文和無線ZIGBEE數據報文的轉換,射頻天線用於接收和發送無線ZIGBEE數據,串 行接收緩衝器寄存接收到的無線ZIGBEE數據,串行發送緩衝器寄存待發送的無線ZIGBEE 數據,射頻天線通過串行接收緩衝器和串行發送緩衝器與控制器相連傳輸接收到的無線 ZIGBEE數據和發送的無線ZIGBEE數據。 本發明涉及的上述MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置的轉換 方法,包括以下步驟 第一步,主控制器讀取運行參數,對各通訊接口模塊和協議轉換裝置進行初始化 操作;
第二步,等待接收數據,沒有接收到數據時,則進入休眠狀態;當主控模塊接收到無線ZIGBEE數據時,執行第三步;當MODBUS現場總線接口模塊接收到MODBUS總線數據報文信息時,執行第四步; 第三步,主控模塊的控制器對從串行接收緩衝器中接收到的無線ZIGBEE數據報文信息進行解析,將無線ZIGBEE數據報文轉換成TTL電平數據報文,並由電平轉換驅動模塊將TTL數據報文轉換為MODBUS總線數據報文,實現無線ZIGBEE數據報文轉換為MODBUS總線數據報文,通過MODBUS現場總線接口模塊將該MODBUS總線數據報文信息傳給現場總線; 所述的無線ZIGBEE數據報文轉換成TTL電平數據報文是 1)從無線ZIGBEE數據報文中提取數據幀,得到數組SBUF_ch [],其中SBUF_ch
是地址位,SBUF_ch[l]是功能位,SBUF_ch[2]是數據位; 2)根據數據幀的總長度減去4個字節,得到數據位SBUF_ch[2]的長度,並提取數據位SBUF—ch[2]; 3)將數據位SBUF_ch [2]存入MODBUS總線的數據幀中,轉換為TTL電平數據報文。
第四步,MODBUS現場總線接口模塊將接收到的MODBUS總線數據報文信息傳給電平轉換驅動模塊,電平轉換驅動模塊將MODBUS總線數據報文轉換為TTL電平數據報文,主控模塊的控制器將該TTL電平數據報文轉換為無線ZIGBEE數據報文,實現MODBUS總線數據報文轉換為無線ZIGBEE數據報文,並通過串行發送緩衝器和射頻天線發送出去。
所述的TTL電平數據報文轉換為無線ZIGBEE數據報文是 1)定義一個char型的數組SBUF_ch[],其中SBUF_ch
是地址位,SBUF_ch[l]是功能位,SBUF_ch[2]是數據位,SBUF_ch[2]的長度為數據幀的總長度減去4個字節的長度; 2)把TTL電平數據幀裡的數據位存入所定義的數組SBUF_ch[]中; 3)將存入數據位的數組SBUF_ch[]加載到無線ZIGBEE的數據幀中,轉換為無線
ZIGBEE數據報文。 與現有技術相比,本發明的有益效果是實現了工業現場總線MODBUS與無線ZIGBEE之間的協議轉換,既滿足了信息層的要求,又實現了設備層的無線擴展功能。
圖1是實施例系統組成示意圖。
具體實施例方式以下結合附圖對本發明的系統進一步描述本實施例在以本發明技術方案為前提下進行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護範圍不限於下述的實施例
實施例 如圖1所示,本實施例涉及的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,包括MODBUS總線接口模塊1、電平轉換驅動模塊2和與主控模塊3,其中MODBUS總線接口模塊1與現場總線18相連傳輸MODBUS總線數據報文信息,MODBUS總線接口模塊1
6與電平轉換驅動模塊2相連傳輸MODBUS總線數據報文信息,電平轉換驅動模塊2與主控模塊3相連傳輸TTL電平數據信息,主控模塊3將無線ZIGBEE數據傳輸給ZIGBEE無線網關19,或接收來自ZIGBEE無線網關19的無線ZIGBEE數據。 所述的MODBUS現場總線接口模塊1包括第一 RS232接口 4和第一 RS485接口 5,其中第一RS232接口 4和第一RS485接口 5分別與現場總線18和電平轉換驅動模塊2相連傳輸MODBUS總線數據報文信息。 所述的電平轉換驅動模塊2包括RS232電平轉換驅動模塊6和RS485電平轉換驅動模塊7,其中RS232電平轉換驅動模塊6和RS485電平轉換驅動模塊7分別與MODBUS現場總線接口模塊1相連傳輸MODBUS總線數據報文信息,RS232電平轉換驅動模塊6和RS485電平轉換驅動模塊7分別與主控模塊3相連傳輸TTL電平數據信息。
所述的RS232電平轉換驅動模塊6包括第二 RS232接口 12和MAX232晶片,MAX232晶片包括第一接收器14和第一發送器15,其中第一接收器14將第二 RS232接口12的Rx埠電平轉換成+5V的TTL電平並傳給主控模塊3,第一發送器15將來自於主控模塊3Tx埠的TTL電平轉換成第二 RS232接口 12的Tx埠的接口電平,實現第二 RS232接口 12的電平與TTL電平之間的轉換。 所述的RS485電平轉換驅動模塊7包括第二 RS485接口 13和SP3485e晶片,SP3485e晶片包括第二接收器16和第二發送器17,其中第二接收器16將第二 RS485接口 13的Rx埠電平轉換成+5V的TTL電平並傳給主控模塊3,第二發送器17將來自於主控模塊3的TTL電平轉換成第二 RS485接口 13的Tx端的接口電平,實現第二 RS485接口13的電平與TTL電平之間的轉換。 所述的主控模塊3是JN5139單片機晶片,包括控制器8、射頻天線9、串行接收緩存器10和串行發送緩衝器11,其中控制器8完成MODBUS總線數據報文和無線ZIGBEE數據報文的轉換,控制器8與電平轉換驅動模塊2相連傳輸TTL電平數據信息,射頻天線9通過串行接收緩衝器10和串行發送緩衝器11與控制器8相連傳輸接收到的無線ZIGBEE數據報文和發送的無線ZIGBEE數據報文。 本實施例用於將MODBUS工業現場總線數據轉換為無線ZIGBEE數據時,包括以下步驟 第一步,控制器8讀取運行參數,對各通訊接口模塊和協議轉換裝置進行初始化操作; 採用MODBUS的RTU通訊傳送方式,保證與MODBUS總線設備通訊模式一致,否則會
因為模式不一致而導致通訊失敗,具體的編碼方式如表1所示。 表l
編碼8位二進位
起始位l位
數據位8位
7編碼8位二進位
奇偶校驗位1位(偶校驗位)
停止位l位
錯誤校驗CRC(冗餘循環碼) 第三步,等待接收數據,沒有接收到數據時,則進入休眠狀態;當MODBUS現場總線 接口模塊1接收到MODBUS總線數據報文信息時,當MAX232晶片或者SP3485e晶片的使能 端電平為"0"時,發送器禁止,接收器有效,此時電平轉換驅動模塊2可以接收來自MODBUS 現場總線接口模塊1的數據,MODBUS現場總線接口模塊1將接收到的MODBUS總線數據報 文信息傳給電平轉換驅動模塊2的第二 RS232接口 12或者第二 485接口 13, MAX232晶片 或者SP3485e晶片將MODBUS總線數據電平轉換為TTL電平數據; 第四步,主控模塊3接收到經過轉換的TTL電平數據,由控制器8將該TTL電平數 據報文轉換成無線ZIGBEE數據報文,並由串行發送緩衝器11和射頻天線9將無線ZIGBEE 數據報文發送出去。 所述的TTL電平數據報文轉換成ZIGBEE數據報文是 1)定義一個char型的數組SBUF_ch[],其中SBUF_ch
是地址位,SBUF_ch[l] 是功能位,SBUF—ch[2]是數據位,SBUF—ch[2]的長度為數據幀的總長度減去4個字節的長度。 所減的4個字節即是1個地址碼字節、1個功能碼字節和2個校驗碼字節。 2)把TTL電平數據幀裡的數據位存入所定義的數組SBUF_ch[]中; 3)將存入數據位的數組SBUF_ch[]加載到無線ZIGBEE的數據幀中,轉換為無線
ZIGBEE數據報文,完成從MODBUS總線報文到無線ZIGBEE報文的轉換。 本實施例用於將無線ZIGBEE數據轉換為MODBUS工業現場總線數據時,包括以下
步驟 第一步,控制器8讀取運行參數,對各通訊接口模塊和協議轉換裝置進行初始化 操作; 採用MODBUS的RTU通訊傳送方式,保證與MODBUS總線設備通訊模式一致,否則會 因為模式不一致而導致通訊失敗,具體的編碼方式如表1所示。 第二步,等待接收數據,沒有接收到數據時,則進入休眠狀態;當主控模塊3的射 頻天線9和串行接收緩衝器10接收到無線ZIGBEE數據報文信息時,控制器8將接收到的 無線ZIGBEE數據報文轉換為TTL電平數據報文;
所述的無線ZIGBEE數據報文轉換成TTL電平數據報文是 1)從無線ZIGBEE數據報文中提取數據幀,得到數組SBUF_ch [],其中SBUF_ch
是地址位,SBUF_ch[l]是功能位,SBUF_ch[2]是數據位; 2)根據數據幀的總長度減去4個字節,得到數據位SBUF_ch[2]的長度,並提取數 據位SBUF—ch[2]; 3)將數據位SBUF_ch[2]存入MODBUS總線的數據幀中,轉換為TTL電平數據報文。
第三步,將得到的TTL電平數據報文由電平轉換驅動模塊2的MAX232晶片或者 SP3485e晶片轉換為MODBUS總線數據報文; 第四步,當MAX232晶片或者SP3485e晶片的使能端電平為"l"時,發送器有效,接 收器禁止,電平轉換驅動模塊2可以向MODBUS現場總線接口模塊1發送數據;電平轉換驅 動模塊2通過RS232接口或者RS485接口 ,將MODBUS總線數據報文信息通過MODBUS現場 總線接口模塊1傳輸給現場總線。 本實施例實現了工業現場總線MODBUS與無線ZIGBEE之間的協議轉換,既滿足了 信息層的要求,又實現了設備層的無線擴展功能。
權利要求
一種MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,其特徵在於,包括MODBUS總線接口模塊、電平轉換驅動模塊和與主控模塊,其中MODBUS總線接口模塊與現場總線相連傳輸MODBUS總線數據報文信息,MODBUS總線接口模塊用於現場總線和電平轉換驅動模塊間的串行二進位數據傳輸,MODBUS總線接口模塊與電平轉換驅動模塊相連傳輸MODBUS總線數據報文信息,電平轉換驅動模塊用於信號電平值較高的現場總線接口與TTL低電平的主控模塊之間的電平轉換,電平轉換驅動模塊與主控模塊相連傳輸TTL電平數據信息,主控模塊用於實現MODBUS總線數據報文信息和無線ZIGBEE數據之間的轉換以及無線ZIGBEE數據的接收和發送。
2. 根據權利要求1所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,其 特徵是,所述的MODBUS現場總線接口模塊,包括第一RS232接口和第一RS485接口,其中 第一 RS232接口和第一 RS485接口分別與現場總線和電平轉換驅動模塊相連傳輸MODBUS 總線數據報文信息。
3. 根據權利要求1所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,其 特徵是,所述的電平轉換驅動模塊,包括RS232電平轉換驅動模塊和RS485電平轉換驅動 模塊,其中RS232電平轉換驅動模塊和RS485電平轉換驅動模塊分別與MODBUS現場總線 接口模塊相連傳輸MODBUS總線數據報文信息,RS232電平轉換驅動模塊用於實現RS232接 口高電平與TTL電平之間的轉換,RS485電平轉換驅動模塊用於實現RS485接口高電平與 TTL電平之間的轉換,RS232電平轉換驅動模塊和RS485電平轉換驅動模塊分別與主控模塊 相連傳輸TTL電平數據信息。
4. 根據權利要求3所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,其 特徵是,所述的RS232電平轉換驅動模塊包括RS232電平轉換晶片和第二 RS232接口 ,其 中RS232電平轉換晶片和主控模塊相連傳輸TTL電平數據信息,RS232電平轉換晶片通過 第二 RS232接口與MODBUS現場總線接口模塊相連傳輸MODBUS總線數據報文信息。
5. 根據權利要求3所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置,其 特徵是,所述的RS485電平轉換驅動模塊包括RS4S5電平轉換晶片和第二 RS485接口,其 中RS4S5電平轉換晶片和主控模塊相連傳輸TTL電平數據信息,RS485電平轉換晶片通過 第二 RS485接口與MODBUS現場總線接口模塊相連傳輸MODBUS總線數據報文信息。
6. 根據權利要求1所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置, 其特徵是,所述的主控模塊包括控制器、射頻天線、串行接收緩衝器和串行發送緩衝器,其 中控制器與電平轉換驅動模塊相連傳輸TTL電平數據信息,控制器用於實現有線MODBUS 數據報文和無線ZIGBEE數據報文的轉換,射頻天線用於接收和發送無線ZIGBEE數據,串 行接收緩衝器寄存接收到的無線ZIGBEE數據,串行發送緩衝器寄存待發送的無線ZIGBEE 數據,射頻天線通過串行接收緩衝器和串行發送緩衝器與控制器相連傳輸接收到的無線 ZIGBEE數據和發送的無線ZIGBEE數據。
7. —種根據權利要求1所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置 的轉換方法,包括以下步驟第一步,主控制器讀取運行參數,對各通訊接口模塊和協議轉換裝置進行初始化操作;第二步,等待接收數據,沒有接收到數據時,則進入休眠狀態;當主控模塊接收到無線ZIGBEE數據時,執行第三步;當MODBUS現場總線接口模塊接收到MODBUS總線數據報文信 息時,執行第四步;第三步,主控模塊的控制器對從串行接收緩衝器中接收到的無線ZIGBEE數據報文信 息進行解析,將無線ZIGBEE數據報文轉換成TTL電平數據報文,並由電平轉換驅動模塊將 TTL數據報文轉換為MODBUS總線數據報文,實現無線ZIGBEE數據報文轉換為MODBUS總線 數據報文,通過MODBUS現場總線接口模塊將該MODBUS總線數據報文信息傳給現場總線;第四步,MODBUS現場總線接口模塊將接收到的MODBUS總線數據報文信息傳給電平轉 換驅動模塊,電平轉換驅動模塊將MODBUS總線數據報文轉換為TTL電平數據報文,主控模 塊的控制器將該TTL電平數據報文轉換為無線ZIGBEE數據報文,實現MODBUS總線數據報 文轉換為無線ZIGBEE數據報文,並通過串行發送緩衝器和射頻天線發送出去。
8. 根據權利要求7所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換方法,其 特徵是,第三步中所述的無線ZIGBEE數據報文轉換成TTL電平數據報文是1) 從無線ZIGBEE數據報文中提取數據幀,得到數組SBUF—ch[],其中SBUF_ch
是 地址位,SBUF_ch[l]是功能位,SBUF_ch[2]是數據位;2) 根據數據幀的總長度減去4個字節,得到數據位SBUF—ch[2]的長度,並提取數據位 SBUF_ch [2];3) 將數據位SBUF_ch[2]存入MODBUS總線的數據幀中,轉換為TTL電平數據報文。
9. 根據權利要求7所述的MODBUS工業現場總線和無線ZIGBEE間的協議轉換方法,其 特徵是,第四步中所述的TTL電平數據報文轉換為無線ZIGBEE數據報文是1) 定義一個char型的數組SBUF—ch[],其中SBUF_ch
是地址位,SBUF_ch[l]是功 能位,SBUF_ch[2]是數據位,SBUF_ch[2]的長度為數據幀的總長度減去4個字節的長度;2) 把TTL電平數據幀裡的數據位存入所定義的數組SBUF—ch[]中;3) 將存入數據位的數組SBUF—ch[]加載到無線ZIGBEE的數據幀中,轉換為無線 ZIGBEE數據報文。
全文摘要
本發明公開了一種通信技術領域的MODBUS工業現場總線和無線ZIGBEE間的協議轉換裝置及其方法,裝置包括MODBUS總線接口模塊、電平轉換驅動模塊和主控模塊,其中MODBUS總線接口模塊與電平轉換驅動模塊相連,電平轉換驅動模塊與主控模塊相連;方法是通過電平轉換驅動模塊實現MODBUS總線信號電平與主控模塊TTL數據電平之間的轉換,主控模塊實現TTL電平數據報文與無線ZIGBEE數據報文之間的轉換,這樣就完成了有線MODBUS數據和無線ZIGBEE數據間的轉換。本發明的優點就是實現了工業現場總線MODBUS與無線ZIGBEE之間的協議轉換,既滿足了信息層的要求,又實現了設備層的無線擴展功能。
文檔編號H04L29/06GK101729572SQ20091031003
公開日2010年6月9日 申請日期2009年11月20日 優先權日2009年11月20日
發明者關新平, 梁振虎, 陳彩蓮, 高洪昌, 龍承念 申請人:上海交通大學