PWM

一、配置定时器为PWM产生


二、配置时钟树


三、定时器配置


四、配置完生成程序后,主程序里还要进行启动PWM就可以了

  MX_TIM3_Init();
  HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_2);//启动。置1  CCER的输出使能位bit4
  HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_1);//CCER的bit0

然后可以改变占空比了。
**特别注意:**占空比不能大于自动重载寄存器ARR的值,不然输出的都是高电平。这个问题整了一天。

五、程序分析


/* TIM3 init function */
static void MX_TIM3_Init(void)
{

  TIM_MasterConfigTypeDef sMasterConfig;
  TIM_OC_InitTypeDef sConfigOC;
//------------------实际是调用TIM_Base_SetConfig配置定时器,上一篇分析过--
  htim3.Instance = TIM3;
  htim3.Init.Prescaler = 71;
  htim3.Init.CounterMode = TIM_COUNTERMODE_UP;
  htim3.Init.Period = 99;
  htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
  htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
  if (HAL_TIM_PWM_Init(&htim3) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }
//---------------------这个是默认的,不管-------------------------------
  sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
  if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }
//----------------配置输出比较部分-- 上图5部分-------------------------------
  sConfigOC.OCMode = TIM_OCMODE_PWM1;//输出模式PWM1
  sConfigOC.Pulse = 80;//占空比
  sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;//高电平极性
  sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
  if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_1) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }
//----------------------------------------------------------------------------------
  sConfigOC.Pulse = 50;
  if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }
  HAL_TIM_MspPostInit(&htim3);//初始化引脚IO
}

初始化PWM通道HAL_TIM_PWM_ConfigChannel------>调用

case TIM_CHANNEL_1:
{
  assert_param(IS_TIM_CC1_INSTANCE(htim->Instance));
  /* Configure the Channel 1 in PWM mode */
  TIM_OC1_SetConfig(htim->Instance, sConfig);

  /* Set the Preload enable bit for channel1 */
  htim->Instance->CCMR1 |= TIM_CCMR1_OC1PE;//比较模式寄存器CCMR1的bit3位OC1PE置1,写入到CCR1的值在事件更新时,才会传到影子寄存器。清0则写入CCR1的值会马上起作用
  
  /* Configure the Output Fast mode */
  htim->Instance->CCMR1 &= ~TIM_CCMR1_OC1FE;//配置CCMR1的bit2位,输出比较快速使能
  htim->Instance->CCMR1 |= sConfig->OCFastMode;
}
break;
//--------------------------------------------------------------------------------

 void TIM_OC1_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config)
   {
  uint32_t tmpccmrx = 0U;
  uint32_t tmpccer = 0U;
  uint32_t tmpcr2 = 0U;

   /* Disable the Channel 1: Reset the CC1E Bit */
  TIMx->CCER &= ~TIM_CCER_CC1E;//关通道 CCER  bit0清0

  /* 读出三个寄存器的值 */
  tmpccer = TIMx->CCER;
  tmpcr2 =  TIMx->CR2;
  tmpccmrx = TIMx->CCMR1;

  /* Reset the Output Compare Mode Bits */
  tmpccmrx &= ~TIM_CCMR1_OC1M;//复位CCMR1的bit6:4
  tmpccmrx &= ~TIM_CCMR1_CC1S;//复制CCMR1的bit1:0
  /* Select the Output Compare Mode */
  tmpccmrx |= OC_Config->OCMode;//配置OC1M为 110  PWM1模式

  /* Reset the Output Polarity level */
  tmpccer &= ~TIM_CCER_CC1P;//配置输出极性 CCER的 CC1P位
  tmpccer |= OC_Config->OCPolarity;

  if(IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_1))//如果是定时器1的123通道,还要设置互补输出
  {
    assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity));
    /* Reset the Output N Polarity level */
    tmpccer &= ~TIM_CCER_CC1NP;
    /* Set the Output N Polarity */
    tmpccer |= OC_Config->OCNPolarity;
    /* Reset the Output N State */
    tmpccer &= ~TIM_CCER_CC1NE;
  }

  if(IS_TIM_BREAK_INSTANCE(TIMx))//如果是定时器1,还要设置CR2的bit8  bit9 死区控制
  {
    /* Check parameters */
    assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState));
    assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState));

    /* Reset the Output Compare and Output Compare N IDLE State */
    tmpcr2 &= ~TIM_CR2_OIS1;
    tmpcr2 &= ~TIM_CR2_OIS1N;
    /* Set the Output Idle state */
    tmpcr2 |= OC_Config->OCIdleState;
    /* Set the Output N Idle state */
    tmpcr2 |= OC_Config->OCNIdleState;
  }
  /* 把设置好的值写入这4个寄存器 */
  TIMx->CR2 = tmpcr2;
  TIMx->CCMR1 = tmpccmrx;
  TIMx->CCR1 = OC_Config->Pulse;//占空比
  TIMx->CCER = tmpccer;
}

