基于STM32的励磁装置数据采集系统
2021-02-05张晓艺张文玲杨彦杰何州
张晓艺,张文玲,杨彦杰,何州
(1.河北工业大学省部共建电工装备可靠性与智能化国家重点实验室,天津 300131;2.河北工业大学电气工程学院,天津 300131)
励磁装置数据采集系统对发电机运行状态实时监测和故障录波有着重要意义[1]。数据采集的精度和实时性直接影响系统状态判断的准确性和快速性。采集系统获得的各类数据可作为后续故障识别以及故障预测的重要数据来源。考虑到设计成本和后续应用的问题,本设计选择STM32F407ZGT6作为主处理器(MCU),结合其内置模数转换器(ADC)资源,设计了电平偏置电路、励磁电压和电流采集电路、机端电压和电流电路、CAN通讯电路、供电电路等,主要采集励磁整流桥的输出波动直流电压、电流和发电机机端三相交流电压与电流,并利用上位机LabVIEW显示,获得了较好采集波形[2-3]。本设计选用的芯片具有强大的外设功能,且成本低廉,具有广阔的开发前景。
1 系统硬件电路
本设计励磁系统RXEE采用自并励励磁方式,输出电流为三相整流桥输出,励磁回路电压可达800 V,电流达300~500 A,励磁回路电压较高,不能直接进行信号采集,需将高压大电流适配为微处理器可处理的电平[4]。本设计选择STM32F407ZGT6作为MCU,因为STM32F4系列芯片的优势是新增了数字信号处理(DSP)指令以及浮点运算单元(FPU),非常适合于实时快速实现数字信号处理算法,如快速傅氏变换(FFT),小波变换(WT),希尔伯特-黄变换(HHT)等。同时,STM32F4的主频也提高到168 MHz(具有210DMIPS处理能力),使得STM32F4系列MCU非常适合需要浮点运算或DSP处理的应用。整个采集系统由主控制模块、一系列模拟信号调节电路、通讯模块、电源模块以及人机交互模块构成[5]。励磁采集系统原理框图如图1所示。
图1 励磁采集系统框图Fig.1 Block diagram of excitation acquisition system
1.1 STM32F407ZGT6简介
STM32F4是意法半导体(ST)公司在2011年推出的基于Cortex M4内核的系列产品[6]。STM32-F407ZGT6配置非常强大,它拥有的资源包括:集成FPU和DSP指令,并具有192 KB SRAM,1 024 KB FLASH;12个16位定时器,2个32位定时器,2个直接存储器访问(DMA)控制器(共16个通道),3个串行外设接口(SPI),2个全双工集成电路内置音频总线(I2S),3个内部集成电路(IIC),6个串口,2个USB(支持HOST/SLAVE),2个CAN,3个独立12位ADC,2个12位DAC,1个实时时钟(RTC,带日历功能);安全数字输入/输出接口(SDIO)接口、灵活的静态存储控制器(FSMC)接口、10/100M以太网MAC(media access control)控制器、摄像头接口、硬件随机数生成器各1个;112个通用IO口,支持串行(SWD)、JTAG 调试等[7]。
1.2 励磁电压电流采集电路
发电机机端电压电流为交流信号,励磁电压为波动直流,均会出现过零现象,为了使信号在STM32F407内部ADC适配电压范围0~3.3 V内,现进行如图2所示电路结构进行信号平移[3,8]。
图2 电平平移电路Fig.2 Level shift circuit
根据叠加原理,可得出输出电压Uout与Uin,Uref的关系为
式中:Uin为输入电压;Uref为平移电平。
为满足ADC电压范围0~3.3 V,需满足如下2个约束条件:
式中:Uin,max为最大输入电压;Uin,min为最小输入电压。
本设计中,为调节方便,取R1=R2=5.1kΩ,R3结合Uref适当选择。在电路中反相,需在输入Uin前端加一个由运放构成的反相器,Uref一般取负电压。
考虑信号采集电路需要和外部电路具有电气隔离,以及具有较强的抗干扰能力,励磁电压、电流可用霍耳传感器转换为小信号后再进行处理。励磁电压可由电压传感器LV25-P进行电压缩小;励磁电流采用霍耳电流传感器,转换为4~20 mA小电流信号。传感器本身自带电气隔离。利用Multisim搭建如图3所示仿真电路图,得到仿真曲线在0~3.3 V范围,符合电平要求。Multisim仿真输出如图4所示。
图3 励磁电压仿真图Fig.3 Simulation diagram of excitation voltage
图4 仿真输出Fig.4 Simulation output
1.3 机端电压电流采集电路
发电机机端交流电压和电流信号可利用电压互感器、电流互感器转为100 V和5 A信号,由于100 V和5 A信号相对于STM32系统仍为高压、大电流,采用二次降压、变流。选用T70/B 220/5V模块将100 V电压转为5 V信号,TA5A/0.1A母线内置式交流互感器将5 A电流变为0.1 A电流信号。该模块均可直接焊接在PCB板上,由于设计PCB空间有限,且该电压、电流变化电路简单,本设计并未放置在PCB板上,实际测量需外加相应模块。为获得更好的电气隔离,本设计拟对定子电压采集信号采用双极性线性光耦器件HCNR201进行电气隔离处理,HCNR201线性光耦模块同母线内置式交流互感器一样可直接放置在PCB板上,本设计中HCNR201采用DIP8封装。结合平移电路、稳压电路等环节,可得到机端电压采样电路原理如图5所示。电流采集由于使用了两极电流互感器,其电气隔离效果较好,可以直接进行处理,机端电流采集电路原理如图6所示。
图5 机端电压采集电路Fig.5 Terminal voltage acquisition circuit
图6 机端电流采集电路Fig.6 Machine-side current acquisition circuit
1.4 CAN通讯和电源模块电路
CAN通讯电路的收发器选用TI公司生产的芯片VP1050,其工作电压为5 V,适配MCU工作电压为3.3 V,引入SN74LVC4245DB电平转换器件。MCU经SN74LVC4245DB电平转换后与外部CAN总线相连。用光耦合隔离器件6N137实现电气隔离作用,防止外部CAN总线串入高压时对MCU产生危害。CAN通讯接口电路如图7所示。
图7 CAN通讯接口电路Fig.7 CAN communication interface circuit
本设计采用24 V电源供电,STM32最小系统板载有5 V转3.3 V芯片模块,故只需提供5 V电压,运算放大器要求电源为±12 V,励磁电压采集模块LV25-P需要±12 V电压,允许最大值为±15 V,可共用运算放大器电源,综合考虑简化电路复杂度和PCB空间,选择用MORNSUN公司的24 V转5 V,±12 V模块。
2 系统软件设计
本文采用KEIL MDK集成开发和调试平台。
2.1 ADC配置
本设计采用如下采样配置:ADC多通道双重模式同步触发,DMA数据存储,触发方式可选用软件触发、内部时钟触发。该方式下,ADC1作为主模数转换器、ADC2为从模数转换器,触发脉冲会同时触发ADC1,ADC2,并同时转换,转换完成后生成DMA请求,将数据存储到预先设定的数组内;然后进入下一组通道,重复以上过程;所有通道转换完成后,ADC从第1次转换通道组开始第2次转换,如此循环。
2.2 DMA配置
DMA配置主要分为以下几个步骤:通道选择、优先级配置、数据传输方向、存储器和外设数据宽度、存储器和外设地址是否增量、模式配置、数据传输量等[9]。本设计中ADC的DMA数据请求和通道位于DMA2中,配置DMA2数据流0、通道0;由于仅1个DMA请求,优先级可设定为默认值;ADC作为CPU的外设,数据传输方向为外设到存储器;宽度为半字;外设地址(即ADC转换完成存放DR的地址)不变,存储器地址(自定义的数据存储地址)自增1;循环模式;数据传输量为4。
配置DMA时,需要注意外设地址值和目的地址值的获得,ADC规则通道的DR寄存器的内存地址为0x40012308,可定义为一地址常量,方便调用,目的地址值可直接传递地址值。DMA模式下,ADC转换完成标志位会作为DMA请求命令,在DMA读取ADC数据后,ADC标志位会自动清零,所以ADC的中断会失效,为实现数据传输的完整性,可用DMA中断,DMA在传输完成后会产生传输完成中断,利用该中断信号,作为CAN邮箱装载数据的标志。
2.3 CAN通讯配置
STM32F407ZGT6的控制器区域网络(CAN),具有2个CAN通讯口,CAN1为主bxCAN,用于管理bxCAN与512字节SRAM存储器之间的通讯;CAN2为从bxCAN,无法直接访问SRAM存储器;2个bxCAN单元共享512字节SRAM存储器。CAN通讯传输有以下5种类型的帧:数据帧、错误帧、遥控帧、间隔帧、过载帧。本设计主要进行数据传输,采用数据帧发送数据。数据帧分为标准帧和扩展帧,本设计采用标准帧。
在CAN通信模块的初始化配置中,波特率是一个非常关键的参数[10]。本设计中,APB1频率为42 MHz,配置CAN通讯的预分频系数为6,CAN_BS1配置为7个CAN周期,CAN_BS2配置为6个CAN周期,则波特率计算值为
式中:CAN_Prescaler为预分频系数;CAN_BS1为时间段1(BS1)定义采样点的位置;CAN_BS2为时间段2(BS2)定义发送点的位置。
初始化CAN通讯之后,配置CAN工作模式及波特率、相关控制位等,并退出初始化。在CAN通讯接收和发送采样差动电平时,硬件连接要注意120 Ω电阻的接入。CAN帧结构配置为:时间触发通信模式禁止,自动离线管理禁止,自动唤醒模式禁止,允许报文自动重传,接收FIFO锁定模式禁止,发送FIFO优先级由报文标识符决定,重新同步跳跃宽度为2个CAN周期。利用USB-CAN适配器及CANTool接收、发送数据如图8所示。
图8 CAN-Tools接收、发送数据Fig.8 CAN-Tools receive and send data
3 人机界面设计
CAN通讯传输到上位机的数据可由Lab-VIEW进行实时数据处理和分析,查看励磁系统运行状态等[3]。信号波形显示如图9所示,信号波形输入由任意波形发生器产生,与上位机Lab-VIEW通讯由USB-CAN适配器连接[11]。为分析线性光耦的线性度性能,本文获得了线性光耦器件HCNR201输入电压与隔离输出电压关系图,如图10所示。图10是由信号采集系统输入直流信号并读取STM32采样值获得,分析图9、图10,线性光耦器件HCNR201在0~1.6 V范围内线性度非常高,在1.6 V以后,由于前端电压转电流的运算放大器工作在比较状态下,使得输出值达到-12 V,输入电压的变化已不影响线性光耦的亮度,即光电效应产生的光电流值基本不变,则输出电压值基本不变。
图9 信号采集波形显示Fig.9 Signal acquisition waveforms display
图10 线性光耦HCNR201输入Uin与输出Uout关系图Fig.10 Linear photocoupler HCNR201 input Uin and output Uoutrelation diagram
利用上位机信号显示电路可获得相应的波形如图11。
图11 上位机LabVIEW波形显示Fig.11 LabVIEW waveforms display of upper computer
4 结论
本文在考虑电气隔离条件下完成了励磁系统励磁电压、电流和机端电压、电流信号采集,并利用CAN通讯实现了与上位机通讯,利用LabVIEW显示了实时波形。本系统可实现如下功能:
1)励磁和机端电压、电流波形现场实时查看。上位机LabVIEW设置了友好的用户界面,可方便调整显示。
2)故障录波和运行状态记录。LabVIEW接收到的数据可存储到上位机内存中,方便后续查看运行状态。
本文实现了励磁装置主要参数的信号采集和波形显示,主要采集了4路信号,ADC采样频率比CAN通讯的传输频率要高,一定程度上并未充分利用STM32 ADC快速采样能力,还有许多有待完善之处,下一步计划设计人机界面显示触发角、有功功率、无功功率、频率等参数。