APP下载

基于STM32F4的发电机励磁监测系统设计

2022-01-20王尚博王奥雨梁成壮

通信电源技术 2021年15期
关键词:励磁发电机电路

王尚博,王奥雨,梁成壮

(中国电子科技集团公司第五十四研究所,河北 石家庄 050081)

0 引 言

发电机励磁控制是保证发电机及电力系统安全可靠运行,改善电力系统动态性能的重要措施。随着电力系统的不断发展,其系统结构和运行方式也日趋复杂,对发电机励磁控制系统的数据采集及存储性能提出了更为严格的要求。传统的发电机参数测控系统受存储空间大小和通信接口数量的限制,存在精度不高、实时性差以及采集信息量小等缺点,已无法满足实际电力系统对稳定性和实时性的要求。本文提出基于STM32F4的新型发电机励磁监测系统充分利用了STM32丰富的片上资源,大大节约了硬件投资,增强了系统的实时性与可靠性,精度显著提高,同时功耗大为降低。

1 系统总体设计

本发电机励磁监测系统的系统框架如图1所示。电压和电流等模拟信号经过信号调整电路调整后进入STM32F4的ADC通道将模拟信号转换为数字信号,再由STM32F4进行数据处理。开关量信号则经过信号调整及光电隔离通过I/O口输入,STM32F4通过中断或查询方式读取开关量状态。系统的开关量和模拟量输出实现发电机増磁减磁等功能,为了使数据显示更加直观,励磁系统的数据经采集处理后,经由串口485或CAN总线传送至上位机显示,同时进行储存以便对历史数据进行查询。由于发电机需要长时间运转,出现故障在所难免,本系统设计了故障记录模块,当系统检测参数异常时,自动启动故障记录功能,记录下故障前、后规定时间段的数据及时间。

2 系统硬件设计

2.1 微控制器概述

意法半导体推出的STM32系列32位微控制器基于ARM Cortex-M3(或ARM Cortex-M4)内核,其构架有多项改进,而且所有新功能都具有非常低的功耗水平。STM32系列产品为MCU用户提供了新的自由度,在结合了高性能、低功耗以及低电压特性的同时,保持了高度的集成性能和简易的开发特性。STM32芯片比其他ARM系列芯片运行速度更快,性能也更好。在代码密度上,其比普通32位单片机省30%~45%;在功耗方面,STM32芯片在相同的工作模式下较其他ARM7系列芯片可以减少30%左右的功耗[1-2]。

图1 系统框架

STM32系列芯片除了大幅提升系统的性能,还包含了标准和先进的通信接口。以STM32F407xx系列为例,其具有两个集成电路总线(Inter-Integrated-Circuit,IIC)、3个串行外设接口(Serial Peripheral Interface,SPI)、两个互联网信息服务(Internet Information Services,IIS)管理器、1个安全数字输入输出接口(Secure Digital Input and Output,SDIO)、6个通用异步收发传输器(Universal Synchronous Asynchronous Receiver and Transmitter,USART)、两个串行总线(Universal Serial Bus,USB)以及两个控制器局域网(Controller Area Network,CAN)。这些丰富的外设配置,使得STM32可以选择多种数据传输手段。此外,STM32F407xx系列内部自带3路12位分辨率ADC,共24个通道,无需外扩芯片即能对多路输入信号进行采样计算[3]。

2.2 数据采集模块设计

数据采集模块包括开关量状态采集和模拟量数据采集两部分。

2.2.1 开关量状态采集

STM32F4的I/O口都可以配置为通用输入、输出端口,并且可以配置到外部中断线上。在本系统中采用轮询的方法采集开关量的状态,开关量输入电路如图2所示,状态信号由KGL端进入,3.3 kΩ电阻在开关量为高电平时起上拉电阻作用,1 μF电容和470 Ω电阻构成滤波电路,能够消除噪声并减小信号尖峰。光偶隔离器件PS2801-4实现了开关量与主控单元的电气隔离,保证了系统运行的可靠性,并提高了抗干扰能力。

图2 开关量输入电路

2.2.2 模拟量数据采集

发电机的电压和电流参数一般较大,如励磁电压通常会达到直流120 V,而本设计主控单元STM32F4的ADC输入电压仅为0~3.3 V,因此为满足主控单元的采样要求,必须将励磁电压经过信号调理才能送入主控单元。

本系统将ADC1配置成独立模式完成励磁电压Uf和励磁电流If的测量。设定模数转换通道为单通道模式,转换为连续转换,将ADC1挂接在DMA channel_0 stream_0通道上。在这种工作模式下,模数转换在随时进行,需要读取时只要读取对应地址内的数据即可。励磁电压采集电路如图3所示,对于励磁电流的测量,采用与励磁电压测量相同的方法,在此不做赘述。

图3 励磁电压采集电路

2.3 通信模块设计

主控单元采集上来的数据不能直接被操作人员观察到,需要借助显示器来完成人机交互。为了使操作人员能够直接地观察到系统采集的参数,本系统采用RS485通信方式将采集到的数据发送到上位机PC。RS485接口采用平衡驱动器和差分接收器组合的方式,增强抗共模干扰能力,最大的通信距离约为1219 m,最大传输速率为10 Mb/s,完全能满足一般工业对通信距离及通信速率的要求[4,5]。本系统采用芯片SN65LBC184D来控制RS485的发送与接收。SN65LBC184D是具有瞬变电压抑制功能的差分收发器,在有电气噪声的环境中依然能保持250 kb/s的传输速率,同时还具备静电释放(Electro—Static Discharge,ESD)保护功能。该芯片的应用不需要任何其他外部元器件就能提供出一个可靠的低功耗、全双工通信接口。系统的RS485通信电路如图4所示。

