APP下载

基于Zigbee 技术的路灯智能控制系统设计与实现

2021-10-08占华林徐涛涛陈如明叶立颖张开轩

科技创新与应用 2021年27期
关键词:温湿度路由路灯

占华林,徐涛涛,陈如明,叶立颖,张开轩

(江西科技师范大学,江西 南昌 330013)

随着国家推行智能城市建设计划,市政设施的智能化管控也逐渐提上日程[1]。作为一种重要的市政服务设施,路灯的智能化管理与控制水平是智能城市建设的重要内容体现之一。然而传统的路灯控制方法手段较为单一且信息化水平低,缺少故障自动上报等重要功能,在一定程度上造成了电力资源浪费、控制成本上升、路灯控制效率低等问题。针对这一问题,本文采用信息化管理手段(Zigbee 无线组网和片上系统),实现路灯按线路、按区域远程集中控制与管理,缓解电力供应紧张、节省人力成本、提升路灯公共照明管理水平,减少因路灯照明故障而引起的交通事故,对促进社会治安管理和维护有重大意义。

1 路灯智能控制系统设计

1.1 系统框架设计

设置若干个智慧路灯节点、若干个路由节点、网关节点和监控中心组成的智慧路灯管理系统。路灯节点和路由节点利用物联网专用片上系统和扩展外围电路组成,实现路灯周围环境的多种数据采集,如车流量、天气亮暗、故障上报、行人因素、道路状况等。网关节点采用片上系统CC2430 主芯片设计或者采用ARM 嵌入式系统设计,并将数据通过Zigbee 组网通信传到监控中心的显示终端上,路灯管理部门、交通管理部门等政府机构第一时间了解到路灯运行情况,根据道路实际状况,自动控制路灯。若遇特殊情况,可以紧急制动。

1.2 组网传输设计

(1)街区内布控路灯节点:街道按需安装智能路灯,采用Zigbee 技术组网,将采集到的数据(车流量)传输到网关节点(空间过大,可以加装路由节点)。该组网方式自由灵活,采集数据按需定制。(2)街区内与监控中心数据传输:街区内与监控中心的数据传输采用窄带物联网(NB-IoT)、电力线载波通信技术、LTE(4G/5G)和WiFi 进行组网传输,实现路灯照明系统与监控中心实时数据传输。(3)人机交互的监控中心。设计监控中心的上位机软件,达到实时了解街区路灯的运行状态和环境参数等目的。

2 路灯智能控制系统硬件电路设计

2.1 中心节点硬件设计

中心节点由遵守Zigbee 协议射频模块CC2530(该芯片集成了射频收发模块、8051 核)、底板模块和液晶显示模块等组成,其底板扩展了USB 接口用于烧录程序,其主要功能是接收路由节点发送的数据或终端节点直接发送的数据并在液晶屏显示温湿度和光照强度。根据光照强度来实现远程控制灯的开与关。

CC2530 无线单片机内部集成了两大模块:80C51 内核及无线收发RF 射频,此芯片采用了QFPA 封装,40Pin,GPIO 引脚21 个,可以当作I/O,ADC 或DAC、定时计时器和通用同步/异步串行接收/发送器,能够利用IAR 软件对特殊寄存器的位或字节进行设置或读取。

2.2 路由节点和终端节点硬件设计

路由节点和终端节点在硬件设计上较为相似,只是在软件模块部分存在差异。终端节点只负责采集路灯周围的环境数据,其由传感器模块、Zigbee 协议射频模块CC2530 等结构组成。而在路由节点设计中,根据设计要求,主要设置了温湿度传感器SHT10 模块、光传感器模块,使用其来完成对温度、湿度和光照等信息的准确采集。

