跟消息相关的系统属性
S7_server
用于指定Meassge server,这里使用的值为S7_server:='alarm_archiv'
S7_a_type
该属性用于指定消息块的类型(PCS7常用的Alarm_8P和Notify_8P),其中a就是alarm的缩写。用于messageserver,系统会为具有该属性的接口参数分配消息ID,类别,归档检索号
为此,我们需要为调用SFB35消息块前,先创建一个具有上述系统属性的接口参数,数据类型为DWORD,且必须为INPUT参数。其SCL语法为:
VAR_INPUT
MsgEvID1{S7_a_type:='alarm_8p';
S7_server:='alarm_archiv'
}DWORD:=DW#16#FFFFFFFF; //Message event ID1
END_VAR
采用多重背景的方式调用SFB35
VAR
ALARM_8P_1:SFB35;
SbMsgEff1:BYTE; // Effective message signal
SbMsgEff1Bits AT SbMsgEff1: ARRAY [0..7] OFBOOL ;
END_VAR
输出SFB35的状态到Output接口参数
VAR_OUTPUT
MsgErr1:BOOL;
MsgStat1:WORD;
MsgAckn1:WORD;
END_VAR
程序调用SFB35
ALARM_8P_1( EN_R:= true
,SIG1 := SbMsgEff1Bits[0]
,SIG2 := SbMsgEff1Bits[1]
,SIG3 := SbMsgEff1Bits[2]
,SIG4 := SbMsgEff1Bits[3]
,SIG5 := SbMsgEff1Bits[4]
,SIG6 := SbMsgEff1Bits[5]
,SIG7 := SbMsgEff1Bits[6]
,SIG8 := SbMsgEff1Bits[7]
,ID := W#16#EEEE //固定用法,赋值16#EEEE
,EV_ID := MsgEvID1
);
MsgErr1:= ALARM_8P_1.ERROR;
MsgStat1:= ALARM_8P_1.STATUS;
MsgAckn1:= ALARM_8P_1.ACK_STATE;
—————————————————————————————————————————————————
消息配置界面
PCS7中可以通过系统属性S7_alarm_ui控制显示不同式样的消息编辑界面,如果功能块具有系统属性S7_alarm_ui则调用pcs7消息配置应用程序,而不是标准消息配置对话框。pcs7消息配置应用程序适合pcs7和WinCC消息向导。如果系统属性缺失或值等于“0”,则会显示标准消息配置对话框。