基于51单片机的直流电机PWM调速控制系统设计

 

本文主要研究了利用MCS-51系列单片机控制PWM信号从而实现对直流电机转速进行控制的方法。本文中采用了三极管组成了PWM信号的驱动系统,并且对PWM信号的原理、产生方法以及如何通过软件编程对PWM信号占空比进行调节,从而控制其输入信号波形等均作了详细的阐述。另外,本系统中使用了霍尔元件对直流电机的转速进行测量,经过处理后,将测量值送到液晶显示出来。

关键词PWM信号,霍尔元件,液晶显示,直流电动机

目录

目录................................................................................................................................ III

1 引言............................................................................................................................... 1

1.1 课题背景............................................................................................................... 1

1.1.2 开发背景........................................................................................................... 1

1.1.3 选题意义........................................................................................................... 2

1.2 研究方法及调速原理........................................................................................... 2

1.2.1 直流调速系统实现方式................................................................................... 4

1.2.2 控制程序的设计............................................................................................... 5

2 系统硬件电路的设计.................................................................................................. 6

2.1 系统总体设计框图及单片机系统的设计.......................................................... 6

2.2 STC89C51单片机简介.......................................................................................... 6

2.2.1 STC89C51单片机的组成.................................................................................. 6

2.2.2 CPU及部分部件的作用和功能........................................................................ 7

2.2.3 STC89C51单片机引脚图.................................................................................. 8

2.2.4 STC89C51引脚功能.......................................................................................... 8

3 PWM信号发生电路设计.............................................................................................. 11

3.1 PWM的基本原理.................................................................................................. 11

3.2 系统的硬件电路设计与分析............................................................................. 11

3.3  H桥的驱动电路设计方案................................................................................ 12

5 主电路设计................................................................................................................ 14

5.1 单片机最小系统................................................................................................. 14

5.2 液晶电路............................................................................................................. 14

5.2.1  LCD 1602功能介绍................................................................................... 15

5.2.2  LCD 1602性能参数................................................................................... 16

5.2.3  LCD 1602与单片机连接........................................................................... 18

5.2.4  LCD 1602的显示与控制命令................................................................... 19

5.3 按键电路............................................................................................................. 20

5.4  霍尔元件电路................................................................................................... 21

5.4.1  A3144霍尔开关的工作原理及应用说明................................................. 22

5.4.2   霍尔传感器测量原理............................................................................... 23

6 系统调试与存在的问题............................................................................................ 24

6.1   软件介绍...................................................................................................... 25

6.2   硬件调试...................................................................................................... 25

6.3   软件调试...................................................................................................... 26

总结................................................................................................................................. 26

致谢................................................................................................................................. 26

参考文献........................................................................................................................ 27

1 引言

1.1 课题背景

1.1.2 开发背景

在现代电子产品中,自动控制系统,电子仪器设备、家用电器、电子玩具等等方面,直流电机都得到了广泛的应用。大家熟悉的录音机、电唱机、录相机、电子计算机等,都不能缺少直流电机。所以直流电机的控制是一门很实用的技术。直流电机,大体上可分为四类:几相绕组的步进电机、永磁式换流器直流电机、伺服电机、 两相低电压交流电机

直流电机的特点是启动转矩大,最大转矩大,转速控制容易,调速后效率很高。与交流调速相比,直流电机结构复杂,生产成本高,维护工作量大。随着大功率晶体管的问世以及矢量控制技术的成熟,使得矢量控制变频技术获得迅猛发展,从而研制出各种类型、各种功率的变频调速装置,并在工业上得到广泛应用。适用范围:直流调速器可以应用在造纸印刷、纺织印染、光缆设备、电工技术设备、食品加工机械、橡胶加工机械、生物制药设备、电路板设备、实验器材 、特种加工、轻工业、 输送设备 车辆工程、医疗设备、通讯设备、雷达设备 等行业中。高性能的交流传动应用比重逐年上升,在工业部门中,用可调速交流传动取代直流传动将成为历史的必然。

尽管如此,我认为设计一个直流电机调速系统,不论是从学习还是实践的角度,对一名机电工程专业的大学生都会产生积极地作用,有利于提高学习热情。 

1.1.3 选题意义

