步进电机定位控制系统方案
- 格式:docx
- 大小:332.14 KB
- 文档页数:17
步进电机控制方法及编程实例
步进电机在现代自动化控制系统中广泛应用,其精准的位置控制和相对简单的驱动方式使其成为许多工业和家用设备中的理想选择。
本文将介绍步进电机的控制方法及编程实例,帮助读者更好地理解和应用这一技术。
步进电机的基本原理
步进电机是一种将电能转换为机械能的电机,其运行原理基于磁场相互作用。
步进电机内部包含多个电磁线圈,根据电流方向和大小的不同来控制转子的运动。
通过逐个激活线圈,可以实现步进电机的准确位置控制,使其能够按照指定的步长旋转。
步进电机的控制方法
1.单相激励控制:最简单的步进电机控制方式之一。
通过依次激活每一相的线圈,
使电机按照固定步长旋转。
这种方法控制简单,但稳定性较差。
2.双相正交控制:采用两相电流的正交控制方式,提高了步进电机的稳定性和精
度。
可以实现正向和反向旋转,常用于对位置要求较高的应用场景。
3.微步进控制:将步进电机每个步进细分为多个微步进,以提高控制精度和减小振
动。
虽然增加了控制复杂度,但可以获得更平滑的运动和更高的分辨率。
步进电机的编程实例
下面以Python语言为例,演示如何通过控制步进电机的相序来实现简单的旋转控制。
通过以上代码,可以实现对步进电机的简单控制,按照设定的相序进行旋转,实现基本的位置控制功能。
结语
步进电机是一种常用的精准位置控制设备,掌握其控制方法和编程技巧对于工程师和爱好者来说都是有益的。
希望本文介绍的步进电机控制方法及编程实例能够帮助读者更好地理解和应用这一技术。
步进电机控制系统原理步进电机控制系统的原理是控制步进电机运动,使其按照既定的速度和步长进行转动。
步进电机是一种特殊的电机,它通过控制输入的脉冲信号来驱动转子旋转一定的角度,步进电机每接收到一个脉冲信号,转子就会转动一定的角度,因此可以精确控制电机的位置和速度。
控制器是步进电机控制系统的核心部分,它通过软件算法生成脉冲信号来控制步进电机转动。
脉冲信号的频率和脉宽可以调节,频率决定步进电机转动的速度,脉宽决定步进电机转动的步长。
通常采用微处理器作为控制器,通过编程来控制脉冲信号的生成。
驱动器是将控制器产生的脉冲信号转换为电流信号,驱动步进电机转动。
驱动器通常由一个或多个功率晶体管组成,通过开关控制来产生恰当的电流信号。
驱动器还可以采用电流反馈回路来实现闭环控制,提高步进电机的控制精度。
步进电机是根据驱动器的电流信号转动的执行部件,它通过电磁力和磁场相互作用来实现转动。
步进电机根据控制器产生的脉冲信号确定转动的角度和速度。
步进电机一般由定子和转子组成,定子上有若干个电磁线圈,转子上有若干个永磁体。
当驱动器给定一个电流信号时,电流通过定子线圈产生磁场,与转子上的永磁体相互作用,使转子转动一定的角度。
当驱动器改变电流信号时,磁场方向改变,转子转动的角度和方向也会改变。
步进电机控制系统的原理就是通过控制器产生脉冲信号,驱动器将脉冲信号转换为电流信号,通过电流信号驱动步进电机转动。
控制器根据需要调整脉冲信号的频率和脉宽,从而控制步进电机的转动速度和步长。
驱动器根据电流信号的大小和方向控制步进电机的转动角度和方向。
步进电机根据电磁力和磁场相互作用来实现转动。
通过调节脉冲信号的频率和脉宽,可以实现对步进电机的精确控制。
步进电机控制方法步进电机是一种将电脉冲信号转换为角位移的执行器,广泛应用于打印机、数控机床、纺织机械、包装设备等自动控制系统中。
步进电机控制方法的选择对于系统的性能和稳定性具有重要影响,下面将介绍几种常见的步进电机控制方法。
1. 开环控制。
开环控制是最简单的步进电机控制方法之一,通过给步进电机施加一定的脉冲信号来控制其旋转角度。
这种方法简单直接,但无法对步进电机的运动状态进行实时监测和调整,容易出现失步现象,适用于对精度要求不高的场合。
2. 半闭环控制。
半闭环控制是在开环控制的基础上增加了位置传感器反馈的控制方法。
通过位置传感器实时监测步进电机的位置,将反馈信息与设定值进行比较,从而实现对步进电机位置的闭环控制。
这种方法相比于开环控制能够更好地提高系统的稳定性和精度,但仍然存在一定的失步风险。
3. 闭环控制。
闭环控制是最为精确的步进电机控制方法,通过在步进电机上增加编码器等位置传感器,实时反馈步进电机的位置信息,并对其进行精确控制。
闭环控制能够及时调整步进电机的运动状态,减小失步风险,提高系统的稳定性和精度,适用于对位置精度要求较高的场合。
4. 微步进控制。
微步进控制是一种通过改变步进电机相序激励方式,使步进电机在每个步距内分成多个微步距的控制方法。
微步进控制能够提高步进电机的分辨率,减小振动和噪音,提高系统的平稳性和精度,适用于对步进电机运动要求较高的场合。
总结。
在实际应用中,步进电机控制方法的选择应根据具体的控制要求和系统性能需求来确定。
不同的控制方法各有特点,开环控制简单直接,但精度较低;半闭环控制提高了系统的稳定性和精度,但仍存在失步风险;闭环控制精度最高,但成本较高。
微步进控制能够提高步进电机的平稳性和分辨率,但相应的控制电路较为复杂。
因此,在选择步进电机控制方法时,需要综合考虑系统的实际需求和成本因素,选择最合适的控制方法来实现系统的稳定运行和高精度控制。
开题报告电气工程及其自动化步进电机控制系统的设计一、课题研究意义及现状步进电机又称为阶跃电动机或脉冲电动机,它是基于最基本的电磁感应作用,是一种将电脉冲转化为角位移的执行机构,由于其具有的显著特点,使得它在电机的大家族中扮演着很重要的角色。
步进电机的原始模型起源于1830年至1860年,我国步进电机的研究及发展开始于上世纪50年代后期,最初主要是国家资助的高等院校和科研机构为研究一些装置开发的少量产品。
70年代开始大量生产和应用步进电机,至今,由于对步进电机精确模型做了大量研究工作,各种混合式步进电机及驱动器作为产品被广泛生产和应用。
现应用于工业自动控制、组合机床、数控机床、机器人、计算机外围设备、大型望远镜、卫星天线定位系统等等。
随着科技的发展、技术的进步和电子技术的更新,步进电机的应用领域变得更加的宽广,这样也对步进电机的运行性能提出了更加苛刻的要求。
虽然步进电机是一种数控元件,易于同数字电路接口。
但是,一般数字电路的信号远远不足以驱动步进电机,必须有一个与之匹配的驱动电路来驱动步进电机,步进电机和步进电机驱动电路两者组成步进电机系统。
随着电力电子技术、自动化控制技术以及计算机技术的发展,开始大量使用单片机、FPGA、CPLD、PLC等对步进电机进行控制和驱动,结果是缩短了驱动器的研发周期,明显提高了整机的性能和稳定性。
PSoC可编程片上系统比标准的固定功能的微控制器有明显的优势,采用一个微控制器,一个PSoC器件最多可集成100种外设功能,PSoC系统集成有MCU、FLASH及可编程模拟和数字模块,与上面提到的方案相比通过PSoC单片机控制步进电机,可以实现低成本,小体积,单芯片,高效率的开发,甚至可以在开发最后一刻根据突发状况而改变方案。
二、课题研究的主要内容和预期目标该课题主要分一下内容进行设计:(1)了解和研究步进电机的结构及其工作原理;(2)研究实现常用步进电机控制的方案。
(3)Cypress Designer5.0的学习和软件的操作使用(4)分析基于PSoC的步进电机控制的解决方案,确定系统设计中需要用到CY8C29466的内部结构、通用I/O数目、所需Flash及SRAM空间大小等参数;(5)系统的整体硬件结构设计,包括芯片规划和外围电路设计;(6)设计步进电机驱动模块电路、速度显示模块电路,并绘制原理图,制作PCB板;(7)应用C语言编写系统应用程序,进行硬件电路的调试。
前言单片机是一个单芯片形态、面向控制对象的嵌入式应用计算机系统。
它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。
从此,计算机技术在两个重要领域-—通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。
采用8031单片机控制步进电机,可实现步进电动机正反转控制和步进电动机的无级调速。
分析了步进电机的工作原理,讨论了系统硬件和软件的设计方法,并给出了步进电机的四相八拍单片机控制的具体实现方法。
该系统操作简单,降低了成本,提高了系统的可靠性。
步进电机具有控制方便和体积小等特点,因此在智能仪表和位置控制中得到了广泛的应用。
近年来大规模集成电路的发展以及各种单片机的迅速发展和普及,为设计功能强、价格低的步进电机控制驱动器提供了先进的技术和充足的资源.步进电动机是一种将电脉冲信号转换成相应角位移或线位移的电动机,它的运行需要专门的驱动电源,驱动电源的输出受外部的脉冲信号控制。
每一个脉冲信号可使步进电机旋转一个固定的角度,这个角度称为步距角。
脉冲的数量决定了旋转的总角度,脉冲的频率决定了电动机旋转的速度,改变绕组的通电顺序可以改变电机旋转的方向。
在数字控制系统中,它既可以用作驱动电动机,也可以用作伺服电动机.它在工业过程控制中得到广泛的应用,尤其在智能仪表和需要精确定位的场合应用更为广泛。
1 单片机的基本知识1。
1 概述单片微型计算机简称单片机,由于它的结构及功能均是按工业控制要求设计的,所以其确切的名称应是单片微控制器(Single Chip Microcontroller).它是把微型机算计的各个功能部件:中央处理器CPU、随机存储器RAM、只读存储器ROM、并行I/O接口、定时器/计数器及串行通信接口等集成在一块芯片上,构成一个完整的微型计算机系统,故又把它称为单片微型计算机系统(Single Chip Microcomputer).由于单片机面对的是测控对象,突出的是控制功能,所以它从功能和形态上来说都是应控制领域应用的要求而诞生的.随着单片机技术的发展,它在芯片内集成了许多面对测控对象的接口电路,如ADC、DAC、高速I/O口、PWM、WDT等。
如何利用步进电机实现精准的位置反馈在现代工业控制和自动化领域,步进电机因其精确的控制性能和简单的驱动方式而得到广泛应用。
要实现步进电机的精准位置反馈,需要综合考虑多个因素,包括电机本身的特性、驱动电路、传感器选择以及控制算法等。
首先,了解步进电机的工作原理是至关重要的。
步进电机是一种将电脉冲信号转化为角位移或线位移的电动机。
它通过按一定顺序依次给电机的各个绕组通电,使得电机按照固定的步距角转动。
步距角的大小取决于电机的结构和设计。
一般来说,步距角越小,电机的分辨率越高,也就越容易实现精确的位置控制。
为了驱动步进电机,需要合适的驱动电路。
常见的驱动方式有恒压驱动和恒流驱动。
恒压驱动电路简单,但在高速运行时容易出现失步现象;恒流驱动则能够提供更稳定的电流,保证电机在不同转速下的性能稳定,从而有助于提高位置控制的精度。
在实现精准位置反馈的过程中,传感器的选择起着关键作用。
常见的位置传感器包括编码器和光栅尺。
编码器可以分为增量式编码器和绝对式编码器。
增量式编码器通过记录脉冲数来确定电机的相对位置变化,但在系统断电后会丢失位置信息。
绝对式编码器则能够在任何时刻直接读取电机的绝对位置,即使在断电后重新上电,也能准确获取位置,这对于需要高精度和高可靠性位置反馈的应用非常重要。
光栅尺则是通过测量光的干涉条纹来获取位置信息,具有极高的分辨率和精度。
但它的安装和使用相对复杂,成本也较高。
在选择传感器时,需要根据具体的应用需求、精度要求和成本预算来综合考虑。
控制算法对于实现精准位置反馈也是不可或缺的。
常见的控制算法包括开环控制和闭环控制。
开环控制是根据给定的脉冲数来控制电机的转动,但由于没有反馈机制,无法实时纠正电机运行中的误差,因此精度相对较低。
闭环控制则通过将传感器反馈的实际位置与目标位置进行比较,然后根据误差来调整电机的控制信号,从而实现更精确的位置控制。
例如,PID(比例积分微分)控制算法就是一种常用的闭环控制算法。
基于FPGA的步进电机控制系统系统架构该控制系统的架构如下图所示:主要包含以下几个模块:1. 步进电机:负责驱动机械运动,实现精确定位和定速运动等功能。
2. FPGA芯片:作为控制系统的核心,负责接收指令并生成相应的控制信号,以驱动步进电机。
3. 电源模块:为步进电机和FPGA芯片提供所需的电源能量。
4. 控制器:与FPGA芯片进行通信,向其发送指令,并获取步进电机的状态信息。
工作原理该控制系统的工作原理如下:1. 控制器通过与FPGA芯片的通信接口,向其发送指令。
指令包括步进电机的转动方式、速度、转动角度等参数。
2. FPGA芯片接收到指令后,根据指令生成相应的控制信号。
控制信号经过驱动电路放大、滤波等处理后,通过驱动器将信号传递给步进电机。
3. 步进电机根据接收到的控制信号,进行精确定位和定速运动。
步进电机的位置信息通过编码器等反馈装置反馈给FPGA芯片。
4. FPGA芯片根据步进电机的状态信息,不断调整控制信号,以实现步进电机的精确控制。
系统特点该基于FPGA的步进电机控制系统具有以下特点:1. 高可靠性:采用FPGA芯片作为控制核心,具有较高的抗干扰能力和可靠性,保证了步进电机的精确控制。
2. 高性能:FPGA芯片的高速运算能力和并行处理能力,使得控制系统能够实时响应指令,实现高速运动和精确定位。
3. 灵活性:FPGA芯片可重新编程,允许灵活定制控制算法和功能,满足不同应用需求。
4. 简化电路:通过集成控制器和驱动电路,减少了电路复杂性,降低了系统成本和维护成本。
应用领域基于FPGA的步进电机控制系统广泛应用于以下领域:1. 机械自动化:如自动装配线、自动化包装设备等,实现对机械运动的精确控制和定位。
2. 机器人技术:如工业机器人、服务机器人等,实现对机器人关节和末端执行器的精确控制。
步进电机控制系统摘要:步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。
随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。
关键词:步进电机;执行元件;计算机;发展1步进电机原理及特征1.1步进电机的目前发展情况步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。
使得在速度、位置等控制领域使用步进电机进行控制变得非常简单。
步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。
1.2步进电机的特点1.步进电动机工作时每相绕组不是恒定地通电,而是按一定的规律轮流通电。
2.每输入一个脉冲电信号转子转过的角度称为步距角。
3.步进电机可以按特定指令进行角度控制,也可以进行速度控制。
角度控制时,每输入一个脉冲,定子绕组就换接一次,输出轴就转过一个角度,其步数与脉冲数一致,输出轴转动的角位移量与输入脉冲成正比。
速度控制时,步进电机绕组中送入的是连续脉冲,各相绕组不断地轮流通电,步进电机连续动转,它的转速与脉冲频率成正比。
改变通电顺序,即改变定子磁场旋转方向,就可以控制电机正转或是反转。
1.3步进电机的一些典型运用场合①步进电机主要用于一些有定位要求的场合。
例如:线切割的工作台拖动,植毛机工作台(毛孔定位),包装机(定长度)。
浅谈步进电机控制系统的设计摘要:步进电动机由于用其组成的开环系统既简单、廉价,又非常可行,因此在打印机等办公自动化设备以及各种控制装置等众多领域有着极其广泛的应用。
本文应用单片机对步进电机进行控制,从硬件和软件设计论述其实现方式,实现了步进电机的智能化,有一定的实用价值。
关键词:单片机;步进电机;驱动方式中图分类号:tp311.52 文献标识码:a 文章编号:1007-9599(2012)24-0174-021 引言步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。
使得在速度、位置等控制领域用步进电机来控制变的非常的简单。
2 步进电机驱动方式由三相步进电机工作原理可知,这类步进电机通常有3种通电工作方式:假设按以上顺序通电,步进电机正转,则按相反方向通电,步进电机反转。
用单片机的p1.0,p1.1,p1.2分别控制步进电机的a,b,c相绕组,由控制方式来找出控制模型。
3 硬件设计本系统采用外部中断方式,采用的晶振为12mhz。
p0口作为信号的输入部分,p1口为发光二极管显示部分,p2口作为电机的驱动部分。
单片机的p2.0、p2.1、p2.2分别连接驱动器输入端,驱动器输出端分别接步进电机的abc三相。
利用lm7812和lm7805芯片得到12v和5v的电压。
片机的p0口来控制信号的输入,所以把按键开关和p0口连接起来,当按下开关s1时,相当于给p0.0口一个低电平;当按下开关s2时,相当于给p0.1口一个低电平;当按下开关s3时,相当于给p0.2口一个低电平;当按下开关s4时,相当于给p0.3口一个低电平;当按下开关s5时,相当于给p0.4口一个低电平。
然后通过单片机实行相应的操作。
C N C 主要内容7.2 步进电机及其驱动控制系统主要内容:•步进电机的原理;•主要性能参数;•步进驱动的特点;•驱动控制:环形分配器,功放电路。
要求:在掌握原理基础上,注重围绕应用了解各型电机的特点、性能参数、功放电路。
主要内容定义:步进电机是一种脉冲控制的执行元件,将电脉冲转化为角位移。
每给步进电机输入一个脉冲,其转轴就转过一个角度,称为步距角。
✓脉冲数量----位移量;✓脉冲频率----电机转速;✓脉冲相序----方向。
组成:由步进电机驱动电源和步进电机组成,没有反馈环节,属于开环位置控制系统。
7.2.1 步进电机概述主要内容优点:结构简单,价格便宜,工作可靠;缺点:–容易失步(尤其在高速、大负载时),影响定位精度;–在低速时容易产生振动;–细分技术的应用,明显提高了定位精度,降低了低速振动。
应用:要求一般的开环伺服驱动系统,如经济型数控机床、和电加工机床、计算机的打印机、绘图仪等设备。
步进电动机的分类按运动方式分:旋转式、直线运动式、平面运动式和滚切运动式。
按工作原理分:反应式(磁阻式)、电磁式、永磁式、混合式。
按结构分:单段式(径向式)、多段式(轴向式),印刷绕组式。
按相数分:三相、四相、五相、六相和八相等。
按使用频率分:高频步进电动机和低频步进电动机。
(1) 反应式步进电动机极与极之间的夹角为60°,每个定子磁极上均匀分布了五个齿,齿槽距相等,齿距角为9°。
转子铁心上无绕组,只有均匀分布的40个齿,齿槽距相等,齿距角为360°/40=9°。
单段式的结构:三相反应式步进电动机。
定子铁心上有六个均匀分布的磁极,沿直径相对两个极上的线圈串联,构成一相励磁绕组。
特点:转子无绕组,定转子开小齿、步距小;应用最广。
7.2 步进电机及其驱动控制系统C N C(2) 永磁式步进电动机工作原理:转子或定子一方具有永久磁钢,另一方有软磁材料制成,由绕组轮流通电产生的磁场与永久磁钢相互作用,产生转矩是转子转动。
计算机与信息科学系课程设计报告课程名称:微型计算机控制技术设计题目:步进电机控制系统目录1.系统概述 11.1步进电机控制工作原理 11.2系统设计思路 12.系统硬件设计 2 2.1总体设计 2 2.2步进电机控制电路 32.3显示电路 43.系统软件设计 5 3.1总体设计 53.2 关键模块设计 104.结束语10 4.1设计感想 14 4.2个人分工情况 15 参考文献15 附录151.系统概述1.1步进电机控制工作原理步进电机实际上是一个数字\角度转换器,也是一个串行的数\模转换器。
步进电机的基本控制包括启停控制、转向控制、速度控制、换向控制4 个方面。
从结构上看 ,步进电机分为三相、四相、五相等类型 ,常用的则以三相为主。
三相步进电机的工作方式有三相单三拍、三相双三拍和三相六拍3 种 ,下面具体加以阐述。
1.1.1步进电机的启停控制步进电机由于其电气特性,运转时会有步进感 ,即振动感。
为了使电机转动平滑 ,减小振动 ,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波 ,可以减小步进电机的步进角 ,提高电机运行的平稳性。
在步进电机停转时 ,为了防止因惯性而使电机轴产生顺滑 ,则需采用合适的锁定波形 ,产生锁定磁力矩 ,锁定步进电机的转轴 ,使步进电机的转轴不能自由转动。
1.1.2步进电机的转向控制如果给定工作方式正序换相通电 ,步进电机正转。
若步进电机的励磁方式为三相六拍 ,即 A-AB-B-BC-C-CA。
如果按反序通电换相 ,即则电机就反转。
其他方式情况类似。
1.1.3步进电机的速度控制如果给步进电机发一个控制脉冲 ,它就转一步 ,再发一个脉冲 ,它会再转一步。
2 个脉冲的间隔越短 ,步进电机就转得越快。
调整送给步进电机的脉冲频率 ,就可以对步进电机进行调速。
1.1.4步进电机的换向控制步进电机换向时 ,一定要在电机减速停止或降到突跳频率范围之内再换向 ,以免产生较大的冲击而损坏电机。
文献综述电子信息工程步进电机控制系统的设计摘要:步进电机是一种易于精确控制的执行元件,近几年来随着微电子技术的不断发展步进电机的控制方法也随之变得多种多样。
为了提高步进电机控制系统的动态性以及控制精度,本文献因此提出了一系列关于基于现场可编程门阵列(FPGA)和由数字信号处理器(DSP)构成的步进电机控制系统的设计方法。
关键字:现场可编程门阵列(FPGA);步进电机;数字信号处理器(DSP);引言20世纪后期随着晶体管的发明逐渐应用于步进电机上,使得对于数字化的控制变得更为容易。
如今的步进电机已广泛运用在高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中[1]。
例如数控机床、计算机设备、自动记录仪等,另外在工业自动化生产线、印刷设备中均有应用。
随着步进电机的应用越来越广泛,步进电机在实时性和灵活性等性能上的要求也越来越高,虽然步进电机的发展迅速,但是在大功率步进电机驱动电源的设计和使用仍然存在问题,很大程度上地限制了大功率步进电机在数控机床、自动控制等技术方面的应用。
一、基本概况步进电机(Stepping Motor)是将电脉冲信号转化为角(线)位移的电元件,当步进驱动器接受脉冲信号后,就会驱动步进电机转动一个固定的角度,即步距角。
因此,通常以通过控制脉冲个数和控制脉冲频率来调节和控制角位移量及电机转动的速度和加速度,从而达到准确的定位和调速的目的。
在非超载的情况下,脉冲信号的频率和脉冲数来决定了电机的转速停止的位置,且不受负载变化的影响。
因此步进电机在速度、位置等控制领域的控制变的非常简单且容易操作。
最早步进电机的原理与今天的反应式步进电机的组成原理基本相同。
随着时代的发展,微型计算机具有多功能的特点,因而步进电动机的控制方式变得灵活和多样。
早期的步进电机的控制系统是分立元件来控制回路,它的缺点是调试安装复杂,要消耗大量元器件,而且定型之后,不容易改变其控制方案。
基于微型计算机的控制系统则是通过软件来控制步进电机,这样能够更好地发挥步进电机的潜力;因此,用微型计算机控制步进电机已经成为一种必然的趋势,并且也符合数字化的时代发展要求。
课程设计题目步进电机定位控制系统设计学院信息工程学院专业班级姓名指导老师2018~2018学年6月20日课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目:步进电机定位控制系统设计初始条件:1. 具备电子电路的基础知识及查阅资料和手册的能力;2. 熟悉ISE 仿真软件的操作与运用;3. 掌握步进电机的工作原理。
要求完成的主要任务:1. 设计一个基于FPGA 的4 相步进电机定位控制系统,包括步进电机方向设定电路模块、步进电机步进移动与定位控制模块和编码输出模块。
2.撰写符合学校要求的课程设计说明书。
时间安排:1、2018 年06月11日,布置课设具体实施计划与课程设计报告格式的要求说明。
2、2018 年06月12日至2018年06月17日,设计说明书撰写。
3、2018年06月18日,上交课程设计成果及报告,同时进行答辩。
指导教师签名:年月日系主任<或责任教师)签名:年月日目录摘要 (II)Abstract (II)1 设计目标及简介 (11)1.1设计目标 (11)1.2 步进电机简介 (11)2 VHDL语言介绍 (11)3 Quartus Ⅱ介绍 (11)4 系统组成 (22)4.1 四相步进电机工作原理 (22)4.2 系统组成 (44)5 模块设计 (44)5.1 FPGA模块图及信号说明 (44)5.2 系统模块构成 (55)5.3 各模块间整体共享的电路内部传递信号 (55)5.4 电机方向设定电路模块 (55)5.5 步进电机步进移动与定位控制模块 (66)5.6 编码输出模块 (77)6 程序设计与仿真 (77)7 仿真结果 (1010)8 实验总结 (1212)参考文献 (1212)摘要在分析了步进电机工作原理的基础上,提出了步进电机定位控制系统的模块划分和实现方法。
以步进电机四相四拍工作方式为例,用Verilog编程在Altera公司的FPGA开发系统中实现了各功能模块和显示程序。
在系统仿真的基础上,进行了功能模块的控制实验,实验结果和仿真一致,实现了对步进电机模组的预定控制。
关键词:步进电机定位控制 Verilog硬件描述语言 FPGAAbstractOn the basis of analysing stepping motor’s operational principle,we put forward modules division and realizing method of positioning control system which using stepping motor.Giving an example such as stepping motors which work in Four-phase-four-step mode,we use Verilog programming realized every foundational module and display routine in Altera’s FPGA development system.On the basis of system simulation,we conduct a controlling experiment about foundational modules,the results are the same as simulation’s results.We carried out the expected control about stepping motor.Keyword:stepping motor positioning control VHDL FPGA1 设计目标及简介1.1设计目标设计一个基于FPGA的4相步进电机定位控制系统。
1.2 步进电机简介步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。
使得在速度、位置等控制领域用步进电机来控制变的非常的简单。
2 VHDL语言介绍VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。
1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体<可以是一个元件,一个电路模块或一个系统)分成外部<或称可视部分,及端口)和内部<或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用,它自身必然具有很多其他硬件描述语言所不具备的优点。
归纳起来,VHDL 语言主要具有功能强大,设计方式多样;硬件描述能力强大;具有很强的移植能力;设计描述与器件无关程序易于共享和复用等优点。
3 Quartus Ⅱ介绍Quartus II 是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL<Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。
具有运行速度快,界面统一,功能集中,易学易用等特点。
Quartus II提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:可利用原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片<电路)平面布局连线编辑;LogicLock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTap II逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的EDIF 网表文件、VHDL网表文件和Verilog网表文件;能生成第三方EDA软件使用的VHDL网表文件和Verilog网表文件。
4 系统组成4.1 四相步进电机工作原理步进电机是利用数字信号控制的电机装置,步进电机每次接收到一组脉冲数字信号,便旋转一个角度,称为步进角。
不同规格的步进电机的步进角不同,与电动机内部的线圈数量有关。
线圈中的供应电流决定线圈所产生的磁场方向。
4相步进电机有两组线圈A和B,如图4.1所示,A、B两组垂直摆放线圈的电流方向的排列组合,最多可以产生8种磁场方向,分别是0º、45º、90º、135º、180º、225º、270º、315º。
图4.1 四相步进电机由表4.1可以知,假设电动机转子刻度在0º的位置,想让其转180º,可以使端口信号依次按0001,0011,0010,0110到0100变化。
注意:四相电动机有1相激磁法、2相激磁法和1-2相混合激磁法3种激磁方式。
不同的激磁方式,端口信号的顺序是不同的。
表4.1 四相步进电机的8个方向和电流以及电压信号的关系该步进电机为一四相步进电机,采用单极性直流电源供电。
只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。
图 4.2是该四相反应式步进电机工作原理示意图。
图4.2四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。
当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。
而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。
依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。
四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。
单四拍与双四拍的步距角相等,但单四拍的转动力矩小。
八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。
四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A。
单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图 4.3的a、b、c所示。
图4.3a 单四拍图4.3b 双四拍图4.3c 八拍4.2 系统组成图4.4 系统组成5 模块设计5.1 FPGA模块图及信号说明图5.1 FPGA模块图reset:系统内部复位信号,’1’时有效;dir:步进电机正反转的方向控制开关,0:逆时针,1:顺时针;clk:由FPGA内部提供的4MHz的时钟信号;ini:赋初值的使能开关,’0’时有效;manner:激磁方式的选择开关(两位>,00:自动检测角度输入,决定激磁方式01:1-相激磁。
10:2.相激磁。
11:1-2.相激磁.angle:步进角的倍数设定输入键.baba:将内部计数器的count[3 downto 0]的数值编码输出5.2 系统模块构成系统主要由步进电机方向设定电路模块、步进电机步进移动与定位控制模块和编码输出模块构成。
前两个模块完成电机旋转方向设定,激磁方式设定和定位角度的换算等工作,后一个模块用于对换算后的角度量编码输出。
5.3 各模块间整体共享的电路内部传递信号count:内部电路计数累加器,用来产生输出所需对应的状态;cntinc:设定累加器所需的累加/减计数值;sntini:设定累加器所需的计数初值;angledncount:设定步进角所需处理的次数;Angledncntdec:设定步进角所需累减计数值;5.4 电机方向设定电路模块该模块设定了步进电机的旋转方向以及电机在任一方向上所需的初值与累加/减值。