MCGS脚本程序要点

上传人:汽*** 文档编号:560056998 上传时间:2023-02-01 格式:DOCX 页数:19 大小:817.26KB
返回 下载 相关 举报
MCGS脚本程序要点_第1页
第1页 / 共19页
MCGS脚本程序要点_第2页
第2页 / 共19页
MCGS脚本程序要点_第3页
第3页 / 共19页
MCGS脚本程序要点_第4页
第4页 / 共19页
MCGS脚本程序要点_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《MCGS脚本程序要点》由会员分享,可在线阅读,更多相关《MCGS脚本程序要点(19页珍藏版)》请在金锄头文库上搜索。

1、MCGS 脚本程序本专题将从以下几个方面介绍MCGS脚本程序:脚本程序简介脚本语言编辑环境 脚本程序语言要素 脚本程序基本语句 脚本程序的查错和运行脚本程序简介对于大多数简单的应用系统,MCGS的简单组态就可完成。只有比较复杂的 系统,才需要使用脚本程序,但正确地编写脚本程序,可简化组态过程,大大提 高工作效率,优化控制过程。用户脚本程序是由用户编制的、用来完成某种特定的流程控制和操作处理的 程序。它被封装在一个功能构件里(称为脚本程序功能构件),在后台由独立的 线程来运行和处理,能够避免由于单个脚本程序的错误而导致整个系统的瘫痪。在MCGS中,脚本语言的编程语法非常类似于普通的Basic语言

2、,但在概念和 使用上更简单直观,力求做到使大多数普通用户都能正确、快速地掌握和使用。脚本程序在 MCGS 组态软件中有四种应用场合,分别为: 在“运行策略”中的“脚本程序构件中使用; 在“菜单”属性设置中的“脚本程序”中使用,作为菜单的一个辅助功 能运行; 在“用户窗口”属性设置中的“启动脚本、“循环脚本、“退出脚本” 中使用; 更常见的用法是应用在动画界面的事件中,如在窗口中的“标准按钮 属性设置中的“脚本程序”中使用.MCGS引入的事件驱动机制,与VB或VC中的事件驱动机制类似,比如:对 用户窗口,有装载,卸载事件;对窗口中的控件,有鼠标单击事件,键盘按键事 件等等。这些事件发生时,就会触

3、发一个脚本程序,执行脚本程序中的操作。脚本语言编辑环境脚本程序编辑环境是用户书写脚本语句的地方。脚本程序编辑环境主要由脚 本程序编辑框、编辑功能按钮、MCGS操作对象列表和函数列表、脚本语句和表 达式4 个部分构成,分别说明如下:脚本程序编辑框用于书写脚本程序和脚本注释,用户必须遵照MCGS规定 的语法结构和书写规范书写脚本程序,否则语法检查不能通过.编辑功能按钮提供了文本编辑的基本操作,用户使用这些操作可以方便 操作和提高编辑速度。比如,在脚本程序编辑框中选定一个函数,然后按下帮助按 钮,MCGS将自动打开关于这个函数的在线帮助,或者,如果函数拼写错误,MCGS 将列出与所提供的名字最接近函

4、数的在线帮助。脚本语句和表达式列出了 MCGS使用的三种语句的书写形式和MCGS允许 的表达式类型。用鼠标单击要选的语句和表达式符号,在脚本编辑处光标所在的 位置填上语句或表达式的标准格式.比如,用鼠标单击ifthen按钮,则MCGS自 动提供一个ifthen结构,并把输入光标停到合适的位置上。MCGS对象和函数列表以树结构的形式,列出了工程中所有的窗口、策略、 设备、变量、系统支持的各种方法、属性以及各种函数,以供用户快速的查找和 使用。比如,可以在用户窗口树中,选定一个窗口: 窗口 0”,打开窗口 0下 的”方法”,然后双击Open函数,则MCGS自动在脚本程序编辑框中,添加了 一行语句:

