单片机直流电机调速系统的设计毕业论文.docx
- 文档编号:25170230
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:16
- 大小:84.77KB
单片机直流电机调速系统的设计毕业论文.docx
《单片机直流电机调速系统的设计毕业论文.docx》由会员分享,可在线阅读,更多相关《单片机直流电机调速系统的设计毕业论文.docx(16页珍藏版)》请在冰豆网上搜索。
单片机直流电机调速系统的设计毕业论文
XX职业技术学院
毕业项目
2011届
项目类别:
毕业设计_______________
项目名称:
单片机直流电机调速系统的设计
专业名称:
机电一体化
姓名:
XXX
班级:
08机电3班
指导教师:
XX
2011年X月X日
摘要........................................................................................................3
Abstract....................................................................................................4
摘要
本文主要研究了利用MCS-51系列单片机控制PWM信号从而实现对直流电机转速进行控制的方法。
文章中采用了专门的芯片组成了PWM信号的发生系统,并且对PWM信号的原理、产生方法以及如何通过软件编程对PWM信号占空比进行调节,从而控制其输入信号波形等均作了详细的阐述。
此外,本文中还采用了芯片IR2110作为直流电机正转调速功率放大电路的驱动模块,并且把它与延时电路相结合完成了在主电路中对直流电机的控制。
另外,本系统中使用了测速发电机对直流电机的转速进行测量,经过滤波电路后,将测量值送到A/D转换器,并且最终作为反馈值输入到单片机进行PI运算,从而实现了对直流电机速度的控制。
在软件方面,文章中详细介绍了PI运算程序,初始化程序等的编写思路和具体的程序实现。
关键词:
PWM信号;测速发电机;PI运算
Abstract
ThisarticlemainlyintroducesthemethodtogeneratethePWMsignalbyusingMCS-51single-chipcomputertocontrolthespeedofaD.C.motor.ItalsoclarifiestheprinciplesofPWMandthewaytoadjustthedutycycleofPWMsignal.Inaddition,IR2110hasbeenusedasanactuatingdeviceofthepoweramplifiercircuitwhichcontrolsthespeedofrotationofD.C.motor.What’smore,tachogeneratorisusedinthissystemtomeasurethespeedofD.C.motor.TheresultofthemeasurementissenttoA/Dconverterafterpassingthefilteringcircuit,andfinallythefeedbacksingleisstoredinthesingle-chipcomputerandparticipatesinaPIcalculation.Asforthesoftware,thisarticleintroducesindetailtheideaoftheprogrammingandhowtomakeit.
Keywords:
PWMsignal;tachogenerator;PIcalculation
一、总体设计概述
(一)总体硬件电路设计
单片机直流电机调速简介:
单片机直流调速系统可实现对直流电动机的平滑调速。
PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。
在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期内“接通”和“断开”时间的长短。
通过改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。
因此,PWM又被称为“开关驱动装置”。
本系统以89C51单片机为核心,通过单片机控制,C语言编程实现对直流电机的平滑调速。
系统控制方案的分析:
本直流电机调速系统以单片机系统为依托,根据PWM调速的基本原理,以直流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速为依据,实现对直流电动机的平滑调速,并通过单片机控制速度的变化。
本文所研究的直流电机调速系统主要是由硬件和软件两大部分组成。
硬件部分是前提,是整个系统执行的基础,它主要为软件提供程序运行的平台。
而软件部分,是对硬件端口所体现的信号,加以采集、分析、处理,最终实现控制器所要实现的各项功能,达到控制器自动对电机速度的有效控制。
【1】
(二)系统总体设计框图
本系统采用89C51控制输出数据,由PWM信号发生电路产生PWM信号,送到直流电机,直流电机通过测速电路,滤波电路,和A/D转换电路交数据重新送回单片机,进行PI运算,从而实现对电机速度和转向的控制,达到直流电机调速的目的。
图1系统总体设计图
(三)8051单片机简介
1.8051单片机的基本组成
8051单片机由CPU和8个部件组成,它们都通过片内单一总线连接,其基本结构依然是通用CPU加上外围芯片的结构模式,但在功能单元的控制上采用了特殊功能寄存器的集中控制方法。
其基本组成如下图所示:
图28051基本结构图【1】
2.CPU及部分部件的作用功能介绍如下
中央处理器CPU:
它是单片机的核心,完成运算和控制功能。
内部数据存储器:
8051芯片中共有256个RAM单元,能作为存储器使用的只是前128个单元,其地址为00H—7FH。
通常说的内部数据存储器就是指这前128个单元,简称内部RAM。
内部程序存储器:
8051芯片内部共有4K个单元,用于存储程序、原始数据或表格,简称内部ROM。
定时器:
8051片内有2个16位的定时器,用来实现定时或者计数功能,并且以其定时或计数结果对计算机进行控制。
中断控制系统:
该芯片共有5个中断源,即外部中断2个,定时/计数中断2个和串行中断1个。
3.8051单片机引脚图
图38051单片机引脚图【1】
二、PWM信号发生电路设计
PWM(脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。
PWM可以应用在许多方面,比如:
电机调速、温度控制、压力控制等等。
在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并且根据需要改变一个周期内“接通”和“断开”时间的长短。
通过改变直流电机电枢上电压的“占空比”来达到改变平均电压大小的目的,从而来控制电动机的转速。
也正因为如此,PWM又被称为“开关驱动装置”。
如图
图4PWM方波
设电机始终接通电源时,电机转速最大为Vmax,设占空比为D=t1/T,则电机的平均速度为Va=Vmax*D,其中Va指的是电机的平均速度;Vmax是指电机在全通电时的最大速度;D=t1/T是指占空比。
由上面的公式可见,当我们改变占空比D=t1/T时,就可以得到不同的电机平均速度Vd,从而达到调速的目的。
严格来说,平均速度Vd与占空比D并非严格的线性关系,但是在一般的应用中,我们可以将其近似地看成是线性关系。
(二)PWM信号发生电路设计
图5PWM信号发生电路【1】
PWM波可以由具有PWM输出的单片机通过编程来得以产生,也可以采用PWM专用芯片来实现。
当PWM波的频率太高时,它对直流电机驱动的功率管要求太高,而当它的频率太低时,其产生的电磁噪声就比较大,在实际应用中,当PWM波的频率在18KHz左右时,效果最好。
在本系统内,采用了两片4位数值比较器4585和一片12位串行计数器4040组成了PWM信号发生电路。
两片数值比较器4585,即图上U2、U3的A组接12位串行4040计数输出端Q2—Q9,而U2、U3的B组接到单片机的P1端口。
只要改变P1端口的输出值,那么就可以使得PWM信号的占空比发生变化,从而进行调速控制。
12位串行计数器4040的计数输入端CLK接到单片机C51晶振的振荡输出XTAL2。
计数器4040每来8个脉冲,其输出Q2—Q9加1,当计数值小于或者等于单片机P1端口输出值X时,图中U2的(A>B)输出端保持为低电平,而当计数值大于单片机P1端口输出值X时,图中U2的(A>B)输出端为高电平。
随着计数值的增加,Q2—Q9由全“1”变为全“0”时,图中U2的(A>B)输出端又变为低电平,这样就在U2的(A>B)端得到了PWM的信号,它的占空比为(255-X/255)*100%,那么只要改变X的数值,就可以相应的改变PWM信号的占空比,从而进行直流电机的转速控制。
使用这个方法时,单片机只需要根据调整量输出X的值,而PWM信号由三片通用数字电路生成,这样可以使得软件大大简化,同时也有利于单片机系统的正常工作。
由于单片机上电复位时P1端口输出全为“1”,使用数值比较器4585的B组与P1端口相连,升速时P0端口输出X按一定规律减少,而降速时按一定规律增大。
(三)PWM发生电路主要芯片的工作原理
1.数据比较器
具有数据比较功能的芯片有74LS6828,74LS6838等8位数值比较器,4位数值比较器4585等。
本PWM发生电路通过两片4位数值比较器4585就可实现PWM信号的产生,因此选用4585作为信号发生电路。
芯片4585的引脚图:
图64585引脚图【1】
2.串行计数器
系统PWM信号发生电路中还使用到一片串行计数器,有串行计数功能的芯片有4024、4040等,它们具有相同的电路结构和逻辑功能,但4024是7位二进制串行计数器,而芯片4040是一个12位的二进制串行计数器,所有计数器位为主从触发器,计数器在时钟下降沿进行计数。
当CR为高电平时,它对计数器进行清零,由于在时钟输入端使用施密特触发器,故对脉冲上升和下降时间没有限制,所有的输入和输出均经过缓冲。
本系统使用4040作为串行计数器,芯片4040的引脚图如图
图74040引脚图【1】
三、功率放大驱动电路设计
(一)芯片IR2110性能及特点
IR2110是美国国际整流器公司利用自身独有的高压集成电路以及无闩锁CMOS技术,于1990年前后开发并且投放市场的,IR2110是一种双通道高压、高速的功率器件栅极驱动的单片式集成驱动器。
它把驱动高压侧和低压侧MOSFET或IGBT所需的绝大部分功能集成在一个高性能的封装内,外接很少的分立元件就能提供极快的功耗,它的特点在于,将输入逻辑信号转换成同相低阻输出驱动信号,可以驱动同一桥臂的两路输出,驱动能力强,响应速度快,工作电压比较高,可以达到600V,其内设欠压封锁,成本低、易于调试。
高压侧驱动采用外部自举电容上电,与其他驱动电路相比,它在设计上大大减少了驱动变压器和电容的数目,使得MOSFET和IGBT的驱动电路设计大为简化,而且它可以实现对MOSFET和IGBT的最优驱动,还具有快速完整的保护功能。
与此同时,IR2110的研制成功并且投入应用可以极大地提高控制系统的可靠性。
降低了产品成本和减少体积。
(二)IR2110的引脚图以及功能
IR2110将输入逻辑信号转换成同相低阻输出驱动信号,可以驱动同一桥臂的两路输出,驱动能力强,响应速度快,工作电压比较高,是目前功率放大驱动电路中使用最多的驱动芯片。
其结构也比较简单,芯片引脚图如下所示:
图8IR2110引脚图【1】
四、主电路设计
(一)延时保护电路
利用IR2110芯片的完善设计可以实现延时保护电路。
IR2110使它自身可对输入的两个通道信号之间产生合适的延时,保证了加到被驱动的逆变桥中同桥臂上的两个功率MOS器件的驱动信号之间有一互琐时间间隔,因而防止了被驱动的逆变桥中两个功率MOS器件同时导通而发生直流电源直通路的危险。
(二)主电路
从上面的原理可以看出,产生高压侧门极驱动电压的前提是低压侧必须有开关的动作,在高压侧截止期间低压侧必须导通,才能够给自举电容提供充电的通路。
因此在这个电路中,Q1、Q4或者Q2、Q3是不可能持续、不间断的导通的。
我们可以采取双PWM信号来控制直流电机的正转以及它的速度。
将IC1的HIN端与IC2的LIN端相连,而把IC1的LIN端与IC2的HIN端相连,这样就使得两片芯片所输出的信号恰好相反。
在HIN为高电平期间,Q1、Q4导通,在直流电机上加正向的工作电压。
其具体的操作步骤如下:
当IC1的LO为低电平而HO为高电平的时候,Q2截止,C1上的电压经过VB、IC内部电路和HO端加在Q1的栅极上,从而使得Q1导通。
同理,此时IC2的HO为低电平而LO为高电平,Q3截止,C3上的电压经过VB、IC内部电路和HO端加在Q4的栅极上,从而使得Q4导通。
电源经Q1至电动机的正极经过整个直流电机后再通过Q4到达零电位,完成整个的回路。
此时直流电机正转。
在HIN为低电平期间,LIN端输入高电平,Q2、Q3导通,在直流电机上加反向工作电压。
其具体的操作步骤如下:
当IC1的LO为高电平而HO为低电平的时候,Q2导通且Q1截止。
此时Q2的漏极近乎于零电平,Vcc通过D1向C1充电,为Q1的又一次导通作准备。
同理可知,IC2的HO为高电平而LO为低电平,Q3导通且Q4截止,Q3的漏极近乎于零电平,此时Vcc通过D2向C3充电,为Q4的又一次导通作准备。
电源经Q3至电动机的负极经过整个直流电机后再通过Q2到达零电位,完成整个的回路。
此时,直流电机反转。
因此电枢上的工作电压是双极性矩形脉冲波形,由于存在着机械惯性的缘故,电动机转向和转速是由矩形脉冲电压的平均值来决定的。
设PWM波的周期为T,HIN为高电平的时间为t1,这里忽略死区时间,那么LIN为高电平的时间就为T-t1。
HIN信号的占空比为D=t1/T。
设电源电压为V,那么电枢电压的平均值为:
Vout=[t1-(T-t1)]V/T
=(2t1–T)V/T
=(2D–1)V
定义负载电压系数为λ,λ=Vout/V,那么λ=2D–1;当T为常数时,改变HIN为高电平的时间t1,也就改变了占空比D,从而达到了改变Vout的目的。
D在0—1之间变化,因此λ在±1之间变化。
如果我们联系改变λ,那么便可以实现电机正向的无级调速。
当λ=0.5时,Vout=0,此时电机的转速为0;
当0.5<λ<1时,Vout为正,电机正转;
当λ=1时,Vout=V,电机正转全速运行。
图9系统主电路【2】
(三)输出电压波形
系统电路经过单片机控制的PWM信号产生电路送来的PWM信号,经过功率放大电路,形成输出电压的波形图如下图如示:
图10输出电压波形【2】
(四)系统总体电路图
直流电机调速系统总体电路设计由单片机产生控制PWM信号发生电路产生PWM信号的数据,控制直流电机调速电路对电机进行调速。
图11系统总休电路图【3】
五、测速发电机
测速发电机是一种测量转速的微型发电机,他把输入的机械转速变换为电压信号输出,并要求输出的电压信号与转速成正比,分为直流与交流两种。
其绕组和磁路经过精确设计,输出电动势E和转速n成线性关系,即E=kn,其中k是常数。
改变旋转方向时,输出电动势的极性即相应改变。
当被测机构与测速发电机同轴连接时,只要检测出输出电动势,即可以获得被测机构的转速,所以测速发电机又称速度传感器。
测速发电机广泛应用于各种速度或者位置控制系统,在自动控制系统中作为检测速度的元件,以调节电动机转速或者通过反馈来提高系统稳定性和精度。
六、滤波电路
经整流后的单向直流或单向脉动直流电,都是由强度不变的直流成分和一个以上的交流成分叠加形成的。
为了使脉动直流电变得较为平稳,把其中的交流成分滤掉,叫做滤波。
滤波有电容滤波、电感滤波等。
本系统中对直流电采用电容滤波的方式,使得直流电压变得更加平稳,调速更加精确。
电路图如图
图12滤波电路【4】
七、A/D转换
(一)芯片选型
能够进行A/D转换的芯片很多,其中AD系列的有8位A/D转换器ADC0809、AD570、AD670、AD673、AD7574等,TLC系列的有TLC545等,其中较为常用的是ADC0809和TLC545,TLC545是美国TEXAS仪器公司新推出的一种开关电容结构逐次逼近式8位A/D转换器,具有19个模拟输入端。
而ADC0809是采样频率为8位的、以逐次逼近原理进行模—数转换的器件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换,具有地址锁存控制的8路模拟开关,应用单一的+5V电源,其模拟量输入电压的范围为0V---+5V,其对应的数字量输出为00H---FFH,转换时间为100μs,无须调零或者调整满量程。
因此本系统采用ADC0809作为A/D转换芯片。
(二)ADC0809的引脚及其功能
ADC0809有28个引脚,其中IN0---IN7接8路模拟量输入。
ALE是地址锁存允许,
、
接基准电源,在精度要求不太高的情况下,供电电源就可以作为基准电源。
START是芯片的启动引脚,其上脉冲的下降沿起动一次新的A/D转换。
EOC是转换结束信号,可以用于向单片机申请中断或者供单片机查询。
OE是输出允许端。
CLK是时钟端。
DB0---DB7是数字量的输出。
ADDA、ADDB、ADDC接地址线用以选定8路输入中的一路,引脚详见图
图13ADC0809引脚图【5】
八、系统软件部分的设计
(一)PI转速调节器原理图及参数计算
图14PI转速调节器原理图【5】
按照典型II型系统的参数选择方法,转速调节器参数和电阻电容值关系如下:
Kn=Rn/R0Γn=Rn/CnTon=1/4R0*Con
参数求法:
电动机P=10KWU=220VI=55An=1000转/分电枢电阻R=0.5欧姆取滤波电路中Ro=40千欧Rn=470千欧Cn=0.2uFCon=1uF则:
Umax=220V
Umin=(220/0.9)*0.5=122V
Yi-1=0W=1000转/分
P=Kp=Rn/Ro=11.7
I=Kp*T/Ti=125
(二)系统中的部分程序设计
软件由1个主程序、1个中断子程序和1个PI控制算法子程序组成。
(三)主程序设计
主程序主程序是一个循环程序,其主要思路是,先设定好速度初始值,这个初始值与测速电路送来的值相比较得到一个误差值,然后用PI算法输出控制系数给PWM发生电路改变波形的占空比,进而控制电机的转速。
其程序流程图如图所示。
软件由1个主程序、1个中断子程序和1个PI控制算法子程序组成。
主程序主程序是一个循环程序,其主要思路是由单片机P1口生数据送到PWM信号发生电路,然后用PI算法输出控制系数给PWM发生电路改变波形的占空比进而控制电机的转速。
主程序流程图如图所示:
图15主程序流程图【5】
(四)PI控制算法子程序设计
/*PI控制算法子程序*/
voidPID_work()
{
negsum=0;possum=0;
if(BJ==0)
{
possum+=k1;
temp[2]=temp[2]+temp[0];}
else
{
negsum+=k1;
temp[2]=temp[2]-temp[0];
}
k3=temp[2]/10;
if(possum>negsum)
{
k2=possum-negsum;//存储结果
CY=0;
temp[1]=k3+k1;//误差积累,
{
if(CY==1)//16位判断。
UK=0xfe;
else
UK=k1+k3;
}
else
UK=1;
P3=UK;
}
九、系统调试
(一)软件调试
在程序编写的过程中,出现了很多问题,包括键盘扫描处理、PWM信号发生电路的控制、以及单片机控制直流电机的转动方向等问题,虽然问题不是很大,但是也让我研究了好长时间,在解决这些问题的时候,我不断向老师和同学请教,希望能通过大家一块的努力把软件编写的更完整,让系统的功能更完备。
经过多天的努力探索,也经过老师的指导,大部分问题都已经解决,就是程序还是不能实现应该实现的功能,这让我很着急。
后来经过一点一点的调试,并认真总结,发现了问题其实在编写中断处理程序时出现了错误,修改后即可实现直流电机调速的目的。
总结这次软件调试,让我认识到了做软件调试的基本方法与流程:
(1)认真检查源代码,看是否有文字或语法错误
(2)逐段子程序进行设计,找出错误出现的部分,重点排查
(3)找到合适的方法,仔细检查程序,分步调试直到运行成功
(二)系统仿真
仿真软件选择Proteus,在Proteus中画出系统电路图,当程序在KeilC中调试通过后,会生成以hex为扩展名的文件,这就是使系统能够在Proteus中成功进行仿真的文件。
将些文件加载到单片机仿真系统中,验证是否能完成对直流电机的速度调节。
若不成功,则重新回到软件调试步骤,进行软件调试。
找出错误所在,更正后重新运行系统。
硬件仿真电路的设计完全按照论文设计方案进行。
在仿真的过程中也遇到了很多问题,比如元件选择、电路设计等,在元件选择方面,有的芯片是我以前学习的时候所没有遇到过的,所以在寻找和使用的过程中也遇到很多麻烦,但经过自己的努力,并借鉴从互联网上找到的资料,我逐渐掌握这些元件的使用方法和原理,为系统设计和仿真提供了良出的基础。
另外,在进行仿真的时候,也经常出现程序没有错误了,但是仿真通不过的情况,这些大部分原因是在管脚定义上,很多系统仿真的问题都出在这。
经过这段时间的努力,使我对仿真软件以及系统设计电路有了更深一步的认识,也为系统的成功奠定了基础。
十、结论
仿真软件选择Proteus,在Proteus中画出系统电路图,当程序在KeilC中调试通过后,会生成以hex为扩展名的文件,这就是使系统能够在Proteus中成功进行仿真的文件。
将些文件加载到单片机仿真系统中,验证是否能完成对直流电机的速度调节。
若不成功,则重新回到软件调试步骤,进行软件调试。
找出错误所在,更正后重新运行系统。
硬件仿真电路的设计完全按照论文设计方案进行。
在仿真的过程中也遇到了很多问题,比如元件选择、电路设计等,在元件选择方面,有的芯片是我以前学习的时候所没有遇到过的,所以在寻找和使用的过程中也遇到很多麻烦,但经过自己的努力,并借鉴从互联网上找到的资料,我逐渐掌握这些元件的使用方法和原理,为系统设计和仿真提供了良出的基础。
另外,在进行仿真的时候,也经常出现程序没有错误了,但是仿真通不过的情况,这些大部分原因是在管脚定义上,很多系统仿真的问题都出在这。
经过这段时间的努力,使我对仿真软件以及系统设计电路有了更深一步的认识,也为系统的成功奠定了基础。
本文所述的直流电机闭环调速系统是以低价位的单片微机8051为核心的,而通过单片机来实现电机调整又有多种途径,相对于其他用硬件或者硬件与软件相结合的方法实现对电机进行调整,采用PWM软件方法来实现的调速过程具有更大的灵活性和更低的成本,它能够充分发挥单片机的效能,对于简易速度控制系统的实现提供了一种有效的途径。
而在软件方面,采用PLD算法来确定闭环控制的补偿量也是由数字电路组成的直流电机闭环调速系统所不能及的。
曾经也试过用单片机直接产生PWM波形,但其最
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 直流电机 调速 系统 设计 毕业论文
![提示](https://static.bdocx.com/images/bang_tan.gif)