您的位置:控制工程论坛网论坛 » 教程与手册 » 组态王简明教程

一条游鱼

一条游鱼   |   当前状态:离线

总积分:922  2024年可用积分:0

注册时间: 2006-11-09

最后登录时间: 2008-11-28

空间 发短消息加为好友

组态王简明教程

一条游鱼  发表于 2008/1/10 13:21:18      7236 查看 9 回复  [上一主题]  [下一主题]

手机阅读

简介:
  本教程是学习“组态王”软件的入门教程,覆盖了“组态王”软件的大部分基本功能。学完本教程后,您将能够建立一个功能齐全、可实际使用的上位机监控系统。



  下列课程向你演示如何:
  * 使用工程浏览器
  * 建立新项目
  * 绘制画面
  * 使用图库和控件
  * 构造数据库
  * 和下位机通讯
  * 产生动画效果
  * 查看趋势曲线和报警信息
  * 设计自定义报表
  * 系统安全防范

  您按照以上步骤对一个化工厂反应车间的模型进行组态,建立监控中心。完成后的组态将具有操作按钮、趋势曲线和报警功能。下图是组态画面:





组态王简明教程 第一课

了解组态王
  在本课程您将:
  ·了解组态王软件的整体结构
  ·了解组态王的工件方式
  ·了解建立应用程序的一般过程  



组态王软件的结构

  “组态王”是运行于Microsoft Windows 98/NT中文平台的全中文界面的组态软件,采用了多线程、COM组件等新技术,实现了实时多任务,软件运行稳定可靠。组态王具有一个集成开发环境“组态王工程浏览器”,在工程浏览器中您可以查看工程的各个组成部分,也可以完成构造数据库、定义外部设备等工作。画面的开发和运行由工程浏览器调用画面制作系统TOUCHMAK和画面运行系统TOUCHVEW来完成的。TOUCHMAK是应用程序的开发环境。您需要在这个环境中完成设计画面、动画连接等工作。TOUCHMAK具有先进完善的图形生成功能;数据库中有多种数据类型,能合理地抽象控制对象的特性;对变量报警、趋势曲线、过程记录、安全防范等重要功能都有简单的操作办法。TOUCHVEW是“组态王”软件的实时运行环境,在TOUCHMAK中建立的图形画面只有在TOUCHVEW中才能运行。TOUCHVEW从工业控制对象中采集数据,并记录在实时数据库中。它还负责把数据的变化用动画的方式形象地表示出来,同时完成变量报警、操作记录、趋势曲线等监视功能,并生成历史数据文件。

组态王怎样和下位机通讯

  “组态王”把第一台下位机看作是外部设备,在开发过程中您可以根据“设备配置向导”的提示一步步完成连接过程。在运行期间,组态王通过驱动程序和这些外部设备交换数据,包括采集数据和发送数据/指令。每一个驱动程序都是一个COM对象,这种方式使通讯程序和组态王构成一个完整的系统,既保证了运行系统的高效率,也使系统能够达到很大的规模。




怎样产生动画效果

  开发者在TOUCHMAK中制作的画面都是静态的,那么它们如何以动画方式反映工业现场的状况呢?这需要通过实时数据库,因为只有数据库中的变量才是与现场状况同步变化的。数据库变量的变化又如何导致画面的动画效果呢?通过“动画连接”就是建立画面的图素与数据库变量的对应关系。这样,工业现场的数据,比如温度、液面高度等,当它们发生变化时,通过驱动程序,将引起实时数据库中变量的变化,如果画面上有一个图素,比如指针,您规定了它的偏转角度与这个变量相关,您就会看到指针随工业现场数据的变化而同步偏转。动画连接的引入是设计人机接口的一次突破它把程序员从重复的图形编程中解放出来,为程序员提供了标准的工业控制图形界面,并且有可编程的命令语言连接来增强图形界面的功能。

