拉力试验机控制系统设计与实现
2015-10-30刘岩石周纯杰
刘岩石,张 明,周纯杰
(华中科技大学 自动化学院,武汉 430074)
0 引言
拉力试验机是一种对材料进行力学特性测试的设备,其在工业场合有着十分广泛的应用。工业生产中各种材料、零部件、构件乃至整机往往都需要经过试验才能确定它们的力学特性,在了解了这些产品的力学特性之后,才能评价该产品的优劣[1]。比如,绝大部分的钢铁交易是以拉力试验机试验结果作为交货条件的。然而,目前在拉力试验机领域,有相当一部分拉力试验机仍然采用人机界面屏作为控制器,其功能简陋,处理速度慢,界面不够友好,这严重制约着工作效率。本文介绍的一种基于计算机的拉力试验机控制系统,能够充分利用计算机的优势,具有控制效果好、功能丰富、界面友好的特点,大大简化了拉力试验机现场操作人员的使用,提高了工作效率。
1 拉力试验机需求及控制系统结构
1.1 拉力试验机需求分析
根据实际调研分析,现给出本拉力试验机关键的功能指标:
1)可对金属、非金属、复合材料等进行试验,最大承受拉力达50KN。
2)具备手动试验、自动试验功能,其中自动试验可以实现对材料的拉伸和耐受测试。
3)能够实时显示力值、位移信息,并能够绘制力-时间、力-位移曲线。
4)具有过载保护、位移限位功能。
5)具有保存试验结果,浏览历史试验记录功能。
1.2 拉力试验机控制系统结构
拉力试验机控制系统包括计算机、PLC、伺服系统、拉伸机构和称重传感器等,其结构可如图1所示。其中,计算机是该控制系统的核心,完成人机交互、试验控制、实时监控以及试验总结功能;PLC用于输出脉冲,驱动伺服系统,采集称重传感器信号以及捕捉表征材料形变量的AB相脉冲;伺服系统是拉力试验机的动力系统;拉伸机构用于试件夹持和张拉,是拉力试验机的主体结构[2];称重传感器是拉力试验机控制系统的反馈部件,用于将材料承受的拉力转换为电信号,该电信号经PLC AD模块转换为数字量后传递给计算机控制软件。
图1 拉力试验机控制系统构成图
拉力试验机控制系统是一个闭环控制,其工作原理如下:
1)计算机结合用户设定的试验目标和PLC上传的反馈量,控制试验进行,输出控制量。
2)PLC接受计算机给出的控制量,进行脉冲输出驱动伺服系统运转,伺服系统通过拉伸机构对试件进行试验。
3)称重传感器将试件承受力转换为电信号、伺服系统将材料形变量转换为AB相脉冲量。
4)PLC接受AB相脉冲和称重传感器信号并进行处理后,上传计算机,供其进行反馈控制。
2 拉力试验机控制软件设计与实现
本拉力试验机控制系统属于计算机实时控制系统,其核心在于计算机上试验机控制软件。该软件在Windows平台上利用VC++ MFC进行开发。MFC是微软公司提供的基础类库,集成了大量的界面开发相关类,大大简化了界面开发的过程,使得开发者能够将主要精力集中在问题处理上。下面在界面设计、程序架构分析以及类的设计这三个方面对软件进行分析。
2.1 试验机软件功能分析与界面设计
拉力试验机控制软件的设计必须服从拉力试验机需求,与此同时,设计的控制软件界面能够被用户接受,则必须遵循人机界面设计的一般规则。这里首先给出拉力试验机软件主界面,如图2所示。下面叙述拉力试验机控制软件需要实现的功能,然后根据其功能来具体分析界面的设计。
图2 拉力试验机计算机控制软件主界面
2.1.1 试验机控制软件功能分析
根据工业现场对拉力试验机功能的要求,可得试验机控制软件必须实现实时监控功能、材料试验功能以及试验总结功能,现具体叙述如下。
1)实时监控功能
在进行材料试验时,试验者需要清晰的查看当前材料试验的情况。拉力试验机控制软件一般提供两种监控试验的方式,一种是实时数据显示面板,一种是实时曲线显示面板。实时数据显示面板显示试件形变量、承受拉力以及承受拉力最大值信息,实时曲线显示面板显示试件承受拉力-试验时间的曲线信息。通过这两种方式,用户可对当前试验情况有比较清晰的认识。
2)材料试验功能
拉力试验机控制软件一般需要提供手动试验和自动试验两种试验方式。其中,手动试验下,用户可以自己选择拉伸材料的方向和速度。该试验方式比较灵活,也可以用于自动试验之前的拉头位置调整。自动试验方式是在用户设定好试验目标之后,软件可以不在用户干预下自动进行试验。自动试验方式包括两种十分普遍的试验方式:拉伸试验和耐受试验。拉伸试验为多段拉伸,是一种最基本的试验方式。该方式下,用户需要设定每一段的拉伸起始力、结束力以及拉伸时间。耐受试验用于测试材料的可靠性,试验时间一般比较长。该方式下,用户需要设定力加载速率、力保持负荷以及保持时间参数。
3)试验总结功能
试验完成后,用户一般需要记录材料试验相关信息。该软件需要提供的试验总结功能包括实时曲线保存和打印功能、试验报表填写以及打印功能。
2.1.2 试验机控制软件界面设计
在明确了试验机软件需要实现的功能后,需要合理的设计界面。拉力试验机界面设计需要遵循界面友好、信息直观呈现、符合现场操作人员使用习惯、安全性提示以及界面一致性[3]等原则。结合拉力试验机功能和界面设计原则,拉力试验机控制软件主界面设计可如图2所示。
拉力试验机计算机控制软件主界面中包括显示面板、实时曲线面板以及材料试验面板。其中,显示面板和实时曲线面板可以直观的将当前材料试验信息呈现给用户。试验面板处显示的试验方式根据用户在菜单栏-控制方式中选择的材料试验方式的不同而不同。限于篇幅,这里详细的界面设计便不再给出。
2.2 试验机软件架构分析
本拉力试验机控制软件采用多线程技术实现。虽然,多线程比单线程要复杂,但是引入多线程后,可以使得程序模块化更好、程序并发执行,执行效率也更高。用户交互模块单独设置一个线程,也保证了界面操作的流畅。该控制软件需要实现的任务有人机界面交互、材料试验控制、与下位机PLC通信功能等。因此,这里将该试验机控制软件划分为三个线程:界面线程(主线程)、试验控制线程、通信线程。三个线程之间的关系如图3所示。
下面分别对以上三个线程进行介绍:
界面线程:也就是主线程,负责人机交互,实现用户配置、试验监控功能等。该线程是控制线程与通信线程交互的媒介,其承接了控制线程与通信线程。控制线程将控制信息传递给主线程后,主线程生成通信任务,并传递给通信线程。通信线程将与PLC通信返回的数据传递给主线程,主线程利用该数据一方面进行显示,完成试验监控功能;另一方面传递给控制线程,进行闭环反馈控制。
图3 试验机软件架构图
控制线程:该线程实现材料试验控制功能,其从界面线程得到反馈数据,结合用户设定的材料试验目标,进行闭环反馈控制,并给出控制信息。该线程时刻监测试验进行状态,当试验结束条件满足时,自动结束当前材料试验。
通信线程:该线程负责接受界面线程给出的通信任务,与PLC发起通信,并将通信结果返回给界面线程。其传递给界面线程的数据用来在界面线程进行数据监控(实时曲线和实时数据显示)和传递给控制线程实现反馈控制。
2.3 试验机软件关键类设计
该试验机软件采用C++作为编程语言,并借助MFC单文档程序模板实现。C++是一种面向对象的编程语言,具有抽象、封装、继承和多态的特点[4],其程序设计以类的设计为中心,这符合人们思考事物的方式,使得编程大大简便。故该拉力试验机软件实现的关键点在于分析软件中包含的对象,并合理设计类。由上节软件功能分析可知,本软件主要包括手动试验方式、自动试验方式(拉伸试验和耐受试验)、实时曲线监控、实时数据显示、与PLC通信、试验控制算法等模块,这些模块便是该试验机软件需要处理的对象,因此本软件关键类的设计可如表1所示。
表1 试验机软件关键类设计
3 材料试验闭环控制算法
拉力试验机计算机控制软件提供的材料试验方式,需要采用一定的控制算法来实现。这里,采用改进的经典PID控制算法来进行试验控制。根据图1可知,整个拉力试验机系统构成一个大的闭环反馈控制,现将图1转化为如图4所示的控制系统结构图。
图4 拉力试验机控制系统结构图
其中,计算机相当于PID控制器。PLC起到两方面作用:一是进行脉冲输出,驱动伺服系统;二是对测量元件输出的信号进行处理后,回传计算机控制软件进行PID控制。伺服系统是执行机构,直接产生拉力拉伸材料。测量变送器包括光电编码器、力传感器。
3.1 PID控制
PID控制是自动控制领域中产生最早、应用最广的一种控制方法,其不需要精确的控制系统模型,适用于系统模型难以确定的场合[5]。本拉力试验机便采用改进型PID进行材料试验控制。PID包括三个环节:比例环节、积分环节以及微分环节。其控制结构原理图如图5所示。
图5 PID控制结构原理图[1]
其连续型PID控制表达式为:
其中,KP为PID比例环节系数,Ti为PID积分时间,Td为PID微分时间,r(t)为给定控制目标,c(t)为反馈量,e(t)为控制目标与反馈量之间的偏差,此作为PID控制器的输入,u(t)为PID控制器的输出。在实际的拉力试验机控制系统中,反馈量c(t)为实际测试得到的拉力值和材料形变量,u(t)为脉冲输出频率和电机转动方向。
连续型PID经过离散化后,得到如下应用表达式:
其中,u(k),e(k),r(k)分别为u(t),e(t),r(k)的周期采样值,为积分时间常数,为微分常数,T为采样周期。
对于PID比例环节系数KP、积分时间Ti以及微分时间Td的取值,需要在现场进行参数整定。一般在实际应用中,采用经验试凑法进行参数整定[6]。首先调节比例环节系数,其次调节积分时间系数,最后调节微分时间系数。在参数调节过程中,结合试验实时曲线与设定的控制目标,根据PID三个环节的作用,综合进行参数整定。对于采样周期T的选取,亦应与PID整定综合考虑,进行合理取值。
3.2 带死区的PID控制
在拉力试验机控制系统中,执行机构为伺服系统。我们知道伺服电机启动时,启动电流较大,如果频繁的关闭-启动,则会导致电机发热量过大,电机会有烧坏的危险,并且伺服电机频繁的开关也会导致拉力试验机机械结构较为严重的磨损。因此,我们需要对PID控制器做出适当的改进,在能够很好的控制材料试验进行的前提下,避免伺服电机频繁的开启关闭。改进方法如下:
其中,误差e的取值需要根据拉力试验机试验对象的误差要求和实际的控制效果来决定。
4 试验效果分析及验证
本文叙述的拉力试验机控制系统已经在山东某拉力试验机现场进行了实际的测试,其控制效果良好。拉力试验机控制系统控制效果好坏由其试验机软件提供的材料试验方式的控制效果决定,而材料试验方式控制效果的好坏则直接由用户设定的试验目标和实时监控曲线的匹配程度体现。因此,下面以铁块作为试件,通过对比分析拉伸试验和耐受试验的实时监控曲线与其控制目标的匹配程度来验证该控制系统的控制效果。
4.1 拉伸试验控制效果分析
在拉伸试验开始之前,利用手动试验方式调整好拉头,并夹持住铁块,选择拉伸试验方式,设定试验目标,开启试验。本拉伸试验设定为三段拉伸,具体的试验目标如表2所示。
表2 拉伸试验控制目标
以上每一段的参数含义为:拉伸材料,使其承受的拉伸力在持续时间之内由起始力达到结束力,各段依次执行,所有段执行完毕后,试验结束。本试验控制目标下,对应的力值-时间监控曲线如图6所示。
图6 拉伸试验 力值-时间曲线
对比该拉伸试验的控制目标和力值-时间曲线可知,该实时曲线很好的拟合了设定的试验目标。故该拉伸试验控制效果良好。
4.2 耐受试验控制效果分析
在进行耐受试验之前,首先利用手动试验方式调整好拉头位置,并夹持住试件,而后选择耐受试验方式,并配置好试验目标,开启试验。耐受试验控制目标设置如表3所示。
表3 耐受试验控制目标
以上参数的含义为:拉伸材料,使得材料承受力按照设定的力加载速度增加,到达设定的保持负荷后,保持此负荷一定的保压时间,保压时间到后,试验结束。本试验目标下,对应的力值-时间曲线如图7所示。
图7 耐受试验 力值-时间曲线
对比该耐受试验控制目标和力值-时间曲线可知,该实时曲线很好的拟合了设定的控制目标,故耐受试验控制效果良好。
根据以上拉伸试验和耐受试验的控制效果分析可得,本文所提出的拉力试验机控制系统控制效果良好,能够很好的完成材料试验。
5 结论
本文介绍了基于计算机控制的拉力试验机控制系统,首先分析了拉力试验机系统结构,其次重点阐述了拉力试验机控制软件的设计,其采用带死区的PID作为核心控制算法,最后给出拉力试验机现场实际的测试效果,表明该拉力试验机控制系统控制效果良好,能够满足生产实践的需要。此外,该拉力试验机软件具有界面友好、支持试验结果保存、方便用户操作、试验信息直观呈现的特点,这有助于提高现场操作人员工作效率。随着计算机技术和控制技术的发展,计算机控制的拉力试验机将会有越来越广泛的应用。
[1] 张霖.电子万能材料试验机闭环控制软件的研究[D].北京:北方工业大学,2007:1-32.
[2] 朱江新,阳平,夏天,等.基于PCI-1711数据采集卡的拉力试验机实时控制系统[J].设计与研究,2010(5):81-83.
[3] 朱诗生,张惠珍.人机交互软件界面设计[J].信息技术,2009(5):36-39.
[4] 谭浩强.C++程序设计[M].北京:清华大学出版社,2004:232-236.
[5] 任俊杰,李永霞,李媛,等.基于PLC的闭环控制系统PID控制器的实现[J].制造业自动化,2009,31(4):20-23.
[6] 何跃,林春梅.PID控制系统的参数选择研究及应用[J].计算机工程与设计,2006,27(8):1496-1498.