毕业论文

打赏
当前位置: 毕业论文 > 自动化 >

35kV变电站监控系统中告警事件生成与语音告警软件设计(8)

时间:2017-05-26 14:48来源:毕业论文
int clock; //收到新数据的时间,格式同模拟量结构 }; 说明: 为了模拟量统一,告警状态标识符flag这里的枚举数值从10开始,这样,省去了后面在处理告警状


    int    clock;                //收到新数据的时间,格式同模拟量结构
};
说明:
为了模拟量统一,告警状态标识符flag这里的枚举数值从10开始,这样,省去了后面在处理告警状态时需要判断变量是属于模拟量还是状态量的工作。
实际工程操作中,状态量的变化,可能是由故障导致设备非法动作,也有可能是工作人员实际操作产生的合法动作。所以,需要引入关联变量(relName[16]),即一定范围内的一个集中指示信号,一个变电站可以用一个这样的指示状态量,也可以有多个,但一般采用一个种类的故障原因指示信号,用于指示动作原因。多个状态量会对应一个关联变量,且关联变量会自动随状态量的变化而变化。在设备进行人为操作时,关联变量不随状态量变化而变化,在发生动作时不会产生告警。当设备动作由非人为造成时,关联变量发生变化,从而产生告警。
3.1.3设备数据结构定义
如下为管理设备的数据结构:
struct SDev
{
    int devId; //设备编号
    char name[16];  //设备编码,唯一性关键字段
    char desc[64];  //设备名称
    char devType;   //设备类型。1-发电机,2-变压器,3-断路器(开关),4-刀闸
                         //5-母线,6-线路,7-电容器,8-电抗器
    float voltClass; //电压等级,6(kV)、35(kV)等
    char groupName[16];//设备归属组
    //通信
    short channelNo;   //通道编号
    char comAddr[16];  //通信地址
    int portNo;        //通信端口号
};
3.1.4 告警数据结构定义
如下为管理告警的数据结构:
struct SEvent    //Alarm
{
char devName[16];        //告警设备编码
char dataName[16];        //告警数据编码
float value;            //告警时的实际值
int date;                //告警的日期。格式为:
                        //YYYYMMDD:= year*10000+month*100+day
int clock;                //告警的时间,格式如上
char soundFlag;        //是否语音输出的标志。0:已经语音输出,1:新事件,还没有输出语音
char eventDesc[256];    //告警语句,即需要显示在界面和语音告警的文本语句
int Flag;//数据标志,是否告警状态,0:正常,1-一级上越限告警,2-一级下越限告警
                   //3-二级上越限告警,4-二级下越限告警
};
注意,此处的Flag标志与soundFlag标志含义不同。Flag表示的是该告警事件的告警状态,用于记录告警事件的告警类型等级,也用于合成语音告警所需要的播报内容。而soundFalg是语音是否与输出标志,表明该条需要语音播报的告警信息是否已经播报过了,防止重复播报。

3.1.5 实时数据管理
如下为对构建的结构体进行实例化的程序代码,
/************结构体实例化**********************/ 35kV变电站监控系统中告警事件生成与语音告警软件设计(8):http://www.youerw.com/zidonghua/lunwen_7940.html
------分隔线----------------------------
推荐内容