5、用户窗口窗口 0。Open(),通过这行语句,就可以完成窗口打开的 工作.脚本程序语言要素在MCGS中,脚本程序在编写时使用的语言非常类似普通的Basic语言,本节 对脚本程序的语言要素进行详细的说明。数据类型MCGS脚本程序语言使用的数据类型只有三种: 开关型:表示开或者关的数据类型,通常0表示关,非0表示开。也可 以作为整数使用; 数值型:值在3.4E38范围内; 字符型:最多512个字符组成的字符串; 变量、常量及系统函数变量:脚本程序中,用户不能定义子程序和子函数,其中数据对象可以看作 是脚本程序中的全局变量,在所有的程序段共用。可以用数据对象的名称来读写 数据对象的值,也可以对数据对

6、象的属性进行操作。开关型、数值型、字符型三种数据对象分别对应于脚本程序中的三种数据类 型.在脚本程序中不能对组对象和事件型数据对象进行读写操作,但可以对组对 象进行存盘处理.常量: 开关型常量:0或非0的整数,通常0表示关,非0表示开; 数值型常量:带小数点或不带小数点的数值,如:12。45, 100 字符型常量:双引号内的字符串,如:“OK”,“正常”系统变量:MCGS系统定义的内部数据对象作为系统内部变量,在脚本程序 中可自由使用,在使用系统变量时,变量的前面必须加“$”符号,如$Date。系统函数:MCGS系统定义的内部函数,在脚本程序中可自由使用,在使用 系统函数时,函数的前面必须加“

7、 !”符号,如!abs().属性和方法:MCGS系统内的属性和方法都是相对于MCGS的对象而说的,引 用对象的方法可以参见下个部分。注:有关系统变量和系统函数详细的使用方法,请参见MCGS参考手册 MCGS对象MCGS的对象形成一个对象树,树根从“MCGS”开始,MCGS对象的属性就是 系统变量,MCGS对象的方法就是系统函数。MCGS对象下面有“用户窗口”对象, “设备”对象,“数据对象” 等子对象。“用户窗口”以各个用户窗口作为子对 象,每个用户窗口对象以这个窗口里的动画构件作为子对象。使用对象的方法和属性,必须要引用对象,然后使用点操作来调用这个对象 的方法或属性。为了引用一个对象,需要

8、从对象根部开始引用,这里的对象根部, 是指可以公开使用的对象。MCGS对象,用户窗口、设备和数据对象都是公开对象, 因此,语句 InputETime = $Time是正确的,而语句 InputETime = MCGS。$Time 也是正确的,同样,调用函数!Beep()时,也可以采用MCGS.! Beep()的形式。 可以写:窗口 0。Open (),也可以写:MCGS用户窗口窗口 0。Open (),还可 以写:用户窗口。窗口 0. Open()。但是,如果要使用控件,就不能只写:控件O.Left,而必须写:窗口 0。控件0.Left,或:用户窗口。窗口 0。控件0.Left。 在对象列表框

9、中,双击需要的方法和属性,MCGS将自动生成最小可能的表达式。 事件在MCGS的动画界面组态中,可以组态处理动画事件。动画事件是在某个对 象上发生的,可能带有参数也可能没有参数的动作驱动源。如用户窗口上可以发 生事件:Load,Unload,分别在用户窗口打开和关闭时触发。可以对这两个事件 组态一段脚本程序,当事件触发时(用户窗口打开或关闭时)被调用。用户窗口的Load和Unload事件是没有参数的,但是MouseMove事件有,在 组态这个事件时,可以在参数组态中,选择把MouseMove事件的几个参数连接到 数据对象上,这样,当MouseMove事件被触发时,就会把MouseMove的参数

10、,包 括鼠标位置,按键信息等送到连接的数据对象,然后,在事件连接的脚本程序中, 就可以对这些数据对象进行处理。表达式由数据对象(包括设计者在实时数据库中定义的数据对象、系统内部数据对 象和系统函数)、括号和各种运算符组成的运算式称为表达式,表达式的计算结 果称为表达式的值.当表达式中包含有逻辑运算符或比较运算符时,表达式的值只可能为0 (条 件不成立,假)或非0 (条件成立,真),这类表达式称为逻辑表达式;当表达式 中只包含算术运算符,表达式的运算结果为具体的数值时,这类表达式称为算术 表达式;常量或数据对象是狭义的表达式,这些单个量的值即为表达式的值。表 达式值的类型即为表达式的类型,必须是

