力控触摸屏组态画面设计如何调用另一个工程的画面

当前位置: >>
力控组态软件快速入门
快速入门手册力控?eforcecon快速入门北京三维力控科技有限公司 快速入门手册第 1 章 组态软件综述 ................................................................................................1-1 1.1 力控产品概述 ................................................... 1-1 1.2 软件基本结构 ................................................... 1-1 1.3 新产品特点 ..................................................... 1-3 第 2 章 工程管理器....................................................................................................2-1 2.1 工程管理 ....................................................... 2-1 2.2 工具列表 ....................................................... 2-4 2.3 网络中心 ....................................................... 2-5 第 3 章 工程组态 .......................................................................................................3-1 3.1 定义外部设备及数据连接项 ....................................... 3-1 3.1.1 力控仿真设备 .......................................................................................3-1 3.1.2 建立数据库点并设置 IOLink ................................................................3-3 3.1.3 创建数据连接项 ...................................................................................3-5 3.1.4 外部设备编程 .......................................................................................3-6 3.2 以西门子 S7-200 为例 ............................................ 3-8 3.2.1 项目的硬件要求和实现功能 .................................................................3-8 3.2.2 定义外设 I/O 连接 ................................................................................3-8 3.2.3 定义数据库点及数据连接.................................................................. 3-10 3.2.4 外部设备编程 .................................................................................... 3-12 3.3 数据库点类型及点参数 .......................................... 3-15 3.4 工程组态画面 .................................................. 3-18 3.5 力控的运行系统 ................................................ 3-23 第 4 章 组态动画 .......................................................................................................4-1 4.1 基本概念 ....................................................... 4-1 4.1.1 对象 .....................................................................................................4-1 4.1.2 属性、方法、事件................................................................................4-1 4.1.3 对象的命名 ..........................................................................................4-1 4.2 力控的对象类型 ................................................. 4-2 4.2.1 普通图元 ..............................................................................................4-2 4.2.2 复合组件 ..............................................................................................4-3 4.2.3 后台组件 ..............................................................................................4-4 4.2.4 图库 .....................................................................................................4-5 4.2.5 标准 ActiveX 控件 ............................................................................. 4-17 4.2.6 智能单元对象 .................................................................................... 4-17 4.3 动画连接的类型 ................................................ 4-18 4.3.1 鼠标动画 ........................................................................................... 4-18 4.3.2 颜色动画 ........................................................................................... 4-19 4.3.3 尺寸动画 ........................................................................................... 4-19 4.3.4 数值动画 ........................................................................................... 4-20 4.3.5 杂项 .................................................................................................. 4-21 4.4 动画连接的使用 ................................................ 4-21 4.4.1 创建动画连接 .................................................................................... 4-21 4.4.2 删除动画连接 .................................................................................... 4-22 4.4.3 数值动画 ........................................................................................... 4-23 快速入门手册4.4.4 拖动 .................................................................................................. 4-23 4.4.5 颜色动画 ........................................................................................... 4-25 4.5 变量(窗口中间变量、中间变量、间接变量、数据库变量) .......... 4-26 4.5.1 系统中间变量 .................................................................................... 4-26 4.5.2 窗口中间变量 .................................................................................... 4-26 4.5.3 中间变量 ........................................................................................... 4-26 4.5.4 间接变量 ........................................................................................... 4-26 4.5.5 数据库变量 ....................................................................................... 4-27 4.6 添加变量 ...................................................... 4-28 第 5 章 脚本语言 .......................................................................................................5-1 5.1 脚本类型 ....................................................... 5-1 5.2 脚本编辑器 ..................................................... 5-1 5.3 语法结构 ....................................................... 5-5 5.4 常用的功能 ..................................................... 5-6 5.5 范例――液位调节阀 PI 控制 ...................................... 5-9 5.5.1 创建画面 ........................................................................................... 5-10 5.5.2 定义数据 ........................................................................................... 5-10 5.5.3 创建动画连接 ..................................................................................... 5-11 5.5.4 创建仿真程序 .................................................................................... 5-12 5.5.5 创建 PI 控制算法............................................................................... 5-13 第 6 章 分析曲线 .......................................................................................................6-1 6.1 趋势曲线 ....................................................... 6-1 6.1.1 实时趋势曲线的组态方法.....................................................................6-1 6.1.2 历史趋势曲线的组态方法.....................................................................6-7 6.2 报警控件 ....................................................... 6-9 6.3 事件控件 ...................................................... 6-11 第 7 章 报表系统 .......................................................................................................7-1 7.1 创建本地数据库报表 ............................................. 7-1 7.2 创建关系数据库报表 ............................................. 7-6 第 8 章 与关系数据库的连接 .....................................................................................8-1 8.1 概述 ........................................................... 8-1 8.2 功能介绍 ....................................................... 8-1 8.2.1 从力控数据转储到关系数据库的方式 ..................................................8-1 8.2.2 从关系数据库转存到力控数据库..........................................................8-3 8.3 配置方法 ....................................................... 8-4 8.4 与 Access 关系数据库建立数据转储 ................................ 8-6 第 9 章 力控的网络结构 ............................................................................................9-1 9.1 C/S 结构的简介 ................................................. 9-1 9.1.1 服务器节点配置 ...................................................................................9-1 9.1.2 客户端节点配置 ...................................................................................9-3 9.1.3 通讯程序配置 .......................................................................................9-5 9.2 数据源 ......................................................... 9-5 9.3 C/S 结构中的远程数据源 ......................................... 9-6 9.3.1 数据源分类 ..........................................................................................9-6 快速入门手册9.3.2 数据源配置 ..........................................................................................9-7 9.4 客户端/服务器应用(NETSERVER) ................................. 9-9 9.4.1 人机界面 VIEW 做客户端 ....................................................................9-9 9.4.2 C/S 结构中的网络数据库................................................................... 9-10 第 10 章 力控的 WWW 网络发布 ........................................................................... 10-1 10.1 力控网络发布的两种方式 ....................................... 10-1 10.2 力控的 Web 发布配置方式 ....................................... 10-1 10.2.1 配置 Web 服务器配置 ..................................................................... 10-1 10.2.2 发布内容 ......................................................................................... 10-4 10.2.3 配置网络服务器 NetServer 程序..................................................... 10-5 10.2.4 配置启动 Httpsvr............................................................................. 10-6 10.2.5 启动力控监控组态软件 ................................................................... 10-6 10.2.6 示例 ................................................................................................ 10-7 第 11 章 调试及运行 ................................................................................................ 11-1 11.1 IO 运行的调试过程(以具体的硬件设备为例)..................... 11-1 11.1.1 驱动程序的启动 ............................................................................... 11-1 11.1.2 监控 I/O 设备运行 ............................................................................ 11-2 11.1.3 查看 I/O 设备日志 ............................................................................ 11-5 11.2 脚本调试 ..................................................... 11-5 11.3 工程加密 ................................................. 11-7 第 1 章 组态软件综述第1章 组态软件综述1.1 力控产品概述典型的计算机控制系统通常可以分为设备层、控制层、监控层、管理层四个层次结构, 构成了一个分布式的工业网络控制系统,其中设备层负责将物理信号转换成数字或标准的模 拟信号,控制层完成对现场工艺过程的实时监测与控制,监控层通过对多个控制设备的集中 管理,以完成监控生产运行过程的目的,管理层实现对生产数据进行管理、统计和查询。监 控组态软件一般是位于监控层的专用软件,负责对下集中管理控制层,向上连接管理层,是 企业生产信息化的重要组成部分。 力控?监控组态软件是对现场生产数据进行采集与过程控制的专用软件, 最大的特点是能 以灵活多样的“组态方式”而不是编程方式来进行系统集成,它提供了良好的用户开发界面 和简捷的工程实现方法,只要将其预设置的各种软件模块进行简单的“组态” ,便可以非常容 易地实现和完成监控层的各项功能,比如在分布式网络应用中,所有应用(例如趋势曲线、 报警等)对远程数据的引用方法与引用本地数据完全相同,通过“组态”的方式可以大大缩 短了自动化工程师的系统集成的时间,提高了集成效率。 力控?监控组态软件能同时和国内外各种工业控制厂家的设备进行网络通讯, 它可以与高 可靠的工控计算机和网络系统结合,达到集中管理和监控的目的,同时还可以方便的向控制 层和管理层提供软、硬件的全部接口,实现与“第三方”的软、硬件系统进行集成。图 1-11.2 软件基本结构力控?监控组态软件基本的程序及组件包括:工程管理器、人机界面 VIEW、实时数据库 DB、I/O 驱动程序、控制策略生成器以及各种数据服务及扩展组件等,其中实时数据库是系1-1 第 1 章 组态软件综述统的核心,力控组态软件结构如下:图 1-2主要的各种组件说明见下: 1. 工程管理器 工程管理器用于工程管理包括用于创建、删除、备份、恢复、选择工程等。 2. 开发系统 开发系统是一个集成环境,可以完成创建工程画面、配置各种系统参数、脚本、动画、 启动力控?其它程序组件等功能。 3. 界面运行系统 界面运行系统用来运行由开发系统创建的包括画面、脚本、动画连接等的工程,操作人 员通过它来实现实时监控。 4. 实时数据库 实时数据库是力控?软件系统的数据处理核心, 构建分布式应用系统的基础, 它负责实时 数据处理、历史数据存储、统计数据、报警处理、数据服务请求处理等。 5. I/O 驱动程序 I/O 驱动程序负责力控?与控制设备的通信,它将 I/O 设备寄存器中的数据读出后,传送 到力控?的实时数据库,最后界面运行系统会在画面上动态显示。 6. 网络通信程序(NetClient/NetServer) 网络通信程序采用 TCP/IP 通信协议,可利用 Intranet/Internet 实现不同网络节点上力控?1-2 第 1 章 组态软件综述之间的数据通信,可以实现力控软件的高效率通信。 7. 远程通讯服务程序(CommServer) 该通信程序支持串口、以太网、移动网络等多种通信方式,通过力控?在两台计算机之间 实现通信,使用 RS-232C 接口,可实现一对一(1:1 方式)的通信;如果使用 RS-485 总线, 还可实现一对多台计算机(1:N 方式)的通信,同时也可以通过电台、MODEM、移动网络 的方式进行通信。 8. Web 服务器程序 Web 服务器程序可为处在世界各地的远程用户实现在台式机或便携机上用标准浏览器实 时监控现场生产过程。 9. 控制策略生成器(StrategyBuilder) 控制策略生成器是面向控制的新一代软逻辑自动化控制软件, 采用符合 IEC61131-3 标准 的图形化编程方式,提供包括:变量、数学运算、逻辑功能、程序控制、常规功能、控制回 路、数字点处理等在内的十几类基本运算块,内置常规 PID、比值控制、开关控制、斜坡控 制等丰富的控制算法,同时提供开放的算法接口,可以嵌入用户自己的控制程序,控制策略 生成器与力控?的其它程序组件可以无缝连接。1.3 新产品特点1. 符合大型工厂模型的设计 力控 eForceCon?系列软件的设计完全符合远程大型工厂管理与监控模式, 根据大型工厂 远程监控的需要采用多种“模型与软数据库总线”技术进行系统设计,支持远程部署,在线 修改参数,适合多人协作开发。根据实际需要,可按照历史服务器、事件服务器、报警服务 器、Web 服务器、企业门户等等多种应用模式进行系统配置,适合大型 SCADA 系统和企业 生产信息化的监控与调度应用。 力控 eForceCon?系列软件支持工厂数据模型、工程模型、窗口模型、智能单元模型、对 象模型等多种对象技术,内置的分布式的实时数据库支持多种工厂模型的信息数据类型及结 构,图形监控系统与数据归档采用分离结构可以构造复杂灵活的分布式信息化系统。 实时数据库的分层结构设计方便了“海量”的数据管理与历史数据归档,系统的参数管 理提供了参数的“动态”注册,方便负载调度,历史数据存储归档支持数据定时存储、条件 存储、变化压缩存储、趋势压缩存储等多种技术,具备更强大的生产数据分析与统计功能。 产品为开放式体系架构,全面支持 DDE、OPC、ODBC/SQL、OLE DB XML、ActiveX 等标准,以 OLE、COM/DCOM、API 等多种形式提供外部访问接口,便于用户利用各种常 用开发工具(如:VC++、VB、.net 等)进行深层的二次开发。 力控 eForceCon?系列软件“动态” 数据源的设计保证了 B/S 和 C/S 等网络模式的生产监 控,支持通过 PDA 掌上终端和标准的 IE 浏览器来访问软件的 WEB 服务器,对多种数据源 的封装保证了 SQL 关系数据库、eForceCon、pSpace 6.0 等多种数据库系统及第三方大型实时 历史数据库的数据任意简单调用与连接, 保证了大型广域网应用及企业生产信息门户的构建, 方便了企业的生产调度与管理监控。1-3 第 1 章 组态软件综述2. 强大的报警管理 提供的分布式报警系统具备报警存储、统计、分析、显示、查询、事件触发、打印等功 能,多达 9999 个报警优先级。针对报警对象采用树形结构的报警组管理,支持精确立体多维 定位报警信息,方便查找与管理。支持多媒体语音、视频、文本语音转换、邮件和短信等实 时方式的报警通知与输出,支持报警、事件网络数据断线存储,恢复功能。图 1-33. 完整的冗余与容错技术 力控的 eForceCon 从系统架构设计、负载均衡、故障隔离、快速维护、冗余与容错等技 术上采用了大胆的创新与探索,主要的特点如下: 对图形与图像的“隔离”的封装设计、可视化与数据处理的分离的服务技术,避免了过 多的图形及图像资源的消耗对数据层带来的干扰,使不同的用户根据行业要求可进行任意的 动态图像与图形模式的选择,在保证绚丽的监控效果的同时,又保证了系统的稳定性。 负载均衡技术深入到分布式组件的设计,多进程与多线程的设计使系统的工作任务得到 分解, “软”总线技术保证系统扩展方便。远程数据传输支持断线重连与恢复机制,使进程之 间的数据同步、网络通讯的可靠性得到了飞跃的提高。 具备自诊断与自恢复技术,采用统一的进程管理,软件内置“看门狗”设计,系统各进 程具备自诊断与自恢复功能,充分保证整个系统的稳定与安全。 支持系统的“软”冗余与“硬”冗余配置方式,支持系统集群配置。1-4 第 1 章 组态软件综述支持通讯负载均衡与通讯效率的动态优化, 支持传输数据块的自动与手动分包, 具备 “块 数据”的读取与转发,有效提高了数据读与写的通讯效率的平衡,支持设备动态设备切换等 功能。 IO 设备通讯支持设备冗余、通道冗余,支持控制网络的异种通讯链路故障切换。采用全 新的多进程和多线程 IO 调度机制,使通讯效率更高、速度更快。 4. 灵活方便的模板化设计环境 提供集成化的设计环境,对工程模板创建、数据模型与画面模型等都进行了完整的模板 化设计,支持窗口模板、画面模板、对象模板。支持多人协作与远程部署工程,支持工程模 型的导入与导出, 方便快速进行工程组态。 支持系统文件与工程文件的在线升级与动态维护。 支持系统大画面拖动、鹰眼导航漫游,支持工程分辨率的自动调整,支持系统一机多屏 配置,方便构建大型调度系统。 实现继承方式的图形模板功能,用指定的智能单元生成图形对象模板,用此图形对象模 板生成的所有图形对象都继承于对象模板,一旦需要对所有的图形模板进行整体改变风格时 只需要改变对象模板的风格,即可对所有的图形进行整体更新。 提供方便的渐进色调色板,支持 GDI+图形画刷进行图板过渡色修饰,支持 2D、3D 等图 形模拟,画面支持分层,对系统画面的多个图层可以进行任意定义与操作,可以构建绚丽画 面,适应了行业的大规模定制。 提供上千种丰富的图形元素,具备丰富的“矢量”行业图库集,同时也提供部分工业现 场常用的 flash 图库,支持旋转和平移函数,可以实现类机械臂操作。 开放的设计保证与 Flash、3DS 模型进行交互,从脚本级别完成互操作,借用 Flash 的强 大图形和动画效果以及灵活的 Flash 脚本,可以提供一个全新的多媒体图像展现平台,提供 的 3D 和 Flash 子图可以直接与系统数据库变量进行映射,共同构造动态绚丽效果。图 1-45. 强大的编译及运算引擎 采用独创的“隐形脚本”技术,支持脚本在线调试,实现多种“脚本”技术嵌套,保证 系统最大便利的集成,支持变量智能搜索功能,支持变量的快速编辑定位、查找、排序及导 入导出功能。 支持运行状态下的变量动态注册机制,支持通过 VBA 脚本访问力控自定义脚本函数, 并能访问相关组件的属性、方法,达到脚本技术的嵌套与融合。1-5 第 1 章 组态软件综述实时数据库支持后台“计算脚本”技术,保证数据处理、统计运算便捷。 具备强大的对象及 OCX 容器,支持系统灵活扩展访问方式,通过脚本可以完美的集成 第三方的 ActiveX 插件,并且支持第三方的 ActiveX 组件进行 Web 发布。 6. 面向“服务模式”的可视化系统 目前的地理信息系统、视频监控系统、虚拟显示技术、三维图像技术、GDI+技术纷纷集 成在 SCADA 系统中,力控 eForcecon 可以完成对各种软件系统的交互,构成了一个综合的 监控系统,完成了与各类第三方系统的交互,支持组件的协同工作,除了提供多种快速的分 析曲线、报表、报警的模板,还提供多种系统扩展。 7. 画面导航 导航器基于全局和画面分别设计, 可以自由摆放, 可自由设计菜单、 工具条、 导航树等, 自动绑定脚本和系统动作。图 1-58. 多媒体 与不同厂家视频、音频等多媒体技术完美结合,支持容器播放与 Web 集成,地理信息系 统,支持 Mapinfo 与 ArcGIS 的地图文件格式,支持组件方式集成 GIS-GPS 的功能,利用脚本 和 VBA 调用可充分互动。 9. 视频 与视频监控系统进行良好的集成,支持 SCADA 画面与视频画面进行联动,可以与数字 视频技术基于服务器端与客户端方式的开放融合。 10. 报表工具 兼容 Excel 工作表文件,提供类 Excel 的绝大部分功能,提供丰富的报表操作函数集、 支持复杂脚本控制,包括:脚本调用和事件脚本。 11. 批次配方组件 提供灵活的批量生产控制功能,用于提供一套完整的批量生产过程的历史记录并使其自 动化, 快速而轻松地创建配方并按照过程模型模拟实施过程。 所有这些均无须写一行控制码。 批次配方组件还提供完整的生产记录和材料的来龙去脉,您可以减少 40%到 60%成本和时间 来实现批量生产的过程。批次配方组件将被广泛地应用于食品、医药、化工等任何涉及批量 配方的领域。 12. 灵活的界面分组 提供了灵活的界面分组功能,用于完成复杂的界面管理,在每个分组下可以进行不同功1-6 第 1 章 组态软件综述能组的细分。图 1-613. 立体的测点树形 分布式的数据源管理快速建立企业信息动态数据库,实时数据库测点参数管理面向大型 “工厂数字化模型”进行设计, “立体”树型测点参数逻辑适应了大规模系统的数据管理与历 史数据归档,因此不再是常规数据库结构,在不同的树形或子树下面可以有相同的点名,这 种应用就需要加上点的所有组层次的名称才能确定一个唯一的点名,这样就要求每一个点名 都可能是一个相当长的点名和类型扩展,可以让您更快速地建立相同类型设备的数据库点结 构。图 1-71-7 第 2 章 工程管理器第2章 工程管理器对于力控监控组态软件,每一个实际的应用案例都可称作工程。工程包含数据库、 I/O 设备、人机界面、网络应用等组态信息和运行数据。每个力控监控组态软件工程的数据文件 都存放在不同的目录下,这个目录又包含多个子目录和文件。对于力控监控组态软件用户, 可以同时保存多个力控监控组态软件工程。力控监控组态软件工程管理器实现了对多个力控 监控组态软件工程的集中管理,进入力控的开发版需要将工程添加到工程管理器下,由工程 管理器进行集中管理。工程管理器的主要功能包括:新建工程、删除工程,搜索指定路径下 的所有力控监控组态软件工程,修改工程属性,工程的备份、恢复,切换到力控监控组态软 件开发系统或运行系统等。 工程管理器还实现了力控监控组态软件常用工具软件的集中管理。 本章将介绍怎样使用工程管理器。2.1 工程管理在建立一个新工程时,首先通过力控的“工程管理器”指定工程的名称和工作的路径, 不同的工程一定要放在不同的路径下。 开始→所有程序→力控 eforcecon sd v2.0→力控 eforcecon sd v2.0,启动力控的“工程管 理器” ,如图 2-1:图 2-1窗口从上至下包括:菜单栏、工具栏、工程列表显示区、属性页标签等部分。其中单击 属性页标签可以在三个属性页窗口:工程管理、工具列表、网络中心之间进行切换。 工程管理器的工具栏如图 2-2 所示:2-1 第 2 章 工程管理器图 2-21. 新建新添加一个工程应用。点击工具栏上的按钮,出现对话框如图 2-3:图 2-31) 项目类型:包括新建工程和模版工程。新建工程是未经过任何处理的空白工程,需要用户 自己从头开发。模版工程已经对工程做了相应的优化,用户可以在生成的模版工程上进行修 改、添加后得到自己的工程,从而缩短开发工期。 2) 项目名称:新建的工程的名称。 3) 生成路径:新建工程的路径,默认路径为:C:\Program Files\Eforcecon\Project,可以修改。 4) 描述信息:对新建工程的描述文字。 点击“确定”按钮,此时在工程管理器中可以看到添加了一个名为 New App1 的工程, 工程名可以修改,然后再点击“开发系统”按钮,进入力控的组态开发界面。 2. 删除:将已存在的工程应用从工程管理器上移除。2-2 第 2 章 工程管理器注意事项: ? 删除只是将工程从工程管理器上移除,但是工程文件夹在工程目录下 依然存在,这样就避免误删。 3. 运行:点击运行按钮,进入选中工程的运行环境。 4. 开发:点击开发按钮,进入选中工程的开发环境 Draw。 5. 搜索:工程搜索是查找已有的工程应用,将其添加到工程管理器下。 6. 备份:在菜单上点击“备份”按钮,可将力控工程备份成 PCZ 格式的压缩文件,备份 文件可以随意拷贝移动,任何的力控 Eforcecon 组态软件都可将其恢复成原工程。 7. 恢复: 恢复与备份是一对相反的操作, 恢复是将工程备份生成的 PCZ 格式压缩文件解 压缩并恢复成原工程。 8. 打包: 制作安装包。 用于将当前版本的力控监控组态软件运行系统及当前工程制作成安 装程序,以便随时安装运行系统及当前工程。 9. 工程目录:打开选中的工程文件夹,并默认选中文件 FCAppNam.dat2-3 第 2 章 工程管理器10. 快捷方式:为启动当前工程的运行系统在指定目录创建快捷方式。 11. 属性:可以修改项目名称、分辨率以及描述。 12. 退出:关闭工程管理器。2.2 工具列表单击工程管理器窗口上的属性页标签“工具列表” ,切换到“工具列表”属性页窗口,如 图 2-4 所示:图 2-4该窗口列出了力控监控组态软件的常用工具,包括:版本检测工具、注册授权工具、加2-4 第 2 章 工程管理器密锁驱动安装、钩子程序安装、加密锁检测工具等。2.3 网络中心单击工程管理器窗口上的属性页标签“网络中心”,切换到“网络中心”属性页窗口, 如图 2-5 所示。 如果用户的计算机已经联机到互联网上,该窗口将显示力控网站的内容。图 2-52-5 第 3 章 工程组态第3章 工程组态3.1 定义外部设备及数据连接项在项目应用中, 常常需要将硬件设备上的数据采集到上位机, 在上位机对数据进行处理, 如绘制曲线, 形成报表等, 通常我们把这些硬件设备叫做数据提供者, 数据提供者主要包括: PLC、UPS、变频器、智能仪表、智能模块、板卡、DDEServer、OPCServer 等,这些设备一 般通过串口和以太网等方式与上位机交换数据。在力控中,把需要与力控组态软件交换数据 的设备或者程序都叫做物理 I/O 设备,每个物理 I/O 设备都有其遵循的通讯协议,力控根据 这些设备的通讯协议定制出相应的 I/O 驱动程序, 要采集数据须根据设备型号选择正确的 I/O 驱动程序在力控中定义一个逻辑 I/O 设备与物理 I/O 设备对应,力控才能通过数据库变量和 这些物理 IO 设备进行数据交换。 定义逻辑 I/O 设备的步骤如下:我们后面要在数据库中定义几个点,但面对的问题是这 几个点的过程值(即它们的 PV 参数值)从何而来?从前文所描述的力控?组态软件结构(图 1-2)知道,数据库是从 IO(即 I/O 驱动程序)中获取过程数据的,而数据库同时可以与多个 IO 驱动程序进行数据交换,一个 IO 驱动程序可以与一个或多个设备相对应。所以我们要明 确这几个点要从哪一个设备获取过程数据时,就需要定义逻辑 I/O 设备。 下面以力控的仿真设备和西门子 S7-200 为例介绍如何定义 I/O 设备, 如果没有硬件设备, 那么请参照仿真设备来学习力控的使用,而在真实的工程实现过程,与西门子 s7-200 的例子 类似。 3.1.1 力控仿真设备 1) 打开开发环境 Draw 的工程项目导航栏如图 3-1:图 3-12) 双击“I/O 设备组态”项出现如下对话框,在展开项目中选择“力控”项并双击使其展开, 然后继续选择“仿真驱动”并双击使其展开后,选择项目“Simulator(仿真) ” ,如图 3-2:3-1 第 3 章 工程组态图 3-23) 双击 “Simulator(仿真)”出现如图 3-3 所示的“设备配置-第一步”对话框,在“设备名 称”输入框内键入一个自定义的名称,这里输入“dev” (大小写都可以) 。接下来要设置 dev 的采集参数,即“数据更新周期”和“超时时间” 。在“数据更新周期”输入框内键入 1000 毫秒。图 3-33-2 第 3 章 工程组态注意事项: ? 一个 I/O 驱动程序可以连接多个同类型的 I/O 设备。每个 I/O 设备中 有很多数据项可以与监控系统建立连接,如果对同一个 I/O 设备中的 数据要求不同采集周期,也可以为同一个地址的 I/O 设备定义多个不 同的设备名称,使他们具有不同的采集周期。 例如,一个大的存储罐液位变化非常缓慢,5 到 10 秒钟更新一次就足够了,而管道内压 力的更新周期则要求小于 1 秒钟。这样,可以创建两个 I/O 设备:PLCSLOW,数据更新周期 为 5 秒,和 PLCFAST,数据更新周期为 1 秒。 单击“完成”按钮返回,在设备组态画面的右侧增加了一项“dev” ,如果要对 I/O 设备 “dev”的配置进行修改,双击项目“dev” ,会再次出现 dev 设备的“设备配置”对话框。若 要删除 I/O 设备“dev” ,用鼠标右键单击项目“dev” ,在弹出的右键菜单中选择“删除” 。 通常情况下,一个 I/O 设备需要更多的配置,如:通讯端口的配置(波特率、奇偶校验 等) 、超时时间、所使用的网卡的开关设置等。因为这是一个“仿真”I/O 驱动程序,它仿真 “梯形图逻辑” 和常用 I/O 驱动程序任务 (实际上完全由 PC 完成) , 没有与实际的硬件连接, 所以不需要进行更多的配置。 现在要记住,我们创建了一个名为“dev”的 I/O 设备,下面将要介绍如何使用它建立数 据库点并设置 IO 数据连接项 IOLink。 3.1.2 建立数据库点并设置 IOLink 在建立数据之前,先介绍一下工程的情况,本工程是一个锅炉水位的监控,要实现的功 能是: 1) 在力控的组态界面,通过逻辑设备 dev 仿真硬件设备,仿真出一个锅炉供水系统,系统的 水泵分为自动档和手动档控制。 在自动档时,水泵是由锅炉中的水位进行控制,当水位低于锅炉总水位的 10%时将自动 启动水泵,当水位高于锅炉总水位的 90%时将自动停止水泵;在手动档时,水泵由手动开关 控制。 锅炉的水位与水泵的开/关和锅炉的出水阀的开/关有关:当水泵开时,水位将上升;当 水泵关时,水位将保持。当出水阀门开时水位将下降;当出水阀门关时,水位将保持。 根据这样的项目情况,可以确定该项目数据点有: 点名 AI1 DO1 DO2 DO3 DO4 点描述 锅炉水位检测 水泵的启停 出水阀开关 手动/自动档 手动泵控制 点类型 模拟 I/O 点 数字 I/O 点 数字 I/O 点 数字 I/O 点 数字 I/O 点(1) 创建数据库点的步骤: ? 在工程项目导航栏中图 3-1,双击“数据库组态”启动组态程序 DBMANAGER(如 果没有看到导航栏窗口,激活 Draw 菜单命令“查看/工程项目导航栏” ) 。 ? 启动 DBManager 后出现如图 3-4 所示的 DBManager 主窗口。 ? 单击菜单条的“点”选项选择新建或双击单元格,出现“请指定区域、点类型”向3-3 第 3 章 工程组态导对话框如图 3-4 所示。图 3-4选择 “模拟 I/O 点” , 然后双击该点类型, 出现如图 3-5 所示的对话框, 在 “点名 (NAME) ” 输入框内键入点名“AI1” 。图 3-5其它参数如量程、报警参数等可以采用系统提供的缺省值。单击“确定”按钮返回,在 点名单元格中增加了一个点名“AI1” ,如图 3-6 所示:3-4 第 3 章 工程组态图 3-6按如上所述步骤,创建数字 I/O 点“DO1 ” 、 “DO2” 、 “DO3” 、 “DO4” ,创建后的点见 图 3-7:图 3-73.1.3 创建数据连接项 在前面创建了一个名为“dev”的 I/O 设备,现在的问题是如何将已经创建的 5 个数据库 点与 dev 设备中的数据项联系起来,以使这 5 个点的 PV 参数值能显示当前的数据值,这个 过程就是建立数据连接项的过程。由于数据库可以与多个 I/O 设备进行数据交换,所以必须 指定哪些点与哪个 I/O 的哪个数据项设备建立数据连接。 双击数据库中点 AI1 的单元格,选择“数据连接”选项或双击 AI1 所对的“数据连接” 选项,然后在“设备”里选择 dev,单击“增加”按钮,详见下图 3-8:3-5 第 3 章 工程组态图 3-8寄存器地址:例中设成 0,寄存器地址有唯一性,不能与其他同类型寄存器数据的地址 重复。 最大值和最小值得设置根据水位信号的量程来设置,例子里水位的量程是 0-100。 配置完以上数据就可以点击“确定”按钮完成设置了,如图 3-9 所示:图 3-9接下来按照以上步骤配置其它 4 个参数,其它配置都基本相同。配置完后见图 3-10:图 3-103.1.4 外部设备编程 在本例中,使用的是力控的仿真驱动程序(Simulator) ,并不是真实的硬件,因此,为了 实现锅炉的控制逻辑,在“应用程序动作”中实现,以达到逻辑控制仿真的效果。具体步骤3-6 第 3 章 工程组态如下: 1) 双击“工程项目导航栏”中“动作”下的“应用程序动作” ,弹出脚本编辑器对话,在进 入程序中,输入下列程序语句: //状态清零 AI1.PV=0; DO1.PV=0; DO3.PV=0; DO4.PV=0; 如图 3-11:图 3-112) 程序运行周期执行 在程序运行周期执行中,输入下列编程语句: //手动档 //进水 IF DO3.PV==0 && DO4.PV==1 && AI1.PV&100 THEN AI1.PV=AI1.PV+10; ELSE ENDIF //放水 IF DO3.PV==0 && DO1.PV==1 && AI1.PV&0 THEN AI1.PV=AI1.PV-10; ELSE ENDIF IF DO3.PV==0 && DO4.PV==DO1.PV THEN AI1.PV=AI1.PV ELSE ENDIF //自动档 IF DO3.PV==1 && AI1.PV&10 THEN DO2.PV=1; DO1.PV=0; ELSE3-7 第 3 章 工程组态ENDIF IF DO3.PV==1 && AI1.PV&90 THEN DO2.PV=0; DO1.PV=1; ELSE ENDIF IF DO3.PV==1 && DO2.PV==1 && DO1.PV==0 THEN AI1.PV=AI1.PV+10; ELSE ENDIF IF DO3.PV==1 && DO2.PV==0 && DO1.PV==1 THEN AI1.PV=AI1.PV-10; ELSE ENDIF3.2 以西门子 S7-200 为例在参考本节学习时,需要有西门子 s7-200 的 PLC 的硬件设备,当具备了这个学习条件 后,通过本节的学习,能够快速掌握如何使用力控监控组态软件来实现现场的监测监控。 3.2.1 项目的硬件要求和实现功能 本例中,使用力控组态软件通过串口(Com1)与 S7-200 PLC 进行连接。本项目要求准备 的软件和硬件是: 西门子 S7-200 CPU、 PC/PPI 电缆、 计算机、 PLC 的编程软件 STEP7MicroWIN 和力控 V6.0 通用组态软件。 在建立数据之前,先介绍一下工程的情况,本工程是一个锅炉水位的监控,要实现的功 能是: 1) 在力控的组态界面,控制和监视通过 S7-200 PLC 连接的锅炉供水系统,系统的水泵分为 自动档和手动档控制。 2) 在自动档时,水泵是由锅炉中的水位进行控制,当水位低于锅炉总水位的 10%时将自动启 动水泵,当水位高于锅炉总水位的 90%时将自动停止水泵;在手动档时,水泵由手动开关控 制。 锅炉的水位与水泵的开/关和锅炉的出水阀的开/关有关:当水泵开时,水位将上升;当 水泵关时,水位将保持。当出水阀门开时水位将下降;当出水阀门关时,水位将保持。 3.2.2 定义外设 I/O 连接 力控与西门子 S7-200 PLC 连接的介绍,方法如下: 工程项目导航栏中双击“IO 设备组态” ,在弹出的窗口中点击“PLC”前面的“+” ,再 点击“SIEMENS”前面的“+” ,然后双击“S7-200(PPI)” ,在弹出的画面中定义设备的名称 (本例中是“S7_200” )及设备的地址号,本例中是“2” ,如图 3-13 所示。 在图 3-12 的 I/O 配置向导中点击 “下一步” , 选择与 I/O 通讯的 COM 口 (本例中是 COM1) 。 如果有必要点击 “高级” , 在弹出的画面中设置通讯参数, 一般情况下为默认即可。 如图 3-133-8 第 3 章 工程组态所示。 注意事项: ? 一个 I/O 驱动程序可以连接多个同类型而不同 I/O 地址的设备。相同 I/O 地址的设备中多个数据可以与力控数据库建立连接,如果对同一 个 I/O 设备中的数据要求不同的采集周期,可以为同一个 I/O 地址的 设备定义多个不同的设备名称, 使同一个 IO 地址不同而设备名称的数 据具有不同的采集周期。图 3-12图 3-133-9 第 3 章 工程组态在 S7-200 的编程软件中打开通讯端口如图 3-14 所示:图 3-14然后在端口通信参数里设置端口 0 的站号为“2” ,通信波特率为“9.6kbits” ,如图 3-15 所示:图 3-15确认后把系统块的信息下载到 S7-200 CPU 中去。 注意事项: ? 把系统块等参数下载到 PLC 中以后,必须将 S7-200 的编程软件关闭, 以释放 COM1 口, 不然可能会影响后续力控组态功能与 S7-200 的通讯。 3.2.3 定义数据库点及数据连接3-10 第 3 章 工程组态1) 数据库点 在本节中,使用 3.1.2 中所建的 5 个数据库点,分别为 AI1、DO1、DO2、DO3、DO4。 2) 建立数据连接项 数据库主要负责将数据点的点参数和采集设备的通道地址相对应, 同时现场的数据处理、 量程变换、报警处理、历史存储等都放到数据库中进行。数据库提供了数据处理的手段,同 时又是分布式网络服务的核心。 在前面已经建立了一个名为“S7_200”的 I/O 设备,现在需要将已经新增的数据库点与 “S7-200”中的数据项联系起来,以使这几个点的 PV 值能与 I/O 设备“S7_200”进行实时 数据交换,这个过程就是建立数据库连接的过程。由于数据库可以与多个 I/O 设备进行数据 交换,所以必须指定哪些点与哪个地址 I/O 设备的哪个数据项建立数据连接。 双击数据库中点“%IOLINK[I/O 连接]”的单元格,再点击“数据连接”或双击“AI” 所对应的“数据连接”单元格,将会出现如图 3-16 所示的界面:图 3-16单击“增加”按钮, 出现“S7-200” 的数据连接界面, 在 I/O 类型选择“V(变量内存) ” , 地址选择“300” ,数据格式选择为“SS(16 位有符号整数,-) ” ,然后单击“确 定”按钮返回,完成该点数据连接的定义,在点“AI”的 I/O 连接单元格中将列出点“AI” 的数据连接项,如: 利用同样的方法再为其他几个 I/O 点建立数据连接,如图 3-17: 当完成数据连接所有的组态后,单击保存按钮并退出 DbManager 界面。3-11 第 3 章 工程组态图 3-173.2.4 外部设备编程 在本例中,只使用了力控组态的简单功能,组态画面的挡位、泵、阀位和水位的数据与 S7-200 的 PLC 连接,而锅炉供水系统的控制逻辑在 s7-200 里编程实现,如图 3-18 PLC 控制 主程序,图 3-19 水位管理子程序,图 3-20 出水水位模拟子程序,图 3-21 出水水位模拟子 程序:图 3-18 PLC 控制主程序3-12 第 3 章 工程组态图 3-19 水位管理子程序图 3-20 出水水位模拟子程序3-13 第 3 章 工程组态图 3-21 出水水位模拟子程序? I/O 分配和符号表 符号 地址 对应用力控数据库的 点 水位管理 抽水水位模拟 出水水位模拟 INT_0 主程序 检测水位 一秒定时 SBR0 SBR1 SBR2 INT0 OB1 VW300 T38 AI1 水位管理 抽水水位模拟 出水水位模拟 中断程序注释 PLC 控制主程序 锅炉实际水位 注释3-14 第 3 章 工程组态秒定时 出水阀 抽水泵 手动泵 手动_自动T37 Q0.1 Q0.0 M20.1 M20.0 DO2 DO1 DO4 DO33.3 数据库点类型及点参数在上面的章节中已经建了 5 个数据库点,它们分别是 AI1、DO1、DO2、DO3、DO4, 其中前一个是模拟量,后四个是离散量。在本节将以上 5 个点为例讲解力控数据库中的点类 型及点参数。 点类型是实时数据库 DB 对具有相同特征的一类点的抽象。 DB 预定义了一些标准点类型, 利用这些标准点类型创建的点能够满足各种常规的需要。对于较为特殊的应用,可以创建用 户自定义点类型。 实时数据库 DB 提供的标准点类型有:模拟 I/O 点、数字 I/O 点、累计点、控制点、运 算点雪崩过滤点等。不同的点类型完成的功能不同。比如,模拟 I/O 点的输入和输出量为模 拟量,可完成输入信号量程变换、小信号切除、报警检查,输出限值等功能。数字 I/O 点输 入值为离散量,可对输入信号进行状态检查。 点是一组数据值(称为参数)的集合。在数据库中,用户操纵的对象是点(TAG) ,系统 也以点为单位存放各种信息。点存放在实时数据库的点名字典中,实时数据库根据点名字典 决定数据库的结构,分配数据库的存储空间。用户在点类型组态时决定点的结构,在点组态 时定义点名字典中的点。 点参数是含有一个值(整型、实型、字符串型等)的数据项的名称。例如:PV、DESC 等。在点名字典中,每个点都包含若干参数。力控数据库系统提供了一些系统预先定义的标 准点参数,如:NAME、DESC、PV 等;用户也可以创建自定义点参数。 对一个点的访问实际上是对该点的具体某一参数的访问;对一个参数值进行访问时也必 须明确指定其所属点的名称。采用“点名.参数名”的形式访问点及参数,如“TAG1.PV”表 示点 TAG1 的 PV 参数。因为 PV 参数代表过程测量值,经常被访问,因此在力控系统中,当 访问某一点而不指定具体参数名时,均表示访问的是 PV 参数。如:访问“TAG1”即表示访 问“TAG1.PV” 。 一个点可以包含多个用户自定义参数, 也可以只包含标准点参数而没有用户自定义参数。 下面建立一个窗口――文本,在窗口上显示前面加的数据库点的参数值。需要先在页面 上添加文本,先在工具箱上点击 ,如图 3-22 所示:3-15 第 3 章 工程组态图 3-22就可以在文本上设置如图 3-23:图 3-23然后双击“AI1.NAME”后面的“####”文本,在弹出的“动画连接”窗口内点击“数 据连接”模块内的“字符串” ,在弹出的对话框内输入“AI1.NAME” ,如图 3-24:3-16 第 3 章 工程组态图 3-24接下来用上面的方法分别设置 AI1.DESC,AI1.PV,设置界面如图 3-25,图 3-26:图 3-253-17 第 3 章 工程组态图 3-26配置完成后保存运行,打开窗口看到如图 3-27 的运行效果:图 3-27以上实例展示了力控点参数的意义及应用方法。3.4 工程组态画面进入力控的开发系统后,可以为每个工程建立无数个画面,在每个画面上可以组态相关 联的静态或动态图形。 1) 创建新画面 进入开发环境 DRAW 后,需要创建一个新窗口。点击“文件[F]”/“新建” ,将出现“新3-18 第 3 章 工程组态建”对话框,如图 3-28 所示。图 3-28(1) 创建空白界面 选择此项创建空白的界面文件。选择此项会进入“窗口属性”对话框,可对窗口风格设 置进行设置。 (2) 由母版来创建界面 选择此项会进入“界面母版管理”对话框,如图 3-29 所示:图 3-29在 “风格类型” 中可以选择通过系统定义的界面母版或生成的母版文件来生成组态界面。 选择“系统定义”可使用力控提供的窗口风格来创建组态界面,选择“用户自定义” , “生成 母版” , “修改” , “删除”按钮可选, “用户自定义”风格只能在本项目内使用。 :可以将已做好的窗口风格生成母版,下次新建窗口时可以直接调用已生 成的风格。3-19 第 3 章 工程组态:可修改已定义的风格的名字。 :删除用户自定义的母版。 本例选择“创建空白界面” ,将出现“窗口属性”对话框,如图 3-30 所示,在窗口名字 栏写上“锅炉” ,在说明栏上“建立的第一个工程” 。图 3-302) 创建图形对象 在力控组态应用中,最重要的一部分是监控画面图形对象的制作,现场数据采集到装有 力控组态的计算机中后,操作人员通过力控组态仿真的画面对象便可以实现监控。 在本例中,画面对象有:锅炉、供水泵、出水阀门、供/出水管、挡位选择开关、手动泵 开关等。下面逐步介绍本项目的画面对象组态方法和步骤。 ? 在电脑屏幕上出现了“锅炉”画面,绘制锅炉蓄水罐。 在“工程项目”导航栏中双击选择“标准图库” ,在“示例图库”中选择罐体,如图 3-31 所示:图 3-313-20 第 3 章 工程组态选中液位罐在左侧属性设置导航栏将属性关联变量,具体见图 3-32:图 3-32在画面上画一个泵。 在 “工程项目” 的导航栏中双击 “标准图库” , 将出现 “图库” 界面, 选择“示例图库” ,在其中选择一个泵并双击该泵的图标,将在画面的左上角出现泵的图形, 如图 3-33 所示:图 3-33如果需要,可以移动泵的位置及修改其大小。单击该泵,拖动其边线修改泵的大小;若 需要移动该泵的位置,可以把光标定位在泵上,拖动鼠标即可。 同液位罐的动画连接方式建立动画连接,具体见图 3-34 所示:3-21 第 3 章 工程组态图 3-34在画面上画一个出水阀。 在工程项目的导航栏中双击 “标准图库” , 将出现 “图库” 界面, 点击“示例图库” ,从中选择一个阀门并双击该阀门的图标,将在画面的左上角出现阀门的图 形,如图 3-35 所示:图 3-35如果需要,可以移动阀门的位置及修改其大小。单击该阀门,拖动其边线修改阀门的大 小;若需要移动该阀门的位置,可以把光标定位在阀门上,拖动鼠标即可。 动画连接见图 3-36:3-22 第 3 章 工程组态图 3-36在画面上画两个弯管道。在工程项目的导航栏中双击“图库” ,将出现“图库”界面,点 击“管道” ,在“精灵图库”中选择一个管道并双击该管道的图标,将在画面的左上角出现管 道的图形,利用同样的方法在画面里画出一个另外管道,如图 3-37:图 3-37利用同样方法完成其余的直管。 画出两个按钮:从图库当中选择挡位选择和泵启停控制开关。在开关上方写上静态文字 标志。选择工具箱中的文本工具“A” ,在画面上写两个显示标志的字符串: “档位选择”和 “泵启停控制” 。利用同样的方法写上画面上醒目的三维名称字符“锅炉供水系统” 。用以上 的方法将 “档位选择” 和 “泵启停控制” 设置动画连接, 将其用同样的方法分别关联变量 DO3.pv、 DO4.pv。3.5 力控的运行系统进入运行系统前,首先保存所有组态内容,关闭 DBManager(如果没关闭)。如果使用了 西门子 S7-200 的硬件设备,请用 PC/PPI 电缆把电脑的 COM1 口与 S7-200CPU 的 COM0 口 连接。3-23 第 3 章 工程组态进入运行系统。在力控的开发系统(Draw)中,点击“文件”/“进入运行” ,将进入力 控的运行系统,在运行系统中,点击“文件”/“打开” ,在“选择窗口”选择“锅炉”画面, 将弹出选择的力控运行画面。 手动启动供水泵。点击“档位选择” 按钮,并选择进入手动,点击“手动开/关泵”按钮, 并选择开泵,这时可以看到供水泵变为绿色,表示供水泵打开,同时可以看到锅炉液位开始 上升。图 3-38可以尝试运行手动关泵、打开出水阀和进入自动档位: 在自动档位时,水泵是由锅炉中的水位控制,当水位低于锅炉总水位的 10%时将自动启 动水泵,当水位高于锅炉总水位的 90%时将自动停止水泵。 在手动档时,水泵是由手动开关控制。 锅炉的水位与水泵的开/关有关,同时与出水阀门的开 /关有关:当水泵开进,水位将上 升;当水泵关时,水位将保持。当出水阀门开时,水位将下降;当出水阀门关时,水位将保 持。在生产现场运行的系统,很多情况下要求启动计算机后就自动进入力控运行系统,配置 的方法是:在开发系统中,系统配置导航栏-系统配置-初始启动程序界面里,将开机自动 运行功能选中,如图 3-39:图 3-39 3-24 第 4 章 组态动画第4章 组态动画在以上的章节中,已经学习了力控许多的基础知识,也已经为工程建立了 IO 设备和数 据库点,如何利用前面的数据库点在画面上建立连接,下面将介绍力控的组态画面。为了便 于大家有一个更加理性的认识,将制作一些小的案例,在制作案例的过程中,会用到许多前 面学过的知识,在学习新的知识的同时,也巩固一下前面的知识。4.1 基本概念4.1.1 对象 对象可以认为是一种被封装的、具有属性、方法和事件的特殊数据类型。力控是面向对 象的开发环境, 在力控中的对象是指组成系统的一些基本构件, 比如: 窗口、 窗口中的图形、 定时器等,每一个对象作为独立的单元,都有各自的状态,可以通过对象的属性和方法来操 作。 4.1.2 属性、方法、事件 描述对象的数据称为属性,对对象所作的操作称为对象的方法,对象对某种消息产生的 响应称为事件,事件给用户提供一个过程接口,可以在事件过程中编写处理代码。 每种图形对象都有决定其外观的各种属性。如:线有线宽、线色、线风格等属性;填充 体有边线颜色、边线线宽、填充颜色等属性。开发系统提供了对图形对象的属性和方法进行 设置的操作。 4.1.3 对象的命名 对象的名称是对象的唯一标识,引用对象的属性方法之前,首先要给对象命名,只有这 样才能在引用对象时指明是对哪一个对象进行的属性和方法的操作。 力控?采用面向对象技术 使得图形具备真正的 “对象” 概念上的意义, 用户可以为每个图形对象指定一个唯一的名称, 并在动作脚本程序中引用这个对象的名称和属性。当创建一个图形对象之后,系统缺省会为 对象分配名称。对象名称可以修改,修改的方法有两种: 1) 选中要修改的对象,在属性设置导航栏中,基本属性的第一项即为对象名称,在此文本输 入框中输入对象的新名称。 2) 选中要修改的对象,单击右键,选择对象名称命令,弹出如下图 4-1 对话框:图 4-1在文本输入框中输入对象的新名称。如果修改的名称已被使用,系统会出现如图 4-2 提4-1 第 4 章 组态动画示:图 4-2若成功为一个图形对象定义了名称,系统将保留这个名称直至图形对象被删除。 注意事项: ? 复杂图形对象(如:复合组件中的报警、趋势、OLE 控件等)也可以 定义名称。4.2 力控的对象类型力控的对象类型一共分以下几类: 4.2.1 普通图元 普通图元即力控里面使用的基本图形,点、线、饼、切、图元组、智能单元等都可以做 为普通图元来使用。所有的普通图元都具备通用的属性、方法和动画特性。如下图为一个普 通图元的属性(如图 4-3) 、方法(如图 4-4)、和动画特性组图(如图 4-5)。图 4-34-2 第 4 章 组态动画图 4-4图 4-54.2.2 复合组件 复合组件是经力控开发人员优化的一组控件组合,复合组件中的每一个组件都能够简单 灵活的实现一项功能。复合组件和 ActiveX 控件一样主要有三个要素:属性、方法和事件。 力控允许访问复合组件的属性、方法和事件,可通过脚本编写来访问它们。4-3 第 4 章 组态动画在“工程项目”导航栏双击“复合组件”可弹出复合组件对话框,如图 4-6 所示:图 4-6在复合组件中可以选择具有需要功能的复合组件来使用。 4.2.3 后台组件 后台组件是力控提供的一类组件,它们能够实现 modem 语音拨号、报警统计、逐行打印 等功能,随运行系统一起加载运行,但功能执行不依附于界面。使用时,可以把组件的属性 连接到数据库变量或中间变量,在动作脚本中实现相应的功能。 力控现有的后台组件有: E-mail 控件、 Modem 语音拨号、 逐行打印、 报警统计、 计时器、 定时器、时间调度、累计器、键盘等。 添加后台组件的方法:在工程项目导航栏中的树型菜单中双击“后台组件” ,会弹出后台 组件列表对话框,如图 4-7 所示:图 4-7在后台组件树型菜单中双击需要的组件选项,会弹出相应组件的属性对话框,设置完属 性对话框后单击确定按钮,即完成后台组件的添加。4-4 第 4 章 组态动画4.2.4 图库 力控的图库中的提供的精灵不仅仅只是一个静态的图形符号,还具有动画和事件配置, 在工程中使用这些图形时,不需要重新定义它们,只需要将其中使用的变量替换为工程中的 实际变量即可。图库中图形的使用方法类似工具箱中图形的使用,从图库中拖出修改大小位 置等属性即可。 力控的图库是开放性的,用户可以将制作好的组合图形直接添加到图库中,便于日后的 重新利用,接下来将介绍下图库的制作。 图库内的精灵都是由各种基本图形(线、填充体、文本、按钮等)组合而成的。同时还 可以对这些基本图形使用风格管理器里的画刷进行修饰,若要创建一个标准图库,可以用各 种简单图形(线、填充体、文本、按钮等)在画面上绘出所要制作的图库对象的形状,然后 把构成标准图库的简单图形全部选中(不要选中其它图形) ,打成智能单元,我们可以在智能 单元内部对这些简单的图元进行动画链接(目标移动,旋转,填充,尺寸变化,数值输出, 显示隐藏,以及设置其流动属性等) ,最后形成图库,那么下次在调用相同的图形时我们就可 以直接从图库中引用,只要将对应的属性关联上变量即可。接下来我们就以之前所使用的仪 表为例,详细讲述图库的制作过程,步骤如下: 1) 图形的绘制 工具箱中提供的图元可以组合成各种各样的图形,图库中的任何一个图形对象都是用简 单的图元组合而成的,我们可以按照需要将这些图元进行组合。 (1) 深色背景 为了突出金属边框的立体感,将使用深色背景作为底盘,绘制仪表的深色背景前要先确 定矩形的大小,为了突出仪表表盘的立体感可选择实心画刷。具体参数如图 4-8 所示:图 4-8(2) 浅色边缘 为了突出金属质感的边框,可以选择银白色的前边框。配置如图 4-9 所示:4-5 第 4 章 组态动画图 4-9(3) 蓝色的显示盘面 可以将显示盘做成蓝色的,具体配置如图 4-10 所示:图 4-10之后把组成表盘的三个矩形对象打成智能单元。 (4) 透明的表盘面 为了突出表盘的立体感,在表盘的上面可增加一层透明的表面,具体配置如图 4-11 所 示:4-6 第 4 章 组态动画图 4-11透明的表面我们采用线性画刷的多色渐近,四个节点从左到右的具体配置如图 4-12,图 4-13,图 4-14,图 4-15 所示:图 4-124-7 第 4 章 组态动画图 4-13图 4-144-8 第 4 章 组态动画图 4-15选中这四个对象,设置其居中对齐,具体如图 4-16 所示:图 4-16(5) 刻度条 具体的配置如图 4-17,图 4-18,图 4-19 所示:4-9 第 4 章 组态动画图 4-17图 4-18图 4-194-10 第 4 章 组态动画之后把三个刻度条打成智能单元。 (6) 滑动块 为了突出滑动块立体感,可以使用多边形绘制出两个三角形,使用线性画刷进行修饰, 具体配置如图 4-20,图 4-21 所示:图 4-20图 4-21对两个三角形进行居中对齐,之后打成智能单元,即可形成滑动块。 (7) 刻度 刻度分为两部分,一部分为标度,一部分为数字刻度,标度我们可以直接使用垂直/水平4-11 第 4 章 组态动画线进行设置,数字刻度部分可以直接使用文本输入刻度即可。如图 4-22 所示:图 4-22(8) 抛光片 可在表盘的表面增加一个多边形,突出抛光效果。具体配置如图 4-23 所示:图 4-23这样组合起来,一个仪表的形状就绘制完成了,之后可以安装需要制作动画了。 2) 动作制作 新版的 eforcecon 软件提供了 this,parent 关键字,this 是指向当前对象的指针,parent 是指向父类的指针。在这两个关键字后可以跟对象的属性方法或单元内部对象的属性方法。 eforcecon 对所有的图形对象都可以自由添加多个自定义属性及方法,自定义属性及方法和通 用组件的属性及方法使用方式一样,可以在开发环境中通过属性进行设置,也可以通过脚本 进行编辑设置,同时自定义属性可以当作界面级的中间变量一样的使用。这样可以将一个图 形或者智能单元用自定义属性的形式完成整个功能动画的开发,形成图库后可以将功能对象4-12 第 4 章 组态动画在任意位置调用。力控 eforcecon 软件的所有的组件、图形等对象的属性(包括用户自定义属 性)可以直接关联指定的变量,可以指定关联变量的可读和可写属性,加快组态过程。同时 力控所有的组件图形等对象的属性(包括用户自定义属性)发生变化时都可以触发一段力控 脚本程序。 可以对每个图形对象实现多个属性自定义方法。自定义方法的定义方式和用户自定义函 数相同,可以带多个不同的参数,在任意位置进行调用。这样就可以对整个图形或者智能单 元定义只实现自己功能的特定函数。 现在就以之前所做的仪表为例,对如何制作精灵进行详细的说明。 (1) 自定义属性 实际应用中用户对仪表的操作包括修改显示刻度的最大值,最小值,实际的输入值。所 以只要定三个对用户的接口即可, 可以将这三个属性定义为: max, min, value。 选中该对象, 点击右键定义属性,具体如图 4-24,图 4-25 所示:图 4-24图 4-25(2) 动画定义 首先定义刻度条的尺寸变化,具体如图 4-26 所示:4-13 第 4 章 组态动画图 4-26其次定义标注刻度随最大最小值的变化而变化的相关动作,具体如图 4-27,图 4-28 所 示:图 4-274-14 第 4 章 组态动画图 4-28最后,定义滑动块的鼠标动作。具体如图 4-29 所示:图 4-29这样,一个图库中的精灵仪表就做好了,可以把三个自定义属性引到界面上,提供给用4-15 第 4 章 组态动画户修改,运行后的效果如图 4-30 所示:图 4-303) 生成图库精灵 可以看到按照预定要求的图库就制作完成了,若想将其生成图库,方便以后的引用,可 以选中这个智能单元,选择开发系统中菜单命令“特殊功能[S]/形成图库”或单击右键选择形 成图库,如图 4-31,图 4-32 所示图 4-314-16 第 4 章 组态动画图 4-32在名称中,可以直接键入一个新的标准图库对象的名称,在说明输入框中键入所添加的 标准图库对象的描述性说明。单击“确认”按钮,新创建的标准图库对象将被装载到标准图 库中指定的类中。添加完成后,该图形即可像图库中其他组件一样在界面中调用。 这样在工程应用开发的过程中,使用与制作图库使得在界面的图形画面制作过程中可以 节省大量时间,也保证了画面的美观度,同时,使用图库中的对象易于使用便于配置。 4.2.5 标准 ActiveX 控件 ActiveX 控件技术是国际上通用的基于 Windows 平台,建立在 COM 编程模型上的软件 技术,ActiveX 控件以前也叫做 OLE 控件或 OCX 控件,它是一些完成特定任务的组件或对 象的统称,可以将其插入到 Web 网页或其它应用程序中(这些应用程序称为控件容器) 。力 控就是一个标准 ActiveX 控件的容器,诸如 Microsoft VisualBasic 或 IE 浏览器等也都是标准 的控件容器,可以在力控中使用一个或多个 ActiveX 控件。 ActiveX 控件主要有三个要素:属性、方法和事件。 ? 属性:类似于可以修改的变量。 ? 方法:类似于可以从容器调用的脚本函数。 ? 事件:通过 ActiveX 容器触发。 力控允许访问 ActiveX 控件的属性、方法和事件,可通过脚本编写来访问它们。 4.2.6 智能单元对象 智能单元对象强大的功能是创建用户化对象,并可以复用这些对象。和其它对象一样, 智能单元对象提供可以修改和控制的属性、方法。可以像操作简单图形对象一样操作智能单 元对象,同时已经形成的智能单元可被分解。 1) 创建智能单元 在窗口画面中, 选中所有要打成一个智能单元的图形对象, 然后选择菜单命令 “操作[O]/4-17 第 4 章 组态动画打成智能单元” ,或者选择工具条中的 能单元”命令。按钮,或者选择右键菜单中的“组合拆分 /打成智2) 解开智能单元 选中要解开的智能单元对象,然后选择菜单命令“操作[O]/解开智能单元” ,或者选择工 具条中的 按钮,或者选择右键菜单中的“组合拆分/解开智能单元”命令。解开智能单元对象时,将删除捆绑在智能单元对象上的属性,智能单元中的对象并不被 删除。4.3 动画连接的类型在创建图形对象或文本后,可以通过动画连接来赋予其“生命” ,通过动画连接,可以改 变对象的外观,以反映变量点或表达式值所发生的变化,动画功能也就是图形对象的事件。 图形对象的事件包括以下几种,如图 4-33 所示:图 4-334.3.1 鼠标动画 该类动作分为:垂直拖动、水平拖动、窗口显示、左键动作、右键动作、鼠标动作、右 键菜单、信息提示八大类,图形对象一旦建立了与鼠标相关的动作的动画连接,在系统运行 时当对象被鼠标选中或拖拽时,动作即被触发。如图 4-34 所示:4-18 第 4 章 组态动画图 4-344.3.2 颜色动画 该类动作分为:边线、实体文本、条件、闪烁、垂直填充、水平填充六大类。颜色变化 连接可使图形对象的线色、填充色、文本颜色等属性随着变量或表达式的值的变化而变化。 如图 4-35 所示:图 4-354.3.3 尺寸动画 可以把变量值与图形对象的水平、垂直方向运动或自身旋转运动连接起来,以形象地表 现客观世界物体运动的状态;也可以把变量与图形对象的尺寸大小连接,让变量反映对象外 观的变化。 此类动作包括: 垂直移动、 水平移动、 旋转、 高度变化和宽度变化五大类, 如图 4-36 所示:4-19 第 4 章 组态动画图 4-364.3.4 数值动画 包括数值输入和数值输出两大类,其中可以细分为:模拟输入、开关输入、字符输入、 模拟输出、开关输出、字符输出六小项,如图 4-37 所示:图 4-374-20 第 4 章 组态动画4.3.5 杂项 在杂项中还有一些动画连接,包括隐藏、禁止、流动属性等,如图 4-38 所示:图 4-384.4 动画连接的使用4.4.1 创建动画连接 创建并选择连接对象,如线、填充图形、文本、按钮、子图等的动画连接的方法有以下 几种:1) 先选中图形对象,然后在属性设置导航栏中,点击 画功能。按钮切换到动画页,选择相应的动2) 用鼠标右键单击对象,弹出右键菜单后选择其中的“对象动画” 。 3) 选中图形对象后直接按下“Alt+Enter”键。 4) 双击图形对象。 使用第一种方法创建动画连接,详细使用方法见《图形界面开发手册》相关章节。使用 后三种方法创建动画连接,会弹出“动画连接”对话框如图 4-39 所示:4-21 第 4 章 组态动画图 4-39注意事项: ? 当创建动画连接时,在连接生效之前,所使用的变量必须被创建。如 果直接使用了尚未创建的变量,当“确定”按钮按下时,系统将提示 进行定义,并可自动进入变量定义的对话框。 4.4.2 删除动画连接 选择存在动画连接的连接对象,如线、填充图形、文本、按钮、子图等的动画连接创建 方法有以下几种:1) 先选中图形对象,然后在属性设置导航栏中,点击按钮切换到动画页,然后点击相应的动画功能后面的下拉框,选择“删除动画连接”如图 4-40 所示:图 4-404-22 第 4 章 组态动画2) 双击图形对象,弹出“动画连接”对话框,然后去掉相应动画功能按钮前复选框的选择标 志就可以了。 4.4.3 数值动画 以模拟输入为例进行介绍,模拟输入连接可使图形对象变为触敏状态。在运行期间,当 鼠标点中该对象或直接按下设定的热键后,系统出现输入框,提示输入数据。输入数据后点 击“确认”按钮,与图形对象连接的变量值被设定为输入值。模拟输入连接中与对象连接的 变量为模拟量。 要建立模拟输入连接,可按如下步骤进行: 1) 首先创建模拟输入连接的图形对象。2) 然后选中图形对象,在属性设置导航栏中,点击按钮切换到动画页,然后点击数值动画功能下“模拟输入”后面的下拉框,选择 “模拟输入”弹出“数值输入”对话框如图 4-41:图 4-41下面就对话框中各项予以说明: ? 热键:用键盘上某个键或键组合来触发数值输入动作。在基本键中选择 F1~F12, A~Z,Space,PageUp,PageDown,End,Home,Print,Up,Down 等基本键。可选 择 Ctrl、Shift 键作为组合键。 ? 变量:变量选择中涉及的变量的数据类型必须为实型,整型或开关量。 ? 带提示:选择此选项,输入框变为带有提示信息和软键盘的形式。 ? 口令:选择此选项,在输入框输入的字符不在屏幕上显示 ? 提示信息:在输入框内显示的提示信息。 4.4.4 拖动 拖动连接使图形对象的垂直位置与变量数值相关联。变量数值的改变使图形对象的位置 发生变化,反之,用鼠标拖动图形对象又会使变量的数值改变。以垂直拖动为例。 要建立垂直拖动,可按如下步骤进行: 1) 首先要确定拖动对象在垂直方向上移动的距离(用像素数表示) 。画一条参考垂直线,垂 直线的两个端点对应拖动目标移动的上下边界,记下线段的长度。 (线在选中状态下,其长度 显示在属性设置栏中,如图 4-42 所示:4-23 第 4 章 组态动画图 4-422) 建立拖动图形对象,使对象与参考线段的下端点对齐,删除参考线段。3) 然后选中图形对象,在属性设置导航栏中,点击按钮切换到动画页,然后点击鼠标动画功能下“垂直拖动”后面的下拉框,选择“垂直拖动” ,如图 4-43:图 4-43下面就对话框中各项内容予以说明: ? 变量选择:选择此按钮,弹出“变量选择”对话框,选择后变量名自动加在“变量” 输入框内。 ? 在最底端时(值) :图形对象被拖到最底端时对变量的设定值。 ? 在最顶端时(值) :图形对象被拖到最顶端时对变量的设定值。 ? 向上最少(移动像素数) :图形对象被拖到最底端时,其位置在垂直方向上偏离原始 位置的像素数。 ? 向上最多(移动像素数) :图形对象被拖到最顶端时,其位置在垂直方向上偏离原始 位置的像素数。 注意事项: ? 可以给上面的“移动象素数”输入负数,来达到反向拖动的目的。4-24 第 4 章 组态动画4.4.5 颜色动画 以垂直填充为例,垂直填充连接可以使具有填充形状的图形对象的填充比例随着变量或 表达式值的变化而改变。例如:某变量值客观反映生产过程中某实际容器液位的变化,把此 变量与一个填充图形进行垂直填充连接,这个填充图形的填充形状的变化就可以形象地表现 容器液位的变化了。 要建立垂直填充连接,可按如下步骤进行: 1) 首先创建用于垂直填充连接的图形对象。2) 然后选中图形对象,在属性设置导航栏中,点击按钮切换到动画页,然后点击颜色动画功能下“垂直填充”后面的下拉框,选择“垂直填充”弹出“垂直百分比填充”对话框如 图 4-44 所示:图 4-44下面就对话框中各项内容予以说明: ? 表达式/变量选择:变量名称或表达式,选择要进行连接的变量名称。 ? 填充到最大时值:当变量或表达式达到此值时,图形对象的填充形状达到最大。 ? 填充到最小时值:当变量或表达式达到此值时,图形对象的填充形状达到最小。 ? 最大填充(%) :图形对象的填充形状达到最大时填充高度与原始高度的百分比,输 入范围:0~100。 ? 最小填充(%) :图形对象的填充形状达到最小时填充高度与原始高度的百分比,输 入范围:0~100。 ? 背景色:此项用于设定图形对象在运行时显示的背景颜色。单击颜色框内区域出现 调色板窗口,选择一种颜色作为背景色。在运行时,填充过程采用图形对象原始颜色 覆盖背景色的方式进行。 ? 参考点:对于垂直填充连接,参考点决定填充进行的方向,如果参考点为下面,参 数或表达式值由小变大时,填充区域由下至上增大;如果参考点为上面,参数或表达 式值由小变大时,填充区域由上至下增大。4-25 第 4 章 组态动画4.5 变量(窗口中间变量、中间变量、间接变量、数据库变量)4.5.1 系统中间变量 力控提供了一些预定义中间变量供组态工程时调用,称之为系统变量。每个系统变量均 有明确的意义, 可以完成特定功能。 例如, 若要显示当前系统时间, 可以将系统变量 “$time” 动画连接到一个字符串显示上,具体参见函数手册。 系统变量均以美元符号($)开头。如图 4-45,可以从变量管理器中查看系统变量。图 4-454.5.2 窗口中间变量 窗口中间变量作用域仅限于力控应用程序的一个窗口,或者说,在一个窗口内创建的窗 口中间变量,在其它窗口内是不可引用的,即它对其它窗口是不可见的。窗口中间变量是一 种临时变量,它没有自己的数据源,通常用作一个窗口内动作控制的局部变量、局部计算变 量,用于保存临时结果。 4.5.3 中间变量 中间变量的作用域范围为整个应用程序,不限于单个窗口。一个中间变量,在所有窗口 中均可引用。即在对某一窗口的控制中,对中间变量的修改将对其它引用此中间变量的窗口 的控制产生影响。中间变量适于作为整个应用程序动作控制的全局性变量、全局引用的计算 变量或用于保存临时结果。 4.5.4 间接变量 1. 当其他变量的指针使用。 间接变量是一种可以在系统运行时被其它变量代换的变量,一般我们将间接变量作为其 它变量的指针,操作间接变量也就是操作其指向的目标变量,间接变量代换为其它变量后, 引用间接变量的地方就相当于在引用代换变量一样。4-26 第 4 章 组态动画可以用赋值语句实现变量的转换,例如,表达式:@INDIRECT=@LIC101.PV。在表达 式的两边变量的前面都加上了符号“@” ,表示这个表达式不是一个赋值操作,是一个变量代 换操作。 (1). 举例: 一个矩形图形上“垂直百分比填充”的动作要求根据不同的条件,数值来自数据库变量 LIC101.PV 和 LIC102.PV。 可以引用一个中间变量 INDIRECT,做如下表达式: 当条件满足条件 1 时:@INDIRECT =@LIC101.PV;//表达式 1 当条件满足条件 2 时:@INDIRECT =@LIC102.PV;//表达式 2 说明:表达式 1 经过这种变量代换后,变量 INDIRECT 和 LIC101.PV 的数值和行为即变 为完全一致。 改变 INDIRECT 的数值就等于改变 LIC101.PV 的值, 改变 LIC101.PV 的数值就 等于改变 INDIRECT 的值, 当执行表达式 2 时, INDIRECT 又将与 LIC102.PV 的值保持一致。 2. 当普通变量使用。 间接变量除了用于完成变量代换之外,也可以当作普通变量使用。例如, INDIRECT=LIC101.PV; 注意事项: ? 其它非间接变量都可以对间接变量进行代换,并且间接变量之间也可 以相互代换,间接变量不能对其它非间接变量进行代换,例如错误的 表达式:@LIC102.PV = @INDIRECT(X) 3. 当数组使用。 间接变量实现数组功能,可以直接使用而不需要初始化 功能说明:变量数组 操作说明:未初始化的数组可用间接变量数组,用户定义间接变量后可直接在需要使用 变量的脚本中使用数组,例如 arr[100]=10; 注意事项: ? 间接变量数组将根据数组下标动态开辟,所以推荐用户最好从 0 开始 下标,例如 arr[10000],将在内存中开辟 10000 个变量,所以如非必 要请根据实际数组个数开辟。间接变量数组中一旦采用@符号进行变 量的取址操作后将变为真实的间接变量,则不再能当作普通变量使用 间接变量的获取区别于其他变量的获取,间接变量将 []数组符号作为一个操作符,当使 用 a[0]的时候,编译器将自动分解为两个步骤,第一,将变量 a 的 id 和下标 0 压栈,第二步 对栈偏移的变量进行赋值或者取值的操作,故此,运行系统先将变量 id 和 offset 压栈,再从 栈内弹出变量 id 和 offset 进行赋值取值操作,建议每个数组最大下标为 10000。 4.5.5 数据库变量 数据库变量与数据库 DB 中的点参数进行对应,完成数据交互,数据库变量是人机界面 与实时数据库联系的桥梁,其中的数据库变量不但可以访问本地数据库,还可以访问远程数 据库,来构成分布式结构。 当要在界面上显示处理数据库中的数据时,需要使用数据库变量。数据库变量的作用域 为整个应用程序。一个数据库变量对应数据库中的一个点参数,如图 4-46,关于力控数据库 的说明请参考数据库和通讯部分。4-27 第 4 章 组态动画图 4-464.6 添加变量若要定义一个新变量,可按如下步骤进行: 下面以数据库变量为例进行介绍,工程项目导航栏,选择“变量”-“数据库变量”双击 弹出变量管理对话框。单击变量管理器工具栏菜单上的“添加变量”按钮,在弹出的变量定 义对话框如图 4-47 中定义新的变量。图 4-47?:要创建的变量的名称。4-28 第 4 章 组态动画? ? ? ? ?:保存输入的内容。 :上一个变量。 :下一个变量。 :进入“删除变量”对话框。 :对输入的信息进行确认,建立变量。? 变量名:定义变量名名称,系统中必须唯一。 ? 说明:设置变量的描述文字。 ? 类型:设置变量的数据类型。可设置为实型、整型、离散、字符型。 实型:值为-2.2~10308 到 18~10308 之间的 64 位双精度浮点数。 整型:值为从-2,147,283,648 到 2,147,283,648 之间的 32 位长整数。 离散型:值为从-2,147,283,648 到 2,147,283,648 之间的 32 位长整数。 字符型:长度为 64 的字符型变量。 ? 类别:设置变量的类型属性。可设置为数据库变量、中间变量、间接变量、窗口中 间变量。 ? 参数: 如果选定变量类别是 “数据库变量” , 在 “参数” 对话框的右侧, 单击 按钮,如图 4-48:图 4-48在此处的数据库点中指定数据库的数据源及具体点参数。4-29 第 4 章 组态动画? 安全区:设置变量的可操作区域,只有拥有该区域的权限的用户才可以修改此变量 数值。 ? 安全级别:设置变量的安全级别,只有当前设置级别以上的用户才可以修改此变量 数值。 ? 记录操作:该选项用于记录运行系统 View 中,对该变量的操作过程。如果选择不 记录,就看不到对变量的操作过程。如果选择“记录” ,系统就将操作该变量的过程进 行记录,从力控的系统日志里面就可以看到变量的操作记录了。 ? 读写属性:此项用于控制该变量的读写。有“读/写”和“只读”两种选择。 ? 初始值:设置初始运行时变量的值。 ? 最大/小值:设置变量的量程范围。 注意事项: ? 力控也可以在动画连接、脚本环境中直接输入变量,系统会自动进行 检查、编译,方便了您的使用。4-30 第5章 脚本语言为了给用户提供最大的灵活性, 力控?提供了动作脚本编译系统, 具有自己的编程语言, 语法采用类 BASIC 的结构。这些程序设计语言,允许在力控?的基本功能的基础上,扩展自 定义的功能来满足用户的要求。力控?的动作脚本语言功能很强大,可以访问和控制实时系 统的所有组件,如实时数据、历史数据、报警、报表、趋势和安全等;同时,用户通过这类 脚本语言,可以实现从简单的数字计算到用于高级控制的算法的功能。 力控?中动作脚本是一种基于对象和事件的编程语言,可以说,每一段脚本都是与某一 个对象或触发事件紧密关联的,利用开发系统编制完的动作脚本,可以在运行系统中执行, 运行系统通过脚本对变量、函数的操作,便可以完成对现场数据的处理和控制,进行图形化 监控。5.1 脚本类型动作脚本可以增强对应用程序控制的灵活性。比如,用户可以在按下某一个按钮,打开 某个窗口或当某一个变量的值变化时,用脚本触发一系列的逻辑控制、联锁控制,改变变量 的值、图形对象的颜色、大小,控制图形对象的运动等等。 所有动作脚本都是事件驱动的。事件可以是数据改变、条件、鼠标或键盘、计时器等。 处理顺序由应用程序指定,不同类型的动作脚本决定以何种方式加入控制。 动作脚本往往是与监控画面相关的一些控制,主要有以下类型: 窗口动作: 可以在窗口打开时执行一次、 窗口关闭时执行一次或者窗口存在时周期执行。 应用程序动作:可以在整个工程启动时执行一次、关闭工程时执行一次或者在运行期间 周期执行。 数据改变动作:可以当指定数据发生变化时执行一次。 键动作:可以当按下键盘某一个键时执行指定动作一次,键释放时执行一次或者按键期 间周期执行。 条件动作:可以当指定的条件发生时执行一次或条件满足时周期执行。 鼠标动作:可以当鼠标左键点击按下时执行一次、释放时执行一次或者鼠标按键期间周 期执行。 工程项目导航栏中动作树下可以创建应用程序动作、数据改变动作、按键动作、条件动 作;选择菜单命令“特殊功能[S]/动作”或者选择工程项目的树形菜单中的“动作”子节点都 可以创建各种动作脚本;也可以双击在工程界面上的按钮,通过动画连接来编辑鼠标动作。5.2 脚本编辑器创建动作脚本时,会直接弹出脚本编辑器对话框,如图 5-1 所示:5-1 图 5-11) 工具栏 见下图 5-2 所示:图 5-22) 树型菜单栏 在脚本编辑器对话框中左侧为树型菜单栏,见图 5-3 所示:图 5-35-2 ? 将函数插入脚本 在脚本编辑器的左侧树型菜单下,找到函数项,按函数的类型选择所要使用的函数,双 击此数即可以插入到右侧的脚本编辑框的光标所在位置处,并在脚本编辑框的下方出现函数 的解释及使用方法。具体见图 5-4 所示:图 5-4? 使用控件属性 在脚本编辑器的左侧树型菜单下,找到对象/窗口/控件所在的窗口名/控件名/控件属性或 方法,双击此对象的方法或属性即可以插入到右侧的脚本编辑框的光标所在位置处,同时在 脚本编辑框的下方出现此方法或属性的说明及使用方法。图 5-55-3 ? 将变量插入脚本 将变量、实时数据库中的点插入到脚本,采用工具栏上的 命令,此时会弹出变量选择对话框,可以从变量列表中选择所需要的变量,具体如图 5-6 所示:图 5-6? 将窗口名插入脚本 选择工具栏上的 按钮,弹出“选择窗口”对话框,如图 5-7 所示:图 5-7在窗口列表区显示的所有窗口画面的名称。选择要使用的窗口名点击“确定”按钮,此5-4 时关闭此对话框,窗口名会自动插入脚本中的光标位置。 ? 验证脚本 当编写脚本时,可随时点击工具栏中的脚本编译 按钮,来检查脚本语法是否正确。如果系统在验证脚本时遇到错误时,则会将光标定位到脚本编辑框中的错误处。 ? 保存脚本 如果编写的脚本内容很多,在完成其中一部分后,单击工具栏中的保存 按钮,会自动执行保存功能。 ? 指定脚本的执行频率 在“每隔___毫秒” ,文本框中输入脚本执行前等待的毫秒数。在以下情况下必须指定它 们的执行频率(以毫秒为单位),包括“应用程序动作”在运行期间执行、或者“窗口动作” 在窗口运行时周期执行、 “条件脚本”为真/假期间执行、或者“键脚本”和“左键动作”在 按着周期执行等。5.3 语法结构“脚本”的英文叫 Script,它是一种解释性的编程语言,是从主流开发编程语言演变而 来的,比如 C、BASIC、PASCAL 等,通常是它们的子集,脚本不能单独运行,比如力控? 组态软件的脚本要靠 VIEW 程序解释执行,脚本可以扩充和增强 VIEW 程序的功能,使系统 更具灵活性,根据特殊需要可进行特殊定制,使二次开发时更加灵活方便。 注意事项: ? 动作脚本语言是力控?组态软件开发系统 Draw 提供的一种自行约定 的内嵌式程序语言。它只生存在 VIEW 的程序中,通过它便可以作用 于实时数据库 DB,数据是通过消息方式通知 DB 程序的,本节介绍该 语言的语法及用法。 动作脚本语言支持赋值、数学运算等基本语法,也可以书写由 IF-ELSE-ENDIF 等语句构 成的带有分支结构的程序脚本。它由以下几个部分组成: ? 变量和常数:数据运算的最基本单位。 ? 操作符:对数据实施的运算。 ? 表达式:关键字、运算符、变量、字符串常数、数字或对象的组合。表达式可用来 执行运算、操作字符或测试数据。 ? 赋值语句:为变量或对象属性赋值的语句。 ? 条件语句:使用条件语句可以根据指定的条件控制脚本的执行流程。 ? 多分支语句:使用多分支语句可以根据指定的条件控制脚本的执行流程,在根据同 一个条件处理多个分支时,它比条件语句更清晰。 ? 循环语句:循环用于重复执行一组语句。 ? 注释:用来解释代码如何工作的附加文本。 ? 函数:软件提供了一些定制好的系统函数,用户也可以自定义函数。 脚本编辑器里的基本语法格式是: #[窗口名].#[对象名].[对象/方法] 以两个窗口 DRAW1 和 DRAW2 为例: 在窗口 DRAW1 里面引用本窗口内的对象的属性和方法的时候自动将#[窗口名]省略,直5-5 接用#[对象名].[对象/方法]。 在窗口 DRAW1 里面可以直接引用 DRAW2 里面的对象的属性和方法: 如下图 5-8 所示, 在 DRAW1 里面进行脚本编辑,可以选择 DRAW2 里面的对象 Rect2。图 5-85.4 常用的功能主要介绍脚本动作中的条件和循环语句。 1. IF 结构 If 语句也称条件语句,它与 Switch 语句合称为分支语句,意即程序运行到此处可以根据 条件的真假而决定执行什么样的后继语句。 ? 语法 1: IF 表达式 THEN 执行体 1 ENDIF 说明:如果表达式的条件成立,则执行 THEN 和 ENDIF 之间的语句,否则跳过执行这 些语句。 示例:图 5-9示例说明: 如果条件 temperature 的值小于 60 或者大于 90, 就将 Message 的值设置为 “温5-6 度不正常” ,播放(Alart.wav)报警声音。 ? 语法 2: IF 表达式 THEN 执行体 1 ELSE 执行体 2 ENDIF 说明:如果表达式的条件成立,则执行执行体 1,否则执行执行体 2。 示例:图 5-10示例说明: 当 temperature 超过 98 时, Alarm 为 1, 就将 Message 的值设置为 “温度超高” , 播放(Alart.wav)报警声音;否则系统的输出信息为“温度正常” 。 IF 语句可以嵌套使用, 嵌套次数不受限制, 嵌套使用时必须注意每一个 IF 必须要有配套 的 ENDIF。 2. SWITCH 多分支结构 Switch 语句也称为开关语句,它是多分支结构,而 if 语句是二分支结构,多分支语句用 来实现多分支选择,它能够根据表达式的值来决定控制的转向,即根据表达式的值,来决定 执行几组语句中的其中之一。IF 语句可以实现两路选择,Switch 语句可实现}

我要回帖

更多关于 空调系统画面组态 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信