图4 RS485通信电路

为了方便系统与本地其他系统交互通信或扩展其他功能,本系统还设计了CAN通信接口。CAN现场总线的数据通信具有突出的可靠性、实时性以及灵活性,CAN协议摒弃了传统的站地址编码,代之以对数据通信块进行编码,可以以多种方式工作。CAN总线的节点分成不同的优先级,采用非破坏仲裁技术,报文采用短帧结构,数据出错率极低,节点在错误严重的情况下可自动关闭输出[6,7]。本系统选用芯片SN65HVD1050(以下简称VP1050)作为CAN收发器,它是专门针对EM兼容性而设计的,避免了在恶劣EM环境下发生故障或性能降低的情况,而且其特殊结构有利于改善噪声抑制、静电保护以及故障容差等特性。系统的CAN通信电路如图5所示。

图5 CAN通信电路

2.4 故障记录模块设计

随着电力系统网络化水平的不断提高,故障记录功能已经成为整个电力系统中不可缺少的一部分。当系统发生故障时刻开始,记录下故障发生前、后规定时间段内的数据及故障发生时刻的数据,通过分析这些数据可以得知发电机故障的类型以及事故的原因和性质,这对于及时处理事故和避免同类事故的再次发生都具有重要意义[8]。

本系统采用了Ramtron公司的FM2502-G非易失铁电存储器作为故障记录模块的存储器,其具有256 kB的随机存储单元,使用高速SPI总线,在执行写操作时几乎无延时,数据能可靠保存45年[9,10]。系统的故障记录模块如图6所示。

图6 故障记录模块

3 系统软件设计

本系统设计中采用软件Keil μVision4作为开发平台,用户界面可以更好地利用屏幕空间且更有效地组织多个窗口,提供一个整洁高效的环境来开发应用程序,使开发人员能够使用多台监视器,并提供了视觉上的界面对窗口位置的完全控制[11]。系统软件部分主要包括开关量状态采集程序、模拟量采集程序、RS485通信程序以及CAN通信程序4个部分。在执行各部分程序之前要完成对系统时钟、通用输入输出端口、ADC功能复用、RS485及CAN通信功能复用的初始化。

在本系统中,由于主控单元具有直接存储器存取(Direct Memory Access,DMA)功能,将模拟量采样ADC功能连接到DMA进行功能复用,基本可近似认为ADC转换是实时进行的。在主控单元中设定一些故障的边界条件,通过主控单元自带的定时器可以设定间隔时间来完成定时读取数据与边界值比较,判断是否故障,当系统出现故障时触发相应中断,进行中断处理并作必要的故障记录。当上位机发出采样请求时,主控单元可计算ADC的转换结果,并在得出结果后发送给上位机。

励磁电压和励磁电流为直流量,其有效值分别为:

式中,U为电压有效值,n为每周期采样点数,uk为第k点采样电压值,I为电流有效值,ik为第k点电流采样值。

在数据采集的程序中,编写了延时函数,每隔10 ms读取一次ADC的转化结果并将其存储记录,当数据达到100个时进行上述公式的计算,同时将转换结果通过RS485发送到上位机显示。

本系统中应用轮询的方式对开关量进行开关量状态采集,通过STM32F自带的函数GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)便能读取对应引脚连接的开关量状态,方法比较简单。

4 实验结果与分析

由于励磁电压和励磁电流的采样原理一样,因此本文仅就励磁电压试验给出实验结果。实验中选取了80~129 V采集电压中的9组数据,在对应采集电压下,Uf1理论值与实验值对比数据如图7所示,每组采集电压对应的相对误差和绝对误差数据如图8所示。从数据可知,励磁电压的实验值与理论值有一定误差,但是误差较小,在系统要求的范围内,尤其在额定励磁电压120 V附近,系统的误差极小。

图7 励磁电压测量实验数据

图8 励磁电压测量实验误差分析

实验结果表明,数据采集模块设计合理,采样结果准确,励磁电压在额定运行点(120 V)处相对误差为5%,准确度和精度较高,实时性很好。

编写程序测试RS485发送数据误码情况如图9所示。初始化串口的波特率为9600 bit/s,无校验位,数据位为8,停止位为1。发送程序为间隔500 ms发送一次数据,发送的数据为12、23、34、45、56、67、78、89、9A、AB、BC、CD、DE、EF以 及 F0。试验工发送了27次,除第13次和第16次出现卡顿现象之外,其他均能流畅通信。27次试验均未出现数据错误,误码率为0。

图9 RS485发送接收实验数据

5 结 论

经过长期反复实验表明,本系统基本实现了对励磁系统开关量状态及励磁电压与电流数据的实时采集、分析及故障记录功能。系统可省去大量的外扩芯片,如AD转换芯片和数据通信芯片等,大大简化了硬件电路设计,节约了成本。整个系统的实时性好、准确率高,且功耗低,在电力系统不断发展的当代,具有很强的市场竞争力和很高的应用价值。

猜你喜欢

励磁发电机电路
同步调相机励磁前馈式强励控制方法研究
基于TMS320F28335控制器实现励磁系统的智能均流控制
新能源经MGP并网时励磁调节对频率振荡的影响
电路的保护
电压变化对电励磁同步电动机的影响
笑声发电机
“简化法”巧解电路问题
小番茄发电机
运行中发电机出口压变异常的分析与处理
巧用立创EDA软件和Altium Designer软件设计电路