WINCC C语言资料Word下载.docx
《WINCC C语言资料Word下载.docx》由会员分享,可在线阅读,更多相关《WINCC C语言资料Word下载.docx(102页珍藏版)》请在冰豆网上搜索。
,"
visible"
1);
voidOnLButtonDown(char*lpszPictureName,char*lpszObjectName,char*lpszPropertyName,UINTnFlags,intx,inty)
SetTagBit("
M_31_B1_V1"
long_main(char*lpszPictureName,char*lpszObjectName,char*lpszPropertyName)
staticinta;
if(GetTagBit("
X1_9M3_Fan_Low"
)&
&
a<
=7)
{a+=1;
a==7)
{a=1;
)==0)
{a=0;
returna;
floata,b;
a=GetTagFloat("
LISA6001"
b=a/10;
return(b);
标准函数
该系统包含标准函数。
可以按需要修改这些函数。
此外,还可以自己创建标准函数。
该系统包括一个标准函数集。
一、Alarm-简短描述
Alarm组包含控制WinCC报警控件的函数。
标准函数可用于工具栏中的每一个按钮。
这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。
1.voidAcknowledgeMessage(DWORDMsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。
使用标准函数操作WinCC报警控件的实例
{//确认选择的报警记录消息
AcknowledgeMessage(GetTagWord("
U08i_MsgNr"
));
}
指定待确认的消息号。
在本例中是从变量读取的。
2.BOOLAXC_OnBtnArcLong(char*lpszPictureName,char*pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。
使用标准函数操作WinCC报警控件的实例
{//跳转到WinCC报警控件中的第一条消息
AXC_OnBtnMsgFirst("
gs_alarm_00"
Control1"
AXC_OnBtnMsgFirst函数参数:
“gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。
Control1是WinCC报警控件的对象名。
3.BOOLAXC_OnBtnArcShort(char*lpszPictureName,char*pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。
4.BOOLAXC_OnBtnComment(char*lpszPictureName,char*pszMsgWin)函数
外部消息窗口操作,该函数显示先前所选消息的注释。
5.BOOLAXC_OnBtnEmergAckn(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,此函数打开确认对话框(紧急确认/复位)。
6.BOOLAXC_OnBtnHornAckn(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数确认蜂鸣器信号。
7.BOOLAXC_OnBtnInfo(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数显示信息文本。
7.BOOLAXC_OnBtnLock(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数打开“设置锁定”对话框。
8.BOOLAXC_OnBtnLockUnlock(char*lpszPictureName,char*pszMsgWin),函数,该函数锁住在消息窗口中选择的消息。
之后,不再归档该消息。
该函数释放在锁定列表中选择的消息。
9.BOOLAXC_OnBtnLockWin(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作.该函数调用锁定列表。
10.BOOLAXC_OnBtnLoop(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,此函数触发所选消息的“报警回路”函数。
11.BOOLAXC_OnBtnMsgFirst(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表的开始处。
12.BOOLAXC_OnBtnMsgLast(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表的结束处。
{//跳转到WinCC报警控件中的最后一条消息
AXC_OnBtnMsgLast("
AXC_OnBtnMsgLast函数参数:
13.BOOLAXC_OnBtnMsgNext(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表中的下一条消息。
14.BOOLAXC_OnBtnMsgPrev(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数移动到消息列表中的前一条消息。
15.BOOLAXC_OnBtnMsgWin(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数调用过程消息窗口。
16.BOOLAXC_OnBtnPrint(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,打印机打印出符合在报警控件中定义的选择标准的全部消息。
WinCC报警控件的实例
17.BOOLAXC_OnBtnScroll(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数激活水平和垂直滚动功能。
{//激活/取消激活滚动功能
AXC_OnBtnScroll("
AXC_OnBtnScroll函数参数:
18.BOOLAXC_OnBtnSelect(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数打开“设置选择”对话框。
19.BOOLAXC_OnBtnSinglAckn(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,该函数确认当前所选的消息。
{//确认激活的消息
AXC_OnBtnSinglAckn("
AXC_OnBtnSinglAckn函数参数:
20.BOOLAXC_OnBtnVisibleAckn(char*lpszPictureName,char*pszMsgWin)函数,外部消息窗口操作,确认消息窗口中可见的全部消息(组确认)。
21.BOOLAXC_SetFilter(char*lpszPictureName,char*lpszObjectName,LPMSG_FILTER_STRUCTlpMsgFilter,LPCMN_ERROR,lpError)函数,外部消息窗口操作,该函数为WinCC报警控件设置过滤器,以便根据指定的过滤标准筛选出可用的消息。
{BOOLret;
MSG_FILTER_STRUCTFilter;
CMN_ERRORError;
//重新设置过滤器结构memset
(&
Filter,0,sizeof(MSG_FILTER_STRUCT));
//设置过滤器名称strcpy
(Filter.szFilterName,"
//挑选选择元素Filter
.dwFilter=MSG_FILTER_NR_FROM|MSG_FILTER_NR_TO;
//消息号来自Filter
.dwMsgNr[0]=2;
.dwMsgNr[1]=2;
ret=AXC_SetFilter("
&
Filter,&
Error);
1.命名该过滤器。
2.选择过滤器的类型。
3.指定过滤器标准。
4.设置过滤器。
常规使用注释
过滤器类型和过滤器标准必须适合使用;
在过滤器结构中描述所有其它的过滤器类型。
//删除整个过滤器结构memset
//设置空的过滤器结构AXC
_SetFilter("
Control1"
1.删除该过滤器结构。
2.用空值填充过滤器结构。
结构定义MSG_FILTER_STRUCT
typedefstruct{
CHARszFilterName[MSG_MAX_TEXTLEN+1];
WORDdwFilter;
SYSTEMTIMEst[2];
DWORDdwMsgNr[2];
DWORDdwMsgClass;
DWORDdwMsgType[MSG_MAX_CLASS];
DWORDdwMsgState;
WORDwAGNr[2];
WORDwAGSubNr[2];
DWORDdwArchivMode;
charszTB[MSG_MAX_TB][
MSG_MAX_TB_CONTENT+1]
DWORDdwTB;
DoubledPValue[MSG_MAX_PVALUE][2];
DWORDdwPValue[2];
DWORDdwMsgCounter[2];
DWORDdwQuickSelect;
MSG_FILTER_STRUCT;
描述
在该结构中定义过滤标准。
组成部分
dwFilter
通过下列常数从“m_global.h”文件定义过滤条件:
MSG_FILTER_DATE_FROM从日期
MSG_FILTER_DATE_TO到日期
MSG_FILTER_TIME_FROM从时间
MSG_FILTER_TIME_TO到时间
MSG_FILTER_NR_FROM从消息号
MSG_FILTER_NR_TO到消息号
MSG_FILTER_CLASS消息等级
MSG_FILTER_STATE消息状态
MSG_FILTER_AG_FROM从AG号
MSG_FILTER_AG_TO到AG号
MSG_FILTER_AGSUB_FROM从AG子号
MSG_FILTER_AGSUB_TO到AG子号
MSG_FILTER_TEXT消息文本
MSG_FILTER_PVALUE过程值
MSG_FILTER_COUNTER_FROM从内部消息计数器
MSG_FILTER_COUNTER_TO到内部消息计数器
MSG_FILTER_PROCESSMSG过程消息
MSG_FILTER_SYSMSG系统消息
MSG_FILTER_BEDMSG事件消息
MSG_FILTER_DATE日期从...到...
MSG_FILTER_TIME日期从...到...
MSG_FILTER_NR消息号从...到...
st
日期/时间从...到...
在这种情况下,st[0]是开始时间(从),st[1