基于物联网技术的大功率LED 路灯监测控制系统∗

2021-11-13 08:24周锦荣邹力伟周志森杨丰亮
电子器件 2021年5期
关键词:路灯电能芯片

周锦荣 邹力伟周志森杨丰亮

(1.闽南师范大学物理与信息工程学院,福建 漳州 363000;2.漳州零点智能工程有限公司,福建 漳州 363000)

随着智能用电网络技术的发展,利用NB-IoT 物联网平台实施远程数据采集、传输、分析与监测控制在各领域得到广泛应用[1-5]。用电设备远程无线监测管理信号的传输方式目前主要有ZigBee 技术进行无线组网,基于nRF 射频芯片、GPRS 数据传输技术等多种形式[6-9]。本设计以大功率LED 路灯作为智能监测控制对象,通过对路灯电能参数采集和上位机软件开发应用,实现路灯的自动开关、故障监测报警、运行转态远程控制与管理等功能。系统采用STM32F103RCT6 构成主控电路,通过BC95 传感器终端模块、电信云的物联网平台以及阿里云的服务器及数据库来设计实现,网络传输框架如图1 所示。

图1 系统网络传输架构

图1 中传感器终端通过电信NB-IoT 网络与IoT平台连接。具体流程如下:QS1212B 电能计量芯片将采集到的数据通过串口传输至MCU;MCU 对采集到的数据进行处理,并通过串口传输至BC95 模块;BC95 模块使用CoAP 协议通过NB-IoT 核心网络将采集的电能数据发送至IoT 平台。NB-IoT 核心网络承担与传感器终端非接入层交互的功能,将有IoT 业务的相关数据转发至IoT 平台进行处理。NBIoT 核心网与LTE 核心网架构基本相同,但是进行了功能简化和优化。

IoT 平台与阿里云服务器通信过程:由服务器发送数据请求,IoT 平台将数据封装成JSON 格式,通过HTTP 的GET/POST 请求,与云服务器进行数据交互,实现对LED 路灯运行时电能参数的计量、监测以及下发控制等功能。

1 硬件电路设计

硬件电路主要由AD/DC 电源电路、DC/DC 降压电路、STM32F103RCT6 核心电路、QS1212B 电能采样电路、BC95 通信电路、DA 输出及放大电路、E2PROM存储电路、DS3231 时钟电路组成。本设计采用80 W 的LED 路灯作为实验负载,LED 供电电源为压控恒流源,需要提供0~10 V 的控制电压。硬件系统框图如图2 所示。

图2 硬件系统框图

1.1 系统供电电源及主控制单元电路

系统供电电源电路如图3 所示,主要包括AD/DC 转换电路、DC/DC 降压电路,通过电压转换为各模块提供需要的电压,具体电路如图4 所示。

图3 系统供电电源框图

图4 系统供电电源电路

AD/DC 转换电路采用海凌科AC/DC 隔离稳压电源模块10M12,DC/DC 降压电路采用LM2576 构成BUCK 降压型开关电源,得到较高转换效率和较大输出电流。为给STM32 核心电路、BC95 通信电路及QS1212B 计量电路提供稳定的3.3 V 供电电源,系统采用AMS117 线性稳压电源。为了确保AMS1117 的稳定性,输入端加入了100 nF 的旁路电容,输出端加入了100 μF 和100 nF 的旁路电容。为了提高供电电源的质量和抗干扰能力,电路加入了磁珠和0 Ω 电阻[10-11]。磁珠可以抑制电源线上的高频传导干扰和尖峰干扰,还具有吸收静电脉冲的能力,有利于提高电源稳定性;0 Ω 电阻用于模拟地和数字地之间的单点接地,能够有效限制环路电流,使噪声得到抑制,减少模数间的互相干扰[10-11]。

