-
摘要:根据智能制造教学需要,开发设计了一款新型数控教学机,包括结构设计与控制系统设计。运用SolidWorks完成基本元件参数化建模、整体装配,进行运动仿真分析。采用“PC+控制器”方案,开发基于LabVIEW的两轴运动控制系统。上位机采用LabVIEW软件编写控制程序与用户交互界面,以传统逐点比较法的插补算法原理为基础,提出一种基于LabVIEW的两轴联动直线插补方法,每段轨迹采用一个脉冲当量的双轴联动进行速度与位移合成,计算x、y轴脉冲总量与脉冲频率可获得一个数组发送至下位机,LabVIEW解析屏幕输入G代码,驱动末端执行机构运行预定轨迹。该控制系统人机界面友好、操作简单、开发周期短,可实时采集数据便于后续数据处理分析。调试运行结果证明,设计与教学需求相符,包含了多学科知识交叉融合,增强了学生工程意识与综合实践能力。
关键词:数控教学;LabVIEW;建模;插补算法;运动仿真
0引言
针对新工课背景下的机械工程专业培养目标,基于成果导向教育(Outcome Based Education,OBE)理念,探索更为高效的教学模式与教学方法势在必行,项目驱动式教学在机械设计[1-2]、学科竞赛[3]、机械工程测试[4]、数字化制造设计[5-8]等课程教学中得到广泛应用,并取得一定成果。王晓丽[9]针对机电一体化设计教学中存在的问题,提出案例法和项目驱动相结合的教学方式,并以“层次推进”式对课程体系进行整体设计,取得良好效果。程卫东等[10]以项目贯穿驱动机电课程群教改实践为基础,阐述课程群内各课程模块化教学设计方法,强调了项目驱动在专业建设中的重要性。孙薇等[11]基于OBE教育理念,通过逆向设计与数字化制造相结合的典型教学案例,开展相关教学设计,有效提升了学生工程实践和创新思维能力。俞丙威等[12]提出了一种基于LabVIEW和Multisim联合仿真的虚拟电路实验系统设计,在满足电路实验基本要求的同时,提供了一种经济、安全的实验方式,为学生后续的专业课学习提供了一种新的思维方式。邢雪宁等[13]开发了一套运动控制系统的虚拟实验平台,基于LabVIEW SIT工具包和Simulink的通信与数据处理技术,能方便、直观地将实验结果呈现出来,降低了实验成本,提高了学生的学习兴趣,并能充分发挥学生的自主创新能力。
LabVIEW被广泛应用于多轴控制系统设计。杨欢等[14]利用LabVIEW软件编写了具有远程通信功能的上位机控制界面,采用UDP通信协议实现了多轴运动控制器与上位机间的以太网通信。卫延斌等[15]采用“PC+运动控制器+伺服电机”的控制方案设计开发了基于虚拟仪器的无轴传动多轴运动监控系统,并在Windows平台上用LabVIEW语言对多轴运动监控系统进行了开发研究,验证了方案的可行性与可靠性。严侠等[16]利用LabVIEW软件开发工具,进行多轴随机振动控制系统的软件开发。庄明凤等[17]以LabVIEW作为编程环境,采用“PC机+三维运动平台”的设计方案,将多轴运动对象的目标位置、加速度、速度、运动坐标轴等运动控制参数结合在一起,实现了对三维运动平台的控制。刘丰豪[18]袁恒[19]等采用“PC+运动控制卡”的控制模式,基于LabVIEW完成多轴运动程序开发与编写,完成对电机的精确控制。
本文以在运动控制方面的理论研究为基础,结合机械工程专业培养目标,开展项目驱动教学实践探索与研究,完成新型数控教学机设计,并提出一种基于Lab⁃VIEW轨迹合成运动插补算法模型。基于速度合成原理,通过判断比较联动两坐标轴速度关系,输出匹配脉冲,实现双轴联动差补,末端执行效率较高,易于实现;融入LabVIEW软件,平台后续扩展性较好,末端执行元件的灵活替代可用于其他机电产品设计与开发,集教科研于一体,具有重要的教学理论研究与工程实践意义。
1系统结构设计
数控教学机属于典型机电一体化产品,其机械系统一般由减速装置、各种线性及非线性传动部件,导向支撑部件、旋转支撑部件,轴系及机架等组成,为确保整个机械系统传动精度与工作稳定性,设计中常提出无间隙、低摩擦、低惯量、高刚度、高谐振频率及适当阻尼比等要求。数控教学机需实现x-y-z三轴线性移动,考虑其受力不大,结构紧凑,体积小、经济性等因素,传动机构选用丝杠螺母机构,其型号尺寸为T8x2,L1000mm,导向支撑部件选用LM8LUU型号直线轴承,驱动源采用步升牌17HD40005-22B步进电机,步距角为1.8°;所设计开发数控教学机工作负载小,质量轻且方便携带,整体布局采用三轴机构比较流行的龙门结构布局方式,工作台完成y方向运动,工具头完成x-z方向运动。
利用SolidWorks参数化3D造型系统,以参数化为基础,模块化设计,建立数控教学机结构模型,整体结构如图1所示。仿真分析结果显示结构设计合理。考虑制造、装配工艺、维修、经济性与美观等方面,产品材质选用亚克力板制作实物,透明、直观、方便展示。产品实物图如图2所示。整体机构有效行程为:x轴200 mm,y轴100 mm,z轴50 mm,产品总体尺寸为369 mm×291 mm×299 mm,质量约为4 000 g。
2插补算法模型分析与建立
2.1插补算法
插补是在一条给定了起点、终点和形状的曲线上进行“数据点的密化”,根据给定的进给速度和曲线形状,计算一个插补周期内各坐标轴进给的长度。在伺服系统的每个采样周期内,将经插补计算出的理论位置与实际反馈位置信息进行比较,其差值作为伺服调节的输入,经伺服驱动器控制伺服电机,完成指定路径,以下介绍常用的两种插补算法[20]。
(1)逐步比较插补法
以第一象限为例,设直线的起点坐标为原点,终点坐标为A(Xe,Ye),插补点坐标为Pi(Xi,Yi),如图3所示。
在任意时刻,可以比较直线斜率Xi/Yi和Xe/Ye的差值正负判断点的位置构造函数:
F(Xi,Yi)=Yi Xe-Xi Ye(1)
并且从F(Xi,Yi)的数值可以确定下一插补点的位置和进给方向,若Pi(Xi,Yi)在插补轨迹上方或轨迹上,即F(Xi,Yi)≥0,下一步应向+X方向进给一步,新位移点的偏差为:Fi+1=Fi-Ye。若Pi(Xi,Yi)在插补轨迹下方,则F(Xi,Yi)<0,下一步应向+Y方向运行一步,新加工点的偏差为Fi+1=Fi+Xe。
该方法是通过微小的折线来逼近所需的轨迹线,优点是算法简单,易于实现。
(2)时间分割法
如图4所示建立坐标系,设直线段OA起点在原点,终点为A(Xe,Ye),OA与X轴的夹角为α。根据设定的进给速度F的一个插补周期T的进给量ΔL=FT,计算得两轴位移增量为:
该方法通过直线来逼近曲线得到所求轨迹。相比于逐步比较法,此方法拟合直线误差较小。
(3)插补算法模型
针对项目开发周期与末端执行精度要求,本文提出的算法模型以传统直线插补算法为基础,且又不同于传统插补算法,其基本思路是将一段轨迹分为i段,每一段轨迹采用一个脉冲当量的双轴联动进行速度与位移合成,多段位移合成轨迹自动拟合成实际轮廓轨迹,如式(3)所示,矢量合成原理如图5所示。
上位机的强大运算能力为多轴联动提供了可能性,可实现一个脉冲当量的多轴联动,提升运动效率。如图5所示,起始点坐标为O(x0,y0)点,终点坐标为A(xi,yi),LabVIEW程序设置i+1段,点B(xi-1,yi-1)理论上在OA线段上,设步进电机的脉冲频率为,脉冲数量为,一个脉冲当量电机所转过的角度为θ,运动时间为T,细分数为n,电机转动1圈执行元件的运动导程为S,速度合成需要计算出x、y各方向的脉冲总数量和脉冲频率;电机转动1圈所需要的脉冲数量为:

