好文档 - 专业文书写作范文服务资料分享网站

昆仑通态PLC - 图文 

天下 分享 时间: 加入收藏 我要投稿 点赞

? 10? mcgsTpc 中级培训教程 第二章 策略和脚本

2.1 运行策略和脚本程序介绍

运行策略是用户为实现对系统运行流程自由控制所组态生成的一系列功能块的总称。

运行策略能够按照预设的顺序和条件操作实时数据库,控制用户窗口状态,修改设备运行数据,提高控制过程的实时性和有序性。

根据运行策略的不同作用和功能,McgsPro组态件把运行策略分为后台任务、启动策略、退出策略、循环策略、用户策略、报警策略、事件策略及热键策略八种。

脚本程序是组态软件中的一种内置编程语言引擎。在McgsPro组态件中,脚本语言是一种语法上类似Basic的编程语言,有些HMI软件中也叫做“宏指令”。

脚本可以在运行策略、窗口启动脚本、窗口循环脚本、窗口退出脚本、窗口事件脚本、构件事件脚本、按钮脚本中应用。

2.2 脚本程序

2.2.1 简单脚本程序使用

脚本编辑环境是用户书写脚本语句的地方。脚本程序编辑环境主要由脚本编辑框、工具栏、对象和函数列表、脚本语句和表达式5个部分构成,分别说明如图2-2-1所示。

图 2-2-1 脚本编辑环境 图 2-2-2 脚本操作

对象和函数列表以树结构的形式,列出了工程中所有的窗口、策略、设备、变量、系统支持的各种方法、属性以及各种函数,以供用户快速的查找和使用。

比如,可以在用户窗口树中,选定一个窗口:“窗口0”,打开窗口0下的“方法”,双击Open函数,则McgsPro组态软件自动在脚本程序编辑框中,添加一行语句:MCGS.用户窗口.窗口0.Open(),通过这行

第二章 策略和脚本 ? 11? 语句,就可以完成窗口打开的工作,如图2-2-2所示。

按同样的方法,可以对数据对象、构件的方法进行操作。

所有能够在脚本中使用的对象名称(如窗口、变量、策略),需要遵守如下规则: ? 不能用以下的关键字命名:

if、then、else、endif、while、break、endwhile、and、or、xor、not、exit、break、byte、integer、single、float、string。 ? 不能以数字开头

? 不能含有以下的特殊字符:

