基于CPLD的多功能脉冲分配器系统的设计
三相六拍输出,当缺省时为双三拍输出;3、有一个复位信号EX,当EX为高电平时,输出为低电平;4、电机控制有一方向选择控制端DIR,当DIR为高电平时,电机反转,反之为正转;5、DIR有效电平时插入,要能使 A路在下一拍即改变转向;6、有三位输出频率控制器,可以将输入频率分成八种频率输出;7、要求用 VHDL语言来实现,并提供仿真波形图;8、设计平台用XILINX公司XC9572来实现。
设计主要解决的是如何使脉冲分配器既要实现三相六拍工作,又要实现双三拍工作;同时为了使步进电机调速范围广,并且无需频繁中断,还需要设计分频器对输入脉冲进行有效地八种分频。具体的设计思路如下:论证步进电机脉冲分配器的实现方式,确定用可编程逻辑器件来实现,把XILINX公司XC9572高性能的CPLD器件作为脉冲分配器的芯片;通过逻辑分析后,用VHDL语言设计分频器和状态机的程序,并把程序进行编译,再通过波形仿真,形成仿真波形图;选用斩波驱动放大电路和磁阻式步进电机。基于CPLD的多功能脉冲分配器能达到设计的技术要求,基本能够按设计要求工作。 2 步进电机脉冲分配器实现方式的论证
2.1 几种实现方式比较 (1)逻辑电路法
中、小规模数字集成电路(如74系列及其改进系列、CC4000系列、74HC系列等)都属于通用型数字集成电路。这种方法是由与或门电路和触发器构成的,它们的逻辑功能都比较简单,而且是固定不变的。由于它们的这些逻辑功能在组成复杂数字系统时经常要用到,所以这些器件有很强的通用性,早期的电路设计大多采用这种方法来实现。
从理论上来讲,用这些通用型的中、小规模集成电路可以组成复杂的数字系统,但是在目前的应用中,由于控制要求的不同和应用范围的变大,为了实现复杂的要求就需要增加一定的门电路和触发器,其印制板的面积随之增加,成本也随之增加,而可靠性却随之下降,其电路也比较复杂。另外这种脉冲分配器的最大缺点是:脉冲分配的路数受计数器和译码器的限制,不能是任意的,它还要有专门的控制和功放电路,其应用灵活性差。因此现在这种方法已经很少采用了。 (2)专用集成电路法
如果把所设计的数字系统做成一片大规模集成电路,则不仅能减少电路的体积、重量、功耗,而且会使电路的可靠性大为提高。这种为某种专门用途而设计的集成电路叫做专门集成电路,即所谓的ASIC(Application Specific Integrated Circuit的缩写)。目前脉冲分配器的专门集成电路已经有很多,如5G674、CH250等。它们集成度高,抗干扰能力强,但是这些集成电路控制方式都不灵活。集成电路设计完成以后其逻辑关系和时序过程就完全确定了,无法修改和更新,所以在很
2
盐城工学院本科生毕业设计说明书(2007)
大程度上限制了它的应用范围。而且在用量不大的情况下,设计和制造这样的专用集成电路不仅成本很高,而且设计、制造的周期也太长。 (3)软件实现(由单片机或PC机的扩展I/O输出)
采用软件实现,即利用查表或计算的方法来进行脉冲的环行分配。把相应的状态代码列入程序数据表中,通过软件可顺次在数据表中提取数据并通过输出接口输出即可。通过正向顺序读取和反向顺序读取数据表可控制电机进行正反转,通过控制读取一次的时间间隔可控制电机的转速。
将计算机软件技术应用于智能步进电机脉冲分配器硬件电路设计中,使步进电机脉冲分配器的电路具有微型化、低功耗、智能化的特点。解决了用硬件实现步进电机普遍适应性差的问题。这种方法可以大大简化硬件电路,降低了成本,提高了运行的可靠度和精度,易于修改;充分利用计算机软件资源以降低硬件成本,尤其是对多相的脉冲分配具有更大的优点。但是这种方法占用了较多的计算机CPU的时间,降低了计算机的运行效率和实时控制精度,易影响步进电机的运行速度,在高精度控制系统,这种方法是不可取的。 (4)用可编程逻辑器件实现
可编程逻辑器件(Programmable Logic Device,简称PLD)的出现为解决器件的选择问题提供了一条比较理想的途径。PLD虽然是作为一种通用器件生产的,但它的逻辑功能是由用户通过对器件的编程来设定的。而且有些PLD的集成度很高,足以满足设计一般数字系统的需要。这样可以由设计人员自行编程,把一个数字系统“集成”在一片PLD上,而不必去请芯片制造厂商设计和制造专门集成电路芯片。
自80年代以来PLD的发展非常迅速。目前生产和使用的PLD产品主要有现场可编程逻辑阵列FPLA(系Field Programmable Logic Array的缩写)、可编程阵列逻辑PAL(系Programmable Array Logic的缩写)、通用阵列逻辑GAL(系Generic Array Logic的缩写)、可擦除的可编程逻辑器件EPLD(系Erasable Programmable Logic Device的缩写)、复杂可编程逻辑器件CPLD(系Complex Programmable Logic Device的缩写)和现场可编程门阵列FPGA(系Field Programmable Gate Array的缩写)等几种类型。其中EPLD、CPLD和FPGA的集成度比较高,有时又把这三种器件称为高精度PLD。
复杂可编程逻辑器件CPLD是一种可擦除的、可重新编程的高密度PLD器件。其结构灵活,性能优越,功能可靠。几乎可以代替整个74LS系列、54LS系列、74HC系列和CC4000系列的器件(只有少量的除外)。它可以反复的擦除、改写,且擦除时间仅为10ms,不采用紫外线光源,也不需要窗口式的封装。在封装前后都可以对芯片进行反复的完善和实际的测试,测试的可靠性可以达到100%。并且它还可以加密,安全性能很好,设计者不用了解其内部的结构,只要能明确输入和输出之间的关系就可以编程了,编好程序后用编程器把程序写入器件即可。它具有易于编程和调试,
3
基于CPLD的多功能脉冲分配器系统的设计
集成度高,成本低,可靠性高等优点。同时CPLD作为设计复杂逻辑密集型集成电路的主要器件,在功耗方面也显示出优势,与同样密集度的其它PLD相比,CPLD的待机功耗最低。 2.2 确定方案
随着超大规模集成电路的集成度和工艺水平的不断提高,CPLD得到了广泛的应用,它们不仅具有GAL芯片的所有优点,而且由于它规模大、引脚多且功耗低,所以非常适用于各种复杂控制的场合。同时VHDL语言可以很好地描述由CPLD组成的逻辑电路。因此本次毕业设计采用这种方案,用CPLD设计多功能脉冲分配器。
3脉冲分配器的设计
脉冲分配器是整个步进电机控制电路的核心部分。
步进电机运行时,要求把有相当功率的电脉冲按要求逻辑馈送给它的各个控制绕组。而电脉冲是如何按照要求的逻辑馈送的呢?这是由脉冲分配器来完成。在设计中,脉冲分配器需要设计成能控制指令按照一定顺序和分配方式传送到功率放大电路。然后经放大后控制步进电机的绕组按照预先规定的工作方式通、断电,驱动电机转子旋转。
在具体的脉冲分配器设计过程中,主要分硬件和软件两部分来设计。 3.1 脉冲分配器的硬件部分设计
随着超大规模集成电路的集成度和工艺水平的不断提高,深亚微米工艺,如0.18um、0.13um已经走向成熟,专用集成电路ASIC的设计成本在不断降低。CPLD/FPGA作为实现ASIC的主流器件,它们的特点是直接面向用户,具有极大的灵活性和通用性,使用方便,硬件测试和实现快捷,开发效率高,成本低,工作可靠性好。
设计要求步进电机的工作模式有以下两种:三相双三拍和三相六拍。其正转激励分别为:AB—BC—CA—AB?;A—AB—B—BC—C—CA—A?。其反转激励分别为:AC—BC—AB—AC?;A—AC—C—BC—B—AB—A?。在同一频率输入脉冲下,双三拍工作方式的转速为三相六拍方式的2倍,可使伺服系统快速运动,但由于步距相对较大,其定位精度是三相六拍方式的
12。而三相六拍方式运动速度相对较慢,但定
位精度提高一倍。因此在步进电机的控制过程中,常需要将两种方式结合在一起使用,使系统在快速工作时用双三拍工作方式,而需要定位时用三相六拍方式。与此同时,为了扩大步进电机的转速范围,有专门的分频功能,可以使步进电机有八种速率转动方式。这就是说,所设计选用的脉冲分配器芯片既要实现三相六拍工作,又要实现双三拍工作,同时还需要有三位输出频率控制端,将输入脉冲信号频率分成八种频率输出。而XC9572 CPLD器件刚好能轻松地满足这些要求。
4
盐城工学院本科生毕业设计说明书(2007)
3.3.1 XC9572芯片介绍
XC9572 CPLD器件是XILINX公司生产的一款高性能可编程逻辑器件。每个XC9572器件由四个功能块FB(Function Block)、一个输入/输出块IOB和一个开关矩阵FastCONNECT组成互连的系统。每个FB由18个独立的宏单元组成,每个宏单元可实现一个组合电路或寄存器的功能;每个FB提供36个输入和输出具有可编程逻辑的容量,其中18个输出用于驱动FastCONNECT开关矩阵;FB除接受来自FastCONNECT的输入外,还接收全局时钟、输出使能和复位/置位信号。IOB是内部逻辑电路和用户I/O引脚之间的接口,提供器件输入和输出的缓冲;每个IOB包括一个输入缓冲器、输出驱动器、输出使能数据选择器和用户可编程接地控制器。具体结构图如图3-1所示。
图3-1 XC9572芯片结构图
XC9572芯片的主要特点如下:
(1)所有可编程管脚间的脚对脚延时均为5ns; (2)系统的时钟速度可达到125MHz; (3)具有72个宏单元和1600个可用系统门; (4)可编程次数为10000次; (5)可采用5V在线编程和擦除; (6)拥有强大的管脚锁定能力;
5
基于CPLD的多功能脉冲分配器系统的设计
(7)每个宏单元都具有可编程低功耗模式; (8)未用的管脚有编程接地能力;
(9)提供有编程保密位,可对设计提供加密保护以防止非法读取; (10)外部I/O引脚与3.3V和5V兼容。
选用的实际XC9572芯片及其管脚图分别如图3-2和图3-3所示。
图3-2 XC9572芯片实图 图 3-3 XC9572管脚图
3.1.2 XC9572芯片在设计中有关管脚功能分析
根据设计要求对XC9572芯片进行管脚分配,管脚分配如图3-4所示。具体说明如下:
CP是时钟输入脚。脉冲分配器用来接受来自控制器的CP脉冲,并按步进电机状态转换表的状态顺序产生各相接通或截止的信号。每来一个CP脉冲,脉冲分配器的输出就转换一次。因此步进电机转速的高低、升速或降速、启动或停止都要取决于CP脉冲的有无或频率的大小。
EX是复位脚。EX=0时,电机正常运行;而EX=1时,则输出全为0,芯片复位,电机停止运行。
DIR是正反转控制脚。当DIR为0时,芯片输出正转脉冲;而当DIR为1时,芯片输出反转脉冲。值得注意的是,DIR信号需要即时有效,例如当步进电机运行在三相六拍的正转模式的BC拍时,DIR信号为高电平,电机需要反转,则下一时钟的上升沿,脉冲分配器需要输出B拍。
MODE是双三拍和三相六拍模式选择脚。当MODE为0时,芯片是三相六拍输出;
6