基于单片机的直流电机控制器的设计.docx

上传人:b****3 文档编号:3953819 上传时间:2022-11-26 格式:DOCX 页数:37 大小:443.07KB
下载 相关 举报
基于单片机的直流电机控制器的设计.docx_第1页
第1页 / 共37页
基于单片机的直流电机控制器的设计.docx_第2页
第2页 / 共37页
基于单片机的直流电机控制器的设计.docx_第3页
第3页 / 共37页
基于单片机的直流电机控制器的设计.docx_第4页
第4页 / 共37页
基于单片机的直流电机控制器的设计.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

基于单片机的直流电机控制器的设计.docx

《基于单片机的直流电机控制器的设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的直流电机控制器的设计.docx(37页珍藏版)》请在冰豆网上搜索。

基于单片机的直流电机控制器的设计.docx

基于单片机的直流电机控制器的设计

1系统论述2

1.1设计思路2

1.2基本原理2

1.3总体设计框图2

2直流电机单元电路设计和分析3

2.1直流电机驱动模块3

2.2直流电机的中断键盘控制模块7

2.31602LCD夜晶显示模块8

3直流电机PWM控制系统的实现10

3.1总电路图11

3.2总电路功能介绍11

3.3直流电机控制程序11

4系统仿真18

1系统论述

1.1设计思路

直流电机PWM控制系统的主要功能包括:

直流电机的加速、减速以及电机的正转和反转,并且可以调整电机的转速,还可以方便的读出电机转速的大小,能够很方便的实现电机的智能控制。

其间,还包括直流电机的直接清零、启动(置数)、暂停、连续功能。

该直流电机系统由以下电路模块组成:

振荡器和时钟电路:

这部分电路主要由80C51单片机和一些电容、晶振组成。

设计输入部分:

这一模块主要是利用带中断的独立式键盘来实现。

设计控制部分:

主要由80C51单片机的外部中断扩展电路组成。

设计显示部分:

包括液晶显示部分和LED数码显示部分。

液晶显示部分由1602LCD液晶显示模块组成;LED数码显示部分由七段数码显示管组成。

直流电机PWM控制实现部分:

主要由一些二极管、电机和L298直流电机驱动模块组成。

1.2基本原理

主体电路:

即直流电机PWM控制模块。

这部分电路主要由80C51单片机的I/O端口、定时计数器、外部中断扩展等控制直流电机的加速、减速以及电机的正转和反转,并且可以调整电机的转速,还可以方便的读出电机转速的大小和了解电机的转向,能够很方便的实现电机的智能控制。

其间,还包括直流电机的直接清零、启动(置数)、暂停、连续功能。

其间是通过80C51单片机产生脉宽可调的脉冲信号并输入到L298驱动芯片来控制直流电机工作的。

该直流电机PWM控制系统由以下电路模块组成:

设计输入部分:

这一模块主要是利用带中断的独立式键盘来实现。

设计控制部分:

主要由80C51单片机的外部中断扩展电路组成。

设计显示部分:

包括液晶显示部分和LED数码显示部分。

液晶显示部分由1602LCD液晶显示模块组成。

直流电机PWM控制实现部分:

主要由一些二极管、电机和L298直流电机驱动模块组成。

1.3总体设计框图

系统组成:

直流电机PWM调速方案如图1.1所示:

方案说明:

直流电机PWM调速系统以AT89C2051单片机为控制核心,由命令输入模块、LCD显示模块及电机驱动模块组成。

采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,定时不断给直流电机驱动芯片发送PWM

波形,H型驱动电路完成电机正,反转控制;同时单片机不停的将从键盘读取的数据送到LCD显示模块去显示,从中不仅能读取其速度,而且能知晓其转向及一些温心提示。

图1.1直流电机PWM调速方案

2直流电机单元电路设计和分析

2.1直流电机驱动模块

主要由一些二极管、电机和L298直流电机驱动模块(内含CMOSS管、

三太门等)组成。

现在介绍下直流电机的运行原理

2.1.1直流电机类型

直流电机可按其结构、工作原理和用途等进行分类,其中根据直流电机的用途可分为以下几种:

直流发电机(将机械能转化为直流电能)、直流电动机(将直流电能转化为机械能)、直流测速发电机(将机械信号转换为电信号)、直流伺服电动机(将控制信号转换为机械信号)。

