《2021-2022收藏资料基于单片机控制直流电机的设计.doc》由会员分享,可在线阅读,更多相关《2021-2022收藏资料基于单片机控制直流电机的设计.doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 河南工业职业技术学院毕业论文 电子工程系毕 业 设 计课题名称 基于单片机控制直流电机的设计专 业 计算机控制学 号 _姓 名 指导教师 2010年 11 月 18 日摘 要:本文主要研究了利用MCS-51系列单片机控制PWM信号从而实现对直流电机转速进行控制的方法。文章中采用了专门的芯片组成了PWM信号的发生系统,并且对PWM信号的原理、产生方法以及如何通过软件编程对PWM信号占空比进行调节,从而控制其输入信号波形等均作了详细的阐述。此外,本文中还采用了芯片IR2110作为直流电机正转调速功率放大电路的驱动模块,并且把它与延时电路相结合完成了在主电路中对直流电机的控制。另外,本系统中使用了
2、测速发电机对直流电机的转速进行测量,经过滤波电路后,将测量值送到A/D转换器,并且最终作为反馈值输入到单片机进行PI运算,从而实现了对直流电机速度的控制。在软件方面,文章中详细介绍了PI运算程序,初始化程序等的编写思路和具体的程序实现。关键词: PWM信号 测速发电机 PI运算Abstract: This article mainly introduces the method to generate the PWM signal by using MCS-51 single-chip computer to control the speed of a D.C. motor. It also
3、 clarifies the principles of PWM and the way to adjust the duty cycle of PWM signal. In addition, IR2110 has been used as an actuating device of the power amplifier circuit which controls the speed of rotation of D.C. motor. Whats more, tachogenerator is used in this system to measure the speed of D
4、.C. motor. The result of the measurement is sent to A/D converter after passing the filtering circuit, and finally the feedback single is stored in the single-chip computer and participates in a PI calculation. As for the software, this article introduces in detail the idea of the programming and ho
5、w to make it.Key words: PWM signal tachogenerator PI calculation目 录摘要2英文摘要3绪论6第一章 系统硬件电路的设计71.1统总体设计框图及单片机系统的设计7 1.1.1 8051单片机简介71.1.2 单片机系统中所用其他芯片简介 9 1.1.3 8051单片机扩展电路及分析12 1.2 PWM信号发生电路设计15 1.2.1 PWM的基本原理15 1.2.2 PWM信号发生电路设计16 1.2.3 PWM发生电路主要芯片的工作原理171.3 功率放大驱动电路设计191.3.1 芯片IR2110性能及特点191.3.2 芯片I
6、R2110引脚图及功能201.4 主电路设计221.4.1 延时保护电路221.4.2 主电路231.4.3 输出电压波形231.5 测速发电机251.6 滤波电路251.7 A/D转换251.7.1 芯片ADC0809介绍261.7.2 ADC0809的引脚及其功能26第二章 系统软件程序的设计262.1 PI转速调节器原理图及参数计算272.2 系统中部分程序的设计272.2.1 单片机资源分配282.2.2 程序流程图28 结论30结束语33参考文献34附录35绪论本文主要研究了利用MCS-51系列单片机,通过PWM方式控制直流电机调速的方法。冲量相等而形状不同的窄脉冲加在具有惯性的环节
7、上时,其效果基本相同。PWM控制技术就是以该结论为理论基础,使输出端得到一系列幅值相等而宽度不相等的脉冲,用这些脉冲来代替正弦波或其他所需要的波形。按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率。PWM控制的基本原理很早就已经提出,但是受电力电子器件发展水平的制约,在上世纪80年代以前一直未能实现。直到进入上世纪80年代,随着全控型电力电子器件的出现和迅速发展,PWM控制技术才真正得到应用。随着电力电子技术、微电子技术和自动控制技术的发展以及各种新的理论方法,如现代控制理论、非线性系统控制思想的应用,PWM控制技术获得了空前的发展。到目前为止,已经出现了多
8、种PWM控制技术。PWM控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。本文就是利用这种控制方式来改变电压的占空比实现直流电机速度的控制。文章中采用了专门的芯片组成了PWM信号的发生系统,然后通过放大来驱动电机。利用直流测速发电机测得电机速度,经过滤波电路得到直流电压信号,把电压信号输入给A/D转换芯片最后反馈给单片机,在内部进行PI运算,输出控制量完成闭环控制,实现电机的调速控制。第一章 系统总体设计框图及
9、单片机系统的设计1.1系统总体框图及单片机系统的设计1.1.1 8051单片机简介1)8051单片机的基本组成 8051单片机由CPU和8个部件组成,它们都通过片内单一总线连接,其基本结构依然是通用CPU加上外围芯片的结构模式,但在功能单元的控制上采用了特殊功能寄存器的集中控制方法。其基本组成如下图所示: 图1.22)CPU及8个部件的作用功能介绍如下:中央处理器CPU:它是单片机的核心,完成运算和控制功能。内部数据存储器:8051芯片中共有256个RAM单元,能作为存储器使用的只是前128个单元,其地址为00H7FH。通常说的内部数据存储器就是指这前128个单元,简称内部RAM。特殊功能寄存
10、器:是用来对片内各部件进行管理、控制、监视的控制寄存器和状态寄存器,是一个特殊功能的RAM区,位于内部RAM的高128个单元,其地址为80HFFH。内部程序存储器:8051芯片内部共有4K个单元,用于存储程序、原始数据或表格,简称内部ROM。并行I/O口:8051芯片内部有4个8位的I/O口(P0,P1,P2,P3),以实现数据的并行输入输出。串行口:它是用来实现单片机和其他设备之间的串行数据传送。定时器:8051片内有2个16位的定时器,用来实现定时或者计数功能,并且以其定时或计数结果对计算机进行控制。图1.3中断控制系统:该芯片共有5个中断源,即外部中断2个,定时/计数中断2个和串行中断1
11、个。振荡电路:它外接石英晶体和微调电容即可构成8051单片机产生时钟脉冲序列的时钟电路。系统允许的最高晶振频率为12MHz。3)8051单片机引脚图 1.1.2 单片机系统中所用其他芯片简介1)地址锁存器74LS37374LS373片内是8个输出带三态门的D锁存器。其结构如下图所示:当使能端G呈高电平时,锁存器中的内容可以更新,而在返回低电平的瞬间实现锁存。如果此时芯片的输出控制端为低,也即是输出三态门打开,锁存器中的地址信息便可以通过三态门输出。以下是其引脚图: 图1.52)程序存储器27128芯片引脚 图1.6 功能表1.1如下: 引脚 工作方式(片选)(允许输出)VPP(编程控制)输出读
12、LLVCCH数据输出维持H*VCC*高阻编程LHVPPL数据输入编程校验LLVPPH数据输出编程禁止H*VPP*高阻数据存储器6264 芯片功能表1.2如下: 引脚工作方式I/O0I/O7未选中H*高阻未选中*L*高阻输出禁止LHHH高阻读LHLH数据输出写LHHL数据输入写LHLL数据输入1.1.3 8051单片机扩展电路及分析图1.8接线分析 P0.7-P0.0:这8个引脚共有两种不同的功能,分别使用于两种不同的情况。第一种情况是8051不带片外存储器,P0口可以作为通用I/O口使用,P0.7-P0.0用于传送CPU的I/O数据。第二种情况是8051带片外存储器,P0.7-P0.0在CPU
13、访问片外存储器时先是用于传送片外存储器的低8位地址,然后传送CPU对片外存储器的读写数据。P2.7-P2.0:这组引脚的第一功能可以作为通用的I/O使用。它的第二功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但是并不能像P0口那样还可以传送存储器的读写数据。P3.7-P3.0:这组引脚的第一功能为传送用户的输入/输出数据。它的第二功能作为控制用,每个引脚不尽相同,表1.3如下:P3口的位第二功能注释P3.0RXD串行数据接收口P3.1TXD串行数据发送口P3.2外中断0输入P3.3外中断1输入P3.4T0计数器0计数输入P3.5T1计数器1计数输入P
14、3.6外部RAM写选通信号P3.7外部RAM读选通信号 VCC为+5V电源线,VSS为接地线。ALE/:地址锁存允许/编程线,配合P0口引脚的第二功能使用,在访问片外存储器时,8051CPU在P0.7-P0.0引脚线上输出片外存储器低8位地址的同时还在ALE/线上输出一个高电位脉冲,其下降沿用于把这个片外存储器低8位地址锁存到外部专用地址锁存器,以便空出P0.7-P0.0引脚线去传送随后而来的片外存储器的读写数据。在不访问片外存储器时,8051自动在ALE/线上输出频率为1/6 fOSC的脉冲序列。该脉冲序列可以用作外部时钟源或者作为定时脉冲源使用。 / VPP:允许访问片外存储器/编程电源线
15、,可以控制8051使用片内ROM还是片外ROM。如果=1,那么允许使用片内ROM;如果=0,那么允许使用片外ROM。:片外ROM选通线,在执行访问片外ROM的指令MOVC时,8051自动在线上产生一个负脉冲,用于片外ROM芯片的选通。其他情况下,线均为高电平封锁状态。RST/VPD:复位备用电源线,可以使8051处于复位工作状态。XTAL1和XTAL2:片内振荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接8051片内OSC的定时反馈电路。石英晶振起振后,应能在XTAL2线上输出一个3V左右的正弦波,以便于8051片内的OSC电路按石英晶振相同频率自激振荡,电容C1、C2可以帮助
16、起振,调节它们可以达到微调fOSC的目的。1.2 PWM信号发生电路设计1.2.1 PWM的基本原理PWM(脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。PWM可以应用在许多方面,比如:电机调速、温度控制、压力控制等等。在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并且根据需要改变一个周期内“接通”和“断开”时间的长短。通过改变直流电机电枢上电压的“占空比”来达到改变平均电压大小的目的,从而来控制电动机的转速。也正因为如此,PWM又被称为“开关驱动装置”。如右图所示: 设电机始终接通电源时,电机转速最大为Vmax,
17、设占空比为D= t1 / T,则电机的平均速度为Va = Vmax * D,其中Va指的是电机的平均速度;Vmax 是指电机在全通电时的最大速度;D = t1 / T是指占空比。由上面的公式可见,当我们改变占空比 D = t1 / T时,就可以得到不同的电机平均速度Vd,从而达到调速的目的。严格来说,平均速度Vd 与占空比D并非严格的线性关系,但是在一般的应用中,我们可以将其近似地看成是线性关系。1.2.2 PWM信号发生电路设计 PWM波可以由具有PWM输出的单片机通过编程来得以产生,也可以采用PWM专用芯片来实现。当PWM波的频率太高时,它对直流电机驱动的功率管要求太高,而当它的频率太低时
18、,其产生的电磁噪声就比较大,在实际应用中,当PWM波的频率在18KHz左右时,效果最好。在本系统内,采用了两片4位数值比较器4585和一片12位串行计数器4040组成了PWM信号发生电路。 两片数值比较器4585,即图上U2、U3的A组接12位串行4040计数输出端Q2Q9,而U2、U3的B组接到单片机的P1端口。只要改变P1端口的输出值,那么就可以使得PWM信号的占空比发生变化,从而进行调速控制。 12位串行计数器4040的计数输入端CLK接到单片机C51晶振的振荡输出XTAL2。计数器4040每来8个脉冲,其输出Q2Q9加1,当计数值小于或者等于单片机P1端口输出值X时,图中U2的(AB)
19、输出端保持为低电平,而当计数值大于单片机P1端口输出值X时,图中U2的(AB)输出端为高电平。随着计数值的增加,Q2Q9由全“1”变为全“0”时,图中U2的(AB)输出端又变为低电平,这样就在U2的(AB)端得到了PWM的信号,它的占空比为(255 -X / 255)*100%,那么只要改变X的数值,就可以相应的改变PWM信号的占空比,从而进行直流电机的转速控制。 使用这个方法时,单片机只需要根据调整量输出X的值,而PWM信号由三片通用数字电路生成,这样可以使得软件大大简化,同时也有利于单片机系统的正常工作。由于单片机上电复位时P1端口输出全为“1”,使用数值比较器4585的B组与P1端口相连
20、,升速时P0端口输出X按一定规律减少,而降速时按一定规律增大。1.2.3 PWM发生电路主要芯片的工作原理1)芯片4585 芯片4585的用途: 对于A和B两组4位并行数值进行比较,来判断它们之间的大小是否相等。芯片4585的功能表:(表1.4如下)输入输出比较级取A3、B3A2、B2A1、B1A0、B0ABABA3B3*1001A3=B3A2B2*1001A3=B3A2=B2A1B1*1001A3=B3A2=B2A1=B1A0B0*1001A3=B3A2=B2A1=B1A0=B0001001A3=B3A2=B2A1=B1A0=B0010010A3=B3A2=B2A1=B1A0B0100100
21、A3=B3A2=B2A1B1*100A3=B3A2B2*100A3B3*100 4585的引脚图: 图2.3 2)芯片4040 芯片4040是一个12位的二进制串行计数器,所有计数器位为主从触发器,计数器在时钟下降沿进行计数。当CR为高电平时,它对计数器进行清零,由于在时钟输入端使用施密特触发器,故对脉冲上升和下降时间没有限制,所有的输入和输出均经过缓冲。芯片4040提供了16引线多层陶瓷双列直插、熔封陶瓷双列直插、塑料双列直插以及陶瓷片状载体等4种封装形式。芯片4040的极限值:电源电压范围:-0.5V18V输入电压范围:-0.5VVDD+0.5V输入电流范围:10mA贮存温度范围:-65C
22、150C芯片4040引出端功能符号:CP: 时钟输入端 CR:清除端 Q0Q11:计数脉冲输出端 VDD: 正电源 VSS: 地端芯片4040功能表:输入输出CPCR*LLH保持计数所有输出端均为L芯片4040的引脚图: 1.3 功率放大驱动电路设计 该驱动电路采用了IR2110集成芯片,该集成电路具有较强的驱动能力和保护功能。1.3.1 芯片IR2110性能及特点 IR2110是美国国际整流器公司利用自身独有的高压集成电路以及无闩锁CMOS技术,于1990年前后开发并且投放市场的,IR2110是一种双通道高压、高速的功率器件栅极驱动的单片式集成驱动器。它把驱动高压侧和低压侧MOSFET或IG
23、BT所需的绝大部分功能集成在一个高性能的封装内,外接很少的分立元件就能提供极快的功耗,它的特点在于,将输入逻辑信号转换成同相低阻输出驱动信号,可以驱动同一桥臂的两路输出,驱动能力强,响应速度快,工作电压比较高,可以达到600V,其内设欠压封锁,成本低、易于调试。高压侧驱动采用外部自举电容上电,与其他驱动电路相比,它在设计上大大减少了驱动变压器和电容的数目,使得MOSFET和IGBT的驱动电路设计大为简化,而且它可以实现对MOSFET和IGBT的最优驱动,还具有快速完整的保护功能。与此同时,IR2110的研制成功并且投入应用可以极大地提高控制系统的可靠性。降低了产品成本和减少体积。1.3.2 I
24、R2110的引脚图以及功能 引脚1(LO)与引脚7(HO):对应引脚12以及引脚10的两路驱动信号输出端,使用中,分别通过一电阻接主电路中下上通道MOSFET的栅极,为了防止干扰,通常分别在引脚1与引脚2以及引脚7与引脚5之间并接一个10K的电阻。引脚2(COM):下通道MOSFET驱动输出参考地端,使用中,与引脚13(Vss)直接相连,同时接主电路桥臂下通道MOSFET的源极。引脚3(Vcc):直接接用户提供的输出极电源正极,并且通过一个较高品质的电容接引脚2。引脚5(Vs):上通道MOSFET驱动信号输出参考地端,使用中,与主电路中上下通道被驱动MOSFET的源极相通。与引脚6(VB):通
25、过一阴极连接到该端阳极连接到引脚3的高反压快恢复二极管,与用户提供的输出极电源相连,对Vcc的参数要求为大于或等于0.5V,而小于或等于+20V。引脚9(VDD):芯片输入级工作电源端,使用中,接用户为该芯片工作提供的高性能电源,为抗干扰,该端应通过一高性能去耦网络接地,该端可与引脚3(Vcc)使用同一电源,也可以分开使用两个独立的电源。引脚10(HIN)与引脚12(LIN):驱动逆变桥中同桥臂上下两个功率MOS器件的驱动脉冲信号输入端。应用中,接用户脉冲形成部分的对应两路输出,对此两个信号的限制为Vss-0.5V至Vcc+0.5V,这里Vss 与Vcc分别为连接到IR2110的引脚13(Vs
26、s)与引脚9(VDD)端的电压值。引脚11(SD):保护信号输入端,当该引脚为高电平时,IR2110的输出信号全部被封锁,其对应的输出端恒为低电平,而当该端接低电平时,则IR2110的输出跟随引脚10与12而变化。引脚13(Vss):芯片工作参考地端,使用中,直接与供电电源地端相连,所有去耦电容的一端应接该端,同时与引脚2直接相连。引脚8、引脚14、引脚4:为空引脚。芯片参数:1IR2110的极限参数和限制:最大高端工作电源电压VB: -0.3V至525V门极驱动输出最大(脉冲)电流IOMAX:2A最高工作频率fmax:1MHz工作电源电压Vcc:-0.3V至25V贮存温度Tstg:-55至1
27、50C工作温度范围TA:-40至125C允许最高结温Tjmax:150C逻辑电源电压VDD:-0.3V至VSS+25V允许参考电压Vs临界上升率dVs/dt:50000V/s高端悬浮电源参考电压Vs:VB-25V至VB+0.3V高端悬浮输出电压VHO:Vs-0.3V至VB+0.3V逻辑输入电压VIN:Vss-0.3V至VDD+0.3V逻辑输入参考电压Vss:Vcc-25V至Vcc+0.3V低端输出电压VLO:-0.3V至Vcc+0.3V功耗PD:DIP-14封装为1.6W2IR2110的推荐工作条件:高端悬浮电源绝对值电压VB:Vs+10V至Vs+20V低端输出电压VLO:0至Vcc低端工作电
28、源电压Vcc:10V至20V逻辑电源电压VDD: Vss+5V至Vss+20V逻辑电源参考电压Vss: -5V至+5V 1.4 主电路设计1.4.1 延时保护电路利用IR2110芯片的完善设计可以实现延时保护电路。IR2110使它自身可对输入的两个通道信号之间产生合适的延时,保证了加到被驱动的逆变桥中同桥臂上的两个功率MOS器件的驱动信号之间有一互琐时间间隔,因而防止了被驱动的逆变桥中两个功率MOS器件同时导通而发生直流电源直通路的危险。1.4.2 主电路从上面的原理可以看出,产生高压侧门极驱动电压的前提是低压侧必须有开关的动作,在高压侧截止期间低压侧必须导通,才能够给自举电容提供充电的通路。
29、因此在这个电路中,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的栅极上,从而使
30、得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到达零电位,完成整个的回路。此时,直流电
31、机反转。因此电枢上的工作电压是双极性矩形脉冲波形,由于存在着机械惯性的缘故,电动机转向和转速是由矩形脉冲电压的平均值来决定的。设PWM波的周期为T,HIN为高电平的时间为t1,这里忽略死区时间,那么LIN为高电平的时间就为T-t1。HIN信号的占空比为D=t1/T。设电源电压为V,那么电枢电压的平均值为:Vout= t1 - ( T - t1 ) V / T = ( 2 t1 T ) V / T = ( 2D 1 )V定义负载电压系数为,= Vout / V, 那么 = 2D 1 ;当T为常数时,改变HIN为高电平的时间t1,也就改变了占空比D,从而达到了改变Vout的目的。D在01之间变化,
32、因此在1之间变化。如果我们联系改变,那么便可以实现电机正向的无级调速。当=0.5时,Vout=0,此时电机的转速为0;当0.51时,Vout为正,电机正转;当=1时,Vout=V,电机正转全速运行1.4.3 输出电压波形1.5 测速发电机测速发电机是输出电动势与转速成比例的微特电机,分为直流与交流两种。其绕组和磁路经过精确设计,输出电动势E和转速n成线性关系,即E=kn,其中k是常数。改变旋转方向时,输出电动势的极性即相应改变。当被测机构与测速发电机同轴连接时,只要检测出输出电动势,即可以获得被测机构的转速,所以测速发电机又称速度传感器。测速发电机广泛应用于各种速度或者位置控制系统,在自动控制
33、系统中作为检测速度的元件,以调节电动机转速或者通过反馈来提高系统稳定性和精度。1.6 滤波电路1.7 A/D转换1.7.1 芯片ADC0809介绍ADC0809是8位、逐次比较式A/D转换芯片,具有地址锁存控制的8路模拟开关,应用单一的+5V电源,其模拟量输入电压的范围为0V-+5V,其对应的数字量输出为00H-FFH,转换时间为100s,无须调零或者调整满量程。1.7.2 ADC0809的引脚及其功能ADC0809有28个引脚,其中IN0-IN7接8路模拟量输入。ALE是地址锁存允许,、接基准电源,在精度要求不太高的情况下,供电电源就可以作为基准电源。START是芯片的启动引脚,其上脉冲的下
34、降沿起动一次新的A/D转换。EOC是转换结束信号,可以用于向单片机申请中断或者供单片机查询。OE是输出允许端。CLK是时钟端。DB0-DB7是数字量的输出。ADDA、ADDB、ADDC接地址线用以选定8路输入中的一路,详见图表1.5如下图。 ADDCADDBADDA选通输入通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7第二章 系统软件部分的设计2.1 P1转速调节器原理图及参数计算 按照典型II型系统的参数选择方法, 转速调节器参数和电阻电容值关系如下:Kn = Rn/ R0 n = Rn/ Cn Ton = 1/4 R0 * Con参数求
35、法: 电动机 P=10KW U=220V I=55A n=1000转/分 电枢电阻R=0.5欧姆 取滤波电路中Ro=40千欧 Rn=470千欧 Cn=0.2uF Con=1uF 则:Umax=220VUmin=(220/0.9)*0.5=122VYi-1=0 W=1000转/分P=Kp=Rn/Ro=11.7I=Kp*T/Ti=1252.2系统中的部分程序设计2.2.1 单片机资源分配工作寄存器0组RO-R7 00H-07H数据缓冲区 30H-7FHPSW.4(RS1=0) PSW.3(RS0=0) ;选中工作寄存器0组P0口地址 80H P1口地址 90HP2口地址 A0HP3口地址 B0H堆
36、栈(SP) 81H定时器/计数器控制 TCON 88H定时器/计数器方式控制 TMOD 89H定时器/计数器0 低字节 TL0 8AH 高字节 TH0 8CH定时器/计数器1 低字节 TL1 8BH 高字节 TH1 8DH中断1PI采样(ui)中断0A/D采样 P1口预置 W P0口测量值(实测Y)Fosc=12MHZ,用一个定时器/计数器定时50ms,用R2作计数器,置初值14H,到定时时间后产生中断,每执行一次中断服务程序,让计数器内容减1,当计数器内容减为0时,则到1s。PI控制算法:Ui=Ui-1+Kp(ei-ei-1)+(Kp*T/Ti)*ei令P=KP I=KP*T/T I则Ui=
37、Ui-1+P(ei-ei-1)+I*eiT采样周期 Ti=RnCn Kp=Rn/R02.2.2 程序流程2.2.3直流电机的调速功能仿真当按下open键时,电机开始工作。若需要加快电机的转速,则按下add_speed键,直到电机转速适中;相反,需要减慢电机的转速时,则按下sub_speed键,待转速满意后,放开按键。当然,在某种特定的环境下,还需改变电机的转速,此时,你可以按一下swap键,以达到改变电机转向的目的。当电机不工作时,则按下close键。图3.1 直流电机调速系统的仿真图1)调速前的波形图图3.2 电机启动时的脉冲波形占空比2)调速后的波形图图3.3 电机减速后的脉冲波形占空比2
38、.2.4的测量并显示功能仿真对电机转速的显示,为使用者提供了更为直观的界面。用户可以根据液晶显示屏上的数字,调整电机的转速,为调速提供了方便。从显示数字的稳定程度,也可以判断电机转速的稳定性。若显示数字几乎不变,则说明电机工作十分稳定;与之相反,显示数字不停地变化,则说明电机工作非常不稳定。图3.4 直流电机系统仿真结论本文所述的直流电机闭环调速系统是以低价位的单片微机8051为核心的,而通过单片机来实现电机调整又有多种途径,相对于其他用硬件或者硬件与软件相结合的方法实现对电机进行调整,采用PWM软件方法来实现的调速过程具有更大的灵活性和更低的成本,它能够充分发挥单片机的效能,对于简易速度控制
39、系统的实现提供了一种有效的途径。而在软件方面,采用PLD算法来确定闭环控制的补偿量也是由数字电路组成的直流电机闭环调速系统所不能及的。曾经也试过用单片机直接产生PWM波形,但其最终效果并不理想,在使用了少量的硬件后,单片机的压力大大减小,程序中有充足的时间进行闭环控制的测控和计算,使得软件的运行更为合理可靠。 致谢在这次毕业设计中,要特别感谢*老师给予的耐心细致的指导,对于在设计过程中所遇到的许多具体问题,他均提出了相应的解决方案。这对于毕业设计的顺利完成起到了十分重要的作用。 我选择了这一课题来作为我的毕业设计不仅是对我三年知识的考察,也是对我应用这些能力的考察,我尽力使自己的设计减少错误,
40、但是由于知识和能力的欠缺,这套设计依然不够完善。在硬件设计部分由于设计之初忽略了实际装配问题,导致电机安放位置不够理想,但由于时间的紧迫,加上整套设计的基本定型而未能加以修正。 通过本次设计我学到的不仅仅是对单片机一方面的了解,同时也让我熟悉了关于设计的各个方面的流程,学会了把自己在大学期间所学的知识运用到实际工作中的方法。从前总感觉学的许多科目没有实际意义,到现在才觉得以前的专业知识不够扎实,从而给自己的设计过程带来了很大的麻烦。这次设计培养了我的综合能力、自学能力,让我在以后的工作岗位上能够更快的适应。参考文献1 王离九,黄锦恩著,晶体管脉冲直流调速系统(第二版).北京.华中理工大学出版社
41、出版20042 丁元杰主编,上海市教育委员会组编单片微机原理及应用(第一版):上海。机械工业出版社20063 李荣生主编,电气传动控制系统设计指导(第三版).上海.机械工业出版社20014 吴守箴,臧英杰 编著. 电气传动的脉宽调制控制技术(第一版).上海.机械工业出版社20055 陈伯时主编.自动控制系统-电力拖动控制(第三版).北京.中央广播电视大学出版社20066 孙克梅. 直流伺服电机的单片机控制及应用(第二版). 沈阳.沈阳航空工业学院学报20097邓星钟主编.机电传动控制(第三版)).武昌:华中科技大学出版社20078张建民主编.机电一体化系统设计(第二版).北京:北京理工大学出版社9廖常初主编.可编程序控制器的编程方法与工程应用.重庆:重庆大学出版社10黄坚主编.自动控制原理及其应用(第三版).北京:高等教育出版社200911李宇明主编.C语言程序设计.武汉:武汉理工大学出版社2007.212王