执行元件单位导程所需的脉冲数量为:

若从B点运动至A点,则x、y方向的相对位移分别为:
Δx=xi-xi-1
Δy=yi-yi-1
由式(5)、(6)(6)可知:x、y各运动方向的脉冲总量x,y分别为:

当脉冲频率为参数常数时,运动时间等于脉冲总量与脉冲频率的比值,即

若x、y两轴需拟合出一条直线,则x、y轴需满足同时到达终点这一条件,方可合成为直线段,由此,可得:
Tx=Ty(9)
即

当x、y两轴联动矢量合成轨迹时,设最大的轴行程=(常量),则:
①当x方向轴行程大于等于y方向,即
且都不为0时:

②当y方向轴行程大于x方向,即
为0时:

③当px=0或py=0时,运动轴的脉冲频率为,脉冲量为px或者py。
由上述表达式可求出x、y轴各方向脉冲总量与脉冲频率,将运算得到的运动数据构成一个数组通过串口发送至下位机,从而控制执行元件的直线插补运动。
2.2两轴联动数控代码解析过程与设计
基于LabVIEW的两轴插补控制系统主要由LabVIEW人机交互、G代码解析模块、插补计算、微控制器及位置控制器模块组成,总体方案如图6所示。当用户运行所编写的数控代码时,系统先将数控代码解析为脉冲信号,由串口发送至下位机,其程序函数如图7所示。
具体过程如下(数控系统编程为绝对坐标编程):
①先提取每一行G代码,如提取第一行有效数控代码为:N10 G01 X10 Y10 Z10;
②运用正则匹配函数提取该行程序的G0_,G函数代表的是选择运动差补方式,G00为快速定位,G01为直线差补等,此参数是决定了脉冲频率大小,即运动形式;
③X_、Y_、Z_分别对应三轴的运动位移,即脉冲计算的已知量,使用正则匹配函数分别提取X、Y、Z轴的坐标,坐标决定了脉冲的总量,即运动位移;
④将计算完毕的X、Y、Z坐标进行差补计算,在LabVIEW中调用机器人工具包的差补函数对三轴位移进行细分,使其运动更加精细;
⑤将每两行G代码解析后生成的差补数组合并为一个数组,差补坐标生成完毕后,将每两行对应的三轴坐标进行相减,所得差值输入LabVIEW步进电机控制函数中,控制执行元件运动。
设直线起始点坐标为O(0,0)点,终点坐标为A(x,y),插补运算中,直线被细分为i段,已知θ,T,n,S,f,由式(4)~(12),可求:x,,y,。
2.3软件插补坐标数组生成过程
对上述算法进行实例验证,设加工一直线起点O(0,0),终点坐标A(12,7),软件默认i值取为x、y轴最大差值的绝对值+1,i=12-0+1=13,其过程如图8~9所示。上位机输出脉冲频率与脉冲量,驱动相应执行部件运动,实现相应的运动轨迹,可用于轨迹仿真与模拟。
2.4控制系统硬件设计
运动控制系统是数控教学机的重要组成部分,通过控制器控制各轴步进电机进行插补运动完成用户规划路径。本文采用“PC+控制器”方案进行控制系统设计,PC(电子计算机)为人机交互平台,控制器接收指令进行运动控制,完成指令任务。整个运动控制硬件系统由上位机、控制器、步进电机、传感器、驱动器与执行元件6部分组成,系统原理如图10所示。
上位机运用LabVIEW软件作为开发平台,通过串口与控制器通信,将用户输入命令转化为控制器可运算运动控制数据,控制执行元件运动。
上位机选用Windows为运行平台,控制器选用Ardu⁃ino UNO控制板,该控制板可与上位机进行串口通信,且LabVIEW有对应开发工具包LabVIEW Interface for Ar⁃duino,极大缩短开发周期,集成程度较高。传感器采用碰撞传感器以防止各轴执行机构超程运动破坏机体,协助系统进行原点标定,保证系统稳定性与安全性。PC强大信息计算处理能力、LabVIEW开放编程形式与控制器运动轨迹控制能力相结合,使得数控教学机运动控制系统具备反应灵敏、运动效率高、开放程度高等特点。
3软件设计与验证
3.1设计过程
数控教学机软件设计分为下位机程序设计与上位机程序设计,下位机采用Arduino控制器编程,完成串口通信、电机控制、AD信号采集的控制任务;上位机采用LabVIEW软件进行控制程序与用户交互界面的编写与设计。上位机界面中可进行用户数控代码编程且可手动控制各轴运动,将用户输入的数控代码解析计算为x、y、z各轴电机脉冲总量与脉冲频率,通过串口发送至控制器控制电机运动,实现用户数控代码编程实施与轨迹规划。
Arduino、LabVIEW串口通信与控制的Arduino程序由NI公司支持,将vi.lib中的Base.uno文件烧录至Ardui⁃no控制器中完成下位机程序。上位机程序采用生产消费者结构进行程序设计,UI事件为生产者,数据处理为消费者,当UI无操作指令时,消费者将处于等待状态,有效减轻CPU负荷。上位机程序设计分为用户输入、手动操作与数控代码解析3个模块。用户输入模块为用户提供数控代码编程,该模块采用字符串进行保存字符、显示和输入,布尔按钮为输入确认标记,用户可选择编写数控代码或从文本文件载入程序,亦可保存至文本文件,前面板与程序框如图11所示。
手动操作模块可根据用户需求,进行手动控制三轴任意轴运动,输入某点坐标可进行相对坐标系的直线差补运动,该模块可进行轴初始化操作,前面板与程序框如图12所示。
数控代码解析模块运行当前用户所编写数控代码,系统将数控代码解析为脉冲信号,由串口发送至下位机,程序框如图13所示。
控制程序实现与执行时,首先用户编写数控代码,依据用户输入数控G代码,进行数控代码解析,即运用正则匹配函数分别提取每一行数控代码的程序号、插补方式、x、y、z坐标,存入解析数组;其次将数组每两行坐标进行比对运算,计算出刀具运动轨迹;最后运用LabVIEW Robotics工具包的轨迹生成子函数将每一段轨迹细分为i+1段,轨迹生成子函数(GenerateTrajec⁃tory.vi)如图14所示。
上位机根据用户数控编程进行解析运算生成轨迹,运算得到轨迹坐标数组通过LabVIEW Interface for Ardui⁃no工具包实时将脉冲量与脉冲频率通过串口发送至Ardui⁃no控制中,控制步进电机转动,带动执行元件运动,完成用户编写的数控代码轨迹。
3.2系统运行试验验证
控制面板内输入数控代码,上位机解析代码,运算得到轨迹坐标数组,通过软件工具包实时将脉冲量与脉冲频率发送给运动控制卡,驱动x-y-z轴电机运动,完成相应轨迹书写,整个运行过程基本平稳,如图15所示。
4结束语
本文围绕数控教学机结构设计与控制系统开发,根据项目任务要求,运用SolidWorks软件完成结构设计、3D建模与运动仿真。经加工装配,完成实物组装。平台结构新颖独特,成本极低,易于推广使用。研究了基于LabVIEW软件的两轴坐标联动直线差补算法,建立了算法计算模型,完成了相关公式推导,算法计算过程由微控制器完成,运算速度快、效率高、可执行性较好。控制部分采用“PC+控制器”模式进行上位机及下位机设计开发,充分利用LabVIEW软件平台及其对应的模块化开发工具包Lab⁃VIEW Interface for Arduino进行串口通信,极大缩短开发周期,集成度高,也利于后续维护与扩展(如App,WiFi等)。
数控教学机项目实施过程以小组模式开展,教师就项目开展过程涉及的众多基础知识展开理论辅导,各组员全程参与项目结构方案的确定、控制系统设计、零部件购买、组装、调试等,培养了团队协作精神,增强了工程实践意识。末端执行元件的灵活替代可用于其他机电产品设计与开发,简单方便,易实现,集教科研于一体,具有重要的教学理论研究意义,已应用于专业课程实践教学中,取得良好教学效果。
参考文献:
[1]孙栋,周知进.以工程项目驱动的机械设计能力培养模式探究[J].冶金管理,2020(5):223,248.
[2]俞国燕,王贵,刘焕牢,等.机械类专业项目驱动式实践教学模式的探索与实践[J].中国大学教学,2014(12):79-80,78.
[3]尹存宏,郭蕊.学科竞赛项目驱动式测试技术实验教学改进[J].中国现代教育装备,2023(23):123-125.
[4]姚静,王佩.基于OBE教学理念的项目驱动式专业课程教学设计—以《液压与气压传动》为例[J].教学研究,2017,40(3):87-91.
[5]杨斌,杨文志,张超,等.基于项目驱动的“机械工程测试技术”教学方法改革探索[J].机电技术,2019(1):109-111.
[6]莫莉,赵悦,倪妍婷,等.基于“项目驱动式”单片机类课程教学改革与实践[J].科教导刊(上旬刊),2018(16):112-113,135.
[7]刘道吉.数字化制造技术在钳工加工中的创新应用研究[J].内燃机与配件,2024(5):46-48.
[8]徐巍.培养创新人才探索"数字化设计与制造"教学改革[J].实验室研究与探索,2014,33(7):218-220,235.
[9]王晓丽.案例法和项目驱动法在机电一体化设计课程中的应用[J].机械管理开发,2013(1):173,175.
[10]程卫东,王淑君,鹿芳媛.基于OBE理念的机电课程群项目驱动教学改革探索[J].中国现代教育装备,2021(5):100-102.
[11]孙薇,张立昌.基于OBE理念的工业设计工程训练教学设计与实践[J].机械设计与制造工程,2024,53(1):121-125.
[12]俞丙威,王宇霄,王飞,等.基于LabVIEW和Multisim联合仿真的虚拟电路实验系统的设计[J].机电工程技术,2023,52(4):245-248.
[13]邢雪宁,张厚升,季画.基于虚拟仪器和Simulink的运动控制系统虚拟实验平台设计[J].实验技术与管理,2015,32(8):114-117.
[14]杨欢,苗长云,白华.超声检测多轴运动控制器及其上位机软件设计[J].仪表技术与传感器,2015(7):45-47.
[15]卫延斌,张海燕,刘春国.虚拟仪器下无轴传动系统开发研究[J].机械设计与制造,2014(6):100-102.
[16]严侠,李晓林,王珏.多轴随机振动控制系统开发[J].机床与液压,2013,41(9):94-97.
[17]庄明凤,卓丽云.基于LabVIEW运动平台运动规律的研究[J].科学技术创新,2018(22):62-63.
[18]刘丰豪,程石,崔思柱,等.基于NI运动控制卡的多轴运动控制研究[J].现代制造技术与装备,2018(7):194-195.
[19]袁恒.基于LabVIEW的多轴运动控制系统半实物仿真平台设计[D].洛阳:河南科技大学,2015.
[20]陈冰,杨慧斌,马晓峰,等.LabVIEW在开放式数控系统G代码解析中的应用[J].现代商贸工业,2015,36(15):189-191.
后台-系统设置-扩展变量-手机广告位-内容正文底部 |
-
<< 上一篇
下一篇:没有了!