轧机AGC缸计算机测控系统开发
2015-07-07陈新元易建刚
郭 媛,陈新元,易建刚
(1.武钢大学 信息工程学院,武汉 430080;2.武汉科技大学 机械自动化学院,武汉 430081;3.江汉大学 机电与建筑工程学院,武汉 430056)
0 引言
轧机AGC伺服液压缸是在大型钢铁企业主轧线的关键液压装备之一,静动态性能指标要求高,价格昂贵,更换作业耗时长,其故障将会对生产导致重大影响。制造、运输、贮存、使用、维修环节都可能导致AGC液压缸的性能发生改变。因此,适时对轧机AGC缸进行静动态指标检测非常必要。由于轧机AGC缸载荷大,精度高,目前国内能对其全套静动态指标进行测试的装备较少,且自动化程度相对较低,大多处于手工操作阶段,难以满足产品发展需求[1,2]。因此,本文重点分析了轧机AGC缸频率响应、阶跃响应、动摩擦力和启动摩擦力测试特点和方法[3],并针对性地开发了成套计算机辅助测试软件系统,应用效果良好。
1 测控系统框架设计
根据相关标准和轧机AGC伺服液压缸的实际工况,确定测试系统开发总体目标,具体包括频率响应测试、阶跃响应测试、启动摩擦力测试、动摩擦力测试和功能[3]。此外,还要完成测试和控制过程中高速数据采集、分析、处理、显示、存储和打印任务。因此,软件中还应包括数据采集卡测试、数据曲线显示及打印、数据库管理等功能[4,5]。本文所设计的轧机AGC伺服液压缸测试系统的总体结构采用了测控一体化方式,其结构如图1所示。
图1 轧机AGC伺服液压缸测控系统结构
图1中,测试部分数据采集卡为凌华公司的PCI-9118,控制部分采用SIEMENS的S7-300PLC,通讯及控制软件用Visual C++开发设计。计算机系统通过PCI总线与数据采集卡相连,通过Profibus现场总线与PLC相连。数据采集卡的数字或模拟通道连接传感器、二次仪表,以及其他相关元件;PLC通过其触点与控制阀、信号开关元件相连。软件系统中的测试部分和控制部分通过SIEMENS公司提供的符合ANSIC规范的函数库建立连接,它能以动态连接库的形式加载入软件中。借助于这些函数,可以实现对PLC中数据的实时读写操作。控制及测试软件界面采用虚拟仪器的设计思想,通过鼠标点击可以进行各项操作。同时,考虑系统扩展,预留必要的备用控件。
2 测控系统软件开发
本文介绍的轧机AGC缸测试软件系统基于Windows平台,采用面向对象的Visual C++ 6.0作为开发工具。测试系统具备AGC缸静动态指标测试功能。
2.1 软件系统功能模块
测试系统软件包含的主要功能如图2所示。具体描述如下:
频率响应:用于测试伺服液压缸在正弦扫频信号控制下的输入与响应信号幅值比/相位差——信号频率之间的关系;阶跃响应:用于测试伺服液压缸在给定的阶跃控制信号下的位移——时间之间的关系;动摩擦力:用于测试伺服液压缸在给定信号下的带载荷摩擦力——位移之间的关系;启动摩擦力:用于测试伺服液压缸在给定信号下的空载启动压力——时间之间的关系,以确定启动摩擦力的大小;板卡测试:用于测试数据采集卡各通道功能是否正常,精度是否符合要求。
图2 测试软件功能模块结构
2.2 数据卡硬件驱动接口程序
PCI-9118数据采集卡接口函数调用的主要步骤如下:
1)安装数据采集卡硬件和驱动程序。
2)将Dask.h、PCI-Dask.dll和PCI-Dask.lib三个文件拷贝到到当前开发程序目录下。
3)将Dask.h和PCI-Dask.lib这2个文件添加到当前开发工程中。
4)在要调用数据采集卡接口函数的头文件中,包含以下文件:#include "Dask.h"。
5)在初始化对话框函数中,添加以下代码加载驱动:
if((m_nCardNO=Register_Card(PCI_9118HG,0))>=0)
{
AI_9118_Config(m_nCardNO,P9118_AI_BiPolar|P9118_AI_SingEnded,0,0,0); //配置数据采集卡极性和测试方式
AO_WriteChannel(m_nCardNO,0,2047);//DA-0通道清零
AO_WriteChannel(m_nCardNO,1,2047);//DA-1通道清零
}
else
{
MessageBox(“数据采集卡安装不成功!”,”错误”,MB_OK|MB_ICONERROR);
}
6)退出测试软件时,先要卸载数据采集卡驱动,函数调用如下:
if(m_nCard>=0)
{
AO_WriteChannel(m_nCard,0,2047);//DA-0通道清零
AO_WriteChannel(m_nCard,1,2047);//DA-1通道清零
Release_Card(m_nCard);
}
7)进行A/D采样时,调用如下函数,参数1为板卡编号,参数2为A/D通道号,参数3表示进行-5V~+5V范围采样,参数4为采样保存数组。
AI_ReadChannel(m_nCard,m_nADChannel,AD_B_5_V,&nAD[t]);//AD采样,
8)进行D/A输出时,调用如下函数,参数1为板卡编号,参数2为D/A通道号,参数3为D/A输出数值。该卡D/A输出为12位精度,故nValue取值范围为0~212。
AO_WriteChannel(m_nCard,m_nADChannel,nValue);//DA输出
2.3 测试数据文件管理程序
文件管理使用序号、文件名或测试日期等条件查询,能快速实现文件查找和定位。技术人员根据查找符合条件的测试参数结果,便于对所检测伺服液压缸数据进行统一管理。
用Visual C++ 6.0连接Microsoft Access2000所创建的数据库SGAGC.MDB为例,该文件保存在程序所在目录SGAGC的Datasave文件夹下。程序与后台数据库连接的代码实现如下:
1)在stdafx.h中添加以下代码:
#include "odbcinst.h"
#include "afxdb.h"
2)在SGAGC.CPP中,添加以下代码:
SQLConfigDataSource(NULL,ODBC_ADD_DSN,
"Microsoft Access Driver (*.mdb)",
"DSN=SGAGC DBQ=SGAGC DATABASE=SG AGC.mdb DEFAULTDIR=.\Datasave " );
3)在文件SGAGCDLG..H中,添加数据库对象m_Database:
CDatabase m_Database;
4)在文件SGAGCDLG..CPP的OnCreate()函数中,添加以下代码:
if(!m_Database.IsOpen())
{
if(!m_Database.Open(_T("SGAGC")))//SGAGC表示要打开的数据源名称
{
AfxMessageBox("不能打开到SGAGC数据源的连接!");
return -1;
}
}
5)在退出软件测试系统的代码部分,添加关闭数据库功能:
if(m_Database.IsOpen())
{
m_Database.Close();
}
2.4 功能模块实现
图3为某企业开发的AGC缸测试系统软件主界面。主界面左侧设置“频率响应”、“阶跃响应”、“动摩擦力”、“启动摩擦力”、“板卡测试”及“退出程序”六个操作按钮,主界面右下角设置“通道设置”按钮和“当前测试项目”、“当前测试日期”状态栏,分别对应系统功能模块图2中的七大功能。主界面的中心区是用户进行“频率响应”、“阶跃响应”、“动摩擦力”、“启动摩擦力”四个功能选择后所对应的性能曲线绘图区,默认显示“频率响应”测试界面。主界面的右侧上方用于显示当前测试状态下的相关实时参数。主界面的右侧中部为标尺控制区,用于设置绘图区域的坐标刻度。主界面的右侧下部为“开始测试”、“停止测试”、“保存数据”、“读取数据”、“打印预览”和“参数设置”六个按钮,用于当前测试项目进度控制和数据处理[4,5]。
图3 测试软件系统主界面
选择系统主界面左侧“频率响应”模块,单击左键,显示如图3所示的界面,各按钮功能如下:
1) 将“标尺”栏里的各参数设定为合适值之后,点击“存为默认值”按钮,保存当前的标尺设置,绘图区标尺将按所设定的内容调整。
2) 点击“参数设置”按钮,设置软件系统输出的正弦波频率范围是0.1~15Hz,振幅范围是0~0.5mm。
3) 点击“开始测试”按钮,开启当前测试。在测试过程中,计算机将根据设定自动绘制测试曲线,界面右上角同步显示实时测试数据。
4) 点击“停止测试”按钮,终止当前测试过程。
5) 点击“保存数据”按钮,保存当前的测试结果。计算机自动在本程序的安装目录下生成一个以当前测试项目为名的文件夹(第一次存盘时),例如当前为频率响应测试界面,则生成一个“频率响应”文件夹。在该文件夹下以当前测试项目名加下划线和序号确定文件名保存曲线,第一次存盘文件名为“频率响应测试特性曲线_1”,第二次存盘文件名为“频率响应测试特性曲线_2”,依此类推。文件后缀为“.txt”,保存的是测试数据的文本信息,可供技术人员进行数据分析或导入MATLAB等分析工具。
6) 点击“读取数据”按钮,打开保存的测试结果文件,读取历史测试数据。
7) 点击“打印预览”按钮,弹出“频率响应打印预览”对话框,该界面显示当前数据曲线的打印效果。点击 “打印”按钮,输出纸质曲线报告。
选择主界面中的“阶跃响应”模块,单击左键,进入阶跃测试子界面。点击“参数设置”按钮后弹出“阶跃响应测试参数设置”对话框,“液压缸参数设置”用于设置阶跃增量;“DA初始输出”用于设置伺服阀给定的初始位移值。
选择主界面中的“动摩擦力”模块,单击左键,进入动摩擦力测试子界面。点击 “参数设置”按钮后弹出“动摩擦力测试参数设置”对话框,“DA位移输出设定”栏用于设置初始位移和最大位移;“DA背压输出设定”栏用于设置初始电压和最大电压;“液压缸参数设置”栏用于设置活塞和活塞杆直径。
选择主界面中的“启动摩擦力”模块,单击左键,进入启动摩擦力测试子界面。点击 “参数设置”按钮后弹出的“启动摩擦力参数设置”对话框,“DA输出设定”栏用于设置伺服阀给定增幅和最大位移量;“液压缸参数设置”栏用于设置活塞和活塞杆直径;“有杆腔测试”用于确认当前的启动摩擦力是对有杆腔还是对无杆腔的测试。
图4 数据采集板卡测试界面
图5 参数设置界面
选择主界面中的“板卡测试”模块,单击左键,进入如图4所示的测试数据采集卡检测与标定子界面。在系统调试过程中,该模块可作为信号发生器和信号记录仪使用,还可用于检测各个A/D、D/A通道波形是否正确。“输出选择”栏用于选择D-A通道和波形,设置输出偏差值、输出幅值、输出相位、输出速率等参数;“输入选择”栏用于选择A-D通道。设置完成后,点击“保存数据”按钮,可保存当前参数设置。点击“开始测试”按钮,可以开启当前检测与标定任务。点击“停止测试”按钮,可以停止当前板卡测试任务。因此,在软件中设计该功能模块具有十分重要的意义。
选择主界面右下方的“参数设置”按钮,左键单击(此按钮在“板卡测试”界面时不可用),弹出“参数设置”对话框,如图5所示。其中,“采样通道的选择”用于配置通道与实际物理参数对应关系;“传感器信号转换比例尺”用于设置所采集物理量的传感器信号的转换比例尺;“DA输出信号反向”和“位移曲线反向”用于设置采集信号的正负,从而可在绘图区正向或反向绘制曲线。所有参数设置完毕后,左键单击“OK”按钮,保存当前设置并返回到当前所在项目的测试界面。
3 测控系统应用效果
利用上述计算机辅助测试系统,对Ф1450/1350-100的轧机AGC缸进行性能检测,相关指标及试验曲线如图6~图9所示,该液压缸测试幅频宽为7.6Hz,相频宽为7.43Hz,阶跃响应时间为60ms,最大动摩擦力为214.4kN,起动压力为0.133MPa。
图6 阶跃响应特性曲线
图7 频率响应特性曲线
4 结论
本文研究成果已获软件著作权登记[4],应用该技术为某公司开发的轧机AGC缸测试中心,2007年投入使用,试验吨位分为1500t、5000t、10000t三个档,为目前国内规模最大、自动化程度最高的轧机AGC缸检测装备之一。多年运行情况表明该测试系统能够完成轧机伺服液压缸静、动态性能的高精度检测,原理科学,符合实际工况,解决了国内大型伺服液压缸的测试困局,具有重要应用推广价值。
图9 起动压力特性曲线
[1]陈新元,蔡钦,湛从昌,张东升,等.液压伺服液压缸静动态性能测试系统开发[J].液压与气动.2008,12:77-79.
[2]Chen Xinyuan, Yi Jiangang, Lu yuandan, Wang Yi.The Key Parameters Selection of Dynamic Characteristic Test for Hydraulic Servo Cylinder of Rolling Mill[A].Proceedings of the 5th International Symposium on Fluid Power Transmission and Control[C].2007, 06:621-624.
[3]湛从昌,黄科夫,陈奎生,陈新元,唐建光,黄智武,陈德明,曾良才,傅连东,涂晨,鲁腊福,杨锡波,赖燕.伺服液压缸第2部分:试验方法(DB44/T 1169.2-2013)[E].广东省工业类地方标准.2013,8.
[4]武汉科技大学.AGC伺服油缸性能检测系统[简称:SAGC]V1.0.计算机软件著作权[E].登记号:2011SR004107.
[5]Yi Jiangang, Zeng Peng.Research on Dynamic Frequency Testing Process of Servo Cylinder[A].2008 Chinese Control and Decision Conference[C].2008.