EnOcean与KNX的IP网关及通讯网络和方法

文档序号:7797014阅读:4174来源:国知局
EnOcean与KNX的IP网关及通讯网络和方法
【专利摘要】本发明公开一种EnOcean与KNX的IP网关及其通讯网络和协议转换方法,实现了嵌入式Internet技术、KNX技术和EnOcean技术的巧妙融合,弥补了KNX技术在工程实施中需要布线、信息传输速率有局限等不足,同时又结合KNX本身易于扩展等优越性,为智能楼宇、智能家居项目实施提供便利性和灵活性,使用户能方便地在Internet上对符合KNX总线协议的智能楼宇设备进行远程监控和管理,同时也使得远程设备维护和集成设备管理成为可能,还可以使设备主动地通过Internet获取信息或发送信息,EnOcean终端设备不需要提供工作电源,极大的方便了实际工程中控制系统的搭建和集成,同时节约能源。
【专利说明】EnOcean与KNX的IP网关及通讯网络和方法
【技术领域】
[0001]本发明涉及实现EnOcean网络与KNX网络连接的IP网关及基于网关的通讯网络和协议转换方法。
【背景技术】
[0002]EnOcean (易能森)是一种新型的无线传输技术,由德国易能森有限公司(EnOceanGmbH)提出,该技术同Zigbee、WiF1、Bluetooth、Z_Wave等无线技术相比最大的优点是极低的功耗,可以在ImW的发射功率传输距离超过300米。基于超低功耗的特性,该公司及其发起的易能森联盟成员(EnOcean Alliance)开发出了一系列的无线、无电池、无限制的开关产品及传感器产品以及和其他网络传输技术衔接的网关产品。这些产品可以不用布线、免维护的运用于绿色节能智能建筑、工业数据采集、仪器仪表及其他很多领域。Enocean产品目前有315MHz和868MHz两种工作频率。
[0003]2012 年 3 月,国际电工技术委员会(International ElectrotechnicalCommission)将EnOcean无线通信标准采纳为国际标准“IS0/IEC 14543_3_10”,这也是世界上唯一使用能量采集技术的无线国际标准。该标准规范了协议栈中最底3层-物理层、数据链路层和网络层-的通讯协议。EnOcean无线能量采集模块由EnOcean GmbH生产销售,并为EnOcean Alliance成员提供技术支持。基于这个平台,原始设备生产商可以轻松且快速实现定制化的基于无线能量采集技术的无线开关传感解决方案。
[0004]在中国,包括同方泰德、南京天溯、宁波杜亚、成都英泰力、深圳绿拓、北京沃克森、北京赛易科等一部分优秀的中国企业也相继加入易能森联盟,研发生产基于EnOcean无线无源技术的智能楼宇及智能家居系统,共享EnOcean创新科技带来的绿色与节能。
[0005]KNX/IP网关是一个特殊的设备,在楼宇自控系统中,它既不属于传感器也不属于执行器,而是一个协议转换单元和系统节点。对KNX总线网络而言,它是一个连接Internet的关键设备,外扩显示、操作等单元,亦能作为KNX总线网络的监控装置,例如ABB公司的IG/S 1.1网关实现了 KNX总线和LAN连接,IN/S1.1和IN/S1.2则实现了 KNX总线和Internet的连接。KNX总线的协议数据单元F1DU (Protocol Data Unit)携带了能够被总线设备接收到的控制和执行器发送出的反馈信息。基于KNX总线协议的嵌入式网关的研究和开发能够为总线设备的远程监控提供了良好的平台。
[0006]1999年,KNX总线进入中国。厦门国际会展中心2000年8月开始运行,是KNX总线在中国的第一次成功应用。此外国家奥林匹克水上中心、大连国贸中心、北京朝阳区体育馆、上海新国际博览中心、浙江人民大会堂、杭州黄龙体育中心、上海春天花园别墅等都是KNX总线的成功应用案例。
[0007]EnOcean产品可以不用布线、免维护和超低功耗等特点,运用于绿色节能智能建筑、工业数据采集、仪器仪表及其他很多领域具有很大的优越性,倘若将其与KNX和Ethernet相结合,EnOcean产品更易于实现系统化配置和集成,KNX系统可以被更好的扩充和延伸,加上Ethernet可以让大数据流的传输更加顺畅,发明一种EnOcean、KNX与 Ethernet之间数据转换的网关为智能建筑等领域的系统搭建提供很大的便利性。

【发明内容】

