红外遥控步进电机系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学习情境二
红外遥控步进电机系统设计与调试说明书
电子1034班
任文丽
2012年2月28日
目录
1.工作任务 (1)
2.功能要求 (1)
3.硬件设计 (1)
3.1系统原理框图 (1)
3.2步进电机驱动电路 (1)
4.软件设计 (2)
4.1程序说明 (2)
4.2系统资源使用说明 (2)
4.3程序主要流程图 (2)
5.调试 (3)
5.1调试方法与步骤 (3)
5.2调试结果 (3)
附录二程序清单 (3)
1.工作任务
编写按键控制步进电机加减速和正反转运转的程序,在此程序基础上再加入红外遥控控制步进电机的运转的程序,编译通过后下载检测,完成后写好设计说明书。

2.功能要求
可以通过红外遥控器的三个键VOL-、VOL+、RET来分别控制步进电机的减速、加速、正反转的运转。

3.硬件设计
3.1系统原理框图
3.2步进电机驱动电路
步进电机是一种将电脉冲转化为角位移的执行机构。

当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。

可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机
转动的速度和加速度,从而达到调速的目的。

步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。

4.软件设计
4.1程序说明
程序由主程序、红外线接收程序、步进电机驱动程序、延时子程序、复位电路、时钟电路程序模块构成。

复位电路由上电复位和手动复位两部分组成。

上电复位是指当工作电路一上电后,程序系统自动复位;手动复位是指可以通过按键实现复位功能。

时钟电路是指以12M晶振来提供单片机的工作。

步进电机驱动程序是由四相八拍来驱动。

红外线接收程序是由外部中断控制。

4.2系统资源使用说明
内存单元用到2个分别为05H、50H; 05H为控制步进电机正反转的标志位,50H为电机转速的控制量,可以用来控制步进电机的转速。

使用的硬件资源有电脑、程序、实验箱、USB数据线。

4.3程序主要流程图
5.调试
5.1调试方法与步骤
将程序写好保存编译完成后,下载到实验箱上,将红外遥控器对准红外线接收管,按下VOL-键后,观察步进电机的转速是否会变慢,再按下VOL+键来观察步进电机的转速是否会变快,继续按下RET键来观察电机的转速方向是否会改变。

5.2调试结果
在调试的过程中,由于专业方面的知识了解不够深入,所以导致出现了一些错误,在老师和同学的帮助下,最终完成了这次的作业。

附录二程序清单
IRIN EQU P3.2
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP IR_IN
ORG 0030H
MAIN:MOV 50H,#100
SETB 05H
SETB IT0
SETB EX0
SETB EA
HH: JB 05H,EE
MOV P1,#0F6H ;DA
ACALL DELAY
MOV P1,#0F7H ;D
ACALL DELAY
MOV P1,#0F3H ;CD
ACALL DELAY
MOV P1,#0FBH ;C
ACALL DELAY
MOV P1,#0F9H ;BC
ACALL DELAY
MOV P1,#0FDH ;B
ACALL DELAY
MOV P1,#0FCH ;AB
ACALL DELAY
MOV P1,#0FEH ;A
ACALL DELAY
AJMP HH
EE: MOV P1,#0FEH ;A
ACALL DELAY
MOV P1,#0FCH ;AB
ACALL DELAY
MOV P1,#0FDH ;B
ACALL DELAY
MOV P1,#0F9H ;BC
ACALL DELAY
MOV
P1,#0FBH ;C
ACALL DELAY
MOV P1,#0F3H ;CD
ACALL DELAY
MOV P1,#0F7H ;D
ACALL DELAY
MOV P1,#0F6H ;DA
ACALL DELAY
AJMP HH
DL:MOV R6,50H
DJNZ R6,$
DJNZ R5,DL
RET
IR_IN:
PUSH 01H
PUSH 02H
MOV R0,#60H
I1: JNB IRIN,I2 ;等待IR 信号出现
JMP WW ;I1
I2: MOV R4,#20
I20: CALL DEL
DJNZ R4,I20
JB IRIN,I1 ;确认IR信号出现
I21: JB IRIN,I3 ;等IR 变为高电平
CALL DEL
JMP I21
I3: MOV R3,#0 ;8位数清为0
LL: JNB IRIN,I4 ;等IR 变为低电平
CALL DEL
JMP LL
I4: JB IRIN,I5 ;等IR 变为高电平
CALL DEL
JMP I4
I5: MOV R2,#0 ;0.14ms 计数
L1: CALL DEL
JB IRIN, N1 ;等IR 变为高电平
;IR=0,检查R2中的计数值MOV A,#8
CLR C
SUBB A,R2 ;判断高低位
;IF C=0 BIT=0
MOV A,@R0
RRC A
MOV @R0,A ;处理完一位
INC R3
CJNE R3,#8,LL ;需处理完8位
MOV R3,#0
INC R0
CJNE R0,#64H,LL ;收集到4字节了
JMP OK
N1: INC R2
CJNE R2,#30,L1 ;0.14ms 计数过长则时间到自动离开
OK: MOV A,62H
CJNE A,#15H,II
MOV A,50H
CJNE A,#240,SS
AJMP SSS
SS: JC UUU
SJMP SSS
UUU: ADD A,#10
MOV 50H,A
SSS:AJMP WW
II: CJNE A,#09H,YY
MOV A,50H
CJNE A,#10,RRR
AJMP RRRR
RRR: JC RRRR
CLR C
SUBB A,#10
MOV 50H,A
RRRR: AJMP WW
YY :CJNE A,#19H,WW
CPL 05H
WW:POP 02H
POP 01H
RETI
DEL:
MOV R5,#1 ;IR解码使用DEL0: MOV R6,#2
DEL1: MOV R7,#32
DEL2: DJNZ R7,DEL2
DJNZ R6,DEL1
DJNZ R5,DEL0
RET
END。

相关文档
最新文档