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

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

3天内不再提示

使用C2000内部比较器替外部比较器

suanjunihao 来源:suanjunihao 作者:suanjunihao 2023-04-03 10:56 次阅读

使用C2000内部比较器替外部比较器

C2000系列芯片数字电源电机控制中有着广泛的应用,在这些应用中,过流过压保护是必不可少的。传统的方法是使用外部比较器,但是会存在滤波电路不好设计,不同版本需要不同的BOM来提供不同的保护点等问题。本文针对所有第三代C2000芯片,比如F2807x/37x,F28004x,F28002x等,介绍C2000内部比较器的具体实践方法,并提供了与传统的外部比较器方法的比较,结果表明,使用C2000内部比较器的方法在效率和成本上都具备明显的优势。

1. 介绍

C2000系列芯片在数字电源和电机控制中有着广泛的应用,在这些应用中,过流过压保护是必不可少的。传统的方法是使用外部比较器,但是会存在滤波电路不好设计,不同版本需要不同的BOM来提供不同的保护点等问题。本文针对所有第三代C2000芯片,比如F2807x/37x,F28004x,F28002x等,介绍C2000内部比较器的具体实践方法,并提供了与传统的外部比较器方法的比较,结果表明,使用C2000内部比较器的方法在效率和成本上都具备明显的优势。

2. C2000 内部比较器的介绍

TI 第三代C2000芯片全系列集成了带DAC的片内比较器,通过DAC设定阈值,与采样信号分别送到片内比较器的正负输入端做比较,由于DAC的集成,用户可以方便地修改比较的电压值。同时,C2000比较器内部集成数字滤波器,可以实现高性能的滤波。生成保护信号给到PWM模块封锁PWM输出,从而实现快速的过流过压保护,无需额外再加比较器和基准电压。另外,C2000内部的比较器响应速度快,以F280049 为例(可参考datasheet上Comparator Electrical Characteristics这一章节),从比较器输入的电平异常到比较器产生输出信号,延迟最多60ns, 而通用比较器的延迟一般要1us左右,使用与C2000内部比较器相似规格的比较器成本又会比较高。

比较器子系统 (CMPSS) 模块由模拟比较器和支持组件组成它们组合成一种拓扑结构,可用于功率应用,例如峰值电流模式控制,开关电源功率因数校正和电压跳闸监控。 每个CMPSS 模块包括两个模拟比较器、两个可编程 12 位DAC、一个斜坡发生器和两个数字滤波器。CMPSS有两个输出,一个是CTRIPH,送到芯片内部,可以和PWM模块同步,配合使用。一个是CTRIPOUTH,可以通过OUTPUTXBAR 送到外部GPIO和系统其他模块搭配使用。简化的示意图如图1所示:

pYYBAGQqQFmASNTSAAHDwN6yL5Y604.png

图1 比较器子系统 (CMPSS)简图

3. 比较器滞回功能的使用

为了避免噪声波动引起的比较器输出的反复跳变,我们一般都会配置滞回比较。 C2000比较器的滞环是可以设定的,COMPHYSCTL的COMPHYS位可以设定滞环的环宽,当环宽设定为0时也就意味着没有滞环。注意在规格书中,滞环的单位是LSB,所以它和CMPSS模块内部的DAC的参考有关。如果内部DAC的参考电压是3V,1LSB对应3V/4096=0.7mV。 以F28004x,F2807x,F2837x为例,其滞环可以在12LSB, 24LSB, 36LSB, 48LSB中选择。具体可以在datasheet的电气参数中看到。

poYBAGQqQFqADdtHAAJWnSmDiv8734.png

CMPSS内部DAC的参考可以看TRM (Technical Reference Manual) 中关于参考的介绍,可以在VDDA和VDAC中选择:

pYYBAGQqQFuATurpAAIYDZJI-ss224.png

设置滞回的寄存器是COMPHYS, 设置滞回也可以调用driverlib中的函数CMPSS_setHysteresis(uint32_t base, uint16_t value)。设置值和滞回环宽的关系可以看具体型号C2000的Technical Reference Manual中寄存器的解释。

pYYBAGQqQFyAULnbAAFemMj3CcE066.png

4. 数字滤波器的使用

