所属技术领域
本发明涉及一种基于usb总线的数控雕刻机控制系统,适用于机械领域。
背景技术:
数控技术的发展对运动控制系统的开放性、实时性、加工速度、精确度等性能指标提出了越来越高要求。为了满足这些要求,一般系统采用当前先进的pc十nc开放式体系机构,选用高速dsp作为cpu来完成实时性的nc内核任务,实现电机实时控制以及在线检测。早期pc通过isa总线对电机进行控制,但实时性差,但需要专门的控制接口卡。通用串行总线(universalserialbus,usb)具有稳定、传输速度快、使用方便、连接灵活、独立供电等特点,usb2.0规范的出现,使得其总线传输速度达到了480mb/s的高传输速度,并且完全向下兼容。这些特点使得usb总线在数控雕刻和加工领域中使用成为了可能。
数控加工的插补和速度控制使用现场可编程逻辑器件(fpga)来完成,可以达到很高的定时精度和计算速度。因此,该控制系统结合pc机的计算能力对加工数据进行处理,并通过usb总线传输给fpga,fpga接收到数据后,根据dda算法进行脉冲的轨迹插补,并得到脉冲间的延时来达到对电机速度的控制。
技术实现要素:
本发明提出了一种基于usb总线的数控雕刻机控制系统,该系统将数据处理程序存放在陀机内,并使用usb协议进行数据通信,利用fpga进行多轴电机的轨迹插补和加减速控制,实现了数控雕刻机控制系统的开发。
本发明所采用的技术方案是:
所述控制系统硬件主要由pc机、usb接收模块和fpga模块组成。
所述pc主机使用成熟的cad/cam等建模工具建立模型,然后生成加工过程的走刀直线段轨迹数据。根据用户要求,结合生成的轨迹数据用软件进行处理,生成步进电机的升降速速度查找表,并计算出每个线段速度控制信息。
所述usb接收模块使用cypress公司的cy7c68013a芯片作为usb总线上的接收器,接收pc主机传输来的包含电机运动控制的信息,并通过gpif接口传输给fpga。
所述fpga模块使用altera公司的cyclone芯片,外扩一块ram存储芯片来存储升速和降速的速度查找表,对接收到的数据信号进行轨迹插补运算和电机速度查表操作,并发给电机驱动器。
所述控制系统软件由pc机上应用程序、usb驱动程序,usb芯片通信程序,fpga上插补程序构成。
所述pc机通过使用现有cad/cam建模工具生成工件的直线段加工轨迹文件,并根据用户要求生成轨迹数据生成速度控制信息,来保证在加工过程中步进电机不丢步。因此在加工之前pc机上生成了两个文件:速度查找表和线段轨迹控制表。速度查找表采用抛物线的加减速方式建立,直线轨迹控制表则根据速度查找表计算出各线段轨迹的最优速度控制信息。应用程序使用visualstudio编写,usb的驱动程序则使用ddk结合driverstudio开发。在加工过程中,pc机端应用程序作为用户接口,起着基本数据设置和加工状态显示和控制等用途,该程序通过调用usb驱动程序,与底层通信。方案中根据usb协议,使用端点2作为命令发送端点,端点4作为状态接收端点,端点6作为数据发送端点,应用程序其在加工过程中和fpga的主要交互流程。
本发明的有益效果是:该系统将数据处理程序存放在陀机内,并使用usb协议进行数据通信,利用fpga进行多轴电机的轨迹插补和加减速控制,实现了数控雕刻机控制系统的开发。
附图说明
图1是本发明的系统硬件系统框图。
图2是本发明的系统软件工作流程图。
图3是本发明的应用程序主流程图。
图4是本发明的fpga的功能模块图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
如图1,控制系统硬件主要由pc机、usb接收模块和fpga模块组成。pc主机使用成熟的cad/cam等建模工具建立模型,然后生成加工过程的走刀直线段轨迹数据。根据用户要求,结合生成的轨迹数据用软件进行处理,生成步进电机的升降速速度查找表,并计算出每个线段速度控制信息。usb接收模块使用cypress公司的cy7c68013a芯片作为usb总线上的接收器,接收pc主机传输来的包含电机运动控制的信息,并通过gpif接口传输给fpga。fpga模块使用altera公司的cyclone芯片,外扩一块ram存储芯片来存储升速和降速的速度查找表,对接收到的数据信号进行轨迹插补运算和电机速度查表操作,并发给电机驱动器。
如图2,控制系统软件由pc机上应用程序、usb驱动程序,usb芯片通信程序,fpga上插补程序构成。
如图3,pc机通过使用现有cad/cam建模工具生成工件的直线段加工轨迹文件,并根据用户要求生成轨迹数据生成速度控制信息,来保证在加工过程中步进电机不丢步。因此在加工之前pc机上生成了两个文件:速度查找表和线段轨迹控制表。速度查找表采用抛物线的加减速方式建立,直线轨迹控制表则根据速度查找表计算出各线段轨迹的最优速度控制信息。应用程序使用visualstudio编写,usb的驱动程序则使用ddk结合driverstudio开发。在加工过程中,pc机端应用程序作为用户接口,起着基本数据设置和加工状态显示和控制等用途,该程序通过调用usb驱动程序,与底层通信。方案中根据usb协议,使用端点2作为命令发送端点,端点4作为状态接收端点,端点6作为数据发送端点,应用程序其在加工过程中和fpga的主要交互流程。
如图4,fpga负责保存速度表,接收每条线段的加工数据g,并进行脉冲插值,脉冲延时的查表以及产生控制脉冲信号,整个工作由接口模块,脉冲插值模块,计算脉冲延时模块,发脉冲模块共同完成。