| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- /******************************************************************************
- 版权所有:
- 文件名称: oc.h
- 文件版本: 01.01
- 创建作者: xxxxxx
- 创建日期: 2012-03-28
- 功能说明: 过流保护头文件
- 其它说明:
- 修改记录:
- */
- #ifndef _OC_H
- #define _OC_H
- /*------------------------------- 头文件 --------------------------------------
- */
- /*------------------------------- 宏定义 --------------------------------------
- */
- /*------------------------------ 类型结构 -------------------------------------
- */
- //电流保护标志
- typedef union UOCFLAG
- {
- DWORD wfFlag;
- struct
- {
- DWORD bIaQD:1; // 启动
- DWORD bIbQD:1; // 启动
- DWORD bIcQD:1; // 启动
- DWORD bIaxb:1; // 启动
- DWORD bIbxb:1; // 启动
- DWORD bIcxb:1; // 启动
-
- DWORD bQD:1; // 启动
- DWORD bGj:1; // 告警
- DWORD bTz:1; // 跳闸
- DWORD bXBbs:1; // 谐波闭锁
- DWORD bBSCH:1; // 闭锁重合
- DWORD bCYL:1; // 曾有流
- DWORD bTripBak:1; // 跳闸动作备份
- DWORD bTzhold:1;
- DWORD bJSBC:1; // 加速保持
- DWORD bDzLed:1; // 动作灯
- DWORD bGjLed:1; //告警灯
- DWORD bQDWave:1; // 幅值启动时,启动录波标志
- DWORD bddyQD:1; //低电压启动
- DWORD bGjEvent:1;
- DWORD bTzEvent:1; //
- }bFlag;
- }UOCFLAG;
- /*------------------------------ 变量声明 -------------------------------------
- */
- enum
- {
- BH_GL1 = 0, // 过流1段
- BH_GL2, // 过流2段
- BH_GL3, // 过流3段
- BH_LX1, // 零序1段
- BH_LX2, // 零序2段
- BH_LX3, // 零序3段
- BH_GLJS, // 过流加速段
- BH_LXJS, // 零序加速段
- FA_GL, // FA相间故障I段
- FA_GL_II, // FA相间故障II段
- FA_LX, // FA零序故障
- FA_GL2, // FA相间告警
- FA_LX2, // FA零序告警
- FA_DLBS, // 大电流闭锁
- BH_DLBS, // 常规保护大电流闭锁
- BH_OVI_ZZ, // 电流重载
- BH_OVI_GZ, // 电流过载
- BH_OVI, // 电流越限
- BH_OVI0, // 零序电流越限
- BHOC_NUMBER
- };
- typedef struct TOC_T
- {
- UOCFLAG sta; // 动作标志字
- TIMERELAY tFz25ms; // 幅值启动25ms
- TIMERELAY tQDTime; // 时间继电器
- TIMERELAY tXBTime;//dXB_T; // 谐波动作时间
- TIMERELAY tXBQD25ms;
- TIMERELAY tQD25ms; // 启动25ms,防干扰时间继电器,用于速断和零序加速,防止误出口
- #ifdef YX_RESET_TIME
- TIMERELAY tGjEvRstTime; // 故障遥信保持时间
- TIMERELAY tTzEvRstTime; // 告警遥信保持时间
- #endif
- }TOC_T;
- typedef struct YC_REFRESH_EN
- {
- DWORD bAGl:1; // A相过流
- DWORD bBGl:1; // B相过流
- DWORD bCGl:1; // C相过流
- DWORD bABGl:1; // AB相过流
- DWORD bBCGl:1; // BC相过流
- DWORD bACGl:1; // AC相过流
- DWORD bABCGl:1; // ABC相过流
- DWORD bLx:1; // 零流
- DWORD bFAGl:1; // FA过流
- DWORD bFALx:1; // FA零序过流
- }YC_REFRESH_EN;
- /*------------------------------ 函数声明 -------------------------------------
- */
- void Pro_OC(int sw,u32 dStep,int oc,int soe_no);
- void Pro_LX(int sw,u32 dStep,int oc,int soe_no);
- void Pro_Accheck(int sw,u32 dStep,int oc,int soe_no);
- void Pro_BSTZ(int sw,u32 dStep,int oc,int soe_no);
- void Pro_over_i(int sw,u32 dStep,int oc,int soe_no);
- void Pro_over_i2(int sw,u32 dStep); // 二次谐波
- void Pro_over_i0(int sw,u32 dStep,int oc,int soe_no);
- bool XBCalc(int sw,int index,DWORD xBcoe,bool bQD);
- int gl_soe_set_clr(u8 set_clr, int sw, u16 soe_no, u32 i_set,bool bfault);
- int gz_soe_set_clr(u8 set_clr, int sw, u16 soe_no, u32 i_set);
- #ifdef EV_GL_STATR
- void gl_start_soe_set(u8 set_clr, int sw,u16 soe_no);
- void lx_start_soe_set(u8 set_clr, int sw,u16 soe_no);
- #endif
- bool pro_check_bh_all(int sw);
- bool pro_check_gl_all(int sw);
- void pro_rst_event(int sw,int soe_no);
- bool CalDir_A(int sw,bool bQD,bool bInv);
- bool CalDir_B(int sw,bool bQD,bool bInv);
- bool CalDir_C(int sw,bool bQD,bool bInv);
- extern void xb_bs_soe(int sw,u32 dStep);
- #endif //_OC_H
- /*------------------------------ 文件结束 -------------------------------------
- */
|