基于FPGA的可重构嵌入式运动控制卡设计与实现
引言
本文引用地址:http://www.amcfsurvey.com/article/128892.htm运动控制系统广泛应用于数控机床、机器人、自动生产线等各类工业装备的控制过程。随着现代制造业走向高速化、柔性化,对于运动控制系统不但要求具备高性能的控制能力,而且需要具备一定的重配置能力,以适应控制对象的变化。
本文针对上述需求,提出了一种基于FPGA技术的可重构嵌入式运动控制卡的设计方案。该方案采用ARM Cortex-M3控制器和Xilinx Spartan-3A器件为核心,即可实现多个电机轴独立运行,也可以实现多轴联动控制。作为与以往基于软件实现的运动控制系统不同,通过在系统引入FPGA,不但能够辅助CPU实现各种控制功能,减少CPU的运算负担,而且能够在用户现场实现硬件逻辑的重构,实现运动控制系统的灵活配置、升级。
运动控制卡结构
图1是本文设计的运动控制卡总体结构示意。该运动控制卡以基于ARM Cortex-M3内核的STM32微控制器为CPU,实现用户命令的解释、运动轨迹规划及PLC程序执行等功能。由于运动控制涉及大规模数据处理,因此扩展了512K x 16位(1M字节)的高速SRAM作为扩展内存。运动控制卡与上位机的通讯通过双端口RAM实现,上位机和板上CPU可通过两个独立的操作接口对双端口RAM进行异步读写操作,具有极高的通讯效率。同时,双端口RAM提供了忙信号、信号量、邮箱等通讯机制,保证访问的可靠性。
在运动控制卡中,FPGA集成了电机运动轨迹的精插补、参考点位置捕捉、编码器信号解码、I/O扩展、总线接口等自主设计的IP核,实现运动控制所需的各项功能。CPU通过其16位并行总线与FPGA进行通讯,可以随机访问FPGA中各IP核的配置及状态寄存器。FPGA可通过配置芯片在上电时自动配置,也可以通过CPU进行配置。
fpga相关文章:fpga是什么
评论