基于单片机的PWM直流调速系统毕业设计.docx
- 文档编号:28245385
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:57
- 大小:521.37KB
基于单片机的PWM直流调速系统毕业设计.docx
《基于单片机的PWM直流调速系统毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的PWM直流调速系统毕业设计.docx(57页珍藏版)》请在冰豆网上搜索。
基于单片机的PWM直流调速系统毕业设计
基于单片机的PWM直流调速系统毕业设计
基于单片机的PWM直流调速系统设计I
摘要I
AbstractII
第一章绪论1
1.1课题背景1
1.2课题功能1
第二章系统硬件电路的设计2
2.1 系统总体设计2
2.1.1 系统总体设计框图2
2.1.2单片机的选择及其简介2
2.1.3其他芯片简介6
2.2 PWM信号发生电路设计18
2.2.1 PWM的基本原理18
2.2.2 PWM信号发生电路设计19
2.2.3 H桥芯片的工作原理20
2.3 主电路设计23
2.4 转速和电流的测量23
2.5 AD转换25
2.6显示与键盘电路25
第三章系统软件程序的设计27
3.1 PID控制算法原理及流程图27
3.2系统部分程序的设计……………………………………………………....29
3.2.1单片机资源分配……………………………………………………...29
3.2.2程序流程图29
结论32
参考文献33
附录34
致谢47
第一章绪论
1.1课题背景
随着时代的进步和科技的发展,电机调速系统在工农业生产、交通运输以及日常生活中起着越来越重要的作用,因此,对电机调速的研究有着积极的意义.长期以来,直流电机被广泛应用于调速系统中,而且一直在调速领域占居主导地位,这主要是因为直流电机不仅调速方便,而且在磁场一定的条件下,转速和电枢电压成正比,转矩容易被控制;同时具有良好的起动性能,能较平滑和经济地调节速度。
因此采用直流电机调速可以得到良好的动态特性。
由于直流电动机具有优良的起、制动性能,宜于在广泛围平滑调速。
在轧钢机、矿井卷机、挖掘机、金属切削机床、造纸机、高层电梯等领域中得到广泛应用。
近年来交流调速系统发展很快,然而直流控制系统毕竟在理论上和在时间上都比较成熟,而且从反馈闭环控制的角度来看,它又是交流系统的基础,长期以来,由于直流调速系统的性能指标优于交流调速系统。
因此,直流调速系统一直在调速系统领域占重要位置。
1.2课题功能
本论文介绍了基于AT89C52单片机来实现最优PID控制的直流脉冲(PWM)调速系统,并且详细论述了该系统的控制方法、结构、参数设计、程序设计等方面的问题。
该系统结构简单,调速性能好,性能价格比高,真正实现了直流调速系统的高精度控制。
本设计是基于单片机控制的PWM直流电机调速系统,系统以AT89C52单片机为核心,以2A、1000r/min小直流电机为控制对象,L298N为H桥驱动芯片实现速度、电流反馈双闭环。
采用PID控制算法,调节PWM占空比从而控制电机两端电压,以达到调速的目的。
用4*3键盘输入有关控制信号及参数,可以实现电机的启制动、正反转、速度调节。
并在4位LED上实时显示输入参数及动态转速。
第二章系统硬件电路的设计
2.1 系统总体设计
2.1.1 系统总体设计框图
本设计的任务是基于单片机控制的PWM直流电机调速系统,系统以单片机为核心,以小直流电机为控制对象,实现速度、电流反馈双闭环、采用PID控制算法。
方便的人机对话接口,用键盘输入有关控制信号及参数,可以实现电机的启制动、正反转、速度调节。
并在LED上实时显示输入参数及动态转速。
因此整个系统大致包括五部分:
单片机、显示电路、键盘电路、驱动电路、检测电路。
【1】
根据设计任务,提出如图2.1所示的硬件电路组成框图。
图2.1
2.1.2单片机的选择及其简介
本设计选用了AT89C52单片机【2】,下面对它进行介绍。
图2.2给出了At89C52的芯片引脚结构。
at89c52单片机是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片含8Kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机数据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容。
功能强大的at89c52单片机适合于许多较为复杂的控制应用场合。
(1)At89C52主要性能参数
①与Mcs-51产品指令和引脚完全兼容。
②8字节可重擦写FLASH闪速存储器
③1000次擦写周期
④全静态操作:
0HZ-24MHZ
⑤三级加密程序存储器
⑥256X8字节部RAM
⑦32个可编程I/0口线
⑧3个16位定时/计数器
⑨8个中断源
⑩可编程串行UART通道、低功耗空闲和掉电模式
(2)At89C52功能特性
AT89C52提供以下标准功能:
8字节FLASH闪速存储器,256字节部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片振荡器及时钟电路。
同时,AT89c52可降至OHz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器.串行通信口及中断系统继续工作。
掉电方式保存RAM中的容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位.
图2.2AT89C52引脚图
(3)At89C52部分引脚功能说明
①XTAL1:
片晶振电路反相放大器的输入端.
②XTAL2:
片晶振电路反相放大器的输出端。
③P0:
P0口是一组8位漏极开路型双向I/O口,即地址/数据总线复用口。
作为输出口用时.每位能以吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活部上拉电阻。
在FLASH中编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
④P1口:
P1是一个带部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为部存在上拉电阻某个引脚被外部信号拉低时会输出一个电流。
与AT89C51不同之处是,Pl.0和P1.1还可分别作为定时/计数器2的外部计数输入(Pl.0/T2)和外部触发输入(P1.1/T2EX),FLASH编程和程序校验期间,Pl接收低8位地址。
⑤P2口:
P2是一个带有部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑电路。
对端口P2写“1”,通过部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOvxDPTR指令)时,P2送出高8位地址数据。
在访问8位地址的外部数据存储器、如执行MOVXRI指令)时,P2口输出P2锁存器的容。
FLASH编程或校验时,P2亦接收高位地址和一些控制信号。
⑥P3口:
P3口是一组带有部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流。
P3口除了作为I/0口线外,更重要的用途是它的第二功能,如表2.1所示。
此外,P3口还接收一些用于FLASH闪速存储器编程和程序校验的控制信号。
⑦RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
表2.1
端口引脚
第二功能
P3.0
RXD(串行输入口〕
P3.1
TXD(串行输出口〕
P3.2
INTO(外中断0〕
P3.3
INTO(外中断l)
P3.4
TO(定时/计数器0)
P3.5
Tl(定时/计数器l)
P3.6
WR(外部数据存储器写选通)
P3.7
RD(外部数据存储器读选通)
⑧ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节.一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位.可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活,此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
⑨PSEN:
程序储存允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
⑩EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地).需注意的是:
如果加密位LBI被编程,复位时部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行部程序存储器中的指令。
flash存储器编程时,该引脚加上+12V的编程允许电源VPP ,当然这必须是该器件是使用12V编程电压VPP。
(4)AT89C52特殊功能寄存器
在AT89C52片存储器中,80H-FFH共128个单元为特殊功能寄存器(SFE)。
并非所有的地址都被定义,从80H-FFH共128个字节只有一部分被定义,还有相当一部分没有定义。
对没有定义的单元读写将是无效的,读出的数位将不确定,而写入的数据也将丢失。
不应将数据"1"写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能。
在这种情况下,复位后这些单元数值总是“0”。
(5)AT89C52 单片机扩展电路及分析
AT89C52提供以下标准功能:
8字节FLASH闪速存储器,256字节部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片振荡器及时钟电路。
由于AT89C52具有256字节部RAM。
对本设计已经足够使用,因此不需要再扩展外部数据存储器。
但本设计需外扩I/O接口,因此采用8255扩展外部I/O口。
因为单片机的P0口是数据总线和低八位地址线共用的,所以需要使用地址锁存器74HC373。
由此将P0口地址送于74HC373锁存,以便下一时刻,P0口传送数据。
2.1.3其他芯片简介
2.1.3.18255的简介【3】
8255是一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口.它具有24个可编程设置的I/O口,即3组8位的I/O口,为PA口,PB口和PC口.它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4~PC7),B组包括B口及C口(低4位,PC0~PC3).A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I/O3种模式;B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定。
图2.3给出了8255芯片引脚结构.
8255引脚功能
①RESET:
复位输入线,当该输入端外接高电平时,所有部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
图2.3 8255引脚图
②CS:
芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.
③RD:
读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
④WR:
写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。
⑤D0~D7:
三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
⑥PA0~PA7:
端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。
⑦PB0~PB7:
端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。
⑧PC0~PC7:
端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。
8255有4个部缓存器,分别是A端口缓存器、B端口缓存器、C端口缓存器及控制缓存器。
当微电脑要读写8255的部缓存器时,必须利用A1及A0指定要对那一个暂器进行读写 动作。
下表为A1、A0配合RD、WR及CS的控制状态表。
表2.2
A1
A0
RD
WR
CS
操作情形
0
0
0
1
0
A端口数据送到总线
0
1
0
1
0
B端口数据送到总线
1
0
0
1
0
C端口数据送到总线
0
0
1
0
0
总线数据存入A端口
0
1
1
0
0
总线数据存入B端口
1
0
1
0
0
总线数据存入C端口
1
1
1
0
0
总线数据存入控制缓存器
×
×
×
×
1
总线呈高阻抗
1
1
0
1
0
错误操作
×
×
×
1
0
总线呈高阻抗
2.1.3.274HC373简介【4】
373为三态输出的八D透明锁存器,共有54/74S373和54/74LS373两种线路结构型式。
74HC373其主要电器特性的典型值如下(不同厂家具体值有差别):
型号tPdPD
54S373/74S3737ns525mW
54LS373/74LS37317ns120mW
373的输出端O0~O7可直接与总线相连。
当三态允许控制端OE为低电平时,O0~O7为正常逻辑状态,可用来驱动负载或总线。
当OE为高电平时,O0~O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器部的逻辑操作不受影响。
当锁存允许端LE为高电平时,O随数据D而变。
当LE为低电平时,O被锁存在已建立的数据电平。
当LE端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。
图2.4给出了74HC373芯片引脚结构。
图2.474HC373引脚图
2.1.3.3L298N简介【5】
L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,部同样包含4通道逻辑驱动电路。
可以方便的驱动两个直流电机,或一个两相步进电机。
图2.5是L298N部结构图
L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压。
4脚VS接电源电压,VS电压围VIH为+2.5~46V。
输出电流可达2.5A,可驱动电感性负载。
1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。
L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,如图2.7此装置我们选用驱动一台电动机。
5,7,10,12脚接输入控制电平,控制电机的正反转。
EnA,EnB接PWM端,控制电机的速度。
表2.3是L298N功能逻辑图。
图2.5
表2.3
In3,In4的逻辑图与表1.3相同。
由表2.3可知EnA为低电平时,电机停止运行,当EnA为PWM时,输入电平为一高一低,电机正或反转。
同为低电平电机停止,同为高电平电机刹停。
下图是其引脚图:
图2.6
图2.7
图2.8为采用部集成有两个桥式电路的专用芯片L298所组成的电机驱动电路。
驱动芯片L298是驱动二相和四相步进电机的专用芯片,我们利用它部的桥式电路来驱动直流电机,这种方法有一系列的优点。
每一组PWM波用来控制一个电机的速度,而另外两个I/O口可以控制电机的正反转,控制比较简单,电路也很简单,一个芯片包含有8个功率管,这样简化了电路的复杂性,如图所示IOB10、IOB11控制第一个电机的方向,IOB8输入的PWM控制第一个电机的速度;IOB12、IOB13控制第二个电机的方向,IOB9输入的PWM控制第二个电机的速度。
图2.8
2.1.3.4AD574简介【6】
AD574A是美国模拟数字公司(Analog)推出的单片高速12位逐次比较型A/D转换器,置双极性电路构成的混合集成转换芯片,具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功能,只需外接少量的阻容器件即可构成一个完整的A/D转换器.
AD574是一种常用的12位AD变换芯片,也可以实现8位转换。
有两个模拟信号输入端,分别为10V输入端和20V输入端,各自都既允许单极性输入,也允许双极性输入。
但芯片本身是单路工作,只允许一个模拟信号输入端接入信号。
它可以和16位CPU相连接,也可以和8位CPU相连接。
只需要适当的改变某些控制引脚的接法。
AD574可以通过简单的三态门、锁存器接口与微机的系统总线相连接,也可以通过编程接口与系统总线相连接。
采用查询STS状态可判断变换是否完成。
AD574A主要功能特性如下:
①分辨率:
12位
②非线性误差:
小于±1/2LBS或±1LBS
③转换速率:
25us
④模拟电压输入围:
0—10V和0—20V,0—±5V和0—±10V两档四种
⑤电源电压:
±15V和5V
⑥数据输出格式:
12位/8位
⑦芯片工作模式:
全速工作模式和单一工作模式
图2.9AD574引脚图
AD574A的引脚结构如图2.9。
[1].Pin1(+V)——+5V电源输入端。
[2].Pin2(12/8)——数据模式选择端,通过此引脚可选择数据纵线是12位或8位输出。
[3].Pin3(CS)——片选端。
[4].Pin4(A0)——字节地址短周期控制端。
与端用来控制启动转换的方式和数据输出格式。
须注意的是,端TTL电平不能直接+5V或0V
连接。
[5].Pin5(R/C)——读转换数据控制端。
[6].Pin6(CE)——使能端。
[7].Pin7(V+)——正电源输入端,输入+15V电源。
[8].Pin8(REFOUT)——10V基准电源电压输出端。
[9].Pin9(AGND)——模拟地端。
[10].Pin10(REFIN)——基准电源电压输入端。
[11].Pin(V-)——负电源输入端,输入-15V电源。
[12].Pin1(V+)——正电源输入端,输入+15V电源。
[13].Pin13(10VIN)——10V量程模拟电压输入端。
[14].Pin14(20VIN)——20V量程模拟电压输入端。
[15].Pin15(DGND)——数字地端。
[16].Pin16—Pin27(DB0—DB11)——12条数据总线。
通过这12条数据总线向外输出A/D转换数据。
[17].Pin28(STS)——工作状态指示信号端,当STS=1时,表示转换器正处于转换状态,当STS=0时,声明A/D转换结束,通过此信号可以判别A/D转换器的工作状态,作为单片机的中断或查询信号之用。
AD574工作时序的控制功能状态表。
表2.4
2.1.3.5LF398简介
LF398是一种反馈型采样保持放大器,也是目前较为流行的通用型采样保持放大器。
与LF398结构相同的还有LF198/LF298等,都是由场效应管构成,具有采样速度高,保持电压下降慢和精度高等特点。
当作为单一放大器时,LF398直流增益精度为0.002%,采样时间小于6us时精度可达0.01%;输入偏置电压的调整只需在偏置端(2脚)调整即可,并且在不降低偏置电流的情况下,带宽允许1MHz,其主要技术指标有:
1、工作电压:
+5--+18V
2、采样时间:
<10us
3、可与TTL、PMOS、CMOS兼容
4、当保持电容为0.01uF时,典型保持步长为0.5mV
5、低输入漂移,保持状态下输入特性不变
6、在采样或保持状态时高电源抑制
下图为集成采样/保持器--LF398引脚图。
图2.10LF398引脚图
2.1.3.63020T简介
霍尔传感器【7】是对磁敏感的传感元件,常用于开关信号采集的有CS3020、CS3040等,这种传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,输出通常是集电极开路(OC)门输出,工作电压围宽,使用非常方便。
如图2.11所示是CS3020的外形图,将有字面对准自己,三根脚从左右
分别是Vcc,地,输出。
g,\9^\2B:
~#t0
~eO&is8I%j0 图2.11 CS3020外形图电子园51单片机学习网`+PM:
X_8W
使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的圆周上粘上一粒磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。
如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。
在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。
z{t7G5FD0 这种传感器不怕灰尘、油污,在工业现场应用广泛。
2.1.3.7CS040G简介
CS040G系列霍尔电流传感器
应用霍尔效应开环原理的电流传感器,能在电隔离条件下测量直流、交流、脉冲以及各种不规则波形的电流。
结构参数(mm):
图2.12
引脚说明:
1:
+15V
2:
0V(电源地)
3:
Vout
4:
-15V
表2.5结构参数
型号
CS010G
CS020G
CS030G
CS040G
IPN
原边额定输入电流
10
20
30
40
A
IP
原边电流测量围
0~±20
0~±40
0~±60
0~±80
A
VSN
副边额定输出电压
1±1%
V
VC
电源电压
±12~±15(±5%)
V
IC
电流消耗
VC=±15V <20
mA
Vd
绝缘电压
在原边与副边电路之间2.5KV有效值/50Hz/1分钟
εL
线性度
≤1
%FS
V0
零点失调电压
TA=25℃ <±30
mV
VOM
磁失调电压
IPN→0 <±20
mV
VOT
失调电压温漂
IPN=0 TA=–25~+85℃ <±1
mV/℃
Tr
响应时间
≤3
μs
f
频带宽度(-3dB)
DC~20
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 PWM 直流 调速 系统 毕业设计