项目5组态王命令语言.ppt
《项目5组态王命令语言.ppt》由会员分享,可在线阅读,更多相关《项目5组态王命令语言.ppt(62页珍藏版)》请在三一办公上搜索。
1、项目五 命令语言,任务一 命令语言的类型任务二 命令语言语法,下一页,返回,任务一 命令语言的类型,任务目标熟悉组态王中命令语言的类型,掌握各种命令语言编辑器的使用方法。任务分析组态王中的命令语言在语法上类似C语言,工程人员可以利用命令语言来增强应用程序的灵活性、处理一些算法和操作等。命令语言包括:应用程序命令语言、热键命令语言、事件命令语言、数据改变命令语言、自定义函数命令语言和画面命令语言等。各种命令语言都是要通过“命令语言编辑器”编辑输入并进行语法检查,在运行系统中进行编译执行,用户只要按规范编写程序段即可。,下一页,返回,命令语言都是靠事件触发执行的,如定时、数据的变化、键盘键的按下、
2、鼠标的点击等;命令语言的格式类似语言的格式,具有完备的词法语法查错功能和丰富的运算符、数学函数、字符串函数、控件函数、SQL 函数和系统函数;组态王的命令语言编辑环境已经编好,用户只要按规范编写程序段即可。根据事件和功能的不同,命令语言有六种形式,其区别在于命令语言执行的时机或条件不同:应用程序命令语言 热键命令语言 事件命令语言 数据改变命令语言 自定义函数命令语言 画面及动画命令语言,后台命令语言:,其中 应用程序命令语言、热键命令语言、事件命令语言、数据改变命令语言可以称为“后台命令语言”,它们的执行不受画面打开与否的限制,只要符合条件就可以执行。另外可以使用运行系统中的菜单“特殊/开始
3、执行后台任务”和“特殊/停止执行后台任务”来控制所有这些命令语言是否执行。而画面和动画连接命令语言的执行不受影响。也可以通过修改系统变量“$启动后台命令语言”的值来实现上述控制,该值置0 时停止执行,置1 时开始执行。,1、应用程序命令语言可以在程序启动时、关闭时或在程序运行期间周期执行。,触发条件,关键字选择,命令语言编辑区,变量选择,函数选择,运算符输入,在运行系统程序启动时执行一次,运行系统程序退出时执行一次,周期性的执行这段命令语言程序,无论打开画面与否,2、热键命令语言,“热键命令语言”链接到工程人员指定的热键上,软件运行期间,工程人员随时按下键盘上相应的热键都可以启动这段命令语言程
4、序。热键命令语言可以指定使用权限和操作安全区。输入热键命令语言时,在工程浏览器的目录显示区,选择“文件命令语言热键命令语言”,双击右边的内容显示区出现“新建”图标,弹出热键命令语言编辑器。热键定义,当Ctrl 和Shift 左边的复选框被选中时,表示此键有效。热键定义区的右边为键按钮选择区,用鼠标单击此按钮,则弹出对话框。,返回,上一页,下一页,2、热键命令语言,在此对话框中选择一个键,则此键被定义为热键,还可以与Ctrl 和Shift 形成组合键。热键命令语言可以定义安全管理,安全管理包括操作权限和安全区,两者可单独使用,也可合并使用。比如:设置操作权限为918。只有操作权限大于等于918的
5、操作员登录后按下热键时,才会激发命令语言的执行。,返回,上一页,下一页,2、热键命令语言,举例使用热键命令语言来实现:当按下F1 键时,原料油出料阀被开启或关闭。1)在工程浏览器左侧的“工程目录显示区”“命令语言”“热键命令语言”新建图标弹出“热键命令语言”编辑对话框;2)单击“键”按钮 选择“F1”键后;3)在命令语言编辑区中输入如下命令语言:if(本站点原料油出料阀=1)本站点原料油出料阀=0;else 本站点原料油出料阀=1;4)单击“确认”按钮关闭对话框。,3、事件命令语言,事件命令语言是指当规定的表达式的条件成立时执行的命令语言。如某个变量等于定值,某个表达式描述的条件成立。在工程浏
6、览器中选择命令语言事件命令语言,在浏览器右侧双击“新建”,弹出事件命令语言编辑器,事件命令语言有三种类型:发生时:事件条件初始成立时执行一次。存在时:事件存在时定时执行,在“每毫秒”编辑框中输入执行周期,则当事件条件成立存在期间周期性执行命令语言。消失时:事件条件由成立变为不成立时执行一次。事件描述:指定命令语言执行的条件。备注:对该命令语言做一些说明性的文字。离散变量名或表达式都可以作为事件。,4、数据改变命令语言,数据改变命令语言触发的条件是在变量或变量的域值变化到超出数据字典中所定义的变化灵敏度时,它们就被触发执行一次。,在命令语言编辑器“变量.域”编辑框中输入或通过单击“?”按钮来选择
7、变量名称(如:原料罐液位)或变量的域(如:原料罐液位.Alarm)。这里可以连接任何类型的变量和变量的域,如离散型、整型、实型、字符串型等。当连接的变量的值发生变化时,系统会自动执行该命令语言程序。数据改变命令语言可以按照需要定义多个。注意:在使用“事件命令语言”或“数据改变命令语言”过程中要注意防止死循环。,4、数据改变命令语言,5、自定义函数命令语言,提供用户自定义函数功能。用户可以根据组态王的基本语法及提供的函数自己定义各种功能更强的函数,通过这些函数能够实现工程特殊的需要。,对于图素,有时一般的动画连接表达式完成不了工作,而程序只需要点击一下画面上的按钮等图素才执行,如点击一个按钮,执
8、行一连串的动作,或执行一些运算、操作等。这时可以使用动画连接命令语言。该命令语言是针对画面上的图素的动画连接的,组态王中的大多数图素都可以定义动画连接命令语言。如在画面上放置一个按钮,双击该按钮,弹出对话框。在“命令语言连接”选项中包含三个选项:按下时:当鼠标在该按钮上按下时,或与该连接相关联的热键按下时执行一次。弹起时:当鼠标在该按钮上弹起时,或与该连接相关联的热键弹起时执行一次。,返回,上一页,下一页,6、动画连接命令语言,6、动画连接命令语言,当鼠标在该按钮上按下时执行一次。,当鼠标在该按钮上弹起时执行一次。,当鼠标在该按钮上按住,没有弹起时周期性执行该段命令语言。,按住时:当鼠标在该按
9、钮上按住,或与该连接相关联的热键按住,没有弹起时周期性执行该段命令语言。按住时命令语言连接可以定义执行周期,在按钮后面的“毫秒”标签编辑框中输入按钮被按住时命令语言执行的周期。动画连接命令语言可以定义关联的动作热键,单击“等价键”中的“无”按钮,可以选择关联的热键,也可以选择、与之组成组合键。运行时,按下此热键,效果同在按钮上按下鼠标键相同。定义有动画连接命令语言的图素可以定义操作权限和安全区,只有符合安全条件的用户登录后,才可以操作该按钮。,返回,上一页,6、动画连接命令语言,画面命令语言就是与画面显示与否有关系的命令语言程序。画面命令语言定义在画面属性中。打开一个画面,选择菜单“编辑/画面
10、属性”,或用鼠标右键单击画面,在弹出的快捷菜单中选择“画面属性”菜单项,或按下+键,打开画面属性对话框,在对话框上单击“命令语言”按钮,弹出画面命令语言编辑器。画面命令语言分为三个部分:显示时、存在时、隐含时。显示时:打开或激活画面为当前画面,或画面由隐含变为显示时执行一次。,返回,上一页,下一页,7、画面命令语言,存在时:画面在当前显示时,或画面由隐含变为显示时周期性执行,可以定义指定执行周期,在“存在时”中的“每毫秒”编辑框中输入执行的周期时间。隐含时:画面由当前激活状态变为隐含或被关闭时执行一次。只有画面被关闭或被其他画面完全遮盖时,画面命令语言才会停止执行。只与画面相关的命令语言可以写
11、到画面命令语言里如画面上动画的控制等,而不必写到后台命令语言中如应用程序命令语言等,这样可以减轻后台命令语言的压力,提高系统运行的效率。,返回,上一页,下一页,7、画面命令语言,7、画面命令语言画面命令语言就是与画面显示与否有关系的命令语言程序。,if(本站点原料油出料阀=0)本站点控制水流=3;else本站点控制水流=1;本站点原料油液位1=本站点原料油液位1-1;本站点成品油液位1=本站点成品油液位1+1;,if(本站点催化剂出料阀=0)本站点控制水流1=3;else本站点控制水流1=1;本站点催化剂液位1=本站点催化剂液位1-1;本站点成品油液位1=本站点成品油液位1+1;,if(本站点
12、成品油出料阀=0)本站点控制水流2=3;else本站点控制水流2=1;本站点成品油液位1=本站点成品油液位1-1;,if(本站点原料油液位1=0)本站点原料油液位1=100;if(本站点催化剂液位1=0)本站点催化剂液位1=100;if(本站点成品油液位1=100)本站点成品油液位1=0;,5.2 命令语言语法,命令语言程序的语法与一般C 程序的语法没有大的区别,每一程序语句的末尾应该用分号“;”结束,在使用ifelse、while()等语句时,其程序要用花括号“”括起来。1.运算符用运算符连接变量或常量就可以组成较简单的命令语言语句,如赋值、比较、数学运算等。命令语言中可使用的运算符以及算符
13、优先级与连接表达式相同,运算符有以下几种。运算符的优先级:下面列出算符的运算次序,首先计算最高优先级的算符,再依次计算较低优先级的算符。同一行的算符有相同的优先级。,返回,下一页,1.运算符,1.常用的格式字符串有:(1)格式指示符:%d 带符号十进制整数。%f带符号十进制小数形式(默认6位小数)。%c输出一个字符。d-以十进制整数进行输出 o-以八进制数进行输出 x-以十六进制数进行输出 f-以小数形式进行输出,逻辑运算符的“真值表”,若a=2,b=4,则a&b的值为1。因为a,b的值均为非0,被认为是“真”,因此a&b的值为“真”,表达式a&b的值为1。,若a=1,b=4,则:(1)ab的
14、值为0。因为a=1,b=4,所以ab的值为假,即表达式ab的值为0。(2)a!=b的值为1。(3)a=b=0的值为1。因为“=”优先级比“=”的优先级要高,所以b=0先做,结果为1;再做=运算符,a=1成立,所以整个表达式的值为1。(4)b=0=a的值为1。,5.2 命令语言语法,2.赋值语句赋值语句用得最多,语法如下:变量(变量的可读写域)=表达式;可以给一个变量赋值,也可以给可读写变量的域赋值。例如:自动开关=1;表示将自动开关置为开(1表示开,0表示关)颜色=2;将颜色置为黑色(如果数字2代表黑色)反应罐温度.priority=3;表示将反应罐温度的报警优先级设为3,返回,上一页,下一页
15、,5.2 命令语言语法,3.IF-ELSE 语句IFELSE 语句用于按表达式的状态有条件地执行不同的程序,可以嵌套使用。语法为:IF(表达式)一条或多条语句;ELSE一条或多条语句;,返回,上一页,下一页,5.2 命令语言语法,例1:if(step=3)颜色=”红色”;/上述语句表示当变量step 与数字3 相等时,将变量颜色置为“红色”(变量“颜色”为内存字符串变量)例2:if(出料阀=1)出料阀=0;/将离散变量“出料阀”设为0状态else出料阀=1;上述语句表示将内存离散变量“出料阀”设为相反状态。If-else 里是单条语句可以省略“”。,返回,上一页,下一页,5.2 命令语言语法,
16、例3:if(step=3)颜色=”红色”;反应罐温度.priority=1;else颜色=”黑色”;反应罐温度.priority=3;上述语句表示当变量step 与数字3 相等时,将变量颜色置为“红色”(变量“颜色”为内存字符串变量),反应罐温度的报警优先级设为1;否则变量颜色置为“黑色”,反应罐温度的报警优先级设为3。,返回,上一页,下一页,5.2 命令语言语法,While()语句当while()括号中的表达式条件成立时,循环执行后面“”内的程序。语法如下:while(表达式)一条或多条语句(以;结尾),返回,上一页,下一页,5.2 命令语言语法,例1:while(循环=10)ReportS
17、etCellvalue(实时报表,循环,1,原料罐液位);循环=循环+1;当变量“循环”的值小于等于10 时,向报表第一列的110 行添入变量“原料罐液位”的值。应该注意使whlie 表达式条件满足,然后退出循环。,返回,上一页,下一页,5.2 命令语言语法,5.注释方法命令语言程序添加注释,有利于程序的可读性,也方便程序的维护和修改。组态王的所有命令语言中都支持注释。注释的方法分为单行注释和多行注释两种。注释可以在程序的任何地方进行。单行注释在注释语句的开头加注释符“/”:多行注释是在注释语句前加“/*”,在注释语句后加“*/”。多行注释也可以用在单行注释上。,返回,上一页,下一页,5.2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 项目 组态 命令 语言

链接地址:https://www.31ppt.com/p-5888702.html