




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华北水利水电学院步进电机控制系统设计目 录第一章 设计的目的和要求1.1课程设计目的31.2课程设计任务31.3课程设计要求3第二章 总体设计思路和方案2.1设计分工 42.2控制电机正/反向转42.3控制电机运转速度42.4控制电机转动角度4第三章 硬件设计3.1主控模块53.2按扭开关控制模块63.3驱动控制模块6第四章 软件设计74.1主程序及其流程图8第五章 系统调试5.1 WAVE调试控制程序95.2 Proteus仿真9第六章 三个方案的融合6.1最终方案的程序流程图及其主程序116.2设计中遇到的问题及解决方案12第七章 结束语13参考文献13附录一15附录二16第一章 设计的目的和要求1.1课程设计目的单片机使用基础课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合使用能力及单片机使用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。1.2课程设计任务根据给定的任务要求选择合适的单片机和其他电子元器件,进行系统硬件电路设计和软件编程,根据系统制作并调试系统电路板,使之实现任务要求。有关参数选择要求符合国家标准。具体设计内容如下:1. 模拟步进电机、模拟交通灯模块、模拟键盘输入及显示模块。2. 设计系统工作原理图,利用PROTEUS软件绘制系统工作原理图;3. 系统控制程序设计、调试及实现:(1)根据要求,写出完整的程序流程图;(2)将设计程序输入、汇编,排除语法错误,生成*.OBJ文件;(3)按所设计的原理图,在实验平台上连线,检查无误;(4)将目标文件传送到实验系统,执行并运行调试该程序,最终实现控制要求4. 写出设计说明书,说明书格式见附录,3000字左右1.3课程设计要求我选择课题的是课程设计模拟步进电机,以下为实现步进电机的基本功能:1. 能控制步进电机作正向和反向运转,要有正转和反转控制按钮;2. 要求随时可以在不断电源情况下可以暂停,有一个暂停按钮。3. 按钮实现步进电机快速,慢速控制,拍数变换控制。第二章 总体设计思路2.1设计分工为了实现不同功能控制,根据步进电机控制系统设计要求,我们三个人分了三种方案,每个人负责一种方案,自己负责的方案实现电机的正反转,暂停和加减速功能,最后三个人方案整合到一起以实现电动机既能正反转,又能变拍还能实现变速以及定速功能,现将自己负责的方案一陈述如下:对步进电动机的控制,在这里我把接口采用软件方法控制步进电动机的旋转。步进电动机的驱动脉冲由80C31单片机编程实现,并通过80C31芯片的A端口的P2.0,P2.1,P2.2,P2.3引脚出发,然后再驱动电动机的A、B、C、D四相。通过80C31芯片的P0口读取正/反转控制信号、暂停控制信号以及加速、减速控制信号的值,P1口用来读取按钮相对应的灯的状态。对步进电机简易控制系统的设计,其具体情况根据任务要求主要从以下几个方面来考虑:2.2控制电机正/反向转步进电动机有三相绕组A、B、C,D当某一项绕组通电时,在其内部形成N-S极,产生磁场,在磁场的作用下,转子将会转动,步进一步。在这里我们选择步进电机以四相八拍方式工作,若按AABBBCCCDDDAA次序通电为正转,则当按AADDDCCCBBBAA次序通电为反转。因而只要控制脉冲输出的顺序,就可实现对步进电动机正/反转的控制。2.3控制电机运转速度步进电动机运转的速度是由输入到A、B、C、D四相绕组的频率所决定的。当改变CP脉冲的周期时,ABCD四相绕组高低电平的宽度将发生变化,这就导至通电和断电时速率发生了变化,使电机转速改变,所以调节CP脉冲的周期就可以控制步进电机的运转速度。频率越高,电动机运转的速度越快,否则,速度就越慢。因而通过延时程序控制输出脉冲的频率,就可以实现对步进电动机转速的控制。2.4控制电机转动角度因为每输入一个CP脉冲使步进电机四相绕组状态变化一次,并相应地旋转一个角度,所以步进电机旋转的角度由输入的CP脉冲数确定。第三章 硬件设计步进电机简易控制系统设计包含了主控模块、驱动模块、按扭开关控制模块三个模块。其功能实现是首先利用按钮开关模块输入所要执行的任务,然后通过主控模块调用所对应的程序并把信息送给驱动模块,最后通过驱动模块驱动电机,使电机按照所按下的按钮命令来运转,从而实现步进电机简易控制系统设计的功能。其硬件总电路图如附录一所示。3.1主控模块主控模块采用的是AT80C31单片机芯片来控制。80C31是一个8位单片机,晶振时钟为12MHz。80C31是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。第31引脚需要接高电位使单片机选用内部程序存储器;P0口的引脚39到引脚35分别接暂停按钮、正转按钮、反转按钮、加速按钮、减速按钮、快速按钮、慢速按钮、双四拍按钮、单双八拍按钮等;引脚21到引脚24分别接芯片LN2004A的1、2、3、4引脚;引脚12接中断电路的和门;芯片图如右图所示。 3.2按扭开关控制模块按扭开关控制模块有五个按钮,暂停按钮、正转按钮、反转按钮、加速按钮和减速按钮,它们分别控制电机的随时暂停、反向转动、正向转动、加速和减速。如上图所示。STOP暂停按钮接一端单片机80C31的P0.0(引脚39),正向转动按钮一端接单片机80C31的P0.1(引脚38),反向转动按钮一端接单片机80C31的P0.2(引脚37),加速按钮一端接单片机80C31的P0.3(引脚36),减速按钮一端接单片机80C31的P0.4(引脚35),同时都通过一个上拉电阻接高电平+5V。他们的另一端都接地。当按下其中任意一个键时,它就和地直接相连。即为低电平产生中断,其中和门U4:A和中断入口80C31的INT0 (引脚12)相接。3.3驱动控制模块 驱动电路主要是利用ULN2004A芯片来驱动电机。ULN2004A的原理是ULN2004A是一个7路反向器电路,即当输入端为高电平时ULN2004A输出端为低电平,当输入端为低电平时ULN2004A输出端为高电平,继电器得电吸合。如下图5所示。ULN2004A的引脚1、2、3、4分别接单片机80C31的P2.0、P2.1、P2.2、P2.3;ULN2004A的1C引脚、2C引脚、3C引脚、4C引脚分别接电机的引脚A、B、C、D相;COM(引脚9)接电机公共端并和高电平+12V相接。第四章 软件设计4.1主程序主程序的源程序见附录二源程序清单表,主程序设计流程图如下图6所示:SS=1AS=1NO=1FAN=1ZHENG=1开 始单双八拍工作方式置初值清零各个标志位,速度改变寄存器R5置初值50,允许中断调用中断子程序等待中断正转反转暂停暂停正转反转加速减速NO=1ZHENG=1FAN=1图6第五章 系统调试5.1 WAVE调试控制程序调试程序具体步骤如下:(1)打开WAVE编译软件。(2)新建一个项目,在项目里进行设置,转换成HEX文件。(3)将刚写好的 汇编语言程序添加进去。(4)点击编译生成后缀名为“. HEX”的文件。5.2 Proteus仿真打开 Proteus 上的单片机控制步进电机电路图,点击80C31单片机,调用后缀名为.”HEX”的文件。点击运行,观察现象。当按下Proteus软件上的开始按钮时,电机不转动。其显示如图7所示:图七 暂停转动图当按下正转按钮时,电机则正向转动,电机转动一段时间后的显示图如图8所示:图八 正向转动图当按下反转按钮时,电机开始反向转动,电机上显示的是转过的角度。下面是当电机反向转动一段时间后的显示图如图九所示:图九 反向转动图当按下按钮加速或减速时,电机相应的做加速转动或减速转动,但加速或减速到一定范围是则不能再加速或减速了。任意时刻按下暂停按钮,电机就停止转动。当再次按下按钮正转或反转按钮时电机又重新开始工作。第六章 三个方案的融合6.1最终方案的程序流程图及其主程序方案一二三融合之后综合方案主程序的源程序见附录二源程序清单表,其程序设计流程图如下图所示:SHDA=1开始单双八拍数据赋初值状态标志位清零中断总允许 外中断允许 脉冲触发 等待中断正转ZHENG=1反转FAN=1暂停暂停正转反转双四拍单双八拍中断NO=1NO=1ZHENG=1FAN=1SHUANG=1快速慢速KUAIMAN6.2设计中遇到的问题及解决方案1.在用protues绘制原理图时P1口在连接LED灯时由于80C31的电压为5V,灯的导通电压为2V,保护电阻为10K,加载完程序后灯不亮,采用AC VOLTMETER测试LED灯的电压只有1.9V不足以导通,解决办法:把保护电阻改为0.1K,之后LED灯正常发光。2.在写程序时,我用 P2口输出电动机的四相A、B、C、D的值。单双八拍的工作方式初值使用R0调用,但是在进入正反转程序时由于未加CJNE A,#18H,GO2 MOV R0,#10H判别指令(MOV 17H,#09H初值只到17H)所以当一次循环之后便没有脉冲送给电动机所以导致电动机运行一周后停止,解决办法:加上判别指令,使电动机循环运转。3. 指示灯显示在操作按钮时,刚开始我提出的是循环点亮,即直接在MOV P2,R0 指令后面加上MOV P1,R0指令就可以实现在P1口的LED灯的显示从而 由灯的点亮方向和速度显示工作状态,但是考虑到试验箱的实际问题,灯的点亮速度过快,不能精确显示准确运行情况。解决方法是和同组人员商量后在中断时软件作如下处理,即可实现各个运行情况单个指示灯点亮指示。如当按下正转按钮时,相应正传指示灯亮,若在此时再按下快速按钮时,正传指示灯和快速指示灯同时点亮,这可以预定目的。共 22 页 - 11 -华北水利水电学院步进电机控制系统设计STOP: SETB NO SETB p1.0 clr p1.1 clr p1.2 clr p1.3 clr p1.4 RET ;P1口暂停灯亮FOR: SETB ZHENG SETB p1.1 clr p1.0 clr p1.2 RET ; P1口正转灯亮REV: SETB FAN SETB p1.2 clr p1.1 clr p1.0 RET ; P1口反转灯亮ADDSPEED:SETB AS SETB p1.3 clr p1.0 clr p1.4 RET ; P1口加速灯亮SUBSPEED:SETB SS SETB p1.4 clr p1.3 clr p1.0 RET ; P1 口减速灯亮共 22 页 - 20 -第七章 结束语设计过程心得:这次单片机课程设计,使我对步进电机的控制有了更深的了解,熟练掌握了WAVE6000、Proteus软件。更让我体会到了理论和实践相结合的重要性,一段程序不断地被补充修改,最后完成后的喜悦以及暂时喜悦之后又由于实际情况的限制而被毙掉的失落让我不仅得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。也使我明白了许多生活中的道理,磨练了自己的心智.总之使我在在各个方面都有了很大提高步.2.在设计步进电机控制中也使自己对单片机知识有了更大的了解,比如说MCS-51系列的各个特点,对于单片机的指令也有了更深一步的理解比如说对于设计过程中的正反转等标志位的置一指令SETB而不能用MOV,#01指令。3.其实在设计程序时还遇到很多问题,不过再设计的同时,同组的队员给了自己很大的帮助,有时一句话的探讨就给了自己很大的灵感,比如说在电机正反转时怎样才能继续判断加减速或者其他功能。同组队员的一句把判别中断指令作为一个单独模块使用,让自己实现了预期的效果。通过综合方案的设计,认识到了模块化编程的重要性,并且还要大家团结合作,互相探讨,吸取优点,互补不足,这才能把事情做的更加出色。团队就是一个拳头,拥有自己达不到的力量。虽然最后我们没能在试验箱中进行演示但是我想在演示中肯定也会出现不同的问题,在这次设计中也表现出来了自己很多不足的地方,比方说设计思路缺少逻辑性,专业知识也有许多不足,不过自己会继续努力的,争取更大的进步。最后,我要感谢在此次课程设计中帮助过我的老师和同学。是他们无私的帮助才使我顺利的完成了本次课程设计。参考文献1 陈伯阳. 单片机原理及使用实验指导书. 自编实验指导书,配合实验平台进行2 李朝青. 单片机原理及接口技术(第3版)北京: 北航出版社, 20063 赵亮, 候国锐. 单片机C语言编程和实例. 北京: 人民邮电出版社, 20034 沙占友, 王彦朋, 孟志永. 单片机外围电路设计.北京: 电子工业出版社, 20035 孙函芳. INTEL 16位单片机.北京:北京航空航天大学出版社,19966 王福瑞. 单片微机测试系统设计大全.北京:北京航空航天大学出版社,1997附录一综合方案原理图附录二: 子方案主程序ZHENG EQU 30H ;电动机正转开关FAN EQU 31H ;电动机反向开关 NO EQU 32H; 暂停标志位 AS EQU 33H; 加速标志位 SS EQU 34H; 减速标志位 ORG 00H AJMP MAIN ORG 03H AJMP SUB_INT0 ;中断入口 ORG 30HMAIN: MOV 10H,#01H MOV 11H,#03H MOV 12H,#02H MOV 13H,#06H MOV 14H,#04H MOV 15H,#0CH MOV 16H,#08H MOV 17H,#09H MOV 20H,#50 MOV 21H,#25 MOV 22H,#10 MOV 23H,#05 CLR ZHENG CLR FAN CLR NO CLR AS CLR SS MOV R1,#20H MOV A,R1 MOV R5,A MOV IE,#10000001B ;允许EX0中断 SETB IT0 MOV R0,#0FHLOOP: JNB ZHENG,LP CALL GO LP: JNB FAN,LOOP CALL BACK AJMP LOOP;(中断)SUB_INT0:SCAN: MOV A,P0 CPL A ANL A,#00011111B JNZ SCAN1 AJMP SCANSCAN1: CALL DELAY1 ;调用延时程序 MOV A,P0 CPL A ANL A,#00011111B JZ SCAN CALL RDKEY ;调用按键程序 RETIRDKEY: MOV A,P0 JNB ACC.0,STOP ; 判断是否按暂停键 JNB ACC.2,REV ; 判断是否按正转键 JNB ACC.1,FOR ; 判断是否按反转键 JNB ACC.3,ADDSPEED ; 判断是否按加速键 JNB ACC.4,SUBSPEED ; 判断是否按减速键STOP: SETB NO SETB p1.0 clr p1.1 clr p1.2 clr p1.3 clr p1.4 RET ; P1口暂停灯亮FOR: SETB ZHENG SETB p1.1 clr p1.0 clr p1.2 RET ; P1口正转灯亮REV: SETB FAN SETB p1.2 clr p1.1 clr p1.0 RET ; P1口反转灯亮ADDSPEED:SETB AS SETB p1.3 clr p1.0 clr p1.4 RET ; P1口加速灯亮SUBSPEED:SETB SS SETB p1.4 clr p1.3 clr p1.0 RET ;P1 口减速灯亮;(正转)GO: CLR ZHENG CLR FAN CLR NO CLR AS CLR SS INC R0 MOV A,R0 CJNE A,#18H,GO2 MOV R0,#10HGO2: MOV P2,R0 ;P2口输出 MOV A,R1 MOV R5,A CALL DELAY JB NO,RETURN JB ZHENG,RETURN JB FAN,RETURN JNB SS,GO3 CALL JIANGO3: JNB AS,GO4 CALL JIAGO4: AJMP GO;(反转)BACK: CLR ZHENG CLR FAN CLR NO CLR AS CLR SS DEC R0 MOV A,R0 CJNE A,#0EH,TT MOV R0,#17H SJMP BACK2 TT: CJNE A,#0FH,BACK2 MOV R0,#17HBACK2: MOV P2,R0 MOV A,R1 MOV R5,A CALL DELAY JB NO,RETURN JB ZHENG,RETURN JB FAN,RETURN JNB AS,BACK3 CALL JIABACK3: JNB SS,BACK4 CALL JIANBACK4: AJMP BACK;(加速)JIA: MOV A,R1 CJNE A,#23H,JIA1 RET ;加速达到速度最大值时R5的值为05JIA1: INC R1 RET; (减速)JIAN: MOV A,R1 CJNE A,#20H,JIAN1 ;减速达到速度最小值时R5的值为50 RETJIAN1: DEC R1 RETRETURN:RET; (延时)DELAY: D1: MOV R6,#50 D2: MOV R7,#150 D3: DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RETDELAY1: MOV R6,#60 D4: MOV R7,#100 DJNZ R7,$ DJNZ R6,D4 RET最终主程序:ZHENG EQU 30H ; 正转动作开关 FAN EQU 31H ; 反转动作开关 NO EQU 32H ;暂停动作开关 SHUANG EQU 33H ;双四拍开关 SHDA EQU 34H ;单双八拍开关 KUAI EQU 35H ;快速控制开关 MAN EQU 36H ;慢速控制开关 ORG 00H AJMP MAIN ORG 03H ;中断入口 AJMP SUB_INT0 ORG 30HMAIN: MOV 10H,#01H MOV 11H,#02H MOV 12H,#04H MOV 13H,#08H CLR ZHENG CLR FAN CLR NO CLR SHUANG CLR SHDA CLR KUAI CLR MAN MOV IE,#10000001B;中断总允许 SETB IT0 ;脉冲触发 MOV 20H,#50 MOV 21H,#5 MOV 22H,#25 MOV R1,#20H MOV R0,#0FHLOOP: JNB ZHENG,LP CALL GO LP: JNB FAN,LOOP CALL BACK AJMP LOOP;(中断)SUB_INT0:SCAN: MOV A,P0 CPL A ANL A,#01111111B JNZ SCAN1 AJMP SCANSCAN1: CALL DELAY1 ;调用延时程序 MOV A,P0 ;P0输入 CPL A ANL A,#01111111B JZ SCAN ;判断是否按键 CALL RDKEY ;调用按键程序 RETI ;返回中断入口RDKEY: MOV A,P0 JNB ACC.0,STOP ;是否按暂停键 JNB ACC.2,REV ;是否按反转键 JNB ACC.1,FOR ;是否按正转键 JNB ACC.3,KK ;是否按双四拍键 JNB ACC.4,MM ;是否按单双八拍键 JNB ACC.5,ZZ ;是否按快速键 JNB ACC.6,PP ;是否按慢速键STOP: SETB NO SETB p1.0 ;指示灯控制 clr p1.1 clr p1.2 clr p1.3 clr p1.4 clr p1.5 clr p1.6 RETFOR: SETB ZHENG SETB p1.1 clr p1.0 clr p1.2 RETREV: SETB FAN SETB P1.2 CLR P1.0 CLR P1.1 RETKK: SETB SHUANG SETB P1.3 CLR P1.0 CLR P1.4 RETMM: SETB SHDA SETB P1.4 CLR P1.0 CLR P1.3 RETZZ: SETB KUAI SETB P1.5 CLR P1.0 CLR P1.6 RETPP:SETB MAN SETB P1.6 CLR P1.0 CLR P1.5 RET; (正转)GO: CLR ZHENG CLR FAN CLR NO CLR SHUANG CLR SHDA CLR KUAI CLR MAN INC R0 MOV A,R0 CJNE A,#14H,GO1 MOV R0,#10H AJMP GO2GO1: CJNE A,#1FH,GO2 MOV R0,#17HGO2: MOV P2,R0 ;P2口输出 MOV A,R1 MOV R5,A CALL DELAY JB NO,RETURN JB ZHENG,RETURN JB FAN,RETURN JNB SHUANG,GO3CALL SHUANGPA ;调用双四拍程序GO3: JNB SHDA,GO4CALL SHUANGDANPA;调用单双八拍程序GO4: JNB KUAI,GO5 CALL KUAISU ;调用快速程序 GO5: JNB MAN,GO6 CALL MANSU ;调用慢速程序 GO6: AJMP GO;(反转)BACK: CLR ZHENG CLR FAN CLR NO CLR SHUANG CLR SHDA CLR KUAI CLR MAN DEC R0 MOV A,R0 CJNE A,#0EH,TT MOV R0,#13H SJMP BACK2 TT: CJNE A,#0FH,AA MOV R0,#13H SJMP BACK2AA:CJNE A,#15H,BB MOV R0,#1EH SJMP BACK2BB:CJNE A,#16H,BACK2 MOV R0,#1EHBACK2: MOV P2,R0 MOV A,R1 MOV R5,A CALL DELAY JB NO,RETURN JB ZHENG,RETURN JB FAN,RETURN JNB SHUANG,BACK3 CALL SHUANGPABACK3: JNB SHDA,BACK4 CALL SHUANGDANPA BACK4: JNB KUAI,BACK5 CALL KUAISU BACK5: JNB MAN,BACK6 C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制冷工程师考试题及答案
- 第一单元《华夏古韵》-楚商 说课稿 2024-2025学年人教版初中音乐八年级下册
- 幼儿安全培训心得总结课件
- 网络安全培训会课件策划
- 保险财务培训课件
- 幼儿园教学教案设计:不玩针线
- 美工区填色活动方案
- 福州音乐讲堂活动方案
- 端午滑雪活动方案
- 幼儿园门岗安全培训课件
- 公证与婚姻家庭事务
- 产业园区运营模式(课件)
- 信息可视化设计全套教学课件
- 口腔粘膜病课件
- 关于PedSQL-4.0儿童生存质量测定量表调查
- 年产62万吨甲醇制烯烃(MTO)项目初步设计说明书
- 联通创新人才认证(解决方案)考试题库(附答案)
- ICU患者的早期活动
- 出纳课件 转账支票pptx
- TSZUAVIA 009.11-2019 多旋翼无人机系统实验室环境试验方法 第11部分:淋雨试验
- ps6000自动化系统用户操作及问题处理培训
评论
0/150
提交评论