摘要:
本系统是基于西门子840D SL数控系统所提供支持的数控动态数据交换机制(NC DDE)所开发,系统应用于轴承生产线从前端磨削到后期装配的整条生产线,实现程序自动开机后台运行,实时采集监控 数据,并与远程云端设定的工单进行数据交互,在产品数量达到既定数量之后,自动控制机床进行运行停止,经确认之后,自动开启运行下一工单计划,解决了由于轴承滚子公差范围批量差异过大的装配问题;同时,系统集成数理统计过程控制系统,实现实时动态分析生产装配区域装配公差范围,并自动控制机床,实现机床的自动磨削参数补偿,实现生产自动化和智能化,较大幅度提高了产品质量。
斯凯孚作为全球大的轴承制造商之一,于2011年在济南建立斯凯孚(济南)轴承与精密技术产品有限公司,济南工厂作为斯凯孚集团汽车业务单元的重要组成部分,2012年投产以来,主要为中国和亚洲的汽车配件市场和工业市场服务,目前主要生产圆锥滚子轴承TRB 和 双列圆柱滚子轴承(THU)两大类。
以产品高质量而闻名的的斯凯孚轴承,在生产制造过程中,一直以高质量、高标准的要求进行生产控制,但在初期,因为生产线过长、员工响应时间滞后等因素,难免会出现整条产品装配合格率偏低的问题,基于此背景,我们对以西门子840D为数控系统的的关键设备进行相关的改造,结合现场实际的情况开发了本系统,解决了相关问题带来的反应滞后,提高了产品合格率,增加的生产效益十分可观。
一、项目(系统)问题分析
1.1生产工艺流程简介
轴承的基本加工流程为:轴承内圈和外圈按照生产线布局,自动在对应磨削工位进行磨削流程,分别经过外圆磨削、端面磨削、滚道磨削、内孔磨削、挡边磨削之后进入检测装配区域,进行检测和装配组合。
1.2 生产线设备简介
公司于2012年开始,先后引进国外精密磨削加工设备和国内轴承检测及装配设备。
磨削设备全部采用西门子840Dsl控制系统,并采用汽车行业的动力总成标准,其中数控系统主要配置主要如下:NCU 710.2 、PCU50.3 (装载HMI Advanced,基于Windows XP,双网卡),MPP483 IE 以及对应伺服驱动与电机等。设备从电气控制和机械精度上满足自动化的要求,主要实现轴承内、外圈毛坯件的精密磨削加工:外圆磨削、滚道磨削、内孔磨削等工艺流程。
装配设备主要采用西门子S7-200 PLC作为控制器,配置相应的机械、电气以及气动结构,主要实现轴承内圈、滚子、保持架以及轴承外圈的清洗、检测、装配、铆压、注脂等后期工序。
1.3问题描述
在生产过程中,产线前端的磨削过程偏差、滚子的公差、内组件高度、外圈高度等会直接影响终的装配合格率。故当前存在以下问题:
问题1.滚子批次公差不同。不同批次的滚子,滚子公差差异存在,按照理论应该同批次数量的滚子,产生对应的轴承,比如 BTH-0801型号轴承 20个滚子,批量滚子为T,故理论产生轴承数量为 N=T/20,即内外圈,分别需要理论生产N个。但是实际过程中由于生产线过长,在传送带上滞留的和由于报废、返工等产生的数量无法有效的准确衡量,因而造成较大的偏差,对生产质量产生较大影响。
问题2.磨削补偿响应延迟。由于磨削稳定性、滚子公差等影响,会产生相应的偏差趋势,如过程偏差偏高或者偏高,相应的内外圈磨削滚道磨削工序需要进行手动补偿控制,以提高装配合格率,但是由于生产线操作人员反应延迟、测量检测反馈不及时等,补偿生效时间往往处于滞后状态。造成装配合格率偏低。
1.4 项目需求描述及规划
针对以上问题,经过跨部门小组综合整体分析决议,提出以下改进方案,项目方案由两部分构成:
1. 匹配滚子批次工单。针对不同批次的滚子可以设定轴承生产工单,根据产出自动控制机床,该过程中需要实时自动或者手动获取装配区报废、返工等信息,并实时更新工单状态至磨削机床,当工单数量达到后,自动停机,并提示更换下一批次滚子,确认后,自动开始下一工单。
2. 机床自适应磨削补偿。针对装配区所测得装配数据,实时传输至磨削区域,同时,机床可以根据装配检测数据的趋势或者实际情况,进行自动调整磨削补偿,实现自动超差补偿响应。
二、项目方案系统构成
由以上分析可知,根据项目需求,需要对机床实现远程自动控制,需要对装配设备数据进行实时远程读取,对并上传至服务器进行数据库存取,同时磨削机床端需要实时根据机床内部硬件状态,判断加工过程,并远程读写数据,更新工单状态。根据设计思路,整体项目组成结构如下:
图2.1系统功能整体框图
系统功能整体框图 如上图2所示,系统整体由机床、远程服务器、工厂网络、SPC系统 构成的网络化系统结构。工作流程如下:远程设定工单,并将数据存储于服务器端;机床运行时,读取工单,根据工单状态进行加工数量控制,达到设定预警数量后进行机床预定义报警,对机床进行人为反馈后,机床完成工单数量,自动停止加工;同时装配区域设备检测数据通过SPC软件上传至服务器,自动实时传输当前生产偏差数据,机床客户端根据装配区实时数据趋势,自动超前调整磨削补偿数据,实现对生产磨削的超前响应控制。
三、项目系统开发设计
3.1基于不同批次滚子设定工单的系统模块设计
该模块功能主要实现工单设定、基于云端服务器存储、机床实时读取与反馈控制三个主要部分。
图3.1 系统结构简图
对于工单设定以及远程管理及数据存储部分,采用C#编程的软件客户端,具有
型号下拉选择,数据输入,自动计算与存储的功能。理论生产数量公式如下:
同时可以自定义设定预报警数量,软件会自动计算相应的结果,点击提交后会提交至系统,
存储于云端服务器。
图3.1 工单创建画面
3.2 工单计划管理列表
本项目系统中,在远程服务器端架设开源的Mysql数据库作为云端数据服务,机床客户端软件会远程对数据库进行读写控制。
其中难点为数据库数据与840DSL系统机床的连接交互控制。动态数据交换(Dynamic Data Exchange,DDE)是微软公司提出的一种数据通讯形式,即动态数据交换机制,它使用共享的内存在应用程序之间进行数据交换。DDE不同于剪切板方法,它能 够及时更新数据,在两个应用程序之间自动更新信息,无须用户参与。使用DDE通讯需要两个Windows应用程序(该应用基于VB或者VC++编写),其中一个作为服务器处理信息,另外一个作为客户机从服务器获得信息。客户机应用程序向当前所激活的服务器应用程序发送一条消息请求信息,服务器应用程序根据该信息作出应答,从而实现两个程序之间的数据交换。
西门子具有高度的灵活性和开放性,在工业控制市场中占据主导地位,其产品大多基于Windows 系统框架。本项目正是基于以上特点而高效展开。
在项目现场中所采用的数控设备客户机为PCU50.3,基于Windows XP系统,安装有 HMI Advanced,由于该HMI Advanced 本质上是采用VB 作为基础语言编写开发的操作界面应用,故从核心原理上支持微软标准的动态数据交换机制(DDE),同时,西门子在此专门为用户开发者开放了 相关DDE 的API接口,提供了较为的数据传输与系统控制途径方案。(新版的Sinumerik Operator 采用.net 编程架构,故无法使用该技术,但可以采用西门子的 Operator Programming Package编程扩展包方案,进而支持更为高效的.net应用接口,笔者在此不进行详细描述)。
故本质上,所编写的客户端应用实际上并不直接与PLC和NC通讯,而是,通过DDE技术,将HMI Advanced 作为应用服务器(NCDDE),与之交互通讯,进而与NC和PLC通讯,传统的界面二次开发扩展也是基于该原理所进行。
3.1.1机床客户端应用部分程序如下:
With Conn
If .State = adStateOpen Then .Close
.ConnectionString = " DRIVER={MySQL ODBC 5.3 Unicode Driver};" _
& " SERVER=" & ReadIniValue(App.Path & "Setting.ini", "Default", "Host") & ";" _
& " DATAbase=ncudb;" _
& " UID=ncuser;" _
& " PWD=ncpass;" _
& " stmt=SET NAMES GB2312"
.CommandTimeout = 60
.Open
End With
Reco.Open sqlstr, Conn
Flag_PA = Reco!PA_Flag '读取工单状态
Flag_AC = Reco!AC_Flag
Num_ Producted = Reco!Product_num_OUT '读取实际已经生产数量
Num_ Product_Correct = Reco!Product_num_Correct '读取应该生产数量
Num_ Alarm = Reco!Alarm_Pre '读取预警数量
如下图程序所示,DB109.DBX10.1 表示加工完毕,换料完成,故可以以此为系统加工循环标识,统计该位数据的变化次数(数据上升沿),即可统计机床自动生产过程中的数据,西门子提供了NCDDE Server, 可以直接通过HMI 访问和控制相关的NC、PLC数据。
Label8.linkTopic = "ncdde|ncu840d"
Label8.linkItem = "/PLC/DATABLOCK/BIT[C109,10.1]"
Label8.linkMode = 3
通过对换料完成标识位DB109.DBX10.1的读取,判断如果生产完成一个循环,则对当前数据进行判断,根据所设定工单数据输出相应的状态,如果工单完成,则通过DDE方式,将DB10.DB129.DBX6置位,完成加工过程。
Private Sub Label8_Change()
If CInt(Text3.Text) < (CInt(Text4.Text)) Then '小于生产总值的情况下,继续生产至结束,更新数据库
Reco.Close
Set Reco = Nothing
Temp_num = Val(Text3.Text) + 1 '生产一个圈则加1,并对数据库中数据进行加1
Conn.Close
Conn.Open
Conn.Execute ("Update Ring SET Product_num_OUT=" & Temp_num & " where IR_OR_type='" + ReadIniValue(App.Path & "setting.ini", "Default", "IOR") + "'and Status= '已反馈' ")
Conn.Close
Else '机床报警停止当前循环DB10.DB129.DBX6
On Error Resume Next
Label10.linkTopic = "ncdde|ncu840d"
Label10.linkItem = "/PLC/DATABLOCK/BIT[C10,129.6]"
Label10.linkMode = 2 'Manual
Label10.Caption = "1"
Label10.linkPoke
Machine_Stop_Form.Show
Form1.Hide
End If
End Sub
由于工作时磨床砂轮高速旋转,所以工单达到预警值或者工单完成时,机床停止采用的模式不同于设备故障报警产生的紧急停止或者外部的完全设备停止,采用单循环停止,机床工作就绪状态(NC程序该循环结束后,停止读取,砂轮速度、轴位置等保持加工状态不变),所以,当机床预警后完成反馈以及工单完成确认之后,机床会自动反馈至服务器,更新工单状态、或者自动启动下一条工单。从大程度上减少了生产循环节拍的浪费,大程度减小对生产效率的影响。
图3.3 机床操作面板循环停止控制按钮指示图
由于传统的NC DDE运用仅仅是界面的二次开发,故扩展界面应用的启动,肯定在HMI Advanced启动之后,故此时NC DDE Sever已经开启,所以能够正常通讯,但是本项目案例中,开发的客户端软件需要,开机自动后台运行,在HMI界面并无人为启动选项,故在实际部署过程中,需要对开发的应用进行后台自动启动,同时需要进行延时启动,即确保HMI Advanced完全启动,相应的NCDDE Server能够完全启动。否则客户端软件相关功能无法正常运行。
图3.4 西门子840D DDE 数据架构图
如下图所示,在本系统功能中,作为关键性的内圈和外圈生产数量的监控,本系统模块基于DDE的数据采集,将当前生产数据实时保存于服务器,远程状态下,可以实时监控生产状态,并能根据生产状态作出相应的生产计划安排。
图3.5 工单远程状态监控
如下图,当自动完全达到设定工单数量之后,系统会自动全屏弹出提示页面,同时,
设备会自动循环停止,直到操作人员点击确认后,设备会自动启动下一条预设生产的工单。
图3.6 设备当前工单完成提示画面
3.2机床自适应磨削补偿功能系统模块设计
该模块功能主要由装配设备检测数据读取、数据传输与显示、机床自动根据数据趋势自动补偿三个主要部分。装配区设备为S7-200 PLC我们采用SPC站的工控机作为数据采集站点,采集数据存储到服务器,并通过网络实时传输到磨削区域,分别通过屏幕显示实时柱状图和趋势图,同时反馈给机床,机床端软件根据当前实时状态和趋势进行自我磨削补偿。
3.2.1装配设备检测数据读取:
采用某品牌工控机,采用C#编写的SPC数据读取软件,通过OPC读取S7-200 的实时检测数据,实时将数据存储到服务器,执行效率和准确率完全符合。具体内容在此不予冗余陈述。
3.2.2 数据传输与显示:
基于现场生产线距离过长,生产操作人员相对精简的情况,装配区域与磨削区域生产人员无法有效及时沟通,会产生生产偏差响应周期长,无法及时的反馈到磨削前端的问题,导致
无法及时的人为去控制偏差及趋势,故在磨床操作站增加屏幕,实时显示趋势图和分布图,以此来实现操作人员直观、快速的进行反馈响应。该部分软件运行于基于Windows系统的Mini PC(迷你型电脑),并实时显示到屏幕,部分代码如下:
3.2.3 机床自适应超前磨削补偿:
本单元中”数据传输与显示”模块已经实现将装配区域实时传输到对应的磨削前端,在一定程度上解决了人为产生的响应延时,但是在高效率、快节奏的生产节拍中如何实时、快速的动态响应磨削补偿,需要设备具有自我调整能力.本项目中对于NC系统的控制依旧采用前面提到的NC-DDE 动态数据链接技术,通过对数据趋势的整体分析,采用一定的算法,相应的动态调整磨削补偿量,使整体趋势保持在中值线两侧、上下参考值线之内,在一定程度上解决相应的数据结构。部分代码如下:
Compensation.linkTopic = "ncdde|ncu840d"
Compensation.linkItem = "/Channel/Parameter/R[120]"
Tem_R390.linkItem = "/Channel/Parameter/R[390]"
Compensation.linkMode = 2 'Manual
Compensation.Caption = "3"
Tem.linkTopic = "ncdde|ncu840d"
Tem.text= K * Var(Compensation.text)+ Var(Tem_R390.text) '机床补偿参数线性计算
Tem.linkItem = "/Channel/Parameter/R[120]"
Tem.Caption = "1"
Tem.linkPoke
经过程序化控制之后,实现了界面手动补偿和系统趋势自动补偿,大程度的控制偏差在质量要求之内。
图3.7 原有手动补偿画面
图3.8 生产趋势图数据控制趋势图
如图所示,经过超前自动趋势补偿之后,整体生产趋于稳定,效果系统作用明显。
四、系统整体项目运行及馈
在项目组整体配合下,项目进展顺利,经过稳定测试之后,已经应用于从前端磨削到后期装配的整条生产线,系统实时采集监控数据,并与远程云端设定的工单进行数据交互,自动按照设定工单数量运行加工,较大程度了解决了由于轴承滚子公差范围批量差异过大的装配问题;同时,自动磨削补偿模块,实时动态分析生产装配区域装配反馈的偏差趋势,并自动调控机床,实现机床的自动磨削参数补偿,实现生产自动化迈向智能化,较大幅度提高了产品质量.估计直接生产效益在100万人民币以上。
图3.8 项目设备展示图
五、应用总结
整个项目在大程度节省成本上,采用西门子840D系统提供的开放DDE数据接口,高效的完成设定目标,主要归结于以下两点:
1. 西门子数控产品开放性
作为工业控制与数控领域的集大成者,西门子840D系统具有高度的开放、灵活而又统一的结构,基于windows系统的PCU50.3,高度开放相关API,极大的方便了项目所需要的系统二次开发。
2.西门子数控产品网络化便捷性
在原有840D基础上升级的新一代840D SL 采用网络一体化结构,在驱动模块网络化、局域网络化以及外部公共网络化上具有独立而又统一的组态结构,具有较高的网络便捷性,使得项目能够在不采用其他工业网卡的情况下,能够快速的实现网络化拓扑,对项目的高效稳定实现具有重要意义。