直流电机拥有有良好的起制动性能,可应用于在大范围内的平滑调速,也可广泛的应用于许多需要调速或正反向的电力拖动领域中。在控制角度来看,直流调速更是交流拖动系统的基础。早期的控制系统较大部分以模拟电路作为基础,有运算放大器、非线性集成电路和少量数字电路等,控制系统的硬件部分功能比较复杂,功能比较单一,而且软件系统不灵活、不好调试,不利于直流电动机调速技术发展和应用范围。伴随着单片机控制技术的快速发展,使得许多控制功能算法以及软件得以完成,为直流电动机调速控制提供了更大的发展空间,并使系统达到更高的性能。采用单片机构成控制系统,可以节约人力资源和降低系统成本,从而有效的提高工作效率。

传统的控制系统采用模拟元件,虽然满足了生产要求,但由于元件易老化和使用时容易受到干扰影响,并且线路很复杂,控制效果受到器件性能、温度等因素的影响,故系统的运行可靠性及准确性得不到保证,甚至出现事故。

目前,直流电动机调速系统数字化已经走向实用化,伴随着电子技术的高度发展,促使直流电机调速逐步从模拟化向数字化转变,特别是单片机技术的应用,使直流电机调速技术又进入到一个新的阶段,智能化、高可靠性已成为它发展的趋势。因此实现直流无级调速对我们社会生产和生活有着重大的意义。

1.2 研究方法及调速原理

直流电动机根据励磁方式不同,分为自励和他励两种类型。不同励磁方式的机械特性曲线有所不同。对于直流电动机的转速有以下公式: 

n=U/Cc

-TR内/CrCc

                   (公式 1-1)

其中:

U—电压;

—励磁绕组电阻;

—磁通(Wb);Cc—电势常数;Cr—转矩常量。

由上式可知,直流电机的速度控制分两种方法,有电枢控制法和磁场控制法。比较两种方法优劣,对于磁场控制法,其控制功率较小,低速传动时易受到磁极饱和限制,而高速传动时又受到换向火花和换向器结构限制。所以磁场控制法并不合适,电枢控制法在电机调速中是比较常用的方法。直流电动机的基本结构直流电机的结构是多种多样的,但任何直流电机都包括定子部分和转子 部分,这两部分间存在着一定大小的气隙,使电机中电路和磁场发生相对运 动.直流电机定子部分主要由主磁极,电刷装置和换向极等组成,转子部分 主要由电枢绕组,换向器和转轴等构成,如图1-1所示:

图1-1 直流电机的工作原理图

电枢控制即在励磁电压不变的情况下,把控制电压信号加到电机的电枢上,以控制电机的转速。在电机调速中广泛使用,其中脉宽调制应用广泛。脉宽调速的概念是利用一个固定的频率来控制电源的接通或断开,并通过改变一个周期内“接通”和“断开”时间的长短,即改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。

              

根据上图,当电动机始终接通电源时,电机转速最大为

,占空比为D=

/T,则电机的平均速度为:

,可见只要改变占空比D,就可以得

到不同的电机速度,从而实现调速。

1.2.1 直流调速系统实现方式

PWM为主控电路的调速系统:基于单片机类由软件来实现PWM,在PWM调速系统中占空比是一个重要参数,电源电压不变时,电枢端电压的平均值取决于占空比的大小,改变的值可以改变电枢端电压的平均值:

1、定宽调频法:保持

不变,只改变t,使周期也随之改变。

2、调宽调频法:保持t不变,只改变

,使周期或频率也随之改变。

3、定频调宽法:保持周期T(或频率)不变,同时改变

和t。

1,2方法在调速时改变了控制脉冲的周期或频率,当控制脉冲的频率与

系统的固有频率接近时,将会引起振荡,因而不合适,用定频调宽法来改变占空

比从而改变直流电动机电枢两端电压。

1.2.2 控制程序的设计

软件采用定时中断进行设计。当单片机上电后,系统进入准备状态。当按动按钮后执行相应的程序,根据P1.1的高低电平决定直流电机正反转。根据加、减速按钮,调整P1.1输出高低电平的占空比,从而可以控制高低电平的延时时间,进而控制电压的大小来决定直流电机的转速。

2 系统硬件电路的设计

