激光微加工系统及基于DSP+FPGA的控制单元设计
时间(对应直线段的长度)和激光的参数。FPGA用来实现对运动平台的控制。图3为硬件系统的原理框图。
DSP采用TI公司的TMS320VC5501定点型处理器。该芯片主频最高为300 MHz,存储空间为16 KB,支持SDRAM的接口和低内核电压,内部集成2个乘法器,每个乘法器在单周期可执行17位的乘法运算,满足微加工系统对数据处理方面的要求。DSP 实现的主要工作:与上位机通信;对图形数据进行存储与读取;对图形数据进行计算处理,生成符合FPGA工作的加工数据格式;把加工数据存储到FPGA加工数据区。
SDRAM用来存储上位机发送来的动态图形数据。当开始加工时,DSP从SDRAM中读取图形数据,按照步进电机的控制算法,对每一条直线段进行处理。同时通过RS232串口改变激光的工作模式、能量和脉冲重复率等参数,并控制激光器的出光。FLASH存储器用来存放DSP程序,每次上电后,程序自动由FLASH加载到DSP内存。CPLD作为DSP的桥路来连接其他器件。
FPGA采用Altera公司的Cyclone系列器件EP1C6T144。EP1C6系列FPGA拥有5 980个逻辑单元和20个M4K RAM块,总计92 160 bit的内置RAM。利用FPGA的高速同步处理特点,实现对多维运动的控制。使用Verilog HDL语言,在Quartus Ⅱ环境下编写完成。在一片FPGA芯片上实现了多轴完全相同但彼此相互独立的操作模块,又集成了多轴联动的处理机制。根据DSP计算出来的单条直线段的 X/Y速度,输出对应频率的方波信号控制步进电机的运动。加工时间作为定时器参数控制所加工直线段的长度,在定时到达后,无延迟地切换到下条直线段的执行。为了避免等待数据造成的加工停顿,FPGA加工模块采用了双存储器交替加工的结构,即在FPGA内部有2个完整的存储单元,每个存储单元包括4个存储区:X轴的速度、Y轴的速度、直线段加工时间和激光器的参数。每个存储区最多可以保存128条加工数据。当FPGA执行其中一个存储单元的加工数据时,DSP可以计算并把加工数据写入另一存储单元,如图4所示。
为了防止从步进电机驱动器引入干扰信号到FPGA,在FPGA输出到电机驱动器的每路信号上都采用了光电隔离器。此外,为了提高系统精度,有很多辅助设置应用于系统中,这些信号都接入到FPGA,由FPGA进行监控。如采用辅助气体提高加工效果,通过限位开关进行运动保护等。
2.3 数据算法及误差处理
加工图形包括了直线、圆、圆弧和其他曲线。按照加工精度要求,在上位机软件中把圆等曲线分解为一系列首尾相连的矢量,即全部按照直线段进行加工。在直线的加工过程中,根据步进电机的特性,静止状态时有静摩擦。为了克服静阻力,使电机平稳运转,在对电机的控制上,必须有加减速区的设置,实现"S"型的步进电机控制曲线(如图5所示),从而避免了因为起速或减速过快造成的振动,使步进电机产生丢步的现象。加工时电机将按给定的速度逐级变化,V1是步进电机能平稳启动的速度,V是设置的图形加工速度。可见,加减速区就是用多段幅值较小的速度变化替代一次较大的速度变化。对速度的细分可以采用列表的方式,DSP在进行输出处理时,将根据直线段的长短和要求的加工速度,计算得出加减速区的级数。系统采用FPGA定时的方式对加工的长度进行控制,故本系统采用固定每级的加工时间TC来进行加减速区的处理。
按照上面的算法和处理原理进行了整个系统的设计,但是加工效果并不好,有些地方图形不闭合。通过分析加工算法发现,加工误差主要来源于累积误差和 FPGA误差。
为了提高精度,DSP内部按照浮点数据格式运算,但是送给FPGA的数据却是整型数据,所以在从浮点转整型数据的过程中,小数位被丢失。当矢量个数很多时,舍弃的小数位数据进行大量累积,使加工效果变差。作为一个现场可编程逻辑芯片,FPGA因为其高速同步的特点,被用于对电机的控制,但其也有自身的缺陷。在排除了其他误差的可能性后,对FPGA的性能进行了标定,发现随着速度的提高,FPGA的输出会产生错误。根据高精度计数器的标定,当电机控制信号速度变大后,会有不同程度的脉冲个数丢失。
在经过对上面两个误差的修正后,选用硅(100)进行了部分微加工的实验。通过光学显微镜对结果进行观测可知,系统实现了较好的微加工效果。在空气环境下,采用20 kHz的激光频率,获得激光输出能量为150 μJ,在2 mm/s的运动速度下加工出微六边形,如图6所示。
为了满足微加工的需要,设计了纳秒脉冲激光微加工系统,尤其是实现了具有图形解析和高速数据处理功能的控制单元,解决了现有设备的关键问题,使加工系统在操作性和精度上都有很大提升,
- 基于DSP和ARM的激光粒度仪关键电路设计(03-01)
- DSP和FPGA在大尺寸激光数控加工系统中的运用(01-01)
- 基于DSP芯片TMS320F2812的振镜式激光打标控制器设计(01-10)
- 基于DSP的高速激光标记控制系统设计 (06-04)
- 基于DSP的多激光威胁信号分选和码型识别(08-04)
- DSP在多激光信号中的应用(11-30)