论文部分内容阅读
目前常用的CAD/CAM系统基本上都具有自由曲线曲面的建模功能,但多数的CNC运动控制器只提供了直线和圆弧插补功能,不能满足高速、高精度的自由曲线曲面的直接加工。因此具有自由曲线插补功能的运动控制器的研究具有重要的意义。本课题主要研究了基于DSP和FPGA的具有NURBS曲线插补功能的开放式运动控制器。主要目的是利用DSP的计算能力强、数据吞吐率高来实现对自由曲线插补的快速计算,以及FPGA的高可靠性、开发周期短和系统内可再编程的特点,来解决目前运动控制器中自由曲线插补中软件插补速度慢而硬件插补设计繁琐、调整和升级不易的缺点。本文的主要研究内容如下:为实现NURBS曲线的插补功能,将插补过程按计算流程和任务量划分成粗插补和精插补,粗插补对NURBS曲线以步长进行数据密集化后,再由精插补以脉冲当量密集化步长来实现曲线插补,并进一步确定了以DSP来实现粗插补和FPGA实现精插补的系统架构。研究了NURBS曲线粗插补的流程。在已知NURBS曲线相关参数的情况下,根据NURBS曲线的特性及运动控制的动态特性先将NURBS分段;再求出各支段NURBS曲线的加工参数,并对各支段NURBS进行Sine速度规划;再以插补周期为时间单位,对速度规划完的NURBS曲线再分段,完成数据密集化,即粗插补。研究了精插补算法及其在FPGA的实现。以插补周期为时间单位,将粗插补获的数据点,通过精插补算法转换成控制电机的脉冲和方向,其中精插补算法主要包括数字脉冲相乘法、逐点比较法、最小偏差法、数字积分法等;在对上述算法进行深入研究后,设计了相应算法的硬件插补模块,并对各个精插补电路模块进行了仿真验证。完成NURBS曲线粗插补算法的对比和C代码实现及优化,并进行了仿真,仿真结果表明了该插补方法有效的减小了速度冲击,提高了控制精度。并给出了运动控制器硬件测试平台的设计和仿真测试。