首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于FPGA的步进电机多轴控制器设计

基于FPGA的步进电机多轴控制器设计

本帖最后由 yuchengze 于 2016-12-27 13:45 编辑

步进电机
FPGA 取样针移位系统  步进电机是一种完全数字化的电动执行机构,从原理上说,其角位移与驱动脉冲的个数成正比,在正常情况下,步进电机具有使用简单、运动精确、连续运行无累积误差等特点,因而被广泛应用于各种位置控制系统中。
  当前由于仪器内部的机械系统日益复杂,其运动往往是多自由度的,因而通常需要利用多个步进电机的运动合成来实现系统的各种动作。例如,对图1所示的半自动生化分析仪的取样针移位系统,该系统的动作执行就是由两部分组成的:
  一是固定基座上的步进电机控制取样横臂进行垂直方向上的升降运动;
  二是滑块上的步进电机控制取样横臂进行水平方向上的旋转运动。
  这两个运动的合成实现了取样横臂的位置变换。
  传统的步进电机多轴控制器是以微控制器(MCU)/微处理器(MPU)/专用集成电路(ASIC)/数字信号处理器(DSP)为核心,再辅以其他外围分立器件构成的。这种结构的步进电机多轴控制器的优点在于其硬件结构清晰,易于复制再现,对于类似的应用只需要修改其应用软件即可。然而对于多数实际应用来说,单纯依靠软件的修改通常不足以使其达到其他应用场合所需的要求,并且当系统升级时,通常需要对整个电路重新进行设计,这样既延长了升级的周期,又增加了升级成本,因而在实际应用中受到了一定的限制。


  由于可编程逻辑器件(PLD)技术的飞速发展,使得单一FPGA/CPLD芯片内部可以集成多个分立元件的功能,因此在对传统控制器的改进中,通常使用一个FPGA/CPLD芯片将传统控制器中的数字电路部分集成到一起,从而形成具有处理器-FPGA/CPLD-模拟电路结构形式的控制器。这类控制器比起传统控制器而言,其硬件结构的可扩展性得到了很大的提高。这是因为FPGA/CPLD芯片具有在不改变其引脚定义的情况下可对其内部逻辑关系进行重构的特性,因而对于不同的应用,可以通过改变FPGA/CPLD芯片的内部结构来满足某些特殊的应用需求,从而在一定程度上使得系统的开发升级更为简便,而且成本也更为低廉。因此,这种改进型的多步进电机控制器的应用范围也得到了很大的扩展。
  这种结构的控制器也存在着这样的问题:在FPGA外部仍然存在一个处理器。这样不仅增加了控制器的尺寸,而且在升级处理器时,硬件电路需要重新设计,使升级成本仍然相对较高。
  近年来,由于IP资源复用理念得到了普遍的认同并成为主要设计方式,MCU、DSP、MPU等嵌入式处理器IP成为了FPGA应用的核心。随着处理器内核以IP的形式嵌入到FPGA中,未来的电路板上可能只有两部分电路:模拟部分(包括电源)以及FPGA芯片和一些大容量存储器。
  这一切都表明可编程片上系统(SOPC)正在成为FPGA最重要的发展方向。与传统多轴控制器相比,这种基于SOPC的步进电机多轴控制器具有体积小、集成度高、硬件结构稳定、易于开发升级且成本低廉等特点,尤其适用于仪器仪表内部控制系统的设计。本文所论述的步进电机多轴控制器就是基于SOPC方式的步进电机多轴控制器。
  1 基于SOPC的步进电机多轴控制器的硬件结构
  基于SOPC的步进电机多轴控制器的结构框图如图2所示。其外部电路的构成包含模拟电路和数字电路两部分。模拟电路包括供电电源及功率驱动。数字电路主要为FPGA芯片及其相关电路。
  如图2,基于SOPC的步进电机多轴控制器包含两部分:FPGA芯片及其配置芯片的数字部分和电机控制及位置反馈部分。其中,虚线框内部表示FPGA芯片的内部结构,空心箭头表示FPGA芯片内部的数据连线,实心箭头表示外部连线。

  FPGA芯片内部由MPU模块、通讯模块、RAM模块、ROM模块、计数器模块、电机控制模块等构成。当控制器失电时,这些模块信息存储在配置芯片中,等到系统重新上电时,FPGA芯片再从配置芯片中读取其配置信息,重构内部模块结构。MPU模块是整个控制器的核心,它的功能等同于事实的微处理器。它通过通讯模块与外部主机进行数据的交换,并将数据存储在RAM模块中。RAM模块同时还用于暂存MPU模块执行ROM模块所存储的程序段时的某些中间过程值,而MPU则根据ROM模块中程序执行的结果输出相应的控制信号给电机控制模块。
返回列表