步进电机的课程设计.docx
- 文档编号:15757817
- 上传时间:2023-07-07
- 格式:DOCX
- 页数:15
- 大小:245.47KB
步进电机的课程设计.docx
《步进电机的课程设计.docx》由会员分享,可在线阅读,更多相关《步进电机的课程设计.docx(15页珍藏版)》请在冰点文库上搜索。
步进电机的课程设计
摘要…………………………………………………………………4
第一章绪论…………………………………………………………5
1.1关于步进电机……………………………………………5
1.2选题的目的和意义…………………………………………6
第二章元器件的介绍…………………………………………………8
2.1步进电机………………………………………………8
2.289C51…………………………………………………9
第三章步进电机控制系统硬件电路设计………………………………11
3.1控制电路………………………………………………10
3.2最小系统………………………………………………12
3.3驱动电路………………………………………………13
3.4显示电路………………………………………………14
3.5总体电路………………………………………………14
第四章软件的设计………………………………………………16
4.1方案论证………………………………………………16
4.2主程序设计………………………………………………17
4.3定时中断设计…………………………………………18
4.4外部中断设计…………………………………………19
第五章仿真与调试……………………………………………25
5.1Proteus软件介绍……………………………………25
5.2keil软件介绍…………………………………………25
5.3仿真过程………………………………………………25
心得体会……………………………………………………………27
附录PCB板图及其三视图……………………………………………28
摘要
单片机的应用正在不断深入和创新,作为一门我们专业相当重要的专业课程,同时带动着传统控制检测日新月异的更新。
此次设计利用实验室中试验箱单片机结构作为核心部件进行调试和创新,其中对步进电机背景与现状、系统硬件设计、软件设计及其仿真调试过程都做了详细的介绍,使我们组的每个成员不仅对步进电机的原理有了深入的了解,也对单片机的设计研发过程以及知识的学习都有了很深刻的体会和提高。
本控制系统的设计采用实验室中的试验箱单片机控制,通过人为按动各开关实现步进电机的开关,以及电机的加速及减速功能,另外还增加可设正反转的功能,具有灵活方便、适用范围广易懂的特点,能够满足实现自身实践动手能力提高的需求。
第一章绪论
1.1关于步进电机
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
步进电机的相关参数:
相数:
产生不同对极N、S磁场的激磁线圈对数,是指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机。
电机相数不同,其步距角也不同,一般二相电机的步距角为0.9°/1.8°、三相的为0.75°/1.5°、五相的为0.36°/0.72°。
在没有细分驱动器时,用户主要靠选择不同相数的步进电机来满足自己步距角的要求。
如果使用细分驱动器,则‘相数’将变得没有意义,用户只需在驱动器上改变细分数,就可以改变步距角。
目前应用最广泛的是两相和四相,四相电机一般用作两相,五相的成本较高。
拍数:
完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.
固有步距角
对应一个脉冲信号,电机转子转过的角位移用θ表示。
θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。
四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步)。
这个步距角可以称之为‘电机固有步距角’,它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关。
另外还有定位转矩、最大静转矩、步距角精度、失步、失调角、最大空载启动频率、最大空载运行频率等,而电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。
1.2设计的目的、任务和意义
设计任务:
1、了解步进电机控制的原理;
2、掌握控制步进电机的编程方法;
3、利用AT89S52单片机及键盘完成对步进电机的速度控制。
目的和意义:
单片机原理与接口技术课程设计是我们一个重要的实践教学环节,是对我们的一次较全面的设计训练。
其目的就是培养我们理论联系实际的设计思想,训练综合运用所学的基础理论知识分析和解决实际应用问题的能力,从而使基础理论知识得到巩固、加深和系统化,掌握单片机应用系统设计的一般过程和方法。
熟悉和掌握运用设计资料的技能。
所以,通过我们这次团队进行的课程设计,使我们进一步的掌握单片机的一些使用原理,了解步进电机的工作原理,提高动手能力和排除故障的能力,也培养了自己团队合作的精神和学习能力。
通过在实验室对设计的调试,提高了我们每个人的动手能力和解决问题的想法思维,巩固已学的理论知识,建立单片机理论和实践的结合,了解步进电机控制系统中电路之间的关系及相互影响,从而能正确设计各个单元电路。
初步掌握步进电机控制系统的测试方法以及进一步了解实验室中试验箱的各部分元件的组成。
第二章四相步进电机控制系统的总体方案设计
2.1步进电机的工作原理及驱动
步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。
步进电机区别于其他控制电机的最大特点是:
它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。
步进电机分三种:
永磁式(PM),反应式(VR)和混合式(HB)。
本设计中的四相步进电机的工作原理(正反转和速度控制)
设计中的四相步进电机采用单极性直流电源供电,只要对步进电机的各相绕组按合适的时序通电,就能使步进电机转动。
当某一相绕组通电时,对应的磁极产生磁场,并与转子形成磁路,这时,如果定子和转子的小齿没有对齐,在磁场的作用下,由于磁通具有力图走磁阻最小路径的特点,则转子将转动一定的角度,使转子与定子的齿相互对齐,由此可见,错齿是促使电机旋转的原因。
而其正反转则是利用时序脉冲信号通电,对四相绕组A、B、C、D通电,当某一项绕组通电时,在其内部形成N-S极,产生磁场,在磁场的作用下,转子将会转动,步进一步。
所以脉冲的通电方向会使电机的转向不同,因而只要控制脉冲输出的顺序,并结合程序设计的要求,即可实现对步进电动机正/反转的控制。
而对应调试正反转也不必使用其他繁琐的添加了。
步进电机换向时,一定要在电机减速停止或降到突跳频率范围之内再换向,以免产生较大的冲击而损坏电机。
换向信号一定要在前一个方向的最后一个脉冲结束后以及下一个方向的第1个脉冲前发出。
对于脉冲的设计主要要求要有一定的脉冲宽度(一般不小于5μs)、脉冲序列的均匀度及高低电平方式。
在某一高速下的正、反向切换实质包含了减速→换向→加速3个过程。
步进电机速度的控制是通过控制单片机发出的步进脉冲的频率来实现。
对于软件脉冲分配方式采用调整两个控制字之间的时间间隔来实现调速;对于硬件脉冲分配方式则采用定时中断方式来调整脉冲频率从而实现调速。
根据以上所述,控制步进电机速度的方法有两种。
①软件延时法:
通过调用标准的延时子程序,改变两控制字之间延时时间来实现。
采用软件延时方法实现速度调节的优点是程序简单,思路清晰,不占用硬件资源,缺点是CPU的等待时间过长,占用大量机时,因此没有实用价值。
②定时器中断法。
以805l单片机为例,在中断服务子程序中进行脉冲输出操作,调整定时器的定时常数就可实现脉冲频率的调整,从而实现调速。
这种方法占用CPU时间较少,容易实现,是一种比较实用的调速方法。
2.2芯片选择
在设计调试过程中实验箱中部分结构电路图都已给出并已连接好,只需对部分端口进行连线以及一些添加电路即可完成设计连线。
具体用到的芯片如下:
AT89S52、74LS245三片、74LS373一片、8255芯片、74LS240两片、ULN2803一片、六位八段数码管
其中74LS245是用在I/O口和数码管之间连接的,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据,是个缓冲器,因为P0口没有上拉电阻,所以不能直接接到数码管,要通过上拉电阻或者用此芯片进行缓冲和驱动的功能。
74ls373是常用的地址锁存器芯片,它实质是一个是带三态缓冲输出的8D触发器,在单片机系统中为了扩展外部存储器,通常需要一块74ls373芯片,
74LS240S芯片是一片显示芯片,又称图型处理器-GPU,它在显卡中的作用,就如同CPU在电脑中的作用一样。
更直接的比喻就是大脑在人身体里的作用。
ULN2803芯片是达林顿管输出器件,在电路中能起到大电流输出和高压输出作用,ULN2003是高耐压、大电流达林顿阵列,由七个硅NPN达林顿管组成。
ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据,所以此次设计中它用于连接P1口四引脚连接四相步进电机进而驱动电机,使其能够转动
8255芯片:
(1)具有两个8位(A口和B口)和两个4位(C口高/低四位)并行输入/输出端口,C口可按位操作。
(2)具有3种工作方式:
方式0――基本输入/输出(A,B,C口均有);
方式1――选通输入/输出(A,B口具有);
方式2――双向选通输入/输出(A口具有)。
(3)可用程序设置各种工作方式并查询各种工作状态。
(4)在方式1和方式2时,C口作A口、B口的联络线。
(5)内部有控制寄存器、状态寄存器和数据寄存器供CPU访问。
(6)有中断申请能力,但无中断管理能力
(7)40根引脚,+5V供电,与TTL电平兼容。
8255A的外部引线与内部结构
8255A是一个单+5V电源供电,40个引脚的双列直插式组件,其外部引线如图7-2所示。
(1)外部引线
作为接口电路的8255A具有面向主机系统总线和面向外设两个方向的连接能力,它的引脚正是为了满足这种连接要求而设置的。
①面向系统总线的信号线有:
D7~D0:
双向数据线。
CPU通过它向8255A发送命令、数据;8255A通过它向CPU回送状态、数据。
CS:
选片信号线,该信号低电平有效,由系统地址总线经I/O地址译码器产生。
A1,A0:
芯片内部端口地址信号线,与系统地址总线低位相连。
该信号用来寻址8255A内部寄存器,两位地址,可形成片内4个端口地址。
RD:
读信号线,该信号低电平有效。
WR:
写信号线,该信号低电平有效。
RESET:
复位信号线,该信号高电平有效。
它清除控制寄存器并将8255A的A、B、C3个端口均置为输入方式;输出寄存器和状态寄存器被复位,并且屏蔽中断请求;24条面向外设的信号线呈现高阻悬浮状态。
这种状态一直维持,直到用方式命令才能改变,使其进入用户所需的工作方式。
②面制I/O设备的信号线有:
PA0~PA7:
端口A的输入/输出线
PB0~PB7:
端口B的输入/输出线
PC0~PC7:
端口C的输入/输出线
这24根信号线均可用来连接I/O设备,通过它们可以传送数字量信息或开关量信息。
8255A引脚及功能示意图(a)引脚;(b)功能示意图
8255的工作方式选择控制字:
除以上介绍74LS245、74LS373、8255芯片、74LS240、ULN2803的部分作用信息之外,各芯片的详细的各方面资料参考都已放在了附页位置,均已基本上理解明白了一些其各自的功能和作用
第三章系统硬件电路的设计
本设计中的硬件电路包括控制电路、最小系统、驱动电路、显示电路四大部分。
最小系统是为了使单片机正常工作,此设计中它包括时钟电路、复位电路,而控制电路则主要是由按键组成,根据相应的工作需要进行人工手动的操作。
显示电路主要是为了显示步进电机工作的转速快慢等级。
驱动电路主要是利用芯片对单片机输出的脉冲进行功率放大,从而驱动四相步进电机进行转动来达到设计要求。
3.1系统总体设计的结构框图
根据自己所画的仿真电路图以及结合实验室中实验箱的部分电路的连接组成画出如下的系统设计的总体结构框图:
3、2控制电路
根据系统的控制要求,控制输入部分我们设置了换向控制、加速控制和减速控制按键,分别是K1、K2、K3,对应引脚分别是P3.0、P3.1、P3.2,仿真的控制电路部分的图如下所示。
通过按键K1实现换向功能。
当K1的状态变化时,内部程序检测P1.0、P1.1、P1.2和P1.3的状态来调用换向程序,实现电机正反转的控制。
而加减速按键则是利用定时器中断来实现加减速的实现并进行对应速度等级的显示,因为根据步进电机的工作原理可以知道,步进电机转速的控制主要是通过控制通入电机的脉冲频率,从而控制电机的转速。
对于单片机而言,主要的方法有:
软件延时和定时中断,在此电路中电机的转速控制主要是通过定时器的中断来实现的,该电路控制电机加速度主要是通过K2、K3的断开和闭合,从而控制外部中断根据按键次数,改变速度值存储区中的数据(此数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,从而实现对电机转速改变的功能。
图如下
3.3最小系统
单片机最小系统或者称为最小应用系统,就是用最少的元件组成的单片机可以工作的系统,其中最小系统一般应该包括:
单片机、复位电路、时钟电路,
复位电路:
使用了独立式键盘,单片机的P1口键盘的接口。
该设计要求只需3个键对步进电机的状态进行控制,但考虑到对控制功能的扩展,使用了一排的独立式键盘。
复位电路采用手动复位,所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态,晶振电路用30PF的电容和一12M晶体振荡器组成为整个电路提供时钟频率
时钟电路:
时钟电路是用于产生单片机工作时所必需的时钟信号。
时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准的,有条不紊地一拍一拍地工作。
时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。
电路中的电容C1、C2典型值为30±10pF。
外接代内容的值虽然没有严格的要求,但是电容的大小会影响振荡器的稳定性和起振的快速性。
同时,在系统中采用11.0592MHz的晶体振荡器来产生时钟脉冲。
一方面,可以满足系统在设计时的机器周期的需要;另一方面,在进行串行口通讯的时候能够提供精准的通讯波特率。
图如下。
3.4驱动电路
通过ULN280芯片构成步进电机的驱动电路,电路图如下图所示。
通过单片机的P1.0~P1.3输出脉冲到ULN2803的1B~4B口,经信号放大后从1C~4C口分别输出到电机的A、B、C、D四相上控制正反转。
图如下
3.5显示电路
此系统设计中利用缓存器以及8255芯片连接六位的八段数码管进行电机速度等级的显示,通过8255芯片的A口和B口,并定义为输出方式对数码管进行段选和位选,程序中利用对8255输入的控制字进行芯片的设定,同时利用语句:
“duan=DuanMa[Speed%10]”选择显示的段码进而进行数字的显示,通过按键对速度的加减的同时,数码管也会对应显示电机速度的等级即电机转速的快慢,而仿真图中的显示部分图如下所示:
第四章软件的设计
4.1方案论证
从该系统的设计要求可知,该系统的输入量为速度和方向,速度应该有增减变化,通常用加减按钮控制速度,这样只要2根口线,再加上一根方向线盒一根启动信号线共需要4根输入线。
系统的输出线与步进电机的绕组数有关。
这里选
进电机,该电机共有四相绕组,工作电压为+5V,可以个单片机共用一个电源。
步进电机的四相绕组用P1口的P1.0~P1.3控制,由于P1口驱动能力不够,因而用一片2803增加驱动能力。
用P0口控制第一数码管用于显示正反转,用P2口控制第二个数码管用于显示转速等级。
数码管采用共阳的。
通过分析可以看出,实现系统功能可以采用多种方法,由于随时有可能输入加速、加速信号和方向信号,因而采用中断方式效率最高,这样总共要完成4个部分的工作才能满足课题要求,即主程序部分、定时器中断部分、外部中断0和外部中断1部分,其中主程序的主要功能是系统初始参数的设置及启动开关的检测,若启动开关合上则系统开始工作,反之系统停止工作;定时器部分控制脉冲频率,它决定了步进电机转速的快慢;两个外部中断程序要做的工作都是为了完成改变速度这一功能。
下面分析主程序与定时器中断程序及外部中断程序。
4.2主程序设计
主程序中要完成的工作主要有系统初始值的设置、系统状态的显示以及各种开关状态的检测判断等。
其中系统初始状态的设置内容较多,该系统中,需要初始化定时器、外部中断;对P1口送初值以决定脉冲分配方式,速度值存储区送初值决定步进电机的启动速度,对方向值存储区送初值决定步进电机旋转方向等内容。
若初始化P1=11H、速度和方向初始值均设为0,就意味着步进电机按四相单四拍运行,系统上电后在没有操作的情况下,步进电机不旋转,方向值显示“0”,速度值显示“0”,主程序流程图如图7所示。
4.3定时中断设计
步进电机的转动主要是给电机各绕组按一定的时间间隔连续不断地按规律通入电流,步进电机才会旋转,时间间隔越短,速度就越快。
在这个系统中,这个时间间隔是用定时器重复中断一定次数产生的,即调节时间间隔就是调节定时器的中断次数,因而在定时器中断程序中,要做的工作主要是判断电机的运行方向、发下一个脉冲,以及保存当前的各种状态。
程序流程图如图8所示。
4.4外部中断设计
外部中断所要完成的工作是根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,也就是改变了电机的转速。
速度增加按钮S2为INT0中断,其程序流程为原数据,当值等于7时,不改变原数值返回,小于7时,数据加1后返回;速度减少按钮S3,当原数据不为0,减1保存数据,原数据为0则保持不变。
程序流程图如图9所示。
C语言程序如下:
第五章仿真与调试
5.1软件介绍
Proteus软件介绍
Proteus(海神)的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。
①全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。
②具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS一232动态仿真、1C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
③目前支持的单片机类型有:
68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
④支持大量的存储器和外围芯片。
总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,可仿真51、AVR、PIC。
Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。
因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。
对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。
5.2keil软件介绍
Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。
5.3仿真过程
操作如下:
在Protues中画出系统电路图将程序在keil中编译并生成hex文件。
2)把在keil中编译生成的HEX文件载入AT89C51芯片中;
3)运行仿真。
心得体会
经过这么长时间的努力终于将课程设计完成了,在这次设计中,我们的电路知识得到了很好的补充和巩固,还使我提高了将理论知识运用到实际中的能力。
通过这次课程设计,更深一步掌握了51单片机的原理,了解了简单步进电机控制系统的组成原理,并初步掌握了步进电机设计及测试方法。
提高了动手能力和排除故障的能力。
同时通过本次设计与调试,巩固了已学的理论知识,将单片机的理论和实践相结合,了解到步进电机各单元电路之间的关系及影响,从而能正确设计、计算定时计数的各个单元电路。
初步掌握步进电机控制系统的设计及测试方法,提高了动手能力和排除故障的能力。
通过本次课程设计我们不仅对前面所学知识作出了检验,也让自己能力得到了很大的提高。
在这次课程设计中,我们发现了自己原来的知识还比较欠缺,要学习的东西还太多,深切的感受到学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己的知识和综合素质。
这次设计使我们学到了以前书本知识中所不曾了解的知识,更加明白了在如今的信息时代下电子技能知识的重要性,丰富了我们对实际工艺技术、电子技术和设备技术等方面的认识,掌握了分析问题、处理问题的方法以及调试、计算等基本技能,使实际工作能力得到了有效提高。
在这次的课程设计中非常感谢老师的指导与帮助,使我们的课程设计能更好的完成,这对于我们今后的学习、工作和生活都有很大帮助。
同时,我们也充分认识到团队合作的重要性,这次经历对于我们以后的发展无疑是相当有帮助的。
相信有了这次累积,毕业后的工作学习将会更加顺利。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 步进 电机 课程设计