流程图如下:


需要改变占空比的,直接调用
__HAL_TIM_SET_COMPARE(&htim3,TIM_CHANNEL_1,dutycycle);
改变寄存器CCR1,改变的值是立即生效还是下一个周期生效取决于CCMR1的OC1PE位

 while (1)
  {
		while(dutycycle<100)
		{
			dutycycle+=10;
			__HAL_TIM_SET_COMPARE(&htim3,TIM_CHANNEL_1,dutycycle);
			HAL_Delay(1);
		}
		while(dutycycle)
		{
			dutycycle-=10;
			__HAL_TIM_SET_COMPARE(&htim3,TIM_CHANNEL_1,dutycycle);
			HAL_Delay(1);
		}
}

版权声明:本文为CSDN博主 - D.luffy 的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:
https://blog.csdn.net/liangbin414/article/details/88707340

围观 479

1、概念

脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

2、应用实例

PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。

图1

图1显示了三种不同的PWM信号。图1a是一个占空比为10%的PWM输出,即在信号周期中,10%的时间通,其余90%的时间断。图1b和图1c显示的分别是占空比为50%和90%的PWM输出。这三种PWM输出编码的分别是强度为满度值的10%、50%和90%的三种不同模拟信号值。例如,假设供电电源为9V,占空比为10%,则对应的是一个幅度为0.9V的模拟信号。

图2

图2是一个可以使用PWM进行驱动的简单电路。图中使用9V电池来给一个白炽灯泡供电。如果将连接电池和灯泡的开关闭合50ms,灯泡在这段时间中将得到9V供电。如果在下一个50ms中将开关断开,灯泡得到的供电将为0V。如果在1秒钟内将此过程重复10次,灯泡将会点亮并象连接到了一个4.5V电池(9V的50%)上一样。这种情况下,占空比为50%,调制频率为10Hz。

3、特点

PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换,让信号保持为数字形式可将噪声影响降到最小。噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。

对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。从模拟信号转向PWM可以极大地延长通信距离。在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。

总之,PWM既经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术。

版权声明:本文为CSDN博主「凡旭国」的原创文章,
遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
https://blog.csdn.net/sinat_20265495/article/details/72416780

围观 104

■ PWM 和PFM 是两大类DC-DC 转换器架构
■ 每种类型的性能特征是不一样的
■ 重负载和轻负载时的效率
■ 负载调节
■ 设计复杂性
■ EMI / 噪声考虑

做电源设计的应该都知道PWM 和PFM 这两个概念
开关电源的控制技术主要有三种:(1)脉冲宽度调制(PWM);(2)脉冲频率调制(PFM);(3)脉冲宽度频率调制(PWM-PFM).

PWM:(pulse width modulation)脉冲宽度调制
脉宽调制PWM是开关型稳压电源中的术语。这是按稳压的控制方式分类的,除了PWM型,还有PFM型和PWM、PFM混合型。脉宽宽度调制式(PWM)开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。

