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.

[参考译文] LAUNCHXL-F28P55X:BUILDLEVEL FCL_LEVEL3 中的电流控制

Guru**** 2917090 points

Other Parts Discussed in Thread: LAUNCHXL-F28P55X, BOOSTXL-3PHGANINV, INA240

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1558879/launchxl-f28p55x-current-control-in-buildlevel-fcl_level3

器件型号:LAUNCHXL-F28P55X
主题中讨论的其他器件: BOOSTXL-3PHGANINVINA240

工具/软件:

我将 BoostXL3PhGaN 与 LAUNCHXL-F28P55X 配合使用。  该工程为 dual_axis_servo_drive

我遵循以下步骤:

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1)  将“motorVars[0].speedRef_"设置“设置为 0.3 pu(如果基速不同,则设置为另一个合适的值)。  “MotorVars[0].speedRef_"仅“仅在收到 QEP Index 脉冲之前有用。 此后会根据电机的转子位置来控制电机。

请告诉我是否理解正确:编码器校准后(因此当 lsw = ENC_CALIBRATION_DONE 时)motorVars[0].speedRef 不再有任何影响、因此我不再需要它。 对吗?

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

2) 如果我已正确理解第 1 点)...如何调整速度? 可以在 FCL_LEVEL3 中完成吗? 还是保持固定?

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

3)  将直流电源上的电压逐渐增加到额定电压的 20%等。

这一步是否必要? 20%的值是否低于触发故障欠压的最小阈值...为什么我无法调试并直接使用额定 Vdc 启动? 我目前是在 Vdc=30V 时这样做的、没有问题。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

4) 将“motorVars[0].idRef_run"设置“设置为零、将“motorVars[0].IqRef"设置“设置为 0.05pu(或其他合适的值)并设置以下所有内容:

这是我得到的:

4A) 设置“motorVars[0].idRef_run"会“会改善(变为更正弦波)并增加电机相电流的波形幅度、并且:
-“motorVars[0].idRef"   遵循“遵循 idRef_run   Thumbsup  
-“motorVars[0].pi_id.fbk" 跟“跟在 IdREF_run  Thumbsup之后  

我想说一切都好,对吧?

4B) 改为通过设置“motorVars[0].IqRef":“:

-“motorVars[0].ptrfcl->pi_iq.fbk"不“不遵循  IqRef  Thumbsdown

为什么? 您能帮助我调查这个问题、或者我应该使用哪些变量吗?

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

5 安培) 测试 “pMotor->FCL_params.wccD" 和“和“pMotor->FCL_params.wccQ"的“的不同值:

pMotor->FCL_params.wccD = M1_CUR_LOOP_BANDWIDTH;
pMotor->FCL_params.wccQ = M1_CUR_LOOP_BANDWIDTH;
M1_CUR_LOOP_BANDWIDTH = (2.0F * PI * M1_SAMPLING_FREQ / 100)
                      = (2.0F * PI * M1_PWM_FREQUENCY * 1000 / 100)
                      = (2.0F * PI * DM_PWM_FREQUENCY * 1000 / 100) = 628kHz using DM_PWM_FREQUENCY=10kHz

“带宽的默认设置是采样频率的 1/18 “ ,但正如你在代码中看到的,我得到 638kHz .. 不是 1/18di 10kHz

