CN102571795B - 基于BACnet和EIB协议的楼宇自控系统 - Google Patents
基于BACnet和EIB协议的楼宇自控系统 Download PDFInfo
- Publication number
- CN102571795B CN102571795B CN201210008863.4A CN201210008863A CN102571795B CN 102571795 B CN102571795 B CN 102571795B CN 201210008863 A CN201210008863 A CN 201210008863A CN 102571795 B CN102571795 B CN 102571795B
- Authority
- CN
- China
- Prior art keywords
- bacnet
- eib
- subnet
- address
- pin
- 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
Abstract
本发明公开一种基于BACnet和EIB协议的楼宇自控系统及其双协议转换方法,系统由路由器或网桥连接的BACnet子网、BACnet/EIB网关连接的EIB总线子网和BACnet监控中心组成。网关经MSTP模块、EIB总线耦合单元分别接入BACnet/MSTP子网、EIB总线子网;网关软件由BACnet报文解析单元、EIB报文解析单元和BACnet/EIB协议变換单元组成;BACnet/EIB协议变換单元包括双协议地址变換模块、双协议APCI变換模块和双协议应用程序数据变換模块,以及双协议地址关联表和双协议APCI对照表。BACnet/EIB网关将EIB融入BACnet,两种楼宇自控协议优势互补,使基于BACnet和EIB协议的楼宇自控系统具有优异的性价比。
Description
技术领域
本发明属楼宇自控的技术范畴,特别是指基于BACnet和EIB协议的楼宇自控技术及其双协议转换方法。
背景技术
楼宇自控领域中,BACnet和EIB协议是赢得广泛认同和应用的两大主流国际标准。
欧洲安装总线(EIB)由Siemens、ABB等企业首先提出,1990年成立的EIBA为EIB的管理机构,2010年EIBA的全球注册会员突破400;国际上很多知名公司相继推出符合EIB规范的系列产品,目前已占据欧洲楼宇自动化设备80%的市场。1999年,以EIB为基础、汲取欧洲另两个楼宇自控协议(BatiBus和EHSA)配置模式等优点,提出了KNX/EIB协议。2003年,KNX/EIB列入欧洲标准EN50090;2006年,列入国际标准ISO/IEC14543-3;2007年7月,列入中国标准GB/Z20965--2007。KNX/EIB(以下简称EIB)标准化程度高,协议具有结构简单、高效稳定的优异特性,是生产高性价比和高可靠性楼宇自控产品的技术支撑和保障。EIB源自楼宇照明、百叶窗(窗帘)、安防等控制的共性需求制定协议,采用独特的组(逻辑)地址高效通信机制,并将楼宇自控产品简化成两类:命令发送者--传感器,命令接收者--执行器;上述考量对于开关量或复杂度一般的控制而言,如照明、安防等控制,具有无可比拟的技术经济优势;但当EIB拓展至复杂控制系统时,如供暖制冷及空调系统(HVAC&R),EIB产品受制于协议自身的局限性,始终难有大的作为;EIB协议体系框架内实施HVAC&R工程时,所需的复杂控制功能往往只能求助EIB监控中心、即不得不放弃EIB无需主控制器的点对点(peertopeer)分布式控制方式,导致系统复杂度的增大、可靠性和效率的下降。
1987年,美国供暖制冷及空调工程师协会ASHRAE提出BACnet协议;1995年6月,ASHRAE推出BACnet1995版,同年12月成为ANSI美国国家标准;2003年,BACnet协议批准成为国际标准IS016484--5;2009年10月,BACnet中国协会成立。BACnet源自HVAC&R等控制的共性需求制定协议,将7层OSI模型精简为4层:低2层引入4种业已得到成功规模应用的物理层和数据链路层协议,以适应不同性价比及保护原有投资的诉求;根据楼宇自控网络结构较固定的特征,BACnet网络层功能进行了多方面的简化--人工配置单一静态路径的路由表;对象、属性、服务定义在BACnet的应用层,借鉴面向对象的设计理念、参照IS08824/8825ASN.1规则对自控设备进行统一的形式化描述,自控设备间的互操作则采用混合模式--间接模式用于楼宇自控设备的楼宇控制功能,直接模式与楼宇自控设备的通信及管理有关。BACnet沿袭工控领域的产品分类法,分为传感器、执行器和控制器;在楼宇的HVAC&R工程系统中,相应的BACnet自控设备品种丰富、功能完备、性价比高,牢牢占据着市场的主导地位;但当BACnet涉足仅需简单控制的系统时,如照明及百叶窗(窗帘)系统,BACnet产品亦受制于协议自身的局限性,多年来成效有限差强人意;BACnet协议体系框架内实施照明及百叶窗(窗帘)等工程时,一方面BACnet自控设备的复杂控制功能被束之高阁,另一方面又因BACnet软硬件资源开销大,导致其性价比欠佳、竞争力缺失;因此,BACnet智能楼宇中高效智能的HVAC&R与简单的硬接线(继电器)照明并存的奇特景象屡见不鮮,2011年5月新落成的杭州某医院大楼就是一个典型案例。
BACnet本质上是一个强设备控制、弱信息管理的协议,EIB却是一个强信息管理、弱设备控制的协议;因此,EIB在弱控制系统中呈现较大的优势,在强控制系统中则优势不在,而BACnet恰恰相反。合乎逻辑的结论是,或沿着现有技术路线图,继续改进BACnet和EIB的短板产品,但理论分析和工程实践均表明:希望微乎其微;或综合BACnet和EIB的長处,开发基于BACnet和EIB协议的楼宇自控系统。先后提出的工业控制现场总线协议达百种,目前有市场影响力的现场总线协议有十余种,立足特定工业领域需求制定的现场总线协议,在该工业领域中拥有比较优势;尽管毎种现场总线协议不断吸取其它总线协议的精华,但并未出现期待的一统天下,因为不同的工业现场总线协议各有侧重点、优劣点各异;目前业内的共识是:可预见期间内多种工业现场总线将维持并存的局面,工业现场总线协议的现状具有普遍的意义,楼宇自控协议也概莫能外--多种楼宇自控协议将長期并存。楼宇自控协议的关注点是与Internet的连接,不同楼宇自控协议间的融合互补却乏人问津,本发明旨在补上这一课。楼宇自控协议互联方面的代表性知识产权成果如下:
·发明专利“欧洲安装总线系统的嵌入式因特网接入装置”(ZL200710067887.6),提出将EIB连接Internet的解决方案。
·发明专利“开放式楼宇自控网络协议转化装置及转化方法”(申请号201010621123.9),提出BACnet/IP和BACnet/Ethernet网络设备相互转化的装置及转化方法。
·发明专利“将BACnet协议转换成Profibus协议的通讯协议转换器“(申请号200910100268.1),提出将BACnet协议转换成Profibus协议的通讯协议转换器。
上述有益探索,指出了BACnet、EIB接入Internet,BACnet与Profibus相连的技术路线,但探索成果仍存在局限,尚未涉及各有所長的不同楼宇自控协议间的互联融合,有必要在现有研究成果基础上作深入的研究与创新。
发明内容
本发明的目的是克服现有技术的不足,综合BACnet和EIB两种协议的优势,提供一种基于BACnet和EIB协议的楼宇自控系统及其双协议转换方法。
一种基于BACnet和EIB协议的楼宇自控系统由BACnet监控中心、BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器、BACnet网桥、BACnet/EIB网关、BACnet/ISO08802-3设备节点、BACnet/LonTalk设备节点、BACnet/PTP设备节点、BACnet/MSTP设备节点、EIB总线设备节点组成;其中,BACnet监控中心通过BACnet/MSTP子网分别与BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器、BACnet网桥、BACnet/EIB网关相连,BACnet/ISO08802-3路由器通过BACnet/ISO08802-3子网与各BACnet/ISO08802-3设备节点相连,BACnet/LonTalk路由器通过BACnet/LonTalk子网与BACnet/LonTalk设备节点相连,BACnet/PTP路由器通过BACnet/PTP子网与各BACnet/PTP设备相连,BACnet网桥通过BACnet/MSTP子网与各BACnet/MSTP设备节点相连,BACnet/EIB网关通过EIB总线子网与各EIB总线设备节点相连;BACnet网桥连接相同数据链路层和物理层的BACnet子网,路由器连接不同数据链路层和物理层的BACnet子网,EIB总线子网与BACnet则借助BACnet/EIB网关进行连接;网关经MSTP模块接入BACnet/MSTP子网、经EIB总线耦合单元接入EIB总线子网;网关不仅执行BACnet网络和EIB总线子网间的路由,而且具备BACnet和EIB两种协议应用层数据的变换功能。
BACnet/EIB网关电路的连接关系为:处理器分别与存储器、按键、显示模块、MSTP模块、串行PEI16协议转换模块相接;串行PEI16协议转换模块与EIB总线耦合单元相接,并接入EIB总线子网;MSTP模块由光电隔离单元和RS485单元组成,处理器经光电隔离单元和RS485单元相接,RS485单元接入BACnet/MSTP子网;所述的处理器是以ARM920T为内核的S3C2410X芯片,MSTP模块的光电隔离单元采用两个6N137芯片、RS485单元采用MAX490芯片,存储器采用K9F1208UOM芯片,显示模块采用NL2432DR22。
MSTP模块电路为:BACnet/MSTP总线上的Data1+与MAX490的引脚6相连,BACnet/MSTP总线上的Data1-与MAX490的引脚5相连,BACnet/MSTP总线上的Data2+与MAX490的引脚7相连,BACnet/MSTP总线上的Data2-与MAX490的引脚8相连,BACnet/MSTP总线上的GND与MAX490的引脚4并联后接地,MAX490的引脚1接电源+12V,MAX490的引脚2与电阻R1的一端相连,MAX490的引脚3与电阻R2的一端相连,第一6N137芯片的引脚2与电阻R1的另一端相连,第一6N137芯片的引脚3与引脚5并联后接地,第一6N137芯片的引脚6与S3C2410X芯片的引脚RXD0、电阻R3的一端相连,第一6N137芯片的引脚8与第二6N137芯片的引脚8并联后与电阻R3的另一端、电阻R4的一端、电源+5V、电容C1的一端相连,第二6N137芯片的引脚2与电阻R2的另一端相连,第二6N137芯片的引脚3与引脚5并联后接地,第二6N137芯片的引脚6与S3C2410X芯片的引脚TXD0、电阻R4的另一端相连,电容C1的另一端接地。
EIB总线耦合单元电路的连接关系为:串行/EIB协议转换模块分别与电源模块、时钟发生器、串行同步接口模块、串行通讯接口、监视/控制切换模块、EIB双绞线转换模块相连;EIB双绞线转换模块与双绞线电压转换模块相连;所述的串行/EIB协议转换模块采用ZC441016CFN芯片,EIB双绞线转换模块采用FZE1065E芯片,串行同步接口模块采用74HC164芯片。
BACnet/EIB网关的BACnet与EIB协议转换方法如下:
(1)BACnet/EIB网关的软件由BACnet/EIB协议变換单元、BACnet报文解析单元和EIB报文解析单元组成;BACnet/EIB协议变換单元包括双协议地址变換模块、双协议APCI(Application-LayerProtocolControlInformation,应用层协议控制信息)变換模块和双协议应用程序数据变換模块,以及双协议地址关联表和双协议APCI对照表;
(2)BACnet/EIB网关初始化配置时,EIB配置工具ETS为毎个EIB设备地址表增设物理组地址供BACnet监控中心寻址;BACnet协议可变部分编码通过在TLV编码时添加“标记(tag)”对不同功能和结构的楼控设备进行描述实现与EIB协议的变換;
(3)BACnet/EIB网关进行协议转换时,BACnet/EIB网关从EIB总线子网接收EIB报文,EIB报文解/编模块分拆EIB报文得到组地址、APCI和应用程序数据三部分;双协议地址变換模块借助双协议地址关联表,由组地址变換成BACnet地址;双协议APCI变換模块借助双协议APCI对照表,把EIB协议的APCI变換成BACnet的APCI;双协议应用程序数据变換模块则将EIB应用程序数据变換成BACnet应用程序数据;最后,BACnet报文解/编模块汇对BACnet地址、BACnet的APCI和应用程序数据重新编码,打包成BACnet报文发送至BACnet网络,经BACnet网络至目标BACnet设备。EIB总线子网接收BACnet报文的过程与此相反。
本发明与背景技术相比,具有的有益效果是:
BACnet/EIB网关将强信息管理、弱设备控制的EIB系统融入强设备控制、弱信息管理的BACnet系统,协议互补性强、能充分发挥各自的長处,使基于BACnet和EIB协议的楼宇自控系统具有优异的性价比;网关初始化配置时,ETS为毎个EIB设备的设备地址表增设一个特殊的组地址--物理组地址--供BACnet监控中心寻址,维护了EIB系统的协议一致性和系统可靠性;网关的通信协议转化和楼宇自控协议转化采用分别独立设计的方法,网关软件的结构清晰、层次分明;BACnet协议固定编码部分与EIB协议变換时,双协议地址变換模块借助双协议地址关联表、双协议APCI变換模块借助双协议APCI对照表,通过高效的直接映射实现;BACnet协议可变部分编码与EIB协议的变換,则应用“标记(tag)”--TLV编码方法实现,具有自描述功能的TLV能表征不同功能和结构的楼控设备。
附图说明
图1是基于BACnet和EIB协议的楼宇自控系统结构图;
图2是BACnet/EIB网关的电路框图;
图3是MSTP模块电路图;
图4是EIB总线耦合模块电路框图;
图5是BACnet/EIB网关的协议转换框图;
图6是EIB的物理地址结构图;
图7是EIB的组地址结构图;
图8是EIB设备地址表的结构图;
图9是BACnet网络层协议数据单元的结构图;
图10是MSTP数据帧的结构图;
图11是双协议地址关联表的屏幕编辑器;
图12是EIB报文应用层协议数据单元的结构图;
图13是BACnet用户数据(UD)编码结构图。
具体实施方式
如图1所示,一种基于BACnet和EIB协议的楼宇自控系统由BACnet监控中心、BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器、BACnet网桥、BACnet/EIB网关、BACnet/ISO08802-3设备节点、BACnet/LonTalk设备节点、BACnet/PTP设备节点、BACnet/MSTP设备节点、EIB总线设备节点组成;其中,BACnet监控中心通过BACnet/MSTP子网分别与BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器、BACnet网桥、BACnet/EIB网关相连,BACnet/ISO08802-3路由器通过BACnet/ISO08802-3子网与各BACnet/ISO08802-3设备节点相连,BACnet/LonTalk路由器通过BACnet/LonTalk子网与BACnet/LonTalk设备节点相连,BACnet/PTP路由器通过BACnet/PTP子网与各BACnet/PTP设备相连,BACnet网桥通过BACnet/MSTP子网与各BACnet/MSTP设备节点相连,BACnet/EIB网关通过EIB总线子网与各EIB总线设备节点相连;BACnet网桥连接相同数据链路层和物理层的BACnet子网,路由器连接不同数据链路层和物理层的BACnet子网,EIB总线子网与BACnet则借助BACnet/EIB网关进行连接;网关经MSTP模块接入BACnet-MSTP子网、经EIB总线耦合单元接入EIB总线子网;网关不仅执行BACnet网络和EIB总线子网间的路由,而且具备BACnet和EIB两种协议应用层数据的变换功能。
BACnet采用精简的4层OSI模型:物理层、数据链路层、网络层和应用层;低层(物理和数据链路层)支持ISO8802-3、MSTP、PTP和LonTalk。网络层屏蔽不同局域网(子网)低层协议的差异,通过将全局地址解析为局部地址的途径,在多个子网间进行报文的网络层路由;在报文目的地址所属子网内实现报文目的地址设备的链路层路由,并向应用层提供统一的接口;BACnet规定:人工配置BACnet设备节点之间唯一的静态逻辑路径,显然路由就是最简单可靠、高效的静态单一路径路由。BACnet的“地址”由两部分组成:每个子网的唯一标识符——网络号,用于BACnet子网之间的路由;每个BACnet设备节点的MAC地址,用于BACnet子网内部的路由,将报文从一个设备节点路由到另一个设备节点。网桥连接的是采用相同数据链路层和物理层的BACnet子网,路由器用于连接不同数据链路层和物理层的BACnet子网;虽然不同的BACnet子网允许采用不同的或相同的数据链路层和物理层协议,但不同BACnet子网的网络层和应用层却是统一的、标准的BACnet网络层和应用层。EIB总线子网与BACnet的连接只能借助BACnet/EIB网关,网关不仅具有BACnet路由器处理不同局域网MAC地址及路由的功能,更重要的是具备BACnet和EIB两种协议应用层数据的变换功能。鉴于MSTP是BACnet独有的、工程中使用频率最高的数据链路层协议,而且MSTP提供的三种通信模式可以按需灵活配置(主从式、多主式和点对点式);考虑到表述的简洁明暸又不失一般性,BACnet/EIB网关接入的BACnet子网数据链路层选择MSTP;路由器、网桥亦围绕数据链路层为MSTP的BACnet子网展开。
如图2所示,BACnet/EIB网关电路的连接关系为:处理器分别与存储器、按键、显示模块、MSTP模块、串行PEI16协议转换模块相接;串行PEI16协议转换模块与EIB总线耦合单元相接,并接入EIB总线子网;MSTP模块由光电隔离单元和RS485单元组成,处理器经光电隔离单元和RS485单元相接,RS485单元接入BACnet/MSTP子网;所述的处理器是以ARM920T为内核的S3C2410X芯片,MSTP模块的光电隔离单元采用两个6N137芯片、RS485单元采用MAX490芯片,存储器采用K9F1208UOM芯片,显示模块采用NL2432DR22。BACnet/EIB网关是连接EIB总线子网与BACnet的关键设备,它是一种将EIB融入BACnet的嵌入式设备,能充分发挥BACnet和EIB这两种楼宇自控协议的优点、实现优势互补,在BACnet上对EIB设备进行监控和管理。
为保证足够的存储空间并考虑成本,设计时选用一片64MB的NandFLASHK9F1208UOM作为唯一的系统程序存储器(NandFLASH的价格比NorFLASH低,且S3C2410X支持NandFLASH直接启动系统)。如果使用可读写的文件系统,用户也可以随时把数据存在NandFLASH中,并且掉电不会丢失。
MSTP模块的电路图如图3所示,BACnet/MSTP总线上的Data1+与MAX490的引脚6相连,BACnet/MSTP总线上的Data1-与MAX490的引脚5相连,BACnet/MSTP总线上的Data2+与MAX490的引脚7相连,BACnet/MSTP总线上的Data2-与MAX490的引脚8相连,BACnet/MSTP总线上的GND与MAX490的引脚4并联后接地,MAX490的引脚1接电源+12V,MAX490的引脚2与电阻R1的一端相连,MAX490的引脚3与电阻R2的一端相连,第一6N137芯片的引脚2与电阻R1的另一端相连,第一6N137芯片的引脚3与引脚5并联后接地,第一6N137芯片的引脚6与S3C2410X芯片的引脚RXD0、电阻R3的一端相连,第一6N137芯片的引脚8与第二6N137芯片的引脚8并联后与电阻R3的另一端、电阻R4的一端、电源+5V、电容C1的一端相连,第二6N137芯片的引脚2与电阻R2的另一端相连,第二6N137芯片的引脚3与引脚5并联后接地,第二6N137芯片的引脚6与S3C2410X芯片的引脚TXD0、电阻R4的另一端相连,电容C1的另一端接地。
如图4所示,EIB总线耦合模块内部连接关系为:串行/EIB协议转换模块分别与电源模块、时钟发生器、串行同步接口模块、串行通讯接口、监视/控制切换模块、EIB双绞线转换模块相连;EIB双绞线转换模块与双绞线电压转换模块相连。所述的串行/EIB协议转换模块采用ZC441016CFN芯片,EIB双绞线转换模块采用FZE1065E芯片,串行同步接口模块采用74HC164芯片。串行信号通过串行通讯接口分别直接以及通过串行同步接口模块74HC164输入串行/EIB协议转换模块,该模块输出信号先后经过EIB双绞线转换模块和双绞线电压转换模块将总线信号输出至EIB总线网络。进一步的技术细节详见本课题组的发明专利,“欧洲安装总线系统的嵌入式因特网接入装置”(ZL200710067887.6)。
BACnet/EIB网关在BACnet网络侧作为一个BACnet设备,在EIB总线支网侧则作为一个EIB设备存在;BACnet和EIB这两个异构网络通过BACnet/EIB网关互联,双向信息交互、抅成基于BACnet和EIB协议的楼宇自控系统。基于BACnet和EIB协议的楼宇自控系统投运前有三项准备工作:使用BACnet系统组态软件(如加拿大DELTA公司的DOW-333-USB)对BACnet设备组态,包括BACnet/EIB网关,即将BACnet/EIB网关列入BACnet网络的设备;应用EIBA的ETS3.2-2009组态软件(组态工具)进行EIB设备的组态,包括BACnet/EIB网关,即将BACnet/EIB网关列入EIB总线子网的设备;配置BACnet/EIB网关。鉴于前两项准备工作属公知知识范畴,故本发明仅就第三点展开论述。如图5所示,BACnet/EIB网关的BACnet与EIB协议转换方法如下:
(1)BACnet/EIB网关的软件由BACnet/EIB协议变換单元、BACnet报文解析单元和EIB报文解析单元组成;BACnet/EIB协议变換单元包括双协议地址变換模块、双协议APCI(Application-LayerProtocolControlInformation,应用层协议控制信息)变換模块和双协议应用程序数据变換模块,以及双协议地址关联表和双协议APCI对照表;
(2)BACnet/EIB网关初始化配置时,EIB配置工具ETS为毎个EIB设备地址表增设物理组地址供BACnet监控中心寻址;BACnet协议可变部分编码通过在TLV编码时添加“标记(tag)”对不同功能和结构的楼控设备进行描述实现与EIB协议的变換;
(3)BACnet/EIB网关进行协议转换时,BACnet/EIB网关从EIB总线子网接收EIB报文,EIB报文解/编模块分拆EIB报文得到组地址、APCI和应用程序数据三部分;双协议地址变換模块借助双协议地址关联表,由组地址变換成BACnet地址;双协议APCI变換模块借助双协议APCI对照表,把EIB协议的APCI变換成BACnet的APCI;双协议应用程序数据变換模块则将EIB应用程序数据变換成BACnet应用程序数据;最后,BACnet报文解/编模块汇对BACnet地址、BACnet的APCI和应用程序数据重新编码,打包成BACnet报文发送至BACnet网络,经BACnet网络至目标BACnet设备。EIB总线子网接收BACnet报文的过程与此相反。
如图6、图7所示,EIB协议提供物理地址(PhysicalAddress)和组地址(GroupAddress)两种寻址方式。EIB设备具有唯一的2字节物理地址,物理地址的十进制格式:xx.xx.xxx,其最大值为15.15.255;物理地址中的不同段与EIB网络的三层结构一一对应,分别表征网络拓扑中的域、线和设备;物理地址主要用于ETS组态软件对EIB系统的组态以及EIB监控中心对系统的监控。组地址是一种逻辑地址,EIB设备之间的通信主要是通过组地址而不是物理地址实现的;占用2个字节的组地址首位是0,有效的组地址是15比特,具有两段式和三段式两种十进制格式:M/s和M/m/s,不同的格式只是从用户视角划分的不同功能概念,其比特数据本身没有任何区别。
如图8所示,EIB总线设备的地址表由一个物理地址和N个组地址组成;鉴于BACnet监控中心需监控EIB设备,而EIB设备的物理地址是专供ETS组态以及EIB监控中心对EIB系统的监控,因此ETS组态时本发明为毎个EIB设备地址表增设一个特殊的组地址--物理组地址--供BACnet监控中心寻址,从而维护了EIB系统的协议一致性和系统可靠性。ETS组态时,设置EIB设备的地址表、通信对象表、关联表和RAM标志表,四表协同完成对EIB设备通信对象的定位;ETS组态时自动配置域、线耦合器的路由表,因此EIB网络层已蜕化成消除报文路由死循环的计数器--(参阅GB/T20965-2007)。EIB协议的物理层、数据链路层是专用的,组地址是唯一的、全局地址,组地址定位EIB设备的通信对象属间接寻址法。EIB系统的域、线耦合器路由表,组态时由ETS自动配置,对用户是透明的;BACnet/EIB网关处理EIB设备的通信对象地址就是组地址。
BACnet网络层协议数据单元(NPDU)和MSTP数据帧的结构如图9、10所示。MSTP是一个混合网络,地址占一个字节、物理层是RS485,网络中存在主站点和从站点两种非对等的站点,利用令牌(Token)机制实现对传输介质的访问控制。网络层协议数据单元(NPDU)是BACnet报文的网络层部分,包括网络层协议控制信息(NPCI)和网络层用户数据部分(NUD)。对于数据报文,网络层用户数据部分(NUD)就是应用层协议数据单元(APDU)。协议控制信息NPCI具有固定的格式和编码,其中与设备地址有关的参数有6个:①DNET(目标地址的网络号);②DLEN(目标地址的MAC地址长度);③DADR(目标地址的MAC地址);④SNET(源地址的网络号);⑤SLEN(源地址的MAC地址长度);⑥SADR(源地址的MAC地址)。BACnet支持不同的物理层和数据链路层,每个BACnet设备需要一个网络号码和一个MAC地址唯一确定;换言之,BACnet设备寻址除全局地址外还要引入局部地址,这是BACnet支持多数据链路层必须付出的代价。此外,BACnet在定义一组标准对象的基础上,将楼宇自控设备映射为若干标准对象的组合,楼宇设备的控制则采用应用层服务--对标准对象的属性进行访问与操作;显然,真正参于楼宇自控的是楼宇自控设备所属的标准对象。因此,仅仅给出网络号码和MAC地址是不够的,因为只完成了对BACnet设备的定位;当且仅当结合设备标识符与该设备的对象标识符定位才是完备的,才能最终确定真正参于自控的楼宇设备所属的对象。鉴于BACnet协议没有自动向网段分配动态网络号的机制,必须人工配置静态路由表的亊实;因此,双协议地址关联表是BACnet/EIB网关双协议地址变換模块进行地址变換的前提。
如图11所示,BACnet/EIB双协议地址关联表的屏幕编辑器由MAC类型选择下拉菜单,双协议地址输入、地址关联一览表和屏幕编辑器操作按钮组成。操作流程如下:
1.从MAC类型选择下拉菜单中选择BACnet子网的MAC类型。
2.逐一填写BACnet的网络号、MAC地址、设备标识符和设备对象标识符,以及对应EIB设备的通信对象组地址。
3.按“确认”按钮,输入内容以记录形式写入“地址关联一览表”;按“删除”按钮,输入内容作废。
4.浏览“地址关联一览表”内容,可用“地址关联一览表”右侧的上下三角箭头按钮;选择修改记录则用“地址关联一览表”左侧的上下三角箭头按钮移动“地址关联一览表”左侧同步的箭头,按“修改”按钮,选中的记录内容填入BACnet的网络号、MAC地址、设备标识符和设备对象标识符,EIB设备通信对象的组地址;修改结束后按“确认”按钮。
5.按“保存”按钮,地址关联一览表内容以“地址关联一览表.INI”文件名保存,供BACnet/EIB网关运行时使用。
楼宇设备的功能大体上可分为通信和楼宇设备自控两部分,BACnet和EIB均采用面向对象的分析和设计方法,两协议设备的通信功能均独立于楼宇设备自控功能;因此,BACnet/EIB网关设计时,可以分别设计通信协议的转化和楼宇自控协议的转化。
如图12所示,一个EIB报文由控制域、源地址域、目标地址域、长度域、传输层协议数据单元(TPDU)域和校验域组成;TPDU由传输层协议控制信息(TPCI)和传送服务数据单元(TSDU)组成,TSDU即应用层协议数据单元(APDU);APDU则由应用层协议控制信息(APCI)和用户数据(UD,即用户应用程序的数据DATA)组成。4个bits的服务原语(ServicePrimitive),也称应用层协议控制信息APCI,每一种服务原语和相应数据的解释详见下表,在BACnet/EIB网关中使用的是0000,0001,0010三个EIB服务原语。
服务 | APCI | 数据 |
读取对象值 | 0000 | 无数据 |
反馈对象值 | 0001 | 对象值(1比特-14字节) |
写对象值 | 0010 | 对象值(1比特-14字节) |
写物理地址 | 0011 | 物理地址(2字节) |
读物理地址 | 0100 | 无数据 |
反馈物理地址 | 0101 | 无数据 |
读AD转换器 | 0110 | AD端口号(6比特),重复次数(1字节) |
反馈AD值 | 0111 | AD端口号(6比特),重复次数(1字节) |
读存储器 | 1000 | 字节数(4比特),偏移地址(2字节) |
反馈存储器 | 1001 | 字节数(4比特),偏移地址(2字节) |
写存储器 | 1010 | 存储数据(1-12字节) |
用户消息 | 1011 | 消息(最多14字节+6比特) |
读总线耦合单元(BAU)版本号 | 1100 | 无数据 |
反馈总线耦合单元(BAU)版本号 | 1101 | 版本号(2字节) |
重启 | 1110 | 无数据 |
跳离 | 1111 | 应用于管理服务 |
BACnet应用层属于信息处理层,主要功能是定义对象模型和协议语法,解释互操作信息的语义,并执行相应的处理过程。BACnet协议定义了35个服务,本文不一一列举(详细内容参阅IS016484-5/ANSI/ASHRAE135-2001,ADataCommunicationProtocolforBuildingAutomationandControlNetwork);以EIB的“0000”服务原语为例,对应的BACnet服务为“ReadProperty-Request”(读属性请求),以此类推,建立BACnet/EIB网关的“双协议APCI对照表”。BACnet读属性请求的C语言实现如下:
ReadProperty-Request
typedefstruct{
ObjectIdentifierobject_id;
property_identifier_tproperty_id;
unsignedcharflag;/*flag=1ifhasindex,else0*/
unsignedproperty_array_index;
}readProperty_Requst_t
如图13所示,BACnetAPDU的用户数据(UD,即用户应用程序的数据DATA)遵循ISO8824ASN.1(抽象语法记法1)和ISO8825ASN.1(基本编码规则),
使用所谓的“标记(tag)”--TLV编码方法进行标识。TLV编码包括三部分:标识符字节、长度字节、内容字节;标识符字节表示数据类型,8位字节的第6、7位表示标识的大类:通用/应用/上下文/专用类型,第5表示编码为简单或构造编码,后5位表示标识编号。TLV编码具有自描述功能,适合描述有不同内容、结构和長度的复杂对象,易扩展、但开销大。EIBAPDU的用户数据(UD,即用户应用程序的数据DATA)简单直观,EIB的UD经BACnet/EIB网关的“双协议应用程序数据变換模块”TLV编码传至BACnet的相关设备对象。BACnet对象实现的的C语言代码如下:
BACnetObjectIdentifierObject_Identifier;//对象
CharacterStringObject_Name;//对象名称
BACnetObjectTypeObject_Type;//对象类型
BACnetObjectStatusSystem_Status;//系统状态
CharacterStringVendor_Name;//生产商名称
Unsigned16Vendor_Identifier;//生产商标志符
…
BACnetServiceSupportedProtocol_Service_Suppor
//支持的服务类型
BACnetObjectTypesSupportedProtocol_Object_Ty
//支持的对象类型
}Bacnet_Device;//设备对象
Bacnet_DeviceDevice;//BACnet设备对象实例。
Claims (5)
1.一种基于BACnet和EIB协议的楼宇自控系统,其特征在于系统由BACnet监控中心、BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器、BACnet网桥、BACnet/EIB网关、BACnet/ISO08802-3设备节点、BACnet/LonTalk设备节点、BACnet/PTP设备节点、BACnet/MSTP设备节点、EIB总线设备节点组成;其中,BACnet监控中心通过BACnet/MSTP子网分别与BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器、BACnet网桥、BACnet/EIB网关相连,BACnet/ISO08802-3路由器通过BACnet/ISO08802-3子网与各BACnet/ISO08802-3设备节点相连,BACnet/LonTalk路由器通过BACnet/LonTalk子网与BACnet/LonTalk设备节点相连,BACnet/PTP路由器通过BACnet/PTP子网与各BACnet/PTP设备节点相连,BACnet网桥通过BACnet/MSTP子网与各BACnet/MSTP设备节点相连,BACnet/EIB网关通过EIB总线子网与各EIB总线设备节点相连;BACnet网桥连接相同数据链路层和物理层的BACnet子网,BACnet/ISO08802-3路由器、BACnet/LonTalk路由器、BACnet/PTP路由器连接不同数据链路层和物理层的BACnet子网,EIB总线子网与BACnet子网则借助BACnet/EIB网关进行连接;BACnet/EIB网关经MSTP模块接入BACnet/MSTP子网、经EIB总线耦合单元接入EIB总线子网;BACnet/EIB网关不仅执行BACnet网络和EIB总线子网间的路由,而且具备BACnet和EIB两种协议应用层数据的变换功能。
2.根据权利要求1所述的一种基于BACnet和EIB协议的楼宇自控系统,其特征在于所述BACnet/EIB网关电路的连接关系为:处理器分别与存储器、按键、显示模块、MSTP模块、串行PEI16协议转换模块相接;串行PEI16协议转换模块与EIB总线耦合单元相接,并接入EIB总线子网;MSTP模块由光电隔离单元和RS485单元组成,处理器经光电隔离单元和RS485单元相接,RS485单元接入BACnet/MSTP子网;所述的处理器是以ARM920T为内核的S3C2410X芯片,MSTP模块的光电隔离单元采用两个6N137芯片、RS485单元采用MAX490芯片,存储器采用K9F1208UOM芯片,显示模块采用NL2432DR22。
3.根据权利要求2所述的一种基于BACnet和EIB协议的楼宇自控系统,其特征在于所述的MSTP模块电路为:BACnet/MSTP总线上的Data1+与MAX490的引脚6相连,BACnet/MSTP总线上的Data1-与MAX490的引脚5相连,BACnet/MSTP总线上的Data2+与MAX490的引脚7相连,BACnet/MSTP总线上的Data2-与MAX490的引脚8相连,BACnet/MSTP总线上的GND与MAX490的引脚4并联后接地,MAX490的引脚1接电源+12V,MAX490的引脚2与电阻R1的一端相连,MAX490的引脚3与电阻R2的一端相连,第一6N137芯片的引脚2与电阻R1的另一端相连,第一6N137芯片的引脚3与引脚5并联后接地,第一6N137芯片的引脚6与S3C2410X芯片的引脚RXD0、电阻R3的一端相连,第一6N137芯片的引脚8与第二6N137芯片的引脚8并联后与电阻R3的另一端、电阻R4的一端、电源+5V、电容C1的一端相连,第二6N137芯片的引脚2与电阻R2的另一端相连,第二6N137芯片的引脚3与引脚5并联后接地,第二6N137芯片的引脚6与S3C2410X芯片的引脚TXD0、电阻R4的另一端相连,电容C1的另一端接地。
4.根据权利要求2所述的一种基于BACnet和EIB协议的楼宇自控系统,其特征在于所述的EIB总线耦合单元电路的连接关系为:串行/EIB协议转换模块分别与电源模块、时钟发生器、串行同步接口模块、串行通讯接口、监视/控制切换模块、EIB双绞线转换模块相连;EIB双绞线转换模块与双绞线电压转换模块相连;所述的串行/EIB协议转换模块采用ZC441016CFN芯片,EIB双绞线转换模块采用FZE1065E芯片,串行同步接口模块采用74HC164芯片。
5.一种采用如权利要求1所述BACnet/EIB网关的BACnet与EIB协议转换方法,如下:
BACnet/EIB网关的软件由BACnet/EIB协议变换单元、BACnet报文解析单元和EIB报文解析单元组成;BACnet/EIB协议变换单元包括双协议地址变换模块、双协议APCI变换模块和双协议应用程序数据变换模块,以及双协议地址关联表和双协议APCI对照表;
BACnet/EIB网关初始化配置时,EIB配置工具ETS为毎个EIB设备地址表增设物理组地址供BACnet监控中心寻址;BACnet协议可变部分编码通过在TLV编码时添加“标记”对不同功能和结构的楼控设备进行描述实现与EIB协议的变换;
BACnet/EIB双协议地址关联表的屏幕编辑器由MAC类型选择下拉菜单,双协议地址输入、地址关联一览表和屏幕编辑器操作按钮组成;
操作流程如下:
1).从MAC类型选择下拉菜单中选择BACnet子网的MAC类型;
2).逐一填写BACnet的网络号、MAC地址、设备标识符和设备对象标识符,以及对应EIB设备的通信对象组地址;
3).按“确认”按钮,输入内容以记录形式写入“地址关联一览表”;按“删除”按钮,输入内容作废;
4).浏览“地址关联一览表”内容,可用“地址关联一览表”右侧的上下三角箭头按钮;选择修改记录则用“地址关联一览表”左侧的上下三角箭头按钮移动“地址关联一览表”左侧同步的箭头,按“修改”按钮,选中的记录内容填入BACnet的网络号、MAC地址、设备标识符和设备对象标识符,EIB设备通信对象的组地址;修改结束后按“确认”按钮;
5).按“保存”按钮,地址关联一览表内容以“地址关联一览表.INI”文件名保存,供BACnet/EIB网关运行时使用;
在BACnet/EIB网关中使用的是0000,0001,0010三个EIB服务原语;
BACnet/EIB网关进行协议转换时,BACnet/EIB网关从EIB总线子网接收EIB报文,EIB报文解/编模块分拆EIB报文得到组地址、APCI和应用程序数据三部分;双协议地址变换模块借助双协议地址关联表,由组地址变换成BACnet地址;双协议APCI变换模块借助双协议APCI对照表,把EIB协议的APCI变换成BACnet的APCI;双协议应用程序数据变换模块则将EIB应用程序数据变换成BACnet应用程序数据;最后,BACnet报文解/编模块汇对BACnet地址、BACnet的APCI和应用程序数据重新编码,打包成BACnet报文发送至BACnet网络,经BACnet网络至目标BACnet设备,EIB总线子网接收BACnet报文的过程与此相反。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210008863.4A CN102571795B (zh) | 2012-01-12 | 2012-01-12 | 基于BACnet和EIB协议的楼宇自控系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210008863.4A CN102571795B (zh) | 2012-01-12 | 2012-01-12 | 基于BACnet和EIB协议的楼宇自控系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102571795A CN102571795A (zh) | 2012-07-11 |
CN102571795B true CN102571795B (zh) | 2016-03-30 |
Family
ID=46416270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210008863.4A Expired - Fee Related CN102571795B (zh) | 2012-01-12 | 2012-01-12 | 基于BACnet和EIB协议的楼宇自控系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102571795B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036901A (zh) * | 2012-12-26 | 2013-04-10 | 南京天溯自动化控制系统有限公司 | 一种ets远程编程方法 |
CN103763187B (zh) * | 2014-02-17 | 2017-02-22 | 南京天溯自动化控制系统有限公司 | EnOcean与KNX的IP网关及通讯网络和方法 |
CN104267651A (zh) * | 2014-10-27 | 2015-01-07 | 上海龙创节能系统股份有限公司 | 基于总线通讯的数字量输入输出模块 |
CN105607527A (zh) * | 2014-11-20 | 2016-05-25 | 机械工业仪器仪表综合技术经济研究所 | 一种基于Cortex-M处理器的KNX-BACnet/IP协议转换网关 |
CN110099124B (zh) * | 2019-05-08 | 2022-01-11 | 大连民族大学 | 一种通用型楼宇自动化装配式网络通讯系统和方法 |
CN110456705B (zh) * | 2019-08-14 | 2020-12-11 | 珠海格力电器股份有限公司 | 可动态扩展接口的网络控制装置、楼宇自控系统 |
CN114363423B (zh) * | 2021-12-31 | 2023-12-19 | 广东工业大学 | 支持B-SA的嵌入式BACnet装置、执行器及楼宇自控系统 |
CN114640640A (zh) * | 2022-03-23 | 2022-06-17 | 安徽生命港湾信息技术有限公司 | 一种基于BACnet协议的双网口通讯模组 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047592A (zh) * | 2007-03-30 | 2007-10-03 | 浙江大学 | 欧洲安装总线系统的嵌入式因特网接入装置 |
CN201589978U (zh) * | 2010-01-29 | 2010-09-22 | 许勇 | 基于BACnet现场总线的机房集中监控设备 |
CN102045334A (zh) * | 2010-09-27 | 2011-05-04 | 北京泰豪智能工程有限公司 | 协议转换方法和装置 |
-
2012
- 2012-01-12 CN CN201210008863.4A patent/CN102571795B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047592A (zh) * | 2007-03-30 | 2007-10-03 | 浙江大学 | 欧洲安装总线系统的嵌入式因特网接入装置 |
CN201589978U (zh) * | 2010-01-29 | 2010-09-22 | 许勇 | 基于BACnet现场总线的机房集中监控设备 |
CN102045334A (zh) * | 2010-09-27 | 2011-05-04 | 北京泰豪智能工程有限公司 | 协议转换方法和装置 |
Non-Patent Citations (1)
Title |
---|
EIB家庭网络系统的研究及总线模块开发;封宁波等;《中国优秀硕士学位论文全文数据库》;20061231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN102571795A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102571795B (zh) | 基于BACnet和EIB协议的楼宇自控系统 | |
CN104052766B (zh) | 基于云计算的异构网络的综合智能通信方法及系统 | |
CN103516541B (zh) | 基于智能化变电站的配置信息自动管理方法 | |
CN104734980B (zh) | 工业现场总线多协议路由器及多协议转换方法 | |
CN102857566B (zh) | 一种可软件定制的物联网智能网关 | |
CN102594711B (zh) | 一种在边缘设备上的报文转发方法和边缘设备 | |
CN107465608A (zh) | 基于NB‑IoT的物联网多功能网关 | |
CN106533886B (zh) | 基于IPv6协议的全互联制造网络架构及管理方法 | |
CN106790222B (zh) | 一种modbus/全互联制造网络信息服务适配器及其实现方法 | |
Kastner et al. | Building Automation Systems Integration into the Internet of Things The IoT6 approach, its realization and validation | |
CN103326936A (zh) | 多种异构感知层网络统一接入的多协议物联网网关 | |
CN110401568A (zh) | 一种网络拓扑发现方法及设备 | |
CN102611710A (zh) | 基于mms的调度主站与变电站的数据交互方法及系统 | |
Lee et al. | Implementation of a KNX-ZigBee gateway for home automation | |
CN102438017B (zh) | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 | |
Urbina et al. | Cyber-physical production system gateway based on a programmable SoC platform | |
CN104394101B (zh) | 一种基于拨码开关的多功能交换机的快速配置方法 | |
CN103763187A (zh) | EnOcean与KNX的IP网关及通讯网络和方法 | |
CN101119315A (zh) | 控制网络中数据传输的方法、系统和网关 | |
CN107566370A (zh) | 一种智能电网报文传输方法 | |
US20200351249A1 (en) | Securing substation communications using security groups based on substation configurations | |
CN206833182U (zh) | 一种智能家居网关以及智能家居控制系统 | |
CN106657377B (zh) | 一种wia-pa/全互联制造网络信息服务适配器及实现方法 | |
CN106888216B (zh) | 基于AllJoyn协议的物联网桥接适配系统及方法 | |
CN103281199B (zh) | 基于id的感知层设备在网络层的统一识别方法 |
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: 20160330 Termination date: 20190112 |
|
CF01 | Termination of patent right due to non-payment of annual fee |