“线程”中讨论的其它部件:测试, MOTORWARE,
亲爱的各位,
我正在对具有 Motorware_proj_lab04和基于 TMS320F28069F 的控制器的4极电机进行测试,最高可达150krpm (5kHz 电气速度)。 它的驱动速度高达107krpm (3.567KHz)
附加的 user.h 文件的设置,但由于 MCU 性能较高,运行速度似乎很困难。 如果有办法在不更改 硬件的情况下将其运行到150krpm,您能给我一些建议吗?
顺祝商祺!
EUI-HEON
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.
亲爱的各位,
我正在对具有 Motorware_proj_lab04和基于 TMS320F28069F 的控制器的4极电机进行测试,最高可达150krpm (5kHz 电气速度)。 它的驱动速度高达107krpm (3.567KHz)
附加的 user.h 文件的设置,但由于 MCU 性能较高,运行速度似乎很困难。 如果有办法在不更改 硬件的情况下将其运行到150krpm,您能给我一些建议吗?
顺祝商祺!
EUI-HEON
尊敬的纳瓦尼特·纳拉亚纳萨米:
感谢你的回复。
我想要支持的是如何设置与控制相关的参数,如以下链接所示
e2e.ti.com/.../tms320f28069m-high-speed-motors
并使用电机设备以5kHz 的电动速度驱动电机。
顺祝商祺!
EUI-HEON
尊敬的罗燕明:
感谢你的回复。
使用电机设备的 proj_lab04,扭矩控制(IQ_ref:30A ~ 40A)驱动的电速高达3.567KHz, 但即使 IQ_ref 应用于40A 以上,电流和速度也不会增加。 由于这与马达的负载特性有关,我将 根据 Navaneeeth Narayanasamy 和您的建议在不同的外部条件下对其进行测试。 当负载降低时 ,速度似乎增加了,但由于 电流波形严重失真,无法准确测量电速。
因此,如果以5kHz 的电动速度驱动,请告知应调整以下参数的哪个部分。
所附5282.user.h 文件中的主要参数如下所示。
#define user_IQ_Full-scale_FREQ_Hz (4000.0) =>(5000.0)
#define user_IQ_full;scale;voltage;V (24.0)
#define user_system_FREQ_MHz (90.0)
#define user_PWM_FREQ_kHz (30.0) ==>(35.0)
#define user_NUM_PWM_TICS_Per ISR 刻度(1)
#define user_NUM_ISR_TICS_Per CTRL_TICK (1)
#define user_NUM_CTRL_TICS_Per _current_tick (1)
#define user_NUM_CTRL_TICS_Per EST_TICK (1)
#define user_R_over L_EST_FREQ_Hz (300)
#define user_voltion_filter_pole _Hz (1100) =>(1250)
#define user_motor_NUM_POL_Pairs (2)
//=== PWM:30kHz,user_motor_flues_EST_FREQ_Hz (100.0)===
#define user_motor_rs (0.0204980057)
#define user_motor_LS_d (8.56277347e-06)
#define user_motor_LS_q (8.56277347e-06)
#define user_motor_rated 通量(0.003164717)
//=========================================
#define user_motor_MAX_current (45.00)
#define user_motor_dinflus_EST_FREQ_Hz (100.0)
顺祝商祺!
EUI-HEON
如果可能,您可以尝试增加直流总线电压,并检查电流和最大速度是否会相应增加。
将以下代码添加到更新 GlobalVariables_motor(),并检查 gMotorVars.vs 的值是否接近 user_MAX_VS_MAG_PU。
//读取 Vd 和 VQ 矢量(单位)
gMotorVars.Vd = CTRL_getVd_Out _PU (ctrlHandle);
gMotorVars.VQ = CTRL_getVq_OUT _PU (ctrlHandle);
//计算矢量与单位
gMotorVars.vs =_IQsqrt(_IQ颠簸(gMotorVars.Vd,gMotorVars.Vd)+_IQ颠簸(gMotorVars.VQ,gMotorVars.VQ));
顺便说一句, 您在 user.h 中设置的 user_MAX_VS_MAG_PU 的值是多少?