5b) 我无法找到或设置 pdf 要求我更改的参数:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    1. 是的
    2. 构建 3 主要不是关于速度环路。 请参阅构建 4。
    3. 这个指令最重要的部分不是你要增加到的价值,而是你逐步地做它。 20%是一个示例、(我认为)适用于电压更高的电机。 对于电压较低的电机、将直流母线电压设置为电机的额定电压通常很好。
    4. 目前正在研究这个问题。 pi_iq.fbk 的值是否与任何内容相对应、或者看起来是随机的?
      1. 首先、注意公式中的 2 π。 最终结果不以 Hz 为单位、而是以弧度为单位。 其次、请注意带宽为 M1_SAMPLING_FREQ / 100。 除非我忘记了代码、否则这意味着电流环路带宽是采样频率的 1/100。 我认为用户指南也需要在这里更新。
      2. 需要更新用户指南中的名称。 让我仔细检查一下什么是正确的名字,抱歉。 我很快就会回复您。

    此致、
    Jason Osborn

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

    4b. 不方便  其工作原理: motorVars[0].ptrfcl->pi_iq.fbk 遵循  IqRef

    而在其他情况下、pi_iq.fbk 具有随机值(如果它应该为 0.1……它在 0.0023 和 0.0013 之间随机波动)

    5A。 感谢您的澄清。 所以 628000 弧度/秒对应于 100kHz 带宽.. 对吗?

    6. 它与点 4 的当前问题无关...但我尝试添加一个负载到电机,但  我收到错误 pMotor->tripFlagDMC |= 0x0002 计算者:

    if( (pMotor->Vdcbus > pMotor->VdcbusMax) || (pMotor->Vdcbus < pMotor->VdcbusMin) )
            pMotor->tripFlagDMC |= 0x0002;

    我曾尝试使用 ID_ref = 0、然后 Iqref = 0.05 和 0.1 等、但电机(在编码器对齐后)快速加速并几乎立即进入故障状态。

    我还尝试设置 Vdc = 20V、30V 和 40V、但没有变化。

    以下是我的默认值:

    此外,我想问你什么 差值 介于 M1_MAXIMUM_VOLTAGE 和 M1_VDCBUS_MAX 之间

    这是我使用 示波器测量的 Vdc 总线:

    我有一个理论上的疑问:

    7) 当我设置 IqRef>0 时、电机会顺时针旋转...当我设置 IDREF>0 时、它会逆时针旋转... 为什么?

    当 Id 流向流动时、Iq 应为扭矩提供值。

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

    对延迟深表歉意。

    • 4:有趣的。 很好了解。
    • 5:10kHz、不是 100。 628,000 /(2 π)=~10,000(对于 PI 的近似值= 3.14)
    • 6:maximum_voltage 是旧代码、分配给电机对象中未使用的变量 voltageLimit。 根本不使用最小电压。 VDCBUS_参数表示标记错误之前直流总线电压的实际上限和下限。
      • 我将暂时解决 (6) 的其余部分。
    • 7:由于这是电流控制构建级别、我认为这是由于 ID/IqRef 值如何影响该工程构建中的启动例程 — 请记住,没有速度反馈环路。 在闭合速度环路中不应发生这种情况。

    现在、至于 (6) 中的错误、我要说的是从示波器屏幕截图中可以看出错误报告的准确性、您的 VDC 不应该像这样降低。 根据我以前的经验和错误的背景 他最有可能意味着您的电源当前不足以运行电机。  大电流消耗和不变的最大功率意味着电压会下降。

    接下来、对于 WCCD 和 WccQ、实际上只是一个大写错误。 很好  WCCD  和  wccQ

    最后、对于 Iq 不遵循、请尝试按照指南建议调整这些参数。

    此致、
    Jason Osborn

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

    4. 但是、这种行为是不正常的、对吧? ...即 IQ 的电流反馈不遵循我设置的内容

    5. 在我看来、628,000 / 6.28 = 100,000

    5b)  默认情况下、Q 和 D 的带宽设置相同:

    . 然后、我应该改变这个值、研究电机的行为、对吧? WCCD 和 wccQ 可能不同?

    6. 我再次尝试了电流控制 FCL_LELVEL 3(自我试用以来已经有几周了)、但现在代码滞留在 ENC_WAIT_FOR_INDEX 处、这与 IqRef IDREF_RUN 值无关。 我将做进一步的测试,但如果你已经知道什么可能导致它,请写信给我,谢谢

    7. 在闭环速度控制 (FCL_LEVEL 4) 中、在设置 SpeedRef 后...如果我改变 IdRef、并且 IqRef 速度/方向不改变(如您所说)。 也许扭矩应该会改变、对吧?

    我的意思是,虽然控制是在速度,如果我施加一个较高的负载,导致电机挣扎...我想有一些参数(我想 IqRef ),让我增加电机电流.. 我对吗?

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

    我不知道我上次误读的内容、但我误读了一些内容、您的计算是正确的、我对此非常抱歉。 不知道我是怎么犯了这样的错误的。

    对于 IQ、根据我们的文档、您认为这不是正常行为。  不工作的情况看起来是随机的、这是一个很好的信息、可以用于调试、所以我说这很有趣。

    对于您的其他问题、我将再次向电源提出。 在解决此问题之前、您的电机和系统不太可能获得良好的性能、并且可能无法从测试中获得有意义的信息。 如果可以使用更好的电源、我建议这样做。

    此致、
    Jason Osborn

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

    谢谢!  我将在新电源到达时继续测试...如果有任何问题、我将返回此处或提出新问题

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

    嘿 Luca 似乎我也坚持在同一个级别,我正在 Boostxl-3phganinv 传感项目,我太卡在这个阶段有两个问题,我正面临着正确的知道, 一个是它使用 LEM 电流传感器,但我的是 INA240 直至内部版本没有问题,因为我们对电流读数没有太多的关注 ,但对于内部版本 3 我认为我需要修复它,第二个问题是相同的,你面临直至内部版本 2 我的 vmbbus 读数等于我提供的,但在内部版本 3 它读数为 24V 电源的 7DMC,这就是 dcbus'设置为 vstripbus'的原因 <vdcbusMIN、请帮助我解决这些问题。

    谢谢、此致
    Abhay

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

    您最好打开一个新的 TT(问题)、我相信您会得到一个答案