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.

[参考译文] TMS320F280049C:使用 BOOSTXL-DRV8320S EVM 更新 LAUNCHXL-F280049C 的电流传感器

Guru**** 2866460 points

Other Parts Discussed in Thread: LAUNCHXL-F280049C, BOOSTXL-DRV8320S

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1635335/tms320f280049c-current-sensor-update-for-launchxl-f280049c-with-boostxl-drv8320s-evm

器件型号: TMS320F280049C
Thread 中讨论的其他器件: LAUNCHXL-F280049CBOOSTXL-DRV8320S

我们将 LAUNCHXL-F280049C 与 BOOSTXL-DRV8320S EVM 配套使用。  我们用 LEM 传感器取代了分流电流传感器、并对代码进行了修改、我们无法让电机旋转。  我们请求为此提供支持。  以下是我们迄今所做的工作:

1) 在 hal.c 中、我们删除了原始的 ISENA、ISENB、ISENC PGA 设置

//2026_04_06 // ISENA - PGA5->A14->RA0
//2026_04_06 ADC_setupSOC (obj->adcHandle[0]、ADC_SOC_NUMBER0、ADC_TRIGGER_EPWM6_SOCA、
//2026_04_06 ADC_CH_ADCIN14、HAL_ADC_SAMPLE_WINDOW);
//2026_04_06
//2026_04_06 // ISENB - PGA3->C7->RC0
//2026_04_06 ADC_setupSOC (obj->adcHandle[2]、ADC_SOC_NUMBER0、ADC_TRIGGER_EPWM6_SOCA、
//2026_04_06 ADC_CH_ADCIN7、HAL_ADC_SAMPLE_WINDOW);
//2026_04_06
//2026_04_06// ISENC - PGA1->B7->RB0
//2026_04_06 ADC_setupSOC (obj->adcHandle[1]、ADC_SOC_NUMBER0、ADC_TRIGGER_EPWM6_SOCA、
//2026_04_06 ADC_CH_ADCIN7、HAL_ADC_SAMPLE_WINDOW);

并在 ISENA、ISENB 和 ISENC 上设置 LEM 传感器(以 1.65v 为中心)到 A/D 输入 A8、A4、B4

// ISENA - A8
ADC_setupSOC (obj->adcHandle[0]、ADC_SOC_Number3、ADC_TRIGGER_EPWM6_SOCA、
ADC_CH_ADCIN8、HAL_ADC_SAMPLE_WINDOW);

// ISENB - A4
ADC_setupSOC (obj->adcHandle[0]、ADC_SOC_Number4、ADC_TRIGGER_EPWM6_SOCA、
ADC_CH_ADCIN4、HAL_ADC_SAMPLE_WINDOW);

// ISENC - B4
ADC_setupSOC (obj->adcHandle[1]、ADC_SOC_Number5、ADC_TRIGGER_EPWM6_SOCA、
ADC_CH_ADCIN4、HAL_ADC_SAMPLE_WINDOW);

 

2) 我们已经尝试在 hal.c 中移除 PGA 设置、因为我们未使用分流 PGA 输入、于是我们将其移至 LEM A/D 输入

// HAL_setupPGA (handle);

 

3) 在 user.h 中、我们尝试为以下各项设置各种#defines

#define USER_ADC_FULL_SCALE_CURRENT_A ((float32_t)(xxx.x))

#define IA_OFFSET_A (-xx.x)//~=0.5* USER_ADC_FULL_SCALE_CURRENT_A
#define IB_OFFSET_A (-xx.x)//~=0.5*USER_ADC_FULL_SCALE_CURRENT_A
#define IC_OFFSET_A (-xx.x)//~=0.5* USER_ADC_FULL_SCALE_CURRENT_A

 

我们只是要更换电流传感器类型和感应位置、但它无法正常工作。  我们请求支持这项努力。

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

    您好:

    您可能非常接近、但这通常不是“更改 ADC 通道并仅更新 USER_ADC_FULL_SCALE_CURRENT_A “修改。

    首先、我要检查的是软件仍在读取与电流控制代码预期相同的 ADC 结果寄存器/SOC 索引。
    在原始代码中,当前通道位于 SOC0 上,而新的 LEM 通道被移至 SOC3/4/5。 ADC1_SoC 3 用于直流总线电压、因此会发生冲突。 通常、我们会尝试使用三个不同的 ADC 在同一 SoC 中捕获所有三个电流。 由于在代码 ISENA - A8 和 ISENB - A4 中连接到一个 ADC、因此您必须对 ADC SoC 进行所有读取调优、以避免冲突。
    此外、不要忘记验证每个相位的电流极性。 一个相位上的极性交换通常会阻止启动。

    此致、

    Masoud

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

    我们将 LEM 通道移动到: ISENA - A8; ISENB - C14;ISENC - B4、并将它们全部移回 SoC0。  我还移除了 hal.c 中 PGA 的设置、因为这些用于分流传感器。  我们验证了每个相位的电流极性。  TI 示例代码(使用分流传感器旋转电机)和修改后的电流传感器((不会旋转(或尝试旋转电机))之间几乎没有修改。  请、我们还能尝试什么?

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

    如果我要对其进行调试、我将从强制进行小型开环测试(您可以尝试恒定 Vd 和 Vq)开始、并实时观察三个原始相电流 ADC 读数。 调试整个测量信号链。  

    此致、

    Masoud