| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703 |
- #ifndef OCC_ELECTRICBASEDEFINE_HEADER_FILE
- #define OCC_ELECTRICBASEDEFINE_HEADER_FILE
- #include <map>
- #include <vector>
- using namespace std;
- //故障状态
- #define POWER_ERORR_OCCAR 12500 //故障发生
- #define POWER_ERORR_REVERT 12501 //故障恢复
- #define Electric_Eqpmt_Status_OFF 0 //设备开关分闸
- #define Electric_Eqpmt_Status_ON 1 //合闸
- #define Electric_Eqpmt_Status_Error -1 //故障
- //手车工作位置
- #define OCC_BREAKERHAND_STATUS_WORK 1 //手车工作位
- #define OCC_BREAKERHAND_STATUS_TEST 2 //手车试验位
- #define OCC_BREAKERHAND_STATUS_REPAIR 3 //手车检修位
- //设备控制闭锁
- #define Electric_Eqpmt_Status_Lock 1 //设备状态锁 added by zhangjh
- #define Electric_Eqpmt_Status_UnLock 0 //解锁 added by zhangjh
- //设备遥信闭锁
- #define Electric_Eqpmt_Status_RemoteLock 1 //遥信封锁 added by zhangjh
- #define Electric_Eqpmt_Status_RemoteUnLock 0 //遥信解锁 added by zhangjh
- //设备控制方式
- #define Electric_Eqpmt_CtrlType_Mannual 1 //设备控制方式:人工控制 added by zhangjh
- #define Electric_Eqpmt_CtrlType_Auto 0 //设备控制方式:自动控制 added by zhangjh
- #define Power_Breaker_ProtectValue_UnionBreak 1505 //保护联跳
- #define Power_Breaker_ProtectValue_UnionCtrl 1506 //联控
- #define Electric_Fault_Status_Start 126000 //故障开始
- #define Power_Command_Own 500006 //自定义消息
- #define POWER_EQPMT_INIT 14999 //设备初始化
- #define POWER_EQPMT_OPERNO 15000 //设备操作(核实)
- #define POWER_EQPMT_OPERCHECK 15001 //设备操作前的检查
- #define Power_SwitchOper_Ret 11005 //设备开关控制的重置
- #define Power_Alarm_Notice 11006 //报警通知
- #define Power_Deal_DelayTime 11007 //延时处理
- #define Power_Protect_Notice 11008 //保护通知
- #define Power_HD_Fault 11010 //环调故障
- #define Power_400V_ThreeLoadCut 11011 //三级负荷自切
- #define Power_EQPMT_TELEMETERYVALUE 11012 //设置电压电流遥测值
- #define POWER_STATIONCOMMUNICATION_SET 11013 //设置车站通信故障
- #define POWER_STATIONCONTROL_SWICTH 11014 //设置车站权限转换
- #define Elect_Eqpmt_FixedValueArea 11015 //设备定值区切换
- #define Elect_Eqpmt_Init 11009 //初始化设备信息
- #define Protect_Status_ON 0 //保护状态开
- #define Protect_Status_OFF 1 //保护状态关
- #define Protect_Kind_Main 1 //主保护类型
- #define Protect_Kind_BGK 2 //后备保护类型
- #define Protect_MAX_DELAY 1000 //最大延时
- #define Auto_RepeatShut_Status_NONE 50000 //重合闸最开始状态
- #define Auto_RepeatShut_Status_START 50001 //开启
- #define Auto_RepeatShut_Status_WAIT 50002 ///等待
- #define Auto_RepeatShut_Status_SHUT 50003 //合闸
- #define Auto_RepeatShut_Status_JUDGE 50004 //判断
- #define Auto_RepeatShut_Status_BREAK 50005 //断开
- #define Auto_RepeatShut_Status_Lock 50006 //锁闭
- #define Auto_RepeatShut_Status_SUCCESS 50007 //成功
- #define Auto_DelayTime_RepeatShut 30000 //延时:重合闸
- #define Auto_DelayTime_AutoBolt 30001 //自投
- #define Auto_DelayTime_InitCtrl 30002 //初始化控制
- #define Auto_DelayTime_CtrlExecution 30003 //控制执行
- #define Auto_AutoBoltDelay_DurTime 5 //备自投延时时间400V5秒(注:青岛=5s,贵阳=1s)
- #define Auto_AutoBoltDelay_DurTime_35kv 3 //备自投延时时间35kV5秒(注:青岛=5s,贵阳=1s)
- #define Auto_RepeatShut_Dur_Time 3 //重合闸间隔时间
- #define Auto_RepeatShut_All_Time 35 //所有的时间
- #define Auto_CtrlExecution_Time 5 //设备动作延时的时间
- //备自投工作方式
- #define AutoBolt_CtrlMode_Auto_Auto 30 //自投自复
- #define AutoBolt_CtrlMode_Auto_Manual 31 //自投手复
- #define AutoBolt_CtrlMode_Manual_Manual 32 //手投手复
- #define AutoBolt_CtrlMode_Manual_Auto 33 //手投自复
- #define ShieldStatus_Set 60 //设置屏蔽
- #define ShieldStatus_Cancle 61 //取消屏蔽
- #define RemoteShut 70 //远方投入投退
- //遥信封锁
- #define RemoteLock_Set 62//遥信封锁
- #define RemoteLock_Cancle 63//遥信解锁
- //遥信封锁类型
- #define RemoteLockType_No 0 //遥信解锁 add by zhangjh
- #define RemoteLockType_Off 1 //遥信封锁分 add by zhangjh
- #define RemoteLockType_On 2 //遥信封锁合 add by zhangjh
- #define RemoteLockType_Local 3 //遥信封锁就地 add by zhangjh
- #define RemoteLockType_Test 4 //手车遥信封锁试验 add by zhangjh
- #define RemoteLockType_Work 5 //手车遥信封锁工作 add by zhangjh
- #define ControlPermissionChange 65//控制权限切换
- //设备控制区域
- #define ELC_EQPMTCTRL_LOCAL 6602 //就地控制
- #define ELC_EQPMTCTRL_REMOTE 6603 //远程控制
- #define ELC_EQPMTCTRL_UNKNOW 6604 //控制区域未知
- //设备控制方式
- #define ELC_EQPMTCTRLTYPE_AUTO 0 //自动控制
- #define ELC_EQPMTCTRLTYPE_MANUAL 1 //人工控制
-
- #define Fault_Type_Fever 1 //永久故障
- #define Fault_Type_OneTime 2 //临时故障
- #define Eqpmt_Operation_OFF 0 //操作 关
- #define Eqpmt_Operation_ON 1 // 开
- #define Eqpmt_Operation_Lock 3 //锁
- #define Eqpmt_Operation_Unlock 4 //解锁
- #define Power_Alarm_Breaker_Break 5000003 //断路器跳闸
- #define Power_Alarm_Breaker_Shut 5000004 //断路器合闸
- #define Power_Alarm_Breaker_Reject 5000005 //断路器拒动
- #define Power_Alarm_AutoBolt_Dive 5000006 //备自投 投入
- #define Electric_EqpmtType_Line 1004 //线
- #define Electric_EqpmtType_Transformer 1007 //变压器
- #define Electric_EqpmtType_EarthSwitch 1008 //接地开关
- #define Electric_EqpmtType_ManualSwitch 1009 //手动开关
- #define Electric_EqpmtType_PowerSource 1011 //电源
- #define Electric_EqpmtType_CommunicateDevice 1012 //通信设备
- #define Power_TouchNet_ShortCut_Fault 110000 //接触网短路故障
- #define Power_Reverse_ShortCut_Fault 110001 //短路故障恢复
- #define Power_Breaker_RepeatShut_Fault 110002 //断路器重合闸故障
- #define Power_Breaker_UnionBreak_Fault 110003 //断路器联跳故障
- #define Power_TouchNet_ShortCut_Revert 120000 //接触网 短路恢复
- #define Power_Reverse_ShortCut_Revert 120001 //
- #define Power_TouchNet_Power_Lost 120002 //接触网失电
- #define Power_TouchNet_Power_Come 120003 //接触网来电
- #define Power_Breaker_ProtectReset 10000 //保护复归
- #define Power_Breaker_ProtectAllReset 10001 //保护总复归
- #define Power_AutoBolt_Auto_Auto 130001 //备自投自投自复
- #define Power_AutoBolt_Auto_Manual 130002 //备自投自投手复
- #define Power_AutoBolt_Manual_Auto 130003 //备自投手投自复
- #define Power_AutoBolt_Manual_Manual 130004 //备自投手投手复
- //输电线路线路子类型 added by zhangjiahua
- #define Electric_PowerLine_Input 1 //进线
- #define Electric_PowerLine_Output 2 //出线
- #define Electric_PowerLine_Feeder 3 //馈线
- #define Electric_PowerLine_Contact 4 //联络线
- #define Electric_PowerLine_OnTouch 5 //上网线
- #define Electric_PowerLine_OnTouch_L 21 //1500V左邻馈出线
- #define Electric_PowerLine_OnTouch_R 22 //1500V右邻馈出线
- //断路器子类型
- #define Electric_Breaker_Input 1 //进线断路器
- #define Electric_Breaker_Output 2 //出线断路器
- #define Electric_Breaker_Feeder 3 //馈线断路器
- #define Electric_Breaker_Circuit 4 //母联断路器
- //备自投子类型
- #define Electric_AutoBolt_35kV 1 //35kv备自投
- #define Electric_AutoBolt_110kV 2 //110kv备自投
- #define Electric_AutoBolt_400V 3 //400v备自投
- //设备区分类型
- #define Electric_EqpmentType_Breaker 1 //断路器设备
- //设备类型分类
- #define OCC_GRAPHUNIT_TYPE_PIC 500 //图片图元
- #define OCC_GRAPHUNIT_TYPE_LINE 501 //线图元
- #define Power_Mode_Control 140000 //模式执行
- //教员课程事件定义 xyx新增
- #define JY_CourseEventOccur 20000 //教员课程事件触发
- #define JY_CourseEventType_DD 11 //教员课程事件类型-电调-11
- #define JY_CourseEventsubType1_DD_Normal 1 //事件子类型1-基本事件-1
- #define JY_CourseEventsubType1_DD_Fault 2 //事件子类型1-故障事件-2
- //电环联合车站内控制区域定义 xyx新增
- #define ElcToEnv_CtrlArea_Level_1 1 //第一层:I、II母线控制区
- #define ElcToEnv_CtrlArea_Level_2 2 //第二层:三级负荷控制区
- #define ElcToEnv_CtrlArea_Level_n 3 //第三层:预留其他区域分类
- //模式执行状态 added by zhangjiahua
- #define MODECTRL_STATUS_START 25002
- #define MODECTRL_STATUS_RUNING 25003
- #define MODECTRL_STATUS_STOP 25004
- #define MODECTRL_STATUS_FINISH 25005
- #define MODECTRL_STATUS_PAUSE 25006
- #define MODECTRL_STATUS_RESUME 25007
- // IBP事件类型
- #define Electric_IBPEvent_DCBreakerCtrl 1809001 //直流断路器控制
- //IBP盘数据定义
- struct CElcEqpmtStatusToIBPLight
- {
- string m_strEqpmtID; //设备编号
- int m_nEqpmtStatus; //设备状态
- string m_strStatusName; //状态名称
- string m_strLightenIBPKey; //亮灯系列
- string m_strLightingOffIBPkey;//灭灯系列
- int m_nIBPSysID;//IBP系统号
- int m_nEventEqpmtID;//设备事件:设备编号
- int m_nEventID; //设备事件:事件编号
- /*
- IBP车站号
- */
- int m_nIBPStationID;
- CElcEqpmtStatusToIBPLight()
- {
- m_strEqpmtID = "";
- m_nEqpmtStatus = -1;
- m_strStatusName = "";
- m_strLightenIBPKey = "";
- m_strLightingOffIBPkey = "";
- m_nIBPSysID = -1;
- m_nEventEqpmtID = -1;
- m_nEventID = -1;
- m_nIBPStationID=-1;
- }
- };
- typedef std::map<string,CElcEqpmtStatusToIBPLight> MapIndex_ElcEqpmtStatusToIBPLight;
- struct ErrorToProtect
- {
- ErrorToProtect()
- {
- nErrorID = 0;
- bSelfLost = false;
- strFaultName = "";
- vecProtectClass.clear();
- }
- // 故障与保护类型对应关系
- int nErrorID;
- bool bSelfLost; // 故障本身设备是否失电
- string strFaultName;
- int nErrorType; //1:永久故障 2:关联断路器 无法复归故障(长沙用) //add by chenht 2021-09-17
- vector<int> vecProtectClass;
- void AddProtectClass( int nProtectID )
- {
- vecProtectClass.push_back(nProtectID);
- }
- void Clear()
- {
- vecProtectClass.clear();
- }
- void SelfLost( bool bLost )
- {
- bSelfLost = bLost;
- }
- };
- typedef map<int,ErrorToProtect> ErrorToProtectMAP;
- struct ProtectValue //电力值
- {
- int pretectid; //保护ID
- int faultid; //故障ID
- int faulttype; //故障类型
- int PRI; //PRI
- int delaytime; //延时
- int kind; //类型
- string strname; //名称
- int status; //状态
- string strfaultname; //故障名称
- int breakerRejection; // 断路器失灵拒动
- string protectDisplayContent; // 保护报文
- string trippingDisplayContent; // 联跳报文
- int trippingRepeatShut; // 联跳重合闸标识
- int nPermanentFault; //永久故障标志 1:永久故障 0:临时故障
- };
- struct InputLineInfo //输入线信息
- {
- string ID; //输入ID
- bool InputPower; //是否输入电
- };
- struct ElcEnvirPowerRelation //电环关系
- {
- int ElcEqpmtID; //设备ID
- int EnvirAreaID; //环控区域ID
- string Areaname; //区域名称
- };
- struct ErrorInfo //故障信息
- {
- int ID; //故障ID
- int Status; //故障状态
- };
- struct DelayTimeInfo //延时信息
- {
- int type; //延时类型
- int delaydur; ///延时
- int64_t occartime; //发生时间
- string srcid; //原ID
- int srcstatus; //原状态
- string desid; //目的ID
- int destatus; //目的状态
- int faultID; //故障ID
- int faultType; // 故障类型:永久故障/临时故障
- };
- struct UionCtrl // 联控类
- {
- string Sourceid; //源ID
- int OperStatus; //操作状态
- string PreEqpmtID; //先前设备ID
- int PreStatus; //前一状态
- int Relation; //关系
- int EventID; //故障ID
- int delaytime; //延时
- string strText; //文本描述
- int Index; //编号 added by zhangjiahua
- };
- struct FaultSceneCtrl // 故障场景控制
- {
- string Sourceid; //源ID
- string PreEqpmtID; //先前设备ID
- int EventID; //故障ID
- };
- struct ProtectCtrl
- {
- string ProtectStrID;
- int EventID;
- };
- struct BreakerDelayTime
- {
- int EqpmtType;
- map<int, int> IndexDelayTime;
- int OneTime;
- void AddIndexDelayTime( int nIndex, int nTime )
- {
- IndexDelayTime.insert( make_pair(nIndex, nTime) );
- }
- int GetOneTime()
- {
- return OneTime;
- }
- int GetAllTime()
- {
- int nRet = 0;
- for ( map<int, int>::iterator iter = IndexDelayTime.begin(); iter != IndexDelayTime.end(); iter++ )
- {
- nRet += iter->second;
- }
- return nRet;
- }
- int GetDelayTime( int nIndex )
- {
- int nRet = 0;
- map<int, int>::iterator iter = IndexDelayTime.find(nIndex);
- if ( iter != IndexDelayTime.end() )
- {
- nRet = iter->second;
- }
- return nRet;
- }
- int GetCount()
- {
- return IndexDelayTime.size();
- }
- };
- enum StationType
- {
- StationType_NULL = -1, //车站类型为未知
- StationType_CenterControlStation = 0, //车站类型为控制中心
- StationType_JYSubStation=1, //车站类型为降压所
- StationType_QYSubStation=2, //车站类型为牵混所
- StationType_MainSubStation=3 //车站类型为主所
- };
- struct PowerStationInfo //车站相关信息
- {
- int stationID; //车站ID
- std::string strstationname; //车站名称
- int nextstationid; //下一个车站ID
- int stationType;
- int ctrlarea; //控制权限 车站/中心
- };
- typedef map<string,DelayTimeInfo> DELAYMAP; //延时相关信息列表
- typedef map<int,PowerStationInfo> ELECSTATIONMAP; //车站相关信息列表
- typedef struct AutoActUnion
- {
- string m_SEqpmtID;
- string m_DEqpmtID;
- int m_Sstatus;
- int m_Dstatus;
- int m_EventID;
- int m_Flag;
- //tgAutoActUnion()
- //{
- //}
- }/*AutoActUnion,*LPAutoActUnion*/;
- typedef std::multimap<string,AutoActUnion> AutoActUnionMAP;
- typedef struct InPutRelationData
- {
- string m_StrID;
- string m_InputEqpmtStrID;
- int m_RunLineID;
- int m_Relation;
- }/*InPutRelationData,*LPInPutRelationData*/;
- typedef std::map<string,InPutRelationData> InPutRelationDataMAP;
- typedef struct tgEqpmtCtrlArea
- {
- string m_EqpmtStrID;
- int m_CtrlArea;
- }EqpmtCtrlArea,*LPEqpmtCtrlArea;
- typedef std::multimap<string,EqpmtCtrlArea*> EqpmtCtrlAreaMAP;
- typedef std::multimap<string,int> EqpmtCtrlAreaRelationMAP;
- /*typedef std::map<string,string> ProtectEqpmtRelationMAP;*/
- typedef std::multimap<string,ProtectCtrl> ProtectEqpmtRelationMAP;
- typedef std::multimap<string,int> ProtectEqpmtTypeMAP;
- typedef struct EqpmtCtrlUnion
- {
- string m_OperEqpmtID;
- int m_OpeStatus;
- string m_PreEqpmtID;
- int m_PreStatus;
- int m_Relation;
- int m_DelayTime;
- int m_Index;
- }/*EqpmtCtrlUnion,*LPEqpmtCtrlUnion*/;
- typedef std::multimap<string,EqpmtCtrlUnion> EqpmtCtrlUnionMAP;
- typedef struct BreakAutoBolt
- {
- };
- typedef struct tgTrackRelationXD //电调与行调接触轨之间的关系数据
- {
- string m_strID; //图元ID
- int m_stationID; //车站ID
- string m_StationName; //车站名称
- int m_Direction; //运行线方向:1为下行,0为上行
- int m_IsPower; //接触轨带电状态:1为带电,0为不带电
- int m_SectionNo; //接触轨区段编号:0为两供电区段只有一条接触线,大于0则有多段接触线,并分别按条数进行编号
- int m_NoID; //供电编号:1为青岛站,2为汇泉广场,4为延安三路,5为宁夏路。。。。。。。。(3未用,预留给中山公园,全线接触轨中有中山公园,而全线1500V中山中园不为牵引变电所,存在矛盾)
- int m_PreIsPower;
- string GetStrid()
- {
- return m_strID;
- }
- int GetStationID()
- {
- return m_stationID;
- }
- string GetStationName()
- {
- return m_StationName;
- }
- int GetDirection()
- {
- return m_Direction;
- }
- int GetIsPower()
- {
- return m_IsPower;
- }
- int GetSectionNo()
- {
- return m_SectionNo;
- }
- int GetNoID()
- {
- return m_NoID;
- }
- tgTrackRelationXD()
- {
- m_strID = "";
- m_stationID = -1;
- m_StationName = "";
- m_Direction = -1;
- m_IsPower = -1;
- m_SectionNo = -1;
- m_NoID = -1;
- m_PreIsPower = -1;
- }
- }TrackRelationXD,*LPTrackRelationXD;
- typedef std::map<string,TrackRelationXD*> TrackRelationXDMAP;
- /*
- 针对供电区间进线/出线设备的出线/进线设备
- */
- struct OutLineElectricEqpmt
- {
- OutLineElectricEqpmt( int nType, const string& strEqpmtID ) : m_nType(nType), m_strEqpmtID(strEqpmtID)
- {
- }
- int m_nType;
- string m_strEqpmtID;
- };
- /*
- 断路器遥测量数据
- */
- struct EqpmtTelemeteryValueInfo
- {
- int nType; //设备类型ID
- int nSubType; //设备子类型ID
- int Namol_nMaxV; //常规波动电压最大值
- int Namol_nMinV; //常规波动电压最小值
- int Namol_nMaxA; //常规波动电流最大值
- int Namol_nMinA; //常规波动电流最小值
- int Excptional_nMaxV; //异常波动电压最大值
- int Excptional_nMinV; //异常波动电压最小值
- int Excptional_nMaxA; //异常波动电流最大值
- int Excptional_nMinA; //异常波动电流最小值
- };
- //多组模式信息 added by zhangjh
- typedef struct tgMultiModeInfo
- {
- int m_nMultiModeID; //多组模式信息编号
- string m_strMultiModeName; //多组模式模式名称
- int m_nType; //模式类型 0 停电 1送电
- vector<int> m_vecModeID; //该模式涉及的所有模式ID
- }MULTIMODEINFO,*LPMULTIMODEINFO;
- typedef std::map<int,MULTIMODEINFO> MULTIMODEMAP;//多组模式信息 added by zhangjh
- typedef struct tgModeData
- {
- string strid; //设备图元ID
- string modename; //模式名称
- string statusname; //目标状态名称
- int dstatus; //模式执行的目标状态
- int index; //模式下的执行顺序
- int modeid; //模式ID
- int station; //车站ID
- int viewid; //视图ID
- int curstatus; //设备当前状态
- string strModeShowID;
- string strModeShowCode;
- bool bPitchOn;
- int ExecuteResult; //模式执行结果
- tgModeData()
- {
- strid = "";
- modename = "";
- statusname = "";
- dstatus = -1;
- index = -1;
- modeid = -1;
- station = -1;
- viewid = -1;
- curstatus = -1;
- strModeShowID = "";
- strModeShowCode = "";
- bPitchOn = true;
- }
- }MODEDATA,*LPMODEDATA;
- typedef std::map<string,MODEDATA> MODEDATAMAP; //key:Make2IntKey(mode.modeid,mode.index)组合
- typedef std::map<int,map<int,MODEDATA>> MODEIDDATAMAP; //key:modeid-模式ID, value:map<key:index-模式下的执行顺序索引,value:MODEDATA单个设备模式信息>
- typedef std::map<string, EqpmtTelemeteryValueInfo*> EQPMTTELEINFO; //key:设备类型ID-子类型ID value:该类型设备对应的遥测量相关信息
- typedef struct tgModeCtrlStatus
- {
- tgModeCtrlStatus(int mode)
- {
- status = MODECTRL_STATUS_START;
- index = 0;
- modeid = mode;
- }
- int modeid; //模式ID
- int status; //模式状态(开始、重启、暂停、停止)
- int index;
- int viewid;
- int ctrlresult;
- int stationindex;
- }MODECTRLSTATUS,*LPMODECTRLSTATUS;
- struct EqpmtPowerValue //设备各电气量 xyx新增
- {
- int Position; //用于区分母线位置I段/II段
-
- double U; //计算电压(kV)
- double Uab; //AB线电压
- double Ubc; //AB线电压
- double Uca; //AB线电压
- double Ua; //A相电压
- double Ub; //B相电压
- double Uc; //C相电压
- double I; //计算电流(A)
- double Iab; //AB线电流
- double Ibc; //BC线电流
- double Ica; //CA线电流
- double Ia; //A相电流
- double Ib; //B相电流
- double Ic; //C相电流
- double S; //视在功率(kVA)
- double P; //有功功率(kW)
- double Q; //无功功率(kVar)
- double PF; //功率因数
- double f; //频率(Hz)
- double Forward_P; //正向有功电度(kWh)
- double Forward_Q; //正向无功电度(kVarh)
- double Backward_P; //反向有功电度
- double Backward_Q; //反向无功电度
-
- EqpmtPowerValue()
- {
- Position = -1;
-
- U=0.0;
- Uab=0.0;
- Ubc=0.0;
- Uca=0.0;
- Ua=0.0;
- Ub=0.0;
- Uc=0.0;
- I=0.0;
- Iab=0.0;
- Ibc=0.0;
- Ica=0.0;
- Ia=0.0;
- Ib=0.0;
- Ic=0.0;
- S=0.0;
- P=0.0;
- Q=0.0;
- PF=0.0;
- f=0.0;
- Forward_P=0.0;
- Forward_Q=0.0;
- Backward_P=0.0;
- Backward_Q=0.0;
- }
- };
- //电调设备报警点表信息 xyx新增
- typedef struct ElcEqpmtAlarmInfo
- {
- int m_nEqpmtType; //设备类型
- string m_strAlrmText; //报文内容
- int m_nAlarmLevel; //报文等级
- int m_nAlarmType; //报文类型
- int m_nAlarmSystem; //报文系统所属系统
- int m_nTripActType; //触发报文的动作类型:故障时为保护ID,常规操作时见定义见ElcAlarm_TripActType_Close系列
- int m_nIsFault; //是否为故障触发报文:故障1、常规操作0
- string m_strTripText; //联跳报文
- string m_strProtectLock; //保护闭锁报文
- }ELCEQPMTALARMINFO,*LPELCEQPMTALARMINFO;
- typedef std::map<int,ELCEQPMTALARMINFO> ELCEQPMTALARMACTTYPEMAP; //map<int:动作类型m_nTripActType,ELCEQPMTALARMINFO:设备报警信息>
- typedef std::map<int,ELCEQPMTALARMACTTYPEMAP> ELCEQPMTALARMINFOMAP; //map<int:设备类型m_nEqpmtType,ELCEQPMTALARMACTTYPEMAP>
- //电环联合接口 xyx新增begin
- typedef struct ElcToEnvControlArea
- {
- int AreaLevel_l; //第一层控制区域
- int AreaLevel_2; //第二层控制区域
- int AreaLevel_n; //预留未知控制区域
- }ELCTOENVCONTROLAREA,*LPELCTOENVCONTROLAREA;
- typedef struct ElcToEnvRelaInfo
- {
- int nStationIID; //车站ID
- ELCTOENVCONTROLAREA CtrlArea; //控制区域
- EqpmtPowerValue PowerValue; //设备电气参数
- int EnvEqpmtStatus; //环调设备状态
- }ELCTOENVRELAINFO,*LPELCTOENVRELAINFO;
- typedef std::map<int,ELCTOENVRELAINFO> ELCTOENVRELAINFOAREAMAP; //map<int:控制层级AreaLevel,ELCTOENVRELAINFO:电环联合信息>
- typedef std::map<int,ELCTOENVRELAINFOAREAMAP> ELCTOENVRELAINFOSTATIONMAP; //map<int:车站StationID,ELCTOENVRELAINFOAREAMAP>
- #endif
|