`~!@#$%^&*()-=+\\\\|]}[{'\\\~!·#¥%……—*()——+|?,。《》/。 ? 不能为空 ? 不能为“_”

2.2.2 脚本逻辑控制语句使用

脚本程序是为了实现流程的控制及对象操作处理,包括如下语句:

赋值语句、条件语句、循环语句、退出语句、注释语句、声明语句、跳出语句。如图2-2-3所示。

图 2-2-3 语句种类 图 2-2-4 条件语句逻辑

2.2.2.1 赋值语句

赋值语句的形式为:数据对象 = 表达式。

它的具体含义是:把“=”右边表达式的运算值赋给左边的数据对象。如A=B/2,表示把B的值除以2后赋值给A。

赋值号左边必须是能够读写的数据对象,如:整型数据、数值型数据以及能进行写操作的内部数据对象,而组对象、只读的内部数据对象、系统函数以及常量,均不能出现在赋值号的左边,因为不能对这些对象进行写操作。如$Year=1,是错误用法,$Year是系统变量。

赋值号的右边为一个表达式,这个表达式的类型必须与左边数据对象值的类型相符合,否则系统会提

? 12? mcgsTpc 中级培训教程 示“类型不匹配”的错误信息。 2.2.2.2 条件语句

条件语句有如下三种形式:

形式一:IF 〖表达式〗 THEN 〖赋值语句或退出语句〗 形式二:IF 〖表达式〗 THEN

〖语句〗 ENDIF

形式三:IF 〖表达式〗 THEN

〖语句〗 ElSE

〖语句〗 ENDIF

注意:条件语句中的关键字不区分大小写,不支持“Else IF”语句。 2.2.2.3 循环语句

循环语句为WHILE和ENDWHILE,其结构为:

WHILE 〖条件表达式〗 … ENDWHILE

当条件表达式成立时(非零),循环执行WHILE和ENDWHILE之间的语句。直到条件表达式不成立(为零)时退出。 2.2.2.4 跳出语句

跳出语句为“Break”,用于跳出当前循环,必须在循环语句中使用。 2.2.2.5 退出语句

退出语句为“EXIT”,用于中断脚本程序的运行,停止执行其后面的语句。一般在条件语句中使用退出语句,以便在某种条件下,停止并退出脚本程序的执行。

2.2.3 临时变量和数组

McgsPro组态件引入了临时变量和数组,临时变量和数组只在当前脚本中有效,不同的脚本可以使用相同名称的临时变量和数组。

目前临时变量和数组支持字节型、整型、数值型、字符型四种数据类型。临时变量和数组声明语句使用DIM…AS。

如图2-2-5所示,分别定义了integer、float、string型变量和integer、float、string型数组。

第二章 策略和脚本 ? 13?

图 2-2-5 临时变量和数组用法

注意事项:

? 声明语句不能嵌套在其他任何语句中

? 定义数组时使用“A(100)”,调用数组中的某一地址时使用“A[1]” ? 定义的数组型变量下标是以1开始的

? 定义的数组型变量为动态大小数组,用户可以通过调用!ArrayGetsize和!ArrayResize两个函数来

获取或重置数组的大小。

2.2.4 设备命令脚本使用

McgsPro提供了设备命令函数,用于对设备窗口的父设备、子设备进行操作,其格式如下: !SetDevice(DevName,DevOp,CmdStr) 参数含义: DevName,字符型,设备名

DevOp,数值型,设备操作码

CmdStr,字符串,设备命令,只有当DevOp=6时CmdStr才有意义 DevOp取值范围及相应含义:

= 1,启动设备开始工作 = 2,停止设备的工作 = 3,测试设备的工作状态 = 4,启动设备工作一次

= 5,改变设备的工作周期,CmdStr包含新的工作周期,单位ms = 6,执行指定的设备命令,CmdStr中包含指定命令的格式

其中DevOp值为6时,CmdStr可以支持多种函数,如父设备的参数修改,子设备中通道数值读写,子设备的函数可以在每个驱动的帮助中查看。

? 14? mcgsTpc 中级培训教程 举例:

!SetDevice(通用串口父设备0,6,\表示修改父设备串口号。

2.3 运行策略

每种策略都由一系列功能模块组成。McgsPro组态件运行策略窗口中“启动策略”、“退出策略”、“后台任务”为系统固有的三个策略块,用户策略、循环策略、报警策略、事件策略、热键策略由客户根据工程需要自行定义,如图2-3-1所示。

图2-3-1 策略窗口

用户根据自己的需要,建立对应的策略后,点击“新增策略行”行,如图2-3-2所示。

或者通过右键操作来增加策略

图2-3-2 策略行建立

每一个策略行中,只有当策略条件成立时,系统才能对策略行中的脚本程序进行操作。通过对策略条件的设定(默认情况下,执行条件部分为真),用户可以自主的控制策略在什么时候、什么条件、什么状态下执行,如图2-3-3所示。

昆仑通态PLC - 图文 

?10?mcgsTpc中级培训教程第二章策略和脚本2.1运行策略和脚本程序介绍运行策略是用户为实现对系统运行流程自由控制所组态生成的一系列功能块的总称。运行策略能够按照预设的顺序和条件操作实时数据库,控制用户窗口状态,修改设备运行数据,提高控制过程的实时性和有序性。根据运行策略的不同作用和功能,McgsPro组态件
推荐度:
点击下载文档文档为doc格式
5n5dk0jmpz3qhtz4wh2h1h1yk7phau00shi
领取福利

微信扫码领取福利

微信扫码分享