本发明属于汽车涂装生产线领域,特别涉及一种基于labview的汽车涂装生产线烘房监控系统及方法。
背景技术:
随着汽车行业的不断发展,行业间的竞争越来越大,国内的汽车厂商不断提高其生产工艺,提升产品质量。其中汽车的涂装工艺是非常重要的一环,它影响到汽车车身的美观,耐腐蚀性,以及车身的寿命,然而在汽车涂装的过程中,烘干又是非常重要的步骤,烘干工艺是将车身表面的涂层由液态转变成无定型的固态漆膜的过程,温度的高低将直接影响到漆膜的品质,温度的烘干温度过低,造成漆膜不能充分固化,出现漆膜发软、硬度低、附着力差的现象,而烘干的温度过高,会造成大量溶剂分子会迅速挥发,超出漆膜间隙一次能释放的溶剂分子范围,进而导致一些分子强行突破漆膜,最终造成在漆膜表面出现气孔或针孔,因此温度是烘干工艺中非常重要的因素。
目前很多厂商的汽车烘房控制系统主要通过pid温度控制仪表实现对烘房温度的实时控制,但是由于汽车烘房温度控制系统具有大滞后、强干扰等问题,同时烘房温度的高低与很多因素有关,控制系统十分复杂,造成很难实现对烘房温度的有效控制和实时显示,温度如果误差比较大,就会对汽车车身的漆膜质量产生很大的影响。此外,目前对烘房温度的实时显示都是在现场的上位机上显示的,当监控人员离开现场的时候,不能实时查看烘房的温度,影响了生产效率和生产的安全性,所以提高温度显示终端的多样化很重要。
技术实现要素:
本发明针对烘房温度不能被有效控制和实时显示,以及为了实现温度显示终端的多样化提出了一种基于labview的汽车涂装生产线烘房监控系统及方法。
本发明系统所采用的技术方案是:一种基于labview的汽车涂装生产线烘房监控系统,plc控制器通过模拟输入模块采集温度传感器的温度电流信号,计算得出当前温度传送给上位机。上位机上显示实时温度和温度曲线,并将当前温度值存入数据库,当前温度超限时,可以在上位机上看到温度报警提示。上位机将温度值进行处理,通过模糊pid控制器得出调整量,将调整量输出给plc控制器,plc控制器通过模拟量输出模块将信号输出给电动调节阀和风阀,进而调节烘房被控温度到设定值。上位机与安装在手机上的软件datadashboard进行通信,使得在手机上可以查看到烘房的实时温度和烘房当前有无温度报警提示。
进一步,所述的温度传感器选用pt100型铂电阻温度传感器。
进一步,所述的plc控制器选用rockwell的1769-l30er型号控制器。
进一步,所述的上位机是基于labview平台,labview主要包括由main.vi为主导,通过调用参数设置.vi、数据记录.vi、曲线拟合与计算.vi、温度报警.vi、温度报警数据显示.vi这些子vi来实现的。
进一步,所述的上位机对采集到的温度值与安装在手机上的软件datadashboard进行通信,是通过路由器把上位机和手机连接在同一网段,然后对手机软件进行相应的界面设置,实现两者之间的通信。
本发明方法所采用的技术方案是:
plc控制器通过采集模块采集到温度传感器的温度电流信号,得出当前温度后传送给上位机,上位机将测量温度值和设定温度值进行比较求出温度误差,通过在labview环境下设计的模糊pid控制器得出调整量,plc控制器通过输出模块将调整量输出给电动调节阀和风阀,进而调节被控温度。上位机与安装在手机上的软件datadashboard进行通信,使得在手机上可以查看到烘房的实时温度和烘房温度有无超限,依次主要包括以下步骤:
步骤1,labview和plc的通信方式:labview通过datasocket的opc层与rslinxopc服务器进行通信。plc设备通过以太网与rslinxopc服务器连接,将数据发送至opc服务器,opc服务器将数据转换成标准的opc格式,再通过com将数据共享至labviewdatasocket的opc层;
步骤2,模糊pid控制器设计:该模糊pid控制器将得到的温度偏差和温度偏差变化率,根据事先确定好的模糊控制规则作出模糊推理的参数校正,在线改变pid参数的值,实现pid参数的自整定,提高汽车烘房温度控制系统的实时性和稳定性;
步骤3,labview和数据库的链接:利用databaseconnectivity工具包的子vi模块,以序号、时间、温度值/标签值格式在数据库中创建数据;
步骤4,数据曲线拟合计算:labview自身带了用于曲线拟合的虚拟仪器子模块,利用labview的分析库提供的三种曲线拟合虚拟仪器模块,包括线性拟合(linear)、指数拟合(exponential)、多项式拟合(polynomial),读取数据库中的温度和时间数据,将数据的格式转换成数组格式,然后调整拟合模型,精度等,达到满意的拟合效果后,设定烘房室体的初始室温,得出该室温下烘房的升降温时间;
步骤5,手机和labview的通信:在手机上安装的datadashboard软件,用路由器连接上位机和手机,使得上位机和手机处在同一个网段。在labview软件程序中创建温度显示共享变量,labview应用程序界面中的显示标签和相对应的共享变量通过网络连接,就可以在手机上对烘房的温度进行实时的监控。
进一步:所述步骤1中,labview通过datasocket的opc层以url的方式访问rslinxopc服务器数据项目,opcurl的基本结构为:opc:/rslinxopcserver+[opctopic名]+plc标签。
进一步:所述步骤2中,主要包括:
步骤2.1,确定模糊语言变量:在汽车涂装生产线中涂烘房室体温度控制时,温度的稳态偏差要求在±5℃之内,即温度的起止范围为:145℃~155℃,温度的稳态值为150℃。则温差e的范围为[-5,5],温差变化率e的范围为[-3,3],取e和δe的模糊集语言都为{nb,nm,ns,zo,ps,pm,pb},温差e及其变化率δe的模糊论域选择为[-3,3],然后确定pid控制器的三个参数的模糊集语言、论域以及比例因子;
步骤2.2,隶属度函数的选取:选用三角形作为语言变量的隶属度函数曲线;
步骤2.3,建立模糊规则表:根据pid三个参数对控制系统动、静态的不同影响,同时考虑在不同温差e以及温差变化率δe情况下,系统对pid三大参数的调节要求,建立模糊控制规则表;
步骤2.4,模糊推理和解模糊:模糊推理方法采用mamdani推理。经过模糊推理后,模糊控制器输出一个模糊集合,采用重心法计算与当前温差e和温差变化率δe相对应的pid控制器参数的调整量。
进一步:所述步骤3中包括:
步骤3.1,建立数据库文件:用access建立一个logsheet.mdb数据库文件;
步骤3.2,利用udl链接数据库:新建的数据库链接名称为logsheet.udl,通过应用序接口ado访问在logsheet.mdb数据库文件。
本发明的技术效果是:减少烘房控制系统的不稳定因素,通过上位机实现对烘房温度的有效控制和实时显示,把实时的温度数据记录在数据库中,并调用数据库通过对历史记录的分析,绘制出历史温度曲线。当温度超限或者温度在一段时间内误差较大时就会实现温度报警,及时通知监控人员。通过安装在手机上的软件datadashboard实现对温度的实时监控,温度超限时也可以在手机上看到温度报警提示。
附图说明
图1本发明基于labview的汽车涂装生产线烘房监控系统框图
图2读plc数据流图
图3url参数设置界面图
图4模糊pid控制器结构框图
图5隶属度函数曲线图
图6温度数据显示图
图7温度显示查询界面图
图8温度曲线拟合流程图
图9手机软件界面图
具体实施方式
实施例1:参考图1,为基于labview的汽车涂装生产线烘房监控系统框图,包括手机、上位机、plc控制器、模糊pid控制器、风阀和电度调节阀、温度传感器、循环风机。系统还可以分为两个部分,第一部分,得到烘房的启动信息和实时的温度值。上位机和plc控制器通过以太网连接,plc控制器通过a/d模块连接温度传感器,温度传感器用来检测烘房的温度,plc控制器得到启动信号和温度信号后,传送给上位机,上位机对输入信号进行处理,手机和上位机通过路由器连接,上位机再把数据传送给手机,在手机上就可以看到烘房的实时温度;第二部分,调节烘房的温度。为了减少不稳定因素对烘房温度的影响,plc控制器结合在labview环境下设计的模糊pid控制器得到调节后的输出量,通过d/a模块来调节风阀和电动调节阀,电动调节阀控制烘房各个室体的电动阀,风阀控制循环风机给室体送风,进而调节被控温度达到设定值。
实施例2:开启上位机,对上位机界面的具体操作步骤如下:
步骤:1:在此程序中设置plc项的url地址,通过读取url地址可以实现labview和plc之间的通信。
url地址的格式为标签=opc:/rslinxopcserver+[opctopic名]+plc标签。如温度标签为opc:/rslinxopcserver/[my_topic]program:mainprogram.webdu9,运行程序,按照此格式设置温度标签,烘房启动标签,烘房关闭标签,升温记录周期和降温记录周期,点击确定按钮把数据保存在文件中。
步骤2:程序通过datesocket的opc层读取plc项的url地址,url地址由步骤1中的程序保存在相应的文件。通过读取url地址,可以得到烘房实时温度以及烘房启停信号的状态,当烘房运行时,首先判断数据库表是否已经存在,如果表格已经存在,则删除该表,否则,创建数据库表,将读取到的时间与温度数据插入到数据库表中;当读取的温度值大于设定的温度值时,温度记录完成。
步骤3:包括升温与降温两个状态。点击升温与降温选项卡按钮,可以切换为升温或降温状态。温度曲线模型为单选按钮,包括linear(直线),polynomial(多项式),exponential(指数)三个选项。模型选择后,如果曲线拟合不理想,可以调节阶数(模型选择为exponential时,不可更改)与精度显示,可以提高曲线的拟合效果。启动程序,升温预测选择多项式,降温预测选用指数模式,图表上会显示温度曲线图,在室体温度标签中输入室体的初始温度,能够得到烘房的升温时间,在设定温度标签中输入人员操作的安全温度,能够得到烘房的降温时间。
程序开始运行后,首先判断数据库表是否存在,若不存在,则结束程序,否则读取数据库中的温度和时间数据,将数据的格式转换成数组格式,然后调整拟合模型,精度等,当达到满意的拟合效果后,输入烘房室体的初始室温,得出该室温下烘房的升温时间,得出烘房的降温时间流程也是如此。
步骤4:在室体温度上限这四个标签中填入每个室体的温度上限值,运行程序。烘房启动指示灯可以判断烘房有没有运行,在室体标签中可以看到烘房实时温度,当室体温度超限时,室体报警指示灯会变红,当烘房出现故障时,烘房指示灯会变红,想要看到故障值,参考下一个步骤。
步骤5:运行该程序,输入所要查询记录的名称,比如室体1、室体2、故障等,输入完毕后,点击显示数据按钮,程序会调用数据库,根据输入的标签在数据库中找到相应的标签,把标签对应的序号,时间,温度值或者故障值信息显示在表格中,监控人员就可以根据记录的温度值或者故障标签查看烘房历史温度或者故障值。
实施例3:在手机上安装datadashboard软件,黑色表示温度正常,红色表示温度超限报警,用路由器连接上位机和手机,使得上位机和手机处在同一个网段,软件界面中的显示标签和labview程序中相对应变量连接,接着运行labview主模块main.vi,再运行datadashboard,就可以在手机上对烘房的温度进行实时的监控。
以下结合附图及实施例对本发明作进一步描述:
labview和plc的通信
(1)通信方式
plc设备通过以太网与opc服务器连接,将数据发送至opc服务器,opc服务器将数据转换成标准的opc格式,再通过com将数据共享至opc客户端,同时,opc客户端可以将监控指令通过opc服务器写入plc设备。采用这种通信方式的优势在于:不会因为plc型号的更换而要重新编写通信程序,更换plc设备时,只需对opc服务器进行简单的设置就可以重新实现连接。
labview本身并不是一个opc的客户端,但其datasocket含有一个opc层,允许用户通过labview对opc服务器进行读写。rslinx通讯软件是用于可编程控制器的服务器软件,在设置好rslinxopc服务器后,labview就可以通过datasocket的opc层与rslinxopc服务器进行通信。尽管datasocket与opc的实现原理有所不同,但datasocket与opc在体系上比较相似,二者结构上都是客户服务器模式,都为跨网络传输数据定义了各自的传输协议,并以url的方式访问服务器数据项目。labview中可通过datasocketvi功能子模板上datasocketvi来支持opc应用。在labview中与一个opc服务器建立连接,通过调用datasocketopenconnection.vi图标实现,并将对应于opc服务器数据项目的url传给该vi,opcurl的基本结构为:
opc:/rslinxopcserver+[opctopic名]+plc标签
(2)从plc中读取数据
在设置好rslinxopc服务器和各个标签后,labview通过datasocket的opc层与rslinxopc服务器进行通信。如图2,labview通过rslinxopc服务器对plc进行读操作的数据流图由4个功能块组成。
1)构建读数据项目url标签,如图3,输入室体温度标签、烘房启停标签、故障标签。
如温度标签为opc:/rslinxopcserver/[my_topic]program:mainprogram.webdu1
2)建立与读数据项目的连接。通过datasocketopenconnection.vi打开datasocket连接。url端口与opc服务器数据项目的url数组相连,aecessmode设置为read方式。
3)项目数据更新与显示。通过datasocketreaddouble.vi从打开的连接中读取相应类型的数据,并通过输出端口data将所读数据送出,进行显示或其它用途。
4)关闭与项目的连接。通过datasocketcloseconnection.vi关闭datasocket连接。
3.模糊pid控制器设计
(1)模糊语言变量的确定(如表1的模糊参数表)
本发明模糊pid控制器以温度误差e和温度误差变化率δe作为输入变量,kp、ki、kd作为输出变量。以温度误差和温度误差变化率作为输入可以满足不同时刻对pid参数自整定的要求。利用模糊控制规则在线对pid参数进行修改,便构成模糊pid控制器,其结构如图4所示。
由图可知,该模糊pid控制器将得到的温度偏差和温度偏差变化率,根据事先确定好的模糊控制规则作出模糊推理的参数校正,在线改变pid参数的值,从而实现pid参数的自整定。
在汽车涂装生产线中涂烘房室体温度控制时,温度的稳态偏差要求在±5℃之内,即温度的起止范围为:145℃~155℃,温度的稳态值为150℃。则温差e的范围为[-5,5],温差变化率e的范围为[-3,3],取e和δe的模糊集语言都为{nb,nm,ns,zo,ps,pm,pb},温差e及其变化率δe的模糊论域选择为[-3,3],然后确定pid控制器的三个参数的模糊集语言、论域以及比例因子,如表1。
表1
(2)隶属度函数的选取
在工业工程中,一般选用三角形作为隶属度函数曲线,因此,本发明模糊控制器的语言变量的隶属函数曲线为三角形,输入变量e、δe和输出变量kp、ki、kd的隶属度函数曲线如图5所示。
(3)模糊规则的建立
pid参数的整定必须考虑到在不同时刻三个参数的作用以及互联关系,模糊控制设计的核心是总结工程设计人员的技术知识和实际操作经验,建立合适的模糊规则表,下面根据参数kp、ki、kd对系统输出特性的影响情况,在不同的e、δe,被控过程对参数kp、ki、kd的自整定要求为:
1)当e较大时,为了加快系统的响应速度,避免因开始时偏差e的瞬间变大可能引起微分过饱和,而使控制作用超出许可范围,因此应取较大的kp和较小的kd,同时为了防止积分饱和,避免系统响应出现较大的超调,此时应该去掉积分作用,取ki=0;
2)当e和δe为中等大小,为使系统响应的超调减少,kp、ki、kd都不能取大,取较小的kp值,ki和kd值的大小要适中,以保证系统的响应速度;
3)当e较小,为使系统具有良好的稳定性能,应增大kp和ki值,同时为避免系统在设定值附近出现振荡,并考虑系统的抗干扰性能,应适当地选取kd值,其原则是:当δe较小时,kd可取大些,通常取为中等大小;当δe较大时,kd应取小些。
另外在不确定系统在常规控制作用下,误差e和误差变化率δe越大,系统中不确定量就越大。相反,误差e和误差变化率δe越小,系统中不确定量就越小,利用这种e和δe对系统不确定量的估计,就可实现对pid三参数kp、ki、kd的调整估计。
综上所述,根据pid三个参数对控制系统动、静态的不同影响,同时考虑在不同温差e以及温差变化率δe情况下,系统对pid三大参数的调节要求,建立的模糊控制规则如表2。
表2
(4)模糊推理和解模糊
模糊推理方法采用mamdani推理。经过模糊推理后,模糊控制器输出一个模糊集合,还不能将其输出给控制对象,必须将模糊集合转化为确定的值。采用重心法计算与当前温差e和温差变化率δe相对应的pid控制器参数的调整量δkp、δki、δkd,再将调整量依次代入到pid控制器三个参数的调整公式中,进而求出参数kp、ki、kd的值。
式中kp、ki、kd是pid控制器的参数,k'p、ki'、k'd是kp、ki、kd的初始参数,它们通过常规方法得到。
3.labview和数据库的链接
ni为labview用户提供了一个专门和数据库链接的工具包:databaseconnectivity。安装好工具包后,databaseconnectivity工具包的vi将会在函数选板的附加工具包列中出现。
(1)创建数据库
使用ni所提供的数据库工具包databaseconnectivity只能操作数据库,但是无法创建数据库,因此需要借助第三方数据库管理系统,所以要用access建立一个logsheet.mdb的数据库文件。
(2)利用udl链接数据库
ado是microsoft提出的应用程序接口(api),用以实现访问关系或非关系数据库中的数据。ado使用通用数据连接udl(universaldatalink)来获取数据库信息,以实现数据库连接。在logsheet.mdb所在的文件夹下单击鼠标右键,在弹出的快捷菜单中选择microsoft数据链接,命名新建的数据库链接名称为logsheet.udl。
(3)利用databaseconnectivity工具包操作数据库
连接上数据库后,就可以利用databaseconnectivity的工具包对数据库进行操作,包括创建表格、删除表格、添加记录、查询记录等。
如图6,利用databaseconnectivity工具包的子vi模块,以序号、时间、温度值/标签值格式在数据库中创建数据,通过在输入标签中输入室体1、室体2、故障等标签值,再点击显示数据按钮,就可以在应用程序界面的表格中显示出来对应的数据信息,以供维护人员查看分析。
4.数据曲线拟合计算
曲线拟合主要用来从测量数据中提取一组曲线参数(或系数)以找出各数据之间相关关系的数据表达式,最小二乘法是曲线拟合的常用算法,其误差定义为:
e(a)=[f(x,a)-y(x)]2(4-1)
式中,e(a)为误差,y(x)是测量的数据集,f(x,a)为数据集的函数描述,而a就是描述曲线的一组系数,比如a={a0,a1},则拟合直线的函数描述为:f(x,a)=a0+a1x。用最小二乘法求解系数a,即求解等式
要求解等式(4-2),需要建立和求解等式(4-2)扩展开的雅克比行列式,得到a值之后,就可以通过函数描述f(x,a)求得任何测量数据集中x对应的y(x)估计值。
labview编程语言中自身带了用于曲线拟合的虚拟仪器子模块,可以用来求解雅克比行列式,然后返回理想的系数集,只要把数据集的函数描述进行处理,就可以得到等式(4-2)的解,现有两个输入向量:x和y,描述了数据集y(x)。该数据集上的任意点为(xi,yi),其中xi为向量x中向量元素,yi为向量y中向量元素。通常情况下,对于每一个曲线拟合预定义的类型,labview编程语言都会有两种不同类型的虚拟仪器子模块(特别定义的除外)。其中一种类型只返回系数,另一种除返回系数外,还返回相应的期望值或拟合曲线的均方差(mse)。求mse的等式为:
其中f是拟合值,y是测量值,n为测量点的数目。
labview的分析库提供了线性和非线性两种曲线拟合的算法,各种不同的曲线拟合虚拟仪器模块如下:
1)线性拟合(linear),把测量点拟合为形如y=mx+c的直线形式:y[i]=a0+a1*x[i]
2)指数拟合(exponential),把测量带你拟合为形如y=aexp(bx)的指数曲线形式:y[i]=a0*exp(a1*x[i])
3)多项式拟合(polynomial),把测量点拟合形式如y=a+bx+cx2+…的多项式形式:y[i]=a0+a1*x[i]+a2*x[i]2…
曲线拟合的流程可以参考图7,程序开始运行后,得到的温度数据保存在数据库中,因此首先判断数据库表是否存在,若不存在,则结束程序,否则读取数据库中的温度和时间数据,将数据的格式转换成数组格式,然后调整拟合模型,精度等,当达到满意的拟合效果后,输入烘房室体的初始室温,得出该室温下烘房的升温时间,得出烘房的降温时间流程也是如此。
labview应用程序曲线拟合界面如图8所示,界面包括升温与降温两个状态。点击升温与降温选项卡按钮,可以切换为升温或降温状态。温度曲线模型为单选按钮,包括线性拟合(linear),指数拟合(exponential),多项式拟合(polynomial)三个选项。模型选择后,如果曲线拟合不理想,可以调节阶数(模型选择为exponential时,不可更改)与精度显示,可以提高曲线的拟合效果。启动程序,升温预测选择多项式,降温预测选用指数模式,图表上会显示温度曲线图,在室体温度标签中输入室体的初始温度,能够得到烘房的升温时间,在设定温度标签中输入人员操作的安全温度,能够得到烘房的降温时间。
5.手机和labview的通信
datadashboard是一个运行在智能手机和平板电脑上的客户端应用程序。通过使用它可以建立一个自定义、便携的labview应用界面。可以拖拽一些输入控件和显示控件(比如图表、仪表、led灯、滚动条和按钮)。而这些输入控件和输出控件则可以通过labview网络服务或者网络发布的共享变量来进行数据读写。
在手机上安装datadashboard软件,用路由器连接上位机和手机,使得上位机和手机处在同一个网段。界面如图9所示,黑色按钮表示温度正常,红色按钮表示温度超限。在labview软件程序中创建温度显示共享变量,界面中的显示标签和相对应的共享变量通过网络连接,接着运行labview主程序,再运行datadashboard,就可以在手机上对烘房的温度进行实时的监控。
在本说明书中,应理解上述施例仅用于说明本发明而不用于限制本发明,在阅读了本发明之后,技术人员在不脱离本发明的原理和宗旨的情况下可对这些施例进行多种变换、修改和变形,本发明的范围有权利要求所限定。