0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

zpwsmile使用8位μC生成高级PWM信号简介

PCB线路板打样 来源:zpwsmile 作者:zpwsmile 2020-02-07 11:36 次阅读

近年来,变速驱动器(VSD)的使用显着增加。随着VSD继续渗透到工业,汽车和消费者市场,这种趋势可能会持续甚至加速。对VSD成功至关重要的是提高系统性能和降低价格的能力。空间矢量调制或SVM是提高许多类型VSD性能的一种方法。使用低成本,8位μC而不是DSP来实现SVM的复杂方程也降低了系统成本。实际上,优化的SVM算法通常允许低成本的8位μC来执行系统的所有控制要求(参考文献1)。

什么是SVM?

SVM是可用于从三相逆变器产生正弦电压的众多方法之一。图1显示了典型的逆变器馈电VSD系统。负载通常是感应,磁阻或正弦无刷直流电动机。图1中的控制单元将适当的PWM信号应用于构成逆变器的六个晶体管

您可以将SVM的操作与正弦加权PWM(SWPWM)进行对比,这是一种常用的创建方法正弦电压。 SWPWM以恒定频率向每个晶体管施加正弦加权的PWM信号。每个高侧晶体管的PWM信号应相差120°。每个低侧晶体管的每个PWM信号应该是相应高侧晶体管信号的补码,这些PWM信号必须包括一些死区时间以防止直通电流。 μC通常使用存储在ROM中的正弦表来实现SWPWM。您可以缩放正弦表中的值以生成可变幅度的正弦曲线。 μC通过多次读取相同的正弦表值来控制频率,从而产生低频率,或跳过产生高频率的正弦表值。

图2a显示了理想的最大值 - SWPWM滤波后的幅度输出电压。这些图显示了相对于逆变器负轨的测量相电压百分比。如图所示,线间电压的幅度仅为逆变器轨电压的约86%。直观地,您可以预期线间电压V AB 可以达到正轨和负轨电压。例如,如果图1的晶体管A +和B-导通,那么V AB 应该等于逆变器轨电压。这种较低的线间电压是SWPWM的主要缺点之一。但是,使用备用SVM,可以向电机施加更大的电压。

对于电机控制,线间电压V AN 和感应相电压确定每相中的电流。相电流决定了电动机的转矩。因此,线对中性电压是正弦的很重要,只要它们是相同的,相电压是什么样的并不重要。对于SVM,产生的相电压不是正弦波,但线间电压和线间电压是正弦电压(图2b)。此外,线间电压的幅度达到了全逆变轨电压,这表明SVM充分利用了逆变器产生正弦电压的能力。

要实现SVM,您可以使用SWPWM算法并用图2b中的相电压波形替换ROM正弦表。实际上,无限数量的相电压可以产生与图2b所示相同的线电压。那么为什么要使用SVM而不是其他一些本土的PWM方法呢?答案是SVM非常适合矢量控制方案。 SVM受欢迎的另一个原因是因为相电压方程的推导可以导致简单的实现。一个好的SVM算法可以在线计算相电压,只需要一个只包含60°信息的小型查找表。 SVM公式还允许简单计算,因为不涉及负数。除了这些优点之外,SVM还可以轻松地进行过调制。过调制是一种产生更大电压的方法。但是,正如您可以直观地猜测的那样,过调制产生的线间电压不再是正弦波。

SVM平滑步骤

描述SVM的μ算法和过调制,首先通过检查生成正弦线到中性点电压的流行的六步法来看看SVM是如何工作的。图3显示了逆变器使用六步模式通过电阻平衡负载产生的电压。在每个步骤期间,逆变器开关处于恒定状态。 (x,x,x)类型的符号表示逆变器的状态。例如,反相器状态(+, - ,+)表示晶体管A +,B-和C +正在导通。