下面以直流电动机作为研究对象。

2.1.2直流电机结构

直流电机由定子和转子两部分组成。

在定子上装有磁极(电磁式直流电机磁极由绕在定子上的磁绕提供),其转子由硅钢片叠压而成,转子外圆有槽,槽内嵌有电枢绕组,绕组通过换向器和电刷引出,直流电机结构如图2.1所示。

唱刷换向片

枢怏心

Q换向片

2.1.3直流电机工作原理

直流电机电路模型如图2.2所示,磁极N、S间装着一个可以转动的铁磁圆柱体,圆柱体的表面上固定着一个线圈abed。

当线圈中流过电流时,线圈受到电磁力作用,从而产生旋转。

根据左手定则可知,当流过线圈中电流改变方向时,线圈的受方向也将改变,因此通过改变线圈电路的方向实现改变电机的方向。

图2.2直流电动机电路模型

2.1.4直流电机主要技术参数图1.1直流电机工作

直流电机的主要额定值有:

额定功率Pn:

在额定电流和电压下,电机的负载能力。

额定电压Ue:

长期运行的最高电压。

额定电流le:

长期运行的最大电流。

额定转速n:

单位时间内的电机转动快慢。

以r/min为单位

励磁电流If:

施加到电极线圈上的电流。

2.1.5直流电机PWMS速原理

(1)直流电机转速

直流电机的数学模型可用图2.3表示,由图可见电机的电枢电动势Ea的正方向和电枢电流Ia的方向相反,Ea为反电动势;电磁转矩T的正方向和转速n的方向相同,是拖动转矩;轴上的机械负载转矩T2及空载转矩TO均和n相反,是制动转矩。

说明:

U>电压

'Ea>电枢电动势

动势平衡方程式••……T.1>转速

I>电枢电流

>电枢回路电阻>外在电枢电阻>负载转矩•->空载转矩>磁通量

U二Ea-la(Ra+Rc)式1.1

式1.1中,Ra为电枢回路电阻,电枢回路串联保绕阻和电刷接触电阻的总和;Rc是外接在电枢回路中的调节电阻。

由此可得到直流电机的转速公式为:

n二Ua-IR/Ce①式1.2

式1.2中,Ce为电动势常数,①是磁通量。

由1.1式和1.2式得

n二Ea/Ce①式1.3

由式1.3中可以看出,对于一个已经制造好的电机,当励磁电压和负载转矩恒定时,它的转速由回在电枢两端的电压Ea决定,电枢电压越高,电机转速就越快,电枢电压降低到0V时,电机就停止转动;改变电枢电压的极性,电机就反转。

(2)PWMfe机调速原理

对于直流电机来说,如果加在电枢两端的电压为2.3所示的脉动电流压(要求脉动电压的周期远小于电机的惯性常数),可以看出,在T不变的情况下,

改变T1和T2宽度,得到的电压将发生变化,下面对这一变化进一步推导。

最大值Vmax

设电机接全电压U时,其转速最大为Vmax。

若施加到电枢两端的脉动电

最小值Vmin

由式1.3得到:

n二Ea/Ce①~U-D/Ce①=KD

在假设电枢内阻转小的情况下式中K=U/Ce①,是常数。

图2.4为施加不同占空比时实测的数据绘制所得占空比和转速的关系图。

由图看出转速和占空比D并不是完全速的线性关系(图中实线),原因是

电枢本身有电阻,不过一般直流电机的内阻较小,可以近视为线性关系。

由此可见,改变施加在电枢两端电压就能改变电机的转速成,这就是直流电

机PWM调速原理。

2.1.6电机驱动模块的电路设计

根据直流电机的工作原理,从PROTEUS选取元器件如下,放置元器件、放置电源和地]连线,我们参此设计的直流电机驱动模块电路如图2.5所示

•2SK1058:

CMOSS管

•74L26:

三太门

•1N4006:

二极管

•VSCOURCE:

电源

•MOTOR-ENCODER:

直流电机

•RES:

电阻

图2.7定时中断服务流程图

2.2直流电机的中断键盘控制模块

2.2.1外部中断设置

(1)外部中断允许设置

中断控制寄存器IE的EXO对应INTO,EX1对应INT1,EA为中断的总开关,若要开放外部中断,只要将IE对应的位和总开关EA置1即可。

女口:

开放外部中断0的设置:

