当前位置:首页 > 嵌入式 > 嵌入式动态
[导读]摘要:基于曲面线接触加工中全软件数控系统实现多轴运动控制的目的,介绍了一种基于单片机+FPGA的多轴运动控制卡的设计方法,该卡可以实现五轴控制。采用模块化的设计思想设

摘要:基于曲面线接触加工中全软件数控系统实现多轴运动控制的目的,介绍了一种基于单片机+FPGA的多轴运动控制卡的设计方法,该卡可以实现五轴控制。采用模块化的设计思想设计出了运动控制卡的总线、总线驱动、数据锁存及译码电路模块,双端口RAM模块,单片机模块,FPGA模块,电源转换模块以及FPGA芯片的配置模块等,实现了硬件电路的连接。通过在QuartusII的平台下,采用DDA插补原理,通过VHDL编写程序生成插补模块,并将这些插补模块连接成原理图,从而构成了直线插补器,同时在QuartusII下仿真实现了对应功能的仿真,采用软件插补代替传统的硬件插补,使得系统更具开放性。

开放式数控系统已经成为数控系统发展的趋势,以NC嵌入PC的开放式数控系统以其经济性和实用性已被广泛应用。在通用的PC机的扩展插槽中加入运动控制卡,由PC机发出控制指令,运动控制卡根据接收指令完成各种控制功能。运动控制和逻辑控制由运动控制卡完成,因此运动控制卡的设计已经成为NC系统性能实现的关键技术。目前运动控制卡多采用专用运动控制芯片构成,例如固高运动控制卡,但是专用控制芯片扩展能力差,系统升级困难,难以应用于开放式数控系统;也有采用DSP+CPLD/FPGA为核心构成,虽然集合了DSP的强大数据处理能力和FPGA的灵活性与可靠性等优点,但DSP硬件成本较高,内部运动控制算法修改复杂。

文中选用单片机+FPGA为核心的控制方案,以此方案设计了一种可以实现在线接触加工过程中六轴插补的运动控制卡。刀具侧刃在完成曲面加工时,刀具端面还可以完成曲线插补,提高了曲面加工效率。

1 系统结构设计

核心部分采用由单片机+FPGA组成,利用单片机的控制功能和FPGA的快速计算能力组成运动控制系统的核心硬件结构,系统硬件总体结构如图1所示。

 

 

2 多轴运动控制卡模块设计

运动控制卡包括与PC连接的ISA总线、总线驱动、数据锁存及译码电路模块,双端口RAM模块,电源转换模块以及FPGA芯片的配置模块。

2.1 ISA总线、总线驱动、数据锁存及单片机模块

在线接触加工运动控制系统中上位机和运动控制板卡通信时,上位机把数控代码传送给双端口RAM,单片机再从双端口RAM里读取数控代码并将其发送到FPGA内部进行插补运算。

1)ISA总线模块

由于ISA总线通信协议简单,接口电路易于实现,所以选择8位ISA数据总线来实现上位机与控制卡的数据传输。

2)总线驱动模块

采用了74LS245双向总线驱动芯片,作为数据线的信号增强和驱动器件;用74LS244为单向总线驱动芯片,主要用来驱动ISA总线的地址线和控制总线信号,提高其扇出能力(带负载能力);采用专用译码技术及芯片,以一片可编程逻辑器件GAL16V8为核心完成I/O端口译码功能。电路如图2所示。

 

 

3)数据锁存

该系统属于实时系统,需要高速可靠的数据传输,采用双端口RAM作为数据交换的中介,可以满足系统要求。IDT公司的高速2Kx8bits的双端口静态RAM(IDT7132),该芯片具有BUSY逻辑,可有效的防止两端访问同一地址产生的竞争风险。

2K字的双端口RAM(范围0x0000~0x03FF)被分配为如下几个区域,基地址选择如下述,具体分配如下:

0x000~0x1FF分配为信息数据缓冲区,存放上位机与单片机交换的信息数据;

0x200~0x22F分配为信息标志缓冲区,存放上位机与单片机交换的信息标识,信息标识的内容包括加工状态字、错误标志字等;

0x230~0x33F分配为信息数据缓冲区,存放单片机返回给上位机的信息数据;

0x340~0x34F保留;

0x350~0x36F分配为命令缓冲区,存放单片机与上位机交换的命令和状态;

0x370~0X3FF分别被用来存放上位机和单片机中断。

4)单片机模块

单片机主要作用是接收从上位机传送下来的数控代码,把数控代码变成相应的指令,传送给FPGA,控制FPGA工作,同时,对于从FPGA传送过来的加工信息,及时地传送给上位机。单片机模块如图3所示。

 

 

2.2 FPGA模块设计

