二维步进电机的控制.docx

上传人:b****5 文档编号:4291051 上传时间:2022-11-28 格式:DOCX 页数:9 大小:135.24KB
下载 相关 举报
二维步进电机的控制.docx_第1页
第1页 / 共9页
二维步进电机的控制.docx_第2页
第2页 / 共9页
二维步进电机的控制.docx_第3页
第3页 / 共9页
二维步进电机的控制.docx_第4页
第4页 / 共9页
二维步进电机的控制.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

二维步进电机的控制.docx

《二维步进电机的控制.docx》由会员分享,可在线阅读,更多相关《二维步进电机的控制.docx(9页珍藏版)》请在冰豆网上搜索。

二维步进电机的控制.docx

二维步进电机的控制

哈尔滨理工大学

单片机课程设计说明书

 

题目:

二维步进电机控制

 

班级:

机电10—1

学号:

1001040118

姓名:

李文轩

 

一、任务设计-------------------------------------------1

二、系统运行原理--------------------------------------3

三、系统硬件原理——————--------------------------7

四、程序框图-------------------------------------------7

五、程序设计-------------------------------------------12

 

《单片机原理及应用》课程设计任务书

1、设计题目:

二维步进电机控制

本设计要求实现二维步进电机的自动控制。

1、功能:

系统中横向、纵向各一台电机,均采用四相步进电机,电机运用双四拍运行方式。

其驱动代码如下表所示。

倒序输出,则电机反转。

一二三四一

A

10011

B

11001

C

01100

D

00110

