步进电机调速系统实验报告-20xx.12.07

时间:2024.3.19

华北科技学院计算机学院综合性实验

实 验 报 告

课程名称        微 机 原 理 及 应 用           

实验学期   2015     2016    学年 第  1   学期

学生所在学院     机  电  学  院              

年级  13级   专业班级        机制B132          

学生姓名   韩 振 伟   学号  201302024220       

任课教师              王  德  志                

实验成绩                                       

计算机学院制

20##年12月26日


《微机原理及应用》课程综合性实验报告

开课实验室:接口实验室                                        20151226


第二篇:步进电机调速系统硬件


根据下述资料完成对硬件仿真的实现

要求1:必须用proteus和keil联机实现仿真

要求2:必须按照protel电路图 用proteus做出电路图 要求3:交给我的三样东西

a.系统原理电路图1份。b.电路仿真运行数据1份 C.汇编语言一份

步进电机调速系统硬件

步进电机调速系统硬件设计

4.1 四相步进电机工作原理

步进电机调速系统硬件

本设计所采用的是国产20BY-0型步进电机,它使用+5V直流电源,步距角为18度。电机线圈由四相组成,即A、B、C、D四相,驱动方式为二相激磁方式,电机示意图和各线圈通电顺序如图4.1和表4.1所示:

图4.1 步进电机原理图

表4.1

相顺序

1

2

3

A 1 0 0 1 B 1 1 0 0 C 0 1 1 0 D 0 0 1 1

相顺序从0到1称为一步,电机轴将转过18度,0?1?2?3?4则称为通电一周,转轴将转过72度,若循环进行这种通电一周的操作,电机便连续的转动起来,而进行相反的通电顺序如4?3?2?1将使电机同速反转。通电一周的周期越短,即驱动频率越高,则电机转速越快,但步进电机的转速也不可能太快,因为它每走一步需要一定的时间,若信号频率过高,可能导致电机失步,甚至只在原步颤动。

4.2 硬件设计方案

本设计采用51单片机AT89C51(晶振频率为12MHZ)对该四相六线制步进电机(内阻33欧,步进1.8度,额定电压12V)进行控制。通过I/O口输出的具有时序的方波作为步进电机的控制信号,信号经过特定芯片驱动步进电机。本文选用ULN2003构成步进电机的驱动电路,下面但见介绍下ULN2003的结构和特点:

ULN2003 是高耐压、大电流达林顿陈列,由七个硅NPN 达林顿管组成。 该电路的特点如下:

ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。

ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。

ULN2003 采用DIP—16 或SOP—16 塑料封装。

ULN2003方框图如图4.2所示。

步进电机调速系统硬件

4.2 ULN2003内部方框图

利用ULN2003以及AT89C51设计的步进电机驱动电路如图4.3所示。

步进电机调速系统硬件

图4.3 ULN2003和AT89C51构成的驱动电路

51的25-28口接ULN2003的1-4输入端。另外,用键盘来对电机的状态进行控制。

在上述设计的基础上 ,可以用数码管显示电机的转速,采用AT89C51的P1口和P2口作为2位单个数码管的显示驱动。其电路图如图4.4所示。通过图

4.2所示的AT89C51的内部变成发送数据。

步进电机调速系统硬件

图4.4 显示电路图

其中两个数码管是共阴的。R3和R4是用来保护数码管,以免烧坏数码管。

将图4.3和图4.4连接起来,使之实现:按下启动键S1,电机旋转,按一下加1键S2,速度增加1转/分,按一下减1键S3,速度降低1转/分。本设计设置了速度范围,其速度最低和最高分别为:9转/分,75转/分,按下停止键S4,电机停转。速度值在数码管上显示出来。

综合以上设计的控制电路方案,总设计方案框图如4.5所示。

步进电机调速系统硬件

图4.5 步进电机控制电路设计框图

5 步进电机调速系统的软件设计

5.1 软件设计思路

控制系统分2个功能模块,分别是转速设置、数码管显示速度。

5.1.1 转速设置

根据赋给计数器的计数初值,我们可以计算出步进电机各相脉宽信号的频率和电机转速,也可以反过来根据对电机转速要求,计算并调整计算初值。

本设计中采用了12Mhz的晶振,一个机器周期是1us。其计算方法:

126?1?10s?1?s 612?10

(5.1)

上式计算出了一个机器周期。分子上的12是12个节拍,分母是晶振频率。所以单片机内部时钟频率为f=106hz,设计数初值为n,要求转速为15转/分(0.25转/秒),对四相步进电机而言即为5步/秒,则有:

f?5n

(5.2)

f106

n???2?105

55

(5.3)

反过来,当计数器初值确定时,决定了电机的转速,如计数初值为0时,有电机转速为3步每秒(本设计中最慢速度);当计数初值为40000时,电机转速为1.25步每秒(本设计中最快速度)。具体设置初值及转速见表5.2。