2.1 系统总体设计框图及单片机系统的设计


本系统采用STC89C51控制输出数据,由单片机IO口产生PWM信号,送到直流电机,直流电机通过测速电路将实时转速送回单片机,进行转速显示,从而实现对电机速度和转向的控制,达到直流电机调速的目的。

主控芯片

文本框: 主控芯片

驱动电路

 

图2-1系统总体设计图

2.2 STC89C51单片机简介

2.2.1 STC89C51单片机的组成

STC89C51单片机由CPU和8个部件组成,它们都通过片内单一总线连接,其基本结构依然是通用CPU加上外围芯片的结构模式,但在功能单元的控制上采用了特殊功能寄存器的集中控制方法。其基本组成如下图所示:

  

2.2.2 CPU及部分部件的作用和功能

中央处理器CPU:它是单片机的核心,完成运算和控制功能。

内部数据存储器:STC89C51芯片中共有256个RAM单元,能作为存储器使用的只是前128个单元,其地址为00H—7FH。通常说的内部数据存储器就是指这前128个单元,简称内部RAM。

内部程序存储器:STC89C51芯片内部共有4K个单元,用于存储程序、原始数据或表格,简称内部ROM。

定时器:STC89C51片内有2个16位的定时器,用来实现定时或者计数功能,并且以其定时或计数结果对计算机进行控制。

中断控制系统:该芯片共有5个中断源,即外部中断2个,定时/计数中断2个和串行中断1个。

2.2.3 STC89C51单片机引脚图

2.2.4 STC89C51引脚功能

VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3.0 RXD(串行输入口)

P3.1 TXD(串行输出口)

P3.2 /INT0(外部中断0)

P3.3 /INT1(外部中断1)

P3.4 T0(记时器0外部输入)

P3.5 T1(记时器1外部输入)

P3.6 /WR(外部数据存储器写选通)

P3.7 /RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作。这是由硬件自动完成的,不需要我们操心,1然后再实行读引脚操作,否则就可能读入出错,为什么看上面的图,如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q^为1加到场效应管栅极的信号为1,该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1,也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1。若先执行置1操作,则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入,由于在输入操作时还必须附加一个准备动作,所以这类I/O口被称为准双向口。89C51的P0/P1/P2/P3口作为输入时都是准双向口。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

3 PWM信号发生电路设计

3.1 PWM的基本原理

调速采用PWM(Pulse Width Modulation)脉宽调制,工作原理:通过产生矩形波,改变占空比,以达到调整脉宽的目的。PWM的定义:脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。模拟信号的值可以连续变化,其时间和幅度的分辨率都没有限制。

3.2 系统的硬件电路设计与分析

电动机PWM驱动模块的电路采用H桥驱动,设计与实现具体电路见下图。本电路采用的是基于PWM原理的驱动电路。

PWM电路由复合体管组成,两个输入端高低电平控制晶体管是否导通或截止。NPN的三极管高电平输入时导通,PNP的三极管低电平输入时导通,当Q1和Q2都导通时,Q3和Q6截止,Q4和Q5导通,电机两端都是GND,电机是不转的,当Q1和Q2都截止时,Q3和Q6导通,Q4和Q5截止,电机两端都是VCC,电机也是不转的,那么,当Q1导通,Q2截止时,Q4和Q6导通,电机右边是电源,左边是地,电机逆时针转动,此时保持Q2截止,PWM控制Q1的导通截止,就可以控制电机的速度,同理,当Q1截止,Q2导通时,Q3和Q5导通,电机的左边是电源,右边是地,电机顺时针转动,此时保持Q1截止,PWM控制Q2的导通截止就可以控制电机的转速。4个二极管在电路中的作用是防止晶体管产生不当反向电压,以及电机两端电流和晶体管上的电流过大保护。

3.3  H桥的驱动电路设计方案

H桥式电动机驱动电路包括4个三极管和一个电机,因为它的形状与字母H相似,故因此而得名。如下图 所示,要使电动机成功运转,须对对角线上的一对三极管通电。据不同的三极管对的导通通电的情况,电流会从右至左或相反方向流过电机,从而改变电机的转动方向。

H桥驱动电路

