组态王中的配方管理.doc_第1页
组态王中的配方管理.doc_第2页
组态王中的配方管理.doc_第3页
组态王中的配方管理.doc_第4页
组态王中的配方管理.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

743第十五章 配方管理F 介绍配方的相关知识F 教您如何制作及使用组态王配方第十五章 配方管理15.1 配方管理概述15.1.1 什么是配方什么是配方?在制造领域,配方是用来描述生产一件产品所用的不同配料之间的比例关系。配方是生产过程中一些变量对应的参数设定值的集合。例如,一个面包厂生产面包时有一个基本的配料配方,此配方列出所有要用来生产面包的配料成份表(如水,面粉,糖,鸡蛋,香油等)。另外,也列出所有可选配料成份表(如果酱,维生素,巧克力等),而这些可选配料成份可以被添加到基本配方中用以生产各种各样的面包。下表为某一面包厂生产面包时的配方:配方1配方2配方3配料名果酱面包巧克力面包维生素面包水200克200克200克面粉4500克4500克4500克盐325克325克325克糖500克500克500克鸡蛋10个10个10个香油300克300克300克水果5个00巧克力0500克0注:表中的数字是示意性的。又如,在钢铁厂,一个配方可能就是机器设置参数的一个集合,而对于批处理器,一个配方可能被用来描述批处理过程中的不同步骤。组态王支持对配方的管理,用户利用此功能可以在控制生产过程中得心应手,提高效率。比如当生产过程状态需要大量的控制变量参数时,如果一个接一个地设置这些变量参数就会耽误时间,而使用配方,则可以一次设置大量的控制变量参数,满足生产过程的需要。15.1.2 组态王中的配方管理组态王提供的配方管理由两部分组成:配方管理器和配方函数集。配方管理器打开后,弹出对话框,用于创建和维护配方模板文件;配方函数允许组态王运行时对包含在配方模板文件中的各种配方进行选择,修改,创建和删除等一系列操作。所有配方都在配方模板文件中定义和存储,每一个配方模板文件以扩展名为csv 的文件格式存储,一个配方模板文件是通过配方定义模板产生的。配方定义模板用于定义配方中的所有项目名(即配料名),项目类型,数据变量(与每一个项目名对应),配方名。每一个配方指定每一个配料成份所要求的数量大小。配方定义模板的结构如下:项目名变量名变量类型(项目类型)配方1配方2配方M配料1变量1实数型、整数型、离散型或字符串型1121M1配料2变量2实数型、整数型、离散型或字符串型1222M2配料3变量3实数型、整数型、离散型或字符串型1323M3配料4变量4实数型、整数型、离散型或字符串型1424M4配料N变量N实数型、整数型、离散型或字符串型1N2NMN注:配方名由用户设定,具体的配方数表示配料的数量大小,此处的数字是示意性的,并不表示具体意义。15.1.3 配方的工作原理配方模板文件中的配方定义模板完成后,在组态王运行时可以通过配方函数进行各种配方的调入,修改等。其工作原理结构示意图如下: 项目和变量名 配方 配方1 配方2 配方3 配方M11 21 31 M112 22 32 M213 23 33 M314 24 34 M41N 2N 3N MN1N项目名 项目类型 变量名配料1 实数型 变量1配料2 实数型 变量2配料3 整数型 变量3配料4 整数型 变量4配料N 离散型 变量N 配方 分配配方分配的功能由配方函数来完成,通过配方分配将指定配方(如配方M)传递到相应的变量中。当调用配方1时,则配方1的数据值11、12、13、14、1N分别对应地传送给变量 1、变量2、变量 3、变量 4、变量N;同理,当调用配方M时,则同样是把配方M数据值传送给变量 1、变量2、变量 3、变量 4、变量N。15.2 如何创建配方模板组态王的工程浏览器能够创建和管理配方模板文件,在工程浏览器的目录显示区中,选中大纲项“文件”下的成员“配方”,如图15.1所示。图15.1 新建配方内容显示区中用左键双击“新建”图标,或者右键单击“新建”图标,从浮动式菜单中选择命令“新建配方”,则弹出“配方定义”对话框,如图15.2所示。图15.2 配方定义A 注意:配方定义对话框中的第一行中的第一列和第二列是不可操作的,即不能在这两个单元格中输入任何内容。“配方定义”窗口中的前两列为变量名、变量类型。变量名:为组态王中已经定义的数据变量名,定义配方之前必须先在数据词典中定义所有配方中要用到的变量。变量类型:为整数型、实数型、离散型、字符串型中的一种,当用户选择变量名后,变量类型会自动加入,不需要用户输入。当用户手动输入变量名后,变量类型不自动加入,需要用户输入。下面介绍配方定义对话框中的菜单命令。单击“表格”菜单,弹出下拉式菜单,如图15.3所示。图15.3增加行:选择此键,在输入焦点所在行的位置上面增加一行。删除行:选择此键,则删除输入焦点所在的行。增加列:选择此键,在输入焦点所在列的位置前面增加一列。删除列:选择此键,则删除输入焦点所在的列。保存:把指定文件保存在相应目录下。另存为:把指定文件保存在指定目录下。退出:退出配方,如果配方没有存盘,则提示存盘。单击“工具”菜单,弹出下拉式菜单,如图15.4所示。图15.4配方属性:按下此键,则弹出“定义配方”对话框如图15.5所示。图15.5 定义配方属性 配方名称:要建立的配方名,由用户自己设定,定义的名称要有实际的意义。配方种类数目:指定配方数目,最大值为256种。变量数量:指定与配方中的项目相对应的变量个数,最大值为1024个。A 注意:配方种类数目和变量数量要与实际配方中种类数目、变量数量相同,否则运行过程中不能正确调用配方。 化工还好还好 自动右移:这时按下enter键,输入焦点自动右移。自动下移:这时按下enter键,输入焦点自动下移。不动:这时按下enter键,输入焦点不动。向上填充:输入焦点及向上所有被选中的方框都填入与输入焦点的值相同的值。向下填充:输入焦点向下所有被选中的方框都填入与输入焦点的值相同的值。向左填充:输入焦点向左所有被选中的方框都填入与输入焦点的值相同的值。向右填充:输入焦点向右所有被选中的方框都填入与输入焦点的值相同的值。单击“变量V”菜单,弹出“选择变量名”对话框,如图15.6所示,供用户选择数据词典中已定义的变量。哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈 6777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777 777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777图15.6 连接变量B 例:下面举一个例子介绍如何创建配方模板。1.加入变量:鼠标选中“变量1”所在列名为“变量名”的单元格,此时“变量V”菜单栏变为黑色有效。单击“变量”,弹出“选择变量名”窗口,选中一个已经定义好的组态王变量,单击“确定”,完成变量选择。“配方定义”窗口中相应变量的变量类型自动显示出来。如果变量名是由手动输入的,则需要手动输入相应的变量类型。加入多个变量的方法相同。2.建立配方:在第一行中各个配方名称相应的单元格中输入各种配方的名称。鼠标单击“配方1”下面的单元格,单元格变为输入状态,输入配方名称即可。接下来在下面对应变量中输入每种配方不同的变量的量值。3.修改配方属性:编辑完配方之后,鼠标单击“工具”菜单中“配方属性”,定义配方模板的名称为“面包配方”,按照实际配方种类和使用的变量输入数据。定义好的配方模板如图15.7所示。图15.7 定义好的配方模板15.3 如何使用配方配方的使用是建立配方模板后,通过使用配方命令语言函数实现的。配方命令语言函数的调用可通过建立操作按钮或是在命令语言中调用来实现。下面首先详细介绍配方命令语言函数,然后再建立一个配方操作按钮的一个实际例子。15.3.1 配方命令语言函数1.RecipeDelete此函数用于删除指定配方模板文件中当前指定的配方。语法格式使用如下:RecipeDelete( filename, recipeName );filename:指配方模板文件存放的路径和相应的文件名;recipeName:指配方模板文件中特定配方的名字。注:文件名和配方名如果加上双引号,则表示是字符串常量,若不加双引号,则可以是组态王中的DDE或内存型字符串变量。B 例:RecipeDelete(“C:recipe北京面包厂.csv”,“配方3”);此语句将配方模板文件“北京面包厂.csv”中的配方3删除。2.RecipeLoad此函数将指定配方调入模板文件中的数据变量中。语法格式使用如下:RecipeLoad( filename, recipeName );filename:指配方模板文件存放的路径和相应的文件名;recipeName:指配方模板文件中特定配方的名字。注:文件名和配方名如果加上双引号,则表示是字符串常量,若不加双引号,则可以是组态王中的I/O型或内存型字符串变量。B 例:RecipeDelete(“C:recipe北京面包厂.csv”,”水果香型面包”);此语句将配方模板文件“北京面包厂.csv” 中的配方“水果香型面包”调入到项目模板定义中的数据变量中。3.RecipeSave此函数用于存放一个新建配方或把对原配方的修改变化存入已有的配方模板文件中。语法格式使用如下:RecipeSave( filename, recipeName );Filename:指配方模板文件存放的路径和相应的文件名。recipeName:指配方模板文件中特定配方的名字,注1:文件名和配方名如果加上双引号,则表示是字符串常量,若不加双引号,则可以是组态王中的I/O型或内存型字符串变量。注2:配方模板文件必须存在,如果配方模板文件不存在,则要事先创建配方模板文件,否则,调用此函数将失败,并返回FALSE。B 例:RecipeSave(“C:recipe北京面包厂.csv”,“配方3”);此语句将配方的修改变化存入到配方模板文件“北京面包厂.csv” 中的配方3中。如果“北京面包厂.csv” 中没有配方3,则系统自动创建。4.RecipeSelectNextRecipe此函数用于在配方模板文件中选择指定配方的下一个配方。语法格式使用如下:RecipeSelectNextRecipe( filename, recipeName );filename:指配方模板文件存放的路径和相应的文件名;recipeName:是一个字符串变量,存放工程人员选择的配方名字。注:文件名和配方名如果加上双引号,则表示是字符串参数,若不加双引号,则可以是组态王中的I/O型变量或内存型变量。B 例:RecipeSelectNextRecipe(“C:recipe北京面包厂.csv”, “配方3”);此语句运行后读取模板文件中“配方3”的下一个配方,如果字符串变量recipeName的值为空或没有找到,则返回文件中的第一个配方;如果变量recipeName的值为文件中的最后一个配方,则仍返回此配方。注:配方创建后是按序存放的。5.RecipeSelectPreviousRecipe此函数用于在配方模板文件中选择当前配方的前一个配方。语法格式使用如下:RecipeSelectPreviousRecipe( filename, recipeName );filename:指配方模板文件存放的路径和相应的文件名;recipeName:是一个字符串变量,存放工程人员选择的当前配方名字。注:文件名和配方名如果加上双引号,则表示是字符串参数,若不加双引号,则可以是组态王中的I/O型变量或内存型变量。B 例:RecipeSelectPreviousRecipe(“C:recipe北京面包厂.csv”,“配方3”);此语句运行后读取模板文件中“配方3”的的上一个配方,如果变量recipeName的值为空或没有找到,则返回文件中的最后一个配方;如果变量recipeName的值为文件中的第一个配方,则仍返回此配方。注:配方创建后是按序存放的。6.RecipeSelectRecipe此函数用于在指定的配方模板文件中选取工程人员输入的配方,运行此函数后,弹出对话框,工程人员可以输入指定的配方,并把此配方名送入字符串变量中存放。语法格式使用如下:RecipeSelectRecipe( filename, recipeNameTag, Mess );filename:指配方模板文件存放的路径和相应的文件名;recipeNameTag:是一个字符串变量,存放工程人员选择的配方名字;Mess:字符串提示信息,由工程人员自己设定。B 例:RecipeSelectRecipe(“C:recipe北京面包厂.csv”,RecipeName,“请输入配方名!”);此语句运行后将弹出一个“选择配方”对话框,给出提示信息“请输入配方名!”,一旦工程人员从对话框中选择了一个配方,则此函数将该配方的名字返回到变量RecipeName中存放。15.3.2 配方示例本节建立一个配方操作按钮的实际例子,以15.2节中定义的“面包配方.csv”模板文件为实例中的配方模板。新建“配方管理”画面。在画面上建立配料变量显示,绘制多个按钮,各个按钮中连接配方管理命令语言函数。如图15.8所示。图15.8 开发系统配方管理画面1.建立“选择配方”按钮 在画面制作系统绘出按钮,按钮文本字符串为“选择配方”; 给“选择配方”按钮进行命令语言连接,命令语言程序如下。RecipeSelectRecipe( D:配方管理面包配方.csv, recipeName, 请输入配方名称 );RecipeLoad( D:配方管理面包配方.csv, recipeName );注:其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论