当外部输入的滤波电路设计不当时,会导致比较器被误触发的情况,C2000内部比较器还集成了可配置的数字滤波器,CMPSS数字滤波器的时钟来源是系统时钟, 预分频(CLKPRESCALE)决定了滤波器的采样率,滤波器的FIFO在每个分频后时钟采样一次。数字滤波器在从输入端采集的FIFO采样(SAMPWIN)窗口上工作。滤波器输出为采样窗口内的多数值,其中多数由阈值(THRESH)定义。如果不满足阈值,则滤波器输出保持不变。具体的工作逻辑可以参考TRM(Technical Reference Manual)的Digital filter behavior,如图2。

这里以F280049为例,需要注意的是,THRESH的值必须被设置为大于SAMPWIN/2并且小于或等于SAMPWIN。同时,FIFO中的旧数据将被丢弃。在用寄存器配置的情况下,对于SAMPWIN、THRESH和CLKPRESCALE,数字滤波器使用的内部数字在所有情况下都是+1。也就是说,samples=SAMPWIN+1,threshold=THRESH+1,pre scale=CLKPRESCALE+1。

pYYBAGQqQFyAIgZ2AAFwGcp3xVY471.png

图2 比较器滤波子模块功能

也可以用driverlib函数配置,即在函数中配置相应的分频值,采样窗和阈值。

Void CMPSS_configFilterHigh(uint32_t base, uint16_t samplePrescale, uint16_t sampleWindow, uint16_t threshold);

Void CMPSS_configFilterLow(uint32_t base, uint16_t samplePrescale, uint16_t sampleWindow, uint16_t threshold);

5. 利用锁存模式和外部模块配合使用

CMPSS可以很方便地和PWM等其他内部外设配合使用,但是有些应用中,也需要把内部比较器的信号锁存起来,比如传给外部的IPM模块等。CMPSS也支持这种模式,用户可选择穿透模式,和锁存(Latch)模式,在锁存模式下,可以将瞬间的过压过流给到外部,保护外部的模块不被损坏。

同时,也可以在比较器的输出源中选择通过或门的锁存信号,也就是高低两个寄存器的COMPCTL.CTRIPOUTLSEL和用COMPCTL.CTRIPOUTHSEL ,第三个输入选项就是经过滤波器后的锁存信号,也可以选择0-异步模式或是和1-CPU时钟同步,或是2-经过滤波器但是不锁存的信号,具体选项和对应关系,可以参考图3。

同样的,也可以用Driverlib函数配置,在void CMPSS_configOutputsHigh(uint32_t base, uint16_t config)和void CMPSS_configOutputsLow(uint32_t base, uint16_t config)函数里面的config增加一个参数CMPSS_TRIPOUT_LATCH即可,TRIPOUT代表是将这个信号通过OUTPUTXBAR送到芯片外部GPIO。

poYBAGQqQF2AELhQAAKXuEius7Q036.png

图3 比较器子系统完整信号框图

6. 和PWM配合使用的实际应用

传统的保护方式是使用外部比较器,本文介绍的使用C2000内部的窗口比较器(ADC与比较器pin 脚共用)的方式,可以节省物料成本和布板空间。具体配置方法如下(完整代码参考TIDM-02002 买电子元器件现货上唯样商城

针对 HEV/EV 车载充电器的双向 CLLLC 谐振、双有源电桥 (DAB) 参考设计):

第一步,选择合适的CMPSS输入的脚,查看TRM 的Table 15-2. Analog Pins and Internal Connections,并通过CMPSS的DAC 子模块,配置合适的值; 这边需要注意,比较器模块的高低比较器的Positive input必须是外部AIO引脚,negative input 可以说DAC 的输出或外部AIO引脚。

// set CMPSS H and L Positive input pins

ASysCtl_selectCMPHPMux(CLLLC_IPRIM_CMPSS_ASYSCTRL_CMPHPMUX,

CLLLC_IPRIM_CMPSS_ASYSCTRL_MUX_VALUE);

ASysCtl_selectCMPLPMux(CLLLC_IPRIM_CMPSS_ASYSCTRL_CMPLPMUX,

CLLLC_IPRIM_CMPSS_ASYSCTRL_MUX_VALUE);

// set DAC H and L values

CMPSS_setDACValueHigh(CLLLC_ISEC_TANK_CMPSS_BASE,

CLLLC_ISEC_TANK_DACHVAL);

