1油墨生产流程控制程序设计 程序分成8部分,即日用粉料仓补料程序,愿油料罐自补料程序,配方管理程序,混合罐自动配料程序(MT),混合罐搅拌程序,CO研墨程序,二次加料控制程序(LT),调整罐搅拌程序。现将每个程序的功能介绍如下 1。日用粉料仓、原油料罐补料程序 所有的粉料仓都装有称重传感器,称重显示仪表安装于现...
3.系统软件设计
3.1油墨生产流程控制程序设计
程序分成8部分,即日用粉料仓补料程序,愿油料罐自补料程序,配方管理程序,混合罐自动配料程序(MT),混合罐搅拌程序,CO研墨程序,二次加料控制程序(LT),调整罐搅拌程序。现将每个程序的功能介绍如下
1. 日用粉料仓、原油料罐补料程序
所有的粉料仓都装有称重
传感器,称重显示
仪表安装于现场,以便于现场卸料

员观看,每个日料仓都设有上、下限控制,程序通过检测,会自动给日料仓补充粉料。原油罐与粉料仓相似,其自补料程序与粉料基本相同。
2. 配方管理程序
该程序的功能主要

通过组态王自带配方管理功能,通过函数调用配方、选择配方保存、删除配方,还可以添加配方来实现配方管理。详见配方管理功能。
3. 混合罐自动配料程序(MT)
该程序是整个
工艺流程中最重要的部分,它的功能是完成对配料过程的控制。混合罐是高速预分散罐,混合罐上的搅拌器通过高速预分散将所配油料及粉料进行充分混合后,研磨机才可进行研磨,由于高速预分散是一个散热过程,所以混合罐上装有温度
传感器,当温度高于混合罐的设定上限值时,系统打开冷却水阀门进行冷却,当温度低于下限时,关闭冷却水阀门。混合罐上装有上限保护
开关及称重传感器,秤的实际值以千克值在上位机上显示,当液位低于某一

数值时,混合罐上的搅拌器关闭。通过混合罐底部称重传感器对所加料的检测,控制上端阀体打开或关闭,来完成配料的过程。具体分为油料配制,与粉料配置。两种配料过程是不同的,油料是分批次下料,料1下放完毕后关闭相应阀体,并启动料2的配制,料2完毕后启动料3,料3完毕后,关闭相应阀体,油料配制完毕,启动粉料的配制。粉料的下料是通过粉料流量计的,因此可以三种料一起下放,谁先到达预定值,就相应停止该料的下放。程序流程见图 3.2。
4. 混合罐、调整罐的搅拌程序
搅拌程序是对
电机的控制,和搅拌时间的控制。只有达到相应的条件才能进行搅拌,时间的控制,

