This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F280039C:适用于 PMP23338

Guru**** 2330830 points
Other Parts Discussed in Thread: PMP23338
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1496231/tms320f280039c-for-the-pmp23338

器件型号:TMS320F280039C
主题:PMP23338中讨论的其他器件

工具/软件:

大家好!
我目前正在研究 PMP23338、我有几个问题想问您一些建议:
问题1: 该例程会指示:A-tasks (每1ms 执行一次)、B-tasks (每5ms 执行一次)。 通过测试发现:本地 A 任务在大约10ms 内执行、B 任务在大约300ms 内执行)。 我的理解是、在执行任务时、使用自己的架构加载相应的任务时、应严格按照指定的时间序列(1ms/5ms)加载这些任务、对吧?

问题2: 关于 TTPLPFC_computeNuchFltrCoeff (),为什么它不包括在初始化计算中,但我们需要安排循环中的重复计算。 有任何特殊注意事项吗?

问题3 为什么 TTPLPFC_read_cReturnCurrent ()需要*-2.0f 才能读取 Current?

问题4 为什么有必要在 TTPLPFC_HAL_updatepwm()中对 dut( fabsf(duyt))执行绝对值操作? 您需要考虑哪些因素?

问题5. 在预定义符号中:
F28x_DEVICE
CPU1
LARGE_MODEL
内部版本 F28003X
这些定义的功能是什么? 此外、
其中"_TI_EABI__"已定义(未找到)、其特定函数是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Milo、

    问题1: 是的、这些任务在给定的时间内执行、但如果在 ISR 或在此时序任务中执行计算所需的时间长于计时器、则需要 ISR/计时器任务的多个实例才能完成计算。 您可以对代码段进行分析、以确定哪个部件需要更长时间。 仅当代码执行以少于 ISR 周期的时间完成时、ISR 才会满足时序要求。

    问题2: 突出显示的结构使用2p2z 补偿器、其中 x1和 x2中间数据定期更新、这就是必须进行重复计算的原因。

    问题3  *-2.0f 是特定于 pmp23338板的当前扩展,因此通过消除这一因素,可以在其他硬件平台上使用代码。 您可以根据硬件选择自己的缩放比例。

    问题4 在此参考设计中、使用低频桥臂开关更改了交流电流极性、并且高频高/低侧 FET 还将其角色从 activeFET 更改为 syncFET 和 syncFET 更改为 activeFET。 在这种情况下、高频桥臂作为基于同步升压转换器的 PFC 运行。 因此、即使控制力度能够产生正值和负值、我们也需要占空比的绝对值。

    问题5. 预定义符号将让编译器知道它正在为哪个段/代码段编译什么器件。 预定义仅用于在整个工程中启用/禁用某些代码。 您可以在此处的其他 e2e 上找到一些解释、例如大型模型: https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1317482/tms320f28035-large_model-pre-defined-in-c2000ware-example-code

    有关"_TI_EABI_"的详细信息、请参阅: https://software-dl.ti.com/ccs/esd/documents/C2000_c28x_migration_from_coff_to_eabi.html

    对于所有其他符号、您可以通过在 C2000编译器指南中搜索符号来参考细节: https://www.ti.com/lit/ug/spru514w/spru514w.pdf

    此致、

    Sumit

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sumit、

    感谢您的友好回复。

    Q3:与我所附图片相比、硬件解决方案是否有任何更新? 我仍然不太明白为什么我们需要乘以-2。

    问题4:同意"高频高/低侧 FET 也会改变其角色"。但是、请想象一种情况、如果针对某个周期计算出的占空比为负值(假设在正半周期内周期内没有交流电流交替)。 取绝对值后、不是意味着原系统引入了正面反馈吗? 您能进一步解释一下吗?

    此致、

    Milo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Milo、

    问题3 请查找以下针对电路中因数-2.0f 的说明。 如果有任何问题、请告诉我理解相同内容。

    问题4 在这种情况下、低频 FET 也会根据正负交流周期改变其角色、因此 HF 升压转换器桥臂在控制它是正的还是负的方面是一样的。 想象一下、无论交流周期极性如何、HF 桥臂都像普通升压转换器一样工作。 因此、我们 在 TTPLPFC_HAL_updatePWM (uint32_t base1、uint32_t BASE2、float32_t 占空比、float32_t phase1ScaleFactor)中仅保留在"duty"变量中传递的该变量 TTPLPFC_dutyPU 的幅度。 应用该绝对占空比更新了 PWM、不用于控制计算、在这种情况下占空比不能为负。

    此致、

    Sumit

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sumit、

    问题3:如何理解 R311和 R312的电阻值不同、但不影响相应比例?

    Q4:让我们将讨论限制在正半周期,低频 FET 中交流电的极性不会改变。 考虑一个增量 PI 控制环路。 当电流周期的计算结果为负时、意味着 D 的值将在下一个周期中减小。 但是,如果你取绝对值,它只会产生积极的反馈(我们不希望的控制效果)。 这种思维方式是否不适用于位置 PI 控制? 仍然不太理解"只关注 D 的大小,而不是它的标志"这一说法。 此外,为什么我们故意在 TTPLPFC_pwmDriver ()函数中区分 D 的正值和负值? 这似乎是矛盾的。

    此致、

    Milo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Milo、

    问题3:因此、这个示例中的计算结果是用 ADC 数字的满量程进行映射的。 在本例中、TTPLPFC_I_MAX_SENSE 决定电流的满量程和相应的3.3V 范围、此范围与 ADC 的数字"4096"满量程相关联。 这样、您就可以确定增益值"1+(R311/R312)"来充分利用满量程的优势。

    Q4:在本示例中、 TTPLPFC_HAL_updatePWM ()仅用于更新与 EPWM 占空比相对应的 CMP 值、而不用于运行 补偿器以执行任何控制循环。 此补偿器运行发生在早期函数"TTPLPFC_runCurrentLoop ();"中,因此不会有任何正反馈。 在任何控制情况下、我们需要应用的责任都不能为负、因为这是不可能的。 请参阅以下有关 TPPFC 的视频培训系列(尤其是第2部分)、了解实现此功能的方框图: https://www.ti.com/video/series/digitally-controlled-high-efficiency-and-high-power-density-pfc-.html

    请告诉我这是否合理。

    此致、

    Sumit