基于PIC24F的柴油发电机检测与自动化系统
扫描二维码
随时随地手机看文章
摘要 针对原有柴油发电机组的专用控制器功能单一、集成度低、测量精度和响应速度低等问题,设计了一款基于PIC24F的柴油发电机检测与自动化系统。在该系统控制作用下,可实现市电故障检测以及无人值守条件下的自动运行。通过实验证明,文中所使用的差动式低通放大电路作为前置电压采样电路和软件补偿算法,可较好地抑制共模干扰信号,高频干扰信号,冲击噪声,提高了测量的准确性与可靠性。与以往的双电源供电和外置AD做法相比,文中所采用的单电源加偏置电压的信号采集电路成本降低,外围器件减少,且缩小了电路体积。
柴油发电机组是内燃发电机组的一种,由柴油机、三相交流同步发电机和控制系统等组成。由于传统的柴油机控制系统都是分离式、半自动和手动的居多,其体积较大,性能指标较低。随着科技的发展,对发电机组工作过程中各种动态参数的控制精度要求越来越高,要求具备远距离遥控、遥测、遥信功能,并能实时存储、上报动态参数等,依靠传统的控制系统已无法满足上述要求。文中采用Microchip公司的PIC24FJ64作为控制器的核心处理器,其成本低,可靠性高,自带A/D和一些通讯接口。实验结果表明,所设计的柴油机控制器能够实时采集多通道数据,所用测量方法测量精度较高,响应速度较快,并通过串行总线与计算机通讯,实时显示机组工作状态,记录各项报警参数,并通过短信告知用户。
1 系统的设计
设计采用16位的PIC24FJ64GA为主芯片,其带有10位A/D、UART、SPI接口和CAN接口,完全可满足设计要求,且有成本低,可靠性高的特点。图1中,市电和发电机三相电参数通过信号调理电路输送1给主芯片的A/D口,发电机的油温油压等参数通过信号调理电路2输送给主芯片的A/D口,作为备用电源时,工作在自动模式,此时监测市电参数并且当市电电压出现异常时,进行分闸操作,此时自动启动柴油发电机,等待启动完毕后,进行合闸操作,给予供电,当市电恢复时,合闸至市电电网,同时进行柴油发电机的停机操作,实现自动合分闸(ATS切换)。作为电源使用时,工作在手动模式,手动控制发电机启动。发电机启动后,将实时检测发电机运行的各项参数,同时通过SPI传送至128×64液晶屏显示,此外,该控制器还配有CAN和485 接口,通过与PC机连接,可以通过上位机来设定控制器的参数,也可将控制器采集到的数据显示在上位机上,CSM模块可以将报警信息以SMS方式发送到用户手机。
2 电路设计
2.1 三相电压检测信号调理电路
该电路的目的是将三相电压转换成处理器A/D可输入的电压范围,该信号调理电路运用运放电路中的差动电路来实现,图2为实现L1-N的线电压转换,由于PIC24FJ64CA的A/D电压范围为0~3.3 V,且交流电的负电压不能被A/D所采样,以往的设计往往是使用专用的A/D芯片转换负电压,这样就增加了成本。本文通过在同相输入端增加了1.6 V的偏压信号,使得正弦波幅值上移,这样可以正向电压则在1.6~3.3 V之间,而反向电压在0~1.6 V之间,0位为1.6 V,在0~3.3 V能采集到完整的正弦波,这种方法的优点在于,前置电路处理简单,成本极大的降低了,并使得CPU处理交流电压变得方便。设计测量电压的量程为0~450 V,取比例系数为K=RF/R4=0.002,使得输出电压范围在0.7~2.5 V之间,由于现场使用中发现交流电中存在较大的干扰信号。
(1)当闸门关闭时,零线上存在极大的扰动电压,这是由于电网中其他用电设备在交流回路上会产生电压。
(2)输出电压波形上叠加有高频干扰信号。因此本电路在偏压端,也就是同相输入端加入C1用于滤除零线上的干扰信号,输出端加入C2滤去高频信号。
同理测得另外两相电压L2-N,L3-N的线电压,再通过计算公示可得出L1-L2,L2-L3,L3-L1的相电压。
3 dB带宽fc=1.32 kHz,该带宽可以通过50 Hz交流电,而对频率高于1.32 kHz的信号有抑制作用,该电路设计的信号效果如图3所示。
2.2 三相电压频率信号调理电路
该电路的目的是将交流电的正弦波信号转换成单片机计数器口所能识别的方波信号,并能抑制高频干扰,使测量结果准确。基本设计思路是通过一个有限增益反馈型二阶低通滤波器和一个双限比较器来实现,具体实施电路如图4所示。
第一个运算放大器环节为有限增益反馈型二阶低通滤波器,其输入与输出的传递函数如下
通过分析计算可知,带宽为212.31 Hz,幅频特性无谐振,无超调量,满足设计性能指标。
2.3 通讯接口电路
2.3.1 RS-485通讯接口
由于PC机的串行通讯总线是RS-232电平,因此要使RS-485总线可与PC机通讯,则需将RS-485转成RS-232,利用Modbus协议与上位机通讯,RS-485接口采用RSM3485芯片接受上位机可通过该口接受控制器监测到的参数,也可通过该口设置一些控制参数。采用RS-485,其电平格式为差分的形式,能抑制共模干扰,因此其通讯距离比RS-232要长得多。对于有监控要求的用户,可使得监控室设置在离机房较远的地方。
2.3.2 CAN通讯接口
CTM1050T是5V的高速隔离CAN收发器。在设计中,采用屏蔽线方式通讯,这样可抑制电磁干扰,屏蔽层接致CANSCR引脚,其中R9和C12为耐高压电阻电容,该电路设计特点是能抑制电磁干扰,防止总线过压引起的电路烧毁。
3 软件设计
3.1 电压参数检测软件设计
市电/发电的电压信号,通过信号调理电路,转换为0~3.3 V之间的低压信号输入到PIC24FJ64GA的A/D口,根据正弦波频率50 Hz,设定采样转换周期为2 kHz,设计采用每个转换周期转换8次数据,一个正弦波周期采样40个数据,对采样数据进行滤波,转换得到最终结果。
第k次采集到的A/D的值,buf0~buf7为存放A/D读数的缓存区,为抑制瞬态干扰,对buff中的数据进行排序,排序后采用中位值取平均。
D(k)=(buf3+buf4)/2 (13)
根据A/D参考电压为3.3 V,10位A/D,每个A/D读数表示3.225 mV,上述信号调理电路放大倍数为0.002,也就是2 mV表示1 V。计算每个A/D读书表示电压的值
A=3.225/2=1.57 (14)
根据信号调理电路,加1.6 V的偏压,0位为1.6 V,A/D读数为512,将读数转换为电压值
u(k)=[D(k)-512]/1 023×A (15)
将一个正弦波周期采集到的值求均方根,得到T时刻一个正弦波周期的有效值
在实验中发现若只采集1个正弦波算出有效值并直接显示,则显示的有效值会不稳定,并呈周期性跳变,因此采用一阶滞后滤波算法。
Uf(T)=(1-a)×U/(T)+a×Uf(T-1),0<a<1 (17)
式中,Uf(T)为T时刻滤波后输出的电压值;U(T)为T时刻的采样值;a为一阶滤波系数。当a越大时,数据越平滑,响应速度越慢;当a越小时,响应越快,但稳态时数据变化大。为克服这一缺点,使a的变化具有误差带开关,当其进入误差带时,a较大,而当U(T)变化较大时,a较小,其实现方法为
电压检测软件流程如图7所示。
3.2 控制系统软件设计
柴油发电机控制器是一个典型的实时控制系统,在运行中要保证采样、计算、保护、控制、通信等任务。终端控制软件是在硬件平台PIC24FJ64GA和开发环境MPLAB中采用C语言开发、采用模块化程序设计,便于功能扩展。整个程序包括的子模块有:系统各I/O端口的初始化、按键控制模块、参数采集模块、逻辑判断模串行通信模块等。
该控制系统通过检测市电电压,当电压欠压时进行市电供电分闸操作,并同时给出启动柴油发电机命令,当发电机运转一切正常后,进行发电机供电合闸操作,若发电机运转时,油温、油压、温度、水温等参数出现问题,则进入报警停机状态,并将报警信息传输给用户。在发电机供电运转时,市电供电恢复,则控制器进行发电机供电分闸和市电合闸,并控制发电机停机操作,具体的软件流程图如图8所示。
PIC24F的柴油发电机检测与自动化系统" />
4 结束语
本文通过对柴油发电机组的研究,设计了基于柴油发电机组的控制器,实现状态参数的监测,完成了硬件设计和软件设计。经实验证明,本文设计的信号处理电路及数字滤波办法,可以有效地提高测量精度和响应时间,对于大负载导致的发电机电压变化可快速地响应显示。设计的滤波电路能有效抑制发电机转动产生的纹波干扰而产生的电压跳变,此外,其能实现ATS功能,可用于楼宇备用电源,其和上位机通讯可以实现多个控制器级联监控,对市电所不能到达的工业生产、野外作业以及楼宇备用电源控制有着重要意义。