引言
随着中国城市和经济的迅速发展,城市路灯照明已经成为展示城市魅力的名片和窗口,但是照明在带来绚丽和方便的同时,也遇到了诸多问题。据调查,我国小型城市在夜晚9点后,大中城市在午夜12点后,道路上行人非常稀少,即便是北京、上海、广州这样的繁华都市,凌晨2点以后,道路上也罕见行人、车辆。这时如果保持“恒照度”会造成资源的大量浪费;另外后半夜是用电的低谷期,电力系统的电压升高,路灯反而会更亮,而我国现行70%的道路照明使用的高压钠灯,此类电网电压的波动致使灯泡的实际使用寿命不超过1年,带来了高额的维修费和材料费,并且系统难以及时反馈路灯运行的故障信息,无法进行远程控制和处理,只能采取人工巡查方式。
路灯控制系统从最初的开关控制功能,逐渐演化到监控节能控制功能,各种新技术被用于路灯监控系统中。路灯控制方法有PLC控制,电力载波控制和无线网络控制等。从路灯控制系统的成本、可靠性、信息化、应用前景等方面考虑,本方案采用ZigBee无线自组网网络技术实现LED路灯节能控制的目的。
1、方案系统设计
按照系统要求,本设计主要完成支路控制器和路灯及二者之间的通信网络设计,其中支路控制器完成时间、光照信息的测量,路灯终端完成故障诊断和移动物体的检测,利用ZigBee无线网络技术实现支路控制器和路灯终端之间的通信。因此系统主要包括以下分系统:
电源稳压系统、支路控制系统、ZigBee协调器系统、Zig-Bee路由和终端系统。其中电源稳压包括5V稳压和3.3V稳压;支路控制系统包括时间模块、键盘模块、显示模块和光照采集模块;ZigBee协调器包括显示模块和键盘模块;ZigBee路由和终端包括微波雷达检测模块、故障检测模块和路灯控制模块。系统结构框图如图1所示。
ZigBee技术是一种新兴的短距离无线通信技术,在近距离无线网络领域得到广泛应用。ZigBee技术采用自组网络,其网络拓扑机构可以随意变动,这一特点对实现路灯智能监控系统的智能化、高可靠性、低成本起到很好的作用。ZigBee的网络拓扑结构可分为:网状结构、星型结构和树状结构,考虑到树状结构能够提高通信网络的可靠性,因此本设计中无线系统的网络拓扑采用树状结构,使用路由功能传输。无线系统由一个ZigBee协调器、若干个路由控制器和若干个路灯终端所组成,网络示意图如图2所示。
根据ZigBee通信组网技术的特点,将ZigBee技术与传统的路灯控制模式相结合,根据不同路段及时间,对协调器设置不同的检测与控制方式,能及时对路灯进行相应的控制并发现路灯损坏情况和它的具体位置,方便维修管理,实现按需节能、智能化管理,达到城市照明系统节能减排的目标。
2、系统硬件设计
2.1、支路控制器设计
根据系统功能,支路控制器主要包括时空电路、光控电路、键盘及显示等,电路如图3所示。
时间控制芯片采用的是DS12887芯片,其内部自带锂电池,外部掉电时,还可准确走10年之久,有12小时制和24小时制,数据可分二进制或BCD码传送,使用非常方便。环境光检测部分采用的是光敏电阻加LM339电压比较器的测量方案。电阻RV2,R5,R9及光敏电阻共同构成了惠斯顿电桥的两个桥臂。在光线相对较强时,电路输出端输出低电平;当光线强度相对较暗时,电路输出端输出高电平。统共设置5个按键,采用独立式键盘,包括时间调节键,模式选择键及季节设置键。时间调节键三个,设置键、上调键和下调键,按下设置键开光标,上下调节键用来调节时间。模式选择键,采用自锁式按键,进行繁华和偏僻模式转换。季节设置键,也采用自锁式按键,进行夏季和冬季转换。
2.2、ZigBee协调器设计
ZigBee协调器负责组建网络与信息的收发处理工作。协调器不断采集主机发来的开关路灯与开关雷达指令,通过发送不同的字符给终端使其作相应的操作。
同时能够显示故障地址,并能对故障信息进行清除。当接收到终端和路由发来的故障地址时,将地址显示在LCD上。由于CC2530的IO口资源较为紧缺,所以设计时选择串口驱动方式。故障维修人员记录检查故障信息,维修员维修之后,需要将原有的故障信息清除,此时只要按下故障清除按键即可。ZigBee协调器接口电路如图4所示。
2.3、ZigBee路由和终端系统
ZigBee路由和终端系统接收来至协调器开关灯与开关雷达的指令,某个路灯出现故障时发送本路灯的地址给协调器。因此ZigBee路由和终端系统由微波雷达检测模块、故障检测模块及LED路灯控制模块组成。
2.3.1、微波雷达检测模块
微波雷达传感器受气流、温度、尘埃的影响较小,因此设计中选用标准的10.525GHz微波多普勒雷达探测器HB100进行移动物体检测。在人与车稀少的区段开启移动物体检测模块,当有移动物体在路灯所检测的范围内活动时开启路灯;当移动物体离开后保持路灯处于低亮状态一段时间,STC15F104单片机提供延时,并由P3.1口输出控制信号。电路如图5所示。其中CC2530的P2.1口控制三极管的通断决定单片机与雷达模块是否上电工作。三极管的发射极与基极电阻R4使三极管更有效截止与导通。
2.3.2、故障检测模块
故障检测电路如图6所示。夜晚开启路灯的同时开启故障检测模块,路灯正常工作时光线强,比较器输出低电平;路灯故障时,光线较暗,比较器输出高电平。
由于比较器输出的只是高低电平,出现故障变为高电平,此时如若直接连接到ZigBee模块上它会不断的发送故障信息,造成系统资源的浪费。设计中用STC15F104单片机不断的检测比较器的输出端,出现故障时由P3.3端向ZigBee模块输出一个负脉冲。单片机的工作电源由ZigBee模块的LED端控制,保证系统在高亮时段实时检测故障从而节约了系统资源。
2.3.3、LED路灯控制模块
LED路灯控制电路如图7所示,路灯由两部分控制。当定时时间到时开启路灯,开启模式为全亮;进入雷达检测模式后,有移动物体出现在检测范围内,开启全亮模式;两种控制用与门连接,有一个输出为低电平就开启路灯。没有移动物体在雷达检测范围之内时路灯处于半亮模式,接入的电压为全亮模式的一半用。为了使其控制端间互不影响,在各控制末端加入光电耦合器进行隔离。
3、软件设计
系统上电后进行初始化,检测系统是否正常工作,如果正常则按照路灯控制界面进行状态检测并对路灯进行输出控制,使路灯按照既定程序实现开/关状态。
主机系统显示相应的控制信息;协调器不断检测主机数据输出口状态判断发送数据与否;终端等待协调器的数据进行。系统软件设计主要包括主机软件设计、协调器软件设计、路由器和终端软件设计等三大部分。其中在协调器软件设计、路由器和终端软件设计上协议栈尤为重要,不同厂家出品的不同产品有不同协议栈。本文使用的芯片为TI公司生产的CC2530芯片,使用的协议栈是由TI公司出品的Z-Stack协议栈。
3.1、主机系统软件设计
根据智能路灯系统实现功能的需要,主机系统软件划分为以下几个部分:监控主程序、日历时钟子程序、LCD显示子程序、键盘扫描子程序、光线明暗检测子程序。监控主程序通过对时间、键盘、光线情况的循环判断,决定是否执行相应的功能程序。主机软件设计流程图如图8所示。主机根据时间与外界光线状态发出控制命令如表1所示。
3.2、协调器系统软件设计
根据协议栈对协调器系统进行软件编程。实现此项目要求只需修改协议栈的应用层和硬件层。应用层执行查询任务工作,修改硬件层使整个系统与所扩展的硬件匹配。
3.2.1、硬件层的修改
定义协调器的P2.0、P2.1为数据的输入端口。协调器上有显示故障信息的12864显示模块,首先建立一个lcd.h文件,在内部定义所应用的管脚定义及相应的宏定义。之后按照12864的时序编写12864的读写程序lcd.c,建立出数据与写数据位置的接口函数。在协议栈中ZigBee联盟已经将LCD的显示程序封装在硬件层,如果应用另外的显示硬件只需将原有的lcd.h文件覆盖即可。
3.2.2、应用层修改
系统不断的采集主机数据输出端口发来的数据,根据数据的不同而执行相应的操作。首先将读取主机数据任务ID号加入到任务中,这样在任务循环执行时方可执行到,否则永远执行不到这个任务。协调器读取任务流程如图9所示。
3.3、路由器和终端节点系统软件设计
根据协议栈对路由器和终端节点系统进行软件编程。同样只需修改协议栈的应用层和硬件层。应用层执行查询任务工作,修改硬件层使整个系统与所扩展的硬件匹配。路由器和终端节点系统中开关灯、开关雷达端口用协议栈内部定义好的两个LED灯端口。用控制两个LED灯的开/关分别控制路灯开/关、雷达控制开/关。路由器和终端节点系统接收来自协调器的字符控制信号,不同字符执行不同操作。利用中断查询方式采集亮灯状态下灯泡的光照强度进而判断是否出现故障,出现故障进入故障处理函数,编辑路灯地址并发送到协调器。
4、总结
本方案从应用方面着手对ZigBee技术的网络拓扑结构进行研究,采用TI公司的Z-Stask协议栈和IAR开发环境,以CC2530芯片为核心构建了一个基于ZigBee通信网络的路灯控制系统。该路灯控制系统的设计与传统的路灯控制系统设计相比,一方面减少了“全夜灯”、“后夜灯”,有效的节约了电能资源,并且还保护了电灯,延长了其使用寿命;另一方面智能路灯控制系统可对全部路灯进行实时监控和管理,集中控制、监视、检查,大大减少了后期人力、物力、财力的投入,同时提高了巡查设备和路灯的工作效率。(作者:高云红,梁小廷,张庆新)