⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 numdef.h

📁 此程序适用于电力系统中的网关程序
💻 H
字号:
/******************************************************************
* Copyright (c) 2004-2005, 许继日立公司
* All rights reserved.
* 
* 文件名称:numdef.h
* 文件标识:
* 摘    要:枚举变量、常量的定义
*		
* 当前版本:1.0
* 作    者:李龙伟  <lilongwei1@hotmail.com>
* 完成日期:2004年11月24日
*
* 取代版本:1.0 
* 原作者  :李龙伟
* 完成日期:2004年11月24日
******************************************************************/
#ifndef _NUMDEF_H
#define _NUMDEF_H    

const unsigned short	NAME_LEN256 = 256;

//最大线程个数
const unsigned char	MAX_RULE = 4;

const unsigned char	TIMEOUT = 15;	//遥控超时时间

//TCP103规约控制方向类别标识
const unsigned char CMDCODE_GI_103		= 7;	//总召唤
const unsigned char CMDCODE_TIME_103	= 6;	//时间同步
const unsigned char CMDCODE_NORMAL_103	= 20;	//一般命令
const unsigned char CMDCODE_AMMETER_103	= 36;	//电度信息
const unsigned char CMDCODE_BREAK_103	= 64;	//断路器控制
const unsigned char CMDCODE_SWITCH_103	= 65;	//调压开关升降
const unsigned char CMDCODE_FREEZE_103	= 88;	//电度冻结
const unsigned char CMDCODE_VALUE_103	= 61;	//定值命令
const unsigned char CMDCODE_REPORT_103	= 62;	//故障报告
const unsigned char CMDCODE_CHECK_103	= 94;	//自检与运行事件信息

//104规约控制方向类别标识
const unsigned char CMDCODE_GI_104		= 100;//总召唤
const unsigned char CMDCODE_TIME_104	= 103;//时间同步
const unsigned char CMDCODE_BREAK_104	= 45;	//断路器控制
const unsigned char CMDCODE_SWITCH_104	= 47;	//调压开关升降
const unsigned char CMDCODE_FREEZE_104	= 101;//电度冻结
const unsigned char CMDCODE_VALUE_104	= 102;//定值命令

//CDT规约帧类别(上行)
const unsigned char FRAME_A  = 0x61;	//重要遥测,A帧
const unsigned char FRAME_B  = 0xC2;	//次要遥测,B帧
const unsigned char FRAME_C  = 0xB3;	//一般遥测,C帧
const unsigned char FRAME_D1 = 0xF4;	//遥信状态,D1帧
const unsigned char FRAME_D2 = 0x85;	//电能脉冲,D2帧
const unsigned char FRAME_E  = 0X26;	//SOE,E 帧

//CDT规约帧类别(下行)
const unsigned char FRAME_SELECT   = 0x61;	//遥控选择
const unsigned char FRAME_EXECUTE  = 0xC2;	//遥控执行
const unsigned char FRAME_CANCEL   = 0xB3;	//遥控撤消
const unsigned char FRAME_SETTIME  = 0x7A;	//设置时钟
const unsigned char FRAME_TIMECALI = 0x0B;	//设置时钟校正值
const unsigned char FRAME_GETTIME  = 0x4C;	//召唤子站时钟
const unsigned char FRAME_RESET    = 0x3D;	//复归命令


//规约类型
enum RULE_TYPE
{
	RULE_CDT = 0,	//CDT规约
	RULE_ENGINEER,	//103规约,工程师站
	RULE_REMOTE,	//104规约,远动站
	RULE_OPERATER	//104规约,操作员站
};

// 设备/通道的状态
enum GateDevStatus
{
	GATE_UNKNOW = 0x01,	//状态未明
	GATE_CLOSE,			//通
	GATE_UNCLOSE		//不通
};

//通道类型
enum CHANNEL_TYPE
{	
	CHANNEL_SOCK = 0,		//终端服务器(TCP/IP协议)、路由器方式通讯
	CHANNEL_RS232,		//RS-232智能多串口卡
	CHANNEL_LON,		//现场总线(LON网)设备方式通讯
	CHANNEL_NETBIOS		//终端服务NetBIOS
};

// 站类型
enum GateStation
{
	GATE_REMOTESTATION = 0x01,	//远动站
	GATE_OPERATERSTATION,		//操作员站
	GATE_ENGINEERSTATION		//工程师站
};

//命令类型
enum CMD_TYPE
{
	COMMAND_NONE = 0,		//空命令
	COMMAND_SEL_CTRL,		//控制选择
	COMMAND_EXE_CTRL,		//控制执行
	COMMAND_CANCEL_CTRL,	//控制撤消
//	COMMAND_SEL_SETTING,	//定值选择
//	COMMAND_EXE_SETTING,	//定值执行
//	COMMAND_GET_BAOHU,	//读保护定值
//	COMMAND_SET_BHSWITCH,	//修改定值区选择
//	COMMAND_EXE_BHSWITCH,	//修改定值区执行
	COMMAND_BAOHU_RESET,	//保护复归
	COMMAND_AMMETER,		//冻结电度
	COMMAND_CALI_TIME,	//对时
	COMMAND_SET_RYB		//软压板
};

//上送类型
enum INFO_TYPE
{
	INFDATA_NO = 0,		//空
	INFDATA_YX,			//遥信
	INFDATA_SOE,		//soe
	INFDATA_YK_SEL,		//遥控返校,选择
	INFDATA_YK_EXE		//遥控返校,执行
};

/* 数据分类 */
enum DATA_TYPE
{
	DATA_YC = 0x01,	//遥测
	DATA_YX,		//遥信
	DATA_SOE,		//SOE
	DATA_DD,		//电度
	DATA_HZ		//频率
};

//信息字功能
enum	FUNC_TYPE
{
	FUNC_NONE = 0x00,	//空信息
	FUNC_YC,		//遥测
	FUNC_YX,		//遥信
	FUNC_SOE,		//事件顺序纪录
	FUNC_DD,		//电能脉冲计数值
	FUNC_YK_UP,		//遥控返校
	FUNC_YT_UP,		//升降返校
	FUNC_HZ,		//频率
	FUNC_WHITE,		//水位
	FUNC_YC_ADD		//总加遥测
};

/* IP和端口号对 */
struct GateIpPort
{
	enum GateStation		eStation;	//站类型
	char				bNetIp[16];	//网络IP地址
	unsigned int		iPport;	//端口号 
	enum GateDevStatus	eNetState;	//网络状态
};

//所有的网络地址
struct GateNetAddr
{
	struct GateIpPort   ENGINEERNet;  //工程师站网络 103规约
//	struct GateIpPort   ENGINEERNet2;  //工程师站网络二

	struct GateIpPort   REMOTENet;    //远动站网络
//	struct GateIpPort   REMOTENet2;    //远动站网络二
	
	struct GateIpPort   OPERATERNet;   //操作员站网络
//	struct GateIpPort   OPERATENet2;   //操作员站网络二
	
};

//装置地址
//struct GateDevAddr
//{
//	unsigned int        no;                  //装置序号
//	char                name[NAME_LEN256];   //装置名称
//	unsigned int        addr;                //装置地址
//	enum GateDevStatus  state;               //装置状态(起初设置的时候置为ACIE_UNKNOW)
//};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -