《毕业设计开关电源系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计开关电源系统设计.doc(33页珍藏版)》请在三一办公上搜索。
1、开关电源系统设计摘 要随着电力电子技术的发展,电子设备的种类越来越多,电源在各个系统中的核心作用日趋明显。另外,电子设备的小型化和低成本化促使电源向轻、薄、小和高效率方向发展。基于这个思想设计了一款低功率易控制的开关稳压电源,以满足小型电子设备的供电需要。系统的实现是基于PWM波控制下的DC-DC转换原理。系统以单片机MSP430F169为控制核心,采用SG3525PWM脉宽控制器实现对Boost升压斩波电路稳压输出。系统硬件部分主要包括:整流滤波电路、Boost斩波电路、PWM波形产生与控制电路、采样电路、保护电路、单片机最小系统等。软件包括:键盘控制模块、A/D电压和电流采集模块、调整模块
2、、显示模块等几个部分。系统能够实现电压输出在3036V范围内可调,输出电流最大可达2A,电压调整率小于3%,效率达83.7%。系统具有电压键盘设定和输出显示功能,同时具有过压、欠压和过流保护功能。关键词:开关电源,单片机MSP430,PWM控制芯片,DC-DC变换Switching Power Supply DesignAbstractAlong with the development of the power electronic technology, the kinds of electronic equipment have been more and more, power sup
3、plys core role in every system has become increasingly obvious. In addition, the miniaturization and low cost of electronic equipment turn power to the direction of light, thin, small and high efficient. Based on this idea, the design has designed a low-power and easy controlled switching power supp
4、ly to meet the power supply needs of small-scale electronic equipment .System implementation is based on the DC - DC conversion principle which is under the control of PWM waves. System to single-chip microcomputer MSP430F169 as the control core, using SG3525PWM pulse-width controller to achieve Boo
5、st chopper circuitoutput voltage stable. System hardware includes: rectifier filter circuit, Boost chopper circuit, PWM waveform generation and control circuit, sampling circuit, protection circuits, thesingle-chip microcomputer minimize system. Software includes: keyboard control module, the voltag
6、e and current A / D acquisition module, adjusting module, display module, and several other parts. System can realize output voltage at the range of 30 36V adjustable, output current is up to 2A, Voltage adjustment rate is less than 3%, efficiency of 83.7%. System has the function of voltage keyboar
7、d settings and output display, but also has overvoltage, undervoltage, and overcurrent protection.Keywords: switching power supply, microcontroller MSP430, PWM control chip, DC-DC conversion目 录第一章 绪论11.1 设计背景和研究目的11.2 设计的主要研究工作11.3 设计目标2第二章 系统总设计方案3第三章 系统硬件设计43.1 整流滤波电路43.1.1 二极管整流桥堆和滤波电容C1的选择43.1.2
8、 保护整流桥和减小冲击电流的设计53.2 DC-DC变换器设计与器件选择53.2.1 电路的工作原理63.2.2 器件的选择63.2.3 减小开关转换纹波电压设计83.3 采样电路83.4 PWM波形产生与控制电路93.5 驱动电路的设计103.6 保护电路设计与参数计算123.6.1 SG3525自带保护123.6.2 保护电路的设计123.6.3 继电器保护133.7 按键与显示电路143.7.1 按键输入模块设计143.7.2 显示模块设计143.8 单片机最小系统143.8.1 电源153.8.2 复位电路153.8.3 晶振153.8.4 简易仿真器JTAG下载线15第四章 系统软件
9、设计174.1 主程序流程图设计174.2 各个子模块流程图设计184.2.1 键盘控制模块184.2.2 电压和电流采集模块194.2.3 对输出信号的调整模块194.2.4 显示模块204.3 各个模块的C语言程序编写214.3.1 键盘程序214.3.2 电压电流采样程序224.3.3 对输出电压的调整程序234.3.4 显示程序24第五章 结论26参考文献27致 谢28附 录29第一章 绪论1.1 设计背景和研究目的随着电力电子技术的发展,电子系统的应用领域越来越广泛,电子设备的种类也越来越多,任何电子设备都离不开可靠的电源,他们要求电源提供长期稳定的电压, 而市电电压的不稳定又使传统
10、电源难以实现输出电压长期稳定的功能,开关稳压电源由于其输出电压长期稳定而且具有高频率、高功率密度、高效率、重量轻、节约能耗等优点得到了广泛应用。同时,随着电子技术应用的迅速普及,对于电子仪器和设备的要求又有了新的内容:在性能上,要更加安全可靠;在使用和操作上,自动化和智能化程度要越来越高;在体积和重量上,要日趋小型化和微型化;在功耗和电磁兼容上,要功率因数大和转换效率高。这样一来,就使得具有众多优点的开关稳压电源显得更为重要了。基于这个思想设计了一个低功率开关稳压电源,以满足小型电子设备的供电需要。 1.2 设计的主要研究工作开关稳压电源相对于传统的线性稳压电源具有精度高,体积小,重量轻,效率
11、高等优点,从而逐渐取代线性电源,广泛应用于计算机、汽车、现代化家电、仪表和通信等各个行业。随着脉冲宽度调制(PWM)技术的发展,PWM 的控制方式愈来愈多地应用于开关控制器的设计。其特征是电路设计简单,性能稳定,控制型效率高,能够很好的稳定电压幅值,同时,通过改变脉冲宽度占空比固定开关的频率改善波形,具有良好的抑制输出电压纹波和噪声功能。本设计就是一款基于SG3525PWM控制器的开关稳压电源。开关电源的工作原理就是通过改变开关器件的开通时间和工作周期的比值即占空比来改变输出电压。220V交流电压经过降压、整流、滤波后,得到18V的直流电压,直流电压经Boost电路升压再滤波得平滑的直流输出。
12、单片机根据采样所得电压与键盘输入电压调整输出信号,对SG3525进行控制生成PWM信号从而驱动功率开关管工作,实现输出电压的稳定。同时本设计还采用MSP430单片机作为控制器,来实现对输出电压的设定调整和电压电流的显示,MSP430单片机内部多个具有高、中、低速的时钟源,可以灵活地配置给各模块使用而且可以工作于多种低功耗的模式,极大地降低了控制电路的功耗,提高整体率;430F169有ADC12模块能够实现12位高精度的模数转换、硬件乘法器、直接存储器访问控制器(DMAC),使得整个电路不需要任何扩展就能完成对电源输出电压、电流的实时采集,电路结构极为简单。系统的设计包括软件和硬件两部分。系统硬
13、件部分主要包括:整流滤波电路、Boost斩波电路、PWM波形产生与控制电路、驱动电路、采样电路、保护电路、键盘控制和显示电路、单片机最小系统等。软件采用C语言编程,整个程序包括的子模块有:键盘控制模块、A/ D电压和电流采集模块、对输出电压的调整模块、LED显示模块等几个部分。1.3 设计目标系统能够实现输出电压在3036V范围内可调,输出电流最大可达2A,电压调整率小于3%,效率达83.7%,输出噪声纹波电压小于0.1V。通过键盘能对输出电压进行键盘设定和步进调整,并通过LED显示器件显示电流和电压值,同时具有过压、欠压和过流保护功能,排除故障后,电路能自动恢复为正常状态。第二章 系统总设计
14、方案本设计以单片机MSP430F169为控制核心,以SG3525为PWM信号产生与控制芯片制作开关稳压电源。系统主要由隔离变压器、整流滤波电路、DC-DC变换器、PWM波形产生与控制电路、保护电路和电压电流采样电路、显示电路等组成,系统框图如图2-1所示。220V交流电压经降压、整流、滤波得比较稳定的18V直流电压,直流电压经Boost电路升压再滤波得平滑的直流输出。单片机从键盘输入设定信号,并根据采样电压对单片机输出电压进行调整,通过单片机的D/A转换对SG3525进行控制生成PWM信号,该信号经驱动电路驱动功率开关管MOSFET工作,并利用SG3525内部的比较器实现输出电压的稳定。对输出
15、电压与电流的采样利用MSP430F169单片机的12位A/D转换模块实现,信号返回单片机后经过处理在MSP430F169单片机的I/O口送给LED进行电流与电压的显示。当输出电流大于保护设定值时产生过流保护信号,保护电路的比较器LM311输出高电平,一方面封锁PWM信号,使PWM不输出,控制场效应管关闭;一方面过流信号驱动继电器动作切断主电路,等故障消除,比较器输出低电平,电路自动恢复正常工作。图2-1 系统框图第三章 系统硬件设计系统的硬件部分主要包括:整流滤波电路、Boost斩波电路、PWM波形产生与控制电路、驱动电路、采样电路、保护电路、键盘与显示电路、单片机最小系统等。各部分的设计如下
16、所述。3.1 整流滤波电路整流滤波电路是将输入220V、50Hz 的交流电压变换成经过滤波后有脉动的直流电压。通常采用容性负载整流电路,如图3-1所示。整流滤波之前先用隔离变压器对220V AC进行降压,产生18V AC。隔离变压器的初级和次级分别是独立绕组,可以去掉电网三次谐波和减少干扰信号进入稳压电源,同时防止非线性电源的电流畸变影响到交流电源的正常工作及对电网产生污染,若负载不平衡,也不影响稳压电源的正常工作。图3-1 整流滤波电路本设计要求整流输入电压为AC,可由经验公式计算=(1.11.2)=(19.821.6) (3-1)由于该开关电源的最大输出电流为2A,现设定整流输出电流为I=
17、2.5A。3.1.1 二极管整流桥堆和滤波电容C1的选择采用的二极管其最大的整流电流必须大于输出电流的一半即,故选用1.5A的集成桥堆来作为整流器件。每个整流二极管的平均电阻近似为,隔离变压器的内阻包括次初级损耗和次级线阻,可以用经验公式计算: (3-2) 故整流器的内阻约为: (3-3)整流电路的负载 (3-4)则 (3-5)对于容性负载桥式整流电路,当,纹波电压U较小时可以得到 (3-6)因此滤波电容C1可以用如下的关系式估算: (3-7)选取,耐压50V的电解电容即可。3.1.2 保护整流桥和减小冲击电流的设计保护整流桥设计:本设计中存在滤波电容,且其值较大,滤波电容越大,二极管的导通角
18、越小,流过二极管的电流峰值就越大,其值很容易大于10A。因为整流桥的耐流能力为10A,所以很容易被烧毁。为解决这一问题,本设计在整流桥后面串入电感,因为电感有一定续流作用,而使二极管导通角变大,从而减小二极管电流峰值以保护整流桥。减小开机时冲击电流设计:开机时整流桥后的滤波电容呈瞬时短路状态,所以开机存在较大冲击电流,为了减小冲击电流对电路的损坏,本设计在整流桥前串联负温度系数热敏电阻。原理是,开机时温度较低而呈现很大电阻, 所以开机电流不会很大,随着电路接通,发热电阻逐渐减小,所以正常工作时上电压降很小,不会影响电路正常工作。3.2 DC-DC变换器设计与器件选择本系统改进的Boost升压斩
19、波电路如图3-2所示。图3-2 Boost 斩波电路3.2.1 电路的工作原理功率开关V处于导通期间时,输入电压加到储能电感两端,充电电流基本恒定为。二极管截止,电容向负载R供电。因值很大,基本保持输出电压为恒值。流过电感上的电流为近似上升的锯齿波电流,并以磁能的形式储存在电感中。在此期间,储能电感中积聚的能量为: (3-8)当功率开关管截止时,储能电感两端的电压极性相反,此时二极管被正向偏置而导通,输入电压和存储在储能电感中的能量通过二极管传输给负载电阻R和滤波电容,储能电感中的泄放电流是锯齿波电流的线性下降部分。在此期间,释放的能量为: (3-9) 当电路达到动态平衡时,一个周期T中,在储
20、能电感中积聚的能量与释放的能量相等,从而给负载电阻R提供一个稳定的输出电压。于是得到: (3-10)电感储能后使电压泵升,同时电容使输出电压保持稳定,从而得到输出端电压高于输入端电压。故称该电路为升压斩波电路。3.2.2 器件的选择(1)功率开关Q的选择:由图3-2可以看出,功率开关Q上所承受的最大电压也就是功率开关Q截止时所承受的电压,又从输入电压与输出电压间的关系得到: () (3-11)又考虑到输入电压有波动,储能电感上的反峰尖刺电压为稳定值的,取其工作电压为80%的额定电压值,而且选择功率开关Q时要留有一定的富余量,这样就可以得到所要选择的功率开关Q的漏极电压额定值 (3-12)本设计
21、中为18V直流电压,输出电压最大为36V,可以算得功率开关Q的额定电压为40V。功率开关Q的额定电流(漏极直流电流)由经验公式得: (3-13)本设计要求最大输出电流为2A,所以功率开关Q的额定电流选2.5A。(2)二极管D1的选择:功率开关Q导通期间,二极管D1因反向偏置而截止,此时二极管D1所承受的电压为输出电压,又考虑到的裕量,二极管D1反向耐压应为: (3-14)二极管D1正向导通电流为: (3-15)二极管D1正向导通功率损耗为: (3-16)为二级管的正向导通管压降,所以应选择具有非常低的正向导通管压降的肖特基二极管。(3)输入电感选取:整流输出电压的大小为18V,输出电压范围为3
22、036V,由临界电流公式 (3-17)选择为20kHz,当时,临界电流有最大值 (3-18)要使电感电流连续,则最小负载电流应大于,由此解得: (3-19)取为2mH。(4)输出滤波电容的选取:由输出纹波电压: (3-20)负载电阻R取15,由此可计算滤波电容的大小,经计算,此处取为4700。3.2.3 减小开关转换纹波电压设计功率开关管从导通到截止或从截止到导通的转换过程都需要一定的转换时间,而且开关频率高,由于二极管和电感的特性,会在输出端形成所谓的开关转换纹波电压。尤其是关断时,由于电路中有寄生电感,瞬间电流的切断会在电感两端出现冲击电压。本设计的解决办法是对功率开关管加缓冲电路,改善关
23、断性能。基本原理:开关管Q关断时,原电路一部分电流通过快恢复二极管D对电容C充电使开关管两端电压缓慢上升,电路中电流的减小速度也有所减缓,从而减小开关转换纹波电压,使输出电压更稳定。3.3 采样电路采样电路分为电压采集与电流采集,采样电路如图3-3所示。其中P6.0、P6.1为MSP430 芯片的采样通道。P6.0为电压采集,P6.1为电流采集。对经过升压斩波电路的直流电压进行采集时,由于采集电压比MSP430 的内部参考电压大,故采集前需要通过一个分压电路来分压,使采集电压控制在2.5V以内。采集后通过一个算法,将采集信号乘以分压电路的变比,得到实际要采集的电压值。图3-3 采样电路电压采集
24、:因为采样信号要输入单片机MSP430 ,其内部采样基准电压为2.5V ,因此要将输入的采样电压限制在2.5V以内,考虑到安全裕量,故将输入电压限制在2 V以内。当输入电压为36V时,采样电压为: (3-21)符合要求。电流采集:此过程采用康铜丝为元件。首先考虑效率问题,康铜丝不能选择过大,又因为MSP430基准电压为2.5V,故所需康铜丝需要自制。考虑以上原因,本设计选取康铜丝的阻值约为0.1。3.4 PWM波形产生与控制电路本设计中PWM波形产生与控制电路选用SG3525芯片,SG3525是电流控制型PWM控制器,所谓电流控制型脉宽调制器是按照接反馈电流来调节脉宽的。在脉宽比较器的输入端直
25、接用流过输出电感线圈的信号与误差放大器输出信号进行比较,从而调节占空比使输出的电感峰值电流跟随误差电压变化而变化。由于结构上有电压环和电流环双环系统,因此,无论开关电源的电压调整率、负载调整率和瞬态响应特性都有提高。另外SG3525内置软启动电路,具有输入欠电压锁定功能,PWM所锁存功能等,是目前比较理想的新型控制器。电路原理图如图3-4所示。图3-4 SG3525 PWM波形控制电路在PWM波形发生与控制电路中,其开关频率为: (3-22)管脚2输入的是电压设定值,该值是MSP430单片机根据键盘设定值和采样电压进行调整后得到的,接单片机的P6.6引脚。管脚1与9相连接相当于该芯片的反馈补偿
26、网络。8管脚接一个电容的作用是用来软启动,上电过程中,电容两端的电压不能突变,只有软启动电容充电至其上的电压使引脚8处于高电平时,SG3525才开始工作,减少对功率开关管的冲击。10脚接保护电路,如果电路过流,该引脚会接收到一个高电平,PWM锁存器将立即动作,禁止SG3525输出,软起动电流将开始放电,直到关断信号结束,才重新进入软启动过程。管脚11和14才用的是并联单端输出,其外部加一个推挽式的驱动电路,增强了电源的可靠性。3.5 驱动电路的设计功率开关趋于关断时的下降时间和趋于导通时的上升时间的快慢是决定功率开关损耗功率和开关稳压电源转换效率的主要因素。要缩短这两个时间,除选择高反应、高速
27、度、大电流功率开关以外,还要改善加在功率开关基极的驱动信号。对驱动信号波形的要求是上升沿要陡,幅度要大,以便减小功率开关趋于导通时的上升时间;驱动信号要有一定的驱动功率;驱动信号波形的下降沿一定要陡,幅度要大,以便减小功率开关趋于截止时的下降时间。由SG3525产生的PWM控制信号需要经过驱动电路才能用于控制MOSFET,基于以上要求,本系统中MOSFET的驱动选用专用驱动芯片IR2110,驱动电路如图3-5所示。图3-5 驱动电路由于单片机、PWM波控制电路为弱电系统,为保证系统的安全,需要与强电侧隔离,防止强电侧的电压回流,烧坏单片机MSP430。本设计先用开关光耦进行光电隔离,再经三极管
28、到MOSFET的驱动电路IR2110。SG3525PWM波形控制电路产生的PWM波,经过光耦及后面的IR2110芯片,在芯片的管脚1输出的PWM波接到MOSFET的门极G端,使其工作。IR2101 是专门用来驱动耐高压高频率的N沟道MOSFET和IGBT的。它是一个具有14个管脚的芯片。IR2110具有独立的低端和高端输入通道;悬浮电源采用自举电路,输出的电源端(脚3)的电压范围为1020V,逻辑电源的输入范围(脚9)515V,门极提供的电压范围是1020V,可方便的与TTL、CMOS电平相匹配,而且逻辑电源地和功率电源地之间允许有V的便移量;工作频率高,可达500KHz,开通、关断延迟小,分
29、别为120ns和94ns,图腾柱输出峰值电流2A。IR2110的这些特点,可以为装置的设计带来许多方便。尤其是高端悬浮自举电源的设计,可以大大减少驱动电源的数目,即一组电源即可实现对上下端的控制。3.6 保护电路设计与参数计算系统对保护电路的要求有:过流、过压和欠压等保护电路的控制关断速度一定要快,只有这样,才能够做到既保护了负载系统,有保护了稳压电源电路本身免遭破坏。对于过流保护电路来说,当导致产生过流现象的故障被排除或过流现象恢复后,稳压电路要能够自动恢复正常工作。过电流保护是一种电源负载保护功能,以避免发生包括输出端子上的短路在内的过负载输出电流对电源和负载的损坏。当输出电流大于保护设定
30、值时产生过流保护信号,保护电路的比较器LM311输出高电平,一方面封锁PWM信号,使PWM不输出,控制场效应管关闭;一方面过流信号驱动继电器动作切断主电路,等故障消除,比较器输出低电平,电路自动恢复工作。本设计具有三级保护功能:SG3525PWM控制器自带的输入欠电压保护、利用保护电路进行保护和利用继电气断开主电路的保护。3.6.1 SG3525自带保护当SG3525输入电压低于8V时,控制器内部电路锁定,除基准电源和一些必要电路之外的所有电路停止工作,此时控制器消耗的电流极小。另外,无论因为什么原因造成PWM脉冲中止,输出都将被中止,直到下一个时钟信号到来,PWM琐存器才被复位。 3.6.2
31、 保护电路的设计 过流保护电路如图3-6所示。图3-6 保护电路此过流保护电路中,电阻R17用来限流,通过比较器LM311对电流互感器采样转化的电压进行比较,LM311的3脚接一10k电位器来调比较基准电压,输出后接一100的电阻R18限流,它与后面的220F的电容C9形成保护时间控制。当电流过流时比较器输出高电平产生保护,封锁PWM信号,使PWM不输出,控制场效应管关闭。3.6.3 继电器保护过流时保护电路的比较器LM311输出高电平,过流信号驱动继电器动作切断主电路,等故障消除,比较器输出低电平,电路自动恢复工作。根据本设计的要求选用继电器的的型号为SSR YDH0610D,其输入直流控制
32、电压332V DC,输出负载电压为560V DC。通常SSR均设计为常开状态,即无控制信号输入时,输出端是开路的,但在本设计中需要常闭式的SSR,可在输入端外接一组简单的电路,如图3-7所示,这时即为常闭式SSR。另外,为了防止输入电压超过额定值,需设置一限流电阻Rx。继电器保护电路如图3-7所示。图3-7 继电器保护电路3.7 按键与显示电路3.7.1 按键输入模块设计本设计要实现对输出电压的键盘设定和步进调整,需要4个按键,分别为S1:准备、 S2:加1、 S3:减1、 S4:停止。因按键数量少,使用独立按键式键盘。MSP430F169的P2.0、P2.1、P2.2、P2.3分别与四个按键
33、连线。其中上拉电阻保证了按键断开时P2.0、P2.1、P2.2、P2.3有确定的高电平。P2口本身具有中断能力,编写软件时,采用中断方式。3.7.2 显示模块设计本设计需要对输出电压、输出电流进行显示,精确到0.1,所以采用六位八段LED数码管,前三位显示电压,后三位显示电流,分别显示电压电流的十位、个位和小数位。采用动态扫描显示方式,其中其中P5口通过LED显示段码驱动器74LS245驱动后控制字选、P4口通过LED显示位码驱动器ULN2003驱动后控制位选。3.8 单片机最小系统本设计选用MSP430F169单片机,MSP430F169单片机是美国TI公司开发的MSP430FLASH系列中
34、的一种,64引脚,具有60 KB的Flash、2KBRAM ,支持串行在线编程,10万次擦写。该单片机内部具有高、中、低速多个时钟源,可以灵活地配置给各模块使用以及工作于多种低功耗模式,大大降低控制电路的功耗提高整体率。工作电压范围:1.83.6V,16位RISC结构,125ns指令周期。单片机内置3通道DMA,12位A/D带采样保持,双12位D/A同步转换。与其他单片机相比(如51单片机),MSP430有很大的Flash空间,所以在最小系统中我们不用外扩存储器。MSP430F169的最小系统只有四部分:电源、复位电路、晶体及简易仿真器JTAG下载线。各部分电路如图3-8所示。3.8.1 电源
35、由于整个单片机系统采用5V和3.3V供电,又考虑到硬件系统要求电源具有稳压功能和纹波小的特点,另外也考虑到硬件系统的低功耗等特点,因此,硬件系统的电源先用LM7805稳压为5V给外围模块电路供电,再用SPX1117芯片稳压得到3.3V电压,给CPU和3.3V外设供电。3.8.2 复位电路一般简单的复位电路可以采用RC复位,但是很不稳定,可靠性不高,尤其在高速和庞大的系统中是根本不能采用的。在MSP430系统中,采用专门的复位芯片SP708S,该芯片可以提供可靠的复位,从而提高了系统的稳定性和可靠性。3.8.3 晶振XIN1和XOUT1连接时钟晶体低速晶体32kHZ,XIN2和XOUT2连接8M
36、Hz的高速晶体。3.8.4 简易仿真器JTAG下载线MSP430的程序下载方式支持串行在线编程、系统可编程ISP、JTAG下载等。硬件仿真可以采用JTAG下载线,现在市面上的很多仿真器,大部分都是通过JTAG进行仿真调试的。JTAG接口是一个14引脚的双排插座,JTAG边界扫描的主要信号为TDO、TDI、TMS、TCK和RST信号。图3-8 单片机最小系统第四章 系统软件设计系统软件实现的功能有:1、通过比较输入电压值与测量所得的电压值调整DA输出,直到满足要求,实现闭环控制;2、实现对输出电压、电流的实时采样;3、基本键盘输入功能和LED输出显示功能。MSP430F169单片机内部具有高、中
37、、低速多个时钟源,可以灵活地配置给各模块使用以及工作于多种低功耗模式,大大降低控制电路的功耗提高整体率;MSP430F169有ADC12模块能够实现12位高精度的模数转换、硬件乘法器、直接存储器访问控制器(DMAC),使得整个电路不需要任何扩展就能完成对电源输出电压、电流的实时采集,电路结构极为简单。4.1 主程序流程图设计本设计的软件采用C语言编写,整个程序包括的子模块有:键盘控制模块、A/D电压和电流采集模块、对输出信号的调整模块、LED显示模块等几个部分。主程序流程图如图4-1所示。图4-1 主程序流程图系统初始化后,首先扫描键盘读取键值,经过DA输出控制PWM波形发生与控制电路产生PW
38、M波,驱动功率开关管MOSFET工作。单片机进行输出电压电流的采集,当采样所得电压与键盘输入电压差值小于0.1V时,单片机通过LED显示电压电流值;当采样所得电压与键盘输入电压差值大于0.1V时,单片机调整DA输出的直流电压,控制PWM波做相应调整,从而实现输出电压向预设电压逼近,使输出电压稳定。在程序进行比较调整时,调整最多进行20次就显示当前值,以免由于AD采样精度等原因进入死循环。4.2 各个子模块流程图设计4.2.1 键盘控制模块通过键盘可实现电压参考值的设定和步进调整,步进值为1V。对键盘程序的编写有查询方式和中断方式。采用查询方式时MCU一直在查询有没有键被按下,不能做其他的事情,
39、MCU采用此方法效率很低。为提高MCU的效率,且P2口本身具有中断能力,所以本设计采用中断方式实现键盘输入。键盘流程图如图4-2所示。图4-2 按键流程图4.2.2 电压和电流采集模块通过MSP430单片机的12位A/D转换模块,对系统输出的电压值和负载电流进行采集。采样转换流程图如下。图4-3 电压电流采样转换流程图4.2.3 对输出信号的调整模块单片机根据采样所得电压与键盘输入电压差值,对输出信号进行调整,实现输出电压向预设电压逼近,使输出电压稳定。根据所学内容及所查资料,采用PID或bang-bang 算法能达到很好的效果,但采用bang-bang 算法时,需要比较的次数比较多,可能由于
40、AD采样精度等原因进入死循环,故决定用PID算法,并为了保险起见,并为了节约比较时间,在程序进行比较时,调整最多进行20次就显示当前值,这样做的精度可以达到mv级。PID是按偏差的比例、积分和微分进行控制的调节器,简称为PID( Proportional - Integral - Differential )调节器。PID控制包括位置式PID、增量式PID。增量式算法不需做累加,计算误差和计算精度问题对控制量的计算影响较小;位置式算法要用到过去偏差的累加值,容易产生较大的累计误差。根据分析选用增量式算法即可满足要求,按照电压偏差值就可以来调节PWM,进而使电压输出紧跟输入。对输出电压信号的调整
41、过程如流程图4-4所示。图4-4 对输出信号的调整流程图4.2.4 显示模块通过LED显示电压和电流的采集值。本设计采用六位8段LED数码管,前三位显示电压,后三位显示电流,分别显示电压、电流的十位、个位和小数位。采用动态扫描显示方式,其中P5口通过LED显示段码驱动器74LS245驱动后控制字选、P4口通过LED显示位码驱动器ULN2003驱动后控制位选。LED显示流程图如图4-5所示。图4-5 LED显示流程图4.3 各个模块的C语言程序编写4.3.1 键盘程序unsigned char keybuf; / 键值缓存器unsigned char plkeyj(void) / 判键子程序 u
42、nsigned char x; x=(P2IN&0X07); / P2.0,P2.2,P2.4,P2.6接按键 return(x); / 有按键返回,非0unsigned char keycode( ) / 找哪个按键被按下,查键值子程序 unsigned char x; If( (P1IN&0X07)= = 1) / 是否第一个按键 then x=0; elseif( (P1IN&0X07)= = 2) / 是否第二个按键 then x=1; else if( (P1IN&0X07)= = 4) / 是否第三个按键 then x=2; else if( (P1IN&0X07)= = 6) /
43、 是否第四个按键 x=3; return(x);interruptPORT1_VECTOR void portlkey( void ) / 端口1的中断服务子程序 while( plkeyj( )! =0 ) delay(500); / 延时消除抖动 while( plkeyj( )! =0 ) keybuf = keycode( ); /确信有键按下,找按键得键值送keybuf while( plkeyj( )! = = 0 ); /等待按键松开 4.3.2 电压电流采样程序ADC12序列通道单次转换(软件查询式)static unsigned int results2;void main( void ) WDTCL =WDTPW + WDTHOLD; / 停止Watchdog P6SEL = 0x0F; / 使能A/D通道 ADC12CTL0 = ADC12ON + MSC + SHT0_2; / ADC12控制寄存器设置 ADC12CTL1 = SHP + CONSEQ_1; / 转换通道设置,模式为序列通道单次转换 ADC12MCTL0 = INCH_0; / V+=Vref+,V-=AVss 通道:A0ADC12MCTL1 = INCH_1 + EOS; / V+=Vref+