摘 要: 针对路灯耗能严重、不能智能开闭以及维护不便等问题,设计基于LabVIEW的太阳能照明监控系统,代替了传统的照明系统。下位机采用STM32F105作为主控芯片、锂电池18650作为蓄电池、电压检测元器件PCF8591,ACS712采集电流信号、GL5516感光模块等芯片构成太阳能蓄电池电压电流的采集电路和光控开关等电路。上位机为LabVIEW搭建的监控平台,实时监测蓄电池的工作状态,实现照明灯的智能开闭和集中化管理。经过测试,太阳能照明监控系统在昼夜交替、发生故障等各种情况下,能够正常工作。监控系统通过分析数据能够及时进行维护,减少照明灯供电不足的问题,及时报警,让工作人员能够准确、快速地解决问题,恢复照明。
关键词: LabVIEW; 太阳能照明; 实时监控; STM32F105; 集中化管理
0 引 言
太阳的能源非常巨大,作为一种新兴能源,具有广阔的应用前景。在照明方面就有着出色的表现,以节能高效、安全稳定等诸多优点在公共照明领域得到广泛应用。是我国太阳能光伏产业在现有国情下的一个现实选择[1,2]。而如何能高效的使用与管理太阳能照明系统将会是大众下一步需要面对的问题,本文所设计的基于LabVIEW的太阳能照明监控系统将初步解决这一问题。设计中的下位机主要完成对蓄电池电流、电压的实时监控,根据光强变化开闭照明灯,液晶显示蓄电池电流、电压以及剩余电量等。上位机主要实现的是外界光强显示、照明灯整体状态观察、蓄电池电流和电压实时曲线与实时数值显示、故障报警记录等功能。
相较于传统的照明监控系统来说更加节能环保、更加便于系统化集中化管理[3~9]。
1 系统硬件电路设计
基于LabVIEW的太阳能照明系统结构框图如图1所示。下位机的电流电压检测模块和光照强度检测模块将所检测数据经过单片机处理,传输到液晶显示屏显示和计算机LabVIEW处理。

图1 系统结构框图
计算机LabVIEW包括电流检测模块、电压检测模块、光敏检测模块、故障报警模块。完成电流、电压和光强的实时数据显示,故障报警以及故障相关数据的记录[4~14]。
1.1 STM32最小系统
单片机最小系统主要分为四部分:电源电路、时钟电路、复位电路和STM32F105单片机。电源电路是由三端稳压器LM7805,蓄电池充电保护器TP4056和HX3001组成。太阳能电池板生成的电能经由三端稳压器和蓄电池充电保护器处理后存储在锂电池18650之中[2]。由于系统工作需要稳定输入的电源电压,所以锂电池放电时经由HX3001进行处理,然后再供整个系统使用。接着是时钟电路和复位电路,时钟电路为单片机的工作提供计时信号,复位电路保证在单片机运行过程中发生故障后可以进行复位,从而达到单片机恢复正常工作的目的。
1.2 电流、电压采集模块
检测蓄电池电流、电压的变化是鉴定系统是否在正常的重要依据。本设计中使用线性电流传感器ACS712来检测蓄电池电流变化,A/D采样芯片PCF8591作为系统的A/D转换器和检测蓄电池电压变化,将所采集的信号传输到单片机中进行处理与传送。
1.3 光敏检测模块
光敏检测模块使用光控开关控制照明灯的开闭来代替传统的定时开关。光敏传感器GL5516和双压比较器LM393构成了整个光敏检测模块,光控开关根据天气变化、季节变化带来的光线变化来改变照明灯开启和关闭。
1.4 液晶显示模块
下位机采用液晶显示器LCD1602,用来显示蓄电池电流、电压以及剩余电量的变化可以让维修人员直接观察到此时系统的状态,有利于信息的快速传达。
2 系统软件设计
2.1 监控系统总程序
太阳能照明监控系统设计流程图如图2所示。

图2 监控系统总程序流程图
经由硬件采集需要数据传输到LabVIEW上位机显示处理,在根据情况下达相应的指令给下位机执行。在故障发生时,给维护人员以提醒从而保证系统的正常运行。
2.2 上位机监控子程序
上位机采用LabVIEW设计监控面板,设计子程序流程图如图3所示。主要包括串口设置、参数设置、照明灯整体状态观察、电流电压实时曲线变化和实时数值显示、报警灯以及报警数据记录。