里是一个延时程序控制,程序比较简单,这里不再赘述。
5. CO研墨程序
该程序是通过检测判别相应的进出口压力、温度及上面缓冲罐的料位情况来决定研墨机和进料泵的启停。
6. 二次加料程序程序
当一个批次研磨完后,由检测人员进行检测,通过计算,如果需要调整,则必须创建一个调整工序,调整工作配方输入后,控制系统自动启动二次加配料程序并将所配料排至目标罐。二次加料的控制程序与混合罐配料程序有相似之处,并且比混合罐配料程序更简单,因为没有粉料的配制。这里不再赘述。
程序流程图如下:图3.1油墨生产控制主程序流程图
下面是配料控制程序流程图:
3.2 应用组态王开发监控系统软件
新型的工业自动控制系统正以标准的工业计算机软、硬件平台构成的集成系统取代传统的封闭式系统,它具有适应性强、开放性好、易于扩展、经济、开发周期短等优点。通常可以把这样的系统划分为控制层、监控层、管理层三个层次结构。其中监控层对下连接控制层,对上连接管理层,它不但实现对现场的实时监测与控制,且在自动控制系统中完成上传下达、组态开发的重要作用。
选用北京亚控组态王6.5版软件256点开发版、256点运行版。
建立应用工程的一般步骤:
a.设计图形界面 b.定义设备 c.构造数据库变量 d.建立动画连接 e.运行和调试
这五个步骤并不是完全独立的,事实上,这五个部分常常是交错进行的。在用TOUCHMAK构造应用工程之前,需要仔细规划项目,主要考虑三方面问 :画面;数据;动画。通过对监控系统要求及实现功能的分析,采用组态王对油墨生产线监控系统进行设计,系统组态结构如图3.3
★★ 系统开发过程步骤
★ 定义设备
组态王把那些需要与之交换数据的设备或程序都作为外部设备。外部设备包括:下位机(PLC、仪表、
模块、板卡、
变频器等),它们一般通过串行口和上位机交换数据;其他Windows应用程序,它们之间一般通过DDE交换数据;外部设备还包括
网络上的其他计算机。
只有在定义了外部设备之后,组态王才能通过I/O变量和它们交换数据。通过“设备配置向导”就可以简单的完成外部设备的连接。
※※在进行各个外部设备定义之前,需要确定该设备的驱动已经安装,如果使用Windows NT系统,还需要安装系统补丁。
1、模拟量数据采集卡PCL813的定义
①在组态王工程浏览器的左侧选中“板卡”,在右侧双击“新建”,运行“设备配置向导”;
②选择“研华”,“PCL813”,“板卡”,单击下一步,打开逻辑名称
设置对话框;
③外部设备取名“PCL813”,单击下一步,打开设备地址,初始化设置对话框;
④组态王定义PCL813设备的地址格式为 十六进制数, 设地址为304,无初始化字。单击下一步弹出信息总结对话框。确认无误后完成即可,否则可返回上一步,重新设置。
2.数字量采集输入输出板卡PCL730 、PCL725的定义
定义过程与PCL813基本相同,只是信息设置地址不同而已。这里就没必要在叙述了。
★ 构造数据库变量
数据库是“组态王”最核心的部分。在TOUCHVEW运行时,工业现场的生产状况要以动画的形式反映在屏幕上,操作者在计算机前发布的
指令也要迅速送达生产现场,所有这一切都是以实时数据库为中介环节,所以说数据库是联系上位机和下位机的桥梁。
数据库中变量的集合形象地称为“数据词典”,数据词典记录了所有用户可使用的数据变量的详细信息。
在组态王软件中数据库分为:实时数据库和历史数据库
数据库中存放的是制作时定义的变量以及系统预定义的变量。变量可以分为基本类型和特殊类型两大类。基本类型的变量又分为“内存变量”和“I/O变量”两类。基本类型的变量也可以按照数据类型分为离散型、模拟型、

