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.

[参考译文] BOOSTXL-DRV8301:电机识别工作,运行电机不工作

Guru**** 2374090 points
Other Parts Discussed in Thread: BOOSTXL-DRV8301, MOTORWARE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/666313/boostxl-drv8301-motor-identification-works-running-the-motor-does-not

部件号:BOOSTXL-DRV8301
主题中讨论的其他部件: LAUNCHXL-F2.8069万MMOTORWARE

我正在使用LAUNCXL-F2.8069万M上的BOOSTXL-DRV8301 RevB来使用电机"RoboDriveILM25x 04"

我已尝试按照Lab2c的说明识别电机。 开始时,LS值完全错误,电机未正常运行。 我按照"GUI快速入门指南:安装通用"(QSG_GUI_UNIVERSAL)中的建议调整了一些关键参数,并设法获得正确的修正(值与数据表上的值相似),电机在标识的第一部分(RampUp)期间运行良好。 LS计算开始后,电机开始发出噪音。 标识过程结束时,R和LS参数与数据表中的参数相似,但电机运行不平稳。 事实上,在非常低的速度下,它会改变旋转方向。 速度越高,噪音和振动就越大。

我不知道接下来应该更改哪些参数。 我遵循了"QSG_ui_universal"指南,并且使用了"motorware_selecting _user_variables"电子表格。 我要达到的最大速度是6000 RPM。  

我应该更改什么以使电机正常运行?  

我附加了"userh.txt"文件,它是"user.h"文件的副本,其中包含的参数可提供最佳结果,如我之前所述。 我更改的参数如下:

#define user_IQ_full _scale FREQ_Hz     (770.0)  // 800示例,带缓冲器,用于8极6 Krpm电动机,在磁场弱化情况下运行至10 Krpm;Hz =(RPM *极)/120

#define user_IQ_Full_scale Voltage_V   (24.0)  // bootxldrv8301_RevB典型用法和Anaheim电动机的24.0 示例

#define user_ADC_Full_scale_voltage_V    (26.314)   // 26.314 bootxldrv8301_RevB电压标度

#define user_IQ) FULL磅秤_CURRENT_A      (18.0)// bootxldrv8301_RevB典型用法的20.0 示例

#define user_ADC_FULL比例电流A     (33.0) // 33.0 bootxldrv8301_RevB电流缩放

#define user_PWM_FREQ_kHz         (60.0)// 30.0 例如,8.0 - 30.0 KHz (典型);极低电感,高速电动机可能需要45-80 KHz

#define user_motor_type          motor_Type_pm

#define user_motor_NUM_pole_pairs    (7)

#define user_motor_rr           (空)

#define user_motor_Rs           (0.25)

#define user_motor_ls_d          (85e-6)

#define user_motor_ls_q          (85e-6)

#define user_motor_rated流量       (0.0)

#define user_motor_magniting_current (空)

#define user_motor_RES_EST_Current   (0.5)(#define user_motor_RES_EST_

#define user_motor_IND_EST_current   (0.5)

#define user_motor_MAX_current      (3.0)

#define user_motor_flue_EST_FREQ_Hz   (70.0)

#define IPD_HFI_EXC_FREQ_Hz        (750.0)    //激励频率,Hz

#define IPD_HFI_LP_SPD_FILT_HZ      (35.0)     //低通滤波器切断频率,Hz

#define IPD_HFI_HP_IQ) FILT_HZ       (100.0)    //高通滤波器切断频率,Hz

#define IPD_HFI_KSPD           (15.0)    //速度增益值

#define IPD_HFI_EXC_MAG_RORT_PU    (0.13)      //粗糙IPD激励幅度,PU

#define IPD_HFI_EXC_MAG_FINE_PU      (0.12)      //精密IPD激励幅度,PU

#define IPD_HFI_EXC_TIME _ORGE_S    (0.5)      //粗略等待时间,秒最大0.64

#define IPD_HFI_EXC_TIME _FIN_S      (0.5)      //精细等待时间,秒最大0.4

#define AFSEL_FREQ_HIGH _PU        (_IQ (15.0 / USER_IQ_FULL,Scale_FREQ_Hz))

#define AFSEL_FREQ_LLOW         (_IQ (10.0 / USER_IQ_FULL,Scale_FREQ_Hz))

#define AFSEL_IQ_SLOT_EST        (_IQ ((浮点)(1.0 ISR/ISR/USER_ISR_FREQ_Hz 0.1)))

#define AFSEL_IQ_SLOP_HFI        (_IQ ((浮点)(1.0 ISR/ISR/USER_ISR_FREQ_Hz 10.0)))

#define AFSEL_IQ_SLOT_THROTTLE_DWN   (_IQ ((浮点)(1.0 / 0.05 /用户ISR_FREQ_Hz))

#define AFSEL_MAX_IQ_REF_EST       (_IQ (0.6))

#define AFSEL_MAX_IQ_REF_HFI       (_IQ (0.6))

#define user_motor_FREQ_low        (10.0)      // Hz -建议设置为额定电动机频率的10 %

#define user_motor_FREQ_high       (100.0)      // Hz -建议设置为额定电动机频率的100 %

#define user_motor_FREQ_MAX        (120.0)      // Hz -建议设置为额定电动机频率的120 %

#define user_motor_volv_min        (3.6)       //电压-建议设置为额定电机电压的15 %

#define user_motor_vol_MAX        (24.0)      //电压-建议设置为额定电机电压的100 %

