基于LabVIEW的分布式开关电源监控系统

2014-03-27 05:24惠露李敏远
西安理工大学学报 2014年3期
关键词:下位字节上位

惠露, 李敏远

(西安理工大学 自动化与信息工程学院,陕西 西安 710048)

近年来随着计算机技术和开关电源技术的迅速发展,运用电源模块组成积木式、智能化的大功率分布式开关电源系统成为了电源技术发展方向之一。为确保各电源模块的可靠运行,需对分布式开关电源系统进行实时监控,从而使电源的维护和管理从人工值守的传统模式向计算机集中监控的智能化方向转换。目前分布式电源监控系统主要存在的问题为数字化程度低、不能准确指出故障点以及可靠性低[1-2]。

本研究介绍了一种基于LABVIEW实时监控多台开关电源的系统方案。针对单台电源模块主电路采用典型的两级结构,前级为有源PFC功率因数校正电路,后级为零电压开关移相全桥DC-DC变换器,电源控制与检测部分采取PIC单片机与控制芯片UCC3895相结合的方案。利用RS485作为串行通信总线,将分布在一定区域内的电源模块进行组网,设计了一套基于 RS485总线通信协议,解决了总线冲突。上位机监控软件采用美国NI公司开发的LabVIEW(laboratory virtual instrument engineering workbench)作为开发平台,提高了编程效率。最后,通过两台输出电压为不同级别的电源样机验证了该方案的可行性。

1 监控系统的要求与总体结构

1.1 分布式电源监控系统的要求

开关电源监控系统的主要功能是利用电源与计算机的通信模块完成信息交互,监控中心将各种设置、查询或检测命令发送给电源,电源接收命令后执行相关操作并将执行结果反馈给监控中心[3-4]。鉴于此,对电源监控系统的要求列示如下。

1)开关机控制,即将市电接入电源后监控系统正常工作,通过监控中心控制电源的启动与停止。

2)开关电源参数设置。监控对象为输出电压相同或不同级别的开关电源,能够监控的电源总数为1~255台,可对单台或所有电源参数进行设置。包括设置交流输入过欠压保护值、机内温度保护值、输出电压和输出限流值。

3)开关电源运行参数检测与显示。通过监控中心输入电源地址,针对某单台电源可检测交流输入电压值,机内温度值,输出电压、电流值以及输出功率,同时将检测数据返回监控中心以便于显示。

4)故障报警与定位。当某台电源出现故障,如:输入过欠压,机内温度过高,输出过压时将及时切断主电路输出,本机显示电路显示相应故障,同时将报警信息反馈给监控中心。

1.2 系统结构框图

图1为分布式开关电源监控系统框图。如图1所示,电源监控系统的核心是微控制器和PC端的监控软件,监控中心为上位机,微控制器及其外围电路为下位机。上位机通过系统总线发送命令数据,下位机通过各种传感元件将需要测量的物理信号转换成相应电信号,然后再经信号调理、采样、量化、编码等步骤保存到相关寄存器中,最终将操作结果通过系统总线反馈给上位机。当上位机没有发送命令数据,而下位机检测到某台或多台电源输入电压、输出电压、输出电流以及机内温度等信号发生异常时,下位机及时切断电源主电路运行,并在电源运行状态电路中显示相应故障,同时通过系统总线将故障信息反馈给上位机,利用通信协议,准确定位电源故障及故障类型。

图1 分布式开关电源监控系统框图

1.3 通信协议

根据本研究提出的电源监控系统方案,并在实际中结合本电源系统的硬件条件,通信协议[5-6]的设计主要包括通信格式、总线冲突及解决办法两个方面。

1.3.1 通信格式

1)通信速率与通信方式。上、下位机约定的波特率均为9 600 bps,选用标准异步串行通信作为通信方式。

