单片机两种方式控制步进电机旋转
更新时间:2024-06-20 09:43:01 阅读量: 综合文库 文档下载
单片机课程设计说明书
设计题目 两种方式控制步进电机控制
指导教师: 设计者:
系 别: 机械工程学院 班 级: 学 号:
1
目 录
序言??????????????????????????3 一、步进电机介绍????????????????????4 1.1步进电机的概念?????????????????4 1.1步进电机的特点?????????????????4 二、设计要求及任务???????????????????6 三、设计目的及原理???????????????????6 3.1设计目的?????????????????????6 3.2设计原理?????????????????????6 3.3步进电机工作原理?????????????????7 四、所需设备??????????????????????8 五、设计思路??????????????????????8 5.1提出方案?????????????????????8 5.2方案论证?????????????????????9 六、调试程序??????????????????????10 七、设计程序??????????????????????15 八、总结????????????????????????18 九、参考文献??????????????????????19
2
序 言
单片机技术是计算机技术发展的一个重要分支。由于单片机具有集成度高、体积小、可靠性高、价格便宜等特点,在机电一体化、工业控制、仪器仪表、家用电器、信息和通信产品、军事装备等领域均得到了广泛的应用。而步进电机就是其中的一小部分。
步进电机是把电脉冲信号变换成角位移以控制转子转动的微特电机。在自动控制装置中作为执行元件。每输入一个脉冲信号,步进电动机前进一步,故又称脉冲电动机。步进电动机多用于数字式计算机的外部设备,以及打印机、绘图机和磁盘等装置。 步进电动机的驱动电源由变频脉冲信号源、脉冲分配器及脉冲放大器组成,由此驱动电源向电机绕组提供脉冲电流。步进电动机的运行性能决定于电机与驱动电源间的良好配合。主要用于数字控制系统中,精度高,运行可靠。如采用位置检测和速度反馈,亦可实现闭环控制。步进电动机已广泛地应用于数字控制系统中,如数模转换装置、数控机床、计算机外围设备、自动记录仪、钟表等之中,另外在工业自动化生产线、印刷设备等中亦有应用。
3
第一章 设计要求及任务
用P1.0-P1.3口控制一台步进电机,用两种方法实现单双八拍控制。晶振频率12Mhz
第二章 所需设备
1、电脑一台
2、52单片机开发系统一块 3、步进电机一个
4、 usb转串口线,电源线
第三章 设计思路
5.1 提出方案
方案一:电机的运转一般由脉冲信号和方向信号来控制的,脉冲的频率控制电机的转速,脉冲的个数控制电机的转角,用单片机控制步进电机,可以用一个输出口发送脉冲:高电平->延时->低电平->延时->......延时的长短控制脉冲的频率,电平的转换次数就是脉冲个数。
因为步进电机的控制室通过脉冲信号来控制的,经电脉冲信号转变为角位移或线位移的开环控制元件,所以怎样产生这个脉冲信
4
号和产生怎样的脉冲信号是电机控制的关键。
5.2 方案论证
用单片机来产生着个脉冲信号,通过单片机的P1口输出脉冲信号,因为所选电机是四相的,所以只需要P1口的低四位P1.0~P1.3分别接到电机的四根电线上。调试好程序之后转盘转动。
单片机的引脚功能: 1)VCC(40):电源+5V。
2)VSS(20):接地,也就是GND。 3)XTL1(19)和XTL2(18):振荡电路。 4)PSEN(29):片外ROM选通信号,低电平有效。
5)ALE/PROG(30):地址锁存信号输出端/EPROM编程脉冲输入端。 6)RST/VPD(9):复位信号输入端/备用电源输入端。
7)EA/VPP(31):内/外部ROM选择 端 8)P09.P1I/0口。 9)P2口。
口
(21-28):准双向I/0
口口
(39-32):双向I/O口。(1-8):准双向通用
5
步进电机驱动和单片机连线图
第四章 调试程序
1、打开Keil软件,建立一个新工程,单机【Project】在下拉菜单中找到【New project...】选项,如图1所示
图1 建立新的工程组
2、选择工程要保存的路径,并且输入工程文件名。Keil的一个工程里通常含有很多小文件,为了方便管理,一般将一个工程放在一个独立的文件夹下,并且给文件命名,如图2所示。
6
图2 定义工程文件名
3、单击保存后会弹出一个对话框,要求选择单片机的机型,可以根据使用的单片机来选择。Keil C51几乎支持所有的51内核的单片机,在这里选择Atmel的AT89C52,如下图所示,选择后单机保存,如图3所示。
图3 选择单片机的型号
4、完成上一步骤后,窗口界面如图4所示。
7
图4 工程组界面
到此为止,还没建好一个完整的工程,虽然工程名有了,但工程当中还没有任何文件及代码,接下来就是添加文件及代码。 5、单击【File】菜单中的【new】菜单项,或者单机界面上的快捷图标,如图5所示。
图5 新建文件
6、新建文件后的窗口如图6所示。
8
图6 文件界面
7、此时光标在编辑窗口中闪烁,可以输入用户的应用程序,但此时这个新建文件与刚刚建立的工程还没有直接的联系,单机“保存”图标,窗口界面如图7所示。
图7 文件保存到工程组
输入要保存的文件名,同时必须输入正确的扩展名“.a”,然后单击【保存】按钮。
8、回到编辑界面,单机【Target1】前面的“+”号,然后在【Source Goup 1】单击右键,弹出如图8所示的菜单。
9
图8 添加程序至工程
然后选择【Add Files to Group‘Sourse Group 1’】菜单项弹出图9对话框
图9 选择文件
9、选中【Text 1】,单击【Add】按钮,再单击【Close】按钮,然后再单击左侧【Sourse Group 1】前面的“+”,屏幕窗口如图10所示。
10
图10 程序编写界面
10、编写好程序就要进行程序的编译,单机工具栏上的“编译”,在编译的过程中,如果出现错误,修改程序直到没有错误为止,然后一次点击“编译”“调试”,在此过程中出现错误的,也要修改程序直到没有错误为止,编译过程中出现警告一般不必考虑,但特殊时期也要通过修改程序消除警告。
第五章 设计程序
第一种方式
ORG 0000H
LJMP MAIN(跳转到主程序) ORG 0100H(主程序存放地址0100H) MAIN:
MOV SP,#60H ;设置堆栈指针(设置堆栈的长度为60H byte,首先
11
SP是堆栈指针指令,将立即数60H送SP,SP=(60H),即定义栈顶位置为 内部RAM的60H单元)
ACALL DELAY( 调用delay子程序) SMRUN: ;电机控制方式为单双八拍 MOV P1,#08H ;A ACALL DELAY MOV P1,#0CH ;AB ACALL DELAY
MOV P1,#04H ;B ACALL DELAY MOV P1,#06H ;BC ACALL DELAY
MOV P1,#02H ;C ACALL DELAY
MOV P1,#03H ;CD ACALL DELAY
MOV P1,#01H ;D ACALL DELAY
MOV P1,#09H ;DA ACALL DELAY SJMP SMRUN ;循环转动 DELAY: ;延时程序
12
MOV R4,#10 DELAY1: MOV R5,#250 DJNZ R5,$
DJNZ R4,DELAY1(总延时时间:t=2*250*10=5000μs)) RET ; END
第二种方式
ORG 0000H (程序起始位置)
AJMP START (系统复位后跳转向主程序start) ORG 000BH (start的起始地址为00BH) AJMP TT1 (跳转到TT1) ORG 0030H (TT1起始地址0030H) START:
MOV P1,#0FFH (P1口置1)
MOV TMOD,#01H (设置定时器0工作方式为1即16位定时器 ) MOV R2,#08H 08H赋值给R2 MOV R1,#02H 02H赋值给R1 MOV TH0,#0D8H 定时器0高八位初值 MOV TL0,#0F0H 低八位初始值
13
ORL IE,#82H 开启中断 MOV R0,#00H 00H赋值给R0 SETB TR0 启动定时器 LOOP:
MOV A,R0 R0的内容给定时器A
MOV DPTR,#NUM DPTR为间址寄存器 MOVC A,@A+DPTR
CJNE R1,#00H,LOOP 寄存器R1的内容与0比较,不等则跳loop
MOV P1,A 累加器A中的数据传送到p1寄存器,也就是p1端口 MOV R1,#02H
INC R0 加一指令
DJNZ R2,LOOP (R2)-1放入R2,R2-1≠0 SJMP START 跳转到start
NUM:DB 0f1h,0f3h,0f2h,0f6h,0f4h,0fch,0f8h,0f9h TT1: 定时中断程序 CLR TR0 复位定时器T0
DEC R1 寄存器R1减一再放入到R1中 MOV TH0,#0D8H }定时器高八位初值 MOV TL0,#0F0H 定时器低八位初值 SETB TR0 启动定时器T0
14
RETI 中断返回 END
图4.1 主程序流程图
如图所示,在主程序中ADC0809将采集到模拟数据(即电压值,
通过改变电位器来获得不同的电压值)转换为数字量,再将此数字量传给单片机处理。单片机处理后送给数码管显示。
4.2 显示程序设计
15
图4.2显
示程序流程图
如图所示,ADC转换后的数据经过单片机处理后送给数码管显示,单片机首先输出位选指令,选中要显示的那们数码管。然后输出段码指令,输出要显示的数字。依次输出各位要显示的数字、直到各位数字显示完为止。
16
总 结
通过这一学期单片机原理及其应用这门课程和本次课程设计,作为一名大四的学生,我们觉得做单片机的课程设计是十分有意义的,而且是十分必要的。
在课程设计环节中,我们觉得最困难的是程序设计,首先要理解原理,然后进行流程设计,转化为程序,进行调试,我们在调试的时候出现了很多错误,改错的过程是非常痛苦的,好在我们耐心地一一克服了,最后敲定了合理的程序。但问题并没有因此结束,当我们装上步进电机后,能否带动步进电机转起来等等一些列问题让我们感到手足无措,但是在老师的指导下也一一克服了,最后得到了较为满意的结果,在此感谢老师的悉心指导。
还有一点体会就是要养成注释程序的好习惯,一个程序的完美与否不仅是实现功能,而应该让人一看就明白你的思路,这样也为资料的保存和交流提供了方便。通过这次的课程设计,我们懂得了学习的重要性,了解到了理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,相信这些对我们今后的工作与学习都会有很大的帮助。一个团队的合作是完成这次设计的关键,我们通过讨论,研究最佳方案,合理分工,使得这次设计能够较好的完成,在合作中,互相学习,在一起设计中发现自己的不足和缺陷,并一起进步,这也为我们今后的工作积累经验。
17
参考文献
[1] 赵巍 冯娜.单片机基础及应用(第二版),清华大学出版社,2014.
[2] 张毅刚.单片机原理及应用,高等教育出版社,2003. [3] 陈理壁. 步进电机及其应用. 上海科学技术出版社,1989. [4] 刘保延等. 步进电机及其驱动控制系统.哈尔滨工业大学出版社,1997.
[5]王福瑞. 单片微机测控系统设计大全 . 北京:北京航空航天大学出版社,1998.
18
正在阅读:
单片机两种方式控制步进电机旋转06-20
党课学习材料10篇07-31
2022年度民主生活会个人对照检查材料(通用最新版)07-31
关于新疆发声亮剑讲话发言稿汇总篇资料下载07-31
甜炸了的表白套路对话绝对成功的表白套路07-31
北部湾开发与深圳开发的十大比较07-31
2022年党日活动总结【最佳主题特色】07-31
领导班子意见和建议12篇07-31
党支部书记讲党课讲稿2022年材料07-31
【新年贺词】2022年新年贺词大全07-31
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 步进电机
- 单片机
- 旋转
- 方式
- 控制
- 砂子物理性能实验记录Microsoft Word 文档
- 2016年 水利检测继续教育试题——混凝土工程检测专业考试试卷
- 2016年一建法规考前模拟题
- 小额支付系统业务处理手续
- 辽师大版三年级下册品德与社会教案 - 图文
- 煤矿薄煤层综采设备优化措施探讨
- 奖励旅游 - 图文
- Linux复习题
- 1滑翔机教案
- 高中物理总复习,《恒定电流》,全章同步强化训练题
- 公共管理学(第二版)(黎明 主编)课后习题
- 高一数学苏教版必修4教学案:第2章5平面向量的基本定理
- 设计说明书终稿
- 库尔勒市老城区污水处理厂提标改造及污泥处理投资建设项目可行性
- 明代官职
- 幼儿园保教管理制度
- LTE切换详解-04181
- 六年级下册英语全册教案
- 《逍遥游》理解默写
- 血液保护考题