📄 protect_process.c
字号:
#include "MOTOType.h"
#include <math.h>
#include "Applications/inlcudes/hardware_reg.h"
#include "UItype.h"
#include "AD_drive.h"
#include "led.h"
TJDTimingNode OverLoadTn,BlockTn1,BlockTn2,CurrentUnbalanceTn1,CurrentUnbalanceTn2,CurrentUnbalanceTn3,VoltageShakingTn;
TJDTimingNode VoltageLowTn,PhaseReversedTn, GroundingTn,PT_BrokenTn,Voltage_OverTn,Current_LowTn,StartTn, noAlarmT;
TJDTimingNode OverLoad_InverTime,Short_CircuitTn,VoltageShakingRecloseTn;
extern _Value_Parameter Value_Parameter;
extern TJDTimingNode TestTn;
extern int Break_flag;
extern int Break_Signal;
extern CALCULATE(void);
extern int sound_flag;
extern void test_protect(void);
extern int Fixed;
extern float valueStore[100];
void TimeNode_Initialize(void)
{
TimeInitial(&TestTn, 2500, 0);
TimeInitial(&OverLoadTn, (int)*(JDSettingAdd + offset_OverLoad_Time), 0);
TimeInitial(&BlockTn1, (int)*(JDSettingAdd + offset_Block_TimeI), 0);
TimeInitial(&BlockTn2, (int)*(JDSettingAdd + offset_Block_TimeII), 0);
TimeInitial(&CurrentUnbalanceTn1, (int)*(JDSettingAdd + offset_Current_Unbalance_SettingI_Time), 0);
TimeInitial(&CurrentUnbalanceTn2, (int)*(JDSettingAdd + offset_Current_Unbalance_SettingI_Time), 0);
TimeInitial(&CurrentUnbalanceTn3, 100, 0);
TimeInitial(&VoltageShakingTn, (int)*(JDSettingAdd + offset_VoltageShaking_Time), 0);
TimeInitial(&VoltageShakingRecloseTn, (int)*(JDSettingAdd + offset_VoltageShaking_RecloseTime), 0);
TimeInitial(&VoltageLowTn, (int)*(JDSettingAdd + offset_Voltage_Low_Setting_Time), 0);
TimeInitial(&PhaseReversedTn, (int)*(JDSettingAdd + offset_PhaseReversedTime), 0);
TimeInitial(&GroundingTn, (int)*(JDSettingAdd + offset_I0_Time), 0);
TimeInitial(&PT_BrokenTn, (int)*(JDSettingAdd + offset_PT_Broken_Time), 0);
TimeInitial(&Voltage_OverTn, (int)*(JDSettingAdd + offset_Voltage_Over_Setting_Time), 0);
TimeInitial(&Current_LowTn, (int)*(JDSettingAdd + offset_Current_Low_Setting_Time), 0);
TimeInitial(&StartTn, (int)*(JDSettingAdd + offset_Start_Setting_Time), 0);
TimeInitial(&OverLoad_InverTime, 0, 0);
TimeInitial(&Short_CircuitTn, 100, 0);
TimeInitial(&noAlarmT, 10000, 0);
}
float uvalue[100];
int kk;
int temp;
float mm;
float nn;
int Alarm_Info = 0;
int Break_Info = 0;
int Voltage_Low_Overtime = 0;
int calSampleFlag = 0;
void Protect_Process(void)
{
U32 yxj;
float jj;
int i = 0;
static int j = 0;
static float Phase_Difference_AB = 0.0; //相序判断中的变量
static float Phase_Difference_BC = 0.0; //相序判断中的变量
static float Phase_Difference_CA = 0.0; //相序判断中的变量
/*********电流不平衡保护变量**************************************************/
static float Current_UnbalanceTemp = 0.0;
static float Current_Unbalance_Value = 0.0;
/*********过负荷反时限计算中用的临时变量**************************************************/
static float OverLoad_TimeTemp = 0.0;
static float cnst = 0.0;
static float ratio_temp = 0.0;
static float Ip_temp =0.0;
static float Passed_timeratio = 0.0; //用掉的时间百分比
static int count = 0; //计算中的计数
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -