首页 基于单片机的步进电机控制系统

基于单片机的步进电机控制系统

举报
开通vip

基于单片机的步进电机控制系统数理与信息工程学院《单片机原理与应用》期末学期课程设计 数理与信息工程学院 《单片机原理及应用》期末学期课程设计 题 目: 基于单片机的步进电机控制系统 专 业: 电子信息工程 班 级: 电信041班 姓 名: 林 浩 波 学 号: 04610117 指...

基于单片机的步进电机控制系统
数理与信息 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 学院《单片机原理与应用》期末学期课程设计 数理与信息工程学院 《单片机原理及应用》期末学期课程设计 题 目: 基于单片机的步进电机控制系统 专 业: 电子信息工程 班 级: 电信041班 姓 名: 林 浩 波 学 号: 04610117 指导老师: 余 水 宝 成 绩: 12 自己的东西偏少,格式欠 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 化 (2007.1) 目 录 第1章 引 言………………………………………………………………….3 1.1 步进电机控制系统概述………………………………………………….3 1.2 本设计任务和主要 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 ……………………………………………………4 第2章 系统主要硬件电路设计………………………………………………….5 2.1 单片机控制系统原理…………………………………………………….5 2.2 单片机主机系统电路……………………………………………………5 2.2.1时钟电路……………………………………………………………6 2.2.2复位电路……………………………………………………………6 2.3 步进电机驱动电路…………………………………………………………7 2.4 LED显示电路…………………………………………………………….8 第3章 系统的软件设计…………………………………………………………10 3.1 步进电机的位置控制……………………………………………………10 3.2 显示子程序………………………………………………………………13 第四章 结束语…………………………………………………………………17第5章 参考文献…………………………………………………………………18 基于单片机的步进电机控制系统 数理与信息工程学院 电信041 林浩波 指导教师:余水宝 第1章 引 言 在当今社会的各个领域步进电机无处不在,应用领域涉及机器人、工业电子自动化设备、医疗器件、广告器材、舞台灯光设备、印刷设备、计算机外部应用设备等等。因此,设计出高精确度、实时监控、语音提示的步进电机具有重要的现实意义和实用价值。 本设计是基于80C51单片机的步进电机控制系统,能够有效地对步进电机转速、方向的控制。为了能够更加人性化的控制系统,本设计还增加了语音提示部分,在实际应用当中由于紧急事件需要在短时间内了解电机的工作情况,这时看数码显示就很不方便,而语音提示提供很大帮助,只要按下语音提示按钮便能获取相关技术数据。 本设计采用16 位单片机MCS80C51对步进电机进行控制,通过I/O口输出的具有时序的方波作为步进电机的控制信号,信号经过驱动芯片驱动步进电机;同时,用 4X4的键盘来对电机的状态进行控制,并用数码管显示电机的转速,采用74LS164作为4位单个数码管的显示驱动。 1.1 步进电机控制系统概述  步进电机是机电一体化产品中的关键组件之一,是一种性能良好的数字执行元件,随着计算机应用技术、电子技术和自动控制技术在国民经济各个领域中的普及与深入,步进电机的需求量越练越大。 随着工业技术的不断发展,以及同类产品的不断出现,步进电机面临着前所未有的挑战。但近30年来,数字技术、计算机技术和永磁材料的迅速发展,推动步进电机的发展,为步进电机的应用开辟了广阔的前景,近几年来,步进电机 需求量一直呈现出较快的增长速度,其中扫描仪、打印机、传真、DVD-ROM/CD-ROM驱动器、空调及多功能自动化办公设备等应用对步进电机的需求增长最强。此外由于USB2.0的日益流行促进了高分辨率扫描仪的销售,步进电机向着小型、薄型和更小的步进角度发展。 步进电机有着方方面面重要应用,如何对其进行有效控制,使其能够发挥最大的优势是各个行业技术开发人员所共同关注的,本文旨在设计一套较完整的通用控制系统,对步进电机的转速、方向实行智能化控制,并能通过LED显示其转速。 1.2 本设计任务和主要内容 本论文主要研究单片机控制的步进电机系统,对步进电机的转速、方向进行控制和显示。 主要内容如下: 2 通过键盘设定步进电机的转速及方向 ② LED显示步进电机的转速 第2章 系统主要硬件电路设计 2.1 单片机控制系统原理 图2-1 单片机控制系统原理框图 2.2 单片机主机系统电路   AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。 图2-2 单片机主机系统图 2.2.1时钟电路 单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图2-2所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。图2-2中外接晶体以及电容C2和C1构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30P左右,晶振频率选12MHz 2.2.2复位电路 为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。复位后系统将输入/输出(1/0)端口寄存器置为FFH,堆栈指针SP置为07H, SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用上电复位方式。 图2-2中R9和Cl组成上电复位电路,其值R取为1K, C取为1pF. 2.3 步进电机驱动电路 驱动电路集成化成为一种趋势。目前,已有多种步进电机驱动集成电路芯片,它们大多集驱动和保护于一体,作为小功率步进电机的专用驱动芯片,广泛用于小型仪表、计算机外设等领域,使用起来非常方便。本设计采用UCN5804B芯片。UCN5804B芯片适用于四相步进电机的单极性驱动。它最大能输出1.5A电流、3.5V电压。内部集成有驱动电路,上电自行复位,可以控制转向和输出使能。 图2-3 步进电机驱动电路 图2-3为步进电机驱动电路,其中4、5、12、13脚为接地引脚,1、3、6、8脚为输出引脚,电动机各相的的接线如图,14脚是控制电机的转向,其中低电平为正转,高电平为反转;11脚是步进脉冲的输入端,9、10脚决定工作方式,其真值表如表2-1所示: 表2-1 9、10脚真值表 工作方式 9脚 10脚 双四拍 0 0 八拍 0 1 单四拍 1 0 禁止 1 1 2.4 LED显示电路 由于系统显示的内容比较简单,显示量不多,所以显示选用数码管既方便又经济。LED有共阴极和共阳极两种。如图2-4所示。 符号和引脚 共阴极 共阳极 图2-4 LED数码管结构原理图 二极管的阴极连接在一起,通常此共阴极接地,而共阳极则将二极管的阳极连接在一起,接入+5V的电压。一位显示器由8个发光二极管组成,其中7个发光二极管。当在某段发光二极管施加一定的正向电压时,该段笔画即亮;不加电压即暗。为了保护各段LED不被损坏,需外加限流电阻。 数码管显示器有两种工作方式,即静态显示方式和动态扫描显示方式。为节省端口及降低功耗,本系统采用动态扫描显示方式。本电路的“段控”和“位控”分别由P1口和P3口控制,P3选中哪个数码管,哪个数码管就亮,P1口控制显示数字。 因AT89C51单片机I/O口资源有限,必须对其Il0口进行扩展才能满足实现系统功能,如图2-7所示为用8155扩展1/0口的4个8位LED动态显示器,显示扫描由程控实现,其中PA口输出字型码,PC口输出位选信号即扫描信号,图中片选线CE和AT89C51的P2.7口相连,IO/ M选通输入线与P2.4口相连,该系统中当P2.7=0且P2.4 =1时,选中8155芯片内三个I/O口。相应的端口地址分配如表2-1: 表2-2 8155端口地址分配 图 2-5 显示电路 第3章 系统的软件设计 3.1 步进电机的位置控制 步进电机的运行控制涉及到位置控制和加、减速控制。步进电机的位置控制,指的是控制步进电机执行机构从一个位置精确地运行到另一个位置。步进电机的位置控制是步进电机的一大特点,它可以不用借助位置传感器而只需要的开环控制就能达到足够的位置精度。 步进电机的位置控制需要两个参数。 第一个是绝对位置,即步进电机控制的执行机构当前的位置参数,绝对位置是有极限的,其极限是执行机构运动的范围,超越了这个极限就应报警。 第二个是从当前位置移动到目标位置的距离,我们可以用折算的方式将这个 距离折算成步进电机的步数。这个参数是外界通过键盘或可调电位器旋钮输入的,所以折算的工作应该在键盘程序或A/D转换程序中完成。 下面是本程序使用的资源: 30H、31H------存放定时器的常熟,低位在前 32H~34H--------存放绝对位置参数,低位在前 35H、36H-------存放步进数,低位在前 中断服务子程序框图如图2-6所示。 图2-6 步进电机位置控制子程序框图 程序如下: POS: CPL P1.0 ;改变P1.0电平状态 PUSH ACC ;累加器A进栈 PUSH PSW PUSH R0 ;R0进栈 JNB P1.0,POS4 ;P1.0=0时,半个脉冲,转到POS4 CLR EA ;关中断 JNB P1.1,POS1 ;反转,转到POS1 MOV R0,32H ;正转 INC @R0 CJNE @R0,#00H,POSE ;无进位则转向POS2 INC R0 INC @R0 CJNE @R0,#00H,POS2 INC R0 INC @R0 CJNE @R0,#00H,POS2 ;无越界,则转POS2 CLR TR0 ;发生越界,停定时器(停电动机) LCALL BAOJING ;调报警子 POS1: MOV R0,#32H ;反转 DEC @R0 CJNE @R0,#0FFH,POS2 ;无借位则转向POS2 INC R0 DEC R0 CJNE @R0,#0FFH,POS2 INC R0 DEC @R0 CJNE @R0,0FFH,POS2 CLR TR0 LCALL BAOJING POS2: MOV R0,#35H ;指向步数低位35H DEC @R0 CJNE @R0,#0FFH,POS3IU9 INC R0 DEC @R0 POS3: SETB EA MOV A,35H ORL C JNZ POS4 CLR TR0 SJMP POS5 POS4: CLR C CLR TR0 MOV A,TL0 ADD A,#08H ADD A,,30H MOV TL0,A MOV A,TH0 ADDC A,31H MOV TH0,A SETB TR0 POS5: POP R0 POP PSW POP ACC RETI 3.2 显示子程序 硬件电路如图2-4所示,通过8155芯片来扩展I/O口,其端口地址分别是:命令/状态寄存器:7FF8H ,PA口:7FF9H,PB口:7FFAH,PC口:7FFBH。通过P1口控制数字显示,即“段选”,P3口控制“位选”。 ORG 0000H    ;初始化 START:JMP MAIN  ORG 30H MAIN:MOV SP,#5FH B_BIT EQU 34H    ;个位显示数据存储器 A_BIT EQU 35H     ;十位显示数据存储器 C_BIT  EQU 22H     ;百位显示数据存储器 D_BIT  EQU 23H     ;十位显示数据存储器 E_BIT  EQU 34H      ;万位显示数据存储器 Count  EQU r4      ;计数器数据存储器                 ACALL INIT_RS232;调用INIT_232子程序 CPL P0.0         ; P0.0亮表示正在设定串口 MOV R5,#25 ACALL DELAY CPL P0.0          ;P0.0暗表示设定完成 MOV P1,#0FFH MOV P2,#0FFH      WAIT:acall DIAPY;调用显示程序 JNB RI,WAIT;接收电脑发过来的数据  ClR RI    ;清RI,继续下次接收 LJMP WAIT DIAPY :MOVR1,SBUF把接收到的数据放到A里  MOV A,R1   MOV B,#100 DIV AB MVO 33H,A MOV A ,B MOV B,#10   DIV AB MOV B_BIT,B      ;提取百位 MOV A_BIT,A MOV DPTR,#TAB MOV R0,#5 DP11:MOVR1,#250 DPLOP:个位显示 MOV,A,B_BIT MOVC A,@A+DPTR ;提取字模 MOV P1,A CLR P2.2  ;开个位  ACALL DELAY1;调用扫描子程序 SETB P2.2     ;十位显示     MOV A,A_BIT] MOVC A,@A+DPTR ;提取字模 MOV P1,A CLR P2.3 ;开十位 ACALL DELAY1 SET P2.3     ;百位显示 MOV A,A_BIT MOVC A,@A+DPTR;提取字模 MOV P1,Amov p1,a  CLR P2.4 ;开百位  ACALL DELAY1 SETB P2.4 DJNZ R1,DPLOP DJNZ R0,DP11  RET INIT_RS232:                        ;rs232初始化设定 MOV TMOD,#20H           ;1200bs           MOV TH1,#0E8H                         SETB TR1           MOV SCON,#01010000B           RET DELAY1:                           MOV  R7,#2     D3:  MOV  R6,#25     D4:  DJNZ R6,D4     DJNZ R7,D3     RET   delay:  MOV R5,#20  D2:MOV R6,#50  D1:MOV R7,#250      DJNZ R7,$     DJNZ R6,D1     DJNZ R5,D2      RET TAB:    DB  0C0H,0f9H,0a4H,0b0h,99h ;"0","1","2","3","4"           DB  92H,82H,0f8H,80H,90h    ;"5","6","7","8","9'           DB  88H,83H,46H,0a1H,86h    ;"a","b","c","d" ,"e"           DB  8eh ;"F"   END 第四章 结 束 语 本次课程设计是在学习单片机课程后的一次实践,通过查阅大量书籍、专业网站、论坛等,通过反复对比,采用技术较为成熟以及仿真效果的电路。在软件设计方面,一部分参考文献的已成程序进行修改编写,一部分则是平时的经验积累。 应该说这次课程设计还是基本达到了设计的要求,但是也存在着未能解决的问题,由于在执行语音程序时对资源的消耗比较大,在语音报数的时候会中断步进电机驱动信号的输出,导致电机停转。为此,在参考有关文献之后我将尝试使用两块单片机,通过双机通讯来传递信号。 这次步进电机的综合实验我们学到了步进电机、数码管、4*4键盘、更重要的是学会了程序出问题时调试的方法,并养成了遇到困难主动独立寻找解决方案的信心和技巧。 第5章 参考文献 [1]谢自美,电子线路设计、实验、测试(第二版).华中理工大学出版社,2000. [2]薛钧义,张彦斌,樊波等《凌阳十六位单片机原理及应用》.北京航空航天大学出版社,2003 [3]王晓明,电动机的单片机控制.北京航空航天大学出版社,2002.5 [4]张鑫,单片机原理及应用.电子工业出版社,2005.8 [4][EB/01] http://www.sunplus.com [5][EB/02] http://www.21ic.com 7 AT89C51单片机 LED数码显示 步进电机转速、方向控制 键盘输入 A15 10 A9 PA3 2 14 PA7 PA5 16 PA6 15 A11 11 RST 12 PA4 1 A8 13 A10 9 PA1 3 PA2 4 PA0 6 RST 8 U1 UCN5804B R1 5R6 R2 5R6 L1 B82412A3220J000 L2 B82412A3220J000 L3 B82412A3220J000 L4 B82412A3220J000 D1 8EWS12S D2 8EWS12S D3 8EWS12S D4 8EWS12S + 2 8 v A12 A13 A14 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 A B C D E F G dp A B C D E F G dp A B C D E F G dp A B C D E F G dp A B C D E F G dp D 0 D 1 D 2 D3 D2 D1 D0 A B C D E F G H C O M A B C D E F G H C O M A B C D E F G H C O M A B C D E F G H C O M A0 2 A1 4 A2 6 A3 8 OE 1 Y0 18 Y1 16 Y2 14 Y3 12 U1:A 74LS240 NET=PA2 A0 11 A1 13 A2 15 A3 17 OE 19 Y0 9 Y1 7 Y2 5 Y3 3 U1:B 74LS240 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U2 AT89C51 NET=A11 D0 34 D1 33 D2 32 D3 31 D4 30 D5 29 D6 28 D7 27 RD 5 WR 36 A0 9 A1 8 RESET 35 CE 6 PA0 4 PA1 3 PA2 2 PA3 1 PA4 40 PA5 39 PA6 38 PA7 37 PB0 18 PB1 19 PB2 20 PB3 21 PB4 22 PB5 23 PB6 24 PB7 25 PC0 14 PC1 15 PC2 16 PC3 17 PC4 13 PC5 12 PC6 11 PC7 10 U3 8155 R1 5R6 R2 5R6 R3 5R6 R4 5R6 R5 5R6 R6 5R6 R7 5R6 R8 5R6 1 2 U4:A 7407 3 4 U4:B 7407 5 6 U4:C 7407 9 8 U4:D 7407 � PAGE 1
本文档为【基于单片机的步进电机控制系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_570315
暂无简介~
格式:doc
大小:604KB
软件:Word
页数:18
分类:互联网
上传时间:2018-09-07
浏览量:27