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.

[参考译文] TMS320F28069M:userxxx.h 文件的当前参数

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/586770/tms320f28069m-current-parameters-for-userxxx-h-files

器件型号:TMS320F28069M
主题中讨论的其他器件:MOTORWARE

大家好、TI 人

在运行泵(与 LaunchXL-F28069M + BOOSTXL-DRV8301 EVM 基本相同)但每皮秒有2个泵时、我们遇到了一个问题。  我们达到了一些我们无法理解的功率限制。  当 查看相电流(在连接电机的导线上)时、两个泵均以12V、~10A 峰值/峰值(8k RPM)运行。  我们可以在该电流下单独运行每个电机、但当我们运行两个泵时、我们可以运行一个达到该电流、 但是、一旦第2个通道运行并达到大约+/- 9A (700-7500 RPM)、第1个通道将失去同步、并为周期生成巨大的电流尖峰+/- 40A、从而使其停止并重新启动。  

我们的要求是让两者以8k RPM 的转速运行。  该软件基于实验10d。  在  我们运行1个 ISR 例程时、这与您一直在帮助路易朱的项目相同。  CPU 时间看起来不错~160US/200US 周期用于电机 ISR、主循环需要1.4mS 才能完成(与 lab10d 没有太大差异)、因此它每6-7个电机 ISR 就会完成一次。  这是对的吗?

我们已禁用 OTCW 检测、以帮助解决此问题。  在此事件之后、我们才会看到 DRV 产生故障。

以下是 user.xx.h 文件中的关键值:

//电机:10000 RPM * 4/120 = 333.3
#define USER_IQ_FULL_SCALE_FREQ_Hz_M1 (333.3)

//使用具有2.5V 基准的 ADC 和 DRV 进行固定~2x USER_ADC_FULL_SCALE_VOLTAGE
#define USER_IQ_FULL_SCALE_VOLTAGE_V_M1 (40.0)

//使用2.5V 基准的 ADC 和 DRV 进行修正
//输入电压* 4.99 /(4.99 +34.8)= 2.5 =>输入电压(最大值)= 19.93487
#define USER_ADC_FULL_SCALE_VOLTGE_V_M1 (19.93487)

//使用具有2.5V 基准的 ADC 和 DRV 进行修复-比 USER_IQ_FULL_SCALE_CURRENT_A 高~ 20%
#define USER_IQ_FULL_SCALE_CURRENT_A_M1 (32.0)

//使用具有2.5V 基准电压、具有9毫欧感应的 ADC 和 DRV 进行固定
#define USER_ADC_FULL_SCALE_CURRENT_A_M1 (27.78)


在 Mentor 板上提供#define USER_NUM_CURRENT_SENSORS_M1 (2)// 2

#define USER_NUM_VOLTGE_SENSORS_M1 (3)//需要3个

#define V_A_OFFSET_M1 (0.1198145)//
#define V_B_OFFSET_M1 (0.1198781)//
#define V_C_OFFSET_M1 (0.1191706)//

#define USER_PWM_FREQ_kHz_M1 (10.0)//30.0示例、典型值为8.0 - 30.0 KHz;极低电感、高速电机可能需要45-80 KHz
#define USER_MAX_VS_MAG_PU_M1 (0.5)//如果不使用电流重构技术,则设置为0.5。 有关更多信息、请查看 lab10a-x 中的模块 svgen_current。

#define USER_NUM_PWM_TICKS_PER_ISR_TICK_M1 (2)

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

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

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

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

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

----其他值的默认值

#define USER_MOTOR_TYPE_M1 MOTOR_Type_PM // Motor_Type_PM (全部同步:BLDC、PMSM、SMPM、IPM)或 Motor_Type_Induction (异步 ACI)
#define USER_MOTOR_NUM_POLE_PAINS_M1 (2)//对、而不是总极数。 仅用于根据转子 Hz 计算用户 RPM

#define USER_MOTOR_RR_M1 (NULL)//仅感应电机、否则为空
#define USER_MOTOR_Rs_M1 (0.04676075)//(0.074250020)// Y 等效电路中确定的相位到中性点电阻(欧姆、浮点)
#define USER_MOTOR_LS_D_M1 (0.000127290)//(0.000123519)//对于 PM、确定的平均定子电感(亨利、浮点数)
#define USER_MOTOR_LS_q_M1 (0.000127290)//(0.000123519)//对于 PM、确定的平均定子电感(亨利、浮点数)

#define USER_MOTOR_RATed_FLUX_M1 (0.0150248)//(0.016194884)//确定转子和定子之间的总磁链(V/Hz)
#define USER_MOTOR_磁 化 Current_M1 (NULL)//仅感应电机、否则为 NULL
#define USER_MOTOR_RES_EST_CURRENT_M1 (2.0)//在电机识别期间、用于 Rs 估算的最大电流(安培、浮点数)、10-20%额定电流
#define USER_MOTOR_IND_EST_CURRENT_M1 (-2.0)//在电机识别期间、用于 LS 估算的最大电流(负电流、浮点数)、只需足够的时间即可启用旋转
#define USER_MOTOR_MAX_CURRENT_M1 (15.0)//严重:在 ID 和运行时使用、设置所提供的速度 PI 控制器向 IQ 控制器输出的最大电流命令的限制
#define USER_MOTOR_FLUX_EST_FREQ_Hz_M1 (20.0)//在电机识别期间、最大命令速度(Hz、浮点)、额定电流~10%

我的问题是、我们是否为此应用正确设置了这3个电流参数?

USER_ADC_FULL_SCALE_CURRENT_A_M1 (27.78)=+13.69A 测量范围、因为基准电压为2.5V、检测电阻为9m Ω、逆变器为12V  
USER_IQ_FULL_SCALE_CURRENT_A_M1 (32.0)=+/- 16A 最大值、用于内部。 无法翻转。 已选择用户
USER_MOTOR_MAX_CURRENT_M1 (15.0)=额定电机电流。 用户选择的每个电机

 USER_MOTOR_MAX_CURRENT_M1值是峰值还是 RMS 值?  这限制了我们吗?

我们应该设置 IQ_FULL_SCALE_...  价值更高?  

我们似乎达到了功率限制、因为只要相电流为~Ω+/-10A、我们就可以通过运行更慢并增加负载或两种组合来跳闸。  12V 总线看起来正常-我们增加了电容、以防止在这些事件中使其不受损坏、认为这是原因、但事实并非如此。

这是事件的波形...

感谢您的任何帮助!

-罗宾

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

    更新了--我们查看了电机上的 PWM 信号  ,我们达到了88%的占空比限制(因为我们只使用2个电流感应电阻器)。 我们能够将12V 直流总线增加到14V、并获得更高的性能。
    有趣的是、在 spruhj1g 中、对于正弦波、它显示 USER_MAX_VS_MAG_PU (1.0)、但在 Motorware 中、userxxx.h 文件显示(0.5)。
    我们使用的是0.5、这是正确的吗?
    在仅使用2个电流感应电阻器的 PWM 上、是否有办法获得高于87%的占空比? 任何一点都将有帮助。

    谢谢

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

    1.禁用 OVM 功能, 如果要使用2个电流分流器,请将 USER_MAX_VS_MAG_PU 设置为0.5。

    2.检查电源是否有电流限制。 如果没有、请尝试增大电源电压以检查运行性能。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢-我们禁用了 OVM、这似乎使电机运行得更平稳。 我们还增加了电压、使我们能够以稍高的功率级别运行。 我们似乎刚刚达到设计的功率曲线的顶部。