(注:

“1”代表绕组通电,“0”代表绕组断电。

单片机接收控制命令,从而产生运行脉冲,驱动二维步进电机正转、反转和停止等。

2、指标:

电机转速为12°/S,相应的驱动代码频率为400Hz.

2、设计目的:

掌握80C51单片机应用系统的软、硬件设计方法。

3、设计要求:

1、设计80C51单片机控制系统的硬件原理图,使其完成题目所规定的功能要求。

2、完成各主要部分的程序框图。

3、用汇编语言编写各部分的程序。

4、设计时间:

1周。

2013年2月25日∽2013年3月1日

5、统一用B5号纸装订成册装入档后答案袋,而后答辩。

 

二、系统运行原理

二维步进电机控制系统的工作原理如图所下:

外部命令

TTL

RS-252控制驱动

信号信号脉冲信号

 

二维步进电机控制系统工作原理图

IPC是二维电机控制系统的主机,负责接受外部命令并发送到单片机,然后接收单片机回送的相同数据进行比较。

如相同,表明单片机正常接收命令,如不相同,则在屏幕上显示出错信息。

通信接口电路实现IPC串行口信号与单片机TTL信号之间的转换,实现IPC与单片机之间的正常通信。

单片机负责接收来自IPC串行口的命令并将转换成脉冲信号,从并行口输出,去控制步进电机的运行。

功率放大电路是将单片机并行口输出的控制脉冲信号进行电流电压放大,驱动步进地那几,使电机随着不同的控制脉冲信号作正转、反转和停止。

步进电机执行动作,当脉冲按照一定顺序输入步进电机哥哥相时,它就实现不同运动状态。

3、系统硬件原理

电路原理图如下

 

1、单片机

单片机采用80C51,片内含4KB的ROM.由P1口输出控制脉冲信号,分两路控制步进电机的一维。

RXD(P3.00为串行输入线,TXD(P3.1)为串行输出线。

P3.2~P3.5设置为行程开关,作为二维步进电机的正反向最大行程的保护。

晶振选用12MHz。

80C51以中断方式执行IPC的命令。

2、与IPC的接口电路

IPC机与单片机通过串行口进行通信。

由于IPC配置的是标准的RS-232串行接口,而单片机的输入、输出的是TTL电平,因此必须进行电平转换。

有MC1488将TTL电平转换为RS-232的标准电平,工作电压+12V/-12V;MC1489则将RS-232的标准电平转换成TTL电平,工作电压为+5V。

3、功率放大电路

功率放大电路中采用74HC05N1、N2将单片机P1口,P2口输出的脉冲控制信号进行增强驱动能力光电隔离器。

信号经光电隔之后,再经DK63功率放大、驱动步进电机各相。

4、步进电机

系统中采用四相步进电机,点击运行双四拍运行方式。

其中与p1.0~p1.3对应的是横向步进电机的四个相(A1~D1),与p2.0~p2.3对应的是纵向步电机的四个相(A2~D2)。

工作电压+27V。

驱动代码如下所示。

倒序输出,电机反向运转。

步进电机的运行速度由p1口输出的控制脉冲频率决定,步进电机的速度为12°/S,则对应的P1口输出驱动代码的频率为400Hz.

一二三四一

A

10011

B

11001

C

01100

D

00110

系统启动之后,单片机执行主程序,自动控制二维步进电机按预定速度运行,其电压波形如下:

当需要改变运动状态时,由IPC从键盘接受命令,传给单片机,单片机中断主程序的执行,接收IPC的命令,实时控制步进电机按命令要求运动。

命令执行结束后,重新返回主程序继续执行。

4、程序框图

程序框图如下:

主程序串行中断服务程序

5、程序设计

80C51的串行口工作方式为0,允许接收,SCON值为00H,定时器T0工作方式0,TMOD值为00H,时间常数为TH0=0C8H,TL0=1EH。

R0:

用于存放横向电机正转驱动代码;

R1:

用于存放横向电机反转驱动代码;

R2:

用于存放串行口输入内容;

R3:

用于存放纵向电机正转驱动代码;

R4:

用于存放纵向电机反转驱动代码;

程序清单如下:

中断入口程序:

ORG0000H

LJMPSTART

ORG0003H

LJMPXTING

ORG0013H

LJMPYTING

ORG000BH

LJMPINQP

ORG0023H

LJMPJS

主程序:

START:

CLREA

MOVIP,#00H

MOVSCON,#00H

CLRET0

SETBREN

SETBES

SETBEA

WAIT:

JBRI,JS

AJMPWAIT

MAIN:

SETBIT0

SETBIT1

SETBEX0

SETBET1

MOVR3,#0CCH

MOVR4,#0CCH

MOVR0,#0CCH

MOVR1,#0CCH

MOVTMOD,#00H

MOVTH0,#0C8H

MOVTL0,#1EH

SETBET0

SETBTR0

SETBEA

AJMP$

T0中断程序:

INQP:

MOVTH0,#0C8H

MOVTL0,#1EH

Z0:

CJNER2,#00H,Z1

MOVP1,#00H

LCALLYZHENG

MOVP2,A

Z1:

CJNER2,#01H,Z2

MOVP1,#00H

LCALLYFAN

MOVP2,A

Z2:

CJNER2,#02H,Z3

LCALLXZHENG

MOVP1,A

LCALLYZHENG

MOVP2,A

Z3:

CJNER2,#03H,Z4

LCALLXZHENG

MOVP1,A

LCALLYFAN

MOVP2,A

Z4:

CJNER2,#04H,Z5

LCALLXZHENG

MOVP1,A

MOVP2,#00H

MOVP2,A

Z5:

CJNER2,#05H,Z6

LCALLXFAN

MOVP1,A

MOVP2,#00H

MOVP2,#00H

Z6:

CJNER2,#06H,Z7

LCALLXFAN

MOVP1,A

LCALLYZHENG

MOVP2,A

Z7:

LCALLXFAN

MOVP1,A

LCALLYFAN

MOVP2,A

RETI

控制程序:

JS:

MOVA,SBUF

MOVR2,A

CLRRI

RETI

XTING:

MOVR0,#00H

MOVR1,#00H

RETI

YTING:

MOVR3,#00H

MOVR4,#00H

RETI

XZHENG:

MOVA,R0

RRA

MOVR0,A

RETI

YZHENG:

MOVA,R3

RRA

MOVR3,A

RETI

XFAN:

MOVA,R1

RLA

MOVR1,A

RETI

YFAN:

MOVA,R4

RLA

MOVR4,A

RETI

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 日语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1