描述SVM的一种方法是说它使用复杂的平均技术来“平滑“六步模式中的步骤。例如,假设所需电压在两个步骤之间。假设该所需电压介于激活逆变器状态(+, - , - )和(+,+, - )之间的电压之间。 SVM将通过首先将状态(+, - , - )应用于时间t 0 ) =“id3424599-81-sub”> A' T 0 ,然后状态(+,+, - )持续时间t B * T 0 。如果在该PWM周期中有任何剩余时间,则SVM通过使用逆变器状态(+,+,+ +)为剩余时间t 0 施加零电压。 ) 要么 (-, -, -)。这种类型的SVM实现处理每个逆变器状态有效的时间。利用μC的强大PWM发生器需要将这些“状态”时间转换为“输出”时间或每个输出引脚的占空比。图4显示了对称PWM的切换顺序以及序列与时间的关系T 0 ,t A ,t B ,t 0 。这种类型的对称PWM是有利的,因为它具有非常少的开关事件并产生低转矩纹波。

图4中的实现基于使用C504,C508和C164IμC中的CAPCOM6模块(www) .infineon.com)。当比较定时器达到比较值时,CAPCOM6模块内的比较定时器通过切换输出引脚来产生对称PWM。从图4中,您可以看到比较值与时间之间的以下关系t A ,t B ,并且t 0 :

CC0 =(t 0 /2)* T 0 ;

CC1 =((t 0 /2 + t A ))* T 0 ;和

CC2 =(1-t 0 /2)* T 0 。

计算t A 和t B 的值需要使用六步模式电压的图形表示。将六步模式的线到中性电压转换为空间矢量并在复平面上绘制矢量会产生图5中的矢量。下面的等式可以转换任意三个量 - 在这种情况下,线到中性电压 - 在空间矢量中总和为零:

= V AN (t)e j0 + V BN (t)e j2?/3 + V CN (t)e - j2?/3 。

如图5所示,当使用六步模式时,有六个不同的空间矢量,每个变换器状态一个。 SVM算法的输入是空间矢量电压,其具有幅度U和角度。如果将真正的正弦三相电压转换为空间矢量,则U的值始终保持不变,但以恒定速率增加。如果假设缓慢增加,则SVM算法可以在每个切换周期内将U和视为常量。对于任何不完全位于六个基矢量之一的矢量 - 即两个步骤之间的任何电压 - 算法必须通过在适当的时间量内应用两个相邻的基矢量来产生近似。 在两个相邻基矢量上的投影给出t A 和t 乙 。 时,以下公式确定t A 和t B 扇区0:

t B = 2U(3 - ½ )sin();

t A = U [cos() - ( 3 - ½)sin()];和

t 0 = T 0 -t A -t B 。

SVM的等式表明,当位于六边形之外时,t 0 变为负值,这在物理上是不可能的。要产生正弦电压,的尖端必须始终位于六边形内。这意味着的长度U必须不大于图5内圆的半径。内圆和六边形之间的电压是可达的,但不会产生正弦曲线,因为矢量不会能够旋转360°而不会穿过六边形边界。 t A 和t B 的公式仅在时有效如果在扇区0之外,那么公式的结果仍然有用,但是算法应该以60°的增量旋转向量,直到向量在扇区0中.μC然后可以将时间t A 和t B 应用于适当的切换状态。

使用查找表实现SVM

比较值的计算需要计算t A ,t B ,并且t 0 。这些变量需要计算正弦和余弦值以及几个乘法,这些都必须在线完成。适当缩放变量以使它们适合8位μC架构可以使任务更加简单。例如,如果将比较计时器编程为从0到0xFF计数,则μC可以将所有比较值存储为8位值。由于CAPCOM6模块有多个预定时器用于定时器,因此该8位值不会真正限制实际PWM频率的选择。

如果扇区零点包含256个角度,则精度为

约为0.235°。对于几乎所有的VSD应用来说,这种精度都足够了。将每个扇区划分为256个角度意味着

必须是11位长。这个长度很方便,因为最重要的3位表示扇区,最低8位表示扇区内的角度。 μC可以将这些值存储为两个字节。最低有效字节将始终在t A 和t B 等式中起作用,因为此字节将始终小于或等于60°。