表5.2 转速设置表

步速

3

5

15 转速(转/秒) 0.15 0.25 0.75 计数初值 333333 200000 66667

25 1.25 40000

5.1.2 数码管显示

因为本设计中采用的数码管是共阴的,所以当AT89C51的对应管脚发送的是高电平信号,数码管中对应的LED就亮起来。

本设计中的相应速度档次不涉及小数点,故数码管的dp位无论在何时均为低电平。数码管的各个数字显示二进制代码如表5.3所示:

表5.3 数码管的显示原理

数字 0 1 2 3 4 5 6 7 8 9

要亮的LED abcdef bc abdeg abcdg bcfg acdfg acdefg abc abcdefg abcdfg

相应P0/P1输出的二进制及16进制 11111100、FCH 01100000、60H 11011010、DAH 11110010、F2H 01100110、66H 10110110、B6H 10111110、BEH 11100000、E0H 11111110、FEH 11110110、F6H

只要将当前的转速在对应的时刻送到P0及P1即可,其中P1存储的是个位的数字,而P0存储十位的数字。

5.2 程序流程图及其汇编程序

5.2.1 程序流程图

根据上述的设计思路,结合51单片机的设计原则,可以得出如图4.6所示的程序流程图。

步进电机调速系统硬件

图5.6 程序流程图

5.2.2 汇编程序及注释

START bit 01H ;起动及停止标志 MinSpd EQU 9 ;起始转动速度 MaxSpd EQU 75 ;最高转动速度 Speed DATA 23H ;流动速度计数

ORG 0000H

LJMP DJSD

ORG 0010H

LJMP MAIN

ORG 0030H

MAIN:

MOV SPEED,#MinSpd ;起始转动速度送入计数器 CLR StartEnd ;停转状态

MOV TMOD,#00000001B

SETB EA

SETB ET1

LOOP:

ACALL KEY

JNB P0,m_NEXT1

ACALL KEYPROC

m_NEXT1:

MOV A,Speed

MOV B,#10

DIV AB

CMP A,#0

FCH

JE DISPS0

CMP A,#1

JE DISPS1

CMP A,#2

JE DISPS2

CMP A,#3

JE DISPS3

CMP A,#4

JE DISPS4

CMP A,#5

JE DISPS5

CMP A,#6

JE DISPS6

CMP A,#7

JE DISPS7 ;键盘程序 ;无键继续 ;否则调用键盘处理程序;若寄存器A中存储的是0,跳转至DISPS0,P0置

CMP A,#8

JE DISPS8

CMP A,#9

JE DISPS9

DISPS0: ;DISPS0~DISP9,让数码管显示0~9的特定数

MOV P0,#0FCH

JMP Next

DISPS1:

MOV P0,#060H

JMP Next

DISPS2:

MOV P0,#0DAH

JMP Next

DISPS3:

MOV P0,#0F2H

JMP Next

DISPS4:

MOV P0,#066H

JMP Next

DISPS5:

MOV P0,#0B6H

JMP Next

DISPS6:

MOV P0,#0BEH

JMP Next

DISPS7:

MOV P0,#0E0H

JMP Next

DISPS8:

MOV P0,#0FEH

JMP Next

DISPS9:

MOV P0,#0F6H

JMP Next

CMP B,#0 ;若寄存器B中存储的是0,跳转至DISPS0,P1置FCH

JE DISPG0

CMP B,#1

JE DISPG1

CMP B,#2

JE DISPG2

CMP B,#3

JE DISPG3

CMP B,#4

JE DISPG4

CMP B,#5

JE DISPG5

CMP B,#6

JE DISPG6

CMP B,#7

JE DISPG7

CMP B,#8

JE DISPG8

CMP B,#9

JE DISPG9

DISPG0:

MOV P1,#0FCH

JMP Next

DISPG1:

MOV P1,#060H

JMP Next

DISPG2:

MOV P1,#0DAH

JMP Next ;DISPS0~DISP9,让数码管显示0~9的特定

DISPG3:

MOV P1,#0F2H JMP Next

DISPG4:

MOV P1,#066H JMP Next

DISPG5:

MOV P1,#0B6H JMP Next

DISPG6:

MOV P1,#0BEH JMP Next

DISPG7:

MOV P1,#0E0H JMP Next

DISPG8:

MOV P1,#0FEH JMP Next

DISPG9:

MOV P1,#0F6H JMP Next

Next:

MOV A,Speed

JB START,m_Next2

CLR TR1 JMP LOOP

ORL P2,#11110000B m_Next2:

SETB TR1 AJMP LOOP KEYPROC:

MOV A,B ;获取键值;关闭电机 ;启动电机 ;主程序结束

JB ACC.0,StartStop ;分析键的代码,某位被按下,则该位为1 JB ACC.3,KeySty

JB ACC.1,UpSpd

