026
基于CPLD的步进电机控制系统样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
本设计包含内容:源代码+毕业论文
论文大概:
目 录
摘要
………………………………………………………………………………………1
Abstract
……………………………………………………………………………………2
1 引言
……………………………………………………………………………………3
1.1 EDA技术
…………………………………………………………………………3
1.2
步进电机概述………………………………………………………………………4
1.2.1
步进电机简介 …………………………………………………………………4
1.2.2
步进电机控制方式 ……………………………………………………………
4
1.2.3 步进电机的驱动
……………………………………………………………… 5
2 系统设计及说明
…………………………………………………………………… 5
2.1
系统结构……………………………………………………………………………5
2.2
步进电机驱动电路…………………………………………………………………6
2.3
步进电机控制板……………………………………………………………………6
2.3.1 数码管显示
……………………………………………………………………6
2.3.2 可编程芯片
……………………………………………………………… ……7
2.3.3
键盘……………………………………………………………………………8
2.3.4 其他部分 ………………………………………………………………………8
2.4
芯片引脚分配………………………………………………………………………8
3 软件模块
………………………………………………………………………………9
3.1
硬件描述语言VHDL………………………………………………………………9
3.1.1
VHDL语言的特点………………………………………………………………………9
3.1.2
VHDL的基本结构………………………………………………………………………9
3.1.3
CPLD设计流程…………………………………………………………………………10
3.2 电路构成及各模块功能实现……………………………………………………… 10
3.3
CPLD设计及电路时序……………………………………………………………11
3.3.1
步进电机控制模块 ……………………………………………………………………11
3.3.2
波形信号发生模块 ……………………………………………………………………12
3.3.3
数码动态显示模块 ……………………………………………………………………14
3.3.4
步进电机方向控制和弹跳消除电路 …………………………………………………16
3.3.5 时钟分频
………………………………………………………………………………17
4 配置方法及运行
………………………………………………………………………………17
5 结论
……………………………………………………………………………………19参考文献
………………………………………………………………………………… 19
基于CPLD的步进电机控制系统
摘要
本文给出了一种基于CPLD(复杂可编程逻辑器件)构成的步进电机控制系统的设计和实现,以CPLD作为核心器件,极大地减少了分立元件的使用,系统扩展性能好、可靠性高、抗干扰能力强、结构简单、成本低廉,具有可在系统改变功能、不占用CPU时间、易于高速控制等优点,也可用于各种多步进电机控制场合。
关键词: CPLD/FPGA 步进电机 VHDL
The
control system of stepper motor
based on CPLD
Abstract
This paper introduces a kind of control system of
stepper motor based upon CPLD. As the core of the device, CPLD
implements the most logic functions and minimizes the number of
using discrete components. The distinctive advantages of the system
are expandable, stable, simple and low-cost, also have the
advantages of changing functions on system and doesn’t occupy CPU
time, etc. It can be used in controlling situation of every multiple
stepper motor.
Keywords: CPLD/FPGA, stepper motor, VHDL
1 引言
近些年来,由于步进电机的控制精度不断提高,越来越多有较高控制精度要求的系统也开始采用步进电机。对于大功率步进电机,一般采用CPU与专用步进电机驱动器联合工作的方式,CPU产生脉冲,控制停启、正反转等,专用步进电机驱动器则进行脉冲环形分配及功率驱动。而对于小型功率步进电机,为了降低成本,缩小体积,更常用的是采用嵌入式CPU直接产生环形脉冲驱动功率器件去控制步进电机工作。上述两种控制方式,简单方便,易于实现,但步进电机工作时,都要占用CPU时间,降低了控制系统的实时处理性能。
CPLD器件由于开发方式灵活、功能扩展方便、集成度较高,在各类设计中占据了越来越重要的地位。本文采用ALTERA公司的FLEX10K10系列CPLD器件,设计了专用的步进电机控制电路,取得了较好的效果。
1.1
EDA技术
当今社会是数字化的社会,是数字集成电路广泛应用的社会。随着大规模集成电路技术的发展,EDA(Electronic
Design
Automation)技术作为现代电子设计技术的核心发挥了巨大的作用。EDA技术的出现改变了传统设计时多采用原理图输入的设计模式,而是采用HDL(Hardware
Description
Language)作为设计输入。设计得可以自己定义器件的内部逻辑和管脚,将原来由电路板设计完成的大部分工作放在芯片的设计中。这大大缩短了系统的设计周期,提高了产品的设计及开发效率。由
于EDA技术的不断发展,复杂可编程逻辑器件CPLD(Complex
Programmable Logic Device)在各个领域的应用也越来越广泛。
1.1.1
CPLD及其应用特点
与传统的电路设计方法相比,CPLD的优势是多方面的,可归纳如下:
(1)编程方式简便先进。CPLD产品中部分是采用菊花在系统编程方式的。这种先进的编程方式已成为当今世界上各类可编程器件发展的趋势。因为它省却了价格昂贵,操作不便的专用编程器,只需一个十分简单的下载编程电路和一条PC机的打印机通讯线就行了。它无须编程高压,在TTL电平下随时可进行在线编程,并可进行所谓菊花链式多片串行编程。其编程次数多达1万次。此外,还可轻易地实现红外编程,超声编程或无线编程,或通过电话线远程在线编程。这些功能在通讯器件和军事器件上有特殊用途。
(2)高速。CPLD的时钟延迟可达纳秒级,结合其并行工作方式,在超高速应用领域和实时测控方面有非常广阔的应用前景。
(2)高可靠性。在高可靠应用领域,MCU的缺憾为CPLD的应用留下了很大的用武之地。这族器件尽管在功能开发上是通过EDA软件实现的。但物理机制却像一片74LS164那样属纯硬件电路,十分可靠。通过合理设计,大多数应用中,无须考虑复杂的复位和初始化。设计中只需利用简单的语句将闲置状态导入同一初始入口,就能有效防止任何可能的“死机”现象。由于是并行工作,它的任一初始输入脚都可用做类似于MCU的中断监测引脚,且反应上速度仅为纳秒级。CPLD的高可靠性还表现在几乎可将整个系统下载于同一芯片中,从而大大缩小了体积,易于管理和屏蔽。
(4)功能强大,应用广阔。CPLD的可选择范围很大,可根据不同的应用选用不同容量的芯片,可实现几乎任何形式的数字电路或数字系统的设计。
(5)易学易用,开发便捷。单片机应用系统的设计对于行家里手来说是十分简单的事,然而对于初学者着实不是一件容易的事。相比之下,CPLD应用的学习却不需太多的预备知识,只要稍具一点数字电路和计算机软件设计的基础知识,就能在短期内掌握基本的设计方法和开发技巧。而且反过来去学单片机,就显得轻车熟路多了。
(6)开发周期短。由于相应的EDA软件功能完善而强大,仿真能力便捷而实时,开发过程形象而直观,兼之硬件因素涉及甚少。因此我们可以在很短时间内完成十分复杂的系统设计,这是产品快速进入市场的最宝贵的特征。
1.2步进电机概述
电机在自动化控制中使用的场合相当频繁,步进电机作为电机的一种,可以靠开路控制做精确的定位,因此普遍应用于电脑的外设及工业生产的自动化机具设备中,如NC车床、切割机,此外机器人的各个关节控制也大量的使用步进电机。
1.2.1步进电机简介
步进电机是一种以数字脉冲信号控制的电机装置,将相对的信号转变为输出的旋转角度,每一个基本旋转角度称为一个步进角度,此为步进电机名称的由来,因此它可以做精确的定位。步进电机分三种:永磁式(PM),反应式(VR)和混合式(HB)。常见的步进角度为1.8度,若输入200个控制脉冲即可令电机旋转一圈。其主要特性如下:
(1)电机的旋转角度与输入脉冲数成比例,角度的误差小,而且不会产生累积的误差。
(2)可以数字脉冲控制信号做开路方式控制,避免使用复杂的反馈控制电路,降低系统制作成本。
(3)利用输入脉冲的频率高低即可做转速的调整。
(4)电机的启动、停止、加速、减速、正反转反应快,容易控制。
(5)直接连至负载如轮子,做超低速同步运转。
(6)步进电机的结构简单,可靠性高,几乎不需要太多的保养,使用寿命长。
四相六线式步进电机如图1所示:
1.2.2步进电机控制方式
一般步进电机的驱动方式可以采用以下3种方式:
1. 单相激磁控制
2. 二相激磁控制
3. 半步激磁控制
图2为二相激磁控制的工作时序图,每一步级运转时有两相线圈被激磁,因此它的耗电是单相激磁电流的2倍,扭矩可以增为2倍,阻尼效果佳,一般采用此方式控制较多。下表为数字驱动脉冲信号设计:
B7 B6
B5 B4
B3 B2
B1 B0
数字输出值
0 0 0 0 1 0 0 1 9
0 0 0 0 0 0 1 1 3
0 0 0 0 0 1 1 0 6
0 0 0 0 1 1 0 0 12
1.2.3步进电机的驱动
步进电机的定位精度与动态响应不仅与电机本身的结构参数有关,而且与驱动方式、驱动电流波形等外部因数有关。此外,由于步进电机需要一定的驱动功率,而控制信号往往功率很小,因此必须经过缓冲放大环节。可见,对驱动电路的基本要求是:能改善电流波形,有续流功能,电路简单,可靠,功耗低,效率高,有时还要求有细分功能,即将常规的矩形波供电方式改为阶梯波供电方式。
常见的驱动电路有:
1)单极性驱动电路,此种方式驱动线路简单,效率低,启动和运行频率均不高。本系统即采用此种方式,具体电路见2.2节。
2)高低压驱动电路,即采用高压和低压双电源,具体见第4章。
3)细分驱动,又叫微步驱动,它是将绕组中的电流细分,用阶梯波供电代替常规的矩形波供电。这样可以使步距角减小,步进误差减小,提高精度;同时也减弱了低频震荡问题,运行特别好,但电路复杂。
此外,还有双极性驱动电路、双绕组驱动、斩波驱动、调频调压驱动等多种方式。
2.2步进电机驱动电路
图3为步进电机的驱动控制电路,为单极性驱动:
图4
步进电机的驱动电路
2.3步进电机控制板
2.3.
1数码管显示
图5 显示电路
2.3.2可编程逻辑芯片
引脚为 84脚的EEPROM工艺的CPLD的引脚图:
图6 Altera
FLEX10K10LC84-4
2.3.3键盘电路
图7 键盘电路
2.