📄 measureparam.h
字号:
#ifndef _MeasureParam_H_
#define _MeasureParam_H_
#include "basetype.h"
#define MaxRateNum 4//尖峰、峰、平、谷 14 //最大费率数
#define PeriodOfTimeNUm 16 //最大年时区数
#define MaxTimeTableNUm 16 //最大日时段表数
#define MaxDayPeriodOfTimeNum 10 //最大日时段数
#define MaxHolidayNum 14 //最大公共假日数
typedef struct
{
BYTE byStartMonth; //时区起始月 MM
BYTE byStartDay; //时区起始天 DD
BYTE byDayTableNo; //日时段表号 NN
}STimeZone;
typedef struct
{
BYTE byStartHour; //时段起始小时 hh
BYTE byStartMin; //时段起始分钟 mm
BYTE byRateNo; //时段对应的费率号 NN
}SDayTime;
///////////////////////////////////////////////////////////////
typedef struct
{
BYTE byPluseNo;//脉冲输入端口号
BYTE byMeasurePoint;//所属测量点号
BYTE byAttribute;//脉冲属性
WORD wConstant;//电表常数k
}SPluse;
typedef struct
{
BYTE byAnalogChannelNo;//电压/电流模拟量输入端口号
BYTE byMeasurePoint;//所属测量点号
BYTE byAttribute;//电压/电流模拟量属性
}SAnalogChannelParam;
///////////////////////////////////////////////////////////////
#define METER_MAX 1
#define PLUSE_MAX 4
#define ANALOGCHANNEL_MAX 6
typedef struct //电表参数
{
//f6
//WORD wGroupAddr[8];//终端组地址设置
//f7****************
/*DWORD dwMeterReadingDay; //终端抄表日,:D0~D30 对应每月1 日~31 日,置“1”为有效,置“0”为无效
WORD wMeterReadingTime; //抄表时间 LSB:分时:MSB
*/
//f8***********************
/*BYTE byEventValid[8];//事件记录有效标志位
BYTE byEventPrior[8];//事件重要性等级标志位
*/
//f9
BYTE bySampModuleSum;//电能表单元配置总块数
BYTE byPluseSum;//脉冲配置路数
BYTE byUIAnalogChannelSum;//电压/电流模拟量配置总路数
BYTE byGroupSum;//总加组配置总组数
//f10
//~~~~~BYTE byMeterModuleSum;//本次电能表单元配置数量
BYTE byMeterNo;//装置序号
BYTE byMeasurePoint;//所属测量点号
BYTE byBaudAndPort;//通讯速率及端口号(D0~D4端口号 D5~D7波特率(0:缺省,1~7:600~19200))
BYTE byPorotol;//规约类型
BYTE byAddr[6];//通信地址
BYTE byPassword[6];//通信密码
BYTE byRateAndPPrec;//电能费率个数、有功电能示值整数位及小数位个数
// BYTE byRateNum; //终端费率数
//f11
//~~~~~BYTE byPluseSumNow;//本次脉冲配置路数
SPluse sPluse[PLUSE_MAX];//本次配置第1~n路脉冲
//f12***************
/*BYTE byYxFlag_Connect;//1~8路状态量接入标志位
BYTE byYxFlag_Attribute;//1~8路状态属性量标志位
BYTE byYxFlag_Warning;//1~8路状态量告警标志位
*/
//f13
//~~~~BYTE byUIAnalogChannelSumNow;//本次电压/电流模拟量配置总路数
SAnalogChannelParam sAnalogChannelParam[ANALOGCHANNEL_MAX];//本次配置第1~n路电压/电流模拟量
/*//f14
//总加组配置参数
//f15
//有功总电能量差动越限事件参数设置
//f17
WORD wSafeValue;//保安定值
//f18
BYTE byPCG[12];//终端功控时段
//f19
BYTE byPCGFloat;//终端时段功控定值浮动系数
//f20
BYTE byMonthEnegyFloat;//月电能量控定值浮动系数
*/
//f21
// BYTE byRateAndPOT[25];//终端电能量费率时段和费率数
//f22
DWORD dwRate[14];//终端电能量费率
//f23
DWORD dwUrgeMoneyWarn;//终端催费告警参数
//f24
BYTE byMeterReadingGap;//终端抄表间隔设置
//f25
WORD wPTRatio; //电压互感器倍率
WORD wCTRatio; //电流互感器倍率
WORD wUn;//额定电压 V*10
BYTE wIMax;//最大电流 A*10
BYTE byPowerStyle;//电源接线方式
//f27**************
//BYTE byFreezeSum;//冻结信息类标识个数(AFN=0x0c中F81~F121 最多41个)
//WORD wFreezeParam[41];//信息类标识及冻结密度
//f28*********
/*WORD wPFCutBound1;//功率因数分段限值1
WORD wPFCutBound2;//功率因数分段限值2
*/
//f33
//总加组数据冻结参数
//f41
//时段功控定值
//f42
//厂休功控参数
//ff43
//功率控制的功率计算滑差
//f44
//营业报停控制参数
//f45
//功控轮次设定
//f46
//月电量控定值
//f47
//购电量控参数
//f48
//电控轮次设定
//f49
//功控告警时间
//f57
//DWORD byAlarm;//终端声音告警允许/禁止设置
//f73
//电容器参数
//f74
//电容器投切运行参数
//f75
//电容器保护参数
//f76
//电容器投切控制方式
//f81*********
//WORD wAnalogDCMultiple;//直流模拟量输入变比
//f82*********
//WORD wAnalogDCMax;//直流模拟量上限
//WORD wAnalogDCMin;//直流模拟量下限
//f83**************
//BYTE byAnalogDCFreezeDensity;//直流模拟量冻结密度
///////////////////////////////////////////////////////////////////////////////////
// BYTE byImpKwh[3]; //电表常数(有功)NNNNNN,。低地址位在先,高地址位在后
// BYTE byImpKvarh[3]; //电表常数(无功)NNNNNN ,。低地址位在先,高地址位在后
BYTE byUserNo[6]; //用户号 NN..NN (2进制保存,LSB->MSB)
BYTE byLeaveFactoryNo[6]; //出厂编号 NN..NN (2进制保存,LSB->MSB)
BYTE byOfficeNo[6]; //局编号 NN..NN (2进制保存,LSB->MSB)
BYTE byDeviceNo[6]; //设备码 NN..NN(2进制保存,LSB->MSB)
BYTE byDemandInterval; //最大需量周期 单位min XX BCD
BYTE bySlidingTime; //滑差时间 XX BCD
BYTE byCycleDispTime; //循显时间 XX BCD
BYTE byStopDispTime; //停显时间 XX BCD
BYTE byPowerFractionNum;//显示功率整数位及小数位个数
DWORD dwMeterReadingDay; //f7 终端抄表日,:D0~D30 对应每月1 日~31 日,置“1”为有效,置“0”为无效
WORD wMeterReadingTime; //抄表时间 LSB:分时:MSB
//*********add zhw 2007-05-26
BYTE byYearZoneNum; //年时区数P NN BCD
BYTE byTimeTableNUm ; //日时段表数q NN BCD
BYTE byDayPeriodOfTime; //日时段(每日切换数)m<=10 NN BCD
BYTE byRateNum; //费率数 k<=14 NN BCD
BYTE byHolidayNum; //公共假日数n NN BCD
STimeZone sYearZoneTable[PeriodOfTimeNUm];//时区表
SDayTime sDayTimeTable[MaxTimeTableNUm][MaxDayPeriodOfTimeNum];//时段表
STimeZone sHolidayTable[MaxHolidayNum]; //公休假日及时段表
BYTE byWeekRestTableNo; //周休日采用的日时段表号
//******************
//BYTE byLoadDay; //负荷代表日 NN 负荷代表日设置不能超过28日.
DWORD dwEpStart; //有功电能起始读数
DWORD dwEqStart; //无功电能起始读数
WORD wPulseWidth; //输出脉冲宽度 NNNN ms
//DWORD dwPassword; //密码权限及密码 NNNNNNNN
BYTE byTimeTable[2][24];//f21 终端电能量费率时段和费率数
//具有两套时区时段,并能在设定时间点自动切换,
DWORD dwChangeTime;//(MSB)月日时分(LSB),四字节; 如果不打算启动备用费率,应把启用日期设成小于当前日期,或全设为0。
BYTE byDispCycTime;//循环显示间隔 单位:秒
}SMeterParam;
/*
1.关于数据格式的说明:XXXXXX.XX 代表测量值的整数位和小数位;NNNN 为计算
值和设定值;YYMMDDWW 为年、月、日、周次;hhmmss 为时、分、秒;各以两位十进
制数表示。BIN 为二进制格式
2.费率1、2、3、4 分别对应DL/T614 中的尖峰、峰、平、谷等费率。
3.电能测量四象限的定义见DL/T614附录C。
*/
//电能表日历时钟及电能表状态信息
//A、B、C 三相断相统计数据及最近一次断相记录
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -