数据采集与监控软件:Wonderware天然气处理二次开发_(8).报警与事件处理.docx
PAGE1
PAGE1
报警与事件处理
在天然气处理过程中,报警与事件处理是确保系统稳定运行和安全的重要环节。Wonderware软件提供了强大的报警与事件管理功能,可以帮助用户实时监控和管理设备状态,及时发现和处理潜在问题。本节将详细介绍如何在Wonderware中进行报警与事件处理的二次开发,包括报警配置、事件处理逻辑、报警通知机制等内容。
报警配置
报警类型
在天然气处理系统中,常见的报警类型包括:
高/低限报警:当某个变量的值超过或低于设定的阈值时触发报警。
偏差报警:当某个变量的值与其设定值的偏差超过设定范围时触发报警。
状态报警:当某个设备的状态发生变化时触发报警,例如设备故障、设备停机等。
事件报警:当某个特定事件发生时触发报警,例如系统重启、操作员登录等。
报警配置步骤
创建报警变量:
在Wonderware中,首先需要创建用于报警的变量。这些变量通常与设备的状态或传感器的读数相关。可以通过ArchestrA图形开发环境中的System服务来创建这些变量。
//创建报警变量
INoderoot=Factory.Root;
INodevariableNode=root.CreateNode(AlarmVariable,Tag,Double);
variableNode.SetProperty(Description,用于触发高/低限报警的变量);
variableNode.SetProperty(EngineeringUnits,kPa);
variableNode.SetProperty(InitialValue,100.0);
配置报警条件:
通过Alarm服务配置报警条件。可以设置高限、低限、偏差等报警条件。
//配置高限报警
INodealarmNode=root.CreateNode(HighLimitAlarm,Alarm,HighLimit);
alarmNode.SetProperty(Tag,AlarmVariable);
alarmNode.SetProperty(HighLimit,150.0);
alarmNode.SetProperty(Description,压力超过150kPa时触发高限报警);
//配置低限报警
INodelowLimitAlarmNode=root.CreateNode(LowLimitAlarm,Alarm,LowLimit);
lowLimitAlarmNode.SetProperty(Tag,AlarmVariable);
lowLimitAlarmNode.SetProperty(LowLimit,50.0);
lowLimitAlarmNode.SetProperty(Description,压力低于50kPa时触发低限报警);
设置报警优先级:
报警优先级可以帮助操作员优先处理重要报警。优先级通常分为几个等级,例如紧急、高、中、低等。
//设置报警优先级
alarmNode.SetProperty(Priority,High);
lowLimitAlarmNode.SetProperty(Priority,Medium);
配置报警通知:
报警通知可以通过多种方式发送,例如电子邮件、短信、声光报警等。通过Notification服务配置这些通知方式。
//配置电子邮件通知
INodeemailNotificationNode=root.CreateNode(EmailNotification,Notification,Email);
emailNotificationNode.SetProperty(Recipients,operator@);
emailNotificationNode.SetProperty(Subject,报警通知);
emailNotificationNode.SetProperty(Message,压力超过150kPa,请立即检查设备状态。);
//配置短信通知
INodesmsNotificationNode=root.CreateNode(SMSNotification,Notification,SMS);
smsNotificationNode.SetProperty(Recipients,1234567890);
smsNotificationNode.SetProperty(Message,压力超过150kPa,请立即检查设备状态。);
报警变量与报警条件的绑定
将报警变量与报警条件绑定,使得当变量的值满足报警条件时,系统能够自动触发报警。