单片机控制PWM的直流电机调速系统的设计毕业设计Word文档格式.docx
《单片机控制PWM的直流电机调速系统的设计毕业设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机控制PWM的直流电机调速系统的设计毕业设计Word文档格式.docx(57页珍藏版)》请在冰点文库上搜索。
从而在传统的改变电动机的转速问题中,就是利用所给电动机的电压的不同,而达到人们所需要的大约速度。
方案二:
以单片机AT89C51为中心通过D/A转换器,将单片机数字量转换为模拟量,从而起到控制电动机的转速问题。
其中在单片机控制部分通过按键直接从程序中调出所需要速度的值,同时输到数码显示部分和D/A转换部分以实现电动机的调速。
图1电路组成框图
方案三:
采用AT89C51单片机进行控制。
本设计需要使用的软件资源比较简单,只需要完成编码器采样部分、键盘控制部分以及显示输出功能。
采用AT89C51进行控制比较简单、易控制、可靠性高、抗干扰能力强、精度高且体积大大减小。
输出速度的调节是通过键操作,显示速度。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器.具有4K字节可编程闪烁存储器,可擦除的的只读存储器(PEROM),ATMEL的AT89C51是一种高效微控制器.AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案.三级程序存储器锁定、128*8位内部RAM、32可编程I/O线、两个16位定时器/计数器、5个中断源、可编程串行通道、低功耗的闲置和电模式、片内振荡器和时钟电路:
电路框图如图2
图2电路组成框图
方案分析:
方案一只能以减小所给电压值而能使电动机的转速有相应的减小,此方案操作性差且不安全。
方案二不能及时的从电动机那里得到相应的转动速度,而是直接从程序哪儿调用相应的数值给数码显示。
所以,此处的电路在速度的显示上失去了其真实性。
方案三在可操作性与实时性方面都都结合了本专业特点,从控制理论与控制技术出发,充分发挥与应用本学科特点。
所以,设计采用方案三。
2.2设计模块方案比较与分析:
2.2.1电机调速控制模块:
采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。
但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。
更主要的问题在于一般电动机的电阻很小,但电流很大;
分压不仅会降低效率,而且实现很困难。
采用继电器对电动机的开或关进行控制,通过开关的切换对电机的速度进行调整。
这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。
采用由达林顿管组成的H型PWM电路。
用单片机控制达林顿管使之工作在占空比可调的开关状态,精确调整电动机转速。
这种电路由于工作在管子的饱和截止模式下,效率非常高;
H型电路保证了可以简单地实现转速和方向的控制;
电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM调速技术。
兼于方案三调速特性优良、调整平滑、调速范围广、过载能力大,因此本设计采用方案三。
2.2.2PWM调速工作方式:
双极性工作制。
双极性工作制是在一个脉冲周期内,单片机两控制口各输出一个控制信号,两信号高低电平相反,两信号的高电平时差决定电动机的转向和转速。
单极性工作制。
单极性工作制是单片机控制口一端置低电平,另一端输出PWM信号,两口的输出切换和对PWM的占空比调节决定电动机的转向和转速。
由于单极性工作制中,应用相对简单易于实现与操作,所以我们采用了单极性工作制。
3硬件部分
3.1单片机的选型:
Wl>
>
n_$L
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
3.1.1主要特性:
+{a_},P_m
Xp_7{s7hSP
·
8031CPU与MCS-51兼容{_)3-R_R
~f2b{uc_9H
4K字节可编程FLASH存储器(寿命:
1000写/擦循环)?
d0x<
(.^-
全静态工作:
0Hz-24KHzeF@-daI_x&
e92zofQR
三级程序存储器保密锁定h_f!
{__R
_qbsnm__#N
128*8位内部RAM_P_&
]S__N
J_A
;
_^9W
32条可编程I/O线
hZ!
K,U<
y
<
bp8x_kfT#
两个16位定时器/计数器R'
s"
gT_5;
_lAr_Y
T_·
6个中断源_R|b%Lsa=
Bh_#K_3B|O
可编程串行通道>
Y}^'
`{qQ
__a]7By$z
低功耗的闲置和掉电模式%W$Wy~_9+
_W[2_^Z
片内振荡器和时钟电路mh\_
^`5~_
_a__\_Y|6
_q__V1_(3
图3单片机芯片
3.1.2.管脚说明:
_gqzC_L,Q
unAd20(b*p
VCC:
供电电压。
-i.._
b_m_
[h^__xy0:
m
GND:
接地。
)U_GR`&
QR
%B}I"
(w9
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
xqdee:
_RD
n&
4x>
R3^|z
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
p?
}o{_0&
_Z
L_@#-_\V6.
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
&
eF^qL]T:
2L_zI2_Dn
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
"
hv9PGg6_
qh_*5s
_"
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
'
_1-jf*_
C_eNWlM=W
口管脚备选功能v6_w8="
T-
6.T/Kj$DWa
P3.0RXD(串行输入口)__]W8.]oLh
"
m_38*_sx
P3.1TXD(串行输出口)E'
OBh0$!
_e
-_?
MpHSho$
P3.2/INT0(外部中断0)#!
Id%=P2
_W_E]_+Vs
P3.3/INT1(外部中断1)_,9o[4%>
I_
[_>
tI"
(3_9
P3.4T0(记时器0外部输入)s_o)MyCV_C
)Z2p^Pm_x
P3.5T1(记时器1外部输入)z_N;
u.8)h0
@(_;
g!
_)
P3.6/WR(外部数据存储器写选通)z_=IkMktD
l?
_uo/_<
u
P3.7/RD(外部数据存储器读选通)g_h~;
6t*a
(d_dtRfXUN
P3口同时为闪烁编程和编程校验接收一些控制信号。
_5V/_y__(4
]/Uw]%_4s
I/O口的内部结构如图4:
|_2pRdn^
&
**;
r_V_N__G,,w_#-_
图4内部结构
I/O口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而
是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操心:
_\Hs6?
_00
]h`w(__M_`
读引脚时也就是把端口作为外部输入线时首先要通过外部指令把端口锁存器置1然后再实行读引脚操作否则就可能读入出错为什么看上面的图如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q^为1加到场效应管栅极的信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1若先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必须附加一个准备动作所以这类I/O口被称为准双向口89C51的P0/P1/P2/P3口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了P1口外P0P2P3口都还有其他的功能w%o_)Q_+
@!
__nt2(e_
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
__g|)DXz/_K?
2yiD_<
\
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
%?
_mc__
bNIX%_r%_7
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
J_xe|wh3
M=__Vrr_D
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
2pvyN_YGV
___\Ko|I_
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
:
d#o
0_'
24_9
}V.
XTAL2:
来自反向振荡器的输出。
2y_*daG<
3.1.8kxx1_/}=3振荡器特性:
ny_C@5^n1
_\,
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
z13T}D09{~
[OkN_
3.1.4芯片擦除:
9[i678EMM!
`/-Lx___a
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
kZ4;
`^_Psp
_^_AIALg\
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作。
但RAM,定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
3.2PWM控制技术
PWM是PulseWidthModulation的缩写,即脉冲宽度调制,是通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值).
调速可分为直流调速和交流调速。
尽管直流电机比交流电机结构复杂、成本较高、维修保养贵,但是其调速性能好,所以在调速传动领域中一直占主导地位。
3.3驱动电路
该驱动电路采用了IR2110集成芯片,该集成电路具有较强的驱动能力和保护功能。
3.3.1芯片IR2110性能及特点
IR2110是美国国际整流器公司利用自身独有的高压集成电路以及无闩锁CMOS技术,于1990年前后开发并且投放市场的,IR2110是一种双通道高压、高速的功率器件栅极驱动的单片式集成驱动器。
它把驱动高压侧和低压侧MOSFET或IGBT所需的绝大部分功能集成在一个高性能的封装内,外接很少的分立元件就能提供极快的功耗,它的特点在于,将输入逻辑信号转换成同相低阻输出驱动信号,可以驱动同一桥臂的两路输出,驱动能力强,响应速度快,工作电压比较高,可以达到600V,其内设欠压封锁,成本低、易于调试。
高压侧驱动采用外部自举电容上电,与其他驱动电路相比,它在设计上大大减少了驱动变压器和电容的数目,使得MOSFET和IGBT的驱动电路设计大为简化,而且它可以实现对MOSFET和IGBT的最优驱动,还具有快速完整的保护功能。
与此同时,IR2110的研制成功并且投入应用可以极大地提高控制系统的可靠性。
降低了产品成本和减少体积。
3.3.2IR2110的引脚图以及功能
引脚1(LO)与引脚7(HO):
对应引脚12以及引脚10的两路驱动信号输出端,使用中,分别通过一电阻接主电路中下上通道MOSFET的栅极。
引脚2(COM):
下通道MOSFET驱动输出参考地端,使用中,与引脚13(Vss)直接相连,同时接主电路桥臂下通道MOSFET的源极。
引脚3(Vcc):
直接接用户提供的输出极电源正极,并且通过一个较高品质的电容接引脚2。
引脚5(Vs):
上通道MOSFET驱动信号输出参考地端,使用中,与主电路中上下通道被驱动MOSFET的源极相通。
与引脚6(VB):
通过一阴极连接到该端阳极连接到引脚3的高反压快恢复二极管,与用户提供的输出极电源相连,对Vcc的参数要求为大于或等于—0.5V,而小于或等于+20V。
引脚9(VDD):
芯片输入级工作电源端,使用中,接用户为该芯片工作提供的高性能电源,为抗干扰,该端应通过一高性能去耦网络接地,该端可与引脚3(Vcc)使用同一电源,也可以分开使用两个独立的电源。
引脚10(HIN)与引脚12(LIN):
驱动逆变桥中同桥臂上下两个功率MOS器件的驱动脉冲信号输入端。
应用中,接用户脉冲形成部分的对应两路输出,对此两个信号的限制为Vss-0.5V至Vcc+0.5V,这里Vss与Vcc分别为连接到IR2110的引脚13(Vss)与引脚9(VDD)端的电压值。
引脚11(SD):
保护信号输入端,当该引脚为高电平时,IR2110的输出信号全部被封锁,其对应的输出端恒为低电平,而当该端接低电平时,则IR2110的输出跟随引脚10与12而变化。
引脚13(Vss):
芯片工作参考地端,使用中,直接与供电电源地端相连,所有去耦电容的一端应接该端,同时与引脚2直接相连。
引脚8、引脚14、引脚4:
为空引脚。
图7IR2110管脚图
IR2110采用HVIC和闩锁抗干扰CMOS工艺制作,具有独立的高端和低端输出通道;
逻辑输入与标准的CMOS输出兼容;
浮置电源采用自举电路,其工作电压可达500V,du/dt=±
50V/ns,在15V下的静态功耗仅有1.6mW;
输出的栅极驱动电压范围为10~20V,逻辑电源电压范围为5~15V,逻辑电源地电压偏移范围为-5V~+5V。
IR2110采用CMOS施密特触发输入,两路具有滞后欠压锁定。
推挽式驱动输出峰值电流≥2A,负载为1000pF时,开关时间典型值为25ns。
两路匹配传输导通延时为120ns,关断延时为94ns。
IR2110的脚10可以承受2A的反向电流。
图8IGBT驱动电路
3.4PWM控制H桥双极性主电路
从上面的原理可以看出,产生高压侧门极驱动电压的前提是低压侧必须有开关的动作,在高压侧截止期间低压侧必须导通,才能够给自举电容提供充电的通路。
因此在这个电路中,Q1、Q4或者Q2、Q3是不可能持续、不间断的导通的。
我们可以采取双PWM信号来控制直流电机的正转以及它的速度。
将IC1的HIN端与IC2的LIN端相连,而把IC1的LIN端与IC2的HIN端相连,这样就使得两片芯片所输出的信号恰好相反。
在HIN为高电平期间,Q1、Q4导通,在直流电机上加正向的工作电压。
其具体的操作步骤如下:
当IC1的LO为低电平而HO为高电平的时候,Q2截止,C1上的电压经过VB、IC内部电路