SETBEX0

SETBEA

开放外部中断0和1的设置:

SETBEXO

SETBEX1

SETBEA

(2)外部中断触发方式设置

单片机外部中断有两种触发方式,一种是电平触发方式,另一种是脉冲触发方式,单片机外部中断触发方式和TCON勺IT位有关。

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

电平触发设置方法:

CLRITX,为低电平触发方式。

脉冲触发设置方法:

SETBITX=1为脉冲下降沿触发方式。

在使用外部中断时,如果不进行设置,则为电平触发方式。

(3)外部优先级设置

外部中断IN0、INT1的中断优先级的设置是通过设置IP寄存器实现的,

IP的PX0对应INTO,PX1对应INT1oPX置1为高级中断,PX为0为低级中断。

X

X

X

PS

PT1

PX1

PT0

PX0

2.2.2外部中断扩展方法

在图2.8为外部中断扩展方法,设XI、X2、X3、X4、X5为外部警情信号,X1代表是加速信号,X1=0表示加速;X2代表减速信号,X2=0表示减速;X3代表正转信

X5代表停止信

号,

言号,X3=0表示正转;X4代表反转信号,

X4=0表示反转;

'号,

X5=0表示停止处理。

P20

U?

h

◎WI\耳1

*

1

■®x5

减速

匸转

反转

停止

加速

图2.8外部中断扩展电路

当系统检测到有中断请求时,响应如下中断服务流程图2.9

 

2.3.1引脚分布和接口信号说明

(1)引脚分布

1602液晶显示共有16个引脚,其引脚分布如图2.5所示

soua

tn□LU>qlcmcq寸kntog

>>>0£:

CEILUCl口O口□□□□

JCMICOI't|lOt£i|卜卜B卜[彳爭卜|

图2.101602液晶显示模块引脚分布

(2)引脚功能

1602引脚功能如表2.1所示

表2.11602引脚功能

 

2.3.2LCD液晶电路

 

图2.111602液晶显示模块组成

2.3.3显示程序流程图如3.12所示

图2.12

3直流电机PWM控制系统的实现

 

3.1总电路图

X1LC液晶显示

+12V

+12V

18

V1

L1

U1

1

2

3

4

5

6

7

8

XTAL1

P0.0/AD0

P0.1/AD1

P0.2/AD2

XTAL2

P0.3/AD3

P0.4/AD4

P0.5/AD5

P0.6/AD6

RST

P0.7/AD7

P2.0/A8

P2.1/A9

P2.2/A10

PSEN

P2.3/A11

ALE

P2.4/A12

EA

P2.5/A13

P2.6/A14

P2.7/A15

P1.0

P3.0/RXD

P1.1

P3.1/TXD

P12

P32/INT0

P13

P3.3/TNTI

P3.4/T0

P1.4

P1.5

P3.5/T1

P1.6

P3.6/WR

P1.7

P3.7/RD

AT89C51

39

9

8

7

RP1

RESPACK-8

65丨43丨2~

R4

h

直流电机驱动芯片

4U2

D3

图3.1

21力曬

22减速力_正转

24反转

75停止

「-10R5

r-L-R?

_1h

——

IN1VCC

VS

IN2

OUT1

IN3

IN4

OUT2

ENA

ENB

OUT3

SENSA

OUT4

SENSBGND

1

1N40

03

D4

2

3

13

14

L298

加速n

U?

AND_5

16

17

12

13

14E

10

加速

减速

正转

停止J=1-

正转

反转

停止

直流电机

直流电机

D2

 

ORG

0000H

SJMP

DISPLAY

ORG

0003H

LJMP

BUTTON

ORG

000BH

LJMP

DINGSHI

RS

EQUP3.0

RW

EQUP3.1

E

EQUP3.4

ORG

0030H

3.2总电路功能介绍

直流电机PWMS制控制系统具有加速、减速、正转、反转、停止控制功能。

操作开关通过中断控制直流电机的加速、减速、正转、反转、停止控制功能,并通过LCD液晶显示。

振荡、时钟电路和复位电路由80C51单片机内部给出直流电机转动速度由LCD液晶显示。

操作开关状态由液晶显示器显示。

3.3直流电机控制程序

外部0中断入口地址

定时中断T0入口地址

此次直流电机的设计以LCD字符夜晶的

DISPLAY:

显示程序为主程序

