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.

[参考译文] 编译器/TMS320F28027:tms320f28027

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/851091/compiler-tms320f28027-tms320f28027

器件型号:TMS320F28027

工具/软件:TI C/C++编译器

主席先生,  

  是否可以使用 lab05将电机运行到90000 rpm。 请给出 最大正速度、这是速度的限制因素。 目前、我能够提高到55000 rpm。

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

    这应该是一个真正的工程问题、因为缺少足够的信息、我们无法为您提供明确的答案。 这取决于极对、电机的额定速度、您使用的控制算法以及所需的运行性能。 如果您想获得进一步的答案、您必须自己进行评估。  

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

    主席先生,

       我 正在使用具有2极对的电机、额定转速为95000 、所用的控制算法是使用 instaspin__focc (PROJ_LAB05b)进行速度控制

    我给出的 user.H 值 如下所示、

     USER_MOTOR_Rs       (0.29)              //0.411;//0.880;
     USER_MOTOR_LS_d      (0.00068)           // 0.00091;// 0.0000156076342961;// 0.0017259;
     USER_MOTOR_LS_q      (0.00068)           //0.00091;//0.0000156076342961;//0.0017259; USER_MOTOR_RADED_FLUX = 0.006;//0.0276;
    USER_MOTOR_NUM_POLE_PAIRS     (2)    //4;
    #define USER_IQ_FULL_SCALE_FREQ_Hz (1386.0)//(1600.0)//(800.0)

    #define USER_IQ_FULL_SCALE_VOLTAGE_V (48.0)//(48.0)//(24.0)//针对 boostxldrv8301_RevB 典型用法和 Anaheim 电机的24.0示例

    #define USER_ADC_FULL_SCALE_VOLTGE_V (71.3)//(52.368)//(26.314)// 26.314 boostxldrv8301_RevB 电压调节

    #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 (20.0)//针对 boostxldrv8301_RevB 典型用法的20.0示例

    #define USER_ADC_FULL_SCALE_CURRENT_A (20.625)//(33.0)// 33.0 boostxldrv8301_RevB 电流调节

    #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首选设置、以在整个速度范围内实现最佳性能、允许100%占空比

    需要#define USER_NUM_VOLTGE_SENSORS (3)// 3

    #define I_A_offset (0.5226)//(0.849754870)//(0.839922905)//
    #define I_B_OFFSET (0.5224)//(0.849754870)//(0.848239481)//(0.84156394)//
    #define I_C_OFFSET (0.5214)//(0.849754870)//(0.841061115)//(0.8358885646)//

    #define V_A_offset (0.304292381)//(0.1521461905)//(0.4941458106)//
    #define V_B_OFFSET (0.303311348)//(0.151655674)//(0.4941235185)//
    #define V_C_OFFSET (0.302152455)//(0.151655674)//(0.4918507934)//


    //! 简要介绍时钟和计时器
    秘书长的报告

    #define USER_SYSTEM_FREQ_MHz (60.0)

    #define USER_PWM_FREQ_kHz (60.0)//(60.0)//(45.0)//30.0  

    #define USER_MAX_VS_MAG_PU (1.0)//如果不使用当前重构技术,则设置为1.0。 有关更多信息、请查看 lab10a-x 中的模块 svgen_current。

    #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)

    #define USER_NUM_PWM_TICKS_PER_ISR_TICK (3)

    #define USER_NUM_ISR_TICKS_PER_CTRL_TICK (1)// 2示例、控制器时钟速率(CTRL)以 PWM/2运行;例如30 KHz PWM、15 KHz 控制

    #define USER_NUM_CTRL_TICKS_PER_CURRENT_TICK (1)// 1典型值、正向 FOC 电流控制器(IQ/ID/IPART/SVPWM)以与 CTRL 相同的速率运行。

    #define USER_NUM_CTRL_TICKS_PER_EST_TICK (1)// 1典型值,FAST 估算器以与 CTRL 相同的速率运行;

    #define USER_NUM_CTRL_TICKS_PER_SPEED_TICK (15)// 15 (典型值)以匹配 PWM、例如15kHz PWM、控制器和电流环路、1KHz 速度环路


    #define USER_NUM_CTRL_TICKS_PER_TRAJ_TICK (15)// 15 (典型值)以匹配 PWM、例如:10kHz 控制器和电流环路、1KHz 速度环路、1KHz 轨迹

    #define USER_CTRL_FREQ_Hz (uint_least32_t)(USER_ISR_FREQ_Hz/USER_NUM_ISR_TICKS_PER_CTRL_TICK)

    #define USER_EST_FREQ_Hz (uint_least32_t)(USER_CTRL_FREQ_Hz/USER_NUM_CTRL_TICKS_PER_EST_TICK)


    #define USER_TRAJ_FREQ_Hz (uint_least32_t)(USER_CTRL_FREQ_Hz/USER_NUM_CTRL_TICKS_PER_TRAJ_TICK)


    #define USER_CTRL_PERIOD_USEC (USER_ISR_PERIOD_USEC * USER_NUM_ISR_TICKS_PER_CTRL_TICK)


    #define USER_CTRL_PERIOD_sec ((float_t) USER_CTRL_PERIOD_USEC/(float_t) 1000000.0)


    //! 简要限制
    秘书长的报告
    //! \brief 定义要在 Id 参考中应用的最大负电流
    //! \brief 仅用于磁场减弱、这是一个安全设置(例如防止退磁)
    //! 简要用户还必须注意、总电流幅度[sqrt (ID^2 + IQ^2)]应保持在任何机器设计规格以下
    #define USER_MAX_NEW_ID_REF_CURRENT_A (-0.5 * USER_MOTOR_MAX_CURRENT)//-0.5 * USER_MOTOR_MAX_CURRENT 示例,进行调整以满足电机的安全需求

    //! \brief 定义磁通积分器的低速限值、pu
    //! \brief 这是 ForceAngle 对象处于活动状态的速度范围(CW/CCW),但仅当启用时
    //! \brief 超出此速度-或者如果已禁用- ForcAngle 将永远不会被激活,并且角度仅由 FAST 提供
    #define USER_ZEROSPEEDLIMIT (1.0/USER_IQ_FULL_SCALE_FREQ_Hz)// 0.002pu、1-5 Hz 典型值;Hz = USER_ZEROSPEEDLIMIT * USER_IQ_FULL_SCALE_FREQ_Hz

    //! \brief 定义力角频率、Hz
    //! \brief ForceAngle 对象使用的定子矢量旋转频率
    //! \brief 可以是正的或负的
    #define USER_FORCE_ANGE_FREQ_Hz (USER_ZEROSPEEDLIMIT * USER_IQ_FULL_SCALE_FREQ_Hz)// 1.0典型强制角启动速度

    //! \brief 定义 PowerWarp 期间 Id 轨迹的最大电流斜率
    //! 简要介绍仅适用于感应电机、控制在 PowerWarp 控制下 Id 输入的变化速度
    #define USER_MAX_CURRENT_SLOW_POWERWARP (0.3*USER_MOTOR_RES_EST_CURRENT_USER_IQ_FULL_SCALE_CURRENT_A/USER_TRAJ_FREQ_Hz)// 0.3*RES_EST_CURRENT / IQ_FULL_SCALE_CURRENT / TRAJ_FREQ (典型值),用于产生1秒斜坡/下降


    #define USER_MAX_ACCEL_Hzps (20.0)//默认值20.0

    #define USER_MAX_ACCEL_EST_Hzps (5.0)//默认为5.0,请勿更改

    #define USER_MAX_CURRENT_SLOPE (USER_MOTOR_RES_EST_CURRENT_USER_IQ_FULL_SCALE_CURRENT_A/USER_TRAJ_FREQ_Hz)// USER_MOTOR_RES_EST_CURRENT_USER_IQ_FULL_SCALE_CURRENT_A/USER_TRAJ_FREQ_Hz 默认值,请勿更改


    #define USER_IDRATED_FRATE_TOP_RATED_FLUX (1.0)//默认为1.0,请勿更改


    #define USER_IDRATED_FRATE_TO_L_IDENT (1.0)//默认为1.0,请勿更改


    #define USER_IDRATED_Delta (0.00002)

    /
    #define USER_SPEEDMAX_SPRATIFLE_TO_L_ident (1.0)//默认为1.0,请勿更改


    #define USER_FLUX_分数(1.0)//默认为1.0、请勿更改


    #define USER_POWERWARP_GAIN (1.0)//默认为1.0,请勿更改

    #define USER_R_OVER L_EST_FREQ_Hz (300)//300 //默认为300



    #define USER_VOLTGE_FILTER_POLE_Hz (364.682)// 364.682,bootxldrv8301_RevB 硬件的值


    #define USER_VOLTGE_FILTER_POLE_Rps (2.0 * MATH_PI * USER_VOLTGE_FILTER_POLE_Hz)


    #define USER_OFFSET_POLE_Rps (20.0)//默认值20.0,请勿更改


    #define USER_FLUX_POLE_Rps (100.0)//默认值为100.0,请勿更改

    #define USER_DIRECT_POLE_Rps (6.0)//默认值为6.0,请勿更改

    #define USER_SPEED_POLE_rps (100.0)//(500.0)//默认值100.0,请勿更改

    #define USER_DCBus_POLE_rps (100.0)//默认值为100.0,请勿更改

    #define USER_EST_KAPAQ (1.5)//默认值为1.5,请勿更改

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

    正如我在您发布的另一个类似主题中对您的回复。 请参考并关闭此文件。 谢谢。

    https://e2e.ti.com/support/microcontrollers/c2000/f/171/t/850257