CMPSS_setDACValueLow(CLLLC_ISEC_TANK_CMPSS_BASE,

CLLLC_ISEC_TANK_DACLVAL);

第二步,配置输出,通过XBAR 将CMPSS的高和低两个比较器的结果,映射到XBAR_TRIP5和XBAR_TRIP7;

XBAR_setEPWMMuxConfig(XBAR_TRIP5,

CLLLC_IPRIM_TANK_H_PWM_XBAR_MUX_VAL);

XBAR_enableEPWMMux(XBAR_TRIP5,

CLLLC_IPRIM_TANK_H_XBAR_MUX);

XBAR_setEPWMMuxConfig(XBAR_TRIP7,

CLLLC_IPRIM_TANK_L_PWM_XBAR_MUX_VAL);

XBAR_enableEPWMMux(XBAR_TRIP7,

CLLLC_IPRIM_TANK_L_XBAR_MUX);

第三步,PWM trip配置,将XBAR_TRIP5和XBAR_TRIP7分别配置给Digital Trip Event A2和B2, 当输出为高时,可以触发PWM动作。

7. 总结

在本文中,我们讨论了通过 C2000内部集成的模拟比较器功能,在增加系统功能的同时减少外部组件的需求,同时提供了更多的数字编程控制的灵活性,这种实现还可以帮助节省成本和电路板空间,本文还通过几个具体案例详细介绍了集成模拟比较器的使用方法。更多相关应用、硬件和软件的示例,请参阅 TI 官网提供的C2000开发工具、应用手册、设计指南、硬件原理图和软件示例。

参考文献

TMS320F28002x Real-Time Microcontrollers Technical Reference Manual (Rev. A)

TMS320F28004x Real-Time Microcontrollers Technical Reference Manual (Rev. D)

Design Guide: TIDM-02002 Bidirectional CLLLC Resonant Dual Active Bridge (DAB) Reference Design for HEV/EV Onboard Charger

来源:TI

作者:Emma Wang

松下汽车类6轴单芯片MEMS惯性传感器,提高车载系统的安全性和舒适性

据麦姆斯咨询介绍,在当下的“万物电气化(electrification of everything)”时代,传感器已成为一个必不可少的先决条件:汽车、巴士、摩托车、无人送货车、建筑机械和许多其它车辆配备越来越多的传感器,以实现安全且舒适的辅助驾驶/自动驾驶。全面的感知能力对于支持运动检测、定位、导航、数据融合等许多用途至关重要。

为此,松下机电(Panasonic Industry)开发出汽车类6轴MEMS惯性传感器系列,即MEMS惯性测量单元(IMU),该系列产品通过单芯片解决方案面向车载领域的功能安全(ISO26262)为车身稳定控制、ADAS和自动驾驶等系统提供惯性感知功能,并且符合ASIL-B(D)标准,具有高水平的功能安全性及自诊断功能。

pYYBAGQqQF6AUpiPAAEFbteq7xY855.png

松下汽车类6轴MEMS惯性传感器

过去用于车载系统的惯性传感器,其角速度和加速度的感测元件是由多颗芯片构成的,因此面临因角速度和加速度的轴偏离而影响输出精度的问题。松下推出的新型高质量、高可靠的6轴MEMS惯性传感器系列,也称为“6合1传感器”,单颗芯片集成了3轴MEMS陀螺仪和3轴MEMS加速度计,即利用基于单芯片MEMS技术实现高6轴正交性(轴间正交性≦0.01°),为提高车载系统的安全性能和设计自由度做出贡献。

poYBAGQqQGCAP2WPAAJ6qd5R1bs768.png

松下汽车类6轴MEMS惯性传感器采用单芯片解决方案

松下汽车类6轴MEMS惯性传感器采用电容式MEMS感测技术,通过晶圆级封装使得盖帽、MEMS和ASIC形成一体,实现了小型化的6轴惯性传感器,封装尺寸为4.5 mm x 4.5 mm x 1.1 mm。由此,为车载系统的综合化和车载ECU的小型化做出了贡献。

pYYBAGQqQGGACY7wAAD6H7bOEn4382.png

松下汽车类6轴MEMS惯性传感器剖面图