SETB

EA;

打开中断总开关

SETB

EX0;

打开外部中断0开关

SETB

IT0

;打开外部中断0下降沿触发

MOV

TMOD,#01H

;设置定时工作方式

MOV

TL0,#0FFH

;设置定时初值

MOV

TH0,#0FFH

SETB

ET0;

打开定时中断T0开关

CLR

P0.5

CLR

P0.6

CLR

P0.7

SETB

TR0;

定时器T0开始定时

MOV

DPTR,#TAB

;夜晶显示的字符首地址

MOV

R0,#00H

;脉宽的初值

MOV

R1,#16;"

SETSPEEDPLEASE"的字符个数

MOV

R3,#00H

MOV

R4,#00H

LP9:

LCALLCHUSHI

LP2:

ACALLBUSY

 

MOV

A,#00H

MOVC

A,@A+DPTR

MOV

P1,A

ACALLDATAS

 

INC

DPTR

DJNZ

LP3:

R1,LP2

CJNE

R3,#00H,LP4

CJNE

R4,#00H,LP4

SJMPLP3

LP4:

MOVR7,#00HMOVR5,#09H;

ACALLBUSY

MOVP1,#0C0H

ACALLENABLE

MOVDPTR,#MMTAB

ACALLBUSY

LP5:

MOVA,#00H

MOVCA,@A+DPTR

MOVP1,A

INCDPTR

ACALLDATAS

ACALLBUSY

DJNZR5,LP5

MOVDPTR,#STAB

MOVA,R2

MOVP1,A

ACALLDATAS

ACALLBUSY

MOVA,R3;

MOVCA,@A+DPTR

MOVP1,A

ACALLDATAS

ACALLBUSY

MOVA,R4;MOVCA,@A+DPTR

MOVP1,A

;中断的标志

CURRENT:

的字符个数

显示速度的十位

显示速度的个位

ACALLDATAS;使夜晶始终显示当前电机的速度

LP8:

 

速度不变时等待

速度变时重新读入速度

使夜晶显示的一些初始设置

清屏并光标复位

设置显示模式:

8位2行5x7点阵

显示器开、光标开、光标允许闪烁

文字不动,光标自动右移

写入显示起始地址

写入控制命令的子程序

写入数据子程序

CJNER7,#00H,LP7

LJMPLP8;

LP7:

SJMPLP4

CHUSHI:

;

ACALLBUSY

MOVP1,#00000001B

ACALLENABLE

ACALLBUSY

MOVP1,#00111000B

ACALLENABLE

ACALLBUSY

MOVP1,#00001111B

ACALLENABLE

ACALLBUSY

MOVP1,#00000110B

ACALLENABLE

ACALLBUSY

MOVP1,#80H;

ACALLENABLE

RET

ENABLE:

;

SETBE

CLRRS

CLRRW

CLRE

RET

DATAS:

SETBE

SETBRS

CLRRW

CLRE

RET

BUSY:

CLRE

MOVP1,#0FFH

CLRRS

SETBRW

SETBE

JBP1.7,BUSY

RET

ORG2000H

DINGSHI:

CPLP0.7

JNBP0.7,Z1

MOVA,#0FFH

SUBBA,R0

MOVTH0,A

SETBTR0

RETI

Z1:

MOVTH0,R0

SETBTR0

RETI

准备写入数据

定时中断服务程序

周期一定

脉宽

 

BUTTON:

;从控制键盘中读取操作命令PUSHACC

CLREX0

CLREA

INCR7;

MOVA,#0FFH

MOVP2,A

MOVA,P2

JNBACC.0,AA0

JNBACC.1,KK0

JNBACC.2,ZZ

JNBACC.3,FF

JNBACC.4,WW0

AJMPQQ

加速操作

减速操作

AA0:

CJNER0,#0FFH,AA1

AJMPQQ

AA1:

MOVA,R0

ADDA,#5

MOVR0,A

AJMPQQ

KK0:

CJNER0,#00,MM

AJMPQQ

MM:

MOVA,R0

SUBBA,#5

MOVR0,A

AJMPQQ

QQ:

MOVA,R0

MOVB,#5

DIVAB

MOVB,#10

DIVAB

MOVR3,A

MOVR4,B

SETBEX0

LCALLDELAY

LCALLDELAY

LCALLDELAY

LCALLDELAY

SETBEA