建立应用程序的一般过程

  建立应用程序大致可分为以下四个步骤:
  1.设计图形界面
  2.构造数据库
  3.建立动画连接
  4.运行和调试
  需要说明的是,这四个步骤并不是完全独立的,事实上,这四个部分常常是交错进行的。在用TOUCHMAK构造应用程序之前,您要仔细规划您的项目,主要考虑三方面问题:
  图形 您希望用怎样的图形画面来模拟实际的工业现场的相应的工控设备?用组态王系统开 发的应用程序是以“画面”为程序单位的,每一个“画面”对应于程序实际运行时的一个Windows窗口。
  数据 怎样用数据描述工控对象的各种属性?也就是创建一个实时数据库,用此数据库中的变量来反映工控对象的各种属性,比如“电源开关”。您的规划中可能还要为临时变量预留空间。
  动画 数据和图形画面中的图素的连接关系是什么?也就是画面上的图素以怎样的动画来模拟现场设备的运行,以及怎样让操作者输入控制设备的指令。从下一节课开始,将按照以上步骤循序渐进地建立一个新的应用程序。


组态王简明教程 第二课
开始一个新项目

  在本课程您将:
  ·理解项目的含义
  ·练习使用工程浏览器
  ·开始建立一个新项目  



项目的含义
  在“组态王”中,您开发的每一个应用系统称为一个项目,每个项目必须在一个独立的目录中,不同的项目不能共用一个目录。项目目录也称为工程路径。在每个工程路径下,组态王为此项目生成了一些重要的数据文件,这些数据文件一般是不允许修改的。

项目简介

  通过本教程9节课的学习,你将建立一个反应车间的监控中心。监控中心从车间现场采集生产数据,并以动画方式直观地显示在监控画面上。监控画面还将显示实时趋势曲线和报警信息并提供查询历史数据的功能。最后完成一个数据统计的报表。为了不局限于是具体的下位机系统,本教程建立的项目采用了仿真驱动程序。仿真驱动程序类似于实际的驱动程序,但能够模拟下位机自动产生数据并提供给组态王。对于实际的下位机系统,可参考驱动程序联机帮助来设置驱动程序。

使用工程浏览器

  工程浏览器是组态王的集成开发环境。在这里你可以看到工程的各个组成部分,包括画面、数据库、外部设备、系统配置等,它们以树形结构表示。工程浏览器的使用和Windows95的资源管理器类似,不再详述。



建立新项目

  假设你已经正确安装了“组态王”,首先启动组态王工程浏览器。工程浏览器运行后,将打开你上一次工作后的项目。如果你是第一次使用工程浏览器,默认的是组态王示例程序所在的目录。为建立一个新项目,请执行以下操作: 在工程浏览器中选择菜单“工程/新建”,出现“新建工程”对话框。在对话框中输入工程名称:myproj 在工程描述中输入:工程路径自动指定为当前目录下以工程名称命名的子目录。如果你需要更改工程路径,请单击“浏览”按钮。 单击“确定”。组态王将在工程路径下生成初始数据文件。至此,新项目已经可以开始建立了。你可以在每一个项目下建立数目不限的画面,在下一节,我们将开始绘制第一幅画面。


