MCGS系统内部函数参考手册.docx
《MCGS系统内部函数参考手册.docx》由会员分享,可在线阅读,更多相关《MCGS系统内部函数参考手册.docx(87页珍藏版)》请在三一办公上搜索。
1、MCGS系统内部函数参考手册MCGS系统内部函数 MCGS内部为用户提供了一些常用的数学函数和对MCGS内部对象操作的函数。组态时,可在表达式中或用户脚本程序中直接使用这些函数。为了与其它名称相区别,系统内部函数的名称一律以“!”符号开头。下面分别介绍各个函数的用途和使用方法。 运行环境操作函数 !CallBackSvr(DatName) 函数意义:调用后台对象 返 回 值:数值型,后台对象的值 参 数:DatName,对象名,数值型 实 例:X=!CallBackSvr,调用后台数值型对象X 注 意:本函数在新版本MCGS系统内部,已经无效。为了保留与旧版本的兼容性,暂时保留。 !Chang
2、eLoopStgy(StgyName,n) 函数意义:改变循环策略的循环时间 返 回 值:数值型。返回值=0:调用正常;0:调用不正常。 参 数:StgyName,策略名;n,数值型,以毫秒数表示循环策略的循环时间 实 例:!ChangeLoopStgy(报警策略,5000),将报警策略的循环时间改为为5秒 !CloseAllWindow(WndName) 函数意义:关闭所有窗口,如果在字符串”WndName”中指定了一个窗口,则打开这个窗口,关闭其他窗口。如果”WndName”为空串,则关闭所有窗口。 返 回 值:数值型。返回值:=0:调用正常;0:调用不正常。 参 数:WndName, 用
3、户窗口名,字符型。 实 例:!CloseAllWindow(“工况图”),关闭除了用户窗口“工况图”以外的其他窗口,若“工况图”窗口没有打开,则在关闭其他窗口的同时打开该窗口 !CloseAllWindow(“”),关闭所有窗口。 !EnableStgy(StgyName,n) 函数意义:打开或关闭某个策略,如报警策略或循环策略等。 返 回 值:数值型。返回值=0:调用正常;0:调用不正常。 参 数:StgyName,策略名; n,数值型,为1时表示打开此策略,为0时表示关闭此策略。 实 例:!EnableStgy(报警策略,1), 打开报警策略; 1 !EnableStgy(报警策略,0),
4、 关闭报警策略,使报警策略无效 !GetDeviceName(Index) 函数意义:按设备顺序取到设备的名字。 返 回 值:字符型。调用成功返回设备名,调用失败时返回空字符串。 参 数:Index,数值型。 实 例:!GetDeviceName(0) ,取0号设备构件的名称。 !GetDeviceState(DevName) 函数意义:按设备名查询设备的状态。 返 回 值:数值型。 =-1调用不正常。 =1 设备处于正常的工作状态。 =2 设备正在工作,但设备不正常。 =3 设备处于停止工作状态,且设备正常。 =4 设备处于停止状态,且设备有错。 参 数:DevName,设备名,字符型。 实
5、 例:!GetDeviceState( OmronPLC),读取设备构件“OmronPLC”的当前工作状态。 !GetStgyName(Index) 函数意义:按运行策略的顺序获得各策略块的名字。 返 回 值:字符型。 参 数:Index,数值型。 实 例:!GetStgyName(0),取0号运行策略的名称。 !GetWindowName(Index) 函数意义:按用户窗口的顺序获得用户窗口的名字。 返 回 值:字符型。 参 数:Index, 数值型。 实 例:!GetWindowName(0) ,读取0号用户窗口的名称。 !GetWindowState(WndName) 函数意义:按照名字
6、取得用户窗口的状态。 返 回 值:数值型。 返回0:用户窗口处于关闭状态。 返回1:用户窗口处于打开状态。 返回2:用户窗口处于隐藏状态。 参 数:WndName,用户窗口名称,字符型。 2 实 例:!GetWindowState(工况图),获得用户窗口“工况图”的状态 !SetActiveX(Activename,n,str) 函数意义:操作指定的动画构件, 向窗口中的ActiveX控件发出控件命令 返 回 值:无 参 数:Activename,字符型,控件名称,用“.”分割窗口名和控件名,如:窗口0.控件1表示在用户窗口“窗口0”中的名为“控件1”的控件。 n,数值型,命令类型,请填1;
7、str,字符型,命令字符串,具体含义请参照控件帮助。 实 例:!SetActiveX(“窗口0.控件0”,1,”start”),启动窗口0的控件0开始工作。 !SetDevice(DevName,DevOp,CmdStr) 函数意义:按照设备名字对设备进行操作。 返 回 值:数值型。返回值:=0:调用正常;0:调用不正常。 参 数:DevName,设备名,字符型; DevOp,设备操作码,数值型; CmdStr,设备命令字符串,只有当DevOp=6时CmdStr才有意义。 DevOp取值范围及相应含义: 1:启动设备开始工作。 2:停止设备的工作使其处于停止状态。 3:测试设备的工作状态。 4
8、:启动设备工作一次。 5:改变设备的工作周期,CmdStr中包含新的工作周期,单位为ms。 6:执行指定的设备命令,CmdStr中包含指定命令的格式。 实 例:!SetDevice(OmronPLC,1, ),启动设备构件“OmronPLC”开始工作。 !SetStgy(StgyName) 函数意义:执行StgyName指定的运行策略。 返 回 值:数值型。返回值=0:调用正常;0:调用不正常。 参 数:StgyName,策略名,字符型。 实 例:!SetStgy(阀门关闭),执行一次运行策略“阀门关闭”。 !SetWindow(WndName,Op) 函数意义:按照名字操作用户窗口,如打开、
9、关闭、打印。 返 回 值:数值型。返回值:=0:调用正常;0:调用不正常。 参 数:WndName, 用户窗口名, 字符型。 Op: 操作用户窗口的方法,数值型。 3 Op=1:打开窗口并使其可见。Op=2:打开窗口并使其不可见。 Op=3:关闭窗口。Op=4:打印窗口。Op=5:刷新窗口。 实 例:!SetWindow(工况图,1),打开用户窗口“工况图”,并使其可见。 !SysWindow 函数意义:执行该函数后,打开用户窗口管理窗口,在管理窗口中可以选择打开或关闭指定的用户窗口。 返 回 值:数值型。返回值=0:调用成功;0:调用失败。 参 数:无。 实 例:!SysWindow !Di
10、sableCtrlAltDel 函数意义:屏蔽热键Ctrl+Alt+Del的功能。无法打开任务管理器窗口或执行锁定计算机注销关机密码修改等操作。 返 回 值:数值型。返回值=0:调用成功;0:调用失败。 参 数:无。 实 例:!DisableCtrlAltDel 注 意此函数在网络版客户端和WIN98操作系统下无效。 !EnableCtrlAltDel 函数意义:恢复热键Ctrl+Alt+Del的功能。使用任务管理器关闭不响应的程序或执行锁定计算机注销关机修改密码等,为了维护系统安全的操作。 返 回 值:数值型。返回值=0:调用成功;0:调用失败。 参 数:无。 实 例:!EnableCtrl
11、AltDel 注 意:1. 不要把这两个脚本函数同时使用,否则,看不到任何效果,没有任何意义; 2. 不要把这两个函数放到循环中使用; 3. 在使用这2个脚本函数时,最好与登录密码同时使用,以达到真正的热键屏蔽效果。 4. 此函数在网络版客户端和WIN98操作系统下无效。 !RestartProject 函数意义:当检查组态工程在运行过程中出现非正常状态,可以调用该函数重新启动运行环境。该功能必须在加密狗生效时方可工作。 返 回 值:无。 参 数:无。 实 例:!RestartProject 4 数据对象操作函数 !AnswerAlm(DatName) 函数意义:应答数据对象DatName所产
12、生的报警。如对应的数据对象没有报警产生或已经应答,则本函数无效。 返 回 值:数值型,=0为操作成功;0为操作失败。 参 数:DatName,数据对象名; 实 例:!AnswerAlm(电机温度),应答数据对象“电机温度”所产生的报警。 !ChangeDataSave(Datname,n) 函数意义:改变数据对象Datname存盘的周期。 返 回 值:数值型,=0为操作成功;0为操作失败。 参 数:Datname,数据对象名; n,数值型,以秒表示的存盘间隔时间 实 例:ChangeDataSave(温度,5), 温度的存盘间隔时间为5秒 !ChangeSaveDat(DatName,Num1
13、,Num2) 函数意义:改变数据对象DatName所对应存盘数据的存盘间隔,把Num1小时以前的存盘数据的存盘间隔改为Num2秒。本操作只对组对象有效,对单个的数据对象无效。当DataName =空字符,或Num1=0或Num2=0时,本操作无效。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatName:数据对象名。 Num1:数值型时间量,单位:小时。本函数用Num10的一些数值来表示一些特殊意义的操作: =-1 改变当天对应数据对象所有存盘数据的存盘间隔; =-2 改变昨天对应数据对象所有存盘数据的存盘间隔; =-3 改变本星期对应数据对象所有存盘数据的存盘间隔
14、; =-4 改变上星期对应数据对象所有存盘数据的存盘间隔; =-5 改变本月对应数据对象所有存盘数据的存盘间隔; =-6 改变上个月对应数据对象所有存盘数据的存盘间隔; Num2:数值型时间量,新的存盘间隔,单位:秒。 实 例:! ChangeSaveDat(电机1, -2, 5),把组对象“电机1”对应的存盘数据中昨天的存盘数据的存盘间隔改为5秒钟。 !CopySaveDat(Tdb,Sdb,TabName,TimeField,Flag ) 函数意义:拷贝数据库中数据表的数据 返 回 值:开关型,返回值=0:调用正常;返回值0:调用不正常。 5 参 数:Tdb,目标数据库名;Sdb,源数据库
15、名;TabName,数据表名; TimeField,定义的时间字段名;Flag,拷贝方式,0:覆盖拷贝;1:添加拷贝。 实 例: !CopySaveDat,将数据库Sdb中表TabName中的数据拷贝到数据库Tdb中,表名仍是TabName,定义的时间字段为TimeField,拷贝方式为覆盖拷贝。 !DelAllSaveDat(DatName) 函数意义:删除数据对象DatName对应的所有存盘数据。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatName,数据对象名。 实 例:! DelAllSaveDat(电机温度) ,删除数据对象“电机温度”对应的所有存盘数据
16、。 !DelAllAlmDat 函数意义:删除数据对象DataName对应的所有报警存盘数据。注意,此函数不能用来删除组对象所对应的报警存盘数据。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatName:数据对象名; 实 例:!DelAllAlmDat,删除数据对象“电机温度”对应的所有报警存盘数据 !DelAlmDat(DatName,Num) 函数意义:删除数据对象DataName对应的报警存储数据中最早Num小时内的报警存储数据,如Num=0或DatName=空字符,则该函数无效。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatNa
17、me:数据对象名; Num:数值型时间值,单位:小时。 实 例:! DelAlmDat(电机温度,1),删除数据对象“电机温度”对应的报警存盘数据中最早1小时内的数据。 !DelSaveDat(DatName,Num) 函数意义:删除数据对象DataName对应的存盘数据中最早Num小时内的存盘数据,如Num=0或DatName=空字符,则该函数无效。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatName:数据对象名; Num:数值型时间值,单位:小时。 实 例:! DelSaveDat(电机温度,12) ,删除数据对象“电机温度”对应的存盘数据中最早12小时内的
18、数据。 6 !EnableAlm(name,n) 函数意义:打开/关闭数据对象的报警功能。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:name,变量名; n,数值型,1表示打开报警,0表示关闭报警 实 例:!EnableAlm(电机温度,1), 打开电机温度的报警功能 !EnableDataSave(name,n) 函数意义:打开/关闭数据对象的定时存盘功能。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:name,数据对象名; n,数值型,1表示打开定时存盘,0表示关闭定时存盘 实 例:!EnableDataSave(温度,1), 打开温度的定
19、时存盘 !GetAlmValue(DatName,Value,Flag) 函数意义:读取数据对象DatName报警限值,只有在数据对象DatName的“允许进行报警处理”属性选项被选中后,本函数的操作才有意义。对组对象、字符型数据对象、事件型数据对象本函数无效。对数值型数据对象,用Flag来标识读取何种报警限值。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatName:数据对象名。 Value:DataName的当前的报警限值,数值型。 Flag:数值型,标志要读取何种限值,具体意义如下: =1下下限报警值; =2 下限报警值; =3 上限报警值; =4 上上限报警
20、值; =5 下偏差报警限值; =6 上偏差报警限值; =7 偏差报警基准值; 实 例:! GetAlmValue(电机温度, Value, 3),读取数据对象“电机温度”的报警上限值,放入数值型数据对象Value中。 !GetEventDT(EvName) 函数意义:返回当前事件和上一次事件之间的时间差,单位为秒。 返 回 值:数值型。返回的时间差 参 数:EvName,事件变量名,事件型。 7 实 例:!GetEventDT(EvName),取事件变量EvName当前事件和上一次事件之间的时间差,单位为秒。 !GetEventP(EvName) 函数意义:取到当前事件的附加说明字符串。 返
21、回 值:字符型。返回的附加说明字符串。 参 数:EvName,事件变量名,事件型。 实 例:!GetEventP(EvName) ,取事件型变量EvName的当前事件的附加说明字符串。 !GetEventT(EvName) 函数意义:取到当前事件产生的时间,以秒为单位,相对于XX年以来的秒数。如没有事件产生,返回-1。 返 回 值:数值型。 参 数:EvName,事件变量名,事件型。 实 例:!GetEventT(EvName),取事件型变量EvName的当前事件产生时刻。 !MoveAlmDat(DatName,FileName,Num1,Num2,Flag) 函数意义:把数据对象DatNa
22、me所对应的报警存盘信息中的第Num1小时到Num1+Num2小时内的报警存盘信息提取出来,转存到FileName所指定的数据库文件中。当DatName=空字符,或FileName=空字符,或Num20时,本函数无效。删除数据对象DatName对应的所有报警存储数据。 返 回 值:数值型,返回值=0:调用正常;0:调用不正常。 参 数:DatName:数据对象名。 FileName:新的报警存盘文件名(包括路径),字符型。 Num1:数值型时间量,单位:小时。本函数用Num10的一些数值来表示一些特殊意义的操作: =-1 转存当天的所有报警信息存盘数据; =-2 转存昨天的所有报警信息存盘数据
23、; =-3 转存本星期的所有报警信息存盘数据; =-4 转存上星期的所有报警信息存盘数据; =-5 转存本月的所有报警信息存盘数据; =-6 转存上个月的所有报警信息存盘数据; Num2:数值型时间量,单位:小时。 Flag:转存标志,数值型。 8 Flag=0时,创建一个新文件(如原文件已存在,则把原文件改名为*.BK1);Flag=1时,在原有的基础上增加新的数据。 实 例:!MoveAlmDat(电机温度, D:Tempttt.mdb,-6,0,1),把数据对象“电机温度”对应的报警存盘数据中的上个月的所有报警信息存盘数据转存添加到数据库文件D:Tempttt.mdb中。 !MoveSa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MCGS 系统 内部 函数 参考手册
链接地址:https://www.31ppt.com/p-3161316.html