PFM:(Pulse frequency modulation) 脉冲频率调制
一种脉冲调制技术,调制信号的频率随输入信号幅值而变化,其占空比不变。由于调制信号通常为频率变化的方波信号,因此,PFM也叫做方波FM

PWM是频率的宽和窄的变化,PFM是频率的有和无的变化, PWM是利用波脉冲宽度控制输出,PFM是利用脉冲的有无控制输出.

其中PWM是目前应用在开关电源中最为广泛的一种控制方式,它的特点是噪音低、满负载时效率高且能工作在连续导电模式,现在市场上有多款性能好、价格低的PWM集成芯片;PFM具有静态功耗小的优点,但它没有限流的功能也不能工作于连续导电方式。

与PWM相比,PFM的输出电流小,但是因PFM控制的DC/DC变换器在达到设定电压以上时就会停止动作,所以消耗的电流就会变得很小。因此,消耗电流的减少可改进低负荷时的效率。PWM在低负荷时虽然效率较逊色,但是因其纹波电压小,且开关频率固定,所以噪声滤波器设计比较容易,消除噪声也较简单。


若需同时具备PFM与PWM的优点的话,可选择PWM/PFM切换控制式DC/DC变换器。此功能是在重负荷时由PWM控制,低负荷时自动切换到PFM控制,即在一款产品中同时具备PWM的优点与PFM的优点。在备有待机模式的系统中,采用PFM/PWM切换控制的产品能得到较高效率。


来源:玩转单片机

围观 119

我们应该知道,有一种开关电源是通过PWM波来实现的,但你知道通过PWM波也能输出负电压吗?

负电压的产生电路图原理

在电子电路中我们常常需要使用负电压,比如我们在使用运放的时候常常需要建立一个负电压。下面就简单的以正5V电压到负电压5V为例说一下它的电路。

通常需要使用负电压时一般会选择使用专用的负压产生芯片,但这些芯片都比较贵,比如ICL7600、LT1054、MC34063等。MC34063使用的最多了,关于34063的负压产生电路这里不说了,在datasheet中有的。下面请看我们在单片机电子电路中常用的两种负电压产生电路。

现在很多MCU都带有PWM输出,在使用单片机的时候PWM很多时候是没有用到的,用它辅助产生负压是不错的选择。

上面的电路是一个最简单的负压产生电路了。使用的原件是最少的了,只需要给它提供1kHz左右的方波就可以了,相当简单。这里需要注意这个电路的带负载能力是很弱的,同时在加上负载后电压的降落也比较大。

由于上面的原因产生了下面的这个电路:

负电压产生电路分析

电压的定义:电压(voltage),也称作电势差或电位差,是衡量单位电荷在静电场中由于电势不同所产生的能量差的物理量。其大小等于单位正电荷因受电场力作用从A点移动到B点所做的功,电压的方向规定为从高电位指向低电位的方向。

说白了就是:某个点的电压就是相对于一个参考点的电势之间的差值。V某=E某-E参。一般把供电电源负极当作参考点。电源电压就是Vcc=E电源正-E电源负。

想产生负电压,就让它相对于电源负极的电势更低即可。要想更低,必须有另一个电源的介入,根本原理都是利用两个电源的串联。电源2正极串联在参考电源1的负极后,电源2负极就是负电压了。

一个负电压产生电路:利用电容充电等效出一个新电源,电容串联在GND后,等效为电源2,则产生负电压。

1、电容充电:当PWM为低电平时,Q2打开,Q1关闭,VCC通过Q2给C1充电,充电回路是VCC-Q2-C1-D2-GND,C1上左正右负。

2、电容C1充满电。

3、电容C1作为电源,C1高电势极串联在参考点。C1放电,从C2续流,产生负电压。

当PWM为高电平时,Q2关闭,Q1打开,C1开始放电,放电回路是C1-C2-D1,这实际上也是对C2进行充电的过程。C2充好电后,下正上负,如果VCC的电势为5点几伏,就可以输出-5V的电压了。

