组态王中的配方管理.docx
- 文档编号:4864195
- 上传时间:2022-12-10
- 格式:DOCX
- 页数:13
- 大小:196.84KB
组态王中的配方管理.docx
《组态王中的配方管理.docx》由会员分享,可在线阅读,更多相关《组态王中的配方管理.docx(13页珍藏版)》请在冰豆网上搜索。
组态王中的配方管理
第十五章配方管理
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个
0
0
巧克力
0
500克
0
注:
表中的数字是示意性的。
又如,在钢铁厂,一个配方可能就是机器设置参数的一个集合,而对于批处理器,一个配方可能被用来描述批处理过程中的不同步骤。
组态王支持对配方的管理,用户利用此功能可以在控制生产过程中得心应手,提高效率。
比如当生产过程状态需要大量的控制变量参数时,如果一个接一个地设置这些变量参数就会耽误时间,而使用配方,则可以一次设置大量的控制变量参数,满足生产过程的需要。
15.1.2组态王中的配方管理
组态王提供的配方管理由两部分组成:
配方管理器和配方函数集。
配方管理器打开后,弹出对话框,用于创建和维护配方模板文件;配方函数允许组态王运行时对包含在配方模板文件中的各种配方进行选择,修改,创建和删除等一系列操作。
所有配方都在配方模板文件中定义和存储,每一个配方模板文件以扩展名为csv的文件格式存储,一个配方模板文件是通过配方定义模板产生的。
配方定义模板
用于定义配方中的所有项目名(即配料名),项目类型,数据变量(与每一个项目名对应),配方名。
每一个配方指定每一个配料成份所要求的数量大小。
配方定义模板的结构如下:
项目名
变量名
变量类型(项目类型)
配方1
配方2
配方M
配料1
变量1
实数型、整数型、离散型或字符串型
11
21
M1
配料2
变量2
实数型、整数型、离散型或字符串型
12
22
M2
配料3
变量3
实数型、整数型、离散型或字符串型
13
23
M3
配料4
变量4
实数型、整数型、离散型或字符串型
14
24
M4
配料N
变量N
实数型、整数型、离散型或字符串型
1N
2N
MN
注:
配方名由用户设定,具体的配方数表示配料的数量大小,此处的数字是示意性的,并不表示具体意义。
15.1.3配方的工作原理
配方模板文件中的配方定义模板完成后,在组态王运行时可以通过配方函数进行各种配方的调入,修改等。
其工作原理结构示意图如下:
项目和变量名配方
项目名项目类型变量名
配料1实数型变量1
配料2实数型变量2
配料3整数型变量3
配料4整数型变量4
配料N离散型变量N
配方
分配
配方1配方2配方3配方M
112131M1
122232M2
132333M3
142434M4
1N2N3NMN
1N
配方分配的功能由配方函数来完成,通过配方分配将指定配方(如配方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配方定义
“配方定义”窗口中的前两列为变量名、变量类型。
变量名:
为组态王中已经定义的数据变量名,定义配方之前必须先在数据词典中定义所有配方中要用到的变量。
变量类型:
为整数型、实数型、离散型、字符串型中的一种,当用户选择变量名后,变量类型会自动加入,不需要用户输入。
当用户手动输入变量名后,变量类型不自动加入,需要用户输入。
下面介绍配方定义对话框中的菜单命令。
单击“表格”菜单,弹出下拉式菜单,如图15.3所示。
图15.3
增加行:
选择此键,在输入焦点所在行的位置上面增加一行。
删除行:
选择此键,则删除输入焦点所在的行。
增加列:
选择此键,在输入焦点所在列的位置前面增加一列。
删除列:
选择此键,则删除输入焦点所在的列。
保存:
把指定文件保存在相应目录下。
另存为:
把指定文件保存在指定目录下。
退出:
退出配方,如果配方没有存盘,则提示存盘。
单击“工具”菜单,弹出下拉式菜单,如图15.4所示。
图15.4
配方属性:
按下此键,则弹出“定义配方”对话框如图15.5所示。
图15.5定义配方属性
配方名称:
要建立的配方名,由用户自己设定,定义的名称要有实际的意义。
配方种类数目:
指定配方数目,最大值为256种。
变量数量:
指定与配方中的项目相对应的变量个数,最大值为1024个。
化工还好还好
自动右移:
这时按下enter键,输入焦点自动右移。
自动下移:
这时按下enter键,输入焦点自动下移。
不动:
这时按下enter键,输入焦点不动。
向上填充:
输入焦点及向上所有被选中的方框都填入与输入焦点的值相同的值。
向下填充:
输入焦点向下所有被选中的方框都填入与输入焦点的值相同的值。
向左填充:
输入焦点向左所有被选中的方框都填入与输入焦点的值相同的值。
向右填充:
输入焦点向右所有被选中的方框都填入与输入焦点的值相同的值。
单击“变量[V]”菜单,弹出“选择变量名”对话框,如图15.6所示,供用户选择数据词典中已定义的变量。
哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈6777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777
图15.6连接变量
例:
下面举一个例子介绍如何创建配方模板。
1.加入变量:
鼠标选中“变量1”所在列名为“变量名”的单元格,此时“变量[V]”菜单栏变为黑色有效。
单击“变量”,弹出“选择变量名”窗口,选中一个已经定义好的组态王变量,单击“确定”,完成变量选择。
“配方定义”窗口中相应变量的变量类型自动显示出来。
如果变量名是由手动输入的,则需要手动输入相应的变量类型。
加入多个变量的方法相同。
2.建立配方:
在第一行中各个配方名称相应的单元格中输入各种配方的名称。
鼠标单击“配方1”下面的单元格,单元格变为输入状态,输入配方名称即可。
接下来在下面对应变量中输入每种配方不同的变量的量值。
3.修改配方属性:
编辑完配方之后,鼠标单击“工具”菜单中“配方属性”,定义配方模板的名称为“面包配方”,按照实际配方种类和使用的变量输入数据。
定义好的配方模板如图15.7所示。
图15.7定义好的配方模板
15.3如何使用配方
配方的使用是建立配方模板后,通过使用配方命令语言函数实现的。
配方命令语言函数的调用可通过建立操作按钮或是在命令语言中调用来实现。
下面首先详细介绍配方命令语言函数,然后再建立一个配方操作按钮的一个实际例子。
15.3.1配方命令语言函数
1.RecipeDelete
此函数用于删除指定配方模板文件中当前指定的配方。
语法格式使用如下:
RecipeDelete("","recipeName");
:
指配方模板文件存放的路径和相应的文件名;
recipeName:
指配方模板文件中特定配方的名字。
注:
文件名和配方名如果加上双引号,则表示是字符串常量,若不加双引号,则可以是组态王中的DDE或内存型字符串变量。
例:
RecipeDelete(“C:
\recipe\北京面包厂.csv”,“配方3”);
此语句将配方模板文件“北京面包厂.csv”中的配方3删除。
2.RecipeLoad
此函数将指定配方调入模板文件中的数据变量中。
语法格式使用如下:
RecipeLoad("","recipeName");
:
指配方模板文件存放的路径和相应的文件名;
recipeName:
指配方模板文件中特定配方的名字。
注:
文件名和配方名如果加上双引号,则表示是字符串常量,若不加双引号,则可以是组态王中的I/O型或内存型字符串变量。
例:
RecipeDelete(“C:
\recipe\北京面包厂.csv”,”水果香型面包”);
此语句将配方模板文件“北京面包厂.csv”中的配方“水果香型面包”调入到项目模板定义中的数据变量中。
3.RecipeSave
此函数用于存放一个新建配方或把对原配方的修改变化存入已有的配方模板文件中。
语法格式使用如下:
RecipeSave("","recipeName");
:
指配方模板文件存放的路径和相应的文件名。
recipeName:
指配方模板文件中特定配方的名字,
注1:
文件名和配方名如果加上双引号,则表示是字符串常量,若不加双引号,则可以是组态王中的I/O型或内存型字符串变量。
注2:
配方模板文件必须存在,如果配方模板文件不存在,则要事先创建配方模板文件,否则,调用此函数将失败,并返回FALSE。
例:
RecipeSave(“C:
\recipe\北京面包厂.csv”,“配方3”);
此语句将配方的修改变化存入到配方模板文件“北京面包厂.csv”中的配方3中。
如果“北京面包厂.csv”中没有配方3,则系统自动创建。
4.RecipeSelectNextRecipe
此函数用于在配方模板文件中选择指定配方的下一个配方。
语法格式使用如下:
RecipeSelectNextRecipe("","recipeName");
:
指配方模板文件存放的路径和相应的文件名;
recipeName:
是一个字符串变量,存放工程人员选择的配方名字。
注:
文件名和配方名如果加上双引号,则表示是字符串参数,若不加双引号,则可以是组态王中的I/O型变量或内存型变量。
例:
RecipeSelectNextRecipe(“C:
\recipe\北京面包厂.csv”,“配方3”);
此语句运行后读取模板文件中“配方3”的下一个配方,如果字符串变量recipeName的值为空或没有找到,则返回文件中的第一个配方;如果变量recipeName的值为文件中的最后一个配方,则仍返回此配方。
注:
配方创建后是按序存放的。
5.RecipeSelectPreviousRecipe
此函数用于在配方模板文件中选择当前配方的前一个配方。
语法格式使用如下:
RecipeSelectPreviousRecipe("","recipeName");
:
指配方模板文件存放的路径和相应的文件名;
recipeName:
是一个字符串变量,存放工程人员选择的当前配方名字。
注:
文件名和配方名如果加上双引号,则表示是字符串参数,若不加双引号,则可以是组态王中的I/O型变量或内存型变量。
例:
RecipeSelectPreviousRecipe(“C:
\recipe\北京面包厂.csv”,“配方3”);
此语句运行后读取模板文件中“配方3”的的上一个配方,如果变量recipeName的值为空或没有找到,则返回文件中的最后一个配方;如果变量recipeName的值为文件中的第一个配方,则仍返回此配方。
注:
配方创建后是按序存放的。
6.RecipeSelectRecipe
此函数用于在指定的配方模板文件中选取工程人员输入的配方,运行此函数后,弹出对话框,工程人员可以输入指定的配方,并把此配方名送入字符串变量中存放。
语法格式使用如下:
RecipeSelectRecipe("","recipeNameTag","Mess");
:
指配方模板文件存放的路径和相应的文件名;
recipeNameTag:
是一个字符串变量,存放工程人员选择的配方名字;
Mess:
字符串提示信息,由工程人员自己设定。
例:
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);
注:
其中recipeName是在数据词典中定义的内存字符串型的组态王变量。
2.建立“调入配方”按钮
◆在画面制作系统绘出按钮,按钮文本字符串为“调入配方”;
◆给“调入配方”按钮进行命令语言连接,命令语言程序如下。
RecipeLoad("D:
\配方管理\面包配方.csv",recipeName);
3.建立“存配方”按钮
◆在画面制作系统绘出按钮,按钮文本字符串为“存配方”;
◆给“存配方”按钮进行命令语言连接,命令语言程序如下。
RecipeSave("D:
\配方管理\面包配方.csv",recipeName);
4.建立“选择下一个配方”按钮
◆在画面制作系统绘出按钮,按钮文本字符串为“选择下一个配方”;
◆给“选择下一个配方”按钮进行命令语言连接,命令语言程序如下。
RecipeSelectNextRecipe("D:
\配方管理\面包配方.csv",recipeName);
RecipeLoad("D:
\配方管理\面包配方.csv",recipeName);
5.建立“选择上一个配方”按钮
◆在画面制作系统绘出按钮,按钮文本字符串为“选择上一个配方”;
◆给“选择上一个配方”按钮进行命令语言连接,命令语言程序如下。
RecipeSelectPreviousRecipe("D:
\配方管理\面包配方.csv",recipeName);
RecipeLoad("D:
\配方管理\面包配方.csv",recipeName);
6.建立“删除配方”按钮
◆在画面制作系统绘出按钮,按钮文本字符串为“删除配方”;
◆给“删除配方”按钮进行命令语言连接,命令语言程序如下。
RecipeDelete("D:
\面包配方.csv",recipeName);
配方管理画面就制作好了,保存画面,切换到运行系统中。
执行配方操作按钮,对配方进行各种操作。
运行系统显示如图15.9所示。
图15.9运行系统配方管理画面
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 组态 中的 配方 管理
![提示](https://static.bdocx.com/images/bang_tan.gif)