基于OpenWrt的DALI智能照明主控设备研究与设计
2021-05-27张晓敏
张晓敏
(福建信息职业技术学院 物联网与人工智能学院,福建 福州 350003)
0 引言
构建标准统一、稳定可靠、互联互通的照明系统日益成为智能照明的发展趋势[1]。数字可寻址照明接口(digital addressable lighting interface,DALI)协议是一种国际公开规格的照明控制通信协议,DALI可以实现与不同厂家、不同类型的灯具兼容,具有安装简单、设计易行、通信可靠及控制灵活等特点。
IEC62386标准定义DALI系统由总线电源、控制设备(下称主控设备)、控制装置(下称从控设备)及DALI总线4个部分组成[2],其中主控设备为连接在总线上并向从控设备发送指令的设备,也是整个系统的管理核心。随着智能设备类型、接口种类与通信数据量的增加,如何提高主控设备的通用性,保证传输数据的准确性,使整个系统更易于扩展、管理,都是需解决的主要问题。
1 DALI系统概述
1.1 智能照明控制系统
智能照明控制系统是基于计算机技术、自动控制、网络通信、嵌入式软件等组成的系统,针对不同场景利用各种照明设备达到对灯光的自动控制,解决了传统照明控制孤立分散、难以管理等问题。将传感器、自动控制、无线通信等技术与DALI相结合,使照明系统更灵活、方便与智能,可实现照明系统的色温调节、时序控制、场景控制、区域亮度控制、故障自诊断及工作状态监控等功能。
1.2 DALI协议与系统结构
DALI协议是照明控制系统与照明灯具之间的数字通信协议,为了解决不同厂家的控制装置与DALI标准兼容却彼此不兼容的问题,升级推出了IEC62386标准的第2个版本[3]。
DALI系统为主从式结构,其系统结构如图1所示,其中主控设备用于向连接在同一总线的从控设备发送指令,DALI总线与总线电源提供了控制指令的传输媒介,从控设备接收并依据指令(电弧功率控制、系统配置、状态查询、专用指令等)实现照明控制调光速度、亮度等级、短地址、组地址等的设置)。每个主控设备最多可以控制64个从控设备。
图1 DALI系统结构图
1.3 主要需求分析
(1)稳定性要求高:随着设备类型与通信数据的增加,如何提升主控设备的处理效率,提供更稳定可靠的管理能力,是研究中需要克服的难题。
(2)智能设备类型多:在楼宇、剧院、住宅等场所不仅要管理照明设备,也需要控制空调、地暖、窗帘等设施,涉及的网络技术与通信方式种类繁多,给主控设备提出了统一管理需求。
(3)管理可扩展需求大:数字化控制成为了智能控制系统中不可或缺的部分[4],管理模式不再局限于简单的单机与有线的方式,管理平台逐步向云端发展。
2 主控设备总体方案设计
2.1 主控设备设计要求
主控设备应实现DALI协议的标准功能,提供4种主要的照明控制方法:单个控制、群组控制、模式控制和调光控制[5],可对照明设备进行开关、调光控制、场景管理、故障调试等。支持DALI、RS485、CAN总线通信与设备管理,提供可靠稳定的控制功能。
为提升管理的便利性与多样化,整个DALI智能照明系统提供部署在云端的管理服务器,实现设备状态监控、固件升级、远程管理等功能,可通过移动App进行设备接入、信息查询与远程控制等。主控设备则应具有与服务器、App进行信息交互的能力,其功能需求如表1所示。
表1 主控设备功能需求简表
2.2 主控设备与网关一体化
照明控制协议根据传输媒介的不同,可分为有线与无线两种[6],支持单一总线的主控设备难以满足智能照明系统扩容、升级的需求,通过与网关一体化的主控设备来实现不同类型的数据交换,使系统可以接入多种从控设备,实现各种通信网络与DALI协议的平滑交互,从而提升整体适配性与易用性。
2.3 基于OpenWrt平台开发
传统的DALI主控设备多用单片机作为微控制器,常用的单片机有PIC系列单片机、STM32系列单片机等[7]13。随着市场对主控设备的稳定性、可扩展性、管理便捷性要求的不断提高,需要选择性能更稳定、应用支持更丰富的平台。
OpenWrt是一个模块化、自动化的嵌入式Linux发行版,拥有强大的网络组件与扩展性,常用于工控设备、小型机器人、智能家居与路由器等设备中。OpenWrt支持各种处理器架构,不仅提供大量软件工具包,还提供了很强的定制功能。选用OpenWrt作为主控设备开发平台,能够有效提升智能照明系统的管理能力与稳定性。
3 主控设备设计
3.1 硬件选型与设计
3.1.1 微处理器选型
主控设备微处理器选型采用新唐科技的NUC980工业控制物联网系列方案,该方案以ARM926EJ-S处理器为核心,自带64 Mb内存,可运行Linux系统,支持10组UART(universal asynchronous receiver/transmitter,通用异步收发传输器)/RS485、双以太网、4组CAN(controller area network,控制器局域网络)2.0B、8组USB(universal serial bus,通用串行总线)Host、高速USB2.0 Host等多种多组传输接口。
3.1.2 总线与接口设计
主控设备支持多种接口类型,满足对不同总线的管理需求。1)UART/RS485:用于实现RS232、RS485总线的通信需求,支持DALI照明设备和RS485接口的智能空调、地暖、窗帘等设备的管理。2)CAN总线:用于管理使用CAN总线的按键开关、触摸面板、继电器等设备。3)以太网接口:可将主控设备平滑接入以太网,实现与以太网设备、云端服务器与移动App的互联。
总线接口设计对应关系如图2所示。
图2 NUC980总线接口对应关系图
3.2 主控软件设计
3.2.1 OpenWrt移植开发
OpenWrt可将主控设备所需要的功能开发、编译成软件[8],载入NUC980中。OpenWrt的移植开发包括创建编译环境、建立Bootlooder、移植内核、建立Rootfs根文件系统、安装驱动程序及安装软件等6个基本步骤。
在具备基本的网络连通性、接口支持等功能[7]25的OpenWrt系统上添加主控设备软件的过程如下:1)在package目录下创建新目录,以存放软件的各种信息和与系统建立联系的文件;2)遵循OpenWrt的约定来创建Makefile,与OpenWrt建立联系;3)将应用程序的所有文件传到package目录下,将程序选项配置进系统;4)重新编译系统,完成后新生成的固件里即包含主控设备软件。
3.2.2 模块划分
主控设备软件模块划分为设备交互、DALI支持、总线监听、场景配置、远程控制等5大类别,共包含设备交互、DALI应用层、DALI驱动、RS4865监听、CAN监听、场景配置、远程管理、移动App控制等8个模块,模块划分与关系如图3所示。
3.2.3 模块功能设计
(1)设备交互模块:实现初始信息获取,总线消息接收与发送,消息通告,状态同步等功能。
(2)DALI应用层模块:采用GPIO(generalpurpose input/output,通用输入/输出)实现曼彻斯特编码,解析接收到的信号并执行相应指令,当配置发生变化时通告交互模块。
图3 主控设备模块划分图
(3)DALI驱动模块:实现DALI协议栈,支持曼彻斯特编码。
(4)RS485监听模块:监听RS485总线输入、输出接口信息,与其他模块交互,实现RS485总线从控设备的控制,具体如表2所示。
表2 RS485监听模块功能与信息交互设计表
(5)CAN监听模块:功能与交互设计同RS485监听模块,区别在于总线类型为CAN。
(6)场景配置模块:为更好地适应不同类型的设备,将场景配置功能从DALI应用层模块中独立出来,通过与设备交互模块传递信息实现设备的管理,具体如表3所示。
(7)远程管理模块:用于扩展支持云端服务器,采用COAP(constrained application protocol,受限应用协议)与服务器通信,实现设备上线、基本管理、状态日志信息传输等功能。(8)移动App控制模块:监听、接收来自移动App的消息,并同步设备状态。
表3 场景配置模块功能与设计说明表
3.2.4 跨总线数据通信设计
在照明系统中跨总线通信是常见的使用场景,如使用CAN总线的面板开关控制DALI总线的灯具,作为主控设备核心的设备交互模块,如何高效地进行多总线的数据收发是需解决的关键问题。
本设计使用OpenWrt的一个核心扩展功能ubox实现交互功能,应用ubox中的uloop、usock可实现基于文件句柄监控与事件驱动机制的C/S结构网络通信应用。使用ubox框架在一个进程中同时监听所有接口的数据,来自CAN、DALI、RS485总线的数据在本模块中进行交互,数据集中在设备交互模块中进行处理,可以极大减少软件开发工作量,节省系统内存与CPU资源。跨总线数据通信简要流程如图4所示。
图4 设备交互模块跨总线数据通信流程简图
4 设备测试分析
4.1 测试系统
搭建包含主控设备,DALI、CAN、RS485等各类总线及从控设备的测试系统,测试DALI协议一致性,CAN、RS485总线连通性等功能。测试系统共包含主控设备1台、LED驱动器2台、CAN与RS485从控设备板各1块,测试系统组成如图5所示。
图5 测试系统组成图
4.2 主控设备测试
4.2.1 DALI协议一致性测试
验证主控设备与IEC 62386标准的一致性,确保主控设备兼容通用DALI从控设备。通过发送单播、组播、广播指令,观察LED驱动器的响应情况,测试控制、配置与查询功能,主要测试内容与结果如表4所示。
表4 主控设备DALI协议一致性测试表
测试结果表明,主控设备的DALI协议实现符合标准,能够实现对DALI从控设备的控制管理操作。
4.2.2 多总线连通性测试
主控设备连接CAN、RS485总线的相应从控设备,通过数据收发测试,确保各类总线通信正常、稳定,满足多类型设备控制需求。图6为总线数据接收结果示意图,实际测试结果表明总线连通性正常,能够准确、完整、稳定地实现数据交互。
图6 总线数据接收结果示意图
5 结语
通过分析智能照明控制的发展需求,确定了采用通用微处理器,主控设备与网关一体化的设计方案,有效支持了多类型、多通信技术的从控设备管理,提升了智能照明系统的覆盖面与稳定性,将管理触角延伸至智能家居范畴,为管理方式的云端化、移动化做准备。通过搭建具有主控设备与多总线类型从控设备的测试系统,对设计思路与实现方法进行充分测试,达到了预期设计目标。下一步将继续完善智能系统,提升主控设备管理控制容量,持续构建基于主控设备、从控设备、云端、移动端的完整系统,以期更好地满足智能照明需求。