256字节的查找表可以存储每个t B 值,对于U = 1的情况。然后,μC可以将每个t B 值按U的实际值进行缩放,通过仅执行一次乘法,该值实际上小于或等于1。通过检查t B 的公式,您可以看到查找表将包含0到60°之间角度的正弦值。由于这些值始终大于0,因此μC不需要表示任何负数。 μC可以对t A 执行相同的过程。但是,如果您检查t A 的表,您会发现该表与t B 表,但相反。该结果源于所选择的缩放。 μC可以在同一查找中存储t A 和t B 的值表。因为该表是256字节长,相同的指针 - 变量 - 可以检索t A 和t 乙 。 μC只需要补充指针。因此,μC可以使用很高的准确度确定t A 和t B 只有两个表查找和两个乘法。

进一步优化

您可以对SVM算法进行其他几项优化。 8051型μC可以在少至55个指令周期内完成整个SVM算法,包括推送和弹出指令。如果μC具有300nsec的最小指令周期时间,则所有SVM计算仅需16.5μs。即使在20 kHz频率切换时,这个短时间也会留出足够的时间来执行开环或简单的闭环控制,例如滑差频率补偿。这种类型的μC的成本很容易低于5美元,而且大批量的成本可能低于2美元。

对于高端矢量控制系统,可以使用双芯片解决方案一个简单的低成本32位或16位处理器,如C161,用于执行矢量控制计算。您可以将8位μC用作PWM单元,此μC还可以使用板载A/D转换器执行所有电流和电压测量。这种双芯片解决方案的成本可能远低于10美元。您还可以使用包含CAPCOM6模块的16位μC,C164CI。这个单个μC可以执行所有矢量控制和SVM计算。

额外的20个指令周期,您可以添加一个过调制模式,允许驱动系统向电机施加更高的非正弦电压。这种类型的驱动器通常在汽车应用中很有用。

图6a显示了SVM产生的相电压和线电压。图6b显示了使用SVM算法控制三相感应电机时的相电流。

作者信息

Michael Copeland是英飞凌科技公司(圣何塞的高级应用专家,CA)。他拥有密歇根州立大学(东兰辛)的硕士和学士学位。

有关SVM和过调制的完整应用说明,包括示例代码,请访问

www.infineon.com/microcontrollers

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PWM
    PWM
    +关注

    关注

    114

    文章

    5157

    浏览量

    213489
  • 华强pcb线路板打样

    关注

    5

    文章

    14629

    浏览量

    42991