因此要想使电动机运转,必须使对角线上两个三极管通电。例如,当Q2管与Q3管导通时,电流 从电源正极经Q2从左到右通过电机,再经 Q3到电源的负极。同样Q1与Q4亦是如此,由电流箭头可看,驱动电动机将顺时针转动。

H桥电路驱动电机顺时针转动

5 主电路设计


5.1 单片机最小系统

5.2 液晶电路

液晶部分的电路图如下图所示:

在本毕业设计中,波形的显示是采用简单的液晶LCD 1602显示屏。

LCD(Liquid Crystal Display)是液晶显示器英文名称的缩写,液晶显示器是一种被动式的显示器,即液晶本身并不发光,而是利用液晶经过处理后能改变光线通过方向的特性,达到白底黑字或黑底白字显示的目的。液晶显示器具有功耗低、抗干扰能力强等优点。

5.2.1  LCD 1602功能介绍

LCD 1602也被称作1602字符型液晶。它是一种专门用来显示字母、数字、符号等的点阵型液晶模块,它有若干个

或者

等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有也有间隔,这样则起到了字符间距和行间距的作用,也正因为如此,它不能显示图形。

LCD 1602是指显示的内容为

,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。LCD 1602实物图如图3-4所示,LCD 1602引脚图如图3-5所示。

图3-4 LCD 1602实物图

图3-5 LCD 1602引脚图

目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。

5.2.2  LCD 1602性能参数

LCD 1602的主要技术参数及应用配置如表3-1所示。

表3-1 芯片的主要技术参数及应用配置

显示容量:

16×2个字符

芯片工作电压:

4.5~5.5V

工作电流:

2.0mA(5.0V)

模块最佳工作电压:

5.0V

字符尺寸:

2.95×4.35(WXH)mm

LCD1602的管脚排列如图3-6所示,它共有16个引脚,各引脚功能如表3-2所示。详细说明如下:

(1)VSS:电源地;

(2)VDD:电源正极;

(3)VL:液晶显示偏压信号,对比度调整端,接地时最高,接正电源最低,可接10K,电位器调整;

(4)RS:寄存器选择,高电平选择数据寄存器,低电平选择指令寄存器;

(5)R/W:读/写选择端,高电平读操作,低电平写操作;

(6)E使能信号,当E端由高电平跳变成低电平时,液晶模块执行命令;

(7)BLA背光源正极;BLK背光源负极;

(8)D0~D7数据端口。

表3-2 LCD 1602管脚功能及说明

编号

符号

引脚说明

1

VSS

电源地

2

VDD

电源正极

3

VL

液晶显示偏压信号

4

RS

数据/命令选择端(H/L)

5

R/W

读/写选择端(H/L)

6

E

使能信号

7

D0

Data I/O

8

D1

Data I/O

9

D2

Data I/O

10

D3

Data I/O

11

D4

Data I/O

12

D5

Data I/O

13

D6

Data I/O

14

D7

Data I/O

15

BLA

背光源正

16

BLK

背光源负

LCD 1602的主要技术参数如表3-3所示。

表3-3 LCD 1602A主要技术参数

指令码

功能

0

0

1

1

1

0

0

0

设置16*2显示,5*7点阵,8位数据接口

                          

LCD 1602显示模式如表3-4所示。

表3-4 LCD 1602显示模式

指令码

功能

0

0

0

0

1

D

C

B

D=1开显示 D=0 关显示

C=1 显示光标C=0 不显示光标

B=1 光标闪烁B=0 光标不闪烁

0

0

0

0

0

1

N

S

N=1 当读/写一个字符后,地址指针加1,且光标加1;

N=0 当读/写一个字符后,地址指针减1,且光标减1;

S=1 当写一个字符,整屏显示左移(N=1)或者右移(N=0),以得到光标不移动而整屏移动的效果;

S=0 当写一个字符,整屏显示不移动。

5.2.3  LCD 1602与单片机连接

LCD 1602可以采用两种方式与单片机连接,一种是采用8位数据总线D0~D7,和RS、R/W、EN三个控制端口;另一种是只用D4~D7作为四位数据分两次传送。