e2e.ti.com/.../userh.txt

#define user_IQ_full _scale FREQ_Hz     (770.0)  // 800示例,带缓冲器,用于8极6 Krpm电动机,在磁场弱化情况下运行至10 Krpm;Hz =(RPM *极)/120
#define user_IQ_Full_scale Voltage_V   (24.0)  // bootxldrv8301_RevB典型用法和Anaheim电动机的24.0 示例
#define user_ADC_Full_scale_voltage_V    (26.314)   // 26.314 bootxldrv8301_RevB电压标度
#define user_IQ) FULL磅秤_CURRENT_A      (18.0)// bootxldrv8301_RevB典型用法的20.0 示例
#define user_ADC_FULL比例电流A     (33.0) // 33.0 bootxldrv8301_RevB电流缩放
#define user_PWM_FREQ_kHz         (60.0)// 30.0 例如,8.0 - 30.0 KHz (典型);极低电感,高速电动机可能需要45-80 KHz
#define user_motor_type          motor_Type_pm#定义user_motor_NUM_pole_pairs    (7)#定义user_motor_rr           (空)#define user_motor_Rs           (0.25)#define user_motor_ls_d          (85e-6)#定义user_motor_ls_q          (85e-6)#定义user_motor_rated流量       (0.0)#define user_motor_magniting_current (NULL)#define user_motor_RES_EST_current   (0.5)#define user_motor_IND_EST_current   (-MOTOR)#define 0.5 user_motor_MAX_current      (3.0)#define user_motor_fluity_EST_FREQ_Hz   (70.0)
#define IPD_HFI_EXC_FREQ_Hz        (750.0)    //激励频率,Hz#定义IPD_HFI_LP_SPD_FILT_Hz      (35.0)     //低通滤波器切断频率,Hz#定义IPD_HFI_HP_IQ) FILT_HZ       (100.0)    //高通滤波器切断频率,Hz#定义IPD_HFI_KSPD           (15.0)    //速度增益值#define IPD_HFI_EXC_MAG_RORT_PU    (0.13)      //粗糙IPD激励幅度,PU #定义IPD_HFI_EXC_MAG_FIN_PU      (0.12)      //精细IPD激励幅度,PU#定义IPD_HFI_EXC_TIME _ORGE_S    (0.5)      //粗略等待时间,秒最大0.64 IPD#define IPD_HFI_EXC_TIME _FIN_S      (0.5)      //精细等待时间,秒最大值0.4 #define AFSEL_FREQ_HIGH _PU        (_IQ (15.0 / USER_IQ_FULL,SCALE_FREQ_Hz))#define AFSEL_FREQ_LLOW _PU         (_IQ (10.0 / USER_IQ_FULL,SCALET_FREQ_Hz))#define AFSEL_IQ_SLOT_EST        (_IQ ((浮点)(AFSEL_IQ/SLOLP/USER_ISR_FREQ_Hz 0.1)))#define 1.0 SEL_IQ_HFI        (_IQ ((浮点)(AFSEL/ISR/USER_FRQ_Hz 10.0)))#define 1.0 SEL_IQ_SLOT_THROTTLE_DWN   (_IQ ((浮点)(1.0 AFSEL/ISR/FREQ_Hz)))#define 0.05 SEL_MAX_IQ_REF_EST       (_IQ (0.6))#定义AFSEL_MAX_IQ_REF_HFI       (_IQ (0.6))
#define user_motor_FREQ_low        (10.0)      // Hz -建议设置为额定电动机频率的10 % #定义user_motor_fFREQ_high       (100.0)      // Hz -建议将额定电动机频率设置为100 % #定义USER_MOTOR_FREQ_MAX        (120.0)      // Hz -建议设置为额定电动机频率的120 % #定义user_motor_volv_min        (3.6)       //电压-建议将额定电机电压设置为15 % #定义USER_MOTOR_VOLT_MAX        (24.0)      //电压-建议设置为额定电机电压的100 %

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在控制lab2c中的速度时是否遇到噪音和抖动? 您是否尝试过移至下一个实验以确定板偏移,并进一步更改当前回路的KP,KI值?

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

    是的,在lab2c中确定电动机后控制转速时会产生噪音和振动。 我曾尝试使用lab3a来避免校准和使用我自己的参数,但它的工作效果并不比以前更好。 我在接下来的实验中没有尝试更改PI控制器参数。

    感谢您的回答。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    更新:我已通过实验室升级到lab5b,其中速度参考设置为0。 电机不会真正停止,它只是随机摆动。 它不像lab5b中所说的那样作为弹簧工作,尽管我尝试更改PI参数。 我猜角度计算在某种程度上是错误的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    对于无感应观察者来说,很难保持0的参考速度,因为反馈非常小。 在该操作点向ADC显示的信息非常容易受到噪音的影响,导致在命令0速度时经常看到的“抖动”

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

    关于如何正确调整PI控制器参数的任何建议? 如果我的电机不能保持0速度参考,我需要知道电机惯性和通量常数,以便获得速度控制器参数? 在更改PI参数之前,如何知道我之前更改的参数是否正确?

    安德烈斯

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我认为可能有一些混淆-对于lab5b,当调整速度PI控制器参数时,无需看到转子完全停止在0速度。 当手动转动转子时,控制器将工作以保持0转速,让您感觉到该实验中描述的“弹簧”作用。 即使您未在SpeedRef =0处完全停止转子,您也可以继续lab5b

    Sean