完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用Launchpad-28069+Drv8305,驱动一个外转子的电机(电感值在几个uH)。
#define USER_MOTOR_RES_EST_CURRENT (2) #define USER_MOTOR_IND_EST_CURRENT (-2) 按照上述配置时,电机可以正常完成参数辨识过程,辨识结果也比较准确。 但当我将上述参数改为3A时(user.h中的其他参数保持不变),电机无法完成正常的参数辨识,在进行到电感辨识的时候,发出很大的噪音,驱动板Drv8305报错。反复试过几次都是这样的问题,请问这是什么原因? #define USER_MOTOR_RES_EST_CURRENT (3) #define USER_MOTOR_IND_EST_CURRENT (-3) 手册中对这两个电流的解释为:只提到辨识电感时,电机也处于旋转状态,Ls电流可能无需过高。 1.一般都是把这两个值设置成相同的大小,符号相反。可不可以将RES = 3,IND = -1。是否可以? 2.由于进行参数辨识代码不开源,不知道他的辨识策略。是否有详细的文档可供参考? 但有注意到电机在进行电感辨识的过程中,有一个短暂的停止动作,这是什么情况? 希望得到ti工程师的回答,非常感谢! |
|
相关推荐
4 个讨论
|
|
zixiang_huang 发表于 2020-5-29 10:11 #define USER_IQ_FULL_SCALE_FREQ_Hz (1300.0) #define USER_IQ_FULL_SCALE_VOLTAGE_V (30.0) // 24.0 Set to Vbus #define USER_ADC_FULL_SCALE_VOLTAGE_V (44.30) // BOOSTXL-DRV8305EVM = 44.30 V #define USER_IQ_FULL_SCALE_CURRENT_A (24.0) // BOOSTXL-DRV8305EVM = 24.0 A #define USER_ADC_FULL_SCALE_CURRENT_A (47.14) // BOOSTXL-DRV8305EVM = 47.14 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 (1.022829056) #define I_B_offset (1.020207703) #define I_C_offset (1.014472127) #define V_A_offset (0.04628497362) #define V_B_offset (0.04616570473) #define V_C_offset (0.04622781277) #define USER_PWM_FREQ_kHz (45.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_NUM_PWM_TICKS_PER_ISR_TICK (3) //! brief Defines the number of isr ticks (hardware) per controller clock tick (software) //! brief Controller clock tick (CTRL) is the main clock used for all timing in the software //! brief Typically the PWM Frequency triggers (can be decimated by the ePWM hardware for less overhead) an ADC SOC //! brief ADC SOC triggers an ADC Conversion Done //! brief ADC Conversion Done triggers ISR //! brief This relates the hardware ISR rate to the software controller rate //! brief Typcially want to consider some form of decimation (ePWM hardware, CURRENT or EST) over 16KHz ISR to insure interrupt completes and leaves time for background tasks #define USER_NUM_ISR_TICKS_PER_CTRL_TICK (1) // 2 Example, controller clock rate (CTRL) runs at PWM / 2; ex 30 KHz PWM, 15 KHz control //! brief Defines the number of controller clock ticks per current controller clock tick //! brief Relationship of controller clock rate to current controller (FOC) rate #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. //! brief Defines the number of controller clock ticks per estimator clock tick //! brief Relationship of controller clock rate to estimator (FAST) rate //! brief Depends on needed dynamic performance, FAST provides very good results as low as 1 KHz while more dynamic or high speed applications may require up to 15 KHz #define USER_NUM_CTRL_TICKS_PER_EST_TICK (1) // 1 Typical, FAST estimator runs at same rate as CTRL; //! brief Defines the number of controller clock ticks per speed controller clock tick //! brief Relationship of controller clock rate to speed loop rate #define USER_NUM_CTRL_TICKS_PER_SPEED_TICK (15) // 15 Typical to match PWM, ex: 15KHz PWM, controller, and current loop, 1KHz speed loop //! brief Defines the number of controller clock ticks per trajectory clock tick //! brief Relationship of controller clock rate to trajectory loop rate //! brief Typically the same as the speed rate #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 //! brief LIMITS // ************************************************************************** //! brief Defines the maximum negative current to be applied in Id reference //! brief Used in field weakening only, this is a safety setting (e.g. to protect against demagnetization) //! brief User must also be aware that overall current magnitude [sqrt(Id^2 + Iq^2)] should be kept below any machine design specifications #define USER_MAX_NEGATIVE_ID_REF_CURRENT_A (-0.5 * USER_MOTOR_MAX_CURRENT) // -0.5 * USER_MOTOR_MAX_CURRENT Example, adjust to meet safety needs of your motor //! brief Defines the R/L estimation frequency, Hz //! brief User higher values for low inductance motors and lower values for higher inductance //! brief motors. The values can range from 100 to 300 Hz. #define USER_R_OVER_L_EST_FREQ_Hz (300) // 300 Default //! brief Defines the low speed limit for the flux integrator, pu //! brief This is the speed range (CW/CCW) at which the ForceAngle object is active, but only if Enabled //! brief Outside of this speed - or if Disabled - the ForcAngle will NEVER be active and the angle is provided by FAST only #define USER_ZEROSPEEDLIMIT (0.5 / USER_IQ_FULL_SCALE_FREQ_Hz) // 0.002 pu, 1-5 Hz typical; Hz = USER_ZEROSPEEDLIMIT * USER_IQ_FULL_SCALE_FREQ_Hz //! brief Defines the force angle frequency, Hz //! brief Frequency of stator vector rotation used by the ForceAngle object //! brief Can be positive or negative #define USER_FORCE_ANGLE_FREQ_Hz (2.0 * USER_ZEROSPEEDLIMIT * USER_IQ_FULL_SCALE_FREQ_Hz) // 1.0 Typical force angle start-up speed //! brief POLES // ************************************************************************** //! brief Defines the analog voltage filter pole location, Hz //! brief Must match the hardware filter for Vph #define USER_VOLTAGE_FILTER_POLE_Hz (344.62) // BOOSTXL-DRV8305 = 344.62 Hz //! brief USER MOTOR & ID SETTINGS // ************************************************************************** //! brief Define each motor with a unique name and ID number // BLDC & SMPM motors #define Estun_EMJ_04APB22 101 #define Anaheim_BLY172S 102 #define Teknic_M2310PLN04K 104 // IPM motors // If user provides separate Ls-d, Ls-q // else treat as SPM with user or identified average Ls #define Belt_Drive_Washer_IPM 201 #define Anaheim_Salient 202 // ACIM motors #define Marathon_5K33GN2A 301 //! brief Uncomment the motor which should be included at compile //! brief These motor ID settings and motor parameters are then available to be used by the control system //! brief Once your ideal settings and parameters are identified update the motor section here so it is available in the binary code //#define USER_MOTOR Estun_EMJ_04APB22 #define USER_MOTOR My_Motor //#define USER_MOTOR Teknic_M2310PLN04K //#define USER_MOTOR Belt_Drive_Washer_IPM //#define USER_MOTOR Marathon_5K33GN2A //#define USER_MOTOR Anaheim_Salient #if (USER_MOTOR == Estun_EMJ_04APB22) // Name must match the motor #define #define USER_MOTOR_TYPE MOTOR_Type_Pm // Motor_Type_Pm (All Synchronous: BLDC, PMSM, SMPM, IPM) or Motor_Type_Induction (Asynchronous ACI) #define USER_MOTOR_NUM_POLE_PAIRS (4) // PAIRS, not total poles. Used to calculate user RPM from rotor Hz only #define USER_MOTOR_Rr (NULL) // Induction motors only, else NULL #define USER_MOTOR_Rs (2.303403) // Identified phase to neutral resistance in a Y equivalent circuit (Ohms, float) #define USER_MOTOR_Ls_d (0.008464367) // For PM, Identified average stator inductance (Henry, float) #define USER_MOTOR_Ls_q (0.008464367) // For PM, Identified average stator inductance (Henry, float) #define USER_MOTOR_RATED_FLUX (0.38) // Identified TOTAL flux linkage between the rotor and the stator (V/Hz) #define USER_MOTOR_MAGNETIZING_CURRENT (NULL) // Induction motors only, else NULL #define USER_MOTOR_RES_EST_CURRENT (1.0) // During Motor ID, maximum current (Amperes, float) used for Rs estimation, 10-20% rated current #define USER_MOTOR_IND_EST_CURRENT (-1.0) // During Motor ID, maximum current (negative Amperes, float) used for Ls estimation, use just enough to enable rotation #define USER_MOTOR_MAX_CURRENT (3.82) // CRITICAL: Used during ID and run-time, sets a limit on the maximum current command output of the provided Speed PI Controller to the Iq controller #define USER_MOTOR_FLUX_EST_FREQ_Hz (20.0) // During Motor ID, maximum commanded speed (Hz, float), ~10% rated /* #elif (USER_MOTOR == My_Motor) #define USER_MOTOR_TYPE MOTOR_Type_Pm #define USER_MOTOR_NUM_POLE_PAIRS (12) #define USER_MOTOR_Rr (NULL)//NULL #define USER_MOTOR_Rs (NULL) #define USER_MOTOR_Ls_d (NULL) #define USER_MOTOR_Ls_q (NULL) #define USER_MOTOR_RATED_FLUX (NULL) #define USER_MOTOR_MAGNETIZING_CURRENT (NULL)//NULL #define USER_MOTOR_RES_EST_CURRENT (2) #define USER_MOTOR_IND_EST_CURRENT (-2) #define USER_MOTOR_MAX_CURRENT (15.0) #define USER_MOTOR_FLUX_EST_FREQ_Hz (50.0) */ |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
684 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
600 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1055 浏览 1 评论
741 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
525 浏览 1 评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
166浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
128浏览 14评论
在使用3254进行录音的时候出现一个奇怪的现象,右声道有吱吱声,请教一下,是否是什么寄存器设置存在问题?
127浏览 13评论
TLV320芯片内部自带数字滤波功能,请问linein进来的模拟信号是否是先经过ADC的超采样?
123浏览 12评论
GD32F303RCT6配置PA4 ADC引脚,将PA2代替key功能,PA2连接时无法实现预期功能,为什么?
54浏览 10评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 04:02 , Processed in 0.939137 second(s), Total 65, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号