1)FPGA总体功能设计

FPGA主要是进行直线插补,圆弧插补和复合插补等复杂运算,输出脉冲和方向信号,设计选用Altera公司的低成本Cyclone系列的第二代产品Cyelonell系列芯片中的EP2C8Q 208芯片来实现这些功能,首先EP2C8Q208中含有4,608至68,416个逻辑单元和18个18*18的乘法器,满足复合插补的复杂运算的要求;第二因为连续插补一次要存储很多条指令,而EP2C8Q208中含有36个M4KRAM块,能满足存储这些数据的要求;第三由于跟单片机的相连的数据线8根,地址线10根,控制总线5根,还有6轴(或扩展为更多轴)的输出信号12根,还有其他的存储,控制等连线,对I/O的管脚总数要求较多,而EP2C8Q208有208个管脚,可以满足要求。

在本设计中FPGA总体结构如图4所示。

 

 

2)FPGA外围电路设计

本设计中采用的EP2C8Q208C7是SRAM工艺的FPGA,在试验阶段需不断对设计进行修改和调整,以逐步完善设计功能,在此阶段采用JTAG方式直接将SOF文件下载到器件中,这种方式在每次上电时需要重新下载,因此在设计最终完成后,使用配置器件EPCS4来保存配置信息,即采用主动串行方式。配置电路如图5所示。

 

 

3 仿真

3.1 位置控制模块

每轴设计一个位置计数器,用来计正/负方向输出脉冲数,当运动控制卡向外输出一个正向脉冲时,计数器值加1;当运动控制卡向外输出一个负向脉冲时,计数器值减1。这样可以如实的反应出实际位置。

3.2 速度模块

全数控数控系统在速度处理上是通过将软件程序给出的速度值(单位:)算出在每个插补周期上实际应发脉冲的个数。数控系统中每发出一个脉冲,电机就转过一定的角度,从而带动机床坐标向前或向后移动一个脉冲所对应的距离(称之为脉冲当量,这里用step表示,单位:μm/P)。通过全软件数控系统速度计算模块计算实际每毫秒应发的脉冲个数是:

 

 

V1:每毫秒钟实际发出的脉冲个数。

所以根据所需要的时钟脉冲,用VHDL语言编写可预置的计数器程序,就可以达到速度控制的目的。仿真波形如图6所示。

 

 

4 结论

文中采用模块化的设计思想,设计了一种基于单片机+FPGA的运动控制卡。单片机作为控制卡的核心处理器,时序控制能力极强,而且设计方便快捷,再结合FPGA的集成度高,可靠性好,大大提高了控制系统的实时性30%和可靠性,并缩小了控制卡的体积。同时FPGA具有在系统可重构的特性,保证了运动控制系统具有良好的开放性,也方便了系统的设计和调试。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

8位单片机在嵌入式设计领域已经成为半个多世纪以来的主流选择。尽管嵌入式系统市场日益复杂,8位单片机依然不断发展,积极应对新的挑战和系统需求。如今,Microchip推出的8位PIC®和AVR®单片机系列,配备了先进的独立...

关键字: 单片机 嵌入式 CPU

在嵌入式系统开发中,程序烧录是连接软件设计与硬件实现的关键环节。当前主流的单片机烧录技术已形成ICP(在电路编程)、ISP(在系统编程)、IAP(在应用编程)三大技术体系,分别对应开发调试、量产烧录、远程升级等不同场景。...

关键字: 单片机 ISP ICP IAP 嵌入式系统开发

在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是保障系统可靠性的核心组件,其初始化时机的选择直接影响系统抗干扰能力和稳定性。本文从硬件架构、软件流程、安全规范三个维度,系统分析看门狗初始化的最佳实践...

关键字: 单片机 看门狗 嵌入式系统

本文中,小编将对单片机予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 单片机 开发板 Keil

随着单片机系统越来越广泛地应用于消费类电子、医疗、工业自动化、智能化仪器仪表、航空航天等各领域,单片机系统面临着电磁干扰(EMI)日益严重的威胁。电磁兼容性(EMC)包含系统的发射和敏感度两方面的问题。

关键字: 单片机 电磁兼容

以下内容中,小编将对单片机的相关内容进行着重介绍和阐述,希望本文能帮您增进对单片机的了解,和小编一起来看看吧。

关键字: 单片机 复位电路

在这篇文章中,小编将为大家带来单片机的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 单片机 异常复位

今天,小编将在这篇文章中为大家带来单片机的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: 单片机 仿真器

单片机将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对它的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 单片机 中断 boot

一直以来,单片机都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来单片机的相关介绍,详细内容请看下文。

关键字: 单片机 数字信号 模拟信号
关闭