您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > MCGS系统内部函数参考手册
1MCGS系统内部函数MCGS内部为用户提供了一些常用的数学函数和对MCGS内部对象操作的函数。组态时,可在表达式中或用户脚本程序中直接使用这些函数。为了与其它名称相区别,系统内部函数的名称一律以“!”符号开头。下面分别介绍各个函数的用途和使用方法。运行环境操作函数!CallBackSvr(DatName)函数意义:调用后台对象返回值:数值型,后台对象的值参数:DatName,对象名,数值型实例:X=!CallBackSvr(X),调用后台数值型对象X注意:本函数在新版本MCGS系统内部,已经无效。为了保留与旧版本的兼容性,暂时保留。!ChangeLoopStgy(StgyName,n)函数意义:改变循环策略的循环时间返回值:数值型。返回值=0:调用正常;0:调用不正常。参数:StgyName,策略名;n,数值型,以毫秒数表示循环策略的循环时间实例:!ChangeLoopStgy(报警策略,5000),将报警策略的循环时间改为为5秒!CloseAllWindow(WndName)函数意义:关闭所有窗口,如果在字符串”WndName”中指定了一个窗口,则打开这个窗口,关闭其他窗口。如果”WndName”为空串,则关闭所有窗口。返回值:数值型。返回值:=0:调用正常;0:调用不正常。参数:WndName,用户窗口名,字符型。实例:!CloseAllWindow(“工况图”),关闭除了用户窗口“工况图”以外的其他窗口,若“工况图”窗口没有打开,则在关闭其他窗口的同时打开该窗口!CloseAllWindow(“”),关闭所有窗口。!EnableStgy(StgyName,n)函数意义:打开或关闭某个策略,如报警策略或循环策略等。返回值:数值型。返回值=0:调用正常;0:调用不正常。参数:StgyName,策略名;n,数值型,为1时表示打开此策略,为0时表示关闭此策略。实例:!EnableStgy(报警策略,1),打开报警策略;2!EnableStgy(报警策略,0),关闭报警策略,使报警策略无效!GetDeviceName(Index)函数意义:按设备顺序取到设备的名字。返回值:字符型。调用成功返回设备名,调用失败时返回空字符串。参数:Index,数值型。实例:!GetDeviceName(0),取0号设备构件的名称。!GetDeviceState(DevName)函数意义:按设备名查询设备的状态。返回值:数值型。=-1调用不正常。=1设备处于正常的工作状态。=2设备正在工作,但设备不正常。=3设备处于停止工作状态,且设备正常。=4设备处于停止状态,且设备有错。参数:DevName,设备名,字符型。实例:!GetDeviceState(OmronPLC),读取设备构件“OmronPLC”的当前工作状态。!GetStgyName(Index)函数意义:按运行策略的顺序获得各策略块的名字。返回值:字符型。参数:Index,数值型。实例:!GetStgyName(0),取0号运行策略的名称。!GetWindowName(Index)函数意义:按用户窗口的顺序获得用户窗口的名字。返回值:字符型。参数:Index,数值型。实例:!GetWindowName(0),读取0号用户窗口的名称。!GetWindowState(WndName)函数意义:按照名字取得用户窗口的状态。返回值:数值型。返回0:用户窗口处于关闭状态。返回1:用户窗口处于打开状态。返回2:用户窗口处于隐藏状态。参数:WndName,用户窗口名称,字符型。3实例:!GetWindowState(工况图),获得用户窗口“工况图”的状态!SetActiveX(Activename,n,str)函数意义:操作指定的动画构件,向窗口中的ActiveX控件发出控件命令返回值:无参数:Activename,字符型,控件名称,用“.”分割窗口名和控件名,如:窗口0.控件1表示在用户窗口“窗口0”中的名为“控件1”的控件。n,数值型,命令类型,请填1;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:启动设备工作一次。5:改变设备的工作周期,CmdStr中包含新的工作周期,单位为ms。6:执行指定的设备命令,CmdStr中包含指定命令的格式。实例:!SetDevice(OmronPLC,1,),启动设备构件“OmronPLC”开始工作。!SetStgy(StgyName)函数意义:执行StgyName指定的运行策略。返回值:数值型。返回值=0:调用正常;0:调用不正常。参数:StgyName,策略名,字符型。实例:!SetStgy(阀门关闭),执行一次运行策略“阀门关闭”。!SetWindow(WndName,Op)函数意义:按照名字操作用户窗口,如打开、关闭、打印。返回值:数值型。返回值:=0:调用正常;0:调用不正常。参数:WndName,用户窗口名,字符型。Op:操作用户窗口的方法,数值型。4Op=1:打开窗口并使其可见。Op=2:打开窗口并使其不可见。Op=3:关闭窗口。Op=4:打印窗口。Op=5:刷新窗口。实例:!SetWindow(工况图,1),打开用户窗口“工况图”,并使其可见。!SysWindow()函数意义:执行该函数后,打开用户窗口管理窗口,在管理窗口中可以选择打开或关闭指定的用户窗口。返回值:数值型。返回值=0:调用成功;0:调用失败。参数:无。实例:!SysWindow()!DisableCtrlAltDel()函数意义:屏蔽热键Ctrl+Alt+Del的功能。无法打开任务管理器窗口或执行锁定计算机﹑注销﹑关机﹑密码修改等操作。返回值:数值型。返回值=0:调用成功;0:调用失败。参数:无。实例:!DisableCtrlAltDel()注意此函数在网络版客户端和WIN98操作系统下无效。!EnableCtrlAltDel()函数意义:恢复热键Ctrl+Alt+Del的功能。使用任务管理器关闭不响应的程序或执行锁定计算机﹑注销﹑关机﹑修改密码等,为了维护系统安全的操作。返回值:数值型。返回值=0:调用成功;0:调用失败。参数:无。实例:!EnableCtrlAltDel()注意:1.不要把这两个脚本函数同时使用,否则,看不到任何效果,没有任何意义;2.不要把这两个函数放到循环中使用;3.在使用这2个脚本函数时,最好与登录密码同时使用,以达到真正的热键屏蔽效果。4.此函数在网络版客户端和WIN98操作系统下无效。!RestartProject()函数意义:当检查组态工程在运行过程中出现非正常状态,可以调用该函数重新启动运行环境。该功能必须在加密狗生效时方可工作。返回值:无。参数:无。实例:!RestartProject()5数据对象操作函数!AnswerAlm(DatName)函数意义:应答数据对象DatName所产生的报警。如对应的数据对象没有报警产生或已经应答,则本函数无效。返回值:数值型,=0为操作成功;0为操作失败。参数:DatName,数据对象名;实例:!AnswerAlm(电机温度),应答数据对象“电机温度”所产生的报警。!ChangeDataSave(Datname,n)函数意义:改变数据对象Datname存盘的周期。返回值:数值型,=0为操作成功;0为操作失败。参数:Datname,数据对象名;n,数值型,以秒表示的存盘间隔时间实例:ChangeDataSave(温度,5),温度的存盘间隔时间为5秒!ChangeSaveDat(DatName,Num1,Num2)函数意义:改变数据对象DatName所对应存盘数据的存盘间隔,把Num1小时以前的存盘数据(以当前时间为0点)的存盘间隔改为Num2秒。本操作只对组对象有效,对单个的数据对象无效。当DataName=空字符,或Num1=0或Num2=0时,本操作无效。返回值:数值型,返回值=0:调用正常;0:调用不正常。参数:DatName:数据对象名。Num1:数值型时间量,单位:小时。本函数用Num10的一些数值来表示一些特殊意义的操作:=-1改变当天对应数据对象所有存盘数据的存盘间隔;=-2改变昨天对应数据对象所有存盘数据的存盘间隔;=-3改变本星期对应数据对象所有存盘数据的存盘间隔;=-4改变上星期对应数据对象所有存盘数据的存盘间隔;=-5改变本月对应数据对象所有存盘数据的存盘间隔;=-6改变上个月对应数据对象所有存盘数据的存盘间隔;Num2:数值型时间量,新的存盘间隔,单位:秒。实例:!ChangeSaveDat(电机1,-2,5),把组对象“电机1”对应的存盘数据中昨天的存盘数据的存盘间隔改为5秒钟。!CopySaveDat(Tdb,Sdb,TabName,TimeField,Flag)函数意义:拷贝数据库中数据表的数据返回值:开关型,返回值=0:调用正常;返回值0:调用不正常。6参数:Tdb,目标数据库名;Sdb,源数据库名;TabName,数据表名;TimeField,定义的时间字段名;Flag,拷贝方式,0:覆盖拷贝;1:添加拷贝。实例:!CopySaveDat(Tdb,Sdb,TabName,TimeField,0),将数据库Sdb中表TabName中的数据拷贝到数据库Tdb中,表名仍是TabName,定义的时间字段为TimeField,拷贝方式为覆盖拷贝。!DelAllSaveDat(DatName)函数意义:删除数据对象DatName对应的所有存盘数据。返回值:数值型,返回值=0:调用正常;0:调用不正常。参数:DatName,数据对象名。实例:!DelAllSaveDat(电机温度),删除数据对象“电机温度”对应的所有存盘数据。!DelAllAlmDat(DatName)函数意义:删除数据对象DataName对应的所有报警存盘数据。注意,此函数不能用来删除组对象所对应的报警存盘数据。返回值:数值型,返回值=0:调用正常;0:调用不正常。参数:DatName:数据对象名;实例:!DelAllAlmDat(电机温度),删除数据对象“电机温度”对应的所有报警存盘数据!DelAlmDat(DatName,Num)函数意义:删除数据对象DataName对应的报警存储数据中最早Num小时内的报警存储数据,如Num=0或DatName=空字符,则该函数无效。返回值:数值型,返回值=0:调用正常;0:调用不正常。参数:DatName:数据对象名;Num:数值型时间值,单位:小时。实例:!DelAlmDat(电机温度,1),删除数据对象“电机温度”对应的报警存盘数据中最早1小时内的数据。!DelSaveDat(DatName,Num)函数意义:删除数据对象DataName对应的存盘数据中最早Num小时内的存盘数据,如Num=0或DatName=空字符,则该函数无效。返回值:数值型,返回值=0:调用正常;0:调用不正常。参数:DatName:数据对象名;Num:数值型时间值,单位:小时。实例:!DelSaveDat(电机温度,12),删除数据对象“电机温度”对应的存盘数据中最早12小时内的数据。7!EnableAlm(name,n)函数意义:打开/关闭数据对象的报警功能。返回值:数值型,返回值=0:调用正常;0:调用不正常。参数:name,变量名;n,数值型,1表示打开报警,0表示关闭报警实例:!Enable
本文标题:MCGS系统内部函数参考手册
链接地址:https://www.777doc.com/doc-3701622 .html