宋 芳,郝双晖,郝明晖
(1.上海工程技术大学 机器人智能控制及功能化结构设计实验室,上海 201620;2.哈尔滨工业大学 机电工程学院,哈尔滨 150001)
目前对于数控系统的研究主要是基于数控系统本身特征及实现要求进行的,并未充分考虑到数控系统与伺服系统以及机械系统之间的相互联系及相互影响,很少注意到数控系统插补周期与伺服系统控制周期的关系,以及不同周期对整个数控装备性能的影响。因此,当前对数控系统插补周期与伺服系统控制周期相同的控制系统研究较少。由于对此不同的忽视,致使当前数控装备存在如下不足:①每个插补周期内的NC 速度指令对伺服系统来说是一种瞬时突变的速度指令,而在伺服系统中实际速度是不可能发生突变的,故伺服系统对该指令的响应必然会产生较大的振动[1]。为此,在伺服系统中通常利用滤波器对其进行处理,再对滤波后的速度指令进行跟踪,这样虽然在一定程度上解决了速度瞬时突变问题,但仍然存在阶梯式速度波动,同时由于滤波产生的延时直接造成了响应跟踪滞后,其最终结果是使合成轨迹产生轮廓误差,影响加工精度;②伺服系统将在多个伺服控制周期内完成由数控系统提供的一个插补周期内规划的指令,此指令执行过程对数控系统来讲是未知的,即在此插补周期内的伺服系统指令执行过程并不受数控系统控制,而是由各轴伺服系统独立完成。当各轴的伺服增益不同时,在一个插补周期内各轴合成轨迹并不一定按照数控系统规划的轨迹执行,将可能产生轮廓误差,影响系统的加工精度[2]。
为解决以上不足,基于已研究的移动平均加减速控制算法[3-4]基础上,提出同周期多轴控制系统,即数控系统插补周期与伺服系统控制周期相同。两个系统同周期后,NC 速度指令就成为伺服系统可直接跟踪的速度指令,这样既可以消除指令突变带来的伺服系统振动,又可以避免由于滤波处理造成的延时,并消除在一个插补周期内由于伺服增益的不同而使执行后指令与数控系统规划的指令不同所产生的轮廓误差,从而提高加工精度。为实现同周期多轴控制系统,对其软、硬件进行了深入研究。
该控制系统所采用的加减速控制算法是以直线加减速控制算法(STEP 方式)为基础的移动平均加减速控制算法。该算法对STEP 方式下的速度进行移动平均处理,由处理后的速度差分求出加速度,然后利用梯形面积公式,由求得的移动平均速度、加速度求出位移。由此算法求得的速度曲线光滑且加速度连续。
1.1.1 STEP 方式的速度、加速度、位置计算
直线加减速控制算法是所有加减速控制算法中最为简单的一种,其速度、加速度分配图如图1。
图1 直线加减速控制
加速、匀速、减速段数值计算通用公式:
式中,aLi、vLi、SLi、T 分别代表第i 个插补周期的加速度、速度、位置和插补周期。
1.1.2 基于移动平均的加减速控制算法
基于移动平均加减速控制算法的求解过程,如图2 所示。
图2 速度移动平均
首先,确定移动平均步数n;然后,确定n 个速度移动平均数的初值,速度移动平均数初值的选取与程序段的初始速度有关,一般取程序段的初始速度。其中,n 表示移动平均步数,vL表示STEP 方式速度,vJ表示移动平均后的实际速度,aJ是由移动平均处理后的速度求得的实际加速度。
具体计算公式如下:
其中,vJi-1、aJi-1、SJi-1分别为移动平均后第i-1 步的速度、加速度、位置,vLi为STEP 方式下计算出的速度。式(2)即为基于移动平均加减速控制算法的速度、加速度、位置计算式。
图3 为系统软件构架示意图,该软件构架是以分层结构方式进行设计的,其中在数控系统插补周期内主要完成对曲线的实时插补,该层模块需要与伺服系统控制周期同周期,这两层具有很强的实时性,是整个系统最基本的核心部分,其余的NC 代码解释、减速点预测等均分配到更上一层结构中完成,此层是对外开放的,可根据实际需要添加相应的功能,同时确定合适的硬件系统对其进行处理。
图3 软件构架示意图
由图3 可知,若想确定整个系统的控制周期,首先要考虑所采用的伺服系统的控制周期。该系统是基于实验室独立研制的伺服系统对同周期多轴控制系统进行研究的,该伺服系统的控制周期为60μs。需要说明的是,此60μs 的伺服系统控制周期相对于当前上百微秒的伺服系统控制周期而言较短,这将对伺服系统的计算能力要求很高,参考文献[5-6]对其进行了详细研究,在此不再赘述。
此外,该系统主要是基于已研究的移动平均加减速控制算法基础上进行研究的,考虑系统目前实际完成的计算量,将采用一个单片机完成处理任务,同时将60μs 定为同周期多轴控制系统的控制周期。利用由瑞萨公司生产的SH7263 作为数控系统的主控芯片进行NURBS 曲线指令解释,同时将NEC 公司生产的μPD70F3184 作为伺服系统的主控芯片完成伺服控制,其系统软件构架图如图4。
由图4 可知,同周期多轴控制系统的主控卡程序采用中断控制模式,分为三个层次:①NC 代码解释及存储模块;②预处理模块;③曲线实时插补及数据指令存储模块。所对应的中断定时时间分别为:10ms、5ms 和60μs,其中模块3 的中断级别最高,保证系统的实时性。虽然这三个模块在一个处理器中完成,但NC 代码解释及存储模块、预处理模块与曲线实时插补模块并不在一个中断程序中执行。从控制卡完成伺服控制,定时中断时间为60μs,中断级别在从控制卡中最高。
图4 同周期控制系统软件构架图
整个实验系统首先进行NC 代码解释,提取所需要的指令信息,以一定的数据格式存放在SDRAM 缓存区内;然后,在预处理模块中,从缓存区中取出指令信息进行直线加减速的NURBS 曲线预插补处理,并将处理结果存储在SDRAM 缓存区内,为实时插补处理提供信息;同周期实时运动控制模块分为两部分,主控制卡中完成基于移动平均的NURBS 曲线实时插补部分,利用高速双端口RAM 作为从数控系统与伺服系统之间的指令传输中介,并将当前插补指令信息存储在各轴的双端口RAM 中;从控制卡在完成伺服控制算法处理后,从相应的双端口RAM 存储区中读取预存指令,作为下一周期伺服系统控制使用,完成伺服控制。
以上处理过程中需要注意的是,每个程序段插补完成后,如果预处理模块没有把数据准备好,则不进行实时运动控制模块。同样,当NC 代码解释、存储模块中没有准备好指令数据信息时,也不进行预处理模块。此外,同周期实时运动控制模块是该系统的基本核心模块,当系统功能需要扩展时,此模块的基础运算基本不受影响。在预处理模块中,主要实现对基本曲线及NURBS 曲线的插补前预处理,完成基本几何量计算、加减速前瞻控制及速度分布等,对这些任务的处理也是以模块方式进行的,当需要加入更多功能时,原有模块将不受影响,同时模块化设计也便于程序的移植,利于今后系统功能的扩展。
同周期多轴控制系统硬件平台采用主从式控制方案,即按系统功能划分为主控制卡、从控制卡、连接卡及电源卡,其中主控制卡作为整个系统的核心,几乎全部的轨迹处理都是在该卡的主控芯片SH7263中完成的;通过连接卡,主控卡把每个插补周期的控制指令发送给从控制卡,从控制卡接收控制指令后将其做为伺服控制器的前馈指令,对电机进行控制。整个系统是基于双端口RAM 进行数据通讯的,保证了数据传输的可靠性和快速性。整个系统供电采用一个电源卡,并通过连接卡为整个系统供电,使系统结构紧凑。同时采用一体化集成设计,避免了主控制卡与从控制卡之间由于采用传统数据线通讯方式所带来的传输速率慢的不足。图5 和图6 为硬件平台的总体框架图和实物图。
图5 系统总体框图
图6 同周期多轴控制系统实物图
由于对NURBS 曲线插补过程中需进行大量计算,且包括对浮点小数的计算,为提高系统运算速度,采用SH7263 作为系统主控芯片。该芯片支持嵌入式开发且带有FPU 处理单元(硬件浮点小数处理单元),具有极佳的数据处理能力。同时该芯片带有高速总线控制功能,可以使系统对双端口RAM 进行快速数据操作处理。并具有SDRAM 扩展及FLASH扩展功能,通过对SDRAM 进行扩展,在提高系统实时计算能力的同时也扩大临时缓存,为预插补信息的存储提供足够的空间,有效保证了系统的同周期控制及算法处理。通过对FLASH 扩展,扩大系统的程序存储量,为系统功能扩展及升级提供可扩展空间。此芯片还带有LCD 驱动模块,可对TFT 屏进行控制,从而实现系统的人机交互功能。主控制卡模块结构示意图如图7 所示。
图7 主控制卡实物图
由于本文所使用的核心控制芯片SH7263 具有LCD 驱动模块,因此将采用TFT 屏实现系统的人机交互功能。在数控系统与伺服系统接口方面,由于要实现系统的同周期控制,并将数控系统每个插补周期处理获得的各阶指令以数值的方式传送给伺服系统,这都将对数据传输速度提出很高的要求。目前数控系统与伺服系统之间采用的接口方式不能满足同周期控制系统对数据进行高速通讯的要求,因此本文将基于高速双端口RAM 实现数控系统与伺服系统之间的指令传输,进而实现系统的同周期控制,其数据通讯方式如图8 所示。
图8 同周期多轴控制系统通讯方式示意图
为充分说明所设计的同周期控制系统与其他非同周期控制系统对加工轮廓误差影响的不同,下面将对同周期控制系统与分别采用一阶和二阶低通滤波处理的非同周期控制系统进行仿真比较。利用Matlab 分析软件对半径r 为20mm 的圆进行仿真,进给速度F = 0.2m/s,最大加速度amax= 3m/s2。
图9 为轨迹仿真结果图,其中曲线A 为同周期控制系统的指令轨迹曲线图,曲线B 为非同周期控制系统各轴采用一阶滤波处理后生成的合成轨迹曲线图,曲线C 为非同周期控制系统各轴采用二阶滤波处理后生成的合成轨迹曲线图。
图9 轨迹仿真结果图
从图9 中不难看出,采用一阶和二阶低通滤波处理,其合成轨迹将会产生轮廓误差,即仿真后的实际输出轨迹为一内圆,且处理的阶次越高,轮廓误差越大。而同周期控制系统能够很好地实现曲线的加工,其轮廓误差最小。
为了进一步验证所研究的同周期控制系统能够实现对指令解释很好的跟踪性能,下面将对如图10所示的一条半径为25mm 的三次NURBS 曲线[7]进行指令解释跟踪实验。
图10 三次NURBS 曲线图
曲线参数如下:
控制点:V = {0,0},{0,-25},{50,-25},{50,0},{50,25},{0,25},{0,0}mm;
节点矢量:U = {0,0,0,0.25,0.5,0.5,0.75,1,1,1};
权值:W = {1,0.5,0.5,1,0.5,0.5,1}。
插补周期为T = 60μs,机床许用的最大加速度为Amax= 5m/s2,指令速度vf= 0.2m/s,最大弦高误差δ = 1μm,下面将采用四次移动平均进行实验,每次的步数为均为35 步。
图11 为所搭建的同周期多轴控制系统及已提出的控制算法对图10 所示三次NURBS 曲线经过四次移动平均处理后NC 指令解释在X、Y 轴上的实际运行结果图。
图11 速度指令与编码器反馈比较图
在图11a 所示的一个整圆执行过程中,I 区域所示的指令和反馈曲线表明以零为起始速度开始加速,由于起始速度运行方向与X 轴垂直,因此分配到X 轴的速度很小。当合成进给速度逐渐增大到给定速度时,合成速度进入匀速运行阶段,但由于圆切矢的不断变化,此时X 轴的指令和反馈曲线即为正弦曲线,从图中不难看出,虽然X 轴的指令曲线处于不断变化中,但编码器反馈能够实现对X 轴指令很好地跟踪;当速度进入到II 所示区域时, 合成进给速度开始减速,由于此时的合成进给速度与X 轴近似垂直,故分配到X 轴的速度也很小。同样在图11b 中,编码器反馈仍能实现对指令曲线很好的跟踪。
由上述分析可知,在整个速度处理过程中,各轴编码器反馈曲线几乎与指令曲线重合,证明了所设计的多轴控制系统能够实现对指令解释良好的跟踪性能。由于该实验是基于所建立的同周期控制系统实现的,同时也证明了所设计的硬件平台能够很好地满足数控系统与伺服系统同周期控制要求。
首先对同周期多轴控制系统的软件构架进行设计,采用分层构架方式将软件划分为NC 代码解释、存储模块,预处理模块和同周期实时运动控制模块,并搭建了同周期多轴控制系统实验平台,实现了系统的同周期控制。利用高速双端口RAM 作为从控制卡与主控卡芯片之间的指令传输中介,实现板间内部数据传输。对同周期控制系统与其他非同周期控制系统对加工轮廓误差的影响进行了仿真,仿真结果证明了同周期控制系统的轮廓误差最小。最后通过指令解释与编码器数据反馈实验,验证了该系统不但能够实现数控系统的插补周期与伺服系统的控制周期相同,而且能够实现对指令解释很好地跟踪性能,为数控系统的进一步研究及开发提供可借鉴的参考。
[1]胡蓉,胡年. 高速高精度加工机床有关振动抑制的调整[J]. 机械工人,2005(4):11-14.
[2]赵国勇. 数控系统运动平滑处理、伺服控制及轮廓控制技术研究[D]. 大连理工大学,2006.
[3]F. Song,S. H. Hao,M. H. Hao,et al. Research on Acceleration and Deceleration Control Algorithm of NC Instruction Interpretations with High-order Smooth. International Conference on Intelligent Robotics and Applications,Wuhan,China,October,2008:548-557.
[4]郝双晖,宋芳,郝明晖,等. 移动平均加减速控制算法的研究[J]. 东北大学学报(自然科学版),2008,29(S1):222-225.
[5]刘杰. 同周期控制交流伺服系统的研究[D]. 哈尔滨工业大学,2009,12:59-91.
[6]刘吉柱,郝双晖,郑伟峰,等. 交流伺服系统及其运动控制[J]. 机床与液压,2010,38(5):77-80.
[7]M. Y. Cheng,M. C. Tsai,J. C. Kuo. Real-time NURBS Command Generators for CNC Servo Controllers. International Journal of Machine Tool & Manufacture. 2002,42:801-813.