POPACC

RETI

ZZ:

SETBP0.5

CLRP0.6

MOVR2,#2BHLCALLDELAYLCALLDELAYLCALLDELAYSETBEX0SETBEAPOPACCRETIFF:

CLRP0.5

SETBP0.6MOVR2,#2DHLCALLDELAYLCALLDELAYLCALLDELAYSETBEX0SETBEAPOPACC

RETI

WW0:

CLRP0.5CLRP0.6LCALLDELAYLCALLDELAYLCALLDELAYSETBEX0SETBEAPOPACC

RETIDELAY:

正转操作

正转标志"+"

反转操作

反转标志"-"

停止操作

延时子程序

 

MOVR5,#0E0H

MM0:

MOVR6,#30H

MM1:

DJNZR6,MM1

DJNZR5,MM0

RET

TAB:

DB53H,45H,54H,20H

DB53H,50H,45H,45H;"SETSPEEDPLEASE"代码

DB44H,20H,50H,4CH

DB45H,41H,53H,45H

STAB:

DB30H,31H,32H,33H

DB34H,35H,36H,37H;"0,1,2,3,4,5,6,7"代码

DB38H,39H,41H,42H;"8,9,A,B,C,D,E,F"

DB43H,44H,45H,46H

MMTAB:

DB

DB

DB

43H,4FH,52H,52H

45H,4EH,54H,20H

3AH

;"CURRENT:

"代码

END

4系统仿真

LCD液晶显示电路的系统仿真和调试:

在PROTEUS运行环境中首先检验LCD显示电路,添加程序,运行LCD液晶显示电路能,系统若运行成功将得到如图4.1。

此后在之前的电路基础之上再拓展带中断的独立式键盘,调试成功后的电路如图4.2所示。

LCD1

LM016L

LCD显示电路

U1

LCD1

LM016L

SETSPEEDRLE口EE

DDDDDDDD

LCD液晶显示

SETSPEEDPLEfiSECORRENT:

-27

EDS

DDDDDDDDeWREDV

4,

6・

E

18

9

A

31■

29■

30■

V1

.XTAL1

P0.0/AD0

P0.1/AD1

P0.2/AD2

XTAL2

P0.3/AD3

P0.4/AD4

P0.5/AD5

P0.6/AD6

RST

P07/AD7

P2.0/A8

P2.1/A9

PSEN

P2.2/A10

P2.3/A11

ALE

P2.4/A12

EA

P2.5/A13

P2.6/A14

P27/A15

P10

P30/RXD

P1.1

P3.1/TXD

P1.2

P3.2/INT0~

P13

P3.3/INT1-

P14

P34/T0

P1.5

P35/T1

P17

P3.7/RD

AT89C51

1-

3上

4~-

5上

6=

7■

8■

图4.1LCD液晶显示字符初步调试

U1

19

RV1

29

卜XTAL1

XTAL2

P0.0/AD0

P0.1/AD1

P0.2/AD2

P0.3/AD3

P0.4/AD4

P0.5/AD5

P0.6/AD6

RST

P0.7/AD7

P2.0/A8

P2.1/A9

P2.2/A10

PSEN

P2.3/A11

ALE

P2.4/A12

EA

P2.5/A13

P2.6/A14

P2.7/A15

P10

P11

P31/TXD

P12

P32/INT0

P13

P33/INTI

P1.4

P3.4/T0

P1.5

P3.5/T1

P1.6

P3.6/WR

P1.7

P3.7/RD

18

9

AT89C51

7

8

1

2

3

4

5

-39

38

P

36

35

22减速

■23正转

~24反转’

.25停止

■26

F

28

■10RS

■^71RW

12

■14E

16

21加速

u?

<

AND_5

图4.2

带中断控制的LCD液晶显示

调试用带中断的键盘来控制直流电机驱动模块的部分电路,

功,将得到图4.3

!

39

38~

35

■33

■32

■21

22

~2T

24

25

■26

-27

■28

■10RS

丁11RW

12*

13

■14E

■15

■16

■17

加速

J

反转

减速

正转.

C

停止二1

J9

加速

减速

正转

反转

停止

若按要求调试成

 

19

U1

9■

.XTAL1

XTAL2

RST

P0.0/AD0

P0.1/AD1

P0.2/

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

当前位置:首页 > 工程科技 > 能源化工

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

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