1、电机方案设计书实验步进电机控制实验步进电机控制实验 班级:电气082姓名:姜水龙 摘要:本设计基于ATS80C51单片机对步进电机进行控制,通过使用I/O口输出具有一定时序的方波作为步进电机的控制信号,控制信号通过控制全双桥芯片L298驱动步进电机,在单片机的P1口用四个LED来作为正反转,加速,减速的标志。用独立连接式非编码键盘码键盘来对电机的状态进行控制。 关键词:步进电机单片机AT89S51 发光二极管 1.引言: 步进电机是一种将电脉冲信号变换成相应的角位移或直线位移的机电执行元件。控制步进电机的输入脉冲数量、频率及电机各项绕组的接通顺序,可以得到各种需要的特性。尤其与数字设备配套时,
2、体现了更大的优越性,因此广泛应用于数字控制系统中。 本文介绍已实现的单片机对步进电机的数字控制系统,控制器担负着生产脉冲及发送,接受控制命令的任务。本设计对步进电机的驱动电路,显示电路以及键盘控制电路做了详细的介绍。 2总体设计方案 .2.1设计思路 2.1.1:使用按钮开关控制步进电机的正反转以及加速减速 因要求实现用单片机控制四相步进机的正反转以及加速减速,有很多的方法能完成这样的任务,但为了能更加方便的控制步进电机正反转以及加速减速,因此在单片机的管脚上分别接了正反转按钮,正转加速减速按钮,反转加速减速按钮以及复位按钮,当给电路通电后,就可以通过按这些按钮来实现要求的各种要求以及所要表达
3、的信息。 2.1.2:使用L298芯片来驱动步进电机。 L298是一种高电压、大电流电机驱动芯片。采用标准逻辑电平信号控制具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作,可以外接检测电阻,将变化量反馈给控制电路。使用L298芯片驱动电机,该芯片可以驱动两个二相电机,也可以驱动一个四相电机,可以直接通过电源 口提供信号,而且电路简单,使用比较方便。I/O来调节输出电压,并可以直接用单片机的 设计方框图2.2 1所示总体设计方框图如图 状态指示电路 按键控制电路 复位电路 AT89S51 L298驱进步 电源及时钟 机动电路
4、电 图1 总体设计方案框图3.设计原理分析 3.1步进电机 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原理作用如下: (1)控制换相序 通电换相这一
5、过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。 (2)控制步进电机的转向 如果给定工作方式正序换相通电,步进电机就会正向转动,如果按反序通电换相,则电机就会反向转动。 (3)控制步进电机的速度 如果给步进电机发一个控制脉冲,它就转一步,再发一个,它会再转一步。两个脉冲的间隔越短,步进电机就转的越快。调整单片机发出的脉冲的频率,就可以对步进电机进行调速。 3.2 按键电路设计 本设计采用的独立式非编码键盘控制步进电机。共有6个按钮,其中S2为电机正转按钮、S3为电机反转按钮,S4为正转加速按钮,
6、S5为电机正转减速按钮,S6为电机反转加速按钮,S7为电机反转减速按钮。当按下各个按钮时,会执行各个键的功能,当按下复位按钮时,电路会恢复到初始状态。其原理图如图2所示 按键控制电路2 图 3.3时钟震荡电路和复位电路设计 时钟震荡电路由一个12M的晶震和两个30PF的电容组成。复位电路有一个复位按钮,两个电阻,一个带有极性的电容做成,复位方式为手动复位。当按下复位按钮的时间超过两个机器周期,才起到复位作用。其原理理理如图3所示 图3时钟震荡电路和复位电路 3.4正反转,加速,减速标志电路设计 本电路采用的是四个发光二极管来显示,分别为D1,D2,D3,D4。当电机正转时D1发光;当电机反转时
7、D2发光;正转加速时D1,D3发光;正转减速时D1,D4;反转加速时D2,D3发光;反转减速时D2,D4发光。其原理图如图4所示 图4正反转,加减速显示电路 3.5 步进电机驱动电路设计 本设计采用的是L298对步进电机进行驱动L298N为双全桥步进电机专用驱动芯片,内部包含4信道逻辑驱动电路,是一种二相?和四相步进电机的专用驱动器,可同时驱动2个二相或1个四相步进电机,内含二个H-Bridge的高电压、大电流双全桥式驱动器,接收标准?TTL 以下的步进电机,且可以直接透过电源来调节输出电压,2A、46V逻辑准位信号,可驱动 图5步进电机驱动电路 3.6步进电机时序表和时序图 步进电机时序表和
8、时序图分别如表1和图6 表1单四拍控制表 步序 控制位 工作状态 A C D B A 1 1 1 1 0 B 1 0 1 2 1 C 1 1 0 1 3 D 1 4 0 1 1 程序流程图4. 程序开始执行 调用正转指P0.0是否为0 示和正转程0 序 1e 调用反转指P0.1是否为1 0 示和反转程序 1e调用正转加0 1 P0.2是否为 速指示和101P0.是否 加01P0.是否 1是否P0.50 返回开始程程序结束 结束语5.本设计主要是体现了单片机在控制步进电机方面的应用。通过这次的课程设计使我在各个方面都有了很大的提高。首先,对步进电机的工作原理有了一定的了解,同时在设计的过程中使我
9、感觉到整体电路的综合调试是非常重要的,仿真正确在实际电路中却有可能不能实现。再次要考虑到单片机不能直接控制步进电机,必须根据步进电机功率的大小合理的选择功率驱动器件。同时在含有多位数码管显示的系统中,用到的口线较多,采用串并转换的方式可以节省口线,可以节省很多的单片机资源。还有就是编程,学习中,小程序可以很快的编出来,通过这次实习,一次系统的编程所需要考虑到的问题,是我这次实习中的一个很大的收获。总之,通过这次实习,我学到了很多的知识,同时也找到了一些问题。这将为我以后的学习起到很大的帮助。感谢我的室友们,有你们在行动和思想上的支持和鼓励,才使得我这次毕业设计能顺利完成。感谢此次指导我完成这篇
10、论文的老师,正因为有你们的指导和修改才有我这篇论文的完成。感谢我的母校河南科技学院,尤其是机电专业所有的老师们,在这片净土读书三载,无形中塑造了我生命的气质、生活的方式,也练就了我乐观的心态和一颗感恩的心,没有你们悉心的指导和讲解,我不可能完成此次设计 参考文献 1 肖洪兵. 跟我学用单片机. 北京:北京航空航天大学出版社,2002.8 2何立民. 单片机高级教程第1版北京:北京航空航天大学出版社,2001 3 赵晓安. MCS-51单片机原理及应用. 天津:天津大学出版社,2001.3 4 李广第单片机基础第1版北京:北京航空航天大学出版社,1999 5 徐惠民、安德宁单片微型计算机原理接口
11、与应用第1版北京:北京邮电大学出版社,1996 6 何立民从Cygnal 80C51F看8位单片机发展之路单片机与嵌入式系统应用,2002年,第5期:P58 7夏继强. 单片机实验与实践教程. 北京:北京航空航天大学出版社, 2001 8陈志强胡辉. 单片机应用系统设计实践指南. 自编教材 9 肖洪兵. 单片机应用技术. 自编教材 10 肖洪兵高茂科. CAI课件自主开发 11 李朝青单片机原理及接口技术(第三版)北京:北京航空航天大学出版社2005 附录1 附录2 START1: MOV P2,#0FFH 。程序开始执行JNB P0.0,Z10 JNB P0.1,F10 JNB P0.2,Z
12、A10 JNB P0.3,ZS10 JNB P0.4,FA10 JNB P0.5,FS10 AJMP START1 LJMP ZZ Z10: F10: LJMP FZ LJMP ZA ZA10: LJMP ZS ZS10: LJMP FA FA10: LJMP FS FS10: LCALL DELAY ZZ: 。防止按键抖动延迟 JNB P0.0,$ LCALL DELAY ZX: MOV P1,#0EFH 。正转显示指示 MOV R0,#00H MOV A,R0 。正转程序调用 ZZ1: MOV DPTR,#TABLE MOVC A,A+DPTR JZ ZX MOV P2,A JNB P0.
13、1,F10 JNB P0.2,ZA10 JNB P0.3,ZS10 JNB P0.4,FA10 JNB P0.5,FS10 LCALL DELAY1 INC R0 LJMP ZZ1 RET 。按键去抖动FZ: LCALL DELAY JNB P0.1,$ LCALL DELAY FX: MOV P1,#0DFH 。反转指示显示MOV R0,#05H 。反转程序调用 FZ1: MOV A,R0 MOV DPTR,#TABLE MOVC A,A+DPTR JZ FX MOV P2,A JNB P0.0,Z10 JNB P0.2,ZA10 JNB P0.3,ZS10 JNB P0.4,FA10 JN
14、B P0.5,FS10 LCALL DELAY1 INC R0 LJMP FZ1 RET LCALL DELAY 。按键去抖动ZA: JNB P0.2,$ LCALL DELAY ZAX: MOV P1,#0AFH 。正转加速指示显示 MOV R0,#00H ZA1: MOV A,R0 。正转程序调用 MOV DPTR,#TABLE MOVC A,A+DPTR JZ ZAX MOV P2,A JNB P0.0,ZZ JNB P0.1,FZ JNB P0.3,ZS JNB P0.4,FA JNB P0.5,FS20 LCALL DELAY2 INC R0 LJMP ZA1 RET ZS: LCA
15、LL DELAY 。按键去抖动 JNB P0.3,$ LCALL DELAY 。正转减速指示显示 ZSX: MOV P1,#6FH MOV R0,#00H ZS1: MOV A,R0 。正转减速程序调用MOV DPTR,#TABLE MOVC A,A+DPTR JZ ZSX MOV P2,A JNB P0.0,Z20 JNB P0.1,F20 JNB P0.2,ZA20 JNB P0.4,FA20 JNB P0.5,FS20 LCALL DELAY3 INC R0 LJMP ZS1 RET Z20:LJMP ZZ F20:LJMP FZ ZA20:LJMP ZA ZS20:LJMP ZS FA
16、20:LJMP FA FS20:LJMP FS FA: LCALL DELAY 。按键去抖动 JNB P0.4,$ LCALL DELAY FAX: MOV P1,#09FH 。反转加速指示显示 MOV R0,#05H FA1: MOV A,R0 。反转加速 MOV DPTR,#TABLE MOVC A,A+DPTR JZ FAX MOV P2,A JNB P0.0,Z20 JNB P0.1,F20 JNB P0.2,ZA20 JNB P0.3,ZS20 JNB P0.5,FS20 LCALLDELAY2 INC R0 LJMP FA1 RET FS: LCALL DELAY 。按键去抖动 J
17、NB P0.5,$ LCALL DELAY 。反转减速指示显示 FSX: MOV P1,#5FH MOV R0,#05H 。反转程序调用 FS1: MOV A,R0 MOV DPTR,#TABLE MOVC A,A+DPTR JZ FSX MOV P2,A JNB P0.0,Z20 JNB P0.1,F20 JNB P0.2,ZA20 JNB P0.3,ZS20 JNB P0.4,FA20 LCALL DELAY3 INC R0 LJMP FS1 RET 。 抖动延迟MOV R1,#20 DELAY: MOV R2,#255 D1: DJNZ R2,$ DJNZ R1,D1 RET DELAY
18、1: MOV R7,#68 。正反转延迟 D2: MOV R6,#255 D3: MOV R5,#10 DJNZ R5,$ DJNZ R6,D3 DJNZ R7,D2 RET DELAY2: MOV R7,#34 。正反转加速延迟 D4: MOV R6,#255 D5: MOV R5,#10 DJNZ R5,$ DJNZ R6,D5 DJNZ R7,D4 RET DELAY3: MOV R7,#104 。正反转减速延迟 D6: MOV R6,#255 D7: MOV R5,#10 DJNZ R5,$ DJNZ R6,D7 DJNZ R7,D6 RET TABLE:DB 0FEH,0FDH,0FBH,0F7H,00 。控制相序通电情况的查表指令调用 DB 0FEH,0F7H,0FBH,0FDH,00 END 。程序结束
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1