步进电机控制及其汇编程序.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
综合实践报告之第二次大作业 题目:步进电机控制设计 说明:在工业电气自动化工程中,步进电机是一种常用的控制设备,它以脉冲信号控制电机的转速,在数控机床、仪器仪表、计算机外围设备以及其它自动设备中有广泛的应用。 步进电机是指一步步走的电动机,所谓“步”指转动角度,每步都会使电机转过一个固定的角度。步进电机有不同的种类,但其控制方法均相同,均以脉冲信号进行驱动,很适合使用单片机来进行控制。 本次大作业要求设计一个步进电机的控制部分。 已知: 采用2相制5线步进电机,其结构如下图所示,线圈中心抽头X1与X2连接在一起; 步进电机采用1相激磁法,即在每一个瞬间只有一个线圈导通,其它线圈休息; 单片机与步进电机之间可采用ULN2003类的驱动IC; 要求: 查找资料,设计出步进电机的硬件连接电路图; 给出控制软件流程图; 用汇编语言写出控制软件的代码。 提示:本作业对电机的转动方向不做要求,在实际应用中,改变线圈激磁的顺序可以改变步进电机的转动方向,每送一次激磁信号后应经过一小段时间延时,让步进电机有足够的时间建立激励磁场及转动。可以使用单片机的P0.0~P0.3端口输出控制信号,经驱动IC传至步进电机。 电路图设计说明 此控制电路选用AT89S51型单片机作为驱动时序的输出控制器,其P0.1-P0.3输出作为两相四线步进电机的时序信号,经过驱动芯片ULN2003放大后输入到两相四线步进电机的输入端口;单片机P1.0-P1.2作为控制指令的输入按键K1-K3的输入端口,K1为电机正转按键,K2为电机正转按键,K3为电机停止按键,这三个按键均为高电平输入有效,按一下K1电机正转,按一下K2电机反转转,按一下K3电机停止。其硬件电路如图一: 控制程序流程图 由于ULN2003是非们输出电路所以P0.0-P0.3端口输出低电平才是有效驱动电平,其控制程序流程图如图二: 控制程序 K1????? BIT? P1.0 ??????? K2????? BIT? P1.1 ??????? K3????? BIT? P1.2 ??????? K_OLD?? EQU? 30H ??????? K_NEW?? EQU? 31H ;--------------------------------------------------------- ???????? ORG? 0000H ???????? JMP? MAIN ??????? ORG? 0030H ;--------------------------------------------------------- MAIN: ???????? MOV? SP,#60H ???????? MOV? P1,#00H ???????? MOV? P0,#0FFH ???????? MOV? K_OLD,#04H ??????? MAIN1: ???????? MOV R2,#4??????????? ;给R2赋值4循环移位次数 CALL? K_SCAN??????????? ;键扫描 ???????? MOV? A,K_NEW ???????? CJNE? A,#00H,MAIN2 ;是否有按键按下 ???????? MOV? A, K_OLD??????? ; JMP? MAIN4 MAIN2: ???????? CALL? DELAY?????????????? ;延时示去抖动 ??????? ?CALL? K_SCAN??????????? ;再次判断键是否按下 ???????? MOV? A,K_NEW ???????? CJNE? A,#00H,MAIN3 ; 再次判断键是否按下 ???????? MOV? A, K_OLD JMP? MAIN4 MAIN3: MOV?K_OLD?,A?????? MAIN4: JB ACC.0,LOOP1???????? ;K1按下既P1.2-P1.0输入为001电机正转指令 ???????? JB ACC.1,LOOP2???????? ;K2按下既P1.2-P1.0输入为010电机反转指令 ???????? JB ACC.2,LOOP3???????? ;K3按下既P1.2-P1.0输入为110电机停止指令 ??????? JMP? MAIN1 ;电机正转控制时序 LOOP1: ???????? MOV A,#0FE

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档