内容来源嵌入式资讯精选,希望对你有帮助。

围观 40

直流电动机的PWM调压调速原理

直流电动机转速N的表达式为:N=U-IR/Kφ

由上式可得,直流电动机的转速控制方法可分为两类:调节励磁磁通的励磁控制方法和调节电枢电压的电枢控制方法。其中励磁控制方法在低速时受磁极饱和的限制,在高速时受换向火花和换向器结构强度的限制,并且励磁线圈电感较大,动态响应较差,所以这种控制方法用得很少。现在,大多数应用场合都使用电枢控制方法。

对电动机的驱动离不开半导体功率器件。在对直流电动机电枢电压的控制和驱动中,对半导体器件的使用上又可分为两种方式:线性放大驱动方式和开关驱动方式。

线性放大驱动方式是使半导体功率器件工作在线性区。这种方式的优点是:控制原理简单,输出波动小,线性好,对邻近电路干扰小;但是功率器件在线性区工作时由于产生热量会消耗大部分电功率,效率和散热问题严重,因此这种方式只用于微小功率直流电动机的驱动。绝大多数直流电动机采用开关驱动方式。开关驱动方式是使半导体器件工作在开关状态,通过脉宽调制PWM来控制电动机电枢电压,实现调速。

在PWM调速时,占空比α是一个重要参数。以下3种方法都可以改变占空比的值。

(1)定宽调频法

这种方法是保持t1不变,只改变t2,这样使周期T(或频率)也随之改变。

(2)调频调宽法

这种方法是保持t2不变,只改变t1,这样使周期T(或频率)也随之改变。

(3)定频调宽法

这种方法是使周期T(或频率)保持不变,而同时改变t1和t2。

前两种方法由于在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此这两种方法用得很少。目前,在直流电动机的控制中,主要使用定频调宽法。

直流电动机双极性驱动可逆PWM控制系统

双极性驱动则是指在一个PWM周期里,作为在电枢两端的脉冲电压是正负交替的。

双极性驱动电路有两种,一种称为T型,它由两个开关管组成,采用正负电源,相当于两个不可逆控制系统的组合。但由于T型双极性驱动中的开关管要承受较高的反向电压,因此只用在低压小功率直流电动机驱动。

另一种称为H型。

H型双极性驱动

1、电动机控制电路模块

H桥电动机驱动电路的工作原理:

A:当单片机的P0.0脚输出高电平,而P0.1脚输出低电平时,通过光电耦合器后仍然输出为高电平,使Q4管导通,此时Q1也处于导通状态,但Q2管的基极的电位被强行拉低,Q2管处于截止状态。由于单片机的P0.1脚输出低电平,

Q8处于截止状态,而此时Q7因为Q5的截止而处于导通状态,从而使电动机形成回路,电机正常工作。

B:同理可得,当P0.0脚输出低电平,而P0.1脚输出高电平时,三极管的状态与上述相反,电机同样处于正常工作状态。

C:当P0.0脚和P0.1同时为高电平或低电平,由于Q4与Q8和Q3与Q7的工作状态相同,同时处于导通或截止,使电机两断电位相同,无法使电机形成闭和回路,电机不工作,着就是所谓本设计所提及的刹车状态。

由于电路中在驱动功率管的发射极各添加了一个小电感,目的是为了使电机驱动电压更加稳定,得到较为平滑的驱动电压,从而增加了刹车时动作的准确性,减少电机的在起动和停止的瞬间产生过大的电压对功率管的冲击,导致功率管的损坏。同时也提高了电机的刹车控制可靠性和准确性,不至于因惯性而导致控制上产生较大的误差。

该桥的优点是电路的原理简单、易控制、功耗低带负载能力强、刹车的精度很高而且价格低廉。在驱动电路的控制信号输入断采用了光电隔离技术,减小H桥电机驱动电路对单片机的干扰,实现模拟电路与数字电路的隔离。在单片机的配合下,通过PWM调节脉宽的方法,实现了对驱动电机的轻松调速,通过键盘的配置可以对体的参数进行修改,可以使电机适应各种不同的工作状态,而实现智能控制的目的。正因为采取了PWM该技术,使我们完成基本要求的过程变得简单易行。