[0008]本发明的目的就在于提供一种实现EnOcean网络与KNX网络连接的IP网关及其基于此的通讯网络和协议转换方法,实现EnOcean、KNX与Ethernet之间的结合。
[0009]为实现上述目的,本发明采用如下技术方案:
一种EnOcean与KNX的IP网关,包括电源模块,其特征在于还包括:
EnOcean无线收发模块,用于连接EnOcean侧网络;
KNX总线模块,用于连接KNX侧网络;
Ethernet网络模块,用于连接IP侧网络;
处理器模块,连接EnOcean无线收发模块、KNX总线模块和Ethernet网络模块,用于控制、协调网关的工作运行,实现EnOcean侧网络、KNX侧网络及IP侧网络之间的数据转换,使EnOcean单向设备发出的报文被识别为KNX组播报文,EnOcean双向设备被识别为网关的KNX虚拟通讯对象。
[0010]优选地:
EnOcean无线收发模块包括EnOcean无线收发器,无线收发器提供连接EnOcean侧网络的EnOcean端口,并与处理器模块的串口相连接。
[0011]KNX总线模块包括KNX总线端口、KNX串口收发器和高速光耦模块,KNX总线端口与KNX串口收发器相连接,KNX串口收发器与高速光耦模块相连接,高速光耦模块与处理器模块的串口相连接。
[0012]Ethernet网络模块包括RJ45以太网接口、以太网控制器和网络变压器模块,RJ45以太网接口与网络变压器模块相连接,网络变压器模块分别与以太网控制器的以太网接口和以太网信号发送指示灯模块相连接。
[0013]进一步优选地:
Ethernet网络模块采用处理器模块自带的包含PHY和MAC的以太网控制器。
[0014]电源模块利用Ethernet网络模块的POE功能通过以太网为网关提供工作电源。
[0015]基于上述EnOcean与KNX的IP网关,本发明的通讯网络特征在于KNX总线模块的KNX总线端口与KNX总线相连接;EnOcean无线收发模块的EnOcean端口与其周围区域上的EnOcean无线中继器和EnOcean其他无线终端设备进行无线通讯;多个网关通过Ethernet网络模块的以太网端口与交换机相连接,交换机与监控中心计算机相连接,所述多个网关之间通过交换机的连接实现相互之间的数据交换。
[0016]本发明还提供一种EnOcean与KNX的IP网关的协议转换方法,网关包括提供网关工作电源的电源模块、用于连接EnOcean侧网络的EnOcean无线收发模块,用于连接KNX侧网络的KNX总线模块,用于连接IP侧网络的Ethernet网络模块及连接EnOcean无线收发模块、KNX总线模块和Ethernet网络模块的用于控制、协调网关的工作运行,实现EnOcean侦_络、KNX侧网络及IP侧网络之间的数据转换的处理器模块,IP侧网络和KNX侧网络分别采用标准KnxNet/IP协议和标准KNX协议,其特征在于处理器模块对EnOcean单向设备和EnOcean双向设备分别做不同处理:从IP侧网络或KNX侧网络看不到EnOcean单向设备,EnOcean单向设备发出的报文被识别为KNX组播报文;EnOcean双向设备被识别为网关的KNX虚拟通讯对象。
[0017]本发明的EnOcean与KNX的IP网关及其通讯网络和协议转换方法,实现了嵌入式Internet技术、KNX技术和EnOcean技术的巧妙融合,可广泛应用于智能楼宇、智能家居网络,其弥补了 KNX技术在工程实施中需要布线、信息传输速率有局限等不足,同时又结合KNX本身易于扩展等优越性,为智能楼宇、智能家居的项目实施提供很大的便利性和灵活性。该设计方案使用户可以方便地在Internet上对符合KNX总线协议的智能楼宇设备进行远程监控和管理,同时也使得远程设备维护和集成设备管理成为可能,还可以使设备主动地通过Internet获取信息或发送信息,EnOcean终端设备可以做到不需要额外提供工作电源,利用自身的发电机制就可以满足自身的用电需要,极大的方便了实际工程中控制系统的搭建和集成,同时节约能源。
[0018]本发明EnOcean与KNX的IP网关的一实施例中,Ethernet网络模块采用处理器模块自身的以太网控制器,省去了一个独立的以太网控制器,节省硬件成本的同时,缩小了硬件占用的空间。
[0019]本发明EnOcean与KNX的IP网关的一实施例中,电源模块利用Ethernet网络模块的POE功能通过以太网为网关提供工作电源,无需额外配置KNX电源,在确保现有结构化布线安全的同时保证现有网络的正常运作,最大限度地降低成本。
【专利附图】