该惯性传感器封装形式为可润湿侧翼QFN。松下借助凹痕加工技术,使得这种封装外壳引脚的侧面能够形成可目视的焊脚。由此,通过焊脚的目视检查,即可确认引脚是否已被正常地焊接到基板的焊盘上。这可以实现高质量焊接,从而实现无差错装配,这对于汽车安全性、舒适性,以及工业应用都至关重要。

poYBAGQqQGKALGPnAANZ-F7T2Lc806.png

惯性传感器封装引脚凹痕加工示意图

pYYBAGQqQGOAVyhoAAOuLd4PgFI677.png

贴装完后的惯性传感器外观示意图

松下汽车类6轴MEMS惯性传感器的一个关键用途是可以在剧烈振动的情况下(例如当汽车突然冲出道路时)检测车辆的运动状况,然后利用传感器数据来调整马达的扭矩和制动力,以实现安全的车辆状态。

poYBAGQqQGOAJfjvAAKC38BztiE531.png

该6轴惯性传感器还成功实施了与汽车安全相关的雷达(RADAR)/激光雷达(LiDAR)应用。通常,雷达/激光雷达会出现安装偏移,例如在车辆工厂组装和经销商运输过程中。因此需要工厂或经销商对此类安装偏移进行校准,使其不影响雷达/激光雷达的探测方向或被探测物体在3D地图中的位置精度。为此,工厂或经销商在静止情况下使用3轴加速度计进行倾斜检测以测量安装偏移,并且在运动情况时,还会使用3轴陀螺仪来测量偏移。

雷达/激光雷达可以搭配6轴惯性传感器以获得姿态(横滚、俯仰和偏航)及地理坐标信息,助力自动驾驶汽车实现更加安全的导航和定位功能。对于扫描周期较长的激光雷达等传感器,车载系统需要将上一个周期检测到的周围环境3D点云与当前周期检测到的3D点云进行比较。通过使用来自6轴惯性传感器的车辆运动数据,可以减少匹配上一个周期的3D点云和当前周期的3D点云的计算量。

在汽车行驶时,6轴惯性传感器能够动态地检测道路的起伏,车载系统根据传感器数据可修正雷达/激光雷达照射位置或探测到的物体在地图上的位置。尤其是在GNSS(全球导航卫星系统)信号被阻挡时(例如隧道中),基于惯性传感器的航位推算(DR)可以计算出当前车辆的位置,保证连续定位、稳健驾驶。

除了这些与汽车安全相关的应用之外,该6轴惯性传感器还成功地应用于AR-HUD(增强现实抬头显示)系统等舒适性应用。在这个用例中,惯性传感器检测车辆的运动,并可以使用“AR.markers”调整AR-HUD光束的位置,以便驾驶员以最佳方式观看。另一个与舒适性相关的应用是主动悬架系统,其通过惯性传感器采集车辆姿态信息,经过主动悬架控制器计算,向四轮减震器输出软硬不同的阻尼控制,最后通过控制四个减震器内部的电磁阀来动态调整悬架软硬。

松下目前正在进行不同实施状态的多个项目,推动商业应用领域也使用6轴惯性传感器。例如,自动驾驶巴士可以借助6轴惯性传感器来计算车辆是否在预定义的路径上。自主叉车受益于6轴惯性传感器提供的安全性和舒适性——例如防止货物从叉车上掉落。这些也适用于其它“即将实现自主运行”的机械——例如割草机、铁路列车或压实机。

审核编辑黄宇

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

    关注

    158

    文章

    7331

    浏览量

    174779
  • 比较器
    +关注

    关注

    14

    文章

    1526

    浏览量

    106481
  • dac
    dac
    +关注

    关注

    43

    文章

    1973

    浏览量

    189514
  • 数字电源
    +关注

    关注

    27

    文章

    469

    浏览量

    109115