在电路中所采取的功率管为中功率管,其中将驱动功率管设计为灵活替换方式,可以根据实际驱动电路的需要,从而调整功率管的型号而不用另行更改电路,就可以满足电路控制的要求

2、软件模块部分

在速度控制方面,一般是能通过改变加在电机两端的电压来实现的,可以是连续改变(加直流电压),也可以是断续改变(加脉冲电压)。为了简单用,我们采用了脉宽调速,脉宽的变化可以通过硬件或软件来实现。

方案一 硬件实现是通过改变振荡电路中RC参数来调整充放电时间。若用硬件电路来实现,在稳定性方面得不到保证。

方案三 用软件的作法是通过设置高电平及低电平的保持时间来达到PWM的脉宽调制目的。

就比较而言,软件调整量化指标更高、调整更可靠、更方便、更准确。因此在设计时,常考虑方案二。

脉冲频率对电机转机也有影响,脉冲频率高连续性好,但带负载能力差,频率低则反之。经实验发现,脉冲频率在15━20HZ效果最佳。在本设计中采用了20HZ进行设计。

脉冲调速实质上是调节加在电机两端的平均功率,通过计算可发现电机的速度与脉宽成正比。

软件编程的考虑是设置脉宽这个变量。在P0.0,P0.1的输出控制信号来产生20HZ可调脉宽方波。

下面是51单片机的实验程序

#include < reg51.h >
#include < intrins.h >
sbit  K1 =P1^4 ;                    //增加键
sbit  K2 =P1^5 ;                    //减少键
sbit  P00 =P0^1;
sbit  BEEP =P3^7 ;                //蜂鸣器
unsigned char PWM=0xe7;   //赋初值
void Beep();
void delayms(unsigned char ms);
void delay(unsigned char t);
/*********************************************************/
void main()
{
     P1=0xff;
    TMOD=0x21 ;
    TH0=0xff ;             //50us延时常数
    TL0=0xce ;            //频率调节
    TH1=PWM ;            //脉宽调节
    TL1=0 ;
     EA=1;
     ET0=1;
     ET1=1;
     TR0=1 ;
   while(1)
   {
     do{
            if(PWM!=0xff)
           {PWM++ ;delayms(10);}
           else Beep() ;
         }
     while(K1==0);
     do{
           if(PWM!=0xce)
          {PWM-- ;delayms(10);}
           else Beep() ;
          }
     while(K2==0);
   }
}
void timer0() interrupt 1
{
    TR1=0 ;
    TH0=0xff ;
    TL0=0xce ;
    TH1=PWM ;
    TR1=1 ;
    P00=0 ;      //启动输出
}
void timer1() interrupt 3
{
    TR1=0 ;
    P00=1 ;     //结束输出
}
/*********************************************************/
//蜂鸣器子程序
/*********************************************************/
void Beep()   
  {
      unsigned char i  ;
      for (i=0  ;i<100  ;i++)
        {
          delay(100)  ;
          BEEP=!BEEP  ;                //Beep取反
        }
     BEEP=1  ;                            //关闭蜂鸣器
     delayms(100);
  } 
/*********************************************************/
// 延时子程序
/*********************************************************/
void delay(unsigned char t)
 {
    while(t--)   ;
 }
/*********************************************************/
// 延时子程序
/*********************************************************/
void delayms(unsigned char ms)
{
    unsigned char i ;
    while(ms--)
     {
        for(i = 0 ; i < 120 ; i++) ;
     }
}
/*********************************************************/

转自:博客园 - Aaronfay

围观 465

做电源设计的应该都知道PWM 和PFM 这两个概念。