【附图说明】
[0020]图1是本发明的EnOcean与KNX的IP网关电路框图;
图2是本发明的EnOcean与KNX的IP网关电路简图;
图3是本发明的KNX总线模块的电路图;
图4是本发明的EnOcean无线收发模块的电路图;
图5是本发明的Ethernet网络模块的电路图;
图6是本发明的电源模块部分的KNX供电电路图;
图7是本发明的电源模块部分的以太网供电(POE)电路图;
图8是本发明的EnOcean与KNX的IP网关的协议转换流程图;
图9是本发明的EnOcean与KNX虚拟通讯对象的对应表;
图10是EnOcean串口通讯协议包结构图;
图11是本发明的EnOcean与KNX的IP网关的IP侧报文处理软件流程图;
图12是cEMI服务器和cEMI客户端之间的数据流图;
图13是KNX的IP报文结构图;
图14是KNX物理地址结构图;
图15是KNX组地址结构图。
[0021]图16是KNXnet/IP帧首部结构图;
图17是设备查找功能示意图;
图18是设备链接控制功能示意图;
图19是隧道功能示意图;
图20是基于本发明网关的嵌入式以太网通讯网络框图。【具体实施方式】
[0022]实施例一
如图1所示,EnOcean与KNX的IP网关的内部连接关系为:处理器模块分别与电源模块、Ethernet网络模块、KNX总线模块、EnOcean无线收发模块,负责控制、协调网关的工作运行,实现EnOcean侧网络、KNX侧网络及IP侧网络之间的数据转换,
如图2所示,处理器模块采用TI的以ARM Cortex-M3为内核的LM3S9B92处理器,电源模块采用LM2574-3.3P+芯片和以太网供电的H)接口集成开关稳压器LTC4267芯片,Ethernet网络模块采用LM3S9B92处理器自带的包含PHY和MAC的以太网控制器和网络电压器HX2019NL,KNX总线模块采用KNX串口收发器E981.03芯片,E981.03可以提供高达50mA的直流电供系统工作使用,EnOcean无线收发模块采用EnOcean无线收发器TCM310模块芯片。
[0023]LM3S9B92处理器AUl的引脚12与光耦I的引脚2相连,LM3S9B92处理器AUl的引脚13与光耦2的引脚2相连,LM3S9B92处理器AUl的引脚16和引脚17分别与25MHz晶振的两个引脚相连,引脚22、23、24和25分别与信号指示灯模块1、2、3、4相连,引脚26与EnOcean无线收发模块TCM210的引脚16相连,引脚27与EnOcean无线收发模块TCM210的引脚15相连,引脚28与EnOcean无线收发模块TCM210的引脚27相连,引脚37与Ethernet网络变压器HX2019NL的引脚9相连,引脚40与Ethernet网络变压器HX2019NL的引脚11相连,引脚43与Ethernet网络变压器HX2019NL的引脚16相连,引脚46与Ethernet网络变压器HX2019NL的引脚14相连,引脚41与电阻Rl的一端相连,引脚59、60分别与信号指示灯模块5、6相连。
[0024]电源模块:
出于电气隔离方面的考虑,EnOcean与KNX的IP网关不能使用KNX总线模块输出的电流提供给网关工作电源,故需要一个独立的KNX电源模块给其提供电源。针对有些项目场合不方便独立配置KNX电源模块的场合,特别增加了以太网接口的POE (Power OverEthernet)功能,通过以太网给EnOcean与KNX的IP网关提供工作电源。
[0025]POE (Power Over Ethernet)指的是在现有的以太网Cat.5布线基础架构不作任何改动的情况下,在为一些基于IP的终端(如IP电话机、无线局域网接入点AP、网络摄像机等)传输数据信号的同时,还能为此类设备提供直流供电的技术。POE也被称为基于局域网的供电系统(POL, Power over LAN )或有源以太网(Active Ethernet),有时也被简称为以太网供电,这是利用现存标准以太网传输电缆的同时传送数据和电功率的最新标准规范,并保持了与现存以太网系统和用户的兼容性。POE技术能在确保现有结构化布线安全的同时保证现有网络的正常运作,最大限度地降低成本。IEEE 802.3af标准是基于以太网供电系统POE的新标准,它在IEEE 802.3的基础上增加了通过网线直接供电的相关标准,是现有以太网标准的扩展,也是第一个关于电源分配的国际标准。
[0026]电源模块内部连接关系为:专用KNX电源接口与降压稳压器模块相连接;以太网接口及网络变压器与整流桥模块相连接;整流桥模块与以太网供电的ro接口集成开关稳压器模块相连接;以太网供电的ro接口集成开关稳压器模块分别与光隔离误差放大器模块、莫斯管和POE功率变压器模块相连接。降压稳压器模块采用LM2574-3.3P+芯片,整流桥模块采用DB107S芯片,以太网供电的H)接口集成开关稳压器模块采用LTC4267芯片,光隔离误差放大器模块采用F0D2712芯片,POE功率变压器模块采用PA1279。
[0027]如图6所示,专用KNX电源端口可外接24?30V的KNX标准电源,专用KNX电源端口的引脚I分别与TVS管BVD7的一端和整流桥BUR2的引脚I相连,专用KNX电源端口的引脚2分别与TVS管BVD6的一端和整流桥BUR2的引脚2相连,TVS管BVD6、BVD7的另一端接地,整流桥BUR2的引脚3分别与降压稳压器BU2的引脚10和电解电容BC21的正极相连,整流桥BUR2的引脚4与电阻BR17的一端相连,电阻BR17的另一端接地,降压稳压器BU2的引脚4、5、6接地,降压稳压器BU2的引脚12分别与二极管BVD5的负极和电感BLl的一端相连,二极管BVD5的正极接地,降压稳压器BU2的引脚3是3.3V电源输出,其分别与电感BLl的另一端、电解电容BC22的正极、电容BC23的一端相连,电解电容BC21负极、电解电容BC22的负极及电容BC23的另一端接地。如图7所示,POE (Power Over Ethernet)以太网供电可以通过以太网线提供EnOcean与KNX的IP网关工作用电,以太网接口的引脚
4、5与整流桥BUR2的引脚I相连,以太网接口的引脚7、8与整流桥BUR2的引脚2相连,网络变压器BTl的引脚2与整流桥BURl的引脚I相连,网络变压器BTl的引脚7与整流桥BURl的引脚2相连,整流桥BURl和BUR2的引脚3与以太网供电的H)接口集成开关稳压器BUl的引脚13和POE功率变压器BT2的引脚3相连,整流桥BURl和BUR2的引脚4与以太网供电的H)接口集成开关稳压器BUl的引脚7和引脚12相连,BUl的引脚3与莫斯管的G极相连,BUl的引脚2与二极管BVD2的正极相连,二极管BVD2的负极与光隔离误差放大器BU4的引脚2相连,POE功率变压器BT2的引脚7、8与肖特基二极管BVD3的正极相连,肖特基二极管BVD3的负极是3.3V电源输出。所述的降压稳压器模块采用LM2574-3.3P+芯片,整流桥模块采用DB107S芯片,以太网供电的H)接口集成开关稳压器模块采用LTC4267芯片,光隔离误差放大器模块采用F0D2712芯片,POE功率变压器模块采用PA1279。
[0028]Ethernet 网络模块:
处理器LM3S9B92自带以太网控制器,其由一个完全集成的媒体访问控制器(MAC)和网络物理(PHY)接口。该以太网控制器符合IEEE802.3规范并完全支持10BASE-T和100BASE-TX标准,同时还具支持多种工作模式、高度可配置、支持物理媒体操纵、支持用微型直接内存访问(μ DMA)有效的传输数据等特点。采用处理器自身的以太网控制器,省去了一个独立的以太网控制器,节省硬件成本的同时,缩小了硬件占用的空间。
[0029]Ethernet网络模块内部连接关系为:RJ45以太网接口与网络变压器模块相连接,网络变压器模块分别与处理器的以太网接口和以太网信号发送指示灯模块相连接。所述的网络变压器模块采用HX2019NL。
[0030]如图2和图5所示,RJ45以太网接口 BXJ3的引脚1、2、3、6分别与网络变压器BTl的引脚1、3、6、8相连接,网络变压器BTl的引脚9、11、14、16分别与处理器LM3S9B92的引脚37、40、43、46相连接,网络变压器BTl的引脚16同时还与与门芯片BU3的引脚1、2相连接,网络变压器BTl的引脚10、15同接3.3V直流电,与门芯片BU3的引脚7与电阻BR18的一端和电容BC24的一端相连接,电容BC24的另一端接地,电阻BR18的另一端与发光二极管BHLl的负极相连接,发光二极管BHLl的正极接3.3V直流电。所述的网络变压器模块采用HX2019NL,与门芯片采用NC7WZ08芯片。
[0031]KNX总线模块:
KNX的总线接口芯片在不断的进化。原先有西门子公司推出的KNX双绞线收发器FZE1066芯片,该芯片能提供5V直流电源,支持温度管理,该芯片的数据收发是以比特(bit)作为收发单位,这样处理器发生中断就会很频繁,同时接收数据时的比特组合和发送数据时的字节拆分等工作占用较多的处理器时间,因此不太适合应用于需要处理较多不同中断的KNX系统元件设备中。后来西门子公司又推出了 KNX-TP-UART-1C芯片,该芯片与处理器之间可以选择9600bps或19200bps的波特率进行串口通讯,以字节(byte)为单位收发芯片本身能缓冲一整包的报文,处理器将整个报文发给KNX-TP-UART-1C芯片后,再由芯片发送到KNX总线上,只是该芯片只能提供20mA的工作电流,且价格比较贵。而E981.03芯片的功能与KNX-TP-UART-1C芯片一致,能提供高达50mA的电流,且价格相对便宜,因此选择此芯片比较合适。
[0032]KNX总线模块内部连接关系为:KNX总线端口与KNX串口收发器模块相连接,KNX串口收发器模块与高速光耦模块相连接,高速光耦模块与CPU的串口相连接。所述的KNX串口收发器模块采用E981.03芯片,高速光耦模块采用HllLl芯片。
[0033]如图3所示,KNX总线的正极分别与二极管AVD2的正极和TVS管AVDl的一端相连接,KNX总线的负极及TVS管AVDl的另一端连接KNX总线模块的电源地,二极管AVD2的负极与KNX串口收发器AU2的引脚12和电容AC22的一端相连接,电容AC22的另一端与KNX串口收发器AU2的引脚8相连,KNX串口收发器AU2的引脚10、11分别与电阻AR12的两端相连,AU2的引脚14与钽电容AC23的正极相连,钽电容AC23的负极电源接地,KNX串口收发器AU2的引脚15与电容AC24和AC26的一端以及电解电容AC25的正极相连,电容AC24的另一端和电解电容AC25的负极均接电源地,电容AC26的另一端与KNX串口收发器AU2的引脚16相连,KNX串口收发器AU2的引脚17与稳压管AVD3的正极和电感ALl的一端相连,AU2的引脚18、19与电感ALl的另一端、钽电容AC27的正极、电容AC28的一端相连,AU2的引脚23、24分别与晶振AG3的两个引脚相连,KNX串口收发器AU2的引脚25与高速光耦AU4的引脚2相连,AU2的引脚26与高速光耦AU3的引脚4相连,高速光耦AU3的引脚2与LM3S9B92处理器的引脚13相连,高速光耦AU4的引脚4与LM3S9B92处理器的引脚12相连。所述的KNX串口收发器模块采用E981.03芯片,晶振频率选择7.3728MHz,高速光耦模块采用HllLl芯片。
[0034]EnOcean无线收发模块:
EnOcean无线收发器模块TCM310能够实现868 MHz的无线电系统的网关功能,它提供了 一个双向无线通讯接口和一个双向串行接口。与之双向串行接口连接的处理器可以通过它透明的收发无线数据,处理器可以通过它发送无线控制命令,例如配置中继器功能或管理智能ACK功能等。TCM310利用它的智能ACK技术可以充当“邮件管理员”管理多达15个双向传感器。
[0035]如图2和图4所示,EnOcean无线收发器AU5的引脚2与电容ACll的一端、电解电容AClO的正极和电感AL2的一端相连,电感AL2的另一端接3.3V直流电源,电容ACll的另一端和电解电容AClO的负极接地,EnOcean无线收发器AU5的引脚23接3.3V直流电源,AU5的引脚15接处理器LM3S9B92的引脚27,AU5的引脚16接处理器LM3S9B92的引脚26,AU5的引脚27接处理器LM3S9B92的引脚28。
[0036]本发明的EnOcean与KNX的IP网关还包括用于人机交互的人机接口模块,包括编程按钮和信号指示灯。[0037]随着Linux的持续发展,其代码结构更加清晰,资源的定义和分类更加明确,可读性很强,条理清楚,修改起来容易,其支持标准的高级电源管理,更加省电。将嵌入式操作系统Linux移植到EnOcean与KNX的IP网关硬件平台,作为EnOcean与KNX的IP网关的软件平台,在Linux软件平台上运行EnOcean与KNX的IP网关的应用软件,提高了软件的设计效率。
[0038]本发明对EnOcean的处理方法为:单向不可见,即IP侧网络的其他设备和KNX侧总线的其他设备收到来自网关的关于EnOcean的报文均被识别为KNX的组播报文;双向被识别为KNX的一部分,即与网关发生通讯联系的EnOcean无线终端设备均被识别为网关的KNX虚拟通讯对象。本发明的EnOcean与KNX的IP网关的IP侧和KNX侧分别采用标准KnxNet/IP协议和标准KNX协议。
[0039]本发明的EnOcean与KNX的IP网关的协议转换方法如下:
如图8所示是本发明的EnOcean与KNX的IP网关的协议转换流程图,EnOcean与KNX之间通过相关协议进行相互转换,IP与KNX之间进行相互转换,IP侧是不能直接看到EnOcean侧的。网关内部对EnOcean单向设备(如EnOcean传感器等只发送数据不接收数据的设备)和EnOcean双向设备(如EnOcean执行器等既接收动作指令又反馈状态的设备)分别做了不同处理:从Ethernet侧或KNX侧看不到EnOcean单向设备,EnOcean单向设备发出的报文被EnOcean与KNX的IP网关接收后,重新封装成标准的KNX组播报文,根据过滤规则转发到Ethernet侧或KNX侧;En0cean双向设备被识别为KNX虚拟通讯对象。EnOcean无线收发模块对外采用EnOcean无线通讯协议(ERP)与EnOcean侧网络的其他EnOcean无线模块(接收模块、发送模块或收发模块)进行数据交换,采用EnOcean串口通讯协议(ESP)跟与它相连的处理器进行数据交换。处理器通过网关的EnOcean无线收发模块与EnOcean侧网络的其他EnOcean无线模块(接收模块、发送模块或收发模块)建立通讯,获取这些EnOcean无线模块所属设备的设备类型,然后将这些被识别的EnOcean设备映射成本发明的网关的KNX虚拟通讯对象,并在处理器模块中形成如图9所示的EnOcean与KNX虚拟通讯对象的对应表,例如图中通讯对象编号1、2所分别对应的是设备ID为0x00018C3B的EnOcean执行器的开关动作和开关状态反馈,通讯对象编号5所对应的是设备ID为0x00018C43的EnOcean传感器输入信号,通讯对象编号7、8所分别对应的是设备ID为0x00019Cll的EnOcean两键面板的两个开关输入信号。由此网关的KNX侧和IP侧对EnOcean的通讯都变成了对KNX虚拟通讯对象的通讯。
[0040]EnOcean侧网络的其他EnOcean无线模块收到无线数据后,将无线数据根据EnOcean串口通讯协议进行转换,然后通过网关的EnOcean无线收发模块通过串口发送给与之连接的处理器,EnOcean串口通讯协议报文结构如图10所示,处理器收到串口的数据后,先同步同步字节(sync byte),然后读报文头(header),报文头里面有无线报文的数据长度,然后做CRC,之后按照数据长度取无线报文数据内容(即无线报文部分),其中的choice为应用类型,如按键开关为RPS类型,则可以解读后面的user data, 0x50为按键按下,0x00为按键松开,Sender ID是无线发送报文EnOcean无线模块的独一无二的身份ID,通过它可以识别与网关通讯的EnOcean无线设备,以在网关内组建KNX虚拟通讯对象。
[0041]图11是EnOcean与KNX的IP网关的IP侧报文处理软件流程图,图13是KNX的IP报文结构图。IP侧主要支持以下4个方面的服务类型:核心规范、设备管理、隧道和路由。相对应的服务类型号范围为:
0200h …020FhKNXnet/IP Core (核心规范)
0310h …031FhKNXnet/IP Device Management (设备管理)
0420h …042FhKNXnet/IP Tunnelling (隧道)
0530h …053FhKNXnet/IP Routing (路由)
其中,核心规范服务是其他服务的基础,设备管理、隧道和路由的实现需要核心规范服务的支持。
[0042]EnOcean与KNX的IP网关中,KNXNet/IP数据报的主机协议是IP协议,即KNXNet/IP数据报是IP报文的数据。当KNXnet/IP数据包在IP通道上传输时,将封装KNX数据包的IP报文发送给该IP通道上的其他KNXnet/IP设备。通过用单播IP地址列表的方式来规定IP通道,其对每个KNXnet/IP设备都有一个准确的IP地址。在一个IP网络上的KNXnet/IP设备数量没有最高限值。UDP在传输通过隧道的KNX数据报文时更有效率,但由于缺乏可靠的分发服务,它不能保证数据包的排序。支持AutoIP的设备能够给它自己分配一个单播 IP 地址,范围在 169.254.1.0 到 169.254.254.255 之间。
[0043]IP侧的系统启动多播地址与路由多播地址是有区别的,系统启动多播地址为224.0.23.12 ;实现KNXnet/IP路由的任何KNXnet/IP设备都有一个“路由多播地址”。该地址是通过增加偏移从“系统启动多播地址”获得。此地址缺省值为O。如果一个项目中有多于一个安装,则在不同安装中的KNXnet/IP路由器分配给不同的路由多播地址。一个KNXnet/IP设备应有一个单播IP地址,应属于至少一个IP多播组,并且可以能够属于最多16个多播组。端口号为3671的`KNXnet/IP用于发现端点。它也可用于发现数据和控制端点。这不是强制的。响应C0NNECT_ REQUEST而返回的KNXnet/IP服务器端口号可为任何有效的端口号。设备管理应使用通用KNXnet/IP端口号3671。
[0044]EnOcean与KNX的IP网关的4个方面的服务类型:核心规范、设备管理、隧道和路由中,后三个服务的实现是需要cEMI来进行数据处理的。cEMI是一种通用结构的媒体无关/[目息,它可以被加入时间戮等?目息。图12是cEMI /[目息流的不意图。
[0045]核心服务:
字节顺序是大端模式。KNXnet/IP结构通用规则是第I个八位位组总是该完整结构的长度(因为某些结构可能有变长度的字段,例如:字符串),第2个八位位组总是规定该结构类型的标识符。从第3个八位位组开始是结构数据。如果数据总数超过252个八位位组,则长度八位位组应为FFh,其后的2个八位位组应包含16比特长度值,那么从第5个字节开始是结构数据。
[0046]KNXnet/IP帧首部如图16所示。首部长度可被用作KNXnet/IP帧数据的索引,用来确定KNXnet/IP帧体的起始位置。服务类型标识符的高八位位组指示服务类型类,低八位位组指示在该服务类型类中的实际服务类型。总长度包括完整的KNXnet/IP帧,以KNXnet/IP首部的首部长度开始并包括整个KNXnet/IP帧体。
[0047]核心服务包括以下功能: η设备查找功能和设备描述
对于支持热插拔和可能在运行状态下分配地址的网络,发现和自我描述可以避免通过非标的途径或通过手动方式建立连接来找回网络属性,而且通过它可更精确的知道设备所支持的服务。
[0048]发现规程(设备查找)见图17。
[0049]注意:发现端点通信仅允许使用UDP。
[0050]发现操作由SEARCH_REQ数据包构成,SEARCH_REQ数据包通过使用发现端点的多播发出,该发现端点包含KNXnet/IP客户机发现端点的HPAI。HPAI可包含一个单播IP地址,以接收直接来自点对点模式下不同KNXnet/IP服务器的应答。通常HPAI应包含KNXnet/IP系统设置多播地址以确保接收来自不同子网上的KNXnet/IP服务器的数据包。任何KNXnet/IP服务器应通过处理发现请求并发送正确的响应来支持发现。HPAI (主机协议地址信息)是向另一个设备发送KNXnet/IP帧所要求的数据。主机协议地址信息(HPAI)是主机协议中唯一要求识别通信通道的地址信息。在不同的主机协议中HPAI的长度是不同的。HPAI的具体定义可参考KNXnet/IP规范中主机协议相关的附录。当响应DESCRIPTION_REQ时,KNXnet/IP服务器使用描述信息块(DIB)结构返回设备信息的特定信息块。应利用(I)设备硬件和(2)所支持的服务类中有关的设备能力信息,返回至少两个DIB结构。在一个描述响应数据报中可以返回两个以上的DIB结构。每个DIB的第I个八位位组包含DIB结构的长度,第2个八位位组描述DIB结构类型。DIB的实际数据在其后。该结构应总是有偶数个八位位组,可以通过在DIB结构的最后一个八位位组后添OOh来实现这种偶数个八位位组。
[0051]η设备链接控制功能
链接控制主要用在需要点对点通讯的服务场合,如设备管理和隧道。点对点通讯由客户机进行初始化,所有的服务器至少同时接受一个客户端与其建立连接(新建的连接不能影响既有的连接),见图18。
[0052]链接控制包括了链接请求和回复、链接状态请求和回复、断链请求和回复。
[0053]设备管理:
用于路由设备本身的管理,比如私有地址配置、参数下载等。先连接后使用,使用设备管理时,需要通过传输层建立KNX的传输层链接。通过cEMI服务器进行数据处理。对于下载,所有的参数值都应该表达成“大端模式”,所以总是首先传输最高有效字节。如果一个服务器支持多于一个KNX子网连接,则要求每个KNX子网由一个不同的控制端点来表示。
[0054]设备管理定义了两类服务,分别是DEVICE_C0NFI⑶RATION_REQUEST和DEVICE_CONFI⑶RAT10N_ACK。
[0055]KNXnet/IP服务器为每个已建立通信通道分配一个通信通道ID。每个通信通道维护一个序列计数器。对于在数据连接上发送的每个KNXnet/IP帧,每个通信通道的序列计数器加I。维护该通信通道的KNXnet/IP设备有独立的序列计数器。每次建立一个连接,该连接的计数器被置0,所以在已建立通信通道上发送的第I个KNXnet/IP帧的序列计数器为O。
[0056]隧道:
隧道功能一般用于通过网关进行别的设备管理的应用,见图19。KNX设备和ETS间的数据交换是通过“非KNX”网络实现的。使用cEMI报文通讯。先链接后使用。隧道的特征是由ETS在IP帧内发送单独的报文,然后等待直到接收到响应或超时。KNX报文总是在TUNNELING_REQUEST帧中发送。每个KNXnet/IP隧道连接应由一个独立的KNX地址响应,即当隧道连接被建立时,KNXnet/IP服务器给它分配一个独立的KNX地址。在CONNECT_RESPONSE 巾贞 Connection Response Data Block (CRD)中返回这个独立的 KNX 地址。如果KNXnet/IP给隧道连接分配它自己独立的KNX地址,那么通过隧道报文或KNX子网管理KNXnet/IP服务器是不可能的。KNXnet/IP服务器自身的KNX单个地址是通过ETS获得的,该地址可被用于上面所指的隧道连接。任何附加隧道连接的KNX单个地址由ETS分配。附加的 KNX 单个地址存储在属性 PID_ADDITIONAL_INDIVIDUAL_ADDRESSES 中。
[0057]KNX数据链路层上的隧道是强制的。如果KNXnet/IP服务器也实现KNXnet/IP路由,那么它不应使用它自己的KNX单个地址,而应采用上述的KNX单个地址。
[0058]除非已使用KNXnet/IP设备管理设置了至少一个附加的独立KNX地址,否则KNXnet/IP路由器不应激活KNXnet/IP隧道。如果隧道客户机发送一个带有KNX单个地址(KNX源地址)被设置为OOOOh的cEMI帧L_Data.req,那么隧道服务器应进入分配给该隧道连接的KNX单个地址。否则,应不更改KNX报文进行发送。
[0059]路由:
在KNX设备之间通过IP网络实现点对多的通信时,用到路由服务功能。该服务通过路由服务命令实现报文路由,无链接,采用cEMI报文格式。KNXnet/IP路由被定义为以一对多通信关系(多播)进行通信的一系列KNXnet/IP路由器,KNX数据通过该路由在IP网络上从一个设备同时传输到多个其他设备。
[0060]ETS对KNXnet/IP设备应执行如下的地址分配规则:如果KNX干线耦合器地址(x.0.0)已经分配了另一个KNXnet/IP路由器,或者一个或多个KNX线路耦合器已经分配了 KNX线路耦合器地址(X.y.0)(其中:y= [I...15]),那么KNXnet/IP路由器不应分配KNX线路耦合器地址(X.y.0)。如果一个或多个KNXnet/IP路由器已经分配KNX线路耦合器地址(x.y.0)(其中:y= [I...15]),那么KNXnet/IP路由器不应分配KNX干线耦合器地址(X.0.0)。
[0061]KNXnet/IP路由器不建立互相之间的通信通道。KNXnet/IP路由器总是传输数据至IJ同一网络中具有同样IP多播(组)地址的所有其他KNXnet/IP路由器,或者根据路由报文的TTL通过IP路由器到达其他网络。
[0062]路由器可以使用优先级FIFO和一般FIFO模式两个转发规则。报文过滤分组地址过滤、LTE组地址过滤和单独地址过滤。
[0063]对于来自KNX网络的报文,执行上面所述的组地址过滤、LTE组地址过滤和单播地址过滤进行路由,同时需要判断路由跳数(routing counter)。
[0064]而对于来自IP网络的报文,路由器接收所有路由多播地址相符合的报文,然后再执行下面的过滤:端口号(3671)、多播IP地址、过滤表(组地址过滤、LTE组地址过滤和单播地址过滤)或掩码类型(MASK)。
[0065]在KNX系统中有两种寻址方式:物理地址寻址(Physical Addressing)和组地址寻址(Group Addressing)。物理地址寻址主要用于KNX设备的程序下载以及系统监控等功能。组地址寻址在KNX通信机制中扮演着关键的角色,KNX设备间的相互通信主要是通过组地址寻址实现的。通过组地址就可以实现一控多、多控一、场景控制等功能。
[0066]物理地址寻址:在KNX系统中,每一个总线设备都有其物理地址,并且物理地址是独一无二的。它和设备在KNX系统中网络拓扑结构相对应,根据物理地址我们可以确定它在KNX系统中的位置。如图14所示,物理地址由2Bytes构成,用十进制表示为XX.XX.XXX,其最大值为15.15.255。物理地址包含域序号、线序号、设备序号三部分。通过总线元件的编程按钮就可以将物理地址写入该元件。物理地址在编程设定后,就作为KNX应用程序下载到设备的通信寻址。比如位于域1、线I上的第7个设备,其物理地址为00010001,
00000111B,即 1107H。
[0067]组地址寻址:KNX系统中的元件之间的通信是通过组地址实现的。组地址包含2bytes,其最高有效位永远为O。如图15所示,组地址有两种格式,2层组地址(主组[4位]/子组[11位])和3层组地址(主组4位/中间组[3位]/子组[8位])。层的设定在KNX编程软件中设定。不同分层关系只是在功能概念上的划分,其比特数据本身并没有区别。如2层式组地址的I / 258与3层式的组地址I / I / 2完全一样,其二进制表示均为00001001,00000010。组地址表示的是设备在功能上的划分,比如第一层用于区分照明、温度或窗帘等大的功能,第二层用于区分开关和调光,则第三层可以用于区别不同的灯。
[0068]实施例二
如图20所示,EnOcean与KNX的IP网关在工程上的典型应用可以为=SfEnOcean与KNX的IP网关的以太网端口与交换机相连接,交换机与监控中心计算机相连接,多个EnOcean与KNX的IP网关之间通过交换机的连接实现它们相互之间的数据交换;En0cean与KNX的IP网关的KNX总线端口与KNX总线相连接,KNX总线上可以挂KNX线路耦合器、KNX其他终端设备节点和KNX/EnOcean网关等设备,KNX线路耦合器支线侧的KNX支线可以挂KNX其他终端设备节点和KNX/EnOcean网关等设备,KNX/EnOcean网关与其周围区域上的EnOcean无线中继器和EnOcean其他无线终端设备进行无线通讯;En0cean与KNX的IP网关的EnOcean端口与其周围区域上的EnOcean无线中继器和EnOcean其他无线终端设备进行无线通讯。
[0069]除上述实施例外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形成的技术方案,均落在本发明要求的保护范围。
【权利要求】
1.一种EnOcean与KNX的IP网关,包括电源模块,其特征在于还包括: EnOcean无线收发模块,用于连接EnOcean侧网络; KNX总线模块,用于连接KNX侧网络; Ethernet网络模块,用于连接IP侧网络; 处理器模块,连接EnOcean无线收发模块、KNX总线模块和Ethernet网络模块,用于控制、协调网关的工作运行,实现EnOcean侧网络、KNX侧网络及IP侧网络之间的数据转换,使EnOcean单向设备发出的报文被识别为KNX组播报文,EnOcean双向设备被识别为网关的KNX虚拟通讯对象。
2.如权利要求1所述的一种EnOcean与KNX的IP网关,其特征在于EnOcean无线收发模块包括EnOcean无线收发器,无线收发器提供连接EnOcean侧网络的EnOcean端口,并与处理器模块的串口相连接。
3.如权利要求1所述的一种EnOcean与KNX的IP网关,其特征在于KNX总线模块包括KNX总线端口、KNX串口收发器和高速光耦模块,KNX总线端口与KNX串口收发器相连接,KNX串口收发器与高速光耦模块相连接,高速光耦模块与处理器模块的串口相连接。
4.如权利要求1所述的一种EnOcean与KNX的IP网关,其特征在于Ethernet网络模块包括RJ45以太网接口、以太网控制器和网络变压器模块,RJ45以太网接口与网络变压器模块相连接,网络变压器模块分别与以太网控制器的以太网接口和以太网信号发送指示灯模块相连接。
5.如权利要求1或4所述的一种EnOcean与KNX的IP网关,其特征在于Ethernet网络模块采用处理器模块自带的包含PHY和MAC的以太网控制器。
6.如权利要求1所述的一种EnOcean与KNX的IP网关,其特征在于电源模块利用Ethernet网络模块的POE功能通过以太网为网关提供工作电源。
7.基于权利要求1所述EnOcean与KNX的IP网关的通讯网络,其特征在于KNX总线模块的KNX总线端口与KNX总线相连接;En0cean无线收发模块的EnOcean端口与其周围区域的EnOcean无线中继器和EnOcean其他无线终端设备进行无线通讯;多个网关通过Ethernet网络模块的以太网端口与交换机相连接,交换机与监控中心计算机相连接,所述多个网关之间通过交换机的连接实现相互之间的数据交换。
8.一种EnOcean与KNX的IP网关的协议转换方法,网关包括提供网关工作电源的电源模块、用于连接EnOcean侧网络的EnOcean无线收发模块,用于连接KNX侧网络的KNX总线模块,用于连接IP侧网络的Ethernet网络模块及连接EnOcean无线收发模块、KNX总线模块和Ethernet网络模块的用于控制、协调网关的工作运行,实现EnOcean侧网络、KNX侧网络及IP侧网络之间的数据转换的处理器模块,IP侧网络和KNX侧网络分别采用标准KnxNet/IP协议和标准KNX协议,其特征在于处理器模块对EnOcean单向设备和EnOcean双向设备分别做不同处理:从IP侧网络或KNX侧网络看不到EnOcean单向设备,EnOcean单向设备发出的报文被识别为KNX组播报文;En0cean双向设备被识别为网关的KNX虚拟通讯对象。
9.如权利要求8所述的协议转换方法,其特征在于EnOcean侧网络与KNX侧网络之间采用虚拟通讯对象对应表进行映射。
10.如权利要求8所述的协议转换方法,其特征在于EnOcean无线收发模块采用EnOcean无线通讯协议与EnOcean侧网络的EnOcean无线模块进行数据交换,采用EnOcean串口通讯协议与处理器模块进行数据交换,处理器模块获取所述EnOcean无线模块所属设备的设备类型,然后将这些被识别的EnOcean设备映射成网关的KNX虚拟通讯对象,并在处理器模块中建立EnOcean与KNX虚拟通`讯对象对应表。
【文档编号】H04L12/66GK103763187SQ201410052553
【公开日】2014年4月30日 申请日期:2014年2月17日 优先权日:2014年2月17日
【发明者】马如明, 黄水生, 杨毅, 王伟江, 吴明光 申请人:南京天溯自动化控制系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1