2)发送帧与应答帧数据结构。上位机发送的命令帧由六个字节组成,如表1所示。第一字节表示电源地址;第二字节为设置、查询或检测的命令字标识位;第三,四字节为命令数据(当命令字为设置命令时,这两位表示不同类型的保护参数,如输入过欠压保护值,限流值以及温度保护值等;若命令字为查询或检测命令,则这两位都用0填补);第五,六字节为第一字节到第四字节的累加和。命令数据与校验和均采用2个字节表示且都为无符号类型,发送时高位在前,低位在后。

表1 命令帧结构

下位机回复的应答帧同样由六个字节组成,如表2所示,第一字节表示电源地址;第二字节表示对应命令帧中命令字的应答标识位;第三,四字节为下位机完成相应操作后的应答数据(当命令字为查询或检测命令时,这两位为检测数据;若为设置命令,则这两位都用0填补);第五,六字节为第一字节到第四字节的累加和。与命令帧相同,应答帧的数据位与校验和位均采用2个字节表示且都为无符号类型,发送时高位在前,低位在后。

3)命令字解释。为了满足电源监控系统的设计要求,通过上位机实现电源的开关机控制,设置、查询以及检测输入电压、输出电压和输出电流值等操作,本系统具体的命令解释如表3所示。

表3 命令字解释

1.3.2 总线冲突及解决办法

一般通信过程均由上位机发起,下位机不主动申请通信,故障情况除外。上位机根据下位机的地址,向下位机发送命令。此时所有下位机中断接收并判断与本机地址是否相同,地址不相符的中断返回并继续执行监控任务;反之将相应操作结果通过系统总线反馈给上位机。当上位机发送的设置命令中电源地址为0时,表示当前发送的是系统广播命令,即所有下位机都中断接收命令数据,不作应答,此时下位机地址分配不能相同。

当一台或者多台电源同时出现故障,而此时系统总线正被占用时,本系统采取利用报警控制表结合单片机中断延时的方案来解决总线冲突问题。由于在下位机监控系统中,当电源运行出现故障时,必须在最短的时间内切断主电路运行,防止电源过渡损坏,同时在相应的状态显示电路中显示故障信息。这样,即使系统总线正在被占用的情况下,故障电源已实施关机保护,在等待其它电源报警完毕之后,即可申请占用系统总线以便在上位机中显示故障参数以及确定电源故障类型。例如当1号电源正在报警时,2号电源也发生故障,准备占用系统总线,通过相关程序的设置,在1号电源报警时已将相关报警数据发送给2号电源,无论2号电源是否报警,都必须暂时放开系统总线30 ms,即1号电源连续报警3次,每次报警占用总线10 ms。在此期间2号电源继续检测其他量(若遇报警情况,则进行关机保护并在自身状态显示电路中显示报警类型),中断延时到达后2号电源才能占用系统总线,即系统总线总是被先报警的电源所占用。假设所监控的255台电源都发生故障,则总共需要7 650 ms完成一轮报警,而且能够准确判断出具体哪台电源的哪个故障点。此过程中报警数据同样由六个字节组成,第一字节到第六字节分别为电源地址、命令字、报警数据和校验和,其中报警数据和校验和分别占用2个字节,发送时高位在前,低位在后。具体报警控制表如表4所示。

表4 报警控制表

表4中通信故障指通信异常,输入故障指输入过欠压故障,输入故障1指芯片供电电源故障,输出故障指电压环反馈电压异常,输出故障1指主开关管驱动信号异常,温度故障指机内过温故障,温度故障1指温度通道故障,限流故障指负载电流过大。当下位机发送故障信号给上位机时,上位监控中心首先判断电源地址是否为当前操作的电源,若是,则在本机电源报警显示区根据差错控制表4中的命令字显示当前故障电源的故障类型,同时显示检测到的故障数据,否则将在其他电源故障显示区显示故障信号。而当两台或两台以上的电源发生故障时,还可以通过查看监控记录的方法来查看电源故障点,方便电源维护人员的后续维护工作。

2 监控系统硬件设计

要对电源进行实时监测和控制,其硬件电路的设计是必不可缺的。本系统中电源结构如前所述,每台电源模块的前级为有源PFC电路,经过功率因数校正后输出380 V的直流电压,然后输入后级为DC-DC的移相全桥整流电路,最后得到输出电压为不同级别的大功率开关电源。因此,下面只针对单台电源模块的监控原理进行阐述即可。

