SuKon软件脚本使用说明

上传人:m**** 文档编号:431528834 上传时间:2023-04-25 格式:DOC 页数:3 大小:52KB
返回 下载 相关 举报
SuKon软件脚本使用说明_第1页
第1页 / 共3页
SuKon软件脚本使用说明_第2页
第2页 / 共3页
SuKon软件脚本使用说明_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《SuKon软件脚本使用说明》由会员分享,可在线阅读,更多相关《SuKon软件脚本使用说明(3页珍藏版)》请在金锄头文库上搜索。

1、SuKon 人机界面 脚本应用说明1、采用与BASIC相类似的语法结构; 我们的脚本是采用Basic语法,语法相对固定。有些厂家采用的是C语言,如三菱;2、支持程序逻辑控制结构;SuKon人机脚本支持顺序、条件、循环等三大逻辑控制结构3、脚本的效率如何?是否推荐用户用很多的脚本? 实际上,脚本的效率是比较低的。主要原因是:从编译的角度来看,由于它是采用字符解析方式,而非Binary二进制的代码运行方式,从CPU的执行效率来看,后者显然快.因此,不建议用户使用大量的脚本。4. SUKON脚本的类型 脚本分三类:(1)一类是背景脚本,工程存在期间在任意画面都会运行的后台脚本,它只有定时触发脚本,运

2、行时间间隔最小为0,即开机后这段脚本一直在运行。(2)一类是在工程存在期间在任意画面都会运行的脚本,称为全局脚本,当SUKON加载工程时,脚本就开始运行,直到工程结束,它的定时触发脚本的运行时间间隔最小为0.5秒;(3)另一类就是在画面存在期间运行的脚本,称为画面脚本,当画面被加载时,画面脚本就开始运行,直至画面被关闭。全局脚本从运行条件分,可以分为四大类:(1)初始化:在工程加载时运行,这个脚本只在工程加载的时候运行,且只运行一次;(2)关闭:在工程关闭时运行,这个脚本只在工程关闭的时候运行,且只运行一次;(3)定时:在工程运行期间,每隔一段时间(如0.5s)就触发运行,直至工程结束。每个工

3、程可以设置多个定时触发运行的全局脚本。(4)位触发:在工程运行期间,当指定的位满足位触发条件时而执行的脚本,只要满足位触发的条件,脚本将被重复运行。位触发有四个条件:(1)TRUE:SUKON不停检测触发位的值,只要该值为TRUE,脚本将被执行;(2)FALSE:SUKON不停检测触发位的值,只要该值为FALSE,脚本将被执行;(3)上升沿:SUKON不停检测触发位的值,当该值从FALSE变TRUE,脚本将被执行;(4)下降沿:SUKON不停检测触发位的值,当该值从TRUE变FALSE,脚本将被执行; 画面脚本的分类同全局脚本一样。 5. SUKON脚本的语法(其他的详见脚本帮助) (1)SU

4、KON支持的脚本对设备的访问 SUKON-Script可以提供了一种直接有效的办法来设备地址,这种办法是通过符号来对地址进行直接访问。脚本对设备的访问写法含义举例B_;b_;对某个位进行访问B_I0.0:访问位地址I0.0b_HDX0.0:访问位地址HDX0.0W_;w_;对某个字进行访问W_IW0:访问字地址IW0b_HDW0:访问字地址HDW0B_连线#站号:地址W_连线#站号:地址当HMI挂接了多个自控设备时,“#”前面表示连线即设备,“:”前面表示要访问的站号。如果没有“#”即表示访问主连线,如果没有“:”即表示访问缺省站号B_2#2:I0.0:访问连线号为2的站号为2的位地址I0.0

5、;W_2#2:IW0:访问连线号为2的站号为2的字地址IW0;B_I0.0:访问缺省连线上的缺省站号的位地址I0.0;(2)常用的2种语法(1) 条件语句:if a=0 then if b=0 then c=0else c=1 endif endif(2)循环语句:(a) do a = 1 loop while b = y or b = Y (b)do a = 1 loop until b = y or b = Y (c)do until b = y or b = Y a=1 loop (d) do while b = y or b = Y a=1 loop(3)与脚本相关的特殊系统寄存器 W

6、_HSW233=1 /不通过Cache访问PLC (4)我们的脚本的缺陷 不支持数组类型6. 使用脚本应注意的问题 SUKON脚本的用法是很灵活的,往往可以实现一些PLC的逻辑,所以能够正确使用他,对整个系统来说,效率会比较高;但是事物总具有两面性,往往如果使用不当或是滥用的话,脚本会消耗大量的CPU时间,并最终影响整个工程的效率。总得来说,有以下几个问题需要谨慎处理。(1)在脚本中尽量不要使用过大的循环,如果脚本执行一次的循环次数太多,势必影响HMI在其他方面的效率(尤其是画面响应和数据采集的效率);(2)在脚本中尽量不要频繁访问外部寄存器(如PLC的寄存器等),由于串口通信比较慢,如果频繁

7、访问外部寄存器,则会导致脚本执行效率的严重降低。甚至也影响画面响应效率,当然,由于SUKON本地寄存器(HSX,HDX,HPX,HSW,HDW,HPW,RPW)就是SUKON的内存本身,所以不存在效率问题;(3)虽然SUKON每个画面的定时器(位触发脚本)分别最多允许有32个,但由于画面可以嵌套子画面,所以,同时运行的脚本个数可能远远不止这个数,但为了保证性能和效率,在任何时刻,同时运行在SUKON上的脚本以不超过16个为宜;(4)每个脚本的最大长度现在512行,但在实际使用中,脚本过长也会导致效率下降。注:各个常用脚本函数使用说明(1)NewStatAddr() 新的站号的地址 string

8、 = NewStatAddr(W_1:VW100,10) string = W_11:VW100 string = NewStatAddr(W_8:VW100,-1) string = W_7:VW100 (2) NewNoAddr ()新的偏移量的地址 string = NewNoAddr(W_HDW100,10) string = HDW110 string = NewNoAddr(W_HDW100,-10) string = HDW90 (3) ReadAddr() 读1个字地址的值 word = ReadAddr(W_HDW100); (4) WriteAddr() 写1个字地址的值

9、WriteAddr(W_HDW100,word); (5) D2Float()把2个连续字地址开始的双字取出,转化成浮点数 假设W_HDW100存储的双字是1.0 f = D2Float(W_HDW100); 则,f=1.0 (6) Float2D () 把浮点数转化成双字存储在2个连续字地址中 f = 1.0 Float2D(W_HDW100,f); (7) SleepA()-等待多少毫秒 SleepA(10) 等待10ms (8)NstringCompare()-比较某个地址字符串的数据是否相等,相等=1 不等=0 比如W_HDW100-数值首地址 ,123456-字符串数据 6-字符长度

10、 n = NStringCompare(W_HDW100, 123456, 6)(9) AddrStringCompare() 比较某2个地址字符串的数据是否相等,相等=1 不等=0 比如W_HDW100-数值首地址 ,W_HDW200-字符串数据 6-字符长度AddrStringCompare(W_HDW100, W_HDW200, 6)(10) F2S(),由浮点转换成字符串,可以指定格式,比如 F2S(W_HDW100, W_HDW200, 03.03f)(11)W2S(),由字转换成字符串,可以指定格式,如 W2S(W_HDW100, W_HDW200, 08d) (12) GetNewDate() 由输入日期以及天数的间隔,得到新的日期,比如W_HDW100-输入日期首地址 ,W_HDW200-新的日期地址 6-跨的天数,天数=0GetNewDate(W_HDW100, W_HDW200, 6) 3

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 工业自动化

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