当前位置:首页 > 成套开关设备状态检测故障诊断郭晶毕业设计 - 图文
湖南工程学院
第4章成套开关设备状态检测故障诊断系统的软件设
计
4.1 成套开关设备在线检测系统的流程图
TMS320F2812软件采用系统化、模块化的软件设计方案,增强程序的可扩展性和兼容性,使得在不改变程序整体框架的基础上,可以方便的增减代码以不断扩充系统的功能哪!。软件的基本流程如图4.1所示。
图4.1 成套开关设备在线检测系统流程图
29
成套开关设备状态检测故障诊断 由流程图可知系统初始化完毕后,就在湿度、CT/PT温升、绝缘套管泄漏电流、母线温升、开关量输出、开关量输入、避雷器电压电流(弧光内嵌到各个模块)之间进行循环。以下是成套开关设备在线检测软件的主函数。 Void main() {
unsigned int m;
Void DataToFrame(unsigned int *DataMatrixAdd,unsigned int Destinatiorndd, unsigned int SourceAdd,unsigned int Control,unsigned int *FrameFirstAdd, unsigned int length,unsigned int *Framesendflag);
void FrameSendAsp(unsigned int *FrameFirstAdd,unsigned int *Framesendflag); IntitSysctrl (); DINT; InitPieCtrl(); IER=0x0000; IFR=0x0000; InitPieVectTable(); EALLOW;
GpioMuxRegs.GPFMux.bit.CANTXA_GPIOF6=1; GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7=l; EDIS; InitSci(); InitAdc(); InitEV(); InitECan ();
MemCopy(&RamfuncsLoadStart,&RamfuncsLoadEnd,&RamfuncsRunStart); Initxintf(); EINT; ERTM; KickDog(); EALLOW:
SysCtrlRegs.WDCR=0x0028; EDIS;
30
湖南工程学院
while(1) {
DelayL(1000);
Task5Hum(); /*湿度信号*/ while(H5flag==1) {
H5flag=0;
DataToFrame(HUMBCD, DESTINATION_ADD, SOURCE_ADD, HumControl,Frame,4,0); Verify(Frame,0); Send_F1ag=1; DelayL(100);
FrameSendAsp(Frame,0); Send_Flag=l; DelayL(100);
FrameSendB(Frame,0); DelayL(100);
FrameSendcan(Frame,0); }
DelayL(1000); Task1T();/*CT/PT*/ While(T1 flag==1) {
T1flag=0; TChannel=0;
Data To Frame(TBCD,DESTINATION ADD, SOURCE——ADD, CTPTControl,Frame,12,0); Verify(Frame,0); Send_flag = 1;
FrarneSendAsp(Frame,0); DelayL(10); Send_F1ag=1;
31
成套开关设备状态检测故障诊断 FrameSendB(Frame,0); DelayL(100);
FrameSendcan(Frame,0); m=0; }
Task2I(); /*泄漏电流*/ while(12flag ==1 {12flag=0; IChannel=0;
DataToFrame(IBCD, DESTINATION_ADD, SOURCE_ADD, IControl, Frame,12,0); Verify(Frame,0); Send_Flag=1;
FrameSendAsp(Frame,0); Send_Flag=1;
FrameSendB(Frame,0); DelayL(100);
FrameSendcan(Frame,0); m=0; }
Task3T(); /*母线温升*/ wllile(T3flag==1) {
T3flag=0;
DataToFrame(T3BCD,DESTINATION_ADD,SOURCE_ADD,TControl, Frame,24,0); Verify(Frame,0); Send_Flag=l;
FrameSendAsp(Frame,0); Send_Flag=l;
FrameSendB(Frame,0); DelayL(100);
32
共分享92篇相关文档