单片机控制步进电机 论文(汇编程序)(2020年8月).doc

上传人:xiang****la438 文档编号:141033121 上传时间:2020-08-03 格式:DOC 页数:22 大小:1.16MB
返回 下载 相关 举报
单片机控制步进电机 论文(汇编程序)(2020年8月).doc_第1页
第1页 / 共22页
单片机控制步进电机 论文(汇编程序)(2020年8月).doc_第2页
第2页 / 共22页
单片机控制步进电机 论文(汇编程序)(2020年8月).doc_第3页
第3页 / 共22页
单片机控制步进电机 论文(汇编程序)(2020年8月).doc_第4页
第4页 / 共22页
单片机控制步进电机 论文(汇编程序)(2020年8月).doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《单片机控制步进电机 论文(汇编程序)(2020年8月).doc》由会员分享,可在线阅读,更多相关《单片机控制步进电机 论文(汇编程序)(2020年8月).doc(22页珍藏版)》请在金锄头文库上搜索。

1、一 寸 光 阴 不 可 轻单片机原理与应用技术课程设计论文单片机控制步进电机 组 长: 组 员: 专业班级:电子信息工程1401班 学 期:XXXX-XXXX年第二学期 指导教师:东北农业大学电子信息工程系XXXX年06月 课程设计小组成员分工明细 姓 名负责课程设计内容(组长)负责绘制电路原理图 完成仿真 制作PPT(组员)查找相关资料 修改调试代码 修改论文(组员)查找相关资料 撰写论文 修改PPT目录 1摘要.11 设计任务要求22 设计方案23设计原理33.1步进电机工作原理33.2系统设计原理44 硬件设计55 软件设计66 Proteus仿真条件与仿真结果137 总结138参 考

2、文 献139附录.14 9.1系统完整仿真电路图14 9.2系统汇编语言程序源代码142摘要本次课程设计是通过单片机对步进电机进行控制,通过控制其步数实现对其步进角度的控制。我们采用了键盘扫描的方法判断其要转动的步数,并控制步进电机的转动及其转动方向。还采用了温度采集及报警模块防止其过热而产生损耗。通过Keil软件的程序编写及Protues软件的仿真,基本达到了课设的要求。 关键字:单片机 步进电机 步数 步进角度 键盘扫描 温度采集1.设计任务要求 采用单片机控制一个三相单三拍的步进电机工作。步进电机的旋转方向由正反转控制信号控制。步进电机的步数由键盘输入,可输入的步数分别为3、6、9、12

3、、15、18、21、24和27步,且键盘具有键盘锁功能,当键盘上锁时,步进电机不接受输入步数,也不会运转。只有当键盘锁打开并输入步数时,步进电机才开始工作。 电机运转的时候有正转和反转指示灯指示。 电机在运转过程中,如果过热,则电机停止运转,同时红色指示灯亮,同时警报响。 本题目的关键之处是:如何生成控制步进电机的脉冲序列。 2.设计方案 用单片机(AT89C51)为主芯片设计电路来控制四相步进电机以四相八拍方式工作。1.设两个按键,分别作开关键盘,左转、右转控制;2.设9个触电按键分别控制输入的步数为3、6、9、12、15、18、21、24和27步;3.设置三个发光二极管分别指示其旋转方向(

4、正转,反转)及温度报警。4.使用DS18B20温度传感器感测温度;5.使用ULNXXXXA芯片驱动步进电机工作。3.设计原理: 3.1步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图1是该四相反应式步进电机,图2是四相步进电机结构示意图。图1图2 开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用

5、,使转子转动,1、4号齿和C相绕组的磁极对齐。而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c所示:a. 单四拍 b. 双四拍c.八拍图2步进电机工作时序波形图3.2系统设计原理 该系统采用的芯片

6、有:DS18B20温度传感器、ULNXXXXA以及四相六线步进电机,并且步进电机在双八拍的方式下工作,步矩设置为5。步进电机的旋转方向由正反转控制信号控制。步进电机的步数由键盘输入,可通过独立键盘S1S9输入的步数分别为3、6、9、12、15、18、21、24和27步对应的角度为15、30、135,且键盘S10具有键盘锁功能,当键盘按键时,通过键盘S11选择运转方向并且输入步数时,步进电机才开始工作;否则,步进电机不接受输入步数,也不会运转。 电机运转的时候有正转指示灯D2和反转指示灯D3指示。 电机在运转过程中用温度传感器采集步进电机外表温度(可设置),如果过热,则电机停止运转,同时红色指示