开关电源的控制技术主要有三种:
(1)脉冲宽度调制(PWM);
(2)脉冲频率调制(PFM);
(3)脉冲宽度频率调制(PWM-PFM).

PWM:(pulse width modulation)脉冲宽度调制

脉宽调制PWM是开关型稳压电源中的术语。这是按稳压的控制方式分类的,除了PWM型,还有PFM型和PWM、PFM混合型。脉宽宽度调制式(PWM)开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。

PFM:(Pulse frequency modulation) 脉冲频率调制

一种脉冲调制技术,调制信号的频率随输入信号幅值而变化,其占空比不变。由于调制信号通常为频率变化的方波信号,因此,PFM也叫做方波FM

PWM是频率的宽和窄的变化,PFM是频率的有和无的变化, PWM是利用波脉冲宽度控制输出,PFM是利用脉冲的有无控制输出。

其中PWM是目前应用在开关电源中最为广泛的一种控制方式,它的特点是噪音低、满负载时效率高且能工作在连续导电模式,现在市场上有多款性能好、价格低的PWM集成芯片,如UCl842/2842/3842、TDAl6846、TL494、SGl525/2525/3525等;PFM具有静态功耗小的优点,但它没有限流的功能也不能工作于连续导电方式,具有PFM功能的集成芯片有MAX641、TL497等;PWM-PFM兼有PWM和PFM的优点。

DC/DC变换器是通过与内部频率同步开关进行升压或降压,通过变化开关次数进行控制,从而得到与设定电压相同的输出电压。PFM控制时,当输出电压达到在设定电压以上时即会停止开关,在下降到设定电压前,DC/DC变换器不会进行任何操作。但如果输出电压下降到设定电压以下,DC/DC变换器会再次开始开关,使输出电压达到设定电压。PWM控制也是与频率同步进行开关,但是它会在达到升压设定值时,尽量减少流入线圈的电流,调整升压使其与设定电压保持一致。

与PWM相比,PFM的输出电流小,但是因PFM控制的DC/DC变换器在达到设定电压以上时就会停止动作,所以消耗的电流就会变得很小。因此,消耗电流的减少可改进低负荷时的效率。PWM在低负荷时虽然效率较逊色,但是因其纹波电压小,且开关频率固定,所以噪声滤波器设计比较容易,消除噪声也较简单。

若需同时具备PFM与PWM的优点的话,可选择PWM/PFM切换控制式DC/DC变换器。此功能是在重负荷时由PWM控制,低负荷时自动切换到PFM控制,即在一款产品中同时具备PWM的优点与PFM的优点。在备有待机模式的系统中,采用PFM/PWM切换控制的产品能得到较高效率。

就DC-DC变换器而言目前业界PFM只有Single Phase,且以Ripple Mode的模式来实现,故需求输出端的Ripple较大。没有负向电感电流,故可提高轻载效率。由于是看输出Ripple,所以Transient很好,在做Dynamic的时候没有under-shoot。PWM有Single Phase &Multi-phase,多以Voltage Mode or Current Mode来实现,对输出Ripple没有要求,轻载时存在电感负向电流,故轻载效率较差,Compensation较Ripple相比较慢。将PWM于PFM结合使用,当侦测到电感负电流的时候,变出现Pulse Skipping,而不再受内部Clock控制。此时,controller will turnoff both h-mos & l-mos,Coss & L会出现阻尼振荡。

每位工程师接触的领域不一样,可能有的领域是用PFM比较多,有的是用PWM比较多,但从整个电源行业来说,相信目前还是PWM用的多.上世纪80年代至今,PWM开始了在电源变换领域的“王朝统治"地位,因为每种方式都有缺点和优点.关键还是看是否适合客户需要吧在论坛看到一位网友是这样写的,我觉得写的比较形象,他说如果把PFM与PWM的电源用车来比较的话,用PFM的=奔驰,用PWM的=大众。

PFM相比较PWM主要优点在于效率