2.1 单台电源模块硬件电路设计

单台开关电源监控系统框图如图2所示,采用TI公司的移相全桥集成控制芯片UCC3895与美国微芯公司(Microchip)的PIC16F877A单片机相结合的控制方案实现数模混合控制。

正常情况下单片机通过电源工作状态采集电路[7]不断的循环检测交流输入电压值、输出电压值、机内温度值和相关芯片供电电压等信号,当检测到输入过压或者欠压、输出过压、机内过温等故障时,单片机发送封锁信号给UCC3895,及时控制电源关机。同时通过电源状态显示电路显示相应故障,确保整个电源系统安全可靠地工作。

图2 单台开关电源硬件监控原理框图

2.2 系统总线标准

根据监控系统的要求,为了实现监控中心与每台电源模块的信息交互,本系统选取RS485标准串行通信方式作为系统总线。

利用RS485标准可建立一个具有高噪声抑制、高传输速率的通信平台,方便对多台开关电源进行集中监控。

3 监控系统软件设计

3.1 监控系统下位机软件设计

由于每台电源模块具有相同的硬件结构,这里只对单台电源下位机监控流程图进行阐述。

正常情况下,下位机监控程序流程图如图3所示。电源模块接入市电后,监控系统开始工作。下位机循环检测当前电源运行状态,如电源输入电压,机内温度以及芯片供电电源是否正常。若检测正常,则等待上位机发送命令数据。当有命令数据发送过来时,下位机中断接收并判断命令类型,执行相关操作后,根据命令类型选择是否对上位机应答,操作完成后程序中断返回并继续实时监测电源运行状态。

图3 下位机监控程序流程图

而当监控系统中某台电源出现故障时,下位机报警程序流程如图4所示。

图4 下位机报警程序流程图

假设在此之前没有电源发生报警,则本机发送告警信息给上位机(将发生故障的电源称为本机),此时其它所有电源也都中断接收故障信号并在30 ms内放弃占用系统总线,同时本机状态显示为“电路显示故障”,上位机结合报警控制表就可准确定位电源故障点。最后通过合理利用PIC16F877A单片机内部存储器EEPROM,使监控系统具有记忆功能,实现对电源设置参数的记录。

当监控系统断电再上电时,电源模块不仅能根据断电前设置的参数运行,还可以使用恢复默认值命令使用默认参数运行。

3.2 监控系统上位机软件设计

本系统中,上位机监控软件的开发环境为LABVIEW 8.5。首先利用LABVIEW串口初始化函数节点(VISA configure serial port)来配置通信格式,如串口号,波特率,数据位和停止位。然后通过RS485总线对串口读(VISA write)和串口写(VISA read)函数节点进行相应操作就可以设置电源运行参数及监测其运行状态。最后采用LabSQL访问数据库的方法[8-9]记录相关监控信息。

上位机监控软件程序流程图如图5所示。主程序首先初始化串口,配置通信参数。当电源地址不为0时,表示设置命令不是广播命令,此时电源地址相同的下位机中断接收数据,执行操作后根据电源地址应答上位机;若为广播命令,则所有下位机中断接收数据并执行操作,但是不应答。当其它电源发生故障时,下位机主动申请通信,将报警数据反馈给上位机以便定位电源故障点。最后,利用 Microsoft Access数据库记录所有监控记录。

图5 上位机监控程序流程图

4 实验结果

为了验证本监控系统方案的可行性与可靠性,制作了两套电源模块监控样机。分配电源地址分别为1#与2#,实际监控中,可通过广播命令设置全部电源的运行参数,如图6所示,输入命令字,设置相应的电压、电流和温度保护值,就可以修改1#与2#电源的运行参数。

图6 电源广播命令设置界面

当需要查询或实际检测具体某台电源的运行状态时,将界面切换为电源状态监控界面,如图7所示,在命令设置区输入所需操作的电源地址,就可以针对单台电源设置,查询或检测运行参数。

