基于嵌入式系统可调节输出电压的高效电源设计

时间:2023-06-20
  项目的目标是设计一个高效电源系统,其输出电压(VOUT)可以数字调节。为了保证输出电压的性,采用数字闭环控制,用于修正失调、漂移和负载变化(至600mA)的影响。电路包括输出可调的降压型控制器、ADC与DAC、电压基准以及一个微控制器(MCU)。
  在大多数DC-DC转换器中,位于FB引脚上的电阻网络可调整转换器的输出电压(见图1)。在本文电路中,利用DAC输出电压(VDAC)改变电阻网路的基准电压,达到调整转换器输出(VOUT)的目的。ADC检测输出电压,并将结果送入微处理器。微处理器调整DAC输出,以控制系统输出电压达到预定值。为使电路尽可能简单,预设输出电压通过PC的串行通信口(RS-232)送入微处理器。这个系统在一些需要控制供电电压的嵌入式系统中非常有用。例如为ASIC、DSP或者MCU供电的电源,电源电压对应于处理器的工作速率。将供电电压调整到工作速率对应的电压,可以降低处理器功耗。

  电路所需器件和开发工具
  系统的主电源选择低静态电流、输出1.25V~5.5V可调的降压型调节器MAX1692,它可以提供600mA的电流。MAX1692评估板提供了一个经过验证的电路布局和推荐输入电容、输出电容和电感量。MAX1692反馈引脚电阻网络的偏置由低功耗、12位DAC提供,MAX5302可以提供2.5mA的负载驱动。DAC基准电压为2.5V。电压调节器输出电压由低功耗、12位ADC(MAX1286)读取, MAX1286能自动关断,可以在转换之间减少电源消耗。ADC基准由高5V电压基准MAX6126 提供。ADC和DAC均采用SPI口通信。高电压基准包括输出检测和地检测引脚,将其连接到ADC的基准和地引脚。这样可以保证ADC具有准度的基准电压。

  微处理器选择高速的8051兼容微处理器DS89C420,使用32MHz晶体。该微处理器的绝大多数指令为单指令周期,可以运行在32MIPS。处理器可以由J1口在线编程(见图3)。DS89C420/430/440/450系列用户手册介绍了如何通过PC串行通信口,利用微软的超级终端(HyperTermina)固件。处理器固件用C编写并可使用的Sourceforge Small Devices C编译器(SDCC)编译。

  供电系统的数字部分需要一个稳定的5V电源(与模拟部分共用),数字部分通过逐位控制的SPI接口与DAC、ADC通信。串行收发器(U8)从PC接收VOUT设定值,J1提供MCU的在线编程。
  模拟电路设计
  为计算电阻网络中的R1、R2和R3 (见图2),先假设流入FB引脚的电流(IFB)可以忽略(MAX1692规格表给出的值为50nA),设R2为49.9kΩ。FB引脚电压为1.25V,电流I2为25mA,远高于50nA,证明忽略IFB的决定是正确的。,计算R1和R2:
  DAC输出电压(VDAC)为值2.5V时,降压调节器的输出(VOUT)应该为值1.25V。代入式1:
  项为零,得到R3为50 kΩ。当VDAC 为值0V时, VOUT 应该为值5V。代入式1 :
  得到R1值为75kΩ。
  ADC采集VOUT并将其通过SPI接口传送给MCU,形成闭环数字控制。
  数字电路设计
  DAC和ADC由逐位控制的SPI总线和MCU通信。MCU是主器件,而DAC和ADC是从器件。MCU的5个引脚分别作为SCLK、MOSI、MISO、CSADC(ADC片选)、CSDAC(DAC片选)。总线上的器件共用SCLK,为达到通信速度,使用32MHz的晶体供给MCU系统时钟。MCU通过PC串口接收VOUT值。MAX3311是RS-232收发器,将RS-232电平转为TTL/COMS电平。
  布局考虑
  使用宽的引线连接所有无源器件(旁路电容、补偿电容、输入电容、输出电容和电感)与降压转换器。这些元件和FB引脚的电阻网络应尽可能靠近降压转换器,以减小PCB引线电阻和噪声干扰。降压转换器处需要大面积的覆铜,以降低IC在重负载下的工作温度。可以参考MAX1692评估板。为保持信号完整性,必须尽可能将模拟信号线和数字信号线隔离开。将DAC和ADC靠近降压器放置,用短线连接所有模拟信号。数字信号在另一方向连接到MCU。尽可能将电压基准靠近ADC,提供电压基准的电压反馈线用较短的隔离线连接到ADC的REF 和GND引脚,以保证ADC的转换。
  必须确保MCU下方没有高速信号线。同时,32MHz时钟晶体尽可能靠近MCU的输入引脚。如同所有PCB布线一样,不允许存在90°引线转角,所有IC电源都用0.1μF陶瓷电容旁路,并且尽可能地靠近供电引脚安装。
  软件
  本系统MCU软件通过PC串口获取要设定的VOUT,对应由ADC采样得到的降压转换器输出电压。由于MCU是8位总线,而ADC是12位分辨率,将字节左移4位(相当于乘以16),4位有效位置零。软件用C编写,可从Maxim网站。
  测试结果
  即便是满负载,该系统也可以正确地将转换器的输出电压控制在设定电压的1% 误差内。由ADC得到的反馈可以补偿负载变化、失调和输出电压漂移,以准确控制输出电压。图4a和图4b是电源电压在1mA负载时的性能,图5a表示VOUT和VDAC在VOUT 由4.5V转变到1.5V时的变化,图5b为VOUT和VDAC在VOUT 由1.5V转变到4.5V时的变化。从中可以看出VOUT的下降速率比上升速率慢很多。这是由于输出大电容放电所致(见图2的C16)。转换器可以非常快地对电容充电,但负载没有办法使电容快速放电。注意电压的变化速率非常接近,因为350mA负载可以使电容足够快地放电。这样,一个足够大的负载可以使VOUT以同样速率增加或减小。

  波形显示了负载电流为1mA时,降压转换器输出电压(VOUT)和DAC的输出电压(VDAC)。为VOUT从4.5V到1.5V变化时的VOUT和VDAC波形;为VOUT从1.5V到4.5V变化时的VOUT 和 VDAC波形

  波形显示了负载电流为350mA时,降压转换器输出电压(VOUT)和DAC的输出电压(VDAC)。为VOUT从4.5V到1.5V变化时的VOUT和VDAC波形;图b为VOUT从1.5V到4.5V变化时的VOUT 和 VDAC波形
  虽然电压可以准确控制,但测试结果也提醒我们系统存在的某些问题,图4a显示反馈系统会上冲或下冲。这是由软件程序循环的占用时间引起的。a显示VOUT达到设定值之前,VDAC增大到它的值。当VOUT达到设定值,VDAC必须减小,降低DAC输出电压需要时间,这导致VOUT下冲。理想情况下,VDAC必须和VOUT以同样速度变化,但是,在系统负载达到一定水平之前无法实现这一平衡。该系统需要100μs,用以调整大的输出电压变化,因为软件需要在ADC采样后逐位改变VDAC。为了使VOUT从5V变到1.25V,MCU必须让12位DAC的电压增加4,095次,同时对VOUT 采样4,095次,每次ADC采样都需要耗费采样时间和转换时间。

上一篇:密度的嵌入式MCU
下一篇:如何设计最完美的USBOTG电源

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料