论文部分内容阅读
摘要:开放式数控系统具有可互换性、可移植性、可扩展性、互操作性等特点,更能够满足当前制造企业的加工需求,并为技术和产品之间的集成提供了可能。本文主要对DSP和FPGA两种芯片进行介绍和分析,在此基础上设计运动控制器,以期更好地应用运动控制技术,达到数控系统对运动控制单元实时、精准控制的要求。
关键词:数控系统;DSP;FPGA;运动控制器
运动控制技术是一门涵盖多学科的综合性的交叉技术,在生产加工中应用十分广泛,能够完成各种复杂的加工任务。随着制造工业生产加工速度的日益提高,其对加工精度以及实时控制也提出了越来越高度的要求。传统的基于单片机的运动控制卡已经无法满足数控系统的工作要求,基于PC的运动控制卡已经得到普及,考虑到高性能、低成本等特性,基于DSP和FPGA的运动控制器设计成为了研究重点,这也是运动控制技术发展的一大趋势。
1.运动控制技术及基于DSP和FPGA的控制方案
按照机械运动轨迹来划分,运动控制系统可分为点位、直线和轮廓控制;按照执行部件类型划分,可分为开环、半闭环及闭环伺服系统。无论基于哪一种分类,都遵循连续运动轨迹插补原理,所谓插补,就是对数据密化进行实时控制的过程,它与坐标轴位置伺服控制共同构成了运动控制系统的两个重要组成部分,作为轨道控制中最重要的计算任务,插补运算必须要保证精度和实时性,目前比较常用的插补运算法是脉冲冲量插补和数据采样插补[1]。运动控制器就是运动系统和控制技术相结合的产物,其类型较多,但在功能上并无明显差异,关于运动控制的设计,目前主要采用PC机与运动控制卡相结合的控制方案,在此主要介绍基于DSP和FPGA的运动控制卡的设计,以此类控制卡作为运动系统的主控单元,能够完成以下三种功能:其一,从主机接收运动指令,向主机反馈运行状态;其二,根据接收的指令,对4轴电机的位置、速度、插补和PID调节进行控制;其三,完成运动控制的同时还能够对与运动有关的I/O信号进行处理[2]。
2.基于DSP和FPGA的运动控制器的设计
2.1总体结构
在DSP和FPGA两种功能芯片的基础上,扩展多个Flash和SRAM,用以存储程序和数据,以此来提高DSP的访问速度,并为FPGA配备EPROM,用以存储下载程序,连接DPS局部总线与PIC接口芯片,实现二者的数据交换。本次设计采用的DSP和FPGA芯片均为低能耗、低电压器件,为提供运动系统的抗干扰性能,将输入信号通过光耦进行隔离,对输出信号进行远距离传输。对板卡地址空间进行分配,为实现实时信号高速处理的使用要求,将DPS分为定点和浮点两类,选用TMS320VC33型号的DPS和XC2S300E型号的FPGA。
2.2硬件设计
硬件设计主要包括DPS外设接口模块设计和FPGA模块电路设计两部分内容,DPS芯片内部的存储器设置为两级高速缓存结构,使之能够适应快速复杂的运算,外设I/O接口的电源电压为3.3V,内核电压为1.26V,基于EMIF强大的接口能力,能够实现与各类存储器进行直接连接,即实现存储器地址连续的无缝连接。为增强运动系统的可扩展性,在EMIF接口处扩展两个FPGA,便于其他接口在FPGA中能够灵活扩展以及各个功能的模块化,并设计DSP与主轴电机相连接的接口、编码器鉴相译码、插补脉冲发生器等模块电路。当FPGA将数据信息传送给DSP时,电平跳变使DPS外部中断,DSP可通过总线接口读取FPGA传送的数据信息[3]。
2.3软件设计
软件设计的主要任务是完成对DSP芯片的编程,这直接影响到运动控制器运行的精度、速度和稳定性。经上位机翻译G代码即可获取功能号代码,再通过总线发送给DSP,存储在FPGA配备的EPROM中,此时DSP会同时运行粗插补和细插补程序,DSP在将计算的脉冲数和插补周期数发送给FPGA,并计算和显示当前加工刀具的坐标位置,再由上位机完成对主轴电机转速的设定。该软件程序采用的是模块化结构设计,分为主循环程序和各种中断程序,前者包括预补处理模块、通信处理模块,程序开始运行时,首先要完成与DSP相关的初始化,然后再进入主循环程序,主循环插补部分流程为:主循环开始→判断→插补预处理→再判断→插补计算→主循环结束,本次设计DSP主循环的时间为0.2ms,插补中断周期为0.5ms;插补中断处理子程序为:FPGA对DPS发生外部中断→判断→反馈脉冲数和插补周期数→插补中断[4]。
3.结论
基于DSP和FPGA的运动控制器总体框架、硬件平台以及对应的软件设计与实现,对常用控制方案进行了优化,结果表明,采用DSP和FPGA相结合的硬件设计,以及DSP浮点设置,增强了运动控制器的灵活性,也有效提高了数控机床的加工精度和速度,而且模块化的软件系统设计方法,也有利于控制系统开放性的提高。
参考文献:
[1]蒋明柯.数控系统中基于DSP和FPGA的运动控制器研究[D].华南理工大学,2013.
[2]郑晓峰,方凯,黄迎华.一种基于DSP和FPGA的多轴运动控制卡的设计[J].自动化与仪器仪表,2006,13(4):18-20.
[3]李伦波,马广富,赵建亚.基于DSP和FPGA的运动控制卡的设计与实现[J].控制工程,2007,10(3):260-262.
[4]吴红军,皮佑国.基于DSP和FPGA的运动控制器的设计与实现[J].组合机床与自动化加工技术,2011,11(2):75-77.
关键词:数控系统;DSP;FPGA;运动控制器
运动控制技术是一门涵盖多学科的综合性的交叉技术,在生产加工中应用十分广泛,能够完成各种复杂的加工任务。随着制造工业生产加工速度的日益提高,其对加工精度以及实时控制也提出了越来越高度的要求。传统的基于单片机的运动控制卡已经无法满足数控系统的工作要求,基于PC的运动控制卡已经得到普及,考虑到高性能、低成本等特性,基于DSP和FPGA的运动控制器设计成为了研究重点,这也是运动控制技术发展的一大趋势。
1.运动控制技术及基于DSP和FPGA的控制方案
按照机械运动轨迹来划分,运动控制系统可分为点位、直线和轮廓控制;按照执行部件类型划分,可分为开环、半闭环及闭环伺服系统。无论基于哪一种分类,都遵循连续运动轨迹插补原理,所谓插补,就是对数据密化进行实时控制的过程,它与坐标轴位置伺服控制共同构成了运动控制系统的两个重要组成部分,作为轨道控制中最重要的计算任务,插补运算必须要保证精度和实时性,目前比较常用的插补运算法是脉冲冲量插补和数据采样插补[1]。运动控制器就是运动系统和控制技术相结合的产物,其类型较多,但在功能上并无明显差异,关于运动控制的设计,目前主要采用PC机与运动控制卡相结合的控制方案,在此主要介绍基于DSP和FPGA的运动控制卡的设计,以此类控制卡作为运动系统的主控单元,能够完成以下三种功能:其一,从主机接收运动指令,向主机反馈运行状态;其二,根据接收的指令,对4轴电机的位置、速度、插补和PID调节进行控制;其三,完成运动控制的同时还能够对与运动有关的I/O信号进行处理[2]。
2.基于DSP和FPGA的运动控制器的设计
2.1总体结构
在DSP和FPGA两种功能芯片的基础上,扩展多个Flash和SRAM,用以存储程序和数据,以此来提高DSP的访问速度,并为FPGA配备EPROM,用以存储下载程序,连接DPS局部总线与PIC接口芯片,实现二者的数据交换。本次设计采用的DSP和FPGA芯片均为低能耗、低电压器件,为提供运动系统的抗干扰性能,将输入信号通过光耦进行隔离,对输出信号进行远距离传输。对板卡地址空间进行分配,为实现实时信号高速处理的使用要求,将DPS分为定点和浮点两类,选用TMS320VC33型号的DPS和XC2S300E型号的FPGA。
2.2硬件设计
硬件设计主要包括DPS外设接口模块设计和FPGA模块电路设计两部分内容,DPS芯片内部的存储器设置为两级高速缓存结构,使之能够适应快速复杂的运算,外设I/O接口的电源电压为3.3V,内核电压为1.26V,基于EMIF强大的接口能力,能够实现与各类存储器进行直接连接,即实现存储器地址连续的无缝连接。为增强运动系统的可扩展性,在EMIF接口处扩展两个FPGA,便于其他接口在FPGA中能够灵活扩展以及各个功能的模块化,并设计DSP与主轴电机相连接的接口、编码器鉴相译码、插补脉冲发生器等模块电路。当FPGA将数据信息传送给DSP时,电平跳变使DPS外部中断,DSP可通过总线接口读取FPGA传送的数据信息[3]。
2.3软件设计
软件设计的主要任务是完成对DSP芯片的编程,这直接影响到运动控制器运行的精度、速度和稳定性。经上位机翻译G代码即可获取功能号代码,再通过总线发送给DSP,存储在FPGA配备的EPROM中,此时DSP会同时运行粗插补和细插补程序,DSP在将计算的脉冲数和插补周期数发送给FPGA,并计算和显示当前加工刀具的坐标位置,再由上位机完成对主轴电机转速的设定。该软件程序采用的是模块化结构设计,分为主循环程序和各种中断程序,前者包括预补处理模块、通信处理模块,程序开始运行时,首先要完成与DSP相关的初始化,然后再进入主循环程序,主循环插补部分流程为:主循环开始→判断→插补预处理→再判断→插补计算→主循环结束,本次设计DSP主循环的时间为0.2ms,插补中断周期为0.5ms;插补中断处理子程序为:FPGA对DPS发生外部中断→判断→反馈脉冲数和插补周期数→插补中断[4]。
3.结论
基于DSP和FPGA的运动控制器总体框架、硬件平台以及对应的软件设计与实现,对常用控制方案进行了优化,结果表明,采用DSP和FPGA相结合的硬件设计,以及DSP浮点设置,增强了运动控制器的灵活性,也有效提高了数控机床的加工精度和速度,而且模块化的软件系统设计方法,也有利于控制系统开放性的提高。
参考文献:
[1]蒋明柯.数控系统中基于DSP和FPGA的运动控制器研究[D].华南理工大学,2013.
[2]郑晓峰,方凯,黄迎华.一种基于DSP和FPGA的多轴运动控制卡的设计[J].自动化与仪器仪表,2006,13(4):18-20.
[3]李伦波,马广富,赵建亚.基于DSP和FPGA的运动控制卡的设计与实现[J].控制工程,2007,10(3):260-262.
[4]吴红军,皮佑国.基于DSP和FPGA的运动控制器的设计与实现[J].组合机床与自动化加工技术,2011,11(2):75-77.