收藏 人收藏

    评论

    相关推荐

    PWM信号生成方法 PWM调制原理讲解

    PWM(脉冲宽度调制,Pulse Width Modulation)是一种重要的模拟信号电平数字编码方法,在电子技术和控制领域具有广泛应用。以下是对PWM信号
    的头像 发表于 11-28 16:34 260次阅读

    如何调试和测试PWM信号 PWMPWM信号产生器的区别

    调试和测试PWM信号 脉冲宽度调制(PWM)是一种常用的信号调制技术,广泛应用于电机控制、LED调光、电源管理等领域。调试和测试PWM
    的头像 发表于 11-19 09:07 324次阅读

    PWM信号的滤波和处理方法

    低通滤波器 : RC低通滤波器 :这是最常用的PWM滤波方法。通过选择合适的电阻R和电容C值,可以设定滤波器的截止频率,使得高于该频率的信号成分被衰减。当PWM
    的头像 发表于 11-18 17:41 660次阅读

    使用PWM生成模式驱动BLDC电机

    电子发烧友网站提供《使用PWM生成模式驱动BLDC电机.pdf》资料免费下载
    发表于 09-06 11:28 1次下载
    使用<b class='flag-5'>PWM</b><b class='flag-5'>生成</b>模式驱动BLDC电机

    PWM信号是什么意思

    PWM信号(脉冲宽度调制信号)是一种特殊的信号形式,广泛应用于电子领域的多个方面 。以下是对PWM信号
    的头像 发表于 08-12 18:06 1684次阅读

    2x18 LED矩阵驱动器,8模拟和8/16 PWM调光LP5862数据表

    电子发烧友网站提供《2x18 LED矩阵驱动器,8模拟和8/16 PWM调光LP5862数
    发表于 04-02 09:30 0次下载
    2x18 LED矩阵驱动器,<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟和<b class='flag-5'>8</b><b class='flag-5'>位</b>/16<b class='flag-5'>位</b> <b class='flag-5'>PWM</b>调光LP5862数据表

    具有8模拟和8/16 PWM 调光的 LP5860 11×18 LED矩阵驱动器数据表

    电子发烧友网站提供《具有8模拟和8/16 PWM 调光的 LP5860 11×18 LED矩阵驱动器数据表.pdf》资料免费下载
    发表于 04-02 09:29 0次下载
    具有<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟和<b class='flag-5'>8</b>/16 <b class='flag-5'>位</b> <b class='flag-5'>PWM</b> 调光的 LP5860 11×18 LED矩阵驱动器数据表

    18通道LED驱动器,8模拟和8/16PWM调光LP5861数据表

    电子发烧友网站提供《18通道LED驱动器,8模拟和8/16PWM调光LP5861数据表.p
    发表于 04-02 09:09 0次下载
    18通道LED驱动器,<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟和<b class='flag-5'>8</b><b class='flag-5'>位</b>/16<b class='flag-5'>位</b><b class='flag-5'>PWM</b>调光LP5861数据表

    具有8模拟调光和8/16PWM调光功能的4×18 LED矩阵驱动器LP5864数据表

    电子发烧友网站提供《具有8模拟调光和8/16PWM调光功能的4×18 LED矩阵驱动器LP5864数据表.pdf》资料免费下载
    发表于 04-02 09:08 0次下载
    具有<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟调光和<b class='flag-5'>8</b>/16<b class='flag-5'>位</b><b class='flag-5'>PWM</b>调光功能的4×18 LED矩阵驱动器LP5864数据表

    6x18 LED矩阵驱动器,8模拟和8/16 PWM调光LP5866数据表

    电子发烧友网站提供《6x18 LED矩阵驱动器,8模拟和8/16 PWM调光LP5866数
    发表于 04-01 10:22 0次下载
    6x18 LED矩阵驱动器,<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟和<b class='flag-5'>8</b><b class='flag-5'>位</b>/16 <b class='flag-5'>位</b><b class='flag-5'>PWM</b>调光LP5866数据表

    8x18LED矩阵驱动器,8模拟和8/16 PWM调光LP5868数据表

    电子发烧友网站提供《8x18LED矩阵驱动器,8模拟和8/16
    发表于 04-01 09:49 0次下载
    <b class='flag-5'>8</b>x18LED矩阵驱动器,<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟和<b class='flag-5'>8</b><b class='flag-5'>位</b>/16 <b class='flag-5'>位</b> <b class='flag-5'>PWM</b>调光LP5868数据表

    如何生成脉冲宽度调制PWM信号

    PWM信号具有许多优点,例如精准性高,可以快速实现控制的响应和控制精度,并快速响应任何运动误差。
    的头像 发表于 03-27 16:29 1157次阅读
    如何<b class='flag-5'>生成</b>脉冲宽度调制<b class='flag-5'>PWM</b><b class='flag-5'>信号</b>?

    具有8模拟以及8或16PWM调光功能的8×18LED大电流矩阵驱动器LP5868T数据表

    电子发烧友网站提供《具有8模拟以及8或16PWM调光功能的
    发表于 03-25 09:19 0次下载
    具有<b class='flag-5'>8</b><b class='flag-5'>位</b>模拟以及<b class='flag-5'>8</b><b class='flag-5'>位</b>或16<b class='flag-5'>位</b><b class='flag-5'>PWM</b>调光功能的<b class='flag-5'>8</b>×18LED大电流矩阵驱动器LP5868T数据表

    如何使用XMC4200生成PWM

    我正在使用 XMC4200F64F256BA 微控制器。 我是 DAVE™ IDE 软件和 XMC 固件的新手。 谁能通过任何示例项目来帮助我生成 PWM 信号。 我的目标是生成 4
    发表于 01-18 08:25

    TSMaster报文发送的信号生成器操作说明

    器类型有8种,今天重点和大家分享一下关于TSMaster信号生成器的8种类型的使用方式。本文关键字:信号
    的头像 发表于 12-23 08:21 940次阅读
    TSMaster报文发送的<b class='flag-5'>信号</b><b class='flag-5'>生成</b>器操作说明