本设计系统并不需要太强的运算能力,且尽量要求在低功耗状态下工作,选择STM32F103RCT6 作为主控芯片可满足上述要求。STM32F103RCT6 拥有DMA 数据传输、ADC、DAC 等丰富的软件资源[12],其在电路中的主要资源分配如表1 所示。因为STM32F103RCT6 的I2C 接口与Q21212B 使用的通信接口USART3 接口复用,设计中采用软件模拟I2C 协议,避免了接口冲突以及由于I2C 接口缺陷问题可能造成的程序运行不稳定,又方便了程序的移植。

表1 主控芯片主要资源分配

同时,STM32F103 工作频率为72 MHz,拥有丰富的接口,如:USART 通信接口、I2C 接口、SPI 接口、CAN 接口及USB 接口等,为硬件的拓展和数据的传输提供了保证,硬件电路如图5 所示。

图5 STM32F103RCT6 主控电路原理图

1.2 电能采样计量单元电路

电能采样计量单元电路主要由电能计量处理电路、电流互感采样以及电压互感采样电路组成[13]。电能计量处理电路采用深圳艾锐达光电有限公司生产的QS1212B 芯片,该芯片是一款内嵌32 位ARM Cortex-M0 内核定制开发的低功耗、高性能、高集成度、高可靠的单相电能芯片。QS1212B 可以测量交直流电压、电流、功率、功率因数、频率,计量有功和无功电能,支持2 路单相计量和测量。内部嵌入了电能计量算法和电能计量校准算法,用户只需要通过DL/T 645-2007 规约和Modbus-RTU 规约即可读出电压、电流、电能等数据,便于用户开发和应用。使用中,QS1212B 的XO 和XI 引脚之间跨接32.768 kHz 晶振,不需外接电阻和电容。电路原理图如图6 所示。

图6 电能计量处理电路原理图

电流采样通过电流互感器采用艾锐达CT41A-001。其为5 A:2.5 mA 的电流互感器,初级基本电流为5 A,最大电流为80 A;次级基本电流为2.5 mA,最大电流为40 mA。电路原理图如图7 所示。

图7 电流互感采样电路

本设计路灯的最大电流为1.6 A,电流传感器的次级电流最大为0.8 mA。采样点的电压有效值为0.8 mV,电压幅值为1.31 mV,计算如式(1)和式(2)所示。为保证采样信号的可靠性,采样信号经过后端RC 滤波电路,防止高频干扰。

电压采样采用2 mA:2 mA 的艾锐达PT02A-001 型电流互感器,初级基本电流为2 mA,最大电流为10 mA;次级基本电流为2 mA,最大电流为10 mA。电路原理如图8 所示。

图8 电压互感采样电路

本设计接220 V 市电,电压互感器的初级电流为0.18 mA,初级电流计算如式(3)所示。所以,次级电压有效值为18.3 mV,次级电压计算如式(4)所示;幅值为25.880 mV,幅值计算如式(5)所示。经过后端RC 滤波,进一步消除了高频分量,并使到达IO 口的电压低于3.3 V,满足后端电压采样的范围要求。

1.3 时钟与存储单元电路

时钟电路采用低成本、高精度I2C 实时时钟RTC 芯片DS3231 与MCU 连接构成,如图9 所示[14]。DS3231 包含电池输入端,断开主电源时仍可保持精确计时。MCU 通过I2C 总线与DS3231 连接,其SCL 及SDA 引脚连接到了STM32 的通用GPIO 引脚,结合上拉电阻,通过软件模拟I2C 通信协议,构成了I2C 通讯总线,通过I2C 总线与MCU进行数据交互。

图9 时钟与存储单元电路

图9 中采用AT24C02 型号的E2PROM 芯片进行数据存储,其SCL 及SDA 引脚连接到了STM32的通用GPIO 引脚,结合上拉电阻,通过软件模拟I2C 通信协议,构成了I2C 通讯总线,通过I2C 总线与MCU 进行数据交互。

1.4 NB-IoT 窄带通信单元电路

NB-IoT 窄带通信单元采用移远通信的BC95 芯片NB-IoT 电路模块[15]。BC95 模块包含有电源供电接口、串口通信接口、模数转换接口、USIM 卡接口、网络状态指示接口、RF 接口。该模块对电源的要求为:0.5 A 电流能力、VBAT 电压输入范围为3.1 V~4.2 V,采用XC6221 稳压芯片构成供电电源。XC6221 系列芯片是一款低消耗电流正电压型电压稳压器,且内置了过流等保护电路。电路设计如图10 所示。

