项目5 组态王命令语言
组态王命令语言函数手册
组态王命令语言函数手册工业自动化通用组态软件组态王version6.5命令语言函数速查手册北京亚控科技发展有限公司组态王命令语言函数速查手册1命令语言函数速查手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs此函数用于计算变量值的绝对值,使用格式如下:Abs(变量名或数值);返回值:整值或实型值;例如:Abs(14);返回值为14Abs(-7.5);返回值为7.5Abs(距离);返回内存模拟变量“距离”的绝对值。
Ack此函数常和按钮连接,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式:Ack(报警组名);或Ack(变量名);例如:Ack(全厂);或Ack(反应罐液位);ActivateApp此函数用于激活正在运行的窗口应用程序,使之获得输入焦点。
该函数主要用于配合函数SendKe ys的使用。
调用形式:ActivateApp(“ExeName”);参数描述ExeName应用程序的执行文件名北京亚控科技发展有限公司2组态王命令语言函数速查手册例如:激活Microsoft Word的正确调用为:ActivateApp("Word.exe");激活组态王:可使用ActivateApp("TouchVew.exe");ArcCos此函数用于计算变量值的反余弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcCos(变量名或数值);返回值:整值或实型值;例如:ArcCos(1);此函数返回值为0A rcCos(temp);此函数返回变量“temp”的反余弦值。
ArcSin此函数用于计算变量值的反正弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcSin(变量名或数值);返回值:整值或实型值;例如:ArcSin(1);此函数返回值为90A rcSin(temp);此函数返回变量“temp”的反正弦值。
项目5 组态王命令语言
4、数据改变命令语言
数据改变命令语言触发的条件是在变量 或变量的域值变化到超出数据字典中所 定义的变化灵敏度时,它们就被触发执 行一次。
4、数据改变命令语言
•在命令语言编辑器“变量[.域]”编辑框中输入或
通过单击“?”按钮来选择变量名称(如:原 料罐液位)或变量的域(如:原料罐液 位.Alarm)。 •这里可以连接任何类型的变量和变量的域,如 离散型、整型、实型、字符串型等。当连接的 变量的值发生变化时,系统会自动执行该命令 语言程序。数据改变命令语言可以按照需要定 义多个。 •注意:在使用“事件命令语言”或“数据改变 命令语言”过程中要注意防止死循环。
•上一页 •下一页 •返回
7、画面命令语言
存在时:画面在当前显示时,或画面由隐含变为显示 时周期性执行,可以定义指定执行周期,在“存在时” 中的“每…毫秒”编辑框中输入执行的周期时间。 隐含时:画面由当前激活状态变为隐含或被关闭时执 行一次。只有画面被关闭或被其他画面完全遮盖时, 画面命令语言才会停止执行。只与画面相关的命令语 言可以写到画面命令语言里——如画面上动画的控制 等,而不必写到后台命令语言中——如应用程序命令 语言等,这样可以减轻后台命令语言的压力,提高系 统运行的效率。
应用程序命令语言 热键命令语言 事件命令语言 数据改变命令语言 自定义函数命令语言 画面及动画命令语言
项目5组态王命令语言
系统操作问题
总结词
系统操作问题通常是由于系统配置不当 、操作不规范或权限限制等原因引起的 。
VS
详细描述
在进行系统操作时,需要确保系统配置正 确、操作规范以及权限设置合理。如果遇 到系统操作问题,首先检查系统配置是否 符合要求,操作是否符合规范,并检查用 户权限设置是否合理。此外,还需要定期 更新系统软件和安全补丁,以确保系统的 稳定性和安全性。
数据处理异常
总结词
数据处理异常通常表现为数据读取错误、数据转换错误或数据丢失等问题。
详细描述
在处理数据时,需要确保数据源的可靠性、数据格式的正确性以及数据处理的逻辑性。如果遇到数据处理异常, 首先检查数据源是否正常,数据格式是否符合要求,并检查数据处理过程中的逻辑是否正确。此外,还需要定期 备份数据,以防止数据丢失。
云计算与组态王命令语言的融合
1
云计算技术为组态王命令语言提供了灵活和可扩 展的计算资源,使其能够更好地应对突发性和大 规模的任务需求。
2
通过与云计算技术的融合,组态王命令语言可以 实现分布式计算和存储,提高系统的可靠性和可 用性。
3
云计算技术还可以帮助组态王命令语言实现按需 付费和弹性伸缩,降低系统的成本和维护难度。
远程控制
通过组态王,用户可以远程控制工业 设备的运行,实现远程调试和维护。
数据处理
组态王具备强大的数据处理能力,能 够对采集到的数据进行统计分析,生 成各种报表和图表。
定制化开发
组态王支持定制化开发,可根据客户 的具体需求进行功能扩展和优化。
组态王的应用领域
能源行业
组态王广泛应用于能源行业的监控系统,如电力、石油、天然气等。
组态王语言手册
组态王除了在定义动画连接时支持连接表达式,还允许编写命令 语言来扩展应用程序的功能,极大地增强了应用程序的可用性; 命令语言的格式类似C语言的格式,具有完备的词法语法错功能 和丰富的运算符、数学函数、字符串函数、控件函数、SQL 函数 和系统函数; 组态王的命令语言编辑环境已经编好,用户只要按规范编写程序 段即可。 命令语言有六种形式,其区别在于命令语言执行的时机或条件不 同:
if(\\本站点\原料油液位1==0) {\\本站点\原料油液位1=100;}
if(\\本站点\催化剂液位1==0) {\\本站点\催化剂液位1=100;} if(\\本站点\成品油液位1==100) {\\本站点\成品油液位1=0;}
报警
闪烁:\\本站点\原料油液位1>90||\\本站点\原料油液位1<10 隐含:\\本站点\原料油液位1>10&&\\本站点\原料油液位1<90
if(\\本站点\催化剂出料阀==0) { \\本站点\控制水流1=3; } else { \\本站点\控制水流1=1; \\本站点\催化剂液位1=\\本站点\ 催化剂液位1-1; \\本站点\成品油液位1=\\本站点\ 成品油液位1+1;}
if(\\本站点\成品油出料阀==0) { \\本站点\控制水流2=3; } else { \\本站点\控制水流2=1; \\本站点\成品油液位1=\\本站点\ 成品油液位1-1;}
if(menuindex==0) {ShowPicture("报警和事件画面");} if(menuindex==1&&childmenuindex==0) {ShowPicture("实时趋势曲线画面");} if(menuindex==1&&childmenuindex==1) {ShowPicture("历史趋势曲线画面");}
组态王命令语言教案
为0。
②进水阀开并且水位高度大于80进水阀关闭,表达式为1,
否则为0。
一、任务问题创设
1、如何在程序中将水管阀门设置为关闭状态?
2、如何实现当水位大于80时,指示灯为红色,否则为绿色(指
示灯的离散值为1时红色,0是绿色)?
二、新知识讲解
每一条语句的末尾应该用“;”结束。
回放
5’
讲解
点评
5’
练习
15’
练习
讲评
10’
阶段
回顾
总结
6’
强化
训练
27’
课业
布置
2’
一、复习引出新课
1、命令语言的类型有哪些?
2、各种命令语言有着哪些语法要求那?(引问)
任务:(利用运算符书写满足以下要求的表达式)
①判断系统年份是否为闰年,闰年表达式结果为1,否则
为0。
②进水阀开并且水位高度大于80进水阀关闭,表达式为1,
1、当变量step与数字3相等时,将变量颜色置为“红色”
(变量“红色”为内存字符串变量),否则置为“绿色”
2、将内存离散变量“出料阀”设为相反状态。
3、当系统时间为闰年时,变量年颜色置为“红色”,月置为“黑色”否则年置为“黑色”,月置为“红色”。
练习:按要求书写程序
4、当变量step与数字3相等时,将变量颜色置为“红色”
{一条或多条语句;}
else
{一条或多条语句;}
注意:if...else语句中如果是单条语句,可省略“{}”;若
是多条语句,必须在一对“{}”中,else分支可以省略。
嵌套格式:if(表达式1)
if(表达式2)
组态王命令语言-精共52页
46、我们若已接受最坏的,就再没有什么损失。——卡耐基 47、书到用时方恨少、事非经过不知难。——陆游 48、书籍把我们引入最美好的社会,使我们认识各个时代的伟大智者。——史美尔斯 49、熟读唐诗三百首,不会作诗也会吟。——孙洙 50、谁和我一样用功,谁就会和我一样成功。——莫扎特
组态王命令语言-精
26、机遇对于有准备的头脑有特别的 亲和力 。 27、自信是人格的核心。
28、目标的坚定是性格中最必要的力 量泉源 之一, 也是成 功的利 器之一 。没有 它,天 才也会 在矛盾 无定的 迷径中 ,徒劳 无功。- -查士 德斐尔 爵士。 29、困难就是机遇。--温斯顿.丘吉 尔。 30、我奋斗,所以我快乐。--格林斯 潘。
ቤተ መጻሕፍቲ ባይዱ
组态王命令语言程序
命令语言程序10.1 命令语言类型组态王中命令语言是一种在语法上类似C语言的程序,工程人员可以利用这些程序来增强应用程序的灵活性、处理一些算法和操作等。
命令语言都是靠事件触发执行的,如定时、数据的变化、键盘键的按下、鼠标的点击等。
根据事件和功能的不同,包括应用程序命令语言、热键命令语言、事件命令语言、数据改变命令语言、自定义函数命令语言、动画连接命令语言和画面命令语言等。
具有完备的词法语法查错功能和丰富的运算符、数学函数、字符串函数、控件函数、SQL函数和系统函数。
各种命令语言通过“命令语言编辑器”编辑输入,在“组态王”运行系统中被编译执行。
其中应用程序命令语言、热键命令语言、事件命令语言、数据改变命令语言可以称为“后台命令语言”,它们的执行不受画面打开与否的限制,只要符合条件就可以执行。
另外可以使用运行系统中的菜单“特殊/开始执行后台任务”和“特殊/停止执行后台任务”来控制所有这些命令语言是否执行。
而画面和动画连接命令语言的执行不受影响。
也可以通过修改系统变量“$启动后台命令语言”的值来实现上述控制,该值置0时停止执行,置1时开始执行。
10.1.1 应用程序命令语言在工程浏览器的目录显示区,选择“文件\命令语言\应用程序命令语言”,则在右边的内容显示区出现“请双击这儿进入<应用程序命令语言>对话框…”图标,如图10.1所示:图 10.1 选择应用程序命令语言双击图标,则弹出“应用程序命令语言”对话框,如图10.2所示:图 10.2 应用程序命令语言菜单条工具栏关键字选择命令语言编辑区变量选择函数选择运算符输入触发条件10.1.1.1 认识命令语言编辑器命令语言编辑器是组态王提供的用于输入、编辑命令语言程序的地方。
编辑器的组成部分如图10.2所示。
所有命令语言编辑器的大致界面和主要部分及功能都相同,唯一不同的是,按照触发条件的不同,在界面上“触发条件”部分会有所不同。
编辑器各部分的大致功能为:◆菜单条:提供给编辑器的操作菜单,“文件”菜单下有两个菜单项:确认和取消。
组态王命令语言函数手册
ClosePicture
此函数用于将已调入内存的画面关闭,并从内存中删除。调用形式: ClosePicture("画面名");
北京亚控科技发展有限公司
BackUpHistData
此函数为组态王网络中从 IO 服务器上下载历史数据记录到历史记录 服务器。用户在历史记录服务器上调用该函数。函数的使用需要与组 态王网络配置相配合,具体内容参见〈组态王 6.5 使用手册〉中“历 史库”一章。 语法使用格式: BackupStationData (Str chMchinename, Long ftEndtime);
EditUsers( ); 为配置其他工程人员,当前工程人员的权限必须不小于 900。
北京亚控科技发展有限公司
10 组态王命令语言函数速查手册
Exit
此函数使组态王运行环境退出。调用形式: Exit(Option); 参数: Option: 整型变量或数值 0-退出当前程序; 1-关机; 2-重新启动 windows;
chartClear( "ControlName" ); 参数说明: ControlName:工程人员定义的棒图控件名称,可以为中文名或英文 名。 例如:
chartClear( "XYChart" ); 此语句把棒图控件 XYChart 中的所有棒图清除。
chartSetBarColor
此函数用于在指定的棒图控件中设置饼图的颜色。条形图不可以。
此函数用于计算变量值的反余弦值, 变量值的取值范围在[-1,1] 之间,否则函数返回值无效。调用格式:
组态王教学-命令语言与函数解读
组态王KINGVIEW 6X命令语言与函数-常见问题解答北京亚控科技发展有限公司2009年07月目录1. 我希望用户能在不退出组态王运行软件的情况下启动一个其他的软件做其他处理,如何实现? (1)2. 我注意到组态王的命令语言窗口中能够写入的编程命令是有限制的,我的编程命令比较长,命令窗口中无法写下,请问如何解决? (1)3. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗? (1)4. 请问组态王能否显示十六进制的数据? (1)5. 请问如何编程来在组态王软件中生成一个随机的数据? (1)6. 请问如何编程能够方便地统计一项工序的运行时间?直接采用组态王的年月日时分秒做运算比较麻烦? (1)7. 能否在组态王画面上做一个按钮,实现键盘ctrl+shift切换输入法的功能?28. 在定义数据改变命令语言和事件命令语言时,能不能使用远程变量来作为触发脚本执行的条件? (2)9. 组态王能否实现在运行时调用一个函数,实现类似键盘的“Print Scr een SysRq”屏幕硬拷贝功能? (2)10. 用VarRefAddress()函数实现普通变量间的引用,引用的变量是否可以读写? (2)1. 我希望用户能在不退出组态王运行软件的情况下启动一个其他的软件做其他处理,如何实现?针对这种需求,组态王软件专门提供了一个StartApp()函数来实现此功能,具体请参照此函数的使用说明。
2. 我注意到组态王的命令语言窗口中能够写入的编程命令是有限制的,我的编程命令比较长,命令窗口中无法写下,请问如何解决?针对这种需求,组态王软件提供了自定义命令语言功能。
用户可以先将你的整个编程命令语言进行划分(比如按子功能块),然后每个子功能块都单独的在自定义命令语言中编写,最后在你要用到的命令语言窗口中象调用组态王提供的函数一样调用你自定义的函数来实现功能即可。
3. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗?同一时刻处理多项任务,会造成计算机软件在某一时刻负担过重,从而导致系统繁忙无法及时响应用户的操作。
组态王常用的命令语言函数
SQLConnect连接组态王和数据库。
语法:[ResultCode=]SQLConnect(ConnectionID, “ConnectString”;参数描述ConnectionID SQLConnct(产生的连接号ConnectString 连接语句ConnectString格式如下:“DSN=data source name [;attribute= value[;attribute = value]…”例子:组态王以sa身份登录(无密码和名为wang的SQL Server中的pubs数据库连接[ResultCode=]SQLConnect(ConnectionID,“DSN=wang;DA TABASE=pubs;UID=sa; PWD=”属性描述:SQLCreateTable以表格模板中定义的表格类型,在数据库中创建新表。
语法:[ResultCode=]SQLCreateTable(ConnectionID,TableName,TemplateName;参数描述ConnectionID SQLConnct(产生的连接号TableName 想要创建的数据库名TemplateName 表格模板名例子:下例创建一个名为kingview的新表,模板为table1SQLCreateTable(ConnectionID, “kingview”, “table1”SQLSelect访问数据库,得到一个特定的选择集。
选择集中的记录可以由SQLFirst(, SQLNext(, 等函数访问。
语法:[ResultCode=]SQLSelect(ConnectionID, TableName, BindList, WhereExpr, OrderByExpr;参数描述ConnectionID SQLConnct(产生的连接号TableName 表格名称BindList 记录体WhereExpression 指定函数起作用行的条件注意:如果列名是字符串,表达式必须在单引号中。
组态王命令语言函数手册
组态王命令语言函数手册工业自动化通用组态软件组态王version6.5命令语言函数速查手册北京亚控科技发展有限公司组态王命令语言函数速查手册1命令语言函数速查手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs此函数用于计算变量值的绝对值,使用格式如下:Abs(变量名或数值);返回值:整值或实型值;例如:Abs(14);返回值为14Abs(-7.5);返回值为7.5Abs(距离);返回内存模拟变量“距离”的绝对值。
Ack此函数常和按钮连接,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式:Ack(报警组名);或Ack(变量名);例如:Ack(全厂);或Ack(反应罐液位);ActivateApp此函数用于激活正在运行的窗口应用程序,使之获得输入焦点。
该函数主要用于配合函数SendKe ys的使用。
调用形式:ActivateApp(“ExeName”);参数描述ExeName应用程序的执行文件名北京亚控科技发展有限公司2组态王命令语言函数速查手册例如:激活Microsoft Word的正确调用为:ActivateApp("Word.exe");激活组态王:可使用ActivateApp("TouchVew.exe");ArcCos此函数用于计算变量值的反余弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcCos(变量名或数值);返回值:整值或实型值;例如:ArcCos(1);此函数返回值为0A rcCos(temp);此函数返回变量“temp”的反余弦值。
ArcSin此函数用于计算变量值的反正弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcSin(变量名或数值);返回值:整值或实型值;例如:ArcSin(1);此函数返回值为90A rcSin(temp);此函数返回变量“temp”的反正弦值。
组态王命令语言与函数
命令语言与函数常见问题解答北京亚控科技发展有限公司2009年7月目录1. 我希望用户能在不退出组态王运行软件的情况下启动一个其他的软件做其他处理,如何实现? (1)2. 我注意到组态王的命令语言窗口中能够写入的编程命令是有限制的,我的编程命令比较长,命令窗口中无法写下,请问如何解决? (1)3. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗? (1)4. 请问组态王能否显示十六进制的数据? (1)5. 请问如何编程来在组态王软件中生成一个随机的数据? (1)6. 请问如何编程能够方便地统计一项工序的运行时间?直接采用组态王的年月日时分秒做运算比较麻烦? (1)7. 能否在组态王画面上做一个按钮,实现键盘ctrl+shift切换输入法的功能?.28. 在定义数据改变命令语言和事件命令语言时,能不能使用远程变量来作为触发脚本执行的条件? (2)9. 组态王能否实现在运行时调用一个函数,实现类似键盘的“Print Screen SysRq”屏幕硬拷贝功能? (2)1. 我希望用户能在不退出组态王运行软件的情况下启动一个其他的软件做其他处理,如何实现?针对这种需求,组态王软件专门提供了一个StartApp()函数来实现此功能,具体请参照此函数的使用说明。
2. 我注意到组态王的命令语言窗口中能够写入的编程命令是有限制的,我的编程命令比较长,命令窗口中无法写下,请问如何解决?针对这种需求,组态王软件提供了自定义命令语言功能。
用户可以先将你的整个编程命令语言进行划分(比如按子功能块),然后每个子功能块都单独的在自定义命令语言中编写,最后在你要用到的命令语言窗口中象调用组态王提供的函数一样调用你自定义的函数来实现功能即可。
3. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗?同一时刻处理多项任务,会造成计算机软件在某一时刻负担过重,从而导致系统繁忙无法及时响应用户的操作。
因此建议用户在同一事件命令语言中不要做过多的程序操作。
精心整理组态王常用命令语言函数速查手册
精⼼整理组态王常⽤命令语⾔函数速查⼿册组态王命令语⾔函数⼿册―组态王‖⽀持使⽤内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下⾯依次介绍各个函数(函数名不区分⼤⼩写,按字母排序):Abs此函数⽤于计算变量值的绝对值,使⽤格式如下: Abs(变量名或数值); 返回值:整值或实型值;例如: Abs(14); 返回值为14 Abs(-7.5); 返回值为7.5Abs(距离); 返回内存模拟变量―距离‖的绝对值。
Ack对变量进⾏报警确认,或对报警组进⾏报警确认。
如果函数参数为变量名称,则只对该变量进⾏报警确认;如果函数参数为报警组名称,则确认所有属于该报警组及其⼦报警组的变量。
该函数的参数只能是变量名或报警组名,不可以为字符串变量。
此函数常⽤于按钮命令语⾔,当发⽣报警时,⽤此函数进⾏报警确认,它将产⽣确认报警事件。
调⽤格式: Ack(报警组名);或Ack(变量名);例如: Ack(全⼚);或 Ack(反应罐液位);ActivateApp activate['?kt?ve?t] vt.刺激;使活动;使活泼;使产⽣放射性app [?p]n.应⽤程序此函数⽤于激活正在运⾏的窗⼝应⽤程序,使之变为当前窗⼝。
获得输⼊焦点。
该函数也可配合函数SendKeys的使⽤。
调⽤形式: ActivateApp(―ExeName‖);参数:ExeName 应⽤程序的执⾏⽂件名例如:激活Microsoft Word的正确调⽤为: ActivateApp("Word.exe");ArcCos arc[ɑ?k] adj. 圆弧的;反三⾓函数的此函数⽤于计算变量值的反余弦值, 变量值的取值范围在[-1,1]之间,否则函数返回值⽆效。
调⽤格式: ArcCos(变量名或数值); 返回值:整值或实型值;例如:ArcCos(1); 此函数返回值为0 ArcCos(temp); 此函数返回变量―temp‖的反余弦值。
实用组态王命令语言
else
{ \\本站点\控制水流2=1; \Leabharlann 本站点\成品油液位1=\\本站点\
成品油液位1-1;}
if(\\本站点\原料油液位1==0) {\\本站点\原料油液位1=100;}
if(\\本站点\催化剂液位1==0) {\\本站点\催化剂液位1=100;}
if(\\本站点\成品油液位1==100) {\\本站点\成品油液位1=0;}
命令语言有六种形式,其区别在于命令语言执行的时机或条件不 同:
应用程序命令语言 热键命令语言 事件命令语言 数据改变命令语言 自定义函数命令语言 画面及动画命令语言
1、应用程序命令语言 可以在程序启动时、关闭时或在程序运行期间周期执行。
触发条件
运行系统程序退出时执行一次
在运行系统程序启动时执行一次 周期性的执行这段命令语言程序,无论 打开画面与否
if(menuindex==0) {ShowPicture("报警和事件画面");} if(menuindex==1&&childmenuindex==0) {ShowPicture("实时趋势曲线画面");} if(menuindex==1&&childmenuindex==1) {ShowPicture("历史趋势曲线画面");}
6、动画连接命令语言
当鼠标在该按钮上按下时执行一次。 当鼠标在该按钮上 弹起时执行一次。
当鼠标在该按钮上按住,没有弹 起时周期性执行该段命令语言。
举例:通过Exit()函数来实现退出组态王运行系统。
1、选择工具箱中的工具,在画此面函上数使画组一态个王运按行钮环,境退选出中。按钮并 单击鼠标右键,在弹出的下调拉用菜形单式:中E执xit行(O“ptio字n);符串替换” 命令,设置按钮文本为:系统退出参。数:
组态王命令语言函数手册
组态王命令语言函数手册工业自动化通用组态软件组态王version6.5命令语言函数速查手册北京亚控科技发展有限公司组态王命令语言函数速查手册1命令语言函数速查手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs此函数用于计算变量值的绝对值,使用格式如下:Abs(变量名或数值);返回值:整值或实型值;例如:Abs(14);返回值为14Abs(-7.5);返回值为7.5Abs(距离);返回内存模拟变量“距离”的绝对值。
Ack此函数常和按钮连接,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式:Ack(报警组名);或Ack(变量名);例如:Ack(全厂);或Ack(反应罐液位);ActivateApp此函数用于激活正在运行的窗口应用程序,使之获得输入焦点。
该函数主要用于配合函数SendKe ys的使用。
调用形式:ActivateApp(“ExeName”);参数描述ExeName应用程序的执行文件名北京亚控科技发展有限公司2组态王命令语言函数速查手册例如:激活Microsoft Word的正确调用为:ActivateApp("Word.exe");激活组态王:可使用ActivateApp("TouchVew.exe");ArcCos此函数用于计算变量值的反余弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcCos(变量名或数值);返回值:整值或实型值;例如:ArcCos(1);此函数返回值为0A rcCos(temp);此函数返回变量“temp”的反余弦值。
ArcSin此函数用于计算变量值的反正弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcSin(变量名或数值);返回值:整值或实型值;例如:ArcSin(1);此函数返回值为90A rcSin(temp);此函数返回变量“temp”的反正弦值。
精心整理组态王常用命令语言函数速查手册讲解
组态王命令语言函数手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs此函数用于计算变量值的绝对值,使用格式如下: Abs(变量名或数值); 返回值:整值或实型值;例如: Abs(14); 返回值为14 Abs(-7.5); 返回值为7.5Abs(距离); 返回内存模拟变量“距离”的绝对值。
Ack对变量进行报警确认,或对报警组进行报警确认。
如果函数参数为变量名称,则只对该变量进行报警确认;如果函数参数为报警组名称,则确认所有属于该报警组及其子报警组的变量。
该函数的参数只能是变量名或报警组名,不可以为字符串变量。
此函数常用于按钮命令语言,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式: Ack(报警组名);或 Ack(变量名);例如: Ack(全厂);或 Ack(反应罐液位);ActivateApp activate['æktɪveɪt] vt.刺激;使活动;使活泼;使产生放射性app [æp]n.应用程序此函数用于激活正在运行的窗口应用程序,使之变为当前窗口。
获得输入焦点。
该函数也可配合函数SendKeys的使用。
调用形式: ActivateApp(“ExeName”);参数:ExeName 应用程序的执行文件名例如:激活Microsoft Word的正确调用为: ActivateApp("Word.exe");ArcCos arc[ɑːk] adj. 圆弧的;反三角函数的此函数用于计算变量值的反余弦值, 变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式: ArcCos(变量名或数值); 返回值:整值或实型值;例如:ArcCos(1); 此函数返回值为0 ArcCos(temp); 此函数返回变量“temp”的反余弦值。
组态王命令语言专题培训课件
7、画面命令语言
画面命令语言就是与画面显示与否有关系的命令语言程序。
if(\\本站点\原料油出料阀==0) { \\本站点\控制水流=3; } else { \\本站点\控制水流=1; \\本站点\原料油液位1=\\本站点\
原料油液位1-1; \\本站点\成品油液位1=\\本站点\
成品油液位1+1; }
报警
闪烁:\\本站点\原料油液位1>90||\\本站点\原料油液位1<10 隐含:\\本站点\原料油液位1>10&&\\本站点\原料油液位1<90
仪表 水平滑动杆
if(menuindex==0) {ShowPicture("报警和事件画面");} if(menuindex==1&&childmenuindex==0) {ShowPicture("实时趋势曲线画面");} if(menuindex==1&&childmenuindex==1) {ShowPicture("历史趋势曲线画面");}
组态王命令语 言
1、应用程序命令语言 可以在程序启动时、关闭时或在程序运行期间周期执行。
触发条件
运行系统程序退出时执行一次
在运行系统程序启动时执行一次 周期性的执行这段命令语言程序,无论 打开画面与否
命令语言编辑区
运算符输入
2、热键命令语言 “热键命令语言”链接到工程人员指定的热键上,软件运 行期间,工程人员随时按下键盘上相应的热键都可以启动 这段命令语言程序。
用ShowPicture()、 ClosePicture()函数实现画面切换
1)新建两个画面:报警和事件画面、实时趋势曲线画 面和历史趋势曲线画面
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if(\\本站点\原料油液位1==0) {\\本站点\原料油液位1=100;}
if(\\本站点\催化剂液位1==0) {\\本站点\催化剂液位1=100;} if(\\本站点\成品油液位1==100) {\\本站点\成品油液位1=0;}
5.2 命令语言语法
命令语言程序的语法与一般C 程序的语法没有大的区 别,每一程序语句的末尾应该用分号“;”结束,在 使用if…else…、while()等语句时,其程序要用花括 号“{ }”括起来。 1. 运算符 用运算符连接变量或常量就可以组成较简单的命令语 言语句,如赋值、比较、数学运算等。命令语言中可 使用的运算符以及算符优先级与连接表达式相同,运 算符有以下几种。 运算符的优先级:下面列出算符的运算次序,首先计 算最高优先级的算符,再依次计算较低优先级的算符。 同一行的算符有相同的优先级。
•下一页 •返回
1. 运算符
1. 常用的格式字符串有: (1) 格式指示符: %d 带符号十进制整数。 %f带符号十进制小数形式(默认6位小数)。 %c输出一个字符。 d ----- 以十进制整数进行输出 o ----- 以八进制数进行输出 x ----- 以十六进制数进行输出 f ----- 以小数形式进行输出
•上一页 •下一页 •返回
7、画面命令语言
画面命令语言就是与画面显示与否有关系的命令语言程序。 if(\\本站点\原料油出料阀==0) { \\本站点\控制水流=3; } else { \\本站点\控制水流=1; \\本站点\原料油液位1=\\本站点\ 原料油液位1-1; \\本站点\成品油液位1=\\本站点\ 成品油液位1+1; }
7、画面命令语言
画面命令语言就是与画面显示与否有关系的命令语言 程序。画面命令语言定义在画面属性中。打开一个画 面,选择菜单“编辑/画面属性”,或用鼠标右键单击 画面,在弹出的快捷菜单中选择“画面属性”菜单项, 或按下<Ctrl>+<W>键,打开画面属性对话框,在对话 框上单击“命令语言…”按钮,弹出画面命令语言编辑 器。 画面命令语言分为三个部分:显示时、存在时、隐含 时。 显示时:打开或激活画面为当前画面,或画面由隐含 变为显示时执行一次。
•上一页 •下一页 •返回
7、画面命令语言
存在时:画面在当前显示时,或画面由隐含变为显示 时周期性执行,可以定义指定执行周期,在“存在时” 中的“每…毫秒”编辑框中输入执行的周期时间。 隐含时:画面由当前激活状态变为隐含或被关闭时执 行一次。只有画面被关闭或被其他画面完全遮盖时, 画面命令语言才会停止执行。只与画面相关的命令语 言可以写到画面命令语言里——如画面上动画的控制 等,而不必写到后台命令语言中——如应用程序命令 语言等,这样可以减轻后台命令语言的压力,提高系 统运行的效率。
3、事件命令语言
事件命令语言是指当规定的表达式的条件成立时执行的命 令语言。如某个变量等于定值,某个表达式描述的条件成 立。在工程浏览器中选择命令语言—事件命令语言,在浏 览器右侧双击“新建……”,弹出事件命令语言编辑器,事 件命令语言有三种类型: 发生时:事件条件初始成立时执行一次。 存在时:事件存在时定时执行,在“每……毫秒”编辑框 中输入执行周期,则当事件条件成立存在期间周期性执行 命令语言。 消失时:事件条件由成立变为不成立时执行一次。 事件描述:指定命令语言执行的条件。 备注:对该命令语言做一些说明性的文字。离散变量名或 表达式都可以作为事件。
4、数据改变命令语言
数据改变命令语言触发的条件是在变量 或变量的域值变化到超出数据字典中所 定义的变化灵敏度时,它们就被触发执 行一次。
4、数据改变命令语言
•在命令语言编辑器“变量[.域]”编辑框中输入或
通过单击“?”按钮来选择变量名称(如:原 料罐液位)或变量的域(如:原料罐液 位.Alarm)。 •这里可以连接任何类型的变量和变量的域,如 离散型、整型、实型、字符串型等。当连接的 变量的值发生变化时,系统会自动执行该命令 语言程序。数据改变命令语言可以按照需要定 义多个。 •注意:在使用“事件命令语言”或“数据改变 命令语言”过程中要注意防止死循环。
应用程序命令语言 热键命令语言 事件命令语言 数据改变命令语言 自定义函数命令语言 画面及动画命令语言
后台命令语言
:
其中 应用程序命令语言、热键命令语言、事件 命令语言、数据改变命令语言可以称为“后台 命令语言”,它们的执行不受画面打开与否的 限制,只要后台任务” 和“特殊/停止执行后台任务”来控制所有这些 命令语言是否执行。而画面和动画连接命令语 言的执行不受影响。也可以通过修改系统变量 “$启动后台命令语言”的值来实现上述控制, 该值置0 时停止执行,置1 时开始执行。
逻辑运算符的“真值表”
a 真 真 假 假 b 真 假 真 假 !a 假 假 真 真 !b 假 真 假 真 a&&b 真 假 假 假 a||b 真 真 真 假
若a=2,b=4,则a&&b的值为1。因为a,b的值均为非0,被认为是 “真”,因此a&&b的值为“真”,表达式a&&b的值为1。
若a=1,b=4,则: (1)a>b的值为0。因为a=1,b=4,所以a>b的值 为假,即表达式a>b的值为0。 (2)a!=b的值为1。 (3)a==b>=0的值为1。因为“>=”优先级比 “==”的优先级要高,所以b>=0先做,结果为1 ;再做==运算符,a==1成立,所以整个表达式 的值为1。 (4)b>=0==a的值为1。
•上一页 •下一页 •返回
5.2 命令语言语法
3. IF-ELSE 语句
IF—ELSE 语句用于按表达式的状态有条件地执行不同 的程序,可以嵌套使用。语法为: IF(表达式) { 一条或多条语句; } ELSE { 一条或多条语句; } •上一页 •下一页 •返回
5.2 命令语言语法
例1: if (step = = 3) 颜色=”红色”;//上述语句表示当变量step 与数字3 相等 时,将变量颜色置为“红色”(变量“颜色”为内存 字符串变量) 例2: if(出料阀 = = 1) 出料阀=0; //将离散变量“出料阀”设为0状态 else 出料阀=1; 上述语句表示将内存离散变量“出料阀”设为相反状 •上一页 •下一页 •返回 态。If-else 里是单条语句可以省略“ { }”。
下一页 返回
命令语言都是靠事件触发执行的,如定时、数据的变化、键盘键 的按下、鼠标的点击等; 命令语言的格式类似C语言的格式,具有完备的词法语法查错功 能和丰富的运算符、数学函数、字符串函数、控件函数、SQL 函 数和系统函数; 组态王的命令语言编辑环境已经编好,用户只要按规范编写程序 段即可。 根据事件和功能的不同,命令语言有六种形式,其区别在于命令语言 执行的时机或条件不同:
1、应用程序命令语言 可以在程序启动时、关闭时或在程序运行期间周期执行。
运行系统程序退出时执行一次 触发条件 在运行系统程序启动时执行一次 周期性的执行这段命令语言程序,无论 打开画面与否 关键字选择 命令语言编辑区
函数选择 变量选择
运算符输入
2、热键命令语言
“热键命令语言”链接到工程人员指定的热键上,软件 运行期间,工程人员随时按下键盘上相应的热键都可 以启动这段命令语言程序。热键命令语言可以指定使 用权限和操作安全区。 输入热键命令语言时,在工程浏览器的目录显示区, 选择“文件\命令语言\热键命令语言”,双击右边 的内容显示区出现“新建…”图标,弹出热键命令语言 编辑器。 热键定义,当Ctrl 和Shift 左边的复选框被选中时,表 示此键有效。 热键定义区的右边为键按钮选择区,用鼠标单击此按 钮,则弹出对话框。
6、动画连接命令语言
当鼠标在该按钮上按下时执行一次。 当鼠标在该按钮上 弹起时执行一次。
当鼠标在该按钮上按住,没有弹 起时周期性执行该段命令语言。
6、动画连接命令语言
按住时:当鼠标在该按钮上按住,或与该连接相关联 的热键按住,没有弹起时周期性执行该段命令语言。 按住时命令语言连接可以定义执行周期,在按钮后面 的“毫秒”标签编辑框中输入按钮被按住时命令语言 执行的周期。 动画连接命令语言可以定义关联的动作热键,单击 “等价键”中的“无”按钮,可以选择关联的热键, 也可以选择<Ctrl>、<Shift>与之组成组合键。运行时, 按下此热键,效果同在按钮上按下鼠标键相同。 定义有动画连接命令语言的图素可以定义操作权限和 安全区,只有符合安全条件的用户登录后,才可以操 作该按钮。 •上一页 •返回
项目五 命令语言
任务一 命令语言的类型 任务二 命令语言语法
下一页
返回
任务一 命令语言的类型
5.1.1任务目标
熟悉组态王中命令语言的类型,掌握各种命令语言编辑 器的使用方法。
5.1.2任务分析
组态王中的命令语言在语法上类似C语言,工程人员可 以利用命令语言来增强应用程序的灵活性、处理一些算 法和操作等。 命令语言包括:应用程序命令语言、热键命令语言、事 件命令语言、数据改变命令语言、自定义函数命令语言 和画面命令语言等。 各种命令语言都是要通过“命令语言编辑器”编辑输入 并进行语法检查,在运行系统中进行编译执行,用户只 要按规范编写程序段即可。
5.2 命令语言语法
2. 赋值语句 赋值语句用得最多,语法如下: 变量(变量的可读写域)= 表达式; 可以给一个变量赋值,也可以给可读写变量的域赋值。 例如: 自动开关=1; 表示将自动开关置为开(1表示开,0表示 关) 颜色=2; 将颜色置为黑色(如果数字2代表黑色) 反应罐温度.priority=3; 表示将反应罐温度的报警优先 级设为3
上一页
下一页
返回
2、热键命令语言 举例
使用热键命令语言来实现:当按下F1 键时,原料油出料阀被开启或关闭。 1)在工程浏览器左侧的“工程目录显示区” →“命令语言” →“热键命 令语言” →新建图标→弹出“热键命令语言”编辑对话框; 2)单击“键”按钮→ 选择“F1”键后; 3)在命令语言编辑区中输入如下命令语言: if (\\本站点\原料油出料阀 = = 1 ) \\本站点\原料油出料阀 = 0; else \\本站点\原料油出料阀 = 1; 4)单击“确认”按钮关闭对话框。