JB ACC.2,DowSpd

AJMP KEY_RET

StartStop:

SETB StartEnd ;启动

AJMP KEY_RET

KeySty:

CLR StartEnd

AJMP KEY_RET

UpSpd:

INC SPEED

MOV A,SPEED

CJNE A,#MaxSpd,K1

DEC SPEED

K1:

AJMP KEY_RET

DowSpd:

DEC SPEED

MOV A,SPEED

CJNE A,#MAXSPD,KEY_RET

MOV SPEED,#MinSpd;

KEY_RET:

RET

KEY:

MOV A, P2

MOV B, A

RET

DjZS:

PUSH ACC

PUSH PSW

MOV A,Speed ;停止 ;到了最多的次数? ;是则减去1,保证下次仍为该值 ;不等(未到最大值),返回 ;定时器T1用于电机转速控制

SUBB A,#MinSpd ;减基准数 MOV DPTR,#DjH

MOVC A,@A+DPTR

MOV TH1,A

MOV A,Speed

SUBB A,#MinSpd

MOV DPTR,#DjL

MOVC A,@A+DPTR

MOV TL1,A

MOV A,DjCount

CPL A

ORL P2,A

MOV A,DjCount

JNB ACC.7,d_Next1

JMP d_Next2

d_Next1:

MOV DjCount,#11110111B

d_Next2:

MOV A,DjCount

RL A

MOV DjCount,A

ANL P2,A

POP PSW

POP ACC

RETI

DjH:

DB D8, DA,DB,DD,DE,DF, E0,…

DjL:

DB F0,71,D5,1F,54,73,80,…

;回存

更多相关推荐:
步进电机课程设计实验报告

成绩汇编及接口技术课程设计题目步进电机控制系统班级100602学号100602122姓名张春东时间20xx12251目录1设计任务与要求11设计任务12设计要求2设计方案21设计思路22使用的芯片23芯片的作用...

单片机实验报告 步进电机

20xx301510064杨闯实验目的了解步进电机的工作原理掌握它的转动控制方式和调速方法实验设备及器件IBMPC机一台DP51PROC单片机综合仿真实验仪一台实验内容1编写程序通过单片机的P1口控制步进电机的...

步进电动机实验报告

课程名称实验项目实验地点专业班级学号学生姓名指导教师实验报告年月日一实验目的和要求1通过实验加深对步进电动机的驱动电源和电机工作情况的了解2掌握步进电机基本特征的测定方法二实验内容1空载突跳频率的测定2空载最高...

步进电机实验报告

单片机实验课程名称步进电机表实验授课班级20xx级自动化三班任课教师文远熔计划学时32学时实验组员张藤耀赵福亮王聪慧目录摘要第一章概述11实验目的12实验要求13步进电机的介绍14研究思路第二章硬件设计2151...

步进电机系统设计实验报告

专业课程设计题目一步进电机控制系统设计院系动化学院专业班级智能0801班小组成员指导教师王曙光日期20xx052320xx0603目录课程设计描述2112课程设计具体要求33主要元器件34基本原理阐述341步进...

步进电机综合实验报告

一实验目的了解步进电机工作原理掌握用单片机的步进电机控制系统的硬件设计方法熟悉步进电机驱动程序的设计与调试提高单片机应用系统设计和调试水平二实验内容步进电机加减速及其正反转控制转速显示三工作原理步进电机是工业过...

控制步进电机调速系统实验报告

华北科技学院计算机系综合性实验实验报告课程名称微机原理及应用实验学期20xx至20xx学年第二学期学生所在系部电子信息工程学院年级20xx专业班级学生姓名学号任课教师实验成绩计算机系制华北科技学院计算机系综合性...

嵌入式实验报告_电机转动控制实验

贵州大学实验报告学院专业班级

实验10_步进电机控制实验

单片机原理与应用实验报告实验序号10实验项目名称步进电机控制实验123

计算机控制系统步进电机实验报告 曹健

步进控制实验报告姓名曹健学号20xx0720xx33专业班级B070720xx其他组员林杉卢维指导老师章红20xx年7月5日目录第一章步进电机工作原理简介11步进电机工作原理简介12四相步进电机的工作原理简介第...

4实验四 五相步进电机模拟实验

实验四五相步进电机模拟实验一实验目的熟悉SFC语言的编程方法二实验器材1ZY17PLC12BC型可编程控制器实验箱1台2PC机或FX20PE编程器1台3编程电缆1根4连接导线若干三实验原理近年来许多新生产的PL...

三相六拍步进电机课程设计报告

湖北汽车工业学院数字电子技术课程设计报告一步进电机相关知识介绍步进电机是一种数字信号控制的传动机构若在其输入端加入一个脉冲信号该电动机就会转动一个角度或移动一定距离步进电机由转子和定子两部分组成在定子的6个磁极...

步进电机实验报告(27篇)