图10 NB-IoT 窄带通信单元电路

1.5 LED 驱动数控恒流调制

本设计包含双路5V DC 的继电器驱动电路,可以实现双路LED 的单独控制。由MCU 的IO 口输出控制电压,并配合三极管进行扩流,使三极管工作在截止区和饱和区,从而控制继电器的开断。由式(6)、式(7)可知三极管饱和区电流最小为208 mA,而继电器工作的最大电流为100 mA,驱动电路可以保障继电器的正常开合。图11 中二极管反向并联在继电器线圈两端,可以保护线圈不受反峰电压的冲击,对继电器起到保护作用。电路设计如图11 所示。

图11 继电器驱动电路

系统采用漳州零点智能工程有限公司的压控式LED 恒流驱动模块,该产品可提供两路电压单独控制,需要通过驱动0~10V DC 的压控恒流源控制灯光的亮度。因此,设计中采用LM324 运放电路对STM32 的DAC 输出0~3.3 V DC 电压进行放大可满足压控电压要求。如图12 所示。

图12 集成运算放大电路

DAC 输出采用STM32 内部DAC,其输出电压范围为0~3.3 V DC,由式(8)可得其Uout的输出范围为0~11.55 V DC,满足压控LED 恒流源所需的0~10 V的电压。

STM32 内部DAC 具有12 位的分辨率,由式(9)可得其步进电压USV为0.8 mV。通过式(8)可知,运放放大电路最小可实现2.8 mV 的电压步进。本系统通过实现LED 恒流驱动模块控制电压10 mV 的步进对LED 的精确控制,实现步进为0.1%的调光。

2 软件设计

本设计STM32F103RCT6 程序设计采用FreeRTOS实时操作系统为框架,增强系统的稳定性和执行效率[16]。主程序框架分为三个任务执行:(1)系统网络在线检测;(2)云平台下发命令解析;(3)设备离线控制。系统结合各硬件驱动子程序,组成系统的整体程序框架。主程序流程如图13 所示。

图13 主程序流程图

任务1 主要通过读取DS3231 的时间,进行网络状态的检测。当网络连接正常时上传电能参数,当网络异常时启动时基控制方案,该程序流程图如图14 所示。

图14 任务一程序流程图

QS1212B 的通信接口支持标准UART 通讯接口,设计中将STM32F103RCT6 串口3 设置为波特率4 800 bit/s,数据位为8 位,1 位停止位。当MCU需要读取QS1212B 多路寄存器时,需要发送符合MODBUS-RTU 规约的16 位数据帧,MCU 数据发送和数据接收示。BC95 通过MCU 的串口2 与MCU进行数据交互。串口设置为波特率9 600 bit/s,8 位数据位,1 位停止位。MCU 需要传输的数据封装成帧,使用CoAP 协议发送至IoT 平台。MCU 与BC95通信是通过AT 指令。

任务2 用于接收服务器下发的命令,该程序流程图如图15 所示。

图15 任务二程序流程图

在BC95 与云平台通信之前,云平台需完成以下三个步骤:(1)云平台完成Profile 文件的编写与上传;(2)云平台完成插件开发;(3)云平台绑定该设备的IMEI 码。绑定成功后,MCU 只需通过串口向BC95 发送需要传输数据的地址域与符合Profile文件、插件开发中描述相同的数据格式,即可与平台进行数据交互。

任务3 主要功能是网络异常时系统通过时间控制系统的正常运行,其流程图如图16 所示。

图16 任务三程序流程图

3 电信IoT 云平台开发

电信平台支持图像化的插件开发界面,其主要功能是将设备的二进制码流转化为平台的JSON 格式,同时将平台下发的命令转化为设备的二进制码流,方便开发者对信息的查看和处理。

(1)数据上报