图3 前面板使用流程图
2.3 监控系统前面板设计
监控系统前面板如图4所示,根据使用顺序和功能划分为4个模块。分别是参数设置模块、照明灯整体状态观察模块、电流电压实时数据显示模块、故障报警记录模块。

图4 监控系统前面板
1)参数设置模块:系统在运行前要对相应的参数进行设定,主要包括串口设定和最低光照强度设定。只有设定完成之后,点击开始采集,系统才能根据预期进行运行。串口设置:LabVIEW与单片机之间通过串口进行数据通信。在通信时所选USB口不同,串口名称就会有所不同,根据设计选择相应的串口通道。参数设定:根据外界需要照明灯开启补充光强时的光照强作为最低光照强度的设定标准设定。通常这个最低光照强度为70Lx。
2)照明灯整体状态观察模块:系统开始运行后,可在此模块观察到照明灯整体状态。包括照明灯的亮灭、蓄电池的充电状态、蓄电池剩余电量以及处于此状态时的时间。由此可以直观全面的看到整个照明系统是否处于正常工作中。
3)电流电压实时数据显示模块:通过对蓄电池电流电压的实时监控可以观察到蓄电池工作状态以及使用寿命的变化。面板中可以观察到3.00~4.2 V的电压曲线变化以及数值变化和0.00~1.2 A的电流曲线变化以及数值变化。
4)故障报警记录模块:当故障发生时,故障灯亮起为红色。历史报警记录对故障灯进行相关的记录,包括故障时设定光照强度、实时光照强度和报警灯序号。
3 系统测试与结果分析
在软硬件搭建完毕后需要在各个典型的环境下对系统进行测试检验。
1)状态模拟:本次系统测试一共包括3个状态,分别是蓄电池充电、蓄电池放电、照明灯发生故障。蓄电池充电:使用光源照射太阳能电池组,满足光伏发电条件后蓄电池开始充电;蓄电池放电:解除太阳能电池组光伏发电条件,遮挡光敏电阻使得蓄电池开始放电;照明灯发生故障:在蓄电池放电时,遮挡发光的某一照明灯,模拟照明灯故障无法照明。
2)系统运行前期准备:打开硬件;等待LCD1602初始化完成,可在屏幕看见电流电压以及剩余电量的显示;打开上位机,进行参数设置运行观察上位机是否正常运行;正常运行后,重新设置参数,根据状态模拟方法对系统进行测试。
3.1 系统测试
1)蓄电池充电:将参数设置中的最低光照强度设定为70Lx,使用光源照射太阳能电池组,点击开始采集按钮。蓄电池开始充电,电流下降、电压上升,充电指示灯亮起,照明灯状态指示灯熄灭。
2)蓄电池放电:遮挡太阳能电池组以及光敏电阻。实际光照强度下降,照明灯开启,充电指示灯熄灭,蓄电池处于放电状态,电流下降、电压下降。
3)照明灯发生故障:分别遮挡5盏灯,此时故障报警灯亮起为红色,历史报警记录故障灯发生时的设定光照强度和实际光照强度以及故障灯编号。
3.2 系统测试结果分析
蓄电池在放电过程中,LCD1602所显示电压值对应的剩余电量为测试值。使用LK—15智能蓄电池容量测试仪测得的电压值与其对应的剩余电量为标称值。LK—15智能蓄电池容量测试仪测量电压的范围为0.5~18.0 V。
最终测试结果的测试值与标称值对比见表1。
表1 测试结果的测试值与标称值对比

测试值与标称值的折线对比图如图5所示。

图5 测试值与标称值的折线对比
由表格可以看出最大绝对误差为0.18。又已知精度计算公式如式(1)
ΔA=±α·Am%
(1)
式中 ΔA为绝对误差,Am为仪表量程,α为精度。计算可得电压测量精度为0.15 %,准确度等级为0.5。
4 结束语
本设计是一个基于LabVIEW的太阳能照明监控系统。下位机主要使用了STM32F105作为主控芯片,使用PCF8591作为系统的电压采集芯片以及系统的A/D转换芯片,使用ACS712作为系统电流采集芯片等。上位机主要实现了控制照明灯开闭时的光强,观察照明灯整体状态,观察蓄电池电压电流的实时变化以及照明灯故障报警记录等功能。经测试,主要能实现照明灯在合适的光照强度下开闭,可观察电压在3.00~4.20 V的变化,电流的0.00~1.20 A的变化,故障时的报警和相关信息的记录,下位机显示电流电压以及剩余电量等功能。相较于传统的照明监控系统来说更加节能环保、更加智能、更加便于系统化集中化管理。