进行LCD设计主要是LCD的控制/驱动和外界的接口设计。控制主要是通过接口与外界通信、管理内/外显示RAM,控制驱动器,分配显示数据;驱动主要是根据控制器要求,驱动LCD进行显示。控制器还常含有内部ASCII字符库,或可外扩的大容量汉字库。

单片机AT89S52的P1.1与LCD 1602的使能端E相连,GND与读写选择端R/W相连,P1.0与RS相连,当使能端使能时,再通过命令选择端来控制读数据,写数据,写命令。控制P0端口与LCD 1602的数据端口相连,传输数据。

5.2.4  LCD 1602的显示与控制命令

LCD 1602液晶模块内部的字符发生内存(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。

LCD 1602液晶模块内部的控制器共有11条控制指令,它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)

指令1:清显示,指令码01H,光标复位到地址00H位置;

指令2:光标复位,光标返回到地址00H;

指令3:光标和显示模式设置I/D:光标移动方向,高电平右移,低电平左移S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效;

指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:控制光标的开与关,高电平表示有游标,低电平表示无游标B:控制光标是否闪烁,高电平闪烁,低电平不闪烁;

指令5:光标或显示移位元S/C:高电平时移动显示的文字,低电平时移动光标;

指令6:功能设置命令DL:高电平时为4位总线,低电平时为8位总线N:低电平时为单行显示,高电平时双行显示F:低电平时显示5×7的点阵字符,高电平时显示5×10的点阵字符;

指令7:字符发生器RAM地址设置;

指令8:DDRAM地址设置;

指令9:读忙信号和光标地址BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙;

指令10:写数据;

指令11:读数据。

液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符。

5.3 按键电路

本设计采用按键接低的方式来读取按键,单片机初始时,因为为高电平,当按键按下的时候,会给单片机一个低电平,单片机对信号进行处理

单片机键盘有独立键盘和矩阵式键盘两种:独立键盘每一个I/O 口上只接一个按键,按键的另一端接电源或接地(一般接地),这种接法程序比较简单且系统更加稳定;而矩阵式键盘式接法程序比较复杂,但是占用的I/O少。根据本设计的需要这里选用了独立式键盘接法。

独立式键盘的实现方法是利用单片机I/O口读取口的电平高低来判断是否有键按下。将常开按键的一端接地,另一端接一个I/O 口,程序开始时将此I/O口置于高电平,平时无键按下时I/O口保护高电平。当有键按下时,此I/O 口与地短路迫使I/O 口为低电平。按键释放后,单片机内部的上拉电阻使I/O口仍然保持高电平。我们所要做的就是在程序中查寻此I/O口的电平状态就可以了解我们是否有按键动作了。

在用单片机对键盘处理的时候涉及到了一个重要的过程,那就是键盘的去抖动。这里说的抖动是机械的抖动,是当键盘在未按到按下的临界区产生的电平不稳定正常现象,并不是我们在按键时通过注意可以避免的。这种抖动一般10~200毫秒之间,这种不稳定电平的抖动时间对于人来说太快了,而对于时钟是微秒的单片机而言则是慢长的。硬件去抖动就是用部分电路对抖动部分加之处理,软件去抖动不是去掉抖动,而是避抖动部分的时间,等键盘稳定了再对其处理。所以这里选择了软件去抖动,实现法是先查寻按键当有低电平出现时立即延时10~200毫秒以避开抖动(经典值为20毫秒),延时结束后再读一次I/O 口的值,这一次的值如果为1 表示低电平的时间不到10~200 毫秒,视为干扰信号。当读出的值是0时则表示有按键按下,调用相应的处理程序。硬件电路如图3-15所示:

图 按键部分电路

5.4  霍尔元件电路

用于测量的A44E集成霍尔开关,磁钢用直径D=6.004mm,长度为L=3.032mm的钕铁硼磁钢。电源用直流,霍尔开关输出由四位半直流数字电压表测量,磁感应强度B95A型集成霍尔元件测量。

图3-7霍尔片管脚        管脚接线

5.4.1  A3144霍尔开关的工作原理及应用说明

根据霍尔效应,人们用半导体材料制成的元件叫霍尔元件。它具有对磁场敏感、结构简单、体积小、频率响应宽、输出电压变化大和使用寿命长等优点,因此,在测量、自动化、计算机和信息技术等领域得到广泛的应用。