图7 实时监控电源状态界面

为了模拟电源故障,实验中通过调压器改变1#电源的输入电压,当输入电压大于所设置的输入过压保护值AC 270 V时,1#机显示输入故障并发送报警数据,上位机接收后发出告警声并显示最后一次检测的输入电压AC 275.72 V。而2#电源同样中断接收报警数据,中断延时30ms暂时放开系统总线。最后通过链接数据库可以查看全部监控记录。

5 结 论

1)研制了一种基于LabVIEW的分布式开关电源监控系统。该监控系统操作界面简单直观,只需输入相关命令字就可监控分布在一定区域内单台或多台输出电压级别相同或不同的开关电源,提高了电源的供电质量;

2)利用报警控制表结合中断延时的方法巧妙的解决了总线冲突,并对电源出现的故障点能够准确定位,减少了工作人员的维护工作量。

参考文献:

[1] Lien C, Chen H, Bai Yingwen, et al. Power monitoring and control for electric home appliances based on power line communication:IEEE International Instrumentation and Measurement Technology Conference[C].Canada, 2008:2179-2184.

[2] Hung M, Chen J, Chen Pingnan, et al. Development of a zigBee-based distributed power monitoring and control platform with easy-development and flexible-extension considerations: the 2011 international conference on instrumentation, measurement, computer, communication and control[C].Taiwan,2011: 345-348.

[3] 卢剑锋,韩磊,杨咏新,等.一种基于AVR单片机的直流电源监控系统[J].仪器仪表学报,2004,25(4): 877-879.

Lu Jianfeng, Han Lei, Yang Yongxin, et al. DC power monitoring system based on AVR microcontroller[J]. Chinese Journal of Scientific Instrument, 2004, 25(4): 877-879.

[4] 杨永标,王双虎,王余生,等.一种分布式电源监控系统设计方案[J].电力自动化设备,2011,31(9):125-128.

Yang Yongbiao, Wang Shuanghu, Wang Yusheng, et al. A distributed power monitoring system design[J].Electric power automation equipment, 2011, 31(9): 125-128.

[5] Jin Yulong, Yang Jiaqiang. Design an intelligent environment control system for greenhouse based on RS485 bus: the 2011 second international conference on digital manufacturing & automation[C].Hangzhou: China, 2011: 361-365.

[6] 胡中工,黄波,江维.基于RS485总线的PC与多单片机通信系统的设计[J].自动化与仪器仪表,2012(1): 30-35.

Hu Zhonggong, Huang Bo, Jiang Wei. The communications system design between PC and multi-chip based on RS485 bus [J]. Automation and Instrumentation, 2012(1): 30-35.

[7] 粱炎明,李琦,吴军军,等.基于红外阵列传感器的电站锅炉空气预热器热点检测系统设计[J]. 西安理工大学学报,2010, 26(1): 106-110.

Liang Yanming, Li Qi, Wu Junjun, et al. A hot spots detection system of power plant boiler air preheater designed based on infrared array sensor[J]. Journal of Xi’an University of Technology, 2010, 26(1): 106-110.

[8] Cai Changqing, Zhang Weijun. The design on the multi-temperature testing system based on the Labview: the 2008 international seminar on future Bio medical information[C]. Engineering. Changchun,China,2008: 421-424.

[9] 唐波,潘红兵,赵以顺,等. 在LabVIEW环境下基于ADO技术和SQL语言的数据库系统实现[J].仪器仪表学报,2007,28(4): 227-229.

Tang Bo, Pan Hongbin, Zhao Yishun, et al. The implementation of database system in the Labview environment based on ADO and SQL language[J]. Automation and Instrumentation, 2007,28(4): 227-229.

猜你喜欢
下位字节上位
No.8 字节跳动将推出独立出口电商APP
No.10 “字节跳动手机”要来了?
发射机房监控系统之下位机
基于MSP430的四旋翼飞行器的S-BUS通信协议的设计与实现
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
以新思路促推现代农业上位