其中,温湿度传感器SHT10 是一款具有校正功能、可实现信息数字化输出且能耗较低的数字化传感器,内含有工业级CMOS 管和两个子模块(其一为电容式聚合体测温模块,其二为能隙式测温模块),有效地保证了温湿度传感器工作过程的稳定性和可靠性。此外,湿度传感器SHT10 中还设计了多达8 个独立通道和14 位模数的多路转换器,有效保证了温度数据转换的精度。

具体设计如下:光照传感器通过CC2530 的P0.4 引脚读取模拟量,经过片内ADC 模块将模拟量转化为数字量,数字转换结果以2 的补码形式表示。

3 路灯智能控制系统软件程序设计

3.1 Zigbee 协议介绍与应用

3.1.1 Zigbee 协议基本介绍

无线自组网Zigbee 通信协议是一种距离短、速率低、带宽窄、能耗低的通信协议,特点是近距离、自组织、抗破坏、低能耗、低成本、速率低,适合于工厂自动化生产和远程控制,可以移植到各种嵌入式平台里。Zigbee 通信协议由ZigBee Alliance(Zigbee 联盟)定义,先后发布了多个版本,但ZigBee 通信协议的最底层部分(物理层和数据链路层)是基于IEEE 802.15.4 改写的,路由ROU层和网络NWK 层是由Zigbee 联盟定义。借助Zigbee 协议可以组成大规模的控制网络,如本文的城市路灯智能控制系统,所以在本文应用中设计了三种类型网络设备:负责中心工作的协调器节点Coordinator、负责转发的路由器节点Router 和负责采集数据的终端设备节点End-Device。

在ZigBee 通信协议的基础上组建的无线控制网络中,有且仅有一个协调器节点(也可称其为中心节点),但可以存在多个路由节点Router 和多个终端节点EndDevice,同时,不同类型节点承担不同的功能。协调器节点主要用于负责控制整个网络的启动、运行、硬件初始化和管理路由节点加入(为路由节点分配网络ID 号)等程序,但不允许终端设备节点加入直接加入到中心节点(协调器节点);路由器节点Router 起桥梁纽带作用,主要功能是管理终端设备节点,允许终端设备节点加入(即为终端节点分配ID 号)和数据中转,同时路由节点按实际情况也可以采集环境数据;终端设备节点的主要功能为采集路灯环境周围的数据和执行上位机传来的命令。

3.1.2 TI Zigbee 协议栈ZStack

协议是由协议栈软件来实现的,国内外不少公司提供属于自己平台的Zigbee 协议栈,但本文里选用了美国德州仪器公司的协议栈ZStack 2007/PRO(在CC2530 上实现),本协议大体上遵守OSI 软件规范。具体来讲:按功能的不同分成了14 个目录文件,每个目录或文件具体作用如下:(1)App:应用层。按用户的需要进行设计。(2)HAL:硬件抽象层。这一层分为两个子目录,一个子目录是与硬件处理器无关的,命名为Common,该目录包含有与硬件相关的配置hal_assert.c 和驱动hal_drivers.c 及操作函数。另一个子目录是与硬件处理器相关的,包含头文件目录Include 和功能实现相关的Target 目录。(3)MAC:数据链路层。该层的主要功能是物理通信信道避让功能,包含高层MAC、低层MAC 和头文件Include 目录,实现网络层NWK 和物理层PHY 连接功能。另外需要提醒的,数据链路层的代码是不公开的,但我们可以以库的形式使用。(4)MT:监制调试层。该层的主要功能用于调试,即通过串口打印功能调试各层之间的交互。(5)NWK:网络层。用于配置网络层参数和为APP 层提供函数接口以供调用。(6)OSAL:操作系统抽象协议层,实现任务调度和管理。(7)Security:安全层。数据加密,保证数据的安全性。(8)Services:ZigBee 设备地址处理函数目录,为网络中的路由节点和终端节点分配ID 号。(9)Tools:工具配置目录,Zigbee 协议栈相关信息配置。(10)ZDO:一种集成公共功能的集合,按用户需求调用应用支持子层的服务和网络层的服务。(11)ZMAC:Zigbee 协议栈数据链路导出层接口文件,方便数据链路层的配置。(12)Zmain:整个工程的子函数调用都集中在入口函main()里,方便应用层功能实现。

