基于UWB的智能道路照明系统的设计与实现*
2023-02-24邬志锋王贵恩钟尚敏
邬志锋,王贵恩,钟尚敏
(1.广东交通职业技术学院,广州 510650;2.广州长丰电子科技有限公司,广州 510801)
0 引言
道路照明是社会公共设施的重要组成部分,根据中国电子技术标准化研究院相关研究,2020年我国城市道路照明灯杆保有量约为2 935万盏[1],若2020—2025年,我国城市道路照明灯杆数量保持5%的增速,预计2025年城市道路照明灯数量将达到3 923.4万盏。为了解决道路照明系统存在的能源消耗大和运维费用高两大痛点,部分路灯已经通过采用电力线通信、4G-LTE、Lora、NB-IOT、ZigBee等通信技术实现了智能化[2],智能道路照明系统已经成为了智慧城市的重要组成部分,数量庞大的街巷路灯智能化改造目前也已经逐渐推开。
智能道路照明系统普遍存在通信时延大、易受天气影响、不能进行精准控制等弊端[3],如图1所示,街巷路灯还会受到道路路线复杂、周边建筑高度多变等因素的影响,导致智能道路照明系统的通信质量进一步恶化,控制系统难以使用,无法有效降低建造、运营成本,严重制约了道路照明系统的智能化。
图1 某街巷路灯分布图示例
针对智能道路照明系统以上不足,本文融合UWB和自组网技术设计实现了一种新型智能道路照明系统,主要实现了以下功能:
(1)基于有限基准点实现了对全部路灯的自动精确定位,距离误差小于30 cm;
(2)设计了基于结点状态的GPSR自组网路由算法,实现了所有街巷路灯自动组成结构稳定的数据通信网络;
(3)实时采集环境光亮度、车流信息、行人信息,并据此调整路灯的亮度,实现路灯-环境协同。
1 系统组成及工作原理
智能道路照明系统按照功能划分层次结构,自上而下分为三层:路灯管理中心、智能配电柜网关和LED单灯控制器终端节点构成,系统组成如图2所示。
图2 系统框架
系统的工作原理:LED单灯控制器主要作用是使用UWB通信模块形成自组网实现数据通信,测量其与智能配电柜之间的距离,同时使用传感器采集路灯的电能信息、周边亮度等环境信息,输出0~10 V调光信号控制LED灯具的亮度。智能配电柜是现场控制核心,主要作用作为UWB定位的已知参考点,同时作为单灯控制器的通信网关。路灯管理中心运行在云服务器上,主要作用是根据各个单灯控制器上传的距离信息对其进行定位,提供实时路面状态监控、路灯状态监控、路灯资产管理、人员管理、实时告警等功能,实现路灯智能管理工作。
2 硬件设计
2.1 LED单灯控制器
LED单灯控制器是安装在路灯上的控制终端,是UWB定位系统的标签,其原理如图3所示,该控制器以STM32F103微控制器为核心,使用UWB通信模块实现数据通信和空间定位,使用HT7017构成的电能计量电路测量电压、电流、功率因子,使用亮度传感器获取环境光亮度,使用微波传感器获取周围的车流人流信息,使用PWM/电压转换电路输出0~10 V调光信号控制LED灯具的亮度。
图3 LED单灯控制器
LED单灯控制器使用DWM1000模块实现UWB通信,DWM1000是DecaWave公司生产的一款基于DW1000芯片的超宽带收发模块,该模块内部集成了DW1000所需要的全部射频电路、电源管理和时钟电路以及天线,具有时间分辨率高、通信距离远、集成简单等优势[4],其电路如图4所示。
图4 UWB通信电路
2.2 智能配电柜
智能配电柜是现场控制核心,主要作为UWB定位系统的基站,同时作为LED单灯控制器的数据上传网关。智能配电柜以STM32F205微控制器为核心,硬件结构如图5所示,UWB通信模块的作用是实现定位和与LED单灯控制器通信,上行DTU的作用是实现智能路灯配电柜与路灯管理中心的数据通信,GPS模块的作用是提供UWB基站所需要的地理坐标。
图5 智能配电柜
3 软件设计
软件的主要作用是使用UWB模块测量各路灯与参考点(已知地理位置的路灯)的距离并获取通信状态信息,利用距离计算各路灯的地理位置,然后结合通信状态和地理位置信息使用GPSR协议形成自组网,路灯、智能配电柜使用自组网传输数据信息,最终实现道路照明系统的智能化控制。
3.1 UWB定位原理
准确定位路灯是形成自组网、故障快速定位、维护保养的基础,目前工程上使用的主要方法是使用GPS定位工具逐一测量路灯的位置,然后标注在电子地图上,此方法需要耗费大量的人力资源,本文利用了UWB精确测量路灯到已知地理坐标的参考点的距离,然后进行再对其进行定位,如图6所示。
图6 UWB定位原理
图中定位基站A1(x1,y1)、A2(x2,y2)、A3(x3,y3)、A4(x4,y4)为已知位置的定位基站,B(x,y)为待定位的标签点,利用UWB通信模块DWM1000使用TOA方法精确测量B点与基站Ai的距离di,即:
即:
其中d0i为B到参考点Ai的实际距离值,ei为误差。由式(2)可得:
记为:
其中:A=[(x i-x i+1) (y i-y i+1)],
使用最小二乘法即可求解公式(3),结果为:
3.2 路灯定位
由于已知位置的基站数量有限,根据UWB定位原理本文设计使用了迭代定位的方法对全部路灯进行定位的方法,如图7所示,其中Ai(i=1,2,3,4)为使用GPS定位后的已知位置的路灯,作为定位基站,Bi(i=1,2,3,…,13)为待定位的路灯,受环境影响,Bi(i=6,7,8,…,11)等处于基站视距外的待定位路灯。
图7 路灯定位
本文使用的迭代定位方法即以通过GPS定位的基站作为一级基站,对视距范围内的路灯进行定位,然后将其视为已知位置的二级基站,再以一级、二级基站对其他路灯定位,直至完成全部路灯的定位。
根据UWB定位原理可知定位精度主要受基站间时钟同步精度和测距误差影响[5],其中测距误差主要由非视距(Non-Line-of-Sight,NLOS)因素和多径传播造成[6],所以选择最佳定位基站是提高定位的关键,本文使用了基站层级、距离均方差、信号接收强度作为基站选择标准。定义路灯i使用基站j时的定位质量系数为:
其中,gj为基站的定位层级,dij为路灯i与基站j之间的距离均方差,Rij为接收信号强度,Kg为基站层级权重,Kd为距离均方差权重,Ks为信号接收强度权重。定位的程序流程如图8所示。
图8 路灯定位程序流程
3.3 自组网算法
道路照明系统中LED单灯控制器、智能配电柜必须形成通信网络才能实现数据传输进行智能控制,实际测试表明道路机动车、天气、道路形状、周边建筑高度等环境因素以及路灯工作状态都会影响该通信网络的稳定性和实时性[7],必须根据各种影响因素实时地调整网络结构,形成健壮的自组网,才能提高通信质量,实现道路照明系统智能化。在复杂道路或者城市立体交通的场景下,基于地理位置的贪婪周边无状态路由协议(Geo⁃graphic Perimeter Stateless Routing,GPSR)应用非常广泛[8],GPSR协议是将要传输的数据尽量转发给最靠近的邻居中继节点,不仅可以减少转发跳数,提高转发效率减轻网络的负载[9],而且其协议简单可以有效降低LED单灯控制器的成本。但是GPSR协议只考虑了目标节点的位置信息,所以存在局部最优、路由空洞等弊端[10],容易造成丢包率过高、延时过大等问题。此外,传统的基于测距无线定位技术未考虑接收的信号强度指示(RSSI)值的分布特性也容易造成室内定位效果欠佳[11]。针对以上的不足,本文在实施过程加入了由应答时延、处理器使用率、接收信号强度(Received Signal Strength Indication,RSSI)与欧拉距离4个参数共同构成节点的节点状态信息,源节点根据周边节点状态向量选择最佳转发节点,从而提高了数据发送成功率。具体做法如下。
(1)发送REQ数据包请求周围节点状态数据
周边节点的状态是节点选择转发节点的重要依据,路灯上电定位后不了解周边的其他节点的工作状态,所以需要通过广播REQ数据包请求附近的节点发送其状态,REQ数据包的格式如表1所示。
表1 REQ数据包结构
(2)周围节点发送Hello数据包宣告状态
Hello数据包的作用是向周边的节点宣告自身的工作状态,该数据包按照每分钟一次周期性发送,或者接收到REQ数据包后发送,其结构如表2所示。
表2 Hello数据包结构
路灯B j在接收到路灯B i的Hello数据包之后,建立如(6)所示的状态向量。
其中di是路灯Bi与配电柜之间的距离,在经典GPSR协议中希望每次转发的距离越远、中继节点距离终点越近越好;Adi为路灯Bi与配电柜上一次通信的时延,该值越小表示该节点所选择的通信线路越好;Rji为路灯B j接收路灯Bi时发送的Hello数据包时候的RSSI值,该值越大表示路灯Bi和路灯Bj之间的通信越可靠;Ui为路灯Bi的转发路径表使用率,该值越小表明路灯的数据被成功转发的概率越大。
各路灯在上电一段时间后形成周边节点状态表,如图9所示。
图9 周边节点状态表
(3)选择转发节点
GPSR协议是是由中继节点逐级转发数据直至其到达目的地址,所以GPSR协议的关键是确定最佳转发节点[12]。节点状态信息所包含的4个变量都会影响通信质量,实验表明只以其中某一个参数为指标计算出来的转发节点不一定是最佳的。本文提出了使用优先级来表明节点作为转发点的度量方法,当路灯需要发送数据时首先计算节点状态表里面每一个节点的状态优先级,按照优先级从高到低选择转发节点发送数据。优先级的计算方法如公式(7)所示:
S ji为路灯Bj记录到的路灯Bi的状态向量,W为权重。发送数据的流程如图10所示,当节点需要发送数据时,首先计算节点状态表中所有节点的优先级,然后选择优先级最高的节点作为转发节点发送数据,数据发出后启动时延定时器,等待服务器应答。如果服务器未能在设定的超时时间内应答,则标记该节点不可达,将其优先级置为-1,并重新选取优先级最大的结点转发数据。如果服务器在设定的超时时间内应答,则表明数据发送成功,并记录此次通信的时延,然后发送Hello数据包给周边的节点,更新周边节点的节点状态表。如果遍历完节点状态表中所有的节点还无法发送数据,说明节点状态表中的所有节点均已失效,在清空节点状态表后发送REQ数据包,向周边节点重新请求节点状态数据,重构节点状态表。
图10 发送数据
(4)转发节点记录数据包转发路径
管理中心服务器在收到路灯发送的数据后需要发送应答数据包,各转发节点需要按照其来源该应答数据包的发送目的地址,所以各转发节点需要在缓存相关数据包的转发路径,包括该数据包的源节点编号、数据包号和入口节点编号,格式如表3所示。
表3 转发路径格式
当节点接收到来自服务器端的数据包时,如果其目的地址不是自身,则从转发路径表查找该数据包的入口节点编号,将数据包转发给该入口节点处理。
4 系统测试
本文构建了如图11所示的实验环境,A1、A2、A3、A4点为已知位置点,其中A1为原点,其他3点通过激光测距仪确定其坐标,配电箱主机和A1(原点)位置相同,A5为原点可视范围内的点,A6为混凝土间隔的近距离点,A7为混凝土间隔的远距离点,A8、A9、A10为多重混凝土间隔的远距离点。设定每个节点按照30 s的时间间隔上传数据,实验主要测试了A6、A8和A10点的分组投递率和平均应答延时两个性能指标。
图11 实验测试环境
4.1 分组投递率
分组投递率(Packet Delivery Fractions,PDF)是目标节点接收的分组总数Nreceice与源节点发送的分组总数Nsend之比[13],考虑到本文所提及的系统发送数据频率较低,所以使用了累计分组投递率,计算放方法如式(8)所示。
分组投递率越大说明数据在网络中传输的成功率越高,丢失的数据越少,意味着网络的可靠性更好,能更好保证节点之间的正常通信;反之,节点之间通信容易出现通信中断或数据丢失的现象[14]。
测试结果如图12所示,3个测试点的分组投递率随时间逐步升高,说明各节点通过Hello数据包逐渐学习到了周围其他节点的情况,逐步完善了周边节点转发优先级的排序,从而提高了数据发送的成功率,整个网络的可靠性也随时间逐步提高。但是各节点情况也有所不同,A6作为混凝土间隔的近距离点,其与配电箱主机的通信为直连方式,只是在在开始的时候出现了少量数据包发送失败,而后来发送失败的数据包越来越少。A10作为最远的节点,其与配电箱主机之间的通信需要经过中间的多个转发点,是一个多跳通信点,所以受到刚开始发送失败的数据包较多,分组投递率上升的也比较慢。
图12 分组投递率
4.2 平均端到端时延
平均端到端时延(Average End-to-End Delay,AED)是数据包从源节点到目的节点所需的平均时间,用于表示网络的实时性[15],计算方法如公式(9)所示。
其中tout为源节点发出数据的时间,trec为目的节点接收到数据包的时间,平均端到端时延越小,说明数据包从发出到被应答所经过的链路上的节点耗费的时间越少,数据包传递的速度越快,网络的实时性越好。
测试结果如图13所示,可见3个点的平均端到端时延大小以抖动都与其地理位置密切相关,距离配电箱主机最近的A6点时延、抖动最小,最远的A10点时延、抖动最大,主要原因是距离近的A6点是直接与配电箱主机通信,而距离远的A10点需要通过多个转发节点才能与配电箱主机通信,从而造成其平均端到端时延较大。
图13 平均应答时延
5 结束语
本文以UWB通信技术为基础,使用加入结点状态优化了的GPSR协议使智能配电柜、LED单灯控制器形成了自组网,测试表明本系统的直联通信点的分组投递率超过了95%,多跳通信点的分组投递率超过了90%,单跳平均延时小于150 ms,具有定位精准、组网稳定可靠、通信实时性高、远程调控响应迅速等优点,有效解决了目前道路照明智能化过程中存在的路灯定位不准、通信质量不佳、智能化不足等问题,为提高智能交通设备的通信质量和解决道路照明智能化不足等问题提供了参考。