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

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

3天内不再提示

C2000系列DSP移相功能缺陷的分析与解决方法(二)

CHANBAEK 来源:匠人电子实验室 作者:匠人电子实验室 2023-03-20 15:39 次阅读

此前关于TI的C2000系列DSP的移相功能模块导致部分周期出现驱动脉冲丢失的现象,已经写了两篇文章了,其中第一篇提出这个现象并分析这种情况产生的原因,第二篇给出了一种可以在一定范围内规避脉冲丢失的方法。这种方法的思路是使用额外的ePWM2模块作为中继,产生一个固定的移相角,通过接力的方式,使ePWM1与ePWM3之间得到一个较大的移相角。虽然各种方式可以得到一个绝对值较大的移相角,但移相角的变化范围依然受到比较值的限制。以双有源桥为例,每一个开关管均为50% 占空比,所以比较值CMP等于周期值PRD的一半,由于ePWM3模块的移相值不能与自身的比较值发生跨越,因此可用的移相范围依然只是180度,当然这个移相范围对于双有源桥已经足够了,但这种方法需要消耗更多的硬件资源,对于复杂移相调制的双有源桥来说,可能需要多大4组互补且相位可调的PWM驱动信号,在加上所需要的中继模块,很可能超过DSP的片上资源总量,即使不超过这也是硬件资源的极大浪费,只能作为一种临时的解决方案。

本文根据ePWM模块的使用手册,给出另一种移相方法,在节省硬件资源的前提下实现较大范围的移相。

上回书说到PWM移相是通过传递同步信号实现的,每个ePWM模块都有个同步信号的输入端SYNCI和同步信号的输出端SYNCO,同步信号的产生有三种方式,分别是:

直接透传SYNCI的信号到SYNCO,作为下一个模块SYNCI,这种方式也是我当年的毕业设计用应用的,这样可以避免途经的模块移相角对后面的模块相位的影响。

CTR=0时产生SYNCO脉冲,这种方式假设模块1与模块2之间的相位发生变换,模块3也会随之变化,导致模块之间的移相同步值存在耦合,增加计算复杂度。

CMPB=CTR 这种方法可以在模块不使用CMPB时获得比较自由的移相方式,但也具有第2中方式的缺点,累计移相角的问题。

产生同步脉冲后,后一个模块接收到同步脉冲,会将PHS寄存器的值直接写到计数器CRT中,相当于为计数器赋初值,改变这个初值就会改变该计数器与前一个计数器的相位差。

上篇文章是针对方式2提出的方法,本篇文章针对方式3给出一种不用额外硬件资源作为中继就可以实现大范围移相的方法。

首先需要了解的是每个ePWM模块有两个比较值CMPA和CMPB,对于互补输出只需要使用一个CMP比较值寄存器,另一个闲置就可以了。因为死区模块可以根据CMPA自动生成两路互补带死区的驱动信号,那么闲置CMPB就可以用于产生移相同步脉冲,而且不会影响到自己模块的发波。根据上面的第三种同步信号产生方式,可以使用ePWM模块中的比较值CMPB与计数器CTR匹配的事件来产生同步信号输出SYNCO,通过调整CMPB寄存器的值调整SYNCO与SYNCI的延迟相位。

wKgZomQYDVGAH6fFAAA7IWNoeAQ003.jpg

以上图为例,设定两个ePWM模块均为周期100,ePWM1的CMPB寄存器为30,ePWM2模块的PHS寄存器为0,得到的效果就是当模块1计数到30的时候,将模块2清零。这里面的CMPB用于产生移相角,移相角变化范围可以在0到360度之间。当然这个移相角的变换并非没有限制,假设在一个周期内移相角变化过大,超过180度,同样可能造成驱动脉冲的丢失。

wKgaomQYDVKAeUwAAABEauPteKU696.jpg

上图给出了一个实例,移相角从80一下子改成了20,超过了半周期50,那么下一周期的ePWM2模块的计数只到40就再次归零了,没有机会与CMPA发生匹配(见红色虚线圈出的部分),因此这个周期的驱动脉冲无翻转。这种方法需要使用者注意:调整移相角要每个周期逐渐调整,设定一个最大调整步长。当然这个步长最好设定为远小于半周期,因为单次调整及时不超过半周期,也会导致驱动脉冲畸变,原本互补50% 占空比的PWM会变成非50%。造成变压器磁偏。较小的磁偏可以通过回路寄生电阻自行矫正,如果一个周期产生很大的磁偏,无法及时矫正,就可能导致变压器饱和。

值得注意的是这种移相方法获得的移相角是滞后的,而原本通过改写PHS寄存器得到的移相角是超前的。用户可以根据需要同时使用本文提出的移相方法和通过PHS寄存器赋初值的方法,这样可以获得更灵活的应用。但切记PHS的变化范围一定不能与比较值CMP发生跨跨越。