3.2 IAR 开发环境介绍

IAR 是一家专注于嵌入式开发环境的设计、开发公司,公司创建于1983 年,业务范围涵盖嵌入式的各个领域,包括嵌入式系统设计、开发环境搭建、系统测试等。IAR 公司典型产品代表是IAR Embedded Workbench,集成了编辑、编译、下载、烧录等功能,支持C、C++等多种语言,广泛应用于环境监控、自动化控制、航空领域和消费领域电子产品等。

IAR EW 开发环境支持多种厂商嵌入式处理器的应用程序开发,内部集成了多种功能,具有灵活性强、开发快捷、简单高效等特点。另外,IAR EW 开发环境具有工程管理功能,适应大型工程,按功能进行子文件夹管理,极大地方便了不同功能模块之间的查找,不同种编程语言都有加亮显示功能。在IAR 开发环境中,子工程模块可以拼接成大工程模块,但在管理和使用上具有相对独立性,可以分级分层进行描述,还可以使用go to definition 功能查阅底层代码。

IAR Embedded Workbench 进行项目开发的主要过程如下:(1)首先针对不同的硬件平台,配置IAR 开发环境,如CPU 选型、设置堆栈大小。(2)编辑源文件。(3)连接目标文件,包含调试选项。(4)对程序进行调试直到没有错误。(5)调试通过后,重新连接。(6)生成程序代码,下载。

3.3 软件程序设计

3.3.1 温湿度读取函数

温湿度读取函数的功能是读取路灯所处环境的温湿度数据,并将采集的数据快速转发至无线组网的路由节点。其内容设置情况如下:

3.3.2 光照度读取函数

光照度读取函数的功能是读取光照数据并传送给路由节点。其内容设置情况如下:

4 控制系统的实现

在路灯智能控制系统硬件设计的基础上,手工焊接LED 灯电路板(用来模拟路灯),检测线路之间、芯片引脚之间是否出现断路和短路。使用工具测试芯片基本功能是否正常。系统加电后,使用万用表检测VCC 电压、示波器检测信号输出。硬件排除后,加载软件后进行软硬件联调,发现语气错误,验证功能。采用LED 灯模拟路灯实物,当光照情况下,路灯便灭,当在暗的环境下,路灯便亮。

在系统调试时,检测出两个问题:(1)LED 驱动问题:采用IO 引脚无法直接控制灯的亮与灭,必须让CC2530的IO 引脚作为控制信号来控制开关三极管或继电器。(2)GPIO 冲突问题:在GPIO 初始化时,先查看嵌入式CPU 的GPIO 管脚数,然后按功能进行统一分配,绝对不能出现管脚重复使用的情况,否则程序达不到预期功能。

5 结束语

本文结合新兴的无线传输技术、片上系统,成功开发了一套具有高度感知能力的集多种功能为一体的智慧路灯控制系统,从而实现依据光照亮度远程控制路灯亮与灭。在下一步的工作中,可依据现场需要,远程实现更多功能,如远程单灯控制、定时照明、定数照明、智能调光、主动报警、设备ID 信息查询与统计、系统管理、系统参数设置,从而为路灯管理部门提供技术参考,从而有效提高路灯使用效率,提高智慧城市的建设水平。

猜你喜欢

温湿度路由路灯
文物展柜内环境温湿度的调控与监测
数据通信中路由策略的匹配模式
基于AT89C51的数字型蚕用温湿度计的设计
路由选择技术对比
路由重分发时需要考虑的问题
基于温湿度控制的天气预测装置
基于DSP和μcos的温湿度检测系统的设计
为什么高速公路上不用路灯照明
基于AODV 的物联网路由算法改进研究
傍晚,路灯为什么能自动亮起来?