收藏 人收藏

    评论

    相关推荐

    基于C2000内部集成的模拟比较器功能

    不同的保护点等问题。本文针对所有第三代C2000芯片,比如F2807x/37x,F28004x,F28002x等,介绍C2000内部比较器的具体实践方法,并提供了与传统的
    的头像 发表于 08-24 15:51 640次阅读
    基于<b class='flag-5'>C2000</b><b class='flag-5'>内部</b>集成的模拟<b class='flag-5'>比较</b>器功能

    #电路分析 #家电维修 比较电路原理分析

    比较比较电路
    学习电子知识
    发布于 :2022年10月10日 21:28:51

    我来告诉你什么是比较

    比较
    YS YYDS
    发布于 :2023年04月15日 14:21:16

    目前C2000系列DSP用的比较普遍的是那几个型号

    想问大家一下:目前C2000系列DSP用的比较普遍的是那几个型号,比如28335,大家给说几种吧,目前常用的型号。
    发表于 02-06 16:34

    学习C2000,大学里最值得干的一件事

    经常看到有网友发帖问相关DSP入门的问题,这里针对C2000入门来总结一下: 从个人经验来看,在大学选择学习C2000是最值得干的一件事。 总体来说C2000的门槛比较高,只要你入门并
    发表于 09-25 14:09

    单片机内部比较

    `如何配置STC15F104W内部自带的比较比较外部两个电压差值,进行判断输出。`
    发表于 10-28 19:02

    通过Piccolo微控制单元的模拟比较功能讨论

    C2000 Piccolo 微控制系列的集成模拟功能,可以围绕单个控制来设计系统,而不需要外部支持电路。这主要涉及使用模拟比较
    发表于 07-17 07:27

    基于微控制集成模拟比较为电源降低电路板空间

    时,设计师仍局限于模拟域。 通过使用 TI C2000 Piccolo 微控制系列的集成模拟功能,可以围绕单个控制来设计系统,而不需要外部支持电路。这主要涉及使用模拟
    发表于 07-19 07:38

    当碰到仿真连接不上C2000芯片的时候如何解决?

    看到很多坛友碰到仿真连接不上芯片的问题常常一筹莫展。所以谈谈当碰到仿真连接不上C2000芯片的时候该怎么办。首先,由于对工程师而言C2000芯片是黑盒,仿真
    发表于 07-23 09:02

    Gen-3 C2000 F280025C外围电路和引脚配置介绍

    C2000 Gen-3对比于Gen-2的C2000,加入了三角函数运算单元来进一步提升运算能力,提供了更多的ADC模块及窗口比较来增强采样和保护的快速性和灵活性。同时,在实时通信方面
    发表于 11-04 07:17

    C2000内置比较器误差来源及校正方法-F28004x, F2807x, F2837x

    C2000系列芯片在数字电源和电机控制中有着广泛的应用,在这些应用中,过流过压保护是必不可少的。TI 的Picollo系列芯片从F2802x开始,就已经集成了带DAC的片内比较器,通过DAC设定阈值
    的头像 发表于 10-20 14:00 399次阅读

    使用C2000内部比较器替外部比较

    点等问题。本文针对所有第三代C2000芯片,比如F2807x/37x,F28004x,F28002x等,介绍C2000内部比较器的具体实践方法,并提供了与传统的
    的头像 发表于 03-14 09:40 1037次阅读
    使用<b class='flag-5'>C2000</b><b class='flag-5'>内部</b><b class='flag-5'>比较</b>器替<b class='flag-5'>外部</b><b class='flag-5'>比较</b>器

    C2000内置比较器误差来源及校正方法

    C2000系列芯片在数字电源和电机控制中有着广泛的应用,在这些应用中,过流过压保护是必不可少的。TI 的Picollo系列芯片从F2802x开始,就已经集成了带DAC的片内比较器,通过DAC设定阈值
    的头像 发表于 03-22 10:06 1355次阅读
    <b class='flag-5'>C2000</b>内置<b class='flag-5'>比较</b>器误差来源及校正方法

    使用C2000内部比较器替外部比较

    点等问题。本文针对所有第三代C2000芯片,比如F2807x/37x,F28004x,F28002x等,介绍C2000内部比较器的具体实践方法,并提供了与传统的
    的头像 发表于 03-27 09:37 581次阅读
    使用<b class='flag-5'>C2000</b><b class='flag-5'>内部</b><b class='flag-5'>比较</b>器替<b class='flag-5'>外部</b><b class='flag-5'>比较</b>器

    内部外部看门狗定时器的比较

    本文比较内部(与微处理器集成)和外部(基于硬件)看门狗定时器(WDT)的优缺点。它解释了内部看门狗定时器易于实现,但容易发生故障。MAXQ2000
    的头像 发表于 04-03 11:15 2176次阅读