以A 路电压量上报为例,上传插件开发如图17所示,其中messageld 为标志地址域,功能是当有多条信息或命令是需要有不同的地址域,以便区分不同消息,其数据格式为8 位无符号整型;A_Voltage为上报的数据。其中AT+NMGS 为发送指令,其数据格式为32 位有符号整型,具体说明如表2 所示。

图17 电压上传云平台插件

表2 上传命令解析数据格式

MCU 需要根据定义的地址域和数据类型上报消息的数据,可以自己根据实际情况设置数据格式。如上报A 路电压需发送如下格式的数据:AT+NMGS=5,04xxxxxxxx。

(1)数据下发

以定时时间下发为例,下发插件开发如图18 所示,其中messageld 为标志地址域;hour、min 分别为下发的小时和分钟;status 为下发的状态命令,MCU接收到的数据为:+NNMI=4,24xxxxxx,MCU 只要根据需要解码下发的数据,即可得到相应的命令。

图18 云平台定时时间下发插件

系统调试可用服务器通过IoT 平台进行,也可直接利用IoT 平台的应用调试助手进行调试。调试时需注意下发命令的数据范围,以免系统工作出现异常。电参数上传命令可以在IoT 平台的历史数据中直接查看,也可通过调阅接口至自己的服务器。

4 实验测试

本设计主要功能为路灯控制命令的下发和电参数的上传。控制命令的下发由服务器执行。因此,需要硬件系统进行在线检测保证硬件系统与服务器间良好通信,当通信中断时需要及时报警,并启动相应拥有通信中断时的备用措施的应急方案。实验测试通过下发时间控制命令,并存储于E2ROM 内,保证通信中断时硬件系统的正常工作。经实验测试,系统能实现独立两路路灯的控制及电能参数的采集,并通过NB-IoT 传输在电信阿里云平台采集得到上传的一路路灯的电源和电流的实时数值显示。

实验测试MCU 对电能参数的采集以及通过NB-IoT 核心网络推送至电信IoT 平台,由IoT 服务平台(阿里云服务器)接收来自电信IoT 平台的消息推送,进行数据显示及入库等工作。

电信IoT 平台与IoT 服务平台的交互流程为:电信IoT 平台收集终端数据,并推送数据到IoT 服务平台,由IoT 服务平台接收来自电信IoT 平台的消息推送,通过WSS 将数据推送到网站前端、终端状态查询、异常处理、入库保存工作,具体工作流程如图19 所示。

图19 IoT 服务平台工作流程框图

图20 为电信IoT 平台收集终端数据。图21 为IoT 服务平台接收电信IoT 平台的数据推送并在前端进行显示。

图20 电信IoT 平台收集终端数据

图21 IoT 服务平台接收数据并显示

如表3 和表4 是采用优利德UT61E 作为标准表对一路路灯实时工作的测试数据和经过数据采集后通过NB-IoT 上传到云平台得到的电压测量数据和电流测量数据值。

表3 电压测量数据 单位:V

表4 电流测量数据 单位:mA

5 结论

NB-IoT 具有更强的网络覆盖能力和链接能力。本系统采用STM32F103RCT6 辅以QS1212B 电能计量芯片,基于窄带物联(NB-IoT)BC95 模块将数据传输至电信IoT 平台的阿里云服务器,在云服务器中部署上位机程序,通过API 的调用将电信IoT 平台的数据传输至数据库。设计基于Tomcat 实现Web 端的功能,用户可在Web 端查看数据,并可下发命令控制路灯开关运行状态,实现了路灯系统的运行状态监测、异常报警。通过较为完整地阐述本系统设计方法,可对采用电能智能采集监控以及窄带物联网远程传输控制技术等提供相关的工程实际应用参考。

猜你喜欢
路灯电能芯片
芯片会议
苹果皮可以产生电能
电能的生产和运输
海风吹来的电能
路灯
澎湃电能 助力“四大攻坚”
为什么高速公路上不用路灯照明
多通道采样芯片ADS8556在光伏并网中的应用
74HC164芯片的应用