Qt环境下基于研控MCN420电子伺服压力机控制系统开发与应用
0 引言
随着工业4.0的发展,目前国内市场在装配、铆压成型等应用上对产品的精度以及数据采集、分析存储功能需求的不断提升。传统的伺服液压,以及基于PLC的电子伺服压力机控制方案在很大程度上已经满足不了。国外电子伺服压力机如:德国的Kistler、Promess,日本的Janome、DDK,韩国的C&M等都先后推出了与电缸一体的电子伺服压力机系统方案,但在消除机器变形,以及数据分析上并未做更深的研究,对于客户要求定制化的曲线分析功能,以及复杂的外设逻辑处理灵活性也不够强。
伺服压力机控制系统是整个压力机的核心。系统基于Qt+研控MCN420控制器,在Windows系统上通过总线通讯调用MCN420的运动函数动态库,实现了数据采集、运动逻辑可编程、以及强大的曲线数据分析,和定制化的质量检测等功能。
1 系统硬件方案
系统的硬件如图1:主要包括:工业平板电脑、运动控制器、伺服驱动器、电机、电缸、光栅尺、压力传感器、扩展IO模块。MCN420与伺服驱动器的连接,对驱动器输入模拟信号,通过光栅尺或者压力传感器的反馈实现位置闭环控制,重复精度为0.01mm或者压力闭环控制,重复精度小于等于±1%。位置重复精度过大由于机器在承载受力情况下的机身背板变形引起,位置控制来源光栅尺可以减小机器变形带来的误差。在铆压成型工艺中对于毛坯尺寸不一的产品,高精度的压力闭环模式能解决因尺寸不一样带来的压力过冲问题。
2 运动控制
2.1 系统框架设计
系统是整个压力机的控制核心,主要功能如图2,包含运动逻辑程序编写及编译,曲线显示、质量检测、过程数据存储和分析以及IO监测、文件管理等功能。实现了用户在Ui界面运动逻辑、IO逻辑可编程。利用底层高速的数据采集,可针对特殊材料的特性进行准确分析和精准的质量判定。增加了除普通点检测功能外的窗口判定、拐点判定,以及其他特殊点的判定方式。通过Posgresql数据库存储的大量数据,初步实现生产数据的统计以及查询范围内的趋势显示等功能。
2.2 运动程序设计
控制系统的运动控制模块主要包含了程序命令的编写、语法检测、转换。为了减少程序编写的错误,在UI界面采用类似的MOVEP,MOVEL,MOVEF等指令。在软件设计时,利用虚函数的多态性将接口与实现分离,用一个CMotionControl的类包含所有基本的运动控制的函数,然后创建一个继承于该类的 CYanKoMotion类实现具体的运动控制,然后在CYanKoMotion类中实现轴的各种控制模式的运动以及运动状态的获取。代码如下:
class CMotionControl : public QObject
{
Q_OBJECT
public:
CMotionControl(AllData *allData);//初始化
public:
AllData *data;
virtual TMotionStatus AxisMotion(TTeachFile tTeachFile,int iProg) = 0;//轴运动模块
virtual void MotionMonitor() =0;//所有运动状态监控
virtual void MotionStop() = 0;//运动停止
virtual void StartMotionRun(int iProg ,bool bStart) = 0;//运动开始
virtual void MotionStatus() = 0;//运动状态
virtual TMotionStatus DeviceIOManage(TTeachFile tTeachFile,int iProg) = 0;//设备IO监控
…….
};
在程序完成编辑,语法检测无误后,将所有程序指令中包含数据进行转换。运动程序启动循环到相应的行号时传入AxisMotion()中,通过运动函数写入控制器并启动运动。在MotionMonitor()中监控IO变化状态或者用于其他逻辑判断变量的变化。一个基本的压装程序可以做如下编写:
MOVEP X100.00 Vel= 100;//快进
MOVEP X120.00 Vel=20;//探测
MOVEF X50.00 Vel= 10;//压装
MOVEP X10.00 Vel= 100;//回退
2.3 数据分析及质量检测
2.3.1 数据分析
对存储的数据进行分析提取材料特性,从而设置合理的检测参数,结合外部的其他检测设备组成生产、检测一体的全自动化流水线是将来伺服压力机发展的主要趋势。目前在系统中对终止压力、终止位置、接触位置、最大压力、合格率、生产计数进行了统计。如下生产统计图,数据分析图之数据统计分析。
从存储在数据库中的数据可以对任意10条曲线进行分析对比,如下曲线对比图。
2.3.2 质量分析
压力机目前常用的检测方法有点检测、区域检测、窗口检测。基本能满足大部分的产品检测需求。在针对部分汽车零部件产品要求找到应力突变点,或者更为精确的接触产品表面位置等,通过这些特性来判定产品是否合格。控制器底层将接触表面位置锁存,锁存周期误差在1ms以内。通过1ms采集周期的数据在应用层经过算法计算找到力突变的拐点,如拐点查询示意图,图中加粗的点为计算拐点。
3 结束语
本文研究了在Qt平台上基于IPC + 研控MCN420运动控制器在电子伺服压力机上的应用。通过上位机系统的操作实现了压力机主轴的基本工艺运动动作、曲线分析、数据存储、质量检测等功能。通过在汽车零部件、电机等行业的实际工业现场应用,证明位置重复精度和压力重复精度、产品检测合格率等指标能满足大部分的客户需求。
提交
22届SIMM深圳机械展已开幕,研控观展小tips集锦
研控SIAF2021 广州自动化展完美谢幕
抢先看!研控3月展会排期速递
2020年终总结大会暨员工评优颁奖仪式圆满结束
指南|欧姆龙PLC与研控E总线驱动器连接后注意事项