3 Star 0 Fork 1

真高兴 / l104parse

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
asduparse.h 5.73 KB
一键复制 编辑 原始数据 按行查看 历史
#ifndef ASDUPARSE_H
#define ASDUPARSE_H
#include <QObject>
class QString;
const int c_typenode=12;//->类型标识
const int c_canChange=14;//->可变结构限定词
const int c_transferReason=16;//->传送原因
const int c_commenAddress=20;//->公共地址
enum ASDU101_TYPE
{
UNKOWN_ASDU101_TYPE=0,
// 子站-〉主站过程信息
M_SP_NA_1, // 单点信息
M_SP_TA_1,
M_DP_NA_1, // 双点信息
M_DP_TA_1,
M_ST_NA_1, // 步位置信息(变压器分接头信息)
M_ST_TA_1,
M_BO_NA_1, // 子站远动终端状态
M_BO_TA_1, // 有时标的块数据
M_ME_NA_1, // 带品质描述不带时标的遥测数据
M_ME_TA_1, // 带品质描述带时标的遥测数据
M_ME_NB_1, // 测量值, 标度化值, Normalize Value, Without Time Stamp
M_ME_TB_1, // 测量值, 带时标的标度化值, Normalize Value, With Time Stamp
M_ME_NC_1, // 测量值, 短浮点数, Scaled Value, short floating Without Time Stamp
M_ME_TC_1, // 测量值, 带时标的短浮点数, Scaled Value, short floating With Time Stamp
M_IT_NA_1=15, // 电能脉冲计数
M_IT_TA_1,
M_EP_TA_1, // 带时标的继电保护或重合闸设备单个事件
M_EP_TB_1, // 带时标的继电保护装置成组启动事件
M_EP_TC_1, // 带时标的继电保护装置成组输出电路信息事件
M_PS_TA_1, // 具有状态变位检出的成组单点信息
M_ME_ND_1, // 不带品质描述测量值
VERDOR_EXTEND_22,
VERDOR_EXTEND_23,
VERDOR_EXTEND_24,
VERDOR_EXTEND_25,
VERDOR_EXTEND_26,
VERDOR_EXTEND_27,
VERDOR_EXTEND_28,
VERDOR_EXTEND_29,
M_SP_TB_1=30, // 带CP56Time2a时标的单点信息
M_DP_TB_1, // 带CP56Time2a时标的双点信息
M_ST_TB_1, // 带CP56Time2a时标的步位置信息
M_BO_TB_1, // 带CP56Time2a时标的32比特串
M_ME_TD_1, // 带CP56Time2a时标的测量值, 规一化值
M_ME_TE_1, // 带CP56Time2a时标的测量值, 标度化值
M_ME_TF_1, // 带CP56Time2a时标的测量值, 短浮点数
M_IT_TB_1, // 带CP56Time2a时标的累计量
M_EP_TD_1, // 带CP56Time2a时标的继电保护装置事件
M_EP_TE_1, // 带CP56Time2a时标的继电保护装置成组启动事件
M_EP_TF_1, // 带CP56Time2a时标的继电保护装置成组输出电路信息
M_BD_NA_1=232, // BDC码(水位值)
// 主站->子站 在控制方向的过程信息
C_DC_NA_1=46, // 双点遥控命令
C_RC_NA_1, // 升降命令
C_SE_NA_1, // 设定命令
C_BO_NA_1=51, // 32位的位串
// 子站->主站 在监视方向的系统信息
M_EI_NA_1=70, // 初始化结束
// 主站到子站,在控制方向的系统信息
C_IC_NA_1=100, // 召唤命令
C_CI_NA_1, // 电能脉冲召唤命令
C_RD_NA_1, // 读数据命令
C_CS_NA_1, // 时钟同步命令
C_TS_NA_1, // 测试命令
C_RP_NA_1, // 复位进程命令
C_CD_NA_1, // 延时获得命令
// 在控制方向上的参数
P_ME_NA_1=110, // 装载参数命令
P_AC_NA_1, // 激活参数
// 文件参数
F_FR_NA_1=120, // 文件已准备好
F_SR_NA_1, // 节已准备好
F_SC_NA_1, // 召唤目录、选择文件、召唤文件、召唤节
F_LS_NA_1, // 最后的节、最后的段
F_AF_NA_1, // 确认文件、确认节
F_SG_NA_1, // 段
F_DR_NA_1 // 目录
};
// 定义 传送原因
enum ASDU101_TR_REASON_TYPE
{
UNKOWN_ASDU101_REASON_TYPE=0,
ASDU101_TR_PER, // 周期.循环
ASDU101_TR_BACK, // 背景扫描
ASDU101_TR_SPONT, // 突发
ASDU101_TR_INIT, // 初始化
ASDU101_TR_REQ, // 请求或被请求
ASDU101_TR_ACT, // 激活
ASDU101_TR_ACTCON, // 激活确认
ASDU101_TR_DEACT, // 停止激活
ASDU101_TR_DEACTCON, // 停止激活确认
ASDU101_TR_ACTTERM, // 激活结束
ASDU101_TR_RETREM, // 远程命令引起的返送信息
ASDU101_TR_RETLOC, // 当地命令引起的返送信息
ASDU101_TR_FILE, // 文件
ASDU101_TR_INTROGEN=20, // 响应总召唤
ASDU101_TR_INTRO1, // 响应第1组召唤
ASDU101_TR_INTRO2, // 响应第2组召唤
ASDU101_TR_INTRO3, // 响应第3组召唤
ASDU101_TR_INTRO4, // 响应第4组召唤
ASDU101_TR_INTRO5, // 响应第5组召唤
ASDU101_TR_INTRO6, // 响应第6组召唤
ASDU101_TR_INTRO7, // 响应第7组召唤
ASDU101_TR_INTRO8, // 响应第8组召唤
ASDU101_TR_INTRO9, // 响应第9组召唤
ASDU101_TR_INTRO10, // 响应第10组召唤
ASDU101_TR_INTRO11, // 响应第11组召唤
ASDU101_TR_INTRO12, // 响应第12组召唤
ASDU101_TR_INTRO13, // 响应第13组召唤
ASDU101_TR_INTRO14, // 响应第14组召唤
ASDU101_TR_INTRO15, // 响应第15组召唤
ASDU101_TR_INTRO16, // 响应第16组召唤
ASDU101_TR_REQCOGCN, // 响应计数量总召唤
ASDU101_TR_REQCO1, // 响应第1组计数量召唤
ASDU101_TR_REQCO2, // 响应第2组计数量召唤
ASDU101_TR_REQCO3, // 响应第3组计数量召唤
ASDU101_TR_REQCO4 // 响应第4组计数量召唤
};
class ASDUparse : public QObject
{
Q_OBJECT
public:
explicit ASDUparse(QObject *parent = 0);
QString strAsduTypeName(const QString &data_parse);//->取ASDU101类型名称
QString strGetCanChange(const QString data_parse);//->可变结构限定词
QString strGetReasonName(const QString &data_parse);//->取ASDU101原因名称
QString strGetAddress(const QString data_parse); //->获取公共地址
int getType();
int getSq();
int getVsq();
private:
bool ok;
//右栏:信息位解析:
int _p_sq;//记录离散或者顺序的
int _p_type;//记录信息类型
int _p_vsq;//记录信息体个数
signals:
public slots:
};
#endif // ASDUPARSE_H
1
https://gitee.com/zhengaoxing/l104parse.git
git@gitee.com:zhengaoxing/l104parse.git
zhengaoxing
l104parse
l104parse
master

搜索帮助