霍尔传感器A3144Allegro MicroSystems公司生产的宽温、开关型霍尔效应传感器,其工作温度范围可达-40℃~150℃。它由电压调整电路、反相电源保护电路、霍尔元件、温度补偿电路、微信号放大器、施密特触发器和OC门输出极构成,通过使用上拉电阻可以将其输出接入CMOS逻辑电路。该芯片具有尺寸小、稳定性好、灵敏度高等特点,有两种封装形式,一种是3脚贴片微小型封装,后缀为“LH”;另一种是3脚直插式封装,后缀为“UA”。

A3144E系列单极高温霍尔效应集成传感器是由稳压电源,霍尔电压发生器,差分放大器,施密特触发器和输出放大器组成的磁敏传感电路,其输入为磁感应强度,输出是一个数字电压讯号。它是一种单磁极工作的磁敏电路,适用于矩形或者柱形磁体下工作。可应用于汽车工业和军事工程中。

霍尔传感器的外形图和与磁场的作用关系如图2-4所示。磁场由磁钢提供,所以霍尔传感器和磁钢需要配对使用。

霍尔元件和磁钢                            管脚图

图3-8 霍尔传感器的外形图

该霍尔传感器的接线图如图3-9所示。

   图3-9 霍尔传感器的接线图

5.4.2   霍尔传感器测量原理

测量电机转速的第一步就是要将电机的转速表示为单片机可以识别的脉冲信号,从而进行脉冲计数。霍尔器件作为一种转速测量系统的传感器,它有结构牢固、体积小、重量轻、寿命长、安装方便等优点,因此选用霍尔传感器检测脉冲信号,其基本的测量原理如图2-6所示,当电机转动时,带动传感器运动,产生对应频率的脉冲信号,经过信号处理后输出到计数器或其他的脉冲计数装置,进行转速的测量[6]

图3-10霍尔器件测速原理

  • 系统调试与存在的问题

6.1 软件介绍

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。   Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍Keil C51开发系统各部分功能和使用。 Keil_c软件界面如图

图16Keil_c软件界面

Protel99SEPORTEL公司在80年代末推出的EDA软件。Protel99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源--地层和16个机加工层。

Protel99SE软件的特点

  1. 可生成30多种格式的电气连接网络表;
  2. 强大的全局编辑功能;
  3. 在原理图中选择一级器件,PCB中同样的器件也将被选中;
  4. 同时运行原理图和PCB,在打开的原理图和PCB图间允许双向交叉查找元器件、引脚、网络
  5. 既可以进行正向注释元器件标号(由原理图到PCB),也可以进行反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性;
  6. 满足国际化设计要求(包括国标标题栏输出,GB4728国标库); * 方便易用的数模混合仿真(兼容SPICE 3f5);
  7. 支持用CUPL语言和原理图设计PLD,生成标准的JED下载文件; * PCB可设计32个信号层,16个电源-地层和16个机加工层;
  8. 强大的“规则驱动”设计环境,符合在线的和批处理的设计规则检查;
  9. 智能覆铜功能,覆铀可以自动重铺;
  10. 提供大量的工业化标准电路板做为设计模版;

Protel99SE的工作界面是一种标准的Windows界面,如图所示,包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。Protel99SE软件界面如图17

图17 Prtel99SE软件界面

6.2 硬件调试

常见故障:

1、逻辑错误:它是由设计错误或加工过程中的工艺性错误所造成的。这类错误包括错线、开路、短路等。

2、元器件失效:有两方面的原因:一是器件本身已损坏或性能不符合要求;二是组装错误造成元件失效,如电解电容、集成电路安装方向错误等。

3、可靠性差:因其可靠性差的原因很多,如金属化孔、接插件接触不良会造成系统时好时坏,经不起振动;走线和布局不合理也会引起系统可靠性差。

4、电源故障:若样机由电源故障,则加电后很容易造成器件损坏。电源故障包括电压值不符合设计要求,电源引线和插座不对,功率不足,负载能力差等。

调试方法:包括多级调试和联机调试。在调试过程中要针对可能出现的故障认真分析,直至检查出原因并排除。

本次硬件调试过程中,对所出现的问题进行了认真的分析和改正,最后能够很好的达到设计要求的效果。