到此为止,关于C2000系列移相功能缺陷的分析与解决的文章就要告一段路了,接下来我准备了一块LCD板子,打算做一个串口屏,带触摸按键和一些存储外设,然后写写代码。此后屏幕可以作为更大的系统的HMI,例如数控电源显示与调节面板,电池模组的显示单元等等。我将会把串口屏的软硬件设计经验分享出来。

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

    关注

    553

    文章

    7987

    浏览量

    348779
  • 模块
    +关注

    关注

    7

    文章

    2695

    浏览量

    47433
  • PWM
    PWM
    +关注

    关注

    114

    文章

    5184

    浏览量

    213814
  • 脉冲
    +关注

    关注

    20

    文章

    889

    浏览量

    95620
  • 串口屏
    +关注

    关注

    8

    文章

    532

    浏览量

    37423
收藏 人收藏

    评论

    相关推荐

    C2000系列DSP相同步功能缺陷

    的应用当属LLC谐振变换器;调制目前主要应用于全桥。在我对我的课题进行实验的时候,发现在闭环条件下,变换器驱动信号存在丢周期现象,也就是我题目中提到的
    的头像 发表于 03-20 15:51 2821次阅读
    <b class='flag-5'>C2000</b><b class='flag-5'>系列</b><b class='flag-5'>DSP</b><b class='flag-5'>移</b>相同步<b class='flag-5'>功能</b>的<b class='flag-5'>缺陷</b>

    #硬声创作季 #DSP DSP从入门到编写-02 如何学好C2000

    dspC2000
    水管工
    发布于 :2022年10月25日 13:41:22

    #硬声创作季 #DSP DSP从入门到编写-06 C2000的中断机制-1

    dspC2000
    水管工
    发布于 :2022年10月25日 13:43:44

    请问c2000或其它的数字电源芯片的PWM模块能在使用外部同步时钟时吗?

    c2000 或其它的数字电源芯片的PWM模块能在使用外部同步时钟时吗?同时还可以工作在中间对齐模式吗?
    发表于 10-31 14:56

    如何对DSP C2000系列中的8位数据进行读写呢

    DSP C2000系列中8位数据的读写DSP C2000中char占2个字节8位数据读写的目的8位数据读写的实现过程8位数据读写的实际应用
    发表于 12-09 07:35

    C2000 DSP实验指导

    C2000 DSP实验指导 1 概述1.1 TMS320LF2407A简介TMS320LF2407A芯片作为是TI公司TMS320C2000系列中的一种16位定点
    发表于 04-07 11:07 23次下载

    C2000 DSP实验箱实验指导用书

    电气与自动化工程学院为本科生和研究生开设了DSP原理及应用课程、DSP威廉希尔官方网站 及其应用综合实验。根据我们学院所设置专业的特点,选择TI公司C2000系列
    发表于 02-27 23:36 56次下载

    DSP C2000程序员高手进阶

    DSP C2000程序员高手进阶 PDF 版
    发表于 05-06 15:13 33次下载

    基于DSP C2000程序员高手进阶

    基于DSP C2000程序员高手进阶
    发表于 10-12 14:37 10次下载
    基于<b class='flag-5'>DSP</b> <b class='flag-5'>C2000</b>程序员高手进阶

    DSP c2000中文资料

    DSP c2000中文资料
    发表于 10-13 11:08 46次下载
    <b class='flag-5'>DSP</b> <b class='flag-5'>c2000</b>中文资料

    DSP C2000程序员的高手进阶

    DSP C2000程序员的高手进阶
    发表于 10-16 13:16 20次下载
    <b class='flag-5'>DSP</b> <b class='flag-5'>C2000</b>程序员的高手进阶

    c2000的事件管理器及其应用

    C2000系列DSP与其它系列DSP的主要区别体现在功能强大的事件管理器模块;
    发表于 04-04 10:38 0次下载
    <b class='flag-5'>c2000</b>的事件管理器及其应用

    C2000入门:C2000的基本知识介绍 (2)

    C2000入门基础()C2000概述(下)
    的头像 发表于 04-15 06:30 4166次阅读
    <b class='flag-5'>C2000</b>入门:<b class='flag-5'>C2000</b>的基本知识介绍 (2)

    DSP C2000系列中8位数据的读写

    DSP C2000系列中8位数据的读写DSP C2000中char占2个字节8位数据读写的目的8位数据读写的实现过程8位数据读写的实际应用
    发表于 11-26 14:21 27次下载
    <b class='flag-5'>DSP</b> <b class='flag-5'>C2000</b><b class='flag-5'>系列</b>中8位数据的读写

    C2000系列DSP功能缺陷分析解决方法(一)

      此前写过一篇文章,分析德州仪器C2000系列DSP相同C2000
    的头像 发表于 03-20 15:44 3151次阅读
    <b class='flag-5'>C2000</b><b class='flag-5'>系列</b><b class='flag-5'>DSP</b><b class='flag-5'>移</b><b class='flag-5'>相</b><b class='flag-5'>功能</b><b class='flag-5'>缺陷</b>的<b class='flag-5'>分析</b>与<b class='flag-5'>解决方法</b>(一)