用户操作说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用户操作手册说明书
机自专业综合实践Ⅰ2016
题目:基于单片机的步进电机控制系统设计
作者:ZJL
日期:2016年10月11日
目录
1.引言 (3)
1.1编写目的 (3)
1.2读者对象 (3)
1.3环境要求 (3)
2.硬件配置 (3)
2.1硬件分类 (3)
2.2硬件参数 (3)
3.系统综述 (4)
3.1系统简介 (4)
3.2系统流程介绍 (4)
4.操作说明 (5)
5.常见问题解答 (6)
附录:源程序 (6)
1.引言
1.1编写目的
用户操作手册编写目的是明确本软件的功能、软件的作用、功能的操作,帮助用户理解及操作本软件。
1.2 读者对象
本手册只针对使用到本步进电机系统的广泛用户群体。
1.3 环境要求
本系统中用到的51单片机所需的程序需要利用windows系统的pc进行编译及烧录。2.硬件配置
2.1 硬件分类
1,步进电机
2,单片机芯片
3,步进电机驱动
4,变压芯片
2.2 硬件参数
1,步距角为1.8度的四相八拍永磁式步进电机
2,单片机芯片A T89C51简介
AT89C51的主要参数如表2-1所示:
表2-1 AT89C51的主要参数
3,步进电机驱动是ULN2004芯片,ULN2004系列是一款高耐压,大电流达林顿管驱动器,包含7个NPN达林顿管
4,利用LM7812和LM7805芯片得到12V和5V的电压。
3.系统综述
3.1 系统简介
本系统是一种基于单片机的步进电机的系统设计,用汇编语言编写出电机的正转、反转、加速、减速、停止程序,通过单片机、电机的驱动芯片ULN2004以及相应的按键实现以上功能,并且步进电机的工作状态要用相应的发光二极管显示出来。本文内容介绍了步进电机以及单片机原理、该系统的硬件电路、程序组成,同时对软、硬件进行了调试,同时介绍了调试过程中出现的问题以及解决问题的方法。该设计具有思路明确、可靠性高、稳定性强等特点。
3.2 系统流程介绍
系统分为电机正转、电机反转、电机加速与电机减速的几部分组成,其主程序框图如图1-1所示。
图1-1 主程序框图
4.操作说明
本系统采用按键操作本次设计选用的是单片机的P0口来控制信号的输入,所以把按键开关和P0口连接起来,当按下开关S1时,相当于给P0.0口一个低电平;当按下开关S2时,相当于给P0.1口一个低电平;当按下开关S3时,相当于给P0.2口一个低电平;当按下开关S4时,相当于给P0.3口一个低电平;当按下开关S5时,相当于给P0.4口一个低电平。然后通过单片机实行相应的操作。如图1-2。
图1-2 按键部分电路
该系统控制方面由5个按键组成:
按键s1:按下则步进电机正转(此时按键s3,s4,s5分别起到又使其加速减速停止的作用)按键s2:按下则步进电机反转(此时按键s3,s4,s5分别起到又使其加速减速停止的作用)按键s3:使步进电机加速
按键s4:使步进电机减速
按键s5:停止步进电机
按下每个按键后,这时相应的状态指示电路便会有所反应:
状态指示用P1口控制发光二极管的显示,如果相应端口是低电平,相应的发光二极管就会亮,用它来表示步进电机所处的状态。如图1-3
图1-3状态指示部分电路
D1-D5亮时分别的指示为:电机处于正转状态、反转状态、加速状态、减速状态、停滞状态
5.常见问题解答
1.正反转按键s1,s2一起按会出现什么情况?
答:正转,因为程序设定是先检测p0,0口是否为低电平,若是,则正转,不再检测p0,1口。附录:源程序
QIAN EQU 40H
HOU EQU 41H
JIA EQU 42H
JIAN EQU 43H
TING EQU 44H
ORG 000H
LJMP MAIN
ORG 003H
LJMP DUAN /// 外部中断0
ORG 0030H
MAIN: ///初始化
MOV R0,#0FH
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,#40
MOV 22H,#30
MOV 23H,#20
MOV 24H,#10
MOV 25H,#5
MOV R1,#20H
MOV IE,#10000001B
CLR QIAN
CLR HOU
CLR JIA
CLR JIAN
CLR TING
MOV A,@R1
MOV R2,A
SETB IT0 ////边沿触发形式
LOOP1:JNB QIAN ,LOOP2
ACALL FRONT1
LOOP2:JNB HOU,LOOP1
ACALL BACK1
DUAN: MOV A,P0
CPL A
ANL A,#1FH ///去高三位,使按下去的一位为1
CJNE A,#00H,CHA
AJMP DUAN
CHA: ACALL DELAY10MS
MOV A,P0
CPL A
ANL A,#1FH
JZ DUAN ///为零转移
ACALL ZHAO
RETI
ZHAO:MOV A,P0 //查找是哪一位,下面置1 JNB ACC.0,FRONT