1 引言
我厂电镀车间的生产设备,特别是控制设备,基本上是全套引进日本的产品www.cechina.cn,在国内处于领先地位。但现场显示作业数据的仪表,则相对来讲显得较落后,除温度、PH仪表外,其他仪表大多是指针或浮球等指示CONTROL ENGINEERING China版权所有,读数不便。另一方面,由于电镀产品的特殊性www.cechina.cn,特别是铜板镀镍,周期较长,一般需3~7天CONTROL ENGINEERING China版权所有,作业过程中需记录大量数据。而电镀车间由于人员缺少,一则无法做到连续性记录数据(通常1~2小时记录一次)。再则夜间无人值班,造成该时间段数据空白。这些缺陷,给技术人员在分析产品质量的影响因素,如何提升产品质量等带来了较大困难,特别是一旦出了质量问题,因缺少真实有效的数据而无法进行分析。
另外,夜间无人值班,生产过程中若有异常情况发生,则无法获知,更谈不上及时处理,造成产品质量受影响或报废。并且由于需要人工抄录数据,浪费了大量劳动力。
鉴于上述状况,希望通过计算机对现场作业数据进行自动采集,真实有效地反映作业过程,同时提升我厂电镀设备能力的市场形象。
2 设计目标
系统应实现如下功能:
(1) 自动无间断地进行现场作业数据的采集;
(2) 数据的图表显示及友好的
人机界面;
(3) 报警系统控制工程网版权所有,具备报警的历史记录、无线报警等功能;
(4) 生产作业及其数据的计算机无纸化管理;
(5) 各种作业数据的图表打印;
(6) 远程监视功能。
3 系统实现
系统分设备层与计算机层。设备层由PLC及现场仪表等组成,所有的模拟量信号通过转换器转换为4~20mA电流后传送。PLC负责对现场作业数据的采集,并与上层计算机进行数据交换(其中一电镀车间采用Profibus通讯协议,通讯速率3Mbps,二电镀车间采用MPI通讯协议,通讯速率为187.5kbps)。至于计算机层,采用分布式多客户机的组态方式。两个车间分别由两台服务器负责与PLC的通讯、数据采集归档、报警归档等,另几台PC机作客户机用,其共享服务器的数据,但拥有各自的项目文件。
几台客户机分别放置于车间现场、休息室及办公室,其主要负责画面的显示:
(1) 以设备的运转状况、管道内镀液的流向及各种参数的显示等真实反映作业状况;
(2) 以原电气控制箱的仪表、指示灯等的显示方式、布局进行表达,适应操作者原有的习惯;
(3) 提供模拟量参数的曲线描述,方便用户的技术分析;
(4) 提供报警历史查询。
系统结构如图1所示。
图1 系统结构图 (1) 模拟量数据PLC程序处理 所有模拟量传输为4~20mA电流信号,对应各变送器的量程,需程序处理(虽然Wincc变量设置中有对应比例关系,但小数点后精确度不够,通过PLC程序处理,还可实现数字滤波),其中温度计算程序部分示例如下: OPN DB2 L PIW448 T MW100 L MW100 DTR PUSH L 1.000000e+002 *R PUSH L 2.764800e+004 /R T DB2.DBD0 在模拟量数据的归档方面,限制了归档的数量,一亿条数据记录,根据32个模拟量每6s一次的采集频率计算,大约可容纳2年的作业数据量,占用20G的存储空间,在投入运行后,用户可定期将数据导出。 (2) Wincc部分程序处理 系统附加了作业数据的录入及管理功能,如:作业令、铜板编号、工艺卡号、作业的起止时间等。为方便操作者正确录入作业的起始时间与结束时间,系统设计为:整流器电源开,则系统自动显示并填充作业起始时间输入框,同时进行电镀通电量的累计,而当整流器电源关时,系统自动显示并填充作业结束时间输入框。电量的累计在全局脚本中作定义并每分钟触发运行一次(如1#镀镍槽的电量累计,单位KAH,采用C语言编程): 由于需要归档的参数较多,归档数据的调用使用参数动态查询,部分程序如下: static double leiji1; if (GetTagBit("SW1")==1) //返回类型:BOOL {leiji1=leiji1+GetTagDouble("CUR1") /60.0/1000.0;} else {leiji1=0;} //返回类型:double SetTagDouble("dianliang1",leiji1); //返回类型:BOOL return 0; } 注:“SW1”为电源开关输入信号变量,“CUR1”为电流信号变量。 在报警处理方面,系统分一般报警与极限报警,一般报警仅在计算机