1、精心整理组态王常用命令语言函数速查手册组态王命令语言函数手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs 此函数用于计算变量值的绝对值,使用格式如下: Abs(变量名或数值); 返回值:整值或实型值; 例如: Abs(14); 返回值为14 Abs(-7.5); 返回值为7.5 Abs(距离); 返回内存模拟变量“距离”的绝对值。Ack 对变量进行报警确认,或对报警组进行报警确认。如果函数参数为变量名称,则只对该变量进行报警确认;如果函数参数为报警组名称,则确认所有属于该报
2、警组及其子报警组的变量。该函数的参数只能是变量名或报警组名,不可以为字符串变量。此函数常用于按钮命令语言,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。调用格式: Ack(报警组名); 或 Ack(变量名); 例如: Ack(全厂); 或 Ack(反应罐液位); ActivateApp activatektvet vt. 刺激;使活动;使活泼;使产生放射性app pn.应用程序 此函数用于激活正在运行的窗口应用程序,使之变为当前窗口。获得输入焦点。该函数也可配合函数SendKeys的使用。调用形式: ActivateApp(“ExeName”); 参数:ExeName 应用程序的执
3、行文件名例如:激活Microsoft Word的正确调用为: ActivateApp(Word.exe);ArcCos arck adj. 圆弧的;反三角函数的此函数用于计算变量值的反余弦值, 变量值的取值范围在-1,1之间,否则函数返回值无效。调用格式: ArcCos(变量名或数值); 返回值:整值或实型值; 例如: ArcCos(1); 此函数返回值为0 ArcCos(temp); 此函数返回变量“temp”的反余弦值。Average v()rd n. 平均;平均数;adj. 平均的vt. 算出的平均数;将平均分配;使平衡此函数为对指定的组态王报表表格的多个单元格求平均值,或求多个变量的平
4、均值。语法格式使用如下: Average(a1,a2); 或Average(a1:a10); a1、a2为组态王单元格所在的行号列标,或整型或实型变量。其中参数个数为1-32个。 当对报表的指定单元格区域内的单元格进行求平均值运算时,结果显示在当前单元格内,语法格式使用如下: Average(a1,a2);例如: 任意单元格选择求平均值: =Average(a1,b2,r10); 连续的单元格求平均值: =Average(b1:b10); 或求变量的平均值: AverageValue= Average(lVar1,fVar1);BackUpHistData historyhst hist -
5、历史此函数为组态王网络中从IO服务器上下载历史数据记录到历史记录服务器。用户在历史记录服务器上调用该函数。函数的使用需要与组态王网络配置相配合,具体内容参见组态王6.53使用手册中“历史库”一章。 语法使用格式: BackupStationData (Str chMchinename, Long ftEndtime); 参数:chMchinename 字符串型 为进行备份存储的IO服务器名 ftEndtime 整型 为备份截止时间例如: /备份“IO采集站”的历史数据,截至时间为当前: endTime=HTConvertTime($年,$月,$日,$时,$分,0); BackUpHistDat
6、a(IO采集站, endTime); Bit 此函数用以取得一个整型或实型变量某一位的值(0或1)。用法: OnOff=Bit( Var , bitNo); /OnOff:离散变量 参数:Var:整型或实型变量bitNo:位的序号,取值1至16 返回值:离散型。若变量Var的第bitNo位为0,返回值OnOff为0; 若变量Var的第bitNo位为1,返回值OnOff为1。 例如: 开关=Bit(DDE1,6); 从变量DDE1的第6位得到变量“开关”状态。 BitSet此函数将一个整型或实型变量的任一位置为指定值(0或1)。语法格式: BitSet( Var, bitNo, OnOff);
7、参数:Var:整型或实型变量 bitNo:位的序号,取值1至16 OnOff:位的设定值 注意:对于IO变量来说,BitSet函数只是用于可读可写的变量。 例如: BitSet(DDE1,6,0); 将变量DDE1的第6位置为0。ChangePassword password pswd n. 密码;口令此函数显示“更改口令”对话框,允许登录工程人员更改他们的口令。使用格式: ChangePassword(); 例如: 为画面上某一按钮设置命令语言连接:ChangePassword( ); 运行时单击此按钮,弹出对话框:提示工程人员输入当前的口令和新口令以及验证新口令。完全正确后,工程人员的口令
8、设置为新值。ClosePicture 此函数用于将已调入内存的画面关闭,并从内存中删除。语法格式如下: ClosePicture(画面名); 例如: ClosePicture(反应车间); 将关闭画面“反应车间”。ConfigODBC 此函数用于配置odbc的数据源,语法格式如下: ConfigODBC(nDatatbasetype,szAttributes); 参数: nDatatbasetype:数据库类型,目前支持 Access,SQL server 该参数为0时表示数据库类型为Access,参数为1时表示数据库类 型为SQL server ;szAttributes:配置字符串: 例1
9、: 配置 Access数据库,DSN名称为demo2,数据库文件为E:ProgramFilesKingviewExampleKingdemo1数据库.mdb。ConfigODBC(0,DSN=demo20Description=E:Program FilesKingviewExampleKingdemo1数据库.mdb0PWD=12340UID=shihf); 例2: 配置SQL数据库: ConfigODBC(1, DSN=MyDSN0 Description =SQLConfigDSNSample0SERVER=MySQL0ADDRESS=MyServer0NETWORK=dbmssocn0
10、DATABASE=pubs0);Date 此函数为根据给出的年、月、日整型数,返回日期字符串,默认格式为:年:月:日。语法使用格式如下: Date(LONG nYear, LONG nMonth, LONG nDay); 例如:年、月、日变量分别为:“$年”、“$月”、“$日”,用日期来显示由以上三个整数决定的“日期”字符串,则在命令语言中输入: 日期=Date(年,月,日);DisplayMCI 此函数提供了一个对多媒体设备的通用接口,具有强大的功能。语法使用格式: DisplayMCI( MCICommand, option ); 下面举例说明此函数的使用方法。 例如: DisplayMC
11、I(“PLAYCD”,3); 用于播放CD唱片中的第3支歌曲。 DisplayMCI(“STOPCD”,”); 用于停止播放CD。 DisplayMCI(“PLAYMIDI”,”c:midi.mid”); 用于播放MIDI格式的背景音乐”c:midi.mid”。 DisplayMCI(“PAUSEMIDI”,” c:midi.mid”); 暂停播放MIDI格式的背景音乐”c:midi.mid”。 DisplayMCI(“RESUMMIDI”,” c:midi.mid”); 继续播放MIDI格式的背景音乐”c:midi.mid”。 DisplayMCI(“CLOSEMIDI”,” c:midi.
12、mid”); 停止播放MIDI格式的背景音乐”c:midi.mid”。 DisplayMCI(“EJECTCD”); 将光驱中的CD盘片弹出。Dtext 此函数用于按离散变量的值动态地改变字符串变量。语法格式如下: Str = Dtext(Discrete_Tag, OnMsg, OffMsg); 参数 描述 Discrete_Tag 离散变量名。 OnMsg 字符串变量名 OffMsg 字符串变量名 当Discrete_Tag1时,Str的值为OnMsg 当Discrete_Tag0时,Str的值为OffMsg 例如: Str = Dtext(电源开关,电源打开,电源关闭); 当电源开关1时
13、,Str的值为电源打开当电源开关0时,Str的值为电源关闭。 EnableAllAlarm 全局报警使能函数。 调用形式: EnableAllAlarm(is_enable); 参数描述: is_enable 整数变量或数值 0-禁止所有报警 非0-使能所有报警 返回值:整数型,反映当前全局报警使能的状态:若为非0:使能;为0:禁止 EnableNavigate 此函数用于显示/关闭导航图。调用形式: EnableNavigate(is_enable); 参数:is_enable,整型。 0: is_enable为0时,关闭导航图1:is_enable为1时,显示导航图。使用EnableNav
14、igate函数关闭导航图后,除非使用该函数来显示导航图,否则无法显示导航图。例如: EnableNavigate(0); /关闭导航图EnableSaveTagValueToIniValueWhenValueChange 对于设置了“保存数值”和“保存参数”的变量,使用该函数后,当变量的值和参数发生变化时,系统会自动将变量的值和参数保存到文件tagname.db中,无论组态王运行系统是否正常退出,再次运行后,将保存的变量值和变量参数作为变量的初始值和初始参数。“保存数值”和“保存参数”的具体含义请参见组态王手册第七章 变量定义和管理 部分。 调用形式: EnableSaveTagValueTo
15、IniValueWhenValueChange(is_enable); 参数: is_enable:整型变量或数值1:当变量的值和参数发生变化时,保存变量数值和参数。组态王运行系统退出,再次运行后,将保存的变量值和变量参数作为变量的初始值和初始参数。 0:与组态王“保存数值”和“保存参数”实现的功能相同。 例如: 组态王开发系统数据词典中定义变量,设置“保存数值”。执行函数: EnableSaveTagValueToIniValueWhenValueChange(1); 该变量的值发生变化时,系统保存该变量的值。组态王运行系统退出,再次运行后,将保存的变量值作为变量的初始值。Exit 此函数使
16、组态王运行环境退出。调用形式: Exit(Option); 参数: Option: 整型变量或数值 0-退出当前程序; 1-关机; 2-重新启动windows;Exp 此函数返回指数函数ex的计算结果使用格式如下: Exp(数值或变量名); 例如: Exp(1); 返回e1的计算值2.718 Exp(temp); 计算e常量的temp次幂并返回计算结果。GetAlarmNumInGroup 此函数用来对某一个报警组当前的报警变量数量进行统计 语法格式: long GetAlarmNumInGroup(MachineName, GroupName); 参数说明: MachineName:报警组所
17、在的站点名称(对于单机网络,使用时用空字符串代替) GroupName:要获取报警变量个数的报警组名 返回值:整型,返回值表示报警变量数量 特别说明:对于网络节点,需要把“本机为报警服务器”钩上,才能正确获取到远程节点的报警变量个数。GetBackupProgress 此函数用于在组态王进行网络历史数据备份合并时获得进度百分比。使用时需要通过命令语言调用来获得进度值。语法使用格式: GetBackupProgress( str szStationName); 参数:szStationName 远程站点名称。 返回值:整型,为0100间的进度值。 例如: 备份进度= GetBackupProgr
18、ess(“IO采集站”);GetCursorPosX 此函数返回当前鼠标的X坐标。 调用格式: result=GetCursorPosX(); 返回值为整型。 GetCursorPosY 此函数返回当前鼠标的Y坐标。 调用格式: result=GetCursorPosY(); 返回值为整型。GetDatelocal 此函数将以秒为单位的长整型数转换为相应的日期数值,分别以年、月、日的日期数值输出。该长整型秒数的基准为UTC(格林尼治)时间1970年1月1日00:00:00。转换完成输出的日期为本地日期。语法使用格式 GetDatelocal(DateTime,Year,Month,Day);
19、参数 描述 DateTime: 需要进行日期转换的数,整型,为输入参数 Year: 年,整型,转换后得到的数据,输出参数 Month: 月,整型,转换后得到的数据,输出参数 Day: 日,整型,转换后得到的数据,输出参例如: 使用HTConvertTime函数将自UTC(格林尼治)时间1970年1月1日00:00:00到北京时间2006年9月26日9:22:4转换为以秒为单位的长整数数值为1159233724,使用GetDatelocal函数可以从这个数值中分离出所表示的北京日期年、月、日。 GetDatelocal (1159233724,年,月,日); 执行后,得到的“年”的值为2006,
20、“月” 的值为9,“日” 的值为26。数可以从这个数值中分离出所表示的日期年、月、日。 函数 GetDate(1060301289,年,月,日); 执行后,得到的“年”的值为2003,“月” 的值为8,“日” 的值为8。 获得其中时间的函数为GetTime()。GetGroupName此函数为通过报警组ID号获得报警组名称。在组态王中,每个报警组除了名称外,还有ID号。组态王的变量域“.Group”显示的是变量所属报警组的ID号,如果要获得相应的报警组名称,就需要使用该函数。语法使用格式 :sGroupName= GetGroupName(StationName,GroupID); 参数 描述
21、 StationName: 报警组所在的站点名称(该项暂时无效,使用时用空字符串代替) GroupID: 要获取名称的报警组的ID号返回值为字符串型。 例如: GroupName=GetGroupName(“”, 本站点原料罐液位.Group);GetHistMaxData 此函数用来获取某段时间中历史数据的最大值 语法使用格式: RealResult=GetHistMaxData(TagName,StartTime,EndTime); 参数描述: TagName:所要查询的变量的名称,类型为字符串型,即带引号。 StartTime:数据查询的开始时间,该时间是通过组态王HTConvertTi
22、me函数转化的以1969年12月31日16:00:00为基准的长整型数,所以用户在使用本函数之前,应先将查询起始时间转换为长整型数值。 EndTime:数据查询的结束时间,类型同StartTime。 返回值:返回一个实数值。 GetHistMinData 此函数用来获取某段时间中历史数据的最小值 语法使用格式: RealResult=GetHistMinData(TagName,StartTime,EndTime); 参数描述: TagName:所要查询的变量的名称,类型为字符串型,即带引号。 StartTime:数据查询的开始时间,该时间是通过组态王HTConvertTime函数转化的以19
23、69年12月31日16:00:00为基准的长整型数,所以用户在使用本函数之前,应先将查询起始时间转换为长整型数值。 EndTime:数据查询的结束时间,类型同StartTime。 返回值:返回一个实数值。 GetHistAveData 此函数用来获取某段时间中历史数据的平均值 语法使用格式: RealResult=GetHistAveData(TagName,StartTime,EndTime); 参数描述: TagName:所要查询的变量的名称,类型为字符串型,即带引号。 StartTime:数据查询的开始时间,该时间是通过组态王HTConvertTime函数转化的以1969年12月31日1
24、6:00:00为基准的长整型数,所以用户在使用本函数之前,应先将查询起始时间转换为长整型数值。 EndTime:数据查询的结束时间,类型同StartTime。 返回值:返回一个实数值。 GetHistMaxTime 此函数用来获取某段时间中历史数据的最大值对应的时间 语法使用格式: RealResult=GetHistMaxTime(TagName,StartTime,EndTime); 参数描述: TagName:所要查询的变量的名称,类型为字符串型,即带引号。 StartTime:数据查询的开始时间,该时间是通过组态王HTConvertTime函数转化的以1969年12月31日16:00:
25、00为基准的长整型数,所以用户在使用本函数之前,应先将查询起始时间转换为长整型数值。 EndTime: 数据查询的结束时 间,类型同StartTime。 返回值: 返回一个字符串,格式为2008/10/10 11:11:11。GetHistMinTime 此函数用来获取某段时间中历史数据的最小值对应的时间 语法使用格式: RealResult=GetHistMinTime(TagName,StartTime,EndTime); 参数描述: TagName:所要查询的变量的名称,类型为字符串型,即带引号。 StartTime:数据查询的开始时间,该时间是通过组态王HTConvertTime函数转
26、化的以1969年12月31日16:00:00为基准的长整型数,所以用户在使用本函数之前,应先将查询起始时间转换为长整型数值。 EndTime:数据查询的结束时间,类型同StartTime。 返回值:返回一个字符串,格式为2008/10/10 11:11:11。 GetKey 此函数为获得组态王当前使用的加密锁的序列号。语法使用格式 KeyID=GetKey(); 该函数没有任何参数。返回值为字符串型。GetProjectPath 此函数用于获取当前工程的路径。语法使用格式 :GetProjectPath(); 例如:在组态王数据词典中定义内存字符串变量VarName:VarName=GetPr
27、ojectPath(); GetRealDBForBool 此函数用于获取变量的当前实时离散值。语法使用格式 :GetRealDBForBool( VarName); 参数 描述 VarName:变量名称,字符串格式说明:变量只能是离散量。 返回值为离散型。 例如: bb= GetRealDBForBool( 原料油出料阀); GetRealDBForFloat 此函数用于获取变量的当前实时模拟值。语法使用格式 :GetRealDBForFloat (VarName); 参数 描述 VarName: 变量名称,字符串格式 说明:变量只能是实型变量。 例如: ff= GetRealDBForFl
28、oat ( 原料油液位); GetRealDBForInt 此函数用于获取变量的当前实时整型值。语法使用格式 :GetRealDBForInt ( VarName); 参数 描述 VarName: 变量名称,字符串格式 说明:变量只能是整型变量。 例如: ii= GetRealDBForInt ( 水果);GetRealDBForString 此函数用于获取变量的当前实时字符串型值。语法使用格式 :GetRealDBForString ( VarName); 参数 描述 VarName: 变量名称,字符串格式 说明:变量只能是字符串型变量。 例如: ss= GetRealDBForString
29、 ( 记录日期); GetStationStatus 此函数用于在组态王进行网络历史数据备份合并时获得备份的状态。使用时需要通过命令语言调用来获得状态值。语法使用格式: BOOL GetStationStatus( str szStationName); 参数:szStationName 远程站点名称。返回值:离散型, 0 正在备份数据 =0空闲。例如:备份状态= GetStationStatus (“IO采集站”); GetTime 此函数将以秒为单位的长整型数转换为相应的时间数值,分别以时、分、秒等的时间数值输出。该长整型秒数的基准为UTC(格林尼治)时间1970年1月1日00:00:00
30、。转换完成输出的时间也为UTC(格林尼治)时间。语法使用格式 :GetTime(DateTime,Hour,Minute,Second); 参数 描述 DateTime: 需要进行时间转换的数,整型,为输入参数 Hour: 时,整型,转换后得到的数据,输出参数 Minute: 分,整型,转换后得到的数据,输出参数 Second: 秒,整型,转换后得到的数据,输出参数 例如: 自UTC(格林尼治)时间1970年1月1日00:00:00到2003年8月8日0:8:9的秒的数值为1060301289,使用GetTime ()函数可以从这个数值中分离出所表示的日期时、分、秒。 函数GetTime (1
31、060301289,时,分,秒); 执行后,得到的“时”的值为0,“分” 的值为8,“秒” 的值为9。 获得其中日期的函数为GetDate ()。 GetTimelocal 此函数将以秒为单位的长整型数转换为相应的时间数值,分别以本地的时、分、秒的时间数值输出。该长整型秒数的基准为UTC(格林尼治)时间1970年1月1日00:00:00。转换完成输出的时间为本地时间。语法使用格式:GetTimelocal(DateTime,Hour,Minute,Second); 参数 描述DateTime: 需要进行时间转换的数,整型,为输入参数 Hour: 时,整型,转换后得到的数据,输出参数 Minute: 分,整型,转换后得到的数据,输出参数Second: 秒,整型,转换后得到的数据,输出参数 例如: 使用HTConvertTime函数将自UTC(格林尼治)时间1
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2