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.

[参考译文] MCF8315A:HW_LOCK_ILIMIT

Guru**** 2479815 points
Other Parts Discussed in Thread: MCF8315A

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1208281/mcf8315a-hw_lock_ilimit

器件型号:MCF8315A

您好!

我正在尝试使用 EVM (BLDC、标称扭矩2mNm)旋转我的电机。

VDC = 24V。

电机开始旋转、大约30秒后、电机停止旋转、故障为 HW_LOCK_ILIMIT。

我已按照 GUI 的建议将 Kp 和 Ki 设置为零、不幸的是、电机开始旋转并在~30s 后停止。

什么原因可能导致此故障?

谢谢。

Shlomi.

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

    尊敬的 Shlomi:

    您是否运行 MPET 来测量电机参数? 您能否共享寄存器配置文件? 您可以通过单击"File"->"Save registers"来下载该文件。  

    此致、

    Vishnu

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

    尊敬的 Vishnu:

    我认为当我发出非零速命令(尝试使用模拟、和 I2C)时、MPET 会在一开始自动运行。

    下面是配置文件。

    {
      "signature": "oneui-register-data",
      "data": [
        [
          {
            "idx": 0,
            "id": "isd_config",
            "value": "0x64738C20"
          },
          {
            "idx": 1,
            "id": "rev_drive_config",
            "value": "0xA8200000"
          },
          {
            "idx": 2,
            "id": "motor_startup1",
            "value": "0x0B6807D0"
          },
          {
            "idx": 3,
            "id": "motor_startup2",
            "value": "0xA306600C"
          },
          {
            "idx": 4,
            "id": "closed_loop1",
            "value": "0x0D3201B5"
          },
          {
            "idx": 5,
            "id": "closed_loop2",
            "value": "0x9BADDBB4"
          },
          {
            "idx": 6,
            "id": "closed_loop3",
            "value": "0x1F800004"
          },
          {
            "idx": 7,
            "id": "closed_loop4",
            "value": "0x2F000FF0"
          },
          {
            "idx": 8,
            "id": "speed_profiles1",
            "value": "0x00000000"
          },
          {
            "idx": 9,
            "id": "speed_profiles2",
            "value": "0x00000000"
          },
          {
            "idx": 10,
            "id": "speed_profiles3",
            "value": "0x00000000"
          },
          {
            "idx": 11,
            "id": "speed_profiles4",
            "value": "0x800D0000"
          },
          {
            "idx": 12,
            "id": "speed_profiles5",
            "value": "0x00000000"
          },
          {
            "idx": 13,
            "id": "speed_profiles6",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algo_ctrl1",
            "value": "0x00000000"
          },
          {
            "idx": 1,
            "id": "algo_debug1",
            "value": "0x00000000"
          },
          {
            "idx": 2,
            "id": "algo_debug2",
            "value": "0x00000020"
          },
          {
            "idx": 3,
            "id": "current_pi",
            "value": "0x00330174"
          },
          {
            "idx": 4,
            "id": "speed_pi",
            "value": "0x03180231"
          },
          {
            "idx": 5,
            "id": "dac_1",
            "value": "0x00000000"
          },
          {
            "idx": 6,
            "id": "dac_2",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algorithm_state",
            "value": "0x00000010"
          },
          {
            "idx": 1,
            "id": "fg_speed_fdbk",
            "value": "0x015648EE"
          },
          {
            "idx": 2,
            "id": "bus_current",
            "value": "0x000A3C24"
          },
          {
            "idx": 3,
            "id": "phase_current_a",
            "value": "0x00000000"
          },
          {
            "idx": 4,
            "id": "phase_current_b",
            "value": "0x00040000"
          },
          {
            "idx": 5,
            "id": "phase_current_c",
            "value": "0xFFFE0000"
          },
          {
            "idx": 6,
            "id": "csa_gain_feedback",
            "value": "0x00000001"
          },
          {
            "idx": 7,
            "id": "voltage_gain_feedback",
            "value": "0x00000001"
          },
          {
            "idx": 8,
            "id": "vm_voltage",
            "value": "0x02620000"
          },
          {
            "idx": 9,
            "id": "phase_voltage_va",
            "value": "0x0019FB13"
          },
          {
            "idx": 10,
            "id": "phase_voltage_vb",
            "value": "0x000376CF"
          },
          {
            "idx": 11,
            "id": "phase_voltage_vc",
            "value": "0x0081E75F"
          },
          {
            "idx": 12,
            "id": "sin_commutation_angle",
            "value": "0x07A09098"
          },
          {
            "idx": 13,
            "id": "cos_commutation_angle",
            "value": "0xFD990D3A"
          },
          {
            "idx": 14,
            "id": "ialpha",
            "value": "0xFFC00000"
          },
          {
            "idx": 15,
            "id": "ibeta",
            "value": "0xFFF224C2"
          },
          {
            "idx": 16,
            "id": "valpha",
            "value": "0xFF91DAB8"
          },
          {
            "idx": 17,
            "id": "vbeta",
            "value": "0xFFEC7349"
          },
          {
            "idx": 18,
            "id": "id",
            "value": "0x00035650"
          },
          {
            "idx": 19,
            "id": "iq",
            "value": "0x00414EDE"
          },
          {
            "idx": 20,
            "id": "vd",
            "value": "0x000E7271"
          },
          {
            "idx": 21,
            "id": "vq",
            "value": "0x006EFAAD"
          },
          {
            "idx": 22,
            "id": "iq_ref_rotor_align",
            "value": "0x00000000"
          },
          {
            "idx": 23,
            "id": "speed_ref_open_loop",
            "value": "0x00000000"
          },
          {
            "idx": 24,
            "id": "iq_ref_open_loop",
            "value": "0x00AD49FC"
          },
          {
            "idx": 25,
            "id": "speed_ref_closed_loop",
            "value": "0x015136FA"
          },
          {
            "idx": 26,
            "id": "id_ref_closed_loop",
            "value": "0x00000000"
          },
          {
            "idx": 27,
            "id": "iq_ref_closed_loop",
            "value": "0x00482FFD"
          },
          {
            "idx": 28,
            "id": "isd_state",
            "value": "0x00000000"
          },
          {
            "idx": 29,
            "id": "isd_speed",
            "value": "0x0150BBA2"
          },
          {
            "idx": 30,
            "id": "ipd_state",
            "value": "0x00000000"
          },
          {
            "idx": 31,
            "id": "ipd_angle",
            "value": "0x00000000"
          },
          {
            "idx": 32,
            "id": "ed",
            "value": "0x00031018"
          },
          {
            "idx": 33,
            "id": "eq",
            "value": "0x0056A56A"
          },
          {
            "idx": 34,
            "id": "speed_fdbk",
            "value": "0x014050DD"
          },
          {
            "idx": 35,
            "id": "theta_est",
            "value": "0x02637240"
          }
        ],
        [
          {
            "idx": 0,
            "id": "fault_config1",
            "value": "0x28000000"
          },
          {
            "idx": 1,
            "id": "fault_config2",
            "value": "0xF0D00888"
          }
        ],
        [
          {
            "idx": 0,
            "id": "gate_driver_fault_status",
            "value": "0x00000000"
          },
          {
            "idx": 1,
            "id": "controller_fault_status",
            "value": "0x80040000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "pin_config",
            "value": "0x00000000"
          },
          {
            "idx": 1,
            "id": "device_config1",
            "value": "0x00101462"
          },
          {
            "idx": 2,
            "id": "device_config2",
            "value": "0xC000F00F"
          },
          {
            "idx": 3,
            "id": "peri_config1",
            "value": "0xC1C01F00"
          },
          {
            "idx": 4,
            "id": "gd_config1",
            "value": "0x9C450100"
          },
          {
            "idx": 5,
            "id": "gd_config2",
            "value": "0x80200000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "int_algo_1",
            "value": "0xA433407D"
          },
          {
            "idx": 1,
            "id": "int_algo_2",
            "value": "0x000001A7"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algo_status",
            "value": "0x17727B84"
          },
          {
            "idx": 1,
            "id": "mtr_params",
            "value": "0x00000000"
          },
          {
            "idx": 2,
            "id": "algo_status_mpet",
            "value": "0x10000000"
          }
        ]
      ]
    }

    谢谢。

    Shlomi.

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

    Shlomi,

    硬件锁定电流限制设置为0.125A。 请将其设置为大于电机额定电流的值。

    此致、

    Vishnu

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

    尊敬的 Vishnu:

    谢谢、成功了!

    继续进行设置、我们要使用速度环路、即绕过内部速度控制。

    只使用 MCF8315A 的扭矩控制。

    我如何向您发送图像以更好地解释它?

    谢谢。

    Shlomi.

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

    尊敬的 Shlomi:

    我理解您的请求。 这可以通过禁用速度环路(CLOSED_LOOP1寄存器中的 SPEED_LOOP_DIS 位)来实现。 扭矩基准的最大值可在 ILIMIT (寄存器名称:FAULT_CONFIG1位27-30)中进行编程、并可 根据 SPEED_MODE 的配置方式更改 PWM 占空比/模拟电压(施加到 SPEED 引脚)或通过 I2C 命令扭矩。

    此致、

    Vishnu

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

    尊敬的 Vishnu:

    看起来是有效的。 我们成功地设置了 KP_CURR=1 ; Ki_CURR=500。

    是否有办法进一步降低 KP? (低于1)、以便为电流环路提供更高的带宽。

    谢谢。

    Shlomi.

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

    Shlomi,

    遗憾的是、我们无法将 KP 降至1以下。 您是否可以尝试将 PWM 输出频率设置为55kHz?

    此致、

    Vishnu

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

    好的、谢谢、所以我们将 PWM 频率增加到了55KHz、甚至是75KHz。

    我们需要 KI/KP 约为~5000。 这是否有可能?

    (目前最大比率为1023)

    谢谢 Shlomi

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

    Shlomi,

    不幸的是、我们无法修改 KP 和 KI 的范围。  

    此致、

    Vishnu

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

    尊敬的 Shlomi:  

    如果您  在此调试过程中需要进一步的帮助、请告知我们。  

    如果未解决、请帮助将主题标记为已解决。 谢谢  

    此致、  
    Andrew  

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

    您好!

    我们还有一个与 KI 和 KP 值相关的问题。

    寄存器值变换不明确、见数据表:

    "10位电流 Iq 和 ID 环路 KP 值。 CURR_LOOP_KP 的 KP = 8LSB / CURR_LOOP_KP 的10^2MSB"

    例如、GUI 中的 KP 为1、而寄存器值为0x128。

    谢谢。

    Shlomi.

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

    Shlomi,

    可从 CURRENT_PI 寄存器(地址:0x000000F0)读回当前的 KP 和 KI 值。 您是否从该寄存器中读取了 KP 和 KI?

    此致、

    Vishnu

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

    是的、谢谢、已找到它。