整数型和字符串型。
特殊变量类型有报警窗口变量、报警组变量、历史趋势
曲线变量、时间变量四种。这几种特殊类型的变量正是体现了“组态王”系统面向工控软件、自动生成人机接口的特色。
在工程浏览器的左侧选择数据词典,在右侧双击新建,就可以打开数据属性设置对话框,进行变量的定义。
以每种类型一个变量为例,我们简单介绍下变量的具体设置:
1、内存离散变量、I/O离散变量
内存和I/O离散变量的区别是否与外部设备连接,其他设置基本相同。
以下油料阀11为例,定义变量的基本属性如图 3.4所示:
连接设备选择PCL730,寄存器格式:DIdd,dd表示数字量输入通道,取值范围0~31。如上图的下油料阀由第8路输入,因此写为DI08。依照寄存器类型选择数据类型Bit。
图3.4 定义IO离散变量
2、内存实型变量、I/O实型变量
内存和I/O实型变量的区别同样在于是否与外部设备连接,其他设置基本相同。以混合罐1的温度为例,定义IO变量的基本属性、报警定义、记录。
※ 需要注意的是,最小值、最大值、最小原始值、最大原始值的设置。
Ø 最小值:该变量值在数据库中的下限;
Ø 最大值:该变量在数据库中的上限;
Ø 最小原始值:与前面定义的最小值所对应的输入原始模拟值的下限
Ø 最大原始值:与前面定义的最大值所对应的输入原始模拟值的上限
如温度传感器的输入范围为0~5V,温度范围为0~100℃。因此最小值为0,最大值为100。PCL730为12位的数据采集卡,因此输出范围为0~4095,所以最小值为0,最大值应为4095。
连接设备选择PCL813,寄存器格式:ADdd,dd表示模拟量输入通道,取值范围0~31。如上图的下温度由第6路输入,因此写为AD06。依照寄存器类型选择数据类型SHORT。定义属性如图3.5
记录与安全区中,定义数据变化记录,即只要数据发生变化就进行记录。
根据温度允许范围,在报警定义中,确定报警界限值低为10,报警文本为“温度低”;高为100,报警文本为“温度高”。
★ 画面生成动画连接
开发者在TOUCHMAK中制作的画面都是静态的,需要通过实时数据库,因为只有数据库中建立的变量才是与现场状况同步变化的。数据库变量的变化又通过“动画连接” 导致画面的动画效果。所谓“动画连接”就是建立画面的图素与数据库变量的对应关系。这样,工业现场的数据,比如温度等,当它们发生变化时,通过设备驱动,将引起实时数据库中相关联变量的变化。 动画连接的引入是设计人机界面的一次突破,它把程序员从繁重的图形
编程中解放出来,为程序员提供了标准的工业控制图形界面,并且通过内置的命令语言连接来增强图形动画效果。
下面介绍几个主要画面的开发与动画连接过程:
混合反应车间画面:该车间是油墨生产线的主要反应部分,涉及的监控量较多,是生产的主要环节,如图 3.7。 搅拌器旋转的动画实现:
首先利用画多边形工具画出叶轮样子,复制成六个,改变不同的视角形状,生成六个不同形状的叶轮,编号为0到5。定义整型内存变量“动作状态” ,在应用程序命令中编制下列循环程序:
if(\\本站点\动作状态<5)
{\\本站点\动作状态=\\本站点\动作状态+1;}
else{\\本站点\动作状态=0;}
该程序是实现变量“动作状态”的从0到5的自增1循环程序。
针对每个叶轮设置隐含属性条件如图3.8。对于0号叶轮设置成:
\\本站点\动作状态==0||!\\本站点\搅拌电机1
然后将这六个叶轮相互重叠放置在一起,保存画面,运行后即可见到。水流的动画实现与叶轮的原理相同。
混合罐料位的缩放动画:
由于罐体是自己画的,没有填充功能。现利用缩放功能实现料位的动画效果。双击该点位图,弹出动画连接对话框,点击缩放按钮,弹出缩放连接对话框如图 3.9。设置表达式如图,填写对应的数值即可。
模拟值的输入输出显示:
在画面上输入字符###(其它也可),双击进入动画连接对话框,点击模拟值输出,弹出如图 3.10的对话框,设置如图。当然改变量必须设置成可读可写型。模拟值的输出显示与输入类似,只是如果不需要同时输入模拟值时,设置成只读型即可。并设置输出数据位数,显示方式。至于其它离散量的连接比较简单。
★ 系统管理功能配置
1. 配方管理
实现对油墨生产的配方管理工作,可以显示存入系统的全部油墨配方,调用系统定义的配方,也可以根据生产过程的要求自己增加新配方。方便了配方的管理和应用,使配方的调用和修改更加灵活。配方管理画面如图 3.11
针对本系统的实际情况,定义了配方文件“油墨配方.csv”并与相应的配方函数实现对配方的管理和操作。定义了调入配方、选择配方、保存配方、删除配方、确定、以及添加配方功能。
2.报警功能
报警是指当系统中某些量的值超过了所规定的界限时,系统自动产生相应警告信息,表明该量的值已经超限,提醒操作人员。报警的显示比较简单,采用组态王中的报警控件即可。声音报警需进行编程设置。例如:温度高声音报警
并对其属性进行些设置如图3.12 。
图3.12 报警设置属性
本设计根据每个车间设置了报警组,并针对研墨车间单独创建了报警画面,这里需要说明的是在设置需要报警的变量时必须对其进行报警设置和记录设置(可参考前面的变量定义图 3.6),才能把该变量的报警显示到画面中。
3. 报表功能
数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。是生产过程必不可少的部分。它既能反映系统实时的生产情况,也能对长期的生产过程进行打印、统计、分析,使管理人员能够实时掌握和分析生产情况。
图3.13 系统报表画面
4. 趋势曲线分析功能
该画面是对现场数据的采集形成曲线表达,更形象直观的看出数据的发展趋势,分历史曲线与实时曲线,即能得到实时值,还能对历史数据进行查询打印功能。通过曲线切换按钮,曲线可以在历史曲线和实时曲线中切换,如图3.14、3.15所示。曲线切换菜单的命令语言如下:
if (menuindex==0)
{ k1=1;}/*实时曲线*/
if (menuindex==1)
{ k1=0;}/*历史曲线*/
在画面命令语言中设置:if(k1==1)
{Ctrl4.HTUpdateToCurrentTime();}/*使控件的右指示器永远指向当前值*/
这样,在对菜单进行切换时,就能实现两种曲线的切换。