1、对于外围电路一样的PFM和PWM而言,其峰值效率PFM与PWM相当,但在峰值效率以前,PFM的效率远远高于PWM的效率,这是PFM的主要优势。

2、PWM由于误差放大器的影响,回路增益及响应速度受到限制,PFM具有较快的响应速度

PFM相比较PWM主要缺点在于滤波困难

1、滤波困难(谐波频谱太宽)。
2、峰值效率以前,PFM的频率低于PWM的频率,会造成输出纹波比PWM偏大。
3、PFM控制相比PWM控制 IC 价格要贵。

PFM之所以应用没有PWM多最主要的一个原因就是另外一个原因就是PWM的巨大优点了:控制方法实现起来容易,PFM控制方法实现起来不太容易

来源:硬件十万个为什么

围观 450

  •  PWM 和PFM 是两大类DC-DC 转换器架构

  •  每种类型的性能特征是不一样的

  •  重负载和轻负载时的效率

  •  负载调节

  •  设计复杂性

  •  EMI / 噪声考虑

做电源设计的应该都知道PWM 和PFM 这两个概念

开关电源的控制技术主要有三种:
(1)脉冲宽度调制(PWM);
(2)脉冲频率调制(PFM);
(3)脉冲宽度频率调制(PWM-PFM).

PWM:(pulse width modulation)脉冲宽度调制

脉宽调制PWM是开关型稳压电源中的术语。这是按稳压的控制方式分类的,除了PWM型,还有PFM型和PWM、PFM混合型。脉宽宽度调制式(PWM)开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。

PFM:(Pulse frequency modulation) 脉冲频率调制

一种脉冲调制技术,调制信号的频率随输入信号幅值而变化,其占空比不变。由于调制信号通常为频率变化的方波信号,因此,PFM也叫做方波FM

PWM是频率的宽和窄的变化,PFM是频率的有和无的变化,PWM是利用波脉冲宽度控制输出,PFM是利用脉冲的有无控制输出。

其中PWM是目前应用在开关电源中最为广泛的一种控制方式,它的特点是噪音低、满负载时效率高且能工作在连续导电模式,现在市场上有多款性能好、价格低的PWM集成芯片;PFM具有静态功耗小的优点,但它没有限流的功能也不能工作于连续导电方式。

PWM 和PFM

与PWM相比,PFM的输出电流小,但是因PFM控制的DC/DC变换器在达到设定电压以上时就会停止动作,所以消耗的电流就会变得很小。因此,消耗电流的减少可改进低负荷时的效率。PWM在低负荷时虽然效率较逊色,但是因其纹波电压小,且开关频率固定,所以噪声滤波器设计比较容易,消除噪声也较简单。

PWM 和PFM

PWM 和PFM

若需同时具备PFM与PWM的优点的话,可选择PWM/PFM切换控制式DC/DC变换器。此功能是在重负荷时由PWM控制,低负荷时自动切换到PFM控制,即在一款产品中同时具备PWM的优点与PFM的优点。在备有待机模式的系统中,采用PFM/PWM切换控制的产品能得到较高效率。

PWM 和PFM

PWM 和PFM

转自:硬件十万个为什么

围观 398

导读:在电动机FOC控制系统中,对电动机电流的采样是一个非常重要的环节,在低成本应用场合,为了降低成本,减小体积,根据母线电流和相电流关系而形成的单电阻电流采样及相电流重建方法具有很大的竞争优势。MagniV为单电阻设计提供了独特的硬件支持。

一、引言

电流采样对无感电机矢量控制是非常重要的,电流采样性能是其中一个关键的环节,往往直接影响到整个控制方案的性能好坏。

在实际使用中,三相电流采样常见类型有三电阻、双电阻以及单电阻采样技术。它们的实现方式不同,但共同的目标就是为得到真实的三相电流。本期小编主要介绍近期十分热门的单电阻电流重建技术以及MagniV系列芯片对于该技术特有的硬件支持。

二、单分流采样技术简介