11、开关型、数值型、字符型三种类型中的 一种。表达式是构成脚本程序的最基本元素,在MCGS的部分组态中,也常常需要 通过表达式来建立实时数据库与其对象的连接关系,正确输入和构造表达式是 MCGS的一项重要工作。运算符A乘方 *乘法 /除法 整除算术运算符+加法减法Mod取模运算逻辑运算符OR逻辑或XOR逻辑异或AND逻辑与NOT逻辑非比较运算符 大于=大于等于= 等于(注意,字符串比较需要使用字符串函数!St rCmp,不能直接使用等于运算符)=小于等于V 小于不等于运算符优先级按照优先级从高到低的顺序,各个运算符排列如下:()A*,/ , Mod+ , , = ,=,NOTAND, OR, XO

12、R基本辅助函数作为脚本语言的一部分,MCGS提供了基本辅助函数,这些函数主要不是作为 组态软件的功能提供的,而是为了完成脚本语言的功能提供的这些函数包括以 下几类:位操作函数,数学函数,字符串函数,时间函数。位操作函数提供了对整型数据中的位进行操作的功能。可以用开关型变量来 提供这里的整型数据。在脚本程序编辑器里,位操作函数都列在数学函数中,包 括按位与(! Bit And),按位或(! Bit Or),按位异或(!Bi tXor),按位取反(! Bit No t),清除数据中的某一位或把某一位置0 (! Bi tClear),设置数据中的某 一位或把某一位置1 (! BitSet),检查数据

13、中某一位是否为1 (! BitTest),左 移和右移(!BitLShift, ! BitRShift)。数学函数提供了常见的数学操作,包括开方,随机数生成以及三角函数等。字符串函数提供了与字符串相关的操作,包括字符串比较,截取,搜索以及 格式化等。时间函数提供了和时间计算相关的函数时间可以表达为一个字符串的形式, 但是,为了方便进行时间计算,在MCGS中,使用了一种内部格式来保存时间的值, 这种内部格式的时间值可以保存在一个开关型变量中,同时,可以使用函 数!TimeStr2I和!TimeI2Str来完成字符串形式时间量和内部格式形式时间量的 转换,如:Al 二!TimeStr2I(“200

14、13-2 12:23:23”),这里 Al 是一个开关型 数据对象,获得了一个内部形式的时间量,而再用InputETime= !TimeI2Str(A1, “Y-%m-%d %H: %M: %S”)又可以把保存在Al中的内部形式的时间量转 换为字符串形式。当时间转换为内部格式后,就可以进行时间的运算。运算完毕 后,再转换为字符串形式的时间,以便输出和使用。具体函数的使用方法,可以参照MCGS参考手册中的说明。功能函数为了提供辅助的系统功能,MCGS提供了功能函数。功能函数主要包括以下 几类:运行环境函数,数据对象函数,系统函数,用户登录函数,定时器操作, 文件操作,ODBC函数,配方操作函数等

15、。运行环境函数和数据对象函数主要是提供了对MCGS内部各个对象操作的方 法。系统函数提供了系统功能,包括播放声音,启动程序,发出按键信息等等。 用户登录函数提供了用户登录和管理的功能。包括打开登录对话框,打开用 户管理对话框等等。定时器提供了 MCGS内建定时器的操作。包括对内建时钟的启动,停止,复位, 时间读取等操作。文件操作提供了对文件的操作,包括删除、拷贝文件,把文件拆开、合并, 寻找文件,和循环语句一起,可以遍历文件,在文件中进行读写操作。对CSV(逗 号分割的文本文件)进行读写操作等等。ODBC数据库函数提供了对ODBC数据源访问的机制,具体的使用方法可以参 看访问ODBC数据源一章。配方操作函数提供了访问配方数据的机制。这两类 函数使用了类似的编程机制。首先,为了访问一个ODBC数据源或配方数据,需要 建立一个有名字的连接,这个连接的名字在创建这个连接时指定,在进行数据操 作,以及关闭连接时,需要指定这个名字。其次,在连接中,规定了一个当前行的 概念,当前行使用捆绑函数绑定到一组变量上,在连接中使用位置移动函数上下 移动当前行到需要的位置上,就可以把需要位置上的数据从绑定的变量中读出 来。通过添加函数(AddNew),可以把当前绑定变量中的值作为一组新的数据加 入到连接中。通过删除函数ele

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号