步进电机 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模块中程序履行的成果输出相应的操控信号给电机操控模块。
电机操控模块的输出衔接到实践的芯片引脚上,以驱动相应的功率驱动电路作业,然后完成步进电机的作业。在闭环操控时,步进电机轴端的编码器模块输出编码信号。该信号经编码器反应电路进行阻隔等处理之后,由FPGA芯片内部的计数器模块进行计数,并将成果传输给MPU模块进行处理,然后构成方位/速度的闭环操控。
图2只表明了单个步进电机闭环操控的结构框图,关于多轴步进电机而言,FPGA芯片只需求添加相应的功率驱动电路及编码器反应电路即可。电机操控模块和计数器模块都在FPGA内部集成,因而硬件电路的结构较为安稳。
因为IP技能的飞速发展,在图2中的FPGA芯片内部模块中,MPU、ROM、RAM、计数模块等的IP核都可以很方便地取得,而电机操控模块因为与详细的功率放大电路实践相关,因而一般需求用户自行规划。下面介绍这一模块的规划。
2 二相步进电机操控模块结构
以小惯量的二相步进电机为例论说步进电机操控模块的结构。该步进电机由两片PBL3717a芯片所驱动,其驱动时序及其操控模块如图3、图4所示。
在操控模块中,mtr_cp为步进电机的脉冲输入端,每个脉冲驱动步进电机行进/撤退一步,脉冲频率即为步进电机作业的速度,因而这个脉冲信号由MPU模块依据ROM内部程序的履行成果输出。mtr_dir为步进电机的正/回转切换信号,mtr_mode为步进电机全/半步作业方法挑选,mtr_on_off是电机的启停位,该方位1时,mtr_cp可以驱动步进电机作业;为0时,mtr_cp脉冲被封闭。设置该位的意图是为了在多个步进电机作业时别离操控各个电机的启停而不影响到其他电机的作业状况。
mtr_reset是操控模块复位信号,A_out为图3中下标为A的驱动芯片操控信号,B_out为图3中下标为B的驱动芯片的操控信号。步进电机的操控模块的仿真波形图如图5所示。从图5可以看出,仿真波形彻底符合图2中步进电机的驱动时序,即操控模块的规划满意预订的规划需求。
由上剖析,运用上述多个步进电机操控模块以图6所示的方法进行恰当的衔接,就可以构本钱文所论说的依据SOPC的步进电机多轴操控器。因为MPU、ROM、RAM、电机操控模块等都是以功用模块的方法集成在FPGA芯片内部,因而大大缩小了依据SOPC的步进电机多轴操控器的尺度。这些功用模块可以依据实践的运用进行添加或删去(即对FPGA芯片的内部逻辑结构进行重构),因而极大地增强了体系规划的灵活性,能更好地满意不同运用领域的需求。
IP技能的飞速发展使得开发人员很简单取得大都通用模块的可复用IP核,然后减轻了开发人员的担负,缩短了开发周期。当体系需求晋级时,也不需求对硬件电路从头规划,只需经过修正FPGA中相应模块的装备文件,因而节省了操控器的晋级本钱。一起,因为MPU模块的功用与实践的微处理器相同,因而在微处理器上可作业的操控程序也可以很简单移植到MPU模块中作业。
为了便于论说依据SOPC的步进电机多轴操控器,本文侧重于论说多个步进电机同速恒速作业的状况。关于变速作业的状况,可经过在MPU的脉冲输出端和各电机操控模块的脉冲输入端之间刺进MPU可控的分频模块来取得,一起添加插补模块以完成不同电机之间的联动功用。
本文所述的依据SOPC的步进电机多轴操控器运用于半自动生化剖析仪的取样针移位体系中,可以完成传统步进电机多轴操控器的一切操控功用,操控器的尺度小于传统操控器;当操控器的数字电路部分需求修正时,无需替换操控器的实践硬件电路,大大方便了操控器的研讨规划作业并节省了相应的开发本钱。