相电流采样技术对于检测相电流以及通过其重构获取定子电流的全部三相信息是关键问题。当直流母线电压连接到电机时,如图1在八个电压矢量的其中六个中,流过分流电阻的相电流产生一个电压降,需要由AD转换器进行适当采样。

三分钟了解MagniV 双切换PWM技术
图1 电压矢量

图2显示了矢量101期间的电流测量示例,其中可以采集iSB电流。考虑一个对称三相系统,可以在任何时候使用基尔霍夫电流定律(iSA+iSB+iSC=0),因此在一个PWM周期内至少需要两个电流才能使所有三相电流可用于矢量控制。由于电压矢量的调制,在单个PWM周期内可以使用两个不同的非零电压矢量组合感测两个电流。然后基于基尔霍夫电流定律计算第三个电流。

三分钟了解MagniV 双切换PWM技术
图2 电流测量

三、单分流采样技术缺陷

技术是一把双刃剑,在单电阻分流测量期间,为了允许测量电流,需要对正弦调制模式进行修改,这种模式修改可能会产生一些电流纹波,由于模式修改以及对修改后的校正,算法的实现难度增加并且会占用更多的CPU资源。

在电流测量期间只有当两个电压矢量有效并保持足够的时间以捕获电流时,才能使用单分流三相电流重构。

如图3所示,当两个PWM边缘彼此靠近时,直流链路上的相电流信号脉冲变得太短而无法被捕获或“消失”。这使得这部分三相电流信息不可见,并且感测电路最终可能干扰相电流反馈。如果所有三相都足够接近,则不能从直流母线电流传感器恢复相电流信息。

三分钟了解MagniV 双切换PWM技术
图3 电压矢量调制举例

单分流采样有其明显的优势,也存在必然的缺陷,但MagniV系列的双切换PWM技术极大的增加了单分流采样方案优势。

四、双切换PWM技术

在不改变硬件的情况下,我们可以使用“移相PWM”的方式对三相电流进行重构,但其软件实现难度大,同时增加了芯片的资源的需求。

小编这里给伙伴们推荐另一种方式:MagniV系列芯片特有的“双切换PWM”技术。该技术是将重叠信号中的一个分成两部分,并在脉冲中间插入一个零脉冲,从而很好的解决了单分流采集技术的缺陷。

MagniV的“双切换PWM”技术除了将一个信号从另一个信号上移开之外,还能将其中一个重叠信号分成两个对称信号,这两个部分分开移动(图4左边的蓝色信号),因此信号的总长度是相同的。

但是,会有不同数量的开关操作。考虑到插入的死区时间不同,双开关阶段的输出电压较低。这种双重切换的另一个影响是不同的电压矢量被注入到电机中。这些干扰可能会导致通量的谐波失真和产生噪音。

三分钟了解MagniV 双切换PWM技术
图4 PWM双切换技术

为了降低双重切换过程中的噪声和损耗,所有的信号分成两部分,其中一个信号使另两信号以较长的时间间隔分开(图4右侧)。不必要的电压矢量(110)在包括零电压矢量的两个短时间段内切换,并且减少了双重切换的负面影响。

同时,由于双重切换的机制,我们在每个电流上可以有两个样本可用,附带的我们可以对样本取均值,一定程度上平滑采样数据。

五、总结

在一些低成本应用场合,为了降低成本,减小体积,根据母线电流和相电流关系而形成的单电阻电流采样及相电流重建方法具有很大的竞争优势。

单电阻电流重建的最重要原因之一就是降低成本,它将采样电路简化至一个分流电阻和一个差分放大器。该方案除了降低成本外,它检测全部三相时使用的电路相同,这对于全部测量,增益和偏移都是相同的,这将不再需要校准每相放大电路或者在软件中进行补偿。

MagniV系列芯片特有的“双切换PWM”技术。为单电阻FOC的实现提供了另一种崭新的思路,并通过硬件上的改变简化了单电阻FOC技术的设计。

转自:周立功单片机

围观 420

页面

订阅 RSS - PWM