CN102438017B - 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 - Google Patents
基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 Download PDFInfo
- Publication number
- CN102438017B CN102438017B CN201110418134.1A CN201110418134A CN102438017B CN 102438017 B CN102438017 B CN 102438017B CN 201110418134 A CN201110418134 A CN 201110418134A CN 102438017 B CN102438017 B CN 102438017B
- Authority
- CN
- China
- Prior art keywords
- modbus
- bacnet
- message
- address
- ethernet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种基于路由功能的Modbus网络设备和BACnet Ethernet网络设备相互转化的装置及转化方法,包括以太网网络接口、控制单元、串行接口、工作电源。工作电源与网络接口、控制单元、串行接口分别连接,并向其提供工作电源;控制单元对Modbus报文和BACnet Ethernet报文进行解析、路由定向、重新封装;网络接口连接于控制单元,接收控制单元发送的报文数据并将其转发到以太网网络上;串行接口连接于控制单元,接收控制单元发送的报文数据并将其转发到Modbus网络上。本发明使用方便、能耗低,可以将Modbus设备直接封装成为BACnet设备,实现在BACnet环境下对Modbus设备的透明管理、操作和调试,提高了系统集成的应用价值。
Description
技术领域
本发明涉及一种基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法,可应用在以BACnet Ethernet通讯协议为主要通信协议的网络设备上,将Modbus设备路由定位并封装成BACnet设备,实现在BACnet环境下对Modbus设备直接管理,从而为BACnetEthernet设备和Modbus设备集成带来更大的应用和开发价值。
背景技术
自上世纪80年代出现第一幢智能建筑以来,智能建筑系统不断采用最新技术进行系统集成。楼宇自控网络协议BACnet(Building Automation and Control Networks)是针对楼宇自控领域的标准,以其先进的技术、完善的体系结构和开放的理念迅速得到了广泛的推广和应用,并正式成为建筑智能化系统领域中的唯一ISO标准(ISO 16484-5)。
BACnet协议规范采用了网络4层架构,分别为应用层、网络层、数据链路层和物理层。在数据链路层和物理层提供五种选择,其中以太网选择之一是由ISO8802 Type 1定义的逻辑连接控制协议,与ISO8802媒体访问控制MAC和物理层协议组合一起。ISO8802 Ethernet协议的字节报文比IP通讯协议报文较短,通信效率较高,可以避开使用IP地址技术的一些弊端,是路由器、网关类等以太网设备的以太网端口的通信协议首选。
Modbus通信协议做为工业自动化网络协议规范的国家标准之一,成为楼宇机电设备控制器和测控仪表串行通信接口的常规配置。
传统的BACnet/Modbus网关只能通过数据共享来实现数据交换,这种“不透明”方式不仅集成和Modbus设备管理较为困难,而且必须为大量的共享数据准备大容量存储器进行临时保存。因此,开发一种基于路由功能的BACnet Ethernet和Modbus协议转装置,在网络层实现Modbus设备地址的解析和路由定向,在应用层完成对Modbus设备数据值的BACnet封装,将Modbus设备直接封装成为BACnet设备。这样就可弥补传统Modbus网关管理不透明的缺陷,极大的方便在BACnet环境中对Modbus设备的管理、调试和维护,提高系统集成的价值。
发明内容
鉴于上述,本发明的目的就是提供一种基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法。
本发明采用的技术解决方案为:
一种基于路由功能的Modbus和BACnet Ethernet协议转化装置,包括:
控制单元,用于对收到的Modbus通信协议的报文进行报文解析、定向和重新封装,改装成BACnet Ethernet通信协议的报文,并且对收到BACnet Ethernet通信协议的报文进行解析、定向和重新封装,改装成Modbus通信协议的报文;
网络接口,用于控制单元与BACnet Ethernet通讯网络之间的通讯,该网络接口与所述控制单元连接;
串行接口,用于控制单元与Modbus通讯网络之间的通讯,该串行接口与所述控制单元连接;
工作电源,用于向控制单元、网络接口、串行接口供电。
一种基于路由功能的Modbus和BACnet Ethernet协议转化方法,该方法采用BACnet NPDU报文中的NPCI内存放的是Modbus设备地址,当BACnet软件或BACnet以太网设备发出BACnetNPDU报文时,直接将Modbus设备地址解析出来,传递给处理Modbus设备通信协议的任务中,Modbus设备通信处理任务的下一次指令则直接针对这个地址的Modbus设备进行主从查询,即发出对这个地址的Modbus设备的查询指令字节。
将Modbus设备回复的应答数据报文中的Modbus设备地址,直接解析出来,传递给处理BACnet设备通信协议的任务中,BACnet设备通信处理任务的下一次任务执行则回复给查询软件或其它以太网设备所查询的Modbus设备的地址及数据内容。
协议转换器软件为BACnet通信协议的实现分配一个独立任务,为Modbus通信协议的实现分配另一个独立任务,在这两个独立运行的任务之间建立路由关系,传递Modbus设备的通信协议地址和数据内容。
本发明的优点在于:
采用嵌入式技术在网络层实现Modbus设备地址的解析路由定向,在应用层完成对Modbus设备数据值的BACnet封装,将Modbus设备封装为具有BACnet对象属性的BACnet设备,可以利用现有的各种BACnet软件进行管理和操作。
附图说明
图1是本发明的电路框图;
图2是BACnet Ethernet通信协议的报文结构图;
图3是BACnet Ethernet报文转化为Modbus报文的解析和封装过程;
图4是Modbus报文转化为BACnet Ethernet报文的的解析和封装过程。
具体实施方式
本发明涉及基于路由功能的Modbus和BACnet Ethernet协议转化装置及方法。
如图1所示,本发明装置包括控制单元、网络接口、串行接口和工作电源,网络接口和串行接口与控制单元连接,工作电源向控制单元、网络接口、串行接口供电。
控制单元可通过微处理电路1m3s6911+电路而实现。网络接口可为RJ45标准网络接口。串行接口为RS485标准接口。工作电源是将输入的交流电进行整流滤波而向其它单元输出。
由于本发明要同时与BACnetE thernet和Modbus两种不同的通信协议的软件或设备进行通信,所以需要多任务功能来达到同时通信的目的。为实现多任务功能,本发明的软件系统架构上采用了嵌入式操作系统ucOSII,即将嵌入式操作系统ucOSII连同BACnet Ethernet报文与Modbus报文相互转化的程序一同编译下载到控制单元,实现了可同时侦听和处理BACnet Ethernet通信协议帧和Modbus通信协议帧的功能。
图2是BACnet Ethernet通信协议的报文结构图。其中:APDU为应用层报文;NPDU为网络层报文;NPCI为网络层报文头(控制信息);LPDU为数据链路层报文;LLC为逻辑链路控制;X82X82X03为服务访问点信息;物理层报文为具体硬件收发字节内容。
本发明为BACnet Ethernet通信协议的实现分配一个独立任务,为Modbus通信协议的实现分配另一个独立任务,在这两个独立运行的任务之间建立路由关系,传递Modbus设备的通信协议地址和数据内容。
当BACnet软件或BACnet以太网设备发出BACnet NPDU报文时,直接将Modbus设备地址解析出来,传递到处理Modbus设备通信协议的任务中,Modbus设备通信处理任务的下一次指令则直接针对这个地址的Modbus设备进行主从查询,即发出对这个地址的Modbus设备的查询指令字节。
将Modbus设备回复的应答数据报文中的Modbus设备地址直接解析出来,传递给处理BACnet设备通信协议的任务中,BACnet设备通信处理任务的下一次任务执行则回复给查询软件或其它以太网设备所查询的Modbus设备的地址及数据内容。
下面具体说明如何建立路由关系的具体实现过程:
当转换器收到BACnet软件或其它BACnet以太网设备发出的BACnet对象“Who is”查询指令时,转换器应根据已经在线Modbus设备的地址,为每个Modbus设备自动分配生成BACnet通信协议必需的器件编号,例如,假设Modbus设备所在的RS485通信网络被定义为BACnet通信网络,网络编号为61,则硬件地址为1的Modbus设备的BACnet器件编号为6101,硬件地址为2的Modbus设备的BACnet器件编号为6102,…,依此类推,将每个在线的Modbus设备均分配一个独立的BACnet通信时唯一辨识的编号。开始在Modbus设备地址的前后封装网络编号及其器件编号,组成标准的BACnet报文,并向BACnet软件或其它BACnet以太网设备发回“I am”回应报文。
当BACnet软件或其它BACnet以太网设备收到转换器发出的“I am”回应报文后,开始发出查询该Modbus设备的型号、数据等信息的BACnet报文。当转换器收到该报文时,将报文其中的NPCI网络报文头部中的Modbus设备地址信息解析出来,并立即启动Modbus侧的查询任务,将查询该地址设备相关信息的Modbus报文发送出去,并将收到的查询结果封装为BACnet报文进行回复,实现对BACnet的“Read”响应功能。
下面具体说明对Modbus通信协议报文和BACnet Ethernet通信协议报文如何解析和重新封装。
BACnet Ethernet通信协议报文转化为Modbus通信协议报文的解析和封装过程见图3。
解析步骤:
第一步:解析出BACnet Ethernet通信协议报文中MAC地址中的广播/单播信息;
第二步:解析出LLC长度中的长度值;
第三步:移除服务访问点信息“X82X82X03”字节内容;
第四步:解析出BACnet NPDU报文中的NPCI头部内存放的Modbus设备地址。
封装步骤:
第一步:将Modbus设备地址存入Modbus报文设备地址字节;
第二步:在地址字节后面,封装查询指令字节,形成最终实际物理硬件收发报文内容。
Modbus通信协议报文转化为BACnet Ethernet通信协议报文的解析和封装过程见图4。
解析步骤:
第一步:解析出Modbus通信协议报文中的Modbus设备地址并存储;
第二步:解析出Modbus通信协议报文中的功能码并存储;
第三步:解析出Modbus通信协议报文中的数据内容并存储;
第四步:解析出CRC校验
封装步骤:
第一步:在Modbus设备地址前后封装网络编号和其器件编号,将Modbus设备地址存入BACnet NPDU报文中的NPCI头部;
第二步:将Modbus报文的功能码、数据内容、CRC校验码存入BACnet NPDU报文中的APDU;
第三步:在实际内容信息报文前端封装服务访问点信息“X82X82X03”字节内容;
第四步:根据实际内容报文长度重新计算LLC长度值并在“X82X82X03”前端封装,形成LPDU报文;
第五步:封装具体的设备硬件MAC地址,形成最终实际物理硬件收发报文内容。
Claims (4)
1.基于路由功能的Modbus和BACnet Ethernet协议转化方法,其特征在于包括步骤:
1)为BACnet Ethernet通信协议的实现分配一个独立任务,为Modbus通信协议的实现分配另一个独立任务,在这两个独立运行的任务之间建立路由关系,传递Modbus设备的通信协议地址和数据内容;
2)BACnet NPDU报文中的NPCI内存放的是Modbus设备地址,当BACnet软件或BACnet以太网设备发出BACnet NPDU报文时,直接将Modbus设备地址解析出来,传递给处理Modbus设备通信协议的任务,处理Modbus设备通信协议的任务的下一次指令则直接针对这个地址的Modbus设备进行主从查询,即发出对这个地址的Modbus设备的查询指令字节;
3)将Modbus设备回复的应答数据报文中的Modbus设备地址,直接解析出来,传递给处理BACnet设备通信协议的任务,处理BACnet设备通信协议的任务的下一次指令则执行回复给查询软件或其它以太网设备所查询的Modbus设备的地址及数据内容。
2.如权利要求1所述的基于路由功能的Modbus和BACnet Ethernet协议转化方法,其特征在于:
所述步骤1)中建立路由关系的具体实现过程为:
1.1)当转换器收到BACnet软件或其它BACnet以太网设备发出的BACnet对象“Who is”查询指令时,转换器应根据已经在线Modbus设备的地址,为每个Modbus设备自动分配生成BACnet通信协议必需的器件编号,在Modbus设备地址的前后封装网络编号和其器件编号,组成标准的BACnet报文,并向BACnet软件或其它BACnet以太网设备发回“I am”回应报文;
1.2)当BACnet软件或其它BACnet以太网设备收到转换器发出的“I am”回应报文后,开始发出查询该Modbus设备的型号、数据等信息的BACnet报文,当转换器收到该报文时,将报文其中的NPCI网络报文头部中的Modbus设备地址信息解析出来,并立即启动Modbus侧的查询任务,将查询该地址设备相关信息的Modbus报文发送出去,并将收到的查询结果,封装为BACnet报文进行回复,实现对BACnet的“Read”响应功能。
3.如权利要求1所述的基于路由功能的Modbus和BACnet Ethernet协议转化方法,其特征在于:
在所述步骤3)中,将Modbus设备回复的应答数据报文转化为BACnet Ethernet通信协议报文,其具体实现过程为:
解析出Modbus通信协议报文中的Modbus设备地址并存储;
解析出Modbus通信协议报文中的功能码并存储;
解析出Modbus通信协议报文中的数据内容并存储;
进行CRC校验;
在Modbus设备地址前后封装网络编号和其器件编号,存入BACnet NPDU报文中的NPCI头部;
将Modbus报文的功能码、数据内容、CRC校验码存入BACnet NPDU报文中的APDU;
在实际内容信息报文前端封装服务访问点信息“X82X82X03”字节内容;
根据实际内容报文长度重新计算LLC长度值并在“X82X82X03”前端封装,形成LPDU报文;
封装具体的设备硬件MAC地址,形成最终实际物理硬件收发报文内容。
4.如权利要求1所述的基于路由功能的Modbus和BACnet Ethernet协议转化方法,其特征在于:
在所述步骤2)中,将存放有Modbus设备地址的BACnet Ethernet通信协议报文转化为Modbus通信协议报文,其具体实现过程为:
解析出BACnet Ethernet通信协议报文中MAC地址中的广播/单播信息;
解析出LLC长度中的长度值;
移除服务访问点信息“X82X82X03”字节内容;
解析出BACnet NPDU报文中的NPCI头部内存放的Modbus设备地址;
将Modbus设备地址存入Modbus报文设备地址字节;
在地址字节后面,封装查询指令字节,形成最终实际物理硬件收发报文内容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110418134.1A CN102438017B (zh) | 2011-12-14 | 2011-12-14 | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110418134.1A CN102438017B (zh) | 2011-12-14 | 2011-12-14 | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102438017A CN102438017A (zh) | 2012-05-02 |
CN102438017B true CN102438017B (zh) | 2014-12-24 |
Family
ID=45985889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110418134.1A Expired - Fee Related CN102438017B (zh) | 2011-12-14 | 2011-12-14 | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102438017B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105592018A (zh) * | 2014-10-30 | 2016-05-18 | 青岛海信日立空调系统有限公司 | 一种协议转换的方法、设备及楼宇自控系统 |
CN106130855B (zh) * | 2016-07-18 | 2019-06-11 | 珠海格力电器股份有限公司 | 数据处理的方法及装置 |
CN107222458A (zh) * | 2017-04-17 | 2017-09-29 | 珠海格力电器股份有限公司 | 一种兼容Modbus协议的BACnet协议栈的数据处理方法及系统 |
CN108134837B (zh) * | 2017-12-26 | 2021-05-04 | 北京天诚同创电气有限公司 | 用于变流器的监控装置和变流器 |
CN110376408A (zh) * | 2019-07-29 | 2019-10-25 | 苏州和欣致远节能科技有限公司 | 一种带BACnet控制器功能的电表 |
CN114374574B (zh) * | 2021-12-31 | 2024-01-23 | 广东工业大学 | 支持B-SS的嵌入式BACnet装置、传感器及楼宇自控系统 |
CN115412404A (zh) * | 2022-09-01 | 2022-11-29 | 上海能誉科技股份有限公司 | 一种标准化工业网关及路由功能的装置及其方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851577A (zh) * | 2006-05-25 | 2006-10-25 | 北京利达恒信科技发展有限公司 | 现场控制器的虚拟控制方法 |
CN201689338U (zh) * | 2010-05-24 | 2010-12-29 | 北京和欣运达科技有限公司 | 具有Modbus通讯接口的BACnet现场控制器 |
CN102045334A (zh) * | 2010-09-27 | 2011-05-04 | 北京泰豪智能工程有限公司 | 协议转换方法和装置 |
CN102075549A (zh) * | 2011-02-28 | 2011-05-25 | 中国人民解放军国防科学技术大学 | 一种基于梯度攻击假设的网络脆弱性关联分析方法 |
-
2011
- 2011-12-14 CN CN201110418134.1A patent/CN102438017B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1851577A (zh) * | 2006-05-25 | 2006-10-25 | 北京利达恒信科技发展有限公司 | 现场控制器的虚拟控制方法 |
CN201689338U (zh) * | 2010-05-24 | 2010-12-29 | 北京和欣运达科技有限公司 | 具有Modbus通讯接口的BACnet现场控制器 |
CN102045334A (zh) * | 2010-09-27 | 2011-05-04 | 北京泰豪智能工程有限公司 | 协议转换方法和装置 |
CN102075549A (zh) * | 2011-02-28 | 2011-05-25 | 中国人民解放军国防科学技术大学 | 一种基于梯度攻击假设的网络脆弱性关联分析方法 |
Non-Patent Citations (1)
Title |
---|
基于BACnet和Modbus协议转换器的设计;廖方诚 等;《武汉理工大学学报》;20091231;第31卷(第23期);第89-91页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102438017A (zh) | 2012-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102438017B (zh) | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 | |
RU2444848C2 (ru) | Система управления с радиосообщениями, содержащими информацию о последовательности сообщений | |
CN105763426B (zh) | 一种基于多协议即时通信系统的物联网业务处理系统 | |
CN105450489B (zh) | 输出优先实现最短报文的HEBus高效现场总线系统及通信方法 | |
CN102833112B (zh) | 一种具有环网功能的通信管理机 | |
CN102594711B (zh) | 一种在边缘设备上的报文转发方法和边缘设备 | |
CN110324165A (zh) | 网络设备的管理方法、装置及系统 | |
JP7040734B2 (ja) | フレーム集約方法、ネットワーク設定フレーム送信方法およびデバイス | |
CN100370788C (zh) | 在网络环境仿真中采用虚拟网卡实现数据通信的方法 | |
CN107210947A (zh) | 虚拟可扩展局域网上的双向转发检测 | |
CN107959620B (zh) | 综采设备识别方法、装置、系统、网关及存储介质 | |
CN106559302A (zh) | 单播隧道建立方法、装置和系统 | |
CN104937896A (zh) | 地址解析协议消息的处理方法和转发器、控制器 | |
CN102611710A (zh) | 基于mms的调度主站与变电站的数据交互方法及系统 | |
CN104243427A (zh) | 虚拟机在线迁移方法、数据包传输方法和设备 | |
CN103326936A (zh) | 多种异构感知层网络统一接入的多协议物联网网关 | |
CN104092790B (zh) | 基站主从站通信方法和系统 | |
CN102571795A (zh) | 基于BACnet和EIB协议的楼宇自控系统 | |
WO2023185823A1 (zh) | 工业设备的远程通信方法、装置以及设备 | |
CN204360184U (zh) | 一种基于实时数据库的Modbus设备主从站通讯管理系统 | |
CN103728957B (zh) | 一种基于实时数据库的hart现场设备管理方法及系统 | |
CN108809949A (zh) | profinet、FF H1、CAN和profibus协议之间转换和调度的方法 | |
CN104407591A (zh) | 一种基于实时数据库的Modbus设备主从站通讯管理方法及系统 | |
CN106850754A (zh) | 工业通信系统和工业网关 | |
CN104506339A (zh) | 基于profinet的工业以太网网络拓扑管理实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20141224 Termination date: 20171214 |
|
CF01 | Termination of patent right due to non-payment of annual fee |