6.3 软件调试

软件调试一般分为以下四个阶段:1、 编写程序并查错;2、在C语言的编译系统中编译源程序3、对程序进行编译连接,并及时发现程序中存在的错误;4、改正错误。

在本次调试中出现的问题有:

1、在程序中有的函数名未定义;

2、在抄录程序时,少录入一些字符,如:“;”、“{”、“-”等符号,而出现错误;

3、有一些函数名录入时少写一个字母或顺序颠倒;

4、没有注意函数名的调用及定义;

5、芯片引脚定义出错而导致没有实验现象。

在软件调试过程中,对出现的错误进行了认真的分析和修改,多次调试成功后,能够很好的达到既定的设计效果。

仿真整体图如下:

总结

本文所述的直流电机PWM调速系统是以低价位的单片微机STC89C51为核心的,而通过单片机来实现电机调整又有多种途径,相对于其他方法,如用硬件或者硬件与软件相结合的方法对电机转速进行调整,采用PWM软件方法来实现调速过程的优点是拥有更大灵活性和更低成本,它能够有效发挥单片机控制优点和效能,对于简易的速度控制系统实现提供了较为有效的途径。

致谢

经过这次毕业设计我感受颇多,在正式进行设计之前,我参考了一些网上的资料,通过对这些设计方案来开拓自己的思路,最后终于有了自己的思路。

此次毕业设计不仅是对前面所学单片机技术和运动控制理论的一种检验,更是对所学知识大融合,站在新的高度看待新的问题,而且也是对自己运用所学知识的能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺,自己要学习的东西还太多。以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次课程设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。

本设计在硬件上采用了基于PWM技术的H型桥式驱动电路,解决了电机马驱动的效率问题,在软件上也采用较为合理的系统结构及算法,提高了单片机的使用效率,且更有效的控制电机。

这次毕设使我深感要注重理论知识,注重理论联系实际。以前一直觉得理论知识离我们很远,理论只是大谈空谈,这才发现理论的重要性,这才发现理论知识与生活的联系的重要性。

最后,我要感谢魏老师对我这次毕业设计的大力支持,使我不仅在知识方面有了更深一步的了解,并且在我设计东西的思路与逻辑方面有更深刻的影响,使我知道了设计思路与逻辑的重要性,让我获益匪浅。

//完整资料

//微信公众号:木子单片机

参考文献

[1] 张毅刚 彭喜元 .单片机原理与应用设计[M].  北京:北京市海淀区四季青印刷厂,2010.

[2] 张毅刚.新编MCS-51单片机运用设计. 哈尔滨:哈尔滨工业大学出版社,2003.

[3] 张义和 王敏男 许宏昌 余长春.例说51单片机(c语言版). 北京:人民邮电出版社,2009.

[4] 马忠梅 籍顺心 张 凯 马 岩.单片机的C语言应用程序设计. 北京:北京航空航天大学,2010.

[5] Samsung Electronics. S3C44BOX Risc microcontroller ARM instruction sheet .2002.

[6] 郭天祥.《51单片机C语言教程》,电子工业出版社,2005年7月

[7] 丁元杰.《单片微机原理及应用》,机械工业出版社,2005年7月

[8] 楼然苗、李光.《单片机课程设计指导》,北京: 北京航空航天大学出版社,2007.

[9] 林金阳,王明福. 基于MC51单片机的直流电机PWM调速系统[J]. 长春工程学院学报(自然版), 2009,(03) .

[10] 王苏. 直流电机PWM调速研究及单片机控制实现[J]. 机电工程技术, 2008,(11) 2005.

[11] 方力. 基于单片机的直流电动机控制系统设计[J]. 机械制造与自动化, 2011,(06)

[12] 郑宪伟,赵玉林,成广大.基于AVR单片机的直流电机的PWM闭环调速系统的设计[J].煤矿机械,2008,(01).

[13] 蒲龙梅,李泓.单片机控制的直流PWM调速装置的研究[J]技术探讨与研究.2006,(03).

[14] 赵鸿图. 基于单片机AT89C51的直流电机PWM调速系统[J]. 电子技术, 2008,(10) .

[15] 王晓明 电动机的单片机控制(第3版) 北京航空航天大学出版社.2011

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