1楼 0 0 回复
  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2024年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/5/23 23:57:33

    组态王简明教程 第三课
    设计画面
      在本课程您将:
      ·学习工具箱的使用
      ·学习调色板的使用
      ·掌握图库的使用方法


    建立新画面

      在工程浏览器中左侧的树形视图中选择选择“画面”,在右侧视图中双击“新建”。工程浏览器将运行组态王开发环境TOUCHMAK,弹出如下对话框。在“新画面”对话框中设置如下图,在对话框中单击“确定”。TOUCHMAK将按照你指定的风格产生一幅名为“监控中心”的画面。



    使用图形工具箱

      接下来在此画面中绘制各图素。绘制图素的主要工具放置在图形编辑工具箱内。当画面打开时,工具箱自动显示,如果工具箱没有出现,选择菜单“工具\显示工具箱”或按F10键打开它。工具箱中各种基本工具的使用方法和WINDOWS中“画笔”很类似,假如你熟悉“画笔”的使用,绘制本画面将是很容易的。首先绘制监控对象原料罐和反应罐:在工具箱内单击圆角矩形工具,在画面上绘制一个矩形作为第一个原料罐;在矩形框上单击鼠标左键,在矩形框周围出现8个小矩形,当鼠标落在任一小矩形上时,按下鼠标左键,可以移动图形对象的位置用同样的方法绘制另一原料罐和反应罐。在工具箱内单击多边形工具,绘制三条管道。要改变管道的填充颜色,请选中此对象,然后单击调色板窗口的第二个按钮,再从调色板中选择任一种颜色。在工具箱内单击文本工具,输入文字。要改变文字的字体、字号,请先选中文本对象,然后在工具箱内选择“改变字体”。选择菜单“图库\刻度”,在图库窗口中双击一种竖向的刻度。在画面上单击鼠标左键,刻度将出现在画面上。你可以缩放、移动它,如同普通图素一样。在调整图形对象的相对位置时,几种对齐工具可能经常会用到。首先选中所有需要对齐的图形对象,然后在工具箱中单击所需的对齐工具即可。最后,绘制的画面如下图。选择菜单“文件\全部存”,保存你的工作成果。



    组态王简明教程 第四课
    定义外部设备和数据库 

      在本课程您将:
      ·掌握外部设备的定义方法
      ·学习定义变量的方法





    定义外部设备

      组态王把那些需要与之交换数据的设备或程序都作为外部设备。外部设备包括:下位机(PLC、仪表、板卡等),它们一般通过串行口和上位机交流数据;其他 Windows 应用程序,它们之间一般通过 DDE 交换数据;外部设备还包括网络上的其他计算机。只有在定义了外部设备之后,组态王才能通过I/O变量和它们交换数据。为方便你定义外部设备组态王设计了“设备配置向导”引导你一步步完成设备的连接。如图T6-1.PNG。本教程中使用仿真PLC和组态王通信。仿真PLC可以模拟PLC为组态王提供数据。假设仿真PLC连接在计算机的COM1口。在组态王工程浏览器的左侧选中“ COM1”,在右侧双击“新建”,运行“设备配置向导”。选择“仿真PLC”的“串口”项,单击“下一步”;为外部设备取一个名称,输入“PLC1”,单击“下一步”;为设备选择连接串口,假设为COM1,单击“下一步”;填写设备地址,假设为1,单击“下一步”;请检查各项设置是否正确,确认无误后,单击“完成”。设备定义完成后,你可以在工程浏览器的右侧看到新建的外部设备“PLC1”。在定义数据库变量时,你只要把IO变量连接到这台设备上,它就可以和组态王交换数据了。



    数据库的作用

      数据库是“组态王”最核心的部分。在TOUCHVEW运行时,工业现场的生产状况要以动画的形式反映在屏幕上,操作者在计算机前发布的指令也要迅速送达生产现场,所有这一切都是以实时数据库为中介环节,所以说数据库是联系上位机和下位机的桥梁。

    定义变量的方法

      对于我们将要建立的“监控中心”,需要从下位机采集两个原料罐的液位和一个反应罐的液位,所以需要在数据库中定义这三个变量。因为这些数据是通过驱动程序采集到的,所以三个变量的类型都是I/O实型变量。这三个变量分别命名为“原料罐1液位”、“原料罐2液位”和“反应罐液位”,定义方法如下:在工程浏览器的左侧选择“数据词典”,在右侧双击“新建”,弹出“变量属性”对话框;对话框设置为如图T6-2:设置完成后,单击“确定”。用类似的方法建立另两个变量“原料罐2液位”和“反应罐液位”。

    变量的类型

      数据库中存放的是你制作应用系统时定义的变量以及系统预定义的变量。变量可以分为基本类型和特殊类型两大类。基本类型的变量又分为“内存变量”和“I/O变量”两类。“I/O变量”指的是需要“组态王” 和其它应用程序(包括I/O服务程序)交换数据的变量。这种数据交换是双向的、动态的,就是说:在“组态王”系统运行过程中,每当I/O变量的值改变时,该值就会自动写入远程应用程序;每当远程应用程序中的值改变时,“组态王”系统中的变量值也会自动更新。所以,那些从下位机采集来的数据、发送给下位机的指令,比如“反应罐液位”、“电源开关”等变量,都需要设置成“I/O变量”。那些不需要和其它应用程序交换只在“组态王”内需要的变量,比如计算过程的中间变量,就可以设置成“内存变量”。基本类型的变量也可以按照数据类型分为离散型、模拟型、长整数型和字符串型。内存离散变量、I/O离散变量:类似一般程序设计语言中的布尔(BOOL)变量,只有0,1两种取值,用于表示一些开关量。内存实型变量、I/O实型变量:类似一般程序设计语言中的浮点型变量,用于表示浮点数据,取值范围10E-38至10E+38,有效值7位。内存整型变量、I/O整型变量:类似一般程序设计语言中的有符号长整数型变量,用于表示带符号的整型数据,取值范围 -2147483648至2147483647。内存字符串型变量、I/O字符串型变量:类似一般程序设计语言中的字符串变量,用于记录一些有特定含义的字符串,如名称,密码等,该类型变量可以进行比较运算和赋值运算。特殊变量类型有报警窗口变量、报警组变量、历史趋势曲线变量、时间变量四种。这几种特殊类型的变量正是体现了“组态王”系统面向工控软件、自动生成人机接口的特色。



    2楼 回复本楼

    引用 一条游鱼 2007/5/23 23:57:33 发表于2楼的内容

  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2024年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/5/23 23:58:20

    组态王简明教程 第五课
    让画面运动起来
     
      在本课程您将:
      ·理解动画连接的概念
      ·掌握定义动画连接的方法


    动画连接的作用

      在第一节课我们已经讲过,所谓“动画连接”就是建立画面的图素与数据库变量的对应关系。对于我们即将建立的“监控中心”,如果画面上的原料罐、反应罐(矩形框对象)的大小能够随着变量“原料罐1液位”等变量值的大小而改变,那么,对于操作者来说,他就能够看到一个反应工业现场状态的监控画面,这正是本课程的目标。接下来为1号原料罐、2号原料罐、反应罐三个图素建立动画连接。

    建立动画连接

      在画面上双击图形对象“1号原料罐”,弹出“动画连接”对话框。单击“填充”按钮,弹出“填充连接”对话框,对话框设置如图T7-1。注意填充方向和填充色的选择。单击“确定”。单击“动画连接”对话框的“确定”。用同样的方法设置“2号原料罐”和“反应罐”的动画连接设置“反应罐”的动画连接时需要将“最大填充高度”的“对应数值”设为2000。原料罐和反应罐的动画连接设置完毕。



      作为一个实际上可用的监控程序,可能操作者仍需要知道液面的准确高度,而不仅仅是设置刻度。这个功能由“模拟值输出”动画来实现。在工具箱中选用文本工具,在“1号原料罐”矩形框的中部输入字符串“####”。这个字符串的内容是任意的,比如你可以输入“原料罐1液位”当画面程序实际运行时,字符串的内容将被你需要输出的模拟值所取代。用同样的方法,在另两个矩形框的中部输入字符串。操作完成后,画面如图7-2。双击文本对象“####”,弹出“动画连接”对话框。单击“模拟值输出”,弹出“模拟值输出连接”对话框,对话框设置如图 T7-3。在此处,“表达式”是要输出的变量的名称。在其他的情况下,此处可输入复杂的表达式,包括变量名、运算符、函数等。输出格式可以随意更改,它们与字符串“####”的长短无关。单击“确定”。单击“动画连接”对话框的“确定”,完成设置。同样的方法,为另两个字符串建立“模拟值输出”动画连接,连接的表达式分别为变量“原料罐2液位”和“反应罐液位”。





      选择Touchmak菜单“文件\全部存”。只有保存画面上的改变以后,在Touchvew中才能看到你的工作成果。启动画面运行程序Touchvew 。Touchvew启动后,选择菜单“画面\打开”,在弹出的对话框中选择“监控中心”。运行画面如下图。



    组态王简明教程 第六课
    实时趋势曲线与实时报警窗口
     
      在本课程您将:
      ·了解趋势曲线和报警窗口的作用
      ·掌握实时趋势曲线的设置方法
      ·掌握实时报警窗口的设置方法


    趋势曲线的作用

      趋势曲线用来反应数据变量随时间的变化情况。趋势曲线有两种:实时趋势曲线和历史趋势曲线。这两种曲线外形都类似于坐标纸,X轴代表时间,Y轴代表变量值。所不同的是,在你的画面程序运行时,实时趋势曲线随时间变化自动卷动,以快速反应变量的新变化,但是不能随时间轴“回卷”,不能查阅变量的历史数据;历史趋势曲线可以完成历史数据的查看工作,但它不会自动卷动,而需要通过命令语言来辅助实现查阅功能。一个画面中可定义数量不限的趋势曲线,在同一个趋势曲线中最多可同时显示四个变量的变化情况。

    报警窗口的作用

      报警窗口用以反应变量的不正常变化,组态王自动对需要报警的变量进行监视。当发生报警时,将这些报警事件在报警窗口中显示出来,其显示格式在定义报警窗口时确定。报警窗口也有两种类型:实时报警窗口和历史报警窗口。实时报警窗口只显示最近的报警事件,要查阅历史报警事件只能通过历史报警窗口。为了分类显示报警事件,可以把变量划分到不同的报警组,同时指定报警窗口中显示所需的报警组。趋势曲线、报警窗口和报警组都是一类特殊的变量,有变量名和变量属性等。趋势曲线、报警窗口的绘制方法和矩形对象相同,移动和缩放方法与一样。本节课将为“监控中心”增加实时趋势曲线和实时报警窗口,历史趋势曲线和历史报警窗口将在下节课中实现。

    设置实时趋势曲线

      激活画面制作系统Touchmak,在工具箱中选用“实时趋势曲线”工具,然后在画面上绘制趋势曲线,画面如图T8-1;为了让操作者使用方便,在趋势曲线的下方需要增加标注,说明各种颜色的曲线所代表的变量。双击此实时趋势曲线对象,弹出“实时趋势曲线对象”对话框,对话框设置如下图:





    设置实时报警窗口

      在工具箱中选用报警窗口工具,在画面上绘制报警窗口,画面如图T8-3;为使报警窗口内能显示变量的非正常变化,你必须先做如下设置:切换到工程浏览器,在左侧选择“报警组”然后双击右侧的图标进入“报警组定义”对话框。在“报警组定义”对话框中将“RootNode”修改为“车间”。单击“确认”,关闭“修改报警组”对话框。单击“报警组定义”对话框的“确认”按钮。



      在工程浏览器的左侧选择“数据词典”,在右侧双击变量名“原料罐1液位”。在“变量属性”对话框中单击“报警定义”标签。将对话框设置如图T8-4;报警组名已经自动设为“车间”。单击“确定”,关闭对话框。用同样的方法定义变量“原料罐2液位”和“反应罐液位”的报警限只有在“变量定义”对话框中定义了变量的报警方式后,才能在报警窗口中显示此变量。接下来设置报警窗口。双击此报警窗口对象,弹出对话框,对话框设置如图T8-5;各种文本的颜色你可自由设置。单击“报警信息格式”,设置格式如T8-6;单击“确认”单击“报警窗口定义”的确定按钮。







    选择菜单“文件/全部存”,保存你的工作成果。激活画面运行程序Touchvew,画面效果如下 :

    3楼 回复本楼

    引用 一条游鱼 2007/5/23 23:58:20 发表于3楼的内容

  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2024年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/5/23 23:59:00

    组态王简明教程 第七课
    查阅历史数据
     
      在本课程您将:
      ·建立多画面的应用程序
      ·学习历史趋势曲线的使用方法
      ·学习历史报警窗口的使用方法
      ·建立命令语言文本

    历史曲线的作用

      对于一个实际可用的系统来说,一幅画面常常是不够的。组态王允许你建立画面数目不限的复杂程序。本课将要建立的历史趋势曲线和报警窗口将分别属于另两幅画面。激活Touchmak程序选择菜单“文件/新画面”。设置“新画面”对话框如下:
      画面名称:历史趋势曲线
      对应文件:pic00002.pic
      注释:反应车间的监控中心----历史趋势画面
      画面风格:覆盖式
      画面边框:粗边框
      画面位置:
      左边:229
      顶边:190
      宽度:417
      高度:256
      标题杆:无效
      大小可变:无效

    绘制历史趋势曲线

      在工具箱内选择历史趋势曲线工具,在新画面上绘制历史趋势。双击趋势曲线,弹出“历史趋势曲线”对话框,对话框包括“曲线定义”和“标识定义”两部分。曲线定义如图T9-1、图 T9-2;单击对话框的“确定”按钮。对使趋势曲线内能显示变量的变化情况,你必须先对变量做如下设置:选择菜单“数据库/数据词典”。在“变量定义”对话框中单击“速览”。在变量列表中双击变量“原料罐1液位”。单击“记录定义”对话框中“数据变化记录”选择框,使之有效。单击“保存”。用同样的方法使变量“原料罐2液位”和“反应罐液位”的“是否记录”选项都有效。只有在“变量定义”对话框中使变量的“是否记录”选项有效时,才能在历史趋势曲线中显示此变量的变化情况,这是因为历史趋势曲线中的数据都取自记录文件,而数据文件只记录那些“是否记录”有效的变量。





    为历史曲线建立控制

      在上节课讲到,历史趋势曲线不能自动卷动。为了从历史曲线上能够查询到所有时间段的历史数据,必须通过命令语言来动态改变历史曲线的时间轴(X轴)的范围。历史曲线时间轴的范围是由历史曲线的两个属性确定的。属性ChartStart代表时间轴的起始值属性ChartLength代表时间轴的长度。如果这两个属性的值被改变,历史曲线的时间轴范围也就被改变了。命令语言是一段类似于C语言的程序,如果能充分利用,将极大的扩充组态王的功能。在本处使用的命令语言仅仅是“命令语言连接”,是动画连接的一种。在工具箱内选择按钮工具,绘制一个按钮。单击此按钮,使之处于选中状态,选择菜单“编辑/字符替换”。将“字符串替换”对话框图中将字符串替换为“<<”。单击“确定”。同样的方法,再绘制另一按钮,标记为“>>”。这两个按钮将用来卷动历史曲线的时间轴。双击按钮“<<”,弹出“动画连接” 对话框。单击“弹起时”。在“命令语言”对话框中输入命令语言程序:history.ChartStart=history.ChartStart-300;单击“确定”,关闭“命令语言”对话框。单击“确定”,关闭“动画连接”对话框。以上设置将使按钮成为触敏对象,在画面程序运行时,单击此按钮(当鼠标左键弹起时)将执行你输入的命令语言程序。此程序的目的是使历史曲线history的Chartstart属性值减小5分钟= 300秒用同样的方法为按钮“>>”建立“弹起时”命令语言连接,程序为:history.ChartStart=history.ChartStart+300; 调整按钮的位置,完成后的画面如下图:



    建立历史报警窗口

      再新建一幅历史报警画面。激活Touchmak程序选择菜单“文件/新画面”。设置“新画面”对话框如下:
      画面名称:历史报警曲线
      对应文件:pic00003.pic
      注释:反应车间的监控中心----历史报警窗口
      画面风格:覆盖式
      画面边框:粗边框
      画面位置:
      左边:223
      顶边:131
      宽度:417
      高度:250
      标题杆:无效
      大小可变:无效单击“确定”。在工具箱中选用“报警窗口”工具绘制报警窗口。画面如下图;“前”“后”两个按钮是用来翻阅历史报警事件的。双击报警窗口,将“报警窗口定义”对话框设置为:
      历史报警窗口:有效
      报警窗口名:反应车间历史报警窗口
      标题:有效
      报警组名已自动设置为“车间”单击“报警信息格式”,将“报警信息格式”对话框设置为下下图。





    为历史报警窗口建立控制

      双击按钮“前”,设置“弹起时”命令语言动画连接:PageUp(反应车间历史报警窗口,5);使用函数PageUp的目的是:每当操作者单击按钮时,报警窗口内的信息向上卷动5行。同样的方法为按钮“后”设置“弹起时”命令语言动画连接:PageDown(反应车间历史报警窗口,5);选择菜单“文件/全部存”。激活画面运行程序Touchvew,选择菜单“画面/打开”。在“打开画面”对话框中选中“历史报警窗口”,单击“确定”。现在可以通过按钮查阅所有报警事件了。

    建立画面切换的控制

      目前在Touchvew中打开画面的方法是通过菜单“画面/打开”,为了使操作者使用更方便,你可以设置按钮,再通过命令语言连接来完成打开、关闭画面的功能。在画面“监控中心”上绘制按钮“查阅历史数据”并设置“弹起时”命令语言连接:ShowPicture("历史趋势曲线");绘制按钮“停止查阅历史数据”并设置“弹起时”命令语言连接:ClosePicture("历史趋势曲线"); 绘制按钮“查阅历史报警”并设置“弹起时”命令语言连接:ShowPicture("历史报警窗口");绘制按钮“停止查阅历史报警”并设置“弹起时”命令语言连接:ClosePicture("历史报警窗口");

    退出程序的控制

      最后,为你的整个应用程序设置退出功能:在画面“监控中心”上绘制按钮“停止监控”,“弹起时”的命令语言连接为:Exit(0);最终的画面如图T9-6;选择菜单“文件/全部存”。激活画面运行程序,你的监控系统已经完全建立起来了。



    4楼 回复本楼

    引用 一条游鱼 2007/5/23 23:59:00 发表于4楼的内容

  • 一条游鱼

    一条游鱼   |   当前状态:离线

    总积分:922  2024年可用积分:0

    注册时间: 2006-11-09

    最后登录时间: 2008-11-28

    空间 发短消息加为好友

    一条游鱼   发表于 2007/5/23 23:59:26

    组态王简明教程 第八课
    报告和控件
     
      在本课程您将:
      ·学习制作报告的方法
      ·了解组态王的控件
      ·在组态王中使用控件

    报告的用途

      历史数据报告用以读取组态王历史数据记录文件中的变量值。用户可以把过去一段时间内的历史数据变量取出并生成一个历史数据报告文件。

      数据报告是对生产过程中变量状态的记录和反映,它以一定格式输出用户指定的变量值和其他信息,因此,数据报告实际上就是一种简单化的数据报表。组态王提供的数据报告类型有两种·实时数据报告:在组态王运行过程中,实时将当前数据变量按指定报告格式生成报告文件。 实时数据报告不能对历史数据变量进行报告处理。

    制作报告

      本节将为反应车间的生产状况制作实时报告,报告包括1号原料罐、2号原料罐和反应罐的液位在工程浏览器左侧选中“报告”,在右侧双击“新建”;输入报告名称“反应车间实时报告”单击“确定”按钮;组态王会自动运行“写字板”程序,创建报告模板。在报告模板中输入内容如图T10-1;输入完成后,选择菜单“文件/保存”。然后关闭“写字板”程序。打开画面 “监控中心”,添加一个名为“生成报告”的按钮。为按钮设置“弹起时”的命令语言,命令为:Reportl("c:\myproj\反应车间实时报告.rtf","c:\myproj\reportl.rtf"); 保存画面“监控中心”。



    生成报告

      切换到画面运行环境TOUCHVEW,打开画面“监控中心”,单击按钮“生成报告”,将创建一个名为“reportl”的文件。

    什么是控件

      控件采用ActiveX技术,可以作为一个相对独立的程序单位被应用程序所使用。控件的接口是标准的,因此,满足这些接口的任何控件,包括其他软件供应商开发的控件,都可以被组态王支持这些控件极大地扩充了组态王系统的功能。

    使用趋势曲线控件

      趋势曲线是组态王提供的一类控件,包括温控曲线、XY曲线、柱状图/饼图等。本节将建立一个新画面,利用柱状图显示1号原料罐、2号原料罐和反应罐液位的数值。在工程浏览器左侧选中“画面”,在右侧双击“新建”,建立新画面如图T10-3;在开发环境中选择菜单“编辑/插入控件”;在对话框左侧选择“趋势曲线”,在右侧单击“立体棒图”,然后单击“创建”按钮:在画面上双击立体棒图,弹出设置对话框,设置属性如下图:





      在画面上绘制按钮“隐藏”。为此按钮建立“弹起时”的命令语言,以关闭“液位柱状图”画面ClosePicture(“液位柱状图”);绘制的画面如下图。为使柱状图能实时显示变量值,需要在画面“液位柱状图”上增加“画面命令语言”。在画面空白处单击鼠标右键,在快捷菜单中选择“画面属性”,弹出“画面属性”对话框。单击“命令语言”按钮。画面语言包括“加载时”“存在时”“关闭时”三种。

      为画面设置“显示时”命令语言:
       chartClear("液位条形图");
      chartAdd("液位条形图",原料罐1液位,"原料罐1液位");
      chartAdd("液位条形图",原料罐2液位,"原料罐2液位");
      chartAdd("液位条形图",反应罐液位,"反应罐液位");
       在画面显示之前把柱状图设置为与三个变量相关。
      

      为画面设置“存在时”命令语言:
      chartSetvalue("液位条形图",1,原料罐1液位);
      chartSetvalue("液位条形图",2,原料罐2液位);
      chartSetvalue("液位条形图",3,反应罐液位);
      ocxUpdate("液位条形图");
      执行周期是3000毫秒。这样,每隔3000毫秒,柱状图可以根据变量的当前值更新显示,产生动态效果。



      最后,在画面“监控中心”上绘制按钮“柱状图”,建立“弹起时”的命令语言连接为:ShowPicture("液位柱状图");最终的画面如下图。



    组态王简明教程 第九课
    增强系统的安全性
     
      在本课程您将:
      ·为系统设置访问权限
      ·设置用户的操作权限

    访问权限与操作权限

      在上一节课中设置的“停止监控”按钮,其功能是退出组态王画面运行程序。而对一个实际的系统来说,可能不是每一个操作者都有权利使用此按钮,这就需要为按钮设置访问权限。同时也要给操作者赋予不同级别的操作权限,只有当操作者的操作权限不小于按钮的访问权限时,此铵钮的功能才是可实现的。

    设置图形对象的访问权限

      激活组态王画面制作程序Touchmak。双击“停止监控”按钮,弹出“动画连接”对话框。在对话框中的“访问权限”编辑框内输入:900 单击“确定”,关闭“动画连接”对话框。

    配置用户

      最后为系统配置用户。配置用户包括设定用户名、口令、操作权限等。选择菜单“数据库/用户配置”,单击“配置用户”对话框的“增加”按钮。将弹出的对话框设置:用户名称:abc 口令:123访问权限:900单击“确定”,关闭对话框。选择菜单“文件/全部存”,保存所做的修改。激活组态王画面运行程序,按钮“停止监控”已变灰。要操作此按钮,操作者必须登录,以待确认权限。

    登录

      关闭并重新启动组态王画面制作程序Touchvew。选择菜单“特殊/登录开”。在“登录”对话框中输入:用户名:abc口令:123单击“确定”。按钮“停止监控”变为正常颜色,可以实现其功能了。

    禁止退出应用程序

      对于退出应用程序这一功能而言,操作者也可以从Touchvew菜单“文件/退出”或者系统菜单“退出”来实现。如果要禁止这两种方式,需要做如下设置:选择Touchmak菜单“数据库/运行系统外观定制”。将对话框的“禁止退出运行系统”和“禁止Alt键”两个选项设为有效。单击“确定”。关闭并重新启动组态王画面制作程序Touchvew后,操作者就只能通过按钮“停止监控”来退出监控程序了。至此,你已经建立了一个具有完整轮廓的实时监控系统。

    结束语


      经过9课程的练习,相信你已经掌握了组态王的基本功能。但还有一些重要功能是本教程涉及很少或没有涉及的,这些功能包括:
      强大的命令语言和函数
      21种动画连接
      构造图库
      报警组和报警优先级
      操作过程记录
      组态王驱动其它应用程序的能力
      网络功能
      OPC通过ODBC访问数据库
      双机冗余
       ……

    5楼 回复本楼

    引用 一条游鱼 2007/5/23 23:59:26 发表于5楼的内容

  • 钟灵山

    钟灵山   |   当前状态:在线

    总积分:7804  2024年可用积分:0

    注册时间: 2006-12-25

    最后登录时间: 2011-12-24

    空间 发短消息加为好友

    钟灵山   发表于 2007/6/28 8:42:17

    6楼 回复本楼

    引用 钟灵山 2007/6/28 8:42:17 发表于6楼的内容

  • 开心和尚

    开心和尚   |   当前状态:离线

    总积分:84  2024年可用积分:0

    注册时间: 2007-06-29

    最后登录时间: 2008-10-29

    空间 发短消息加为好友

    开心和尚   发表于 2007/7/9 12:58:19

    7楼 回复本楼

    引用 开心和尚 2007/7/9 12:58:19 发表于7楼的内容

  • szzunzheng

    szzunzheng   |   当前状态:离线

    总积分:180  2024年可用积分:0

    注册时间: 2007-06-06

    最后登录时间: 2009-10-12

    空间 发短消息加为好友

    szzunzheng   发表于 2007/7/14 12:47:13

    8楼 回复本楼

    引用 szzunzheng 2007/7/14 12:47:13 发表于8楼的内容

  • charlieljd

    charlieljd   |   当前状态:离线

    总积分:58  2024年可用积分:0

    注册时间: 2007-12-22

    最后登录时间: 2007-12-30

    空间 发短消息加为好友

    charlieljd   发表于 2007/12/30 17:39:25

    9楼 回复本楼

    引用 charlieljd 2007/12/30 17:39:25 发表于9楼的内容

  • zht361

    zht361   |   当前状态:离线

    总积分:76  2024年可用积分:0

    注册时间: 2008-01-10

    最后登录时间: 2008-01-10

    空间 发短消息加为好友

    zht361   发表于 2008/1/10 13:21:18

    10楼 回复本楼

    引用 zht361 2008/1/10 13:21:18 发表于10楼的内容

总共 , 当前 /