网关浅谈协议智能系统KNX(网关协议报文系统调光)「网关控制协议」

【摘要】:基于数字可寻址照明接口(DALI)的照明系统以其专业、灵活等特点在智能家居领域得到了普遍的重视,但由于DALI照明系统控制节点数的限制,其组网规模小限制了它的推广和应用;KNX/EIB总线作为楼宇自动化国际标准,凭借良好的互操作性和开放性,在智能楼宇控制领域取得了广泛应用;为了融合这两种系统的优势,设计一种KNX与DALI协议的转换网关,在分析DALI和KNX系统特点的基础上,完成了系统软硬件架构设计,实现了DALI协议和KNX协议的相互转换,并对网关性能进行了测试,达到了设计要求
【关键字】:KNX协议;DALI协议;网关;智能照明;楼宇建设0引言数据可照明接口(digitaladdressablelightinginterface,DALI)作为一个开放的数字化智能照明控制系统,具有配置灵活、安全可靠和成本低等优点,可灵活的实现分组控制、场景设置以及状态反馈等功能,在灯光控制上具有专业、细致的特点,受到照明设备制造商的广泛支持,并已经成为国际电工委员会的标准
然而DALI系统由于受到规模的限制,一般应用于中小规模的照明控制中
为了发挥DALI系统在照明控制方面的优势,对DALI系统进行扩展势在必行
KNX(Konnex,KNX)是住宅和楼宇控制标准,能对照明、遮阳、安防、监控等所有的家居和楼宇终端设备进行控制
KNX凭借良好的互操作性和开放性、完善的通信机制以及节能运行等方面的优势,在智能楼宇控制领域取得了广泛应用,目前已经成为我国楼宇控制的国家参考标准
将DALI照明控制系统与KNX系统相结合,将DALI照明控制系统作为KNX楼宇控制系统的子系统,可以发挥各自的优势,进一步提高楼宇智能化水平,降低楼宇能耗
而KNX-DALI网关成为两种系统结合的关键
1总体设计方案DALI协议是一种异步串行通信协议,采用曼彻斯特编码方式,系统为主从式结构,多可接入64个可寻址的DALI装置,可设置16个可寻址组和16种灯光场景,DALI总线的控制装置均通过短地址、组地址或广播地址进行照明控制
传输数据分为前向帧和后向帧,前向帧由主控制器发送给从控制器,后向帧是从控制器的反馈信息
KNX总线协议遵循OSI模型协议规范,并进行了合理的简化,由物理层、数据链路层、网络层、传输层和应用层五层组成,KNX网络为采用域(Domain)、区(Zone)、线(Line)三层结构,是一个对等(peer-topeer)的分布式网络,总线上的设备具有同等地位
KNX设备具有物理地址(PA)和组地址(GA),物理地址用于拓扑结构的划分,组地址用于逻辑功能的划分
KNX-DALI网关包含完整的KNX协议和DALI协议实现,并且完成KNX报文与DALI数据帧的互相转换
该网关主要实现KNX设备对DALI装置的控制及监测功能
网关的总体结构如图1所示
图1网关结构框图该网关由KNX收发模块、收发控制器、DALI接口等组成
其中KNX收发模块主要负责接收和发送收发控制器的信号、监测总线电压以等;收发控制器需要运行KNX通信内核和DALI协议栈、存储系统及用户参数、完成协议转换等功能;DALI接口负责满足网关与DALI系统通信接口的电气特性要求
KNX-DALI网关不仅是KNX系统中的一个KNX设备节点,也是DALI系统的一个DALI主机
网关工作过程为:当接收到KNX报文时,网关会解析该报文完成到DALI指令的转换,如果对应的是电弧功率控制指令,则在DALI总线空闲状态下,发送指令到DALI系统中,实现对DALI装置控制功能;如果是状态查询指令,网关会将保存的对应DALI装置状态信息组装成KNX报文发送到KNX控制设备中;另外,网关会周期地对DALI装置的状态进行查询,保存DALI装置的状态信息,如果DALI装置发生故障,网关会主动发起一次通信告知对应的KNX设备
选择Atmel公司增强型的ATxmega32E5作为KNX-DA-LI网关收发控制器,ATxmega32E5是高性能、低功耗的8位AVR微处理器,采用先进的RISC结构,高工作频率可达到32MHZ,高达64KB的FLASH程序存储区,4KB的RAM和1KB的EEPROM,由于具有USART等丰富的外设,可以方便功能的扩展
另外,还具有创新型的XMEGA自定义逻辑模块(XCL),该模块与USART结合使用,可以支持自定义通信协议
KNX总线收发器选择西门子公司的FZE1066,FZE1066是用于KNX总线的收发模块,通信介质为双绞线,可以接收和发送比特流信号,提供直接同收发控制芯片连接的端口;转换电压,能够将KNX总线上的29V电压转化为5V电压供通信控制芯片使用;监测KNX总线的电压,并能为通信控制芯片提供上电复位和掉电保存信号
2硬件设计2.1KNX硬件平台设计收发器模块FZE1066和KNX总线连接,并由串行端口与ATxmega32E5连接,通过硬件完成KNX报文的物理层信号处理
收发控制器的工作电源由KNX总线提供,通过FZE1066实现数据信号和能量的分离
KNX硬件平台框图如图2所示
图2KNX硬件框图2.2DALI接口电路DALI接口电路的设计要符合DALI电气规范,DALI使用双线差分驱动,要满足总线传输高电平时电压差在9.5~22.5V、传输低电平时电压差小于6.5V、总线电流小于250mA的电气参数规范
为了保证通信电路的稳定可靠,好使用光电耦合器进行隔离
DALI通信电路的设计如图3所示图3DALI通信电路接收电路主要由D4、Q1、Q2、U3及D5组成,发送电路由D4、Q3及U4组成
其中DALIRX与DALITX连接在收发控制器的串口上,U3和U4为光电耦合器;D4为整流桥,实现将电压差转化为单向的直流电压;D5为稳压管,保证总线传输电压差符合DALI电气特性要求
接收时,当总线传输高电平,D5为反向击穿状态,U3导通,RX为高;当总线传输低电平时,D5截止,U3不导通,RX为低
发送时,由TX来改变Q3的工作状态,从而改变总线传输的电平高低
3网关软件设计3.1网关软件架构根据网关的设计要求,软件部分不仅包括对KNX及DA-LI协议栈的设计和实现,还包括协议间的转换功能
本系统的软件架构图如图4所示
图4系统软件架构图软件设计首先要考虑的是程序的结构和设计方法
本设计中,采用一种层次化的软件设计方法,即把整个软件分为三层:底层驱动层、协议层和应用层;底层驱动层完成和硬件相关的交互,协议层完成通信协议栈的设计,应用层则根据系统的功能要求定制功能
这种设计方法保证了各程序模块间的独立性和完整性,并且方便系统软件的移植和应用层功能的扩展
KNX通信模块的硬件驱动层主要包括FZE1066收发器模块驱动,完成报文的发送和接收;通信协议层主要实现数据链路层、网络层以及传输层的相应功能,实现KNX报文的装配和分解;DALI通信模块的驱动层包括DALI接口底层驱动,通信协议层主要完成DALI指令的发送及解析、冲突检测、指令优先级配置等功能
KNX应用进程和DALI应用进程间的通信完成数据解析及转换等功能
3.2协议转换的实现3.2.1KNX协议转DALI协议的实现KNX通信时采用了逐层调用的策略,每一层协议被调用时,都是先读取本层控制字信息,经过信息处理后,将数据提供给上层协议
KNX协议转DALI协议流程图5如所示
图5KNX转DALI流程图网关从KNX总线上收到KNX报文数据后,将KNX报文按照物理层、数据链路层、网络层、传输层到应用层的顺序,逐层进行分解,得到应用协议控制信息(APCI)对应的服务类型及其后的用户数据并进行解析,将解析的结果转换为对应的DALI指令;当ATxmega32E5检测到DALI总线处于空闲状态时,按照DALI前向帧的数据格式发送到DALI总线上
经过分析,KNX设备对DALI装置的控制主要包括开关及调光操作,KNX报文与DALI指令间的对应关系如表1所示
表1KNX报文与DALI指令对应关系KNX报文DALI指令开灯报文指令5:回到大功率等级关灯报文指令0:关断调亮报文指令1:调亮调暗报文指令2:调暗定值调光直接电弧功率控制指令3.2.2DALI协议转KNX协议的实现当KNX设备进行状态查询时,需要将DALI装置的状态信息反馈给对应的KNX设备,DALI协议转KNX协议流程图如图6所示
图6DALI转KNX流程图DALI装置的反馈信息包括DALI装置电弧功率等级和故障状态,网关通过指令160(查询实际电弧功率等级)和指令144(查询当前状态)来获取并进行保存
KNX设备获取设备状态信息一般通过查询报文或数据请求报文实现,当接收到KNX设备对DALI装置的查询或者数据请求报文后,网关就会将保存的DALI装置的状态反馈信息告知对应的KNX设备
如果监测到DALI装置发生故障(灯故障、电源故障等),网关会主动发起一次通信告知对应的KNX设备
4网关测试为了测试开发的KNX-DALI网关的功能,设计了一个简单的测试系统,该系统由KNX系统与DALI系统组成,两个系统间由KNX-DALI待测网关连接
系统主要包括ETS配置工具、KNX传感器节点、待测网关、电源供应和DALI调光器及灯具等
KNX节点设备通过KNX总线进行通信,通过ETS客户端对KNX节点设备进行配置;DALI系统中,所有的DALI装置和设备均挂在DALI总线上,DALI系统为主从式的结构,每次通信均有主机发起
系统测试结构如图7所示
图7系统测试框图系统测试由一个KNX传感器节点来测试网关对KNX报文的发送和接收,利用PC机上的ETS配置工具配置KNX节点的物理地址和组地址,下载通信对象表、地址表和对象关联表,并对KNX报文进行监控
DALI系统由若干DALI装置(DALI调光器)和灯具组成,网关的供电由KNX总线提供
当KNX传感器节点向网关发送开关或调光报文时,通过ETS工具可以监测到网关回复的确认报文,并且在DALI总线上监测到了对应的DALI前向帧数据,灯具执行开关或调光操作;当KNX传感器节点向网关发送查询报文时,网关会将对应的DALI装置的状态信息组装成KNX报文发送到KNX传感器节点上
当DALI装置出现故障时,网关可以及时的将故障信息反馈给KNX设备
5安科瑞智能照明控制系统5.1概述ALIBUS智能照明产品采用RS485总线技术,技术成熟可靠,安全稳定
开关驱动器具备独立工作的能力,适用于一些中小型的项目;模块化设计,可以任意拼接扩展,同时预留I/O口以及Modbus接口,还可以满足与AcrelEMS企业微电网管理云平台进行数据交换
5.2应用场所适合于各类智能小区、医院、学校、酒店,以及体育场所、机场、隧道、车站等大型公建项目的照明控制需求
5.3系统结构5.4系统功能1)实时检测并显示各个模块的在线状态,反馈现场受控回路的开关状态,监控界面按照楼层各分区的布局和回路列表来浏览
2)当发生模块离线、网关设备掉线或者状态反馈和下发控制命令不一致时会发生故障报警,并将故障报警信息记录并显示在界面中
3)可以对单个照明回路实现开关控制;每个模块、楼层都有相应的模块控制开关和楼层控制开关,也可以一个模块或者整个楼层实现开关控制
4)开关驱动器支持过零触发功能,负载(灯具)的分合操作仅在交流电过零时进行;可有效减少电磁干扰以及对电网的冲击,延长灯具与控制装置的寿命
5)对每个照明回路可以预设掉电状态,当照明电源掉电时,开关驱动器会自动切换到预设的掉电状态;确保重新上电时灯具的开关状态是确定与可控的
6)拖动调光控件,照明设备从0%到100%进行调光,可以对单个照明回路实现调光控制,调光总控可以对一个模块的照明回路实现调光控制,也可以对多个照明回路实现调光控制,通过图标的亮灭状态反馈现场开关的状态
7)点击场景控件,打开或者关闭对应场景设置,软件界面上显示不同的场景模式和场景功能,通过图标的亮灭显示对应的场景状态是打开还是关闭
8)设置定时时间,确认时间点后,对该事件点执行的动作进行设置,设置灯在设定的时间点亮或者灭
9)系统可以通过预设的当地经纬度信息,自动计算每天的日升日落时间;根据天文时钟控制照明开关,实现日落开灯、日出关灯的功能
10)所有定时控制计划均可下发保存至驱动模块;当上位机系统故障或模块离线时,驱动模块可以利用自带的RTC时钟维持定时控制计划的正常执行,不影响日常的照明控制效果
11)系统结构是分布式总线结构;系统内各元件不依赖于其他元件而能够独立工作;系统内各元件可以通过程序的设定实现功能的多样性
12)预留BA或第三方集成平台接口,采用modbus、opc等方式
5.5设备选型​​​6结束语本文开发了一种基于KNX协议和DALI协议网关,该网关以ATxmega32E5作为收发控制器,以FZE1066作为KNX总线收发模块,构建了KNX-DALI协议转换网关的硬件平台,并在此平台上实现了KNX通信协议栈、DALI协议栈的设计,以及KNX协议与DALI协议间的转换
经过实验测试,实现了KNX报文到DALI指令间转换,验证了KNX-DALI网关所设计的功能,对DALI系统及KNX系统在国内的应用及推广具有借鉴意义
参考文献:[1].张玉杰,伍莹莹.基于KNX的地下停车场智能监控及车位引导系统[J].计算机测量与控制,2014:2789-2790.[2].伍亚虎.KNX现场总线技术研究及其节点开发[D].北京:北京林业大学,2011.[3].张玉杰,郑培.KNX-TCP/IP协议转换网关的设计与实现[J].自动化仪表,2014(12):49-52.[4].韩俊玲.KNX总线通信内核研究与开发[J].仪器仪表标准化与计量,2012(1):34-37.[5].林展鹏.智能照明系统USB--DALI网关研究[D].广州:广东工业大学,2014.[6].安科瑞企业微电网设计与应用手册.2022年05版
网关浅谈协议智能系统KNX(网关协议报文系统调光)
(图片来源网络,侵删)

联系我们

在线咨询:点击这里给我发消息