成绩评定表学生姓名班级学号12专业通信工程课程设计题目基于单片机的步进电动机系统的设计与实现评语组长签字:成绩日期20年月日II课程设计任务书学院信息科学与工程学院专业通信工程学生姓名班级学号12课程设计题目基于单片机步进电动机控制系统的设计与实现实践教学要求与任务:1.熟悉步进电机的基本原理。2熟悉proteus的环境。3.在Proteus环境中仿真实步进电机。4.运行、调试步进电机。5.对步进电机进行结果验证及分析。工作计划与进度安排:12月7日熟悉设计任务、查阅资料、进行原理分析及可行性论证。12月8日-9日组装、调试步进电机。(软件:在Proteus环境中仿真实现步进电机)12月11日验收、答辩、提交报告。指导教师:201年月日专业负责人:201年月日学院教学副院长:201年月日III目录1.步进电机系统简介...........................................................41.1方案选择................................................................................................................................41.2步进电机工作原理................................................................................................................42系统硬件设计.................................................................52.1单片机主机系统电路............................................................................................................52.1.1时钟电路.....................................................................................................................62.1.2复位电路.....................................................................................................................62.2步进电机驱动电路................................................................................................................72.3发光二极管显示电路与开关电路的显示...........................................................................73系统软件设计.................................................................83.1程序设计及框图...................................................................................................................84电路仿真.....................................................................94.1Proteus软件介绍....................................................................................................................94.2步进电机控制系统Proteus仿真........................................................................................104.3仿真结果分析.....................................................................................................................125总结........................................................................13参考文献.....................................................................14仿真与程序.rar41.步进电机系统简介1.1方案选择基于单片机和proteus的步进电机控制电路的基本组成如图1-1所示。图1-1步进电机控制电路的原理框图根据设计要求,采用的方案如下:硬件部分实现电机正反转动及定位功能,包括控制开关模块;电机转动模块和运行状态显示模块。软件部分实现对步进电机的控制功能,主要设计思想通过控制台控制程序的开关来控制电机的转动,由电机反馈回来的数据经单片机控制显示器显示数据.。1.2步进电机工作原理步进电机在结构上也是由定子和转子组成,可以对旋转角度和转动速度进行高精度控制。当电流流过定子绕组时,定子绕组产生一矢量磁场,该矢量场会带动转子旋转一角度,使得转子的一对磁极磁场方向与定子的磁场方向一着该磁场旋转一个角度。因此,控制电机转子旋转实际上就是以一定的规律控制定子绕组的电流来产生旋转的磁场。每来一个脉冲电压,转子就旋转一个步距角,称为一步。根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,在供给连续脉冲时,就能一步一步地连续转动,从而使电机旋转。电机将电能转换成机械能,步进电机将电脉冲转换成特定的旋转运动。每个脉冲所产生的运动是精确的,并可重复,这就是步进电机为什么在定位应用中如此有效的原因。通过电磁感应定律我们很容易知道激励一个线圈绕组将产生一个电磁场,分为北极和南极。定子产生的磁场使转子转动到与定子磁场对直。通过改变定子线5圈的通电顺序可使电机转子产生连续的旋转运动。2系统硬件设计是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距步进电机角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。本课题选择2相式步进电机,驱动信号选择1-2相驱动。2.1单片机主机系统电路AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。6图2-1单片机主机系统图2.1.1时钟电路单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图3-1所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。图3-1中外接晶体以及电容C2和C1构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为22PF。晶振频率选12MHz。2.1.2复位电路为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115U180C51C122PFC222PFC310uFX112MR010k7为高电平,单片机就处于循环复位状态。复位后系统将输入/输出(1/0)端口寄存器置为FFH,堆栈指针SP置为07H,SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用上电复位方式。图3-1中R0和C3组成上电复位电路,其值R0取为10K,C3取为10uF。2.2步进电机驱动电路一片2003系列IC包含7个开集极式输出的反相器,而在每个输出端都有一个连接到共同端的二极管,作为放电保护电路,它可提供最高0.5A的电流。对于步进马达而言,可能会有瞬间的大电流,但每个驱动电路所提供的工作周期都不高,驱动IC应该不会发热。驱动信号由8051的P1.0到P1.3连接到2003系列IC的四个反相输入端,输出端连接到步进电动机。2003系列IC的common端与不进电动机的com1,com2连接到+5V或+12v的电源上,而2003系列IC的第8脚接地。图2-2步进电机驱动电路步进电动机选择2相50尺,并且是八拍运行,则步距角为=360度/(50*8)=0.9度。正转驱动信号:00010011001001100100110010001001反转驱动信号:100110001100010001100010001100012.3发光二极管显示电路与开关电路的显示用发光二极管的亮灭状态显示步进电动机的运行状态。当电机正转时D1亮,1B11C162B22C153B33C144B44C135B55C126B66C117B77C10COM9U2ULN2003A+88.8STEPPER-MOTOR8反转时D2亮,电机停止时D3亮。K1为正传按键,K2为反转按键K3为停止按键。该模块与单片机I/O口线直接连接的电路如图2-3所示。图2-3发光二极管、按键与80C51连接电路3系统软件设计3.1程序设计及框图主程序中定义引脚和步进电机正反转的驱动信号,子程序设定延迟时间,和对步进电机正