7、灯亮,同时蜂鸣器警报响。4. 硬件设计4.1最小单片机系统 5V电源:给系统供电。复位电路:使AT89C51从程序存储器的0000H单元开始执行程序。晶振:给单片机运行提供时钟。EA接高电平:表示运行内部程序存储器下载的程序。P0口接排阻:P0口作为通用的I/O使用需加上拉电阻,这时为准双向口。4.2 键盘设计该电路中采用独立键盘工作方式,共设有11个按键,分别提供3、6、9、12、15、18、21、24、27布局选择功能、键盘锁功能以及步进电机转动方向选择功能。其中有程序决定起作用。4.3步进电机及其驱动电路 采用ULNXXXXA芯片为驱动电路驱动四相电机工作。芯片的四个引脚分别以逆时针方式

8、连接步进电机对应引脚。4.4温度监测及报警系统 使用DS18B20传感器感测温度,当温度高于预设温度时,发光二极管点亮,蜂鸣器报警。5软件设计软件设计采用汇编语言编写控制程序,主要由以下几个模块组成5.1主函数模块: 该模块重要功效是调动温度采集函数、步进电机函数中函数,实现模块化编程。5.2温度检测及报警模块:该模块的重要功效是对步进电机的外表采集温度,并且对已设定好的数值进行比较,从而确定机身温度是否过高,正常时电机正常转动,当温度过高时电机不再转动,并且蜂鸣器报警,红灯点亮。5.3键盘扫描模块:通过键盘扫描模块判断所要走步数,控制步进电机的开关,改变步进电机的转向。5.4步进电机驱动模块

9、:通过单片机的定时器,通过控制延时时间控制转速;在10ms过后执行中断程序,即使步进电机转动。各模块程序流程图如下: 步进电机驱动程序:否是是否是否步数为零停止定时器初始化步数减1步进电机转一步是否有步数按下是否达到10ms定时器开始计时 开始键盘扫描模块:否是否拍序数=7-当前拍序数等待拍序数不变是否改变转向是否按下开关键开始是步进电机转一步流程图: 开始反转正转或反转转正转基址取正转数组首地址,加拍序数即为要取数基址取反转数组首地址,加拍序数即为要取数将数值赋予P2步进电机转一步温度检测及报警模块:是否 结束将数据存入预设存储单元数据转换读取温度值发送跳ROM匹配指令判断DS18B20是否

10、存在系统初始化 开始否开始初始化程序否主函数模块流程图:报警、红灯亮、步进电机停判断步进电机温度是否高于31度 是 是否按键S10 是 确定输入步数确定正反转 电机转动6.仿真条件及结果:仿真条件:打开元器件单片机属性窗口,在“Program File”栏中添加上面编译好的目标代码文件“step.hex”。在“Clock Frequency”栏中输入晶振频率为11.0592MHz。仿真结果:按下S10,打开步进电机,每按下3,6,9,1227键,步进电机反转,转动-15,-30-135度角;当按下一次S11,步进电机正转,再按一次,步进电机反转,以此类推。当温度超过31度时,步进电机停止工作,

11、此时发光二极管变亮,蜂鸣器报警。7.总结:在做课程设计期间,我们得到了周修理老师的指导和原浩强同学的帮助,在此一并感谢。本次课程设计,不仅使我们了解并掌握了步进电机的用法,而且让我们对利用单片机实现控制功能有了更加深刻的理解。极大的锻炼了我们的能力,尤其是理论与实践相结合的能力。在未来电子信息行业的竞争中,我们只有尽早将理论应用于实践,才能更好地理解理论,才能由此不断创新,在竞争中拔得头筹。今后我们将会把精力更多地放在动手能力的培养上。我们还懂得了,做学问就要有实事求是的精神,哪怕减少生命的长度,也不能减少实事求是的态度。8.参考文献: 1.张毅刚编著,单片机原理及应用高等教育出版社,XXXX

12、。 2.郭天祥编著,新概念51单片机C语言教程,XXXX。9附录9.1 系统完整仿真电路图 9.2 系统汇编语言程序源代码 SPEED DATA 30H ;用于定时中断重载用,与PULS_TIME相反,越大定时越长,也即速度越小 PULS_TIME DATA 31H ;拍数周期,为零时将用speed重载PULS_TIME DISPSPEED DATA 32H ;显示用级数=15-SPEED,越大,转动速度越快 STEP DATA 33H PULS_ORDER DATA 34H ;拍序数 DISPBUFFER DATA 35H ;显示十位 S4_ON_TIME DATA 36H ;S4按下不放计数 MORTORPORT DATA P2 ;步进电机输出口 ORIENT BIT 00H ON_OFF BIT 01H ON_TIME3S BIT 02H ;按住超3s S1 BIT P0.1 ;启动/停止键 S2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号