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.

[参考译文] TMDSHVMTRINSPIN:在使用 hvkit 满足用户要求#39;s 参数的情况下、可以更改哪些参数?

Guru**** 2431230 points
Other Parts Discussed in Thread: MOTORWARE, CONTROLSUITE, C2000WARE, TMDSHVMTRINSPIN

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1409401/tmdshvmtrinspin-which-parameters-can-i-change-while-fulfilling-requirements-of-user-s-parameters-using-hvkit

器件型号:TMDSHVMTRINSPIN
Thread 中讨论的其他器件:controlSUITEC2000WARE、、MOTORWARE

工具与软件:

我想知道在将 hvkit 与 F28069M ISO 控制卡配合使用时、我可以在自行调整的过程中更改哪些参数(电机参数除外)? 在实验电机上实施实验项目时、遇到了一些错误代码(如 Ctrl_Freq 高电平或 est_Freq 低电平)或其他错误代码。  

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

    您看到的确切错误代码是什么? 您想在硬件/软件的哪些方面进行更改?

    此致、
    Jason Osborn

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

    在通过调整 IQ_PWM Full_Scale 频率、电压、电流和 USER_PWM_Freq 对现有的用户代码感到满意后、我尝试在自己的电机上实施实验21。 我启用了系统、并且看到了速度、扭矩的值、VdcBus 在宽范围内不断变化、我想知道我是否设置了一些值错误或任何不符合的限制、从而导致了故障。  

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

    当您更改电机和硬件时、可能 需要更改以下任何或所有内容、因为不同的系统具有不同的物理参数:

    • 取决于电机:
      • USER_IQ_FULL_SCALE_FREQ_Hz
      • USER_MOTOR
      • 检查 USER_MOTOR #define 正下方的电机相关部分中的几乎所有参数
    • 取决于硬件的其余部分:
      • USER_ADC_FULL_SCALE_VOLTAGE_V
      • USER_ADC_FULL_SCALE_CURRENT_A
    • 取决于硬件和电机:
      • USER_IQ_FULL_SCALE_VOLTAGE_V
      • USER_IQ_FULL_SCALE_CURRENT_A
    • MCU 设置:
      • USER_SYSTEM_FREQ_MHz
        • SYS 时钟频率
      • USER_PWM_FREQ_kHz
        • PWM 频率
      • USER_MAX_ACCEL_Hzps
        • 不稳定的系统、或者 PI 控制器值尚未调整的系统、可能需要降低此值

    这可能不一定是一份全面的清单。 但是、您在这里看到需要调整的东西吗? 有关更改方式/内容的详细信息、请参阅 user.h 中的内联注释。

    此致、
    Jason Osborn

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

    #define USER_IQ_FULL_SCALE_FREQ_Hz        (128.0)   // 800 Example with buffer for 8-pole 6 KRPM motor to be run to 10 KRPM with field weakening; Hz =(RPM * Poles) / 120
    
    #define USER_IQ_FULL_SCALE_VOLTAGE_V      (470)   // 24.0 Example for drv8301_revd typical usage and the Anaheim motor
    
    #define USER_ADC_FULL_SCALE_VOLTAGE_V       (470)      // 66.32 drv8301_revd voltage scaling
    
    #define USER_VOLTAGE_SF               ((float_t)((USER_ADC_FULL_SCALE_VOLTAGE_V)/(USER_IQ_FULL_SCALE_VOLTAGE_V)))
    
    #define USER_IQ_FULL_SCALE_CURRENT_A          (12.5)   // 41.25 Example for drv8301_revd typical usage
    
    #define USER_ADC_FULL_SCALE_CURRENT_A        (25)     // 82.5 drv8301_revd current scaling
    
    #define USER_CURRENT_SF               ((float_t)((USER_ADC_FULL_SCALE_CURRENT_A)/(USER_IQ_FULL_SCALE_CURRENT_A)))
    
    #define USER_NUM_CURRENT_SENSORS            (3)   // 3 Preferred setting for best performance across full speed range, allows for 100% duty cycle
    
    #define USER_NUM_VOLTAGE_SENSORS            (3) // 3 Required
    
    #define   I_A_offset    (0.003593325615)     //(0.9939797521)
    #define   I_B_offset    (0.06045937538)      //(1.014363647)
    #define   I_C_offset    (0.329120934)        //(1.005615234)
    
    #define   V_A_offset    (0.03011131287)      //(0.5020679235)
    #define   V_B_offset    (0.7957363725)       //(0.4977650046)
    #define   V_C_offset    (0.03015857935)      //(0.4986107945)
    
    
    //! \brief CLOCKS & TIMERS
    // **************************************************************************
    //! \brief Defines the system clock frequency, MHz
    #define USER_SYSTEM_FREQ_MHz             (90.0)
    
    #define USER_PWM_FREQ_kHz                (20.0) //30.0 Example, 8.0 - 30.0 KHz typical; 45-80 KHz may be required for very low inductance, high speed motors
    
    
    #define USER_MAX_VS_MAG_PU        (0.5)    // Set to 0.5 if a current reconstruction technique is not used.  Look at the module svgen_current in lab10a-x for more info.
    
    #define USER_CTRL_HANDLE_ADDRESS   (0x13C40)
    
    #define USER_EST_HANDLE_ADDRESS    (0x13840)
    
    #define USER_VD_SF                 (0.95)
    
    #define USER_PWM_PERIOD_usec       (1000.0/USER_PWM_FREQ_kHz)
    
    #define USER_ISR_FREQ_Hz           ((float_t)USER_PWM_FREQ_kHz * 1000.0 / (float_t)USER_NUM_PWM_TICKS_PER_ISR_TICK)
    
    #define USER_ISR_PERIOD_usec       (USER_PWM_PERIOD_usec * (float_t)USER_NUM_PWM_TICKS_PER_ISR_TICK)
    
    
    //! \brief DECIMATION
    // **************************************************************************
    //! \brief Defines the number of pwm clock ticks per isr clock tick
    //!        Note: Valid values are 1, 2 or 3 only
    #define USER_NUM_PWM_TICKS_PER_ISR_TICK        (3)
    
    #define USER_NUM_ISR_TICKS_PER_CTRL_TICK       (2)      // 2 Example, controller clock rate (CTRL) runs at PWM / 2; ex 30 KHz PWM, 15 KHz control
    
    #define USER_NUM_CTRL_TICKS_PER_CURRENT_TICK   (1)      // 1 Typical, Forward FOC current controller (Iq/Id/IPARK/SVPWM) runs at same rate as CTRL. 
    
    #define USER_NUM_CTRL_TICKS_PER_EST_TICK       (1)      // 1 Typical, FAST estimator runs at same rate as CTRL;
    
    #define USER_MAX_ACCEL_Hzps                 (5.0)      // 20.0 Default
    
    #define USER_NUM_CTRL_TICKS_PER_SPEED_TICK  (15)   // 15 Typical to match PWM, ex: 15KHz PWM, controller, and current loop, 1KHz speed loop
    
    #define USER_NUM_CTRL_TICKS_PER_TRAJ_TICK   (15)   // 15 Typical to match PWM, ex: 10KHz controller & current loop, 1KHz speed loop, 1 KHz Trajectory
    
    #elif (USER_MOTOR == My_Motor)
    #define USER_MOTOR_TYPE                 MOTOR_Type_Pm
    #define USER_MOTOR_NUM_POLE_PAIRS       (4)
    #define USER_MOTOR_Rr                   (NULL)
    #define USER_MOTOR_Rs                   (4.4752541)
    #define USER_MOTOR_Ls_d                 (0.06000000)
    #define USER_MOTOR_Ls_q                 (0.08000000)
    #define USER_MOTOR_RATED_FLUX           (3.07803010)
    #define USER_MOTOR_MAGNETIZING_CURRENT  (NULL)
    #define USER_MOTOR_RES_EST_CURRENT      (1.0)
    #define USER_MOTOR_IND_EST_CURRENT      (-1.0)
    #define USER_MOTOR_MAX_CURRENT          (5.0)
    #define USER_MOTOR_FLUX_EST_FREQ_Hz     (20.0)
    #define IPD_HFI_EXC_FREQ_HZ             (500.0)       // excitation frequency, Hz
    #define IPD_HFI_LP_SPD_FILT_HZ          (10.0)        // lowpass filter cutoff frequency, Hz
    #define IPD_HFI_HP_IQ_FILT_HZ           (20.0)        // highpass filter cutoff frequency, Hz
    #define IPD_HFI_KSPD                    (50)        // the speed gain value
    #define IPD_HFI_EXC_MAG_COARSE_PU       (0.4)         // coarse IPD excitation magnitude, pu
    #define IPD_HFI_EXC_MAG_FINE_PU         (0.2)         // fine IPD excitation magnitude, pu
    #define IPD_HFI_EXC_TIME_COARSE_S       (0.6)         // coarse wait time, sec max 0.64
    #define IPD_HFI_EXC_TIME_FINE_S         (0.6)         // fine wait time, sec max 0.4
    #define AFSEL_FREQ_HIGH_PU              (_IQ(20.0 / USER_IQ_FULL_SCALE_FREQ_Hz))
    #define AFSEL_FREQ_LOW_PU               (_IQ(10.0 / USER_IQ_FULL_SCALE_FREQ_Hz))
    #define AFSEL_IQ_SLOPE_EST              (_IQ((float)(1.0/0.1/USER_ISR_FREQ_Hz)))
    #define AFSEL_IQ_SLOPE_HFI              (_IQ((float)(1.0/1.0/USER_ISR_FREQ_Hz)))
    #define AFSEL_IQ_SLOPE_THROTTLE_DWN     (_IQ((float)(1.0/0.05/USER_ISR_FREQ_Hz)))
    #define AFSEL_MAX_IQ_REF_EST            (_IQ(0.4))
    #define AFSEL_MAX_IQ_REF_HFI            (_IQ(0.4))
    这是我设置 User.h 值的方法 收到您的回复后、我意识到可能我没有设置与我的电机和硬件相对应的值、因此我试着检查一下这个值。 我为 USER_ADC_FULL_SCALE_VOLTAGE_V 和 USER_ADC_FULL_SCALE_CURRENT_A 获得的值是来自 GUI Composer 的值、也是我电机的 Rs 和额定磁通值。 我在尝试为我的硬件获取相应的电流/电压偏移值时发现了另一个问题、这些值显示在前面的括号中、很显然、在获得这些值时转子未运行、因此我可能有错误的值。 但在阅读实验文档时、我认为通过 lab03a 获取偏移值不需要对参数进行任何额外的更改、因此我将一些值设置错误、能否请您检查我的参数设置、指出我在哪里犯了错误以及如何正确操作。 同样适用于 lab21。

    谢谢。

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

    不正确的偏移值是硬件设置中出现问题的重要标志。 除非更改了设置/配置代码、否则这通常不是参数问题。

    • controlCARD 开关的状态是什么? 根据 TMDSHVMTRINSPIN 硬件用户指南文档(位于 controlSUITE 或 C2000Ware 电机控制 SDK 中)验证这些状态。 地点:


    • 电源连接是否正确?

    此致、
    Jason Osborn

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

    我没有注意到这些文件,直到你回答,我看了一眼材料,你指出,似乎我超载,没有发现其他问题。 我正在1.5kw IPMSM 电机上实施套件、是否应将电机更改为不到750W? 另一个问题是 系统是由 220V 交流电源供电的、我是否应该  同时输入15V 直流外部电源和220V 交流电源? 期待您的回复、如果答案为"是"、我将在几天后更换电机并对其进行测试。

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

    您好!

    • 您肯定应该保持在低于套件额定功率的水平。 正如硬件指南中所述、套件的功率和 PFC 级的额定功率为750W、因此应使用功率较低的电机进行测试。
    • 对于15VDC、请参阅来自硬件指南的此文本。 15VDC 总线可由 PFC 输出生成。

    希望这对您有所帮助!

    此致、
    Jason Osborn

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

    您好!

    当 我看到硬件的图片时、我以为我 已经正确设置了硬件。

    我改变了电机并尝试了,结果是相同的。 我还想知道我成功地使用 GUI Composer 来运行电机、但是使用 CCS 则无法成功运行电机。 这是否意味着硬件设置正确、但参数或程序本身有问题?

    谢谢。

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

    如果电机成功使用套件的 GUI、但未在 CCS 中成功、很可能的问题是 CCS 工程未正确设置。 您正在使用的.projectspec 文件是什么?

    此致、
    Jason Osborn

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

    D:\TI\motorware_1_01_00_18\sw\solutions\instaspin_foc\boards\drv8301kit_revD\f28x\f2806xF\projects\ccs\proj_lab21

    我使用了这个目录后面的项目。 我想在我的电机上实施 lab21、但在 hvkit 下找不到 lab21、因此我使用此目录下的 proj_lab21。 也许我使用了错误的一个。 如果是、您能告诉我正确的目录、我应该使用的项目在哪里。

    谢谢。

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

    HVKIT 似乎没有在 MotorWare 中执行实验21。 要实施实验21、您需要通读实验文档并确定需要对现有项目进行哪些进一步更改才能自己实施实验21。  使用其他硬件套件中的实验21将不起作用。  不同的硬件具有不同的要求和实施差异。

    此致、
    Jason Osborn

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

    我是否可以使用 HVKIT 实施任何现有项目来实现高频信号注入方法?

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

    请参阅实验文档和可用项目。 如果未在其中列出、则可能需要实施自定义固件。

    此致、
    Jason Osborn

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

    谢谢 Jason 的答复。

    我还有一些其他问题需要咨询。 从实验文档中列出的表格来看、hvkit 似乎能够运行高频注入、但为什么没有像 drv8301kit 这样的现有项目? 由于我拥有具有 hvkit 的 TMS320F28069MPZT F2806x ISO controlCARD、这是否意味着我可以实现 hvkit_rev1p1目录下列出的任何 FOC 和运动实验项目(例如 lab11a)? 期待您的回复。

    谢谢。

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

    我不确定 InstaSPIN 实验室文档为什么会将 HVKIT 列为具有此功能。 据我所知、这是不正确的。

    XF controlCARD 能够在合适的套件和器件目录中执行任何 InstaSPIN-FOC 项目、而...XM controlCARD 能够 在合适的套件和器件目录中执行任何 InstaSPIN-FOC 或 InstaSPIN-MOTION 项目

    此致、
    Jason Osborn