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.

[参考译文] TMS320F28388D:TMS320F28388D:FCL 代码的3级故障

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1015455/tms320f28388d-tms320f28388d-trouble-with-level-3-of-fcl-code

器件型号:TMS320F28388D
主题中讨论的其他器件:TMDXIDDK379DC2000WARE

您好!

我在自己的实验板中使用28388 MCU 运行 FCL 项目。

我有一个具有增量编码器的三相交流伺服电机、名为 EMJ-04APB22。 我能够在2级运行项目。

当我切换到3级时、电机不 会平稳旋转。 它 以 特定的角度旋转、如步进电机。

我根据电机数据表更正了电机参数。  但电机仍然像步进电机一样工作。  这是我修改过的参数。

//
//定义电动机参数(Estun Servomotor)
//
#if (USER_MOTOR== ESTUN_EMJ04APB222)
//#define RS 2.35 //定子电阻(欧姆)//原始
#define RS 2.7 //定子电阻(欧姆)// 已修改
#define RR NULL //转子电阻(欧姆)

//#define LS 0.0065 //定子电感(H)//原始
已 修改#define LS 0.0085 //定子电感(H)//
#define LR NULL //转子电感(H)
#define LM NULL //磁化电感(H)
#define 极点8 //极点数
#define ENC_SLOTS 2500 //编码器中插槽的数量

#define M_ID_START 0.1 //对齐参考 d 轴电流
#define M_IQ_LI5 0.05 //电平5的基准 q 轴电流
#define M_IQ_LN5 0.03 //参考 q 轴电流、无 LEVEL5

这是基本数量代码

//
//定义基本数量
//
//#define base_voltage 236.14 //基峰值相电压(伏特),Vdc/sqrt (3)//原始
#define BASE_VOLTAGE 27.7 //基峰值相电压(伏特)、Vdc/sqrt (3)// 已修改
#define BASE_SHUNT_CURRENT 9.95 //基峰值相电流(安培)、
//最大 可测量峰值电流。
//#define base_LEM_CURRENT 12.0 //--- 执行---- //原件
#define BASE_LEM_CURRENT 8.1 //--- 执行---- // 已修改
//#define base_tume//   基准扭矩(N.m)//原始
#define BASE_TOFITE 1.27 //基本扭矩(N.m)// 已修改
//#define base_flux剂    //基体磁通链接(volt.sec/rad)//原始
#define base_flux剂0.0615//基本磁通连杆(volt.sec/rad)// 已修改
//#define BASE_FREQ 250 //基本电气频率(Hz)//原始
#define BASE_FREQ 200 //修改的基本电气频率(Hz)//

我对此有一些疑问

1.我使用的是48V 10A 直流电源,而不是200VAC 电源。 那么、我更改了 base_voltage = 48/sqrt (3)= 27.7V ->我对吗? plz 告诉我..

2.我正在使用霍尔传感器类型的增量编码器。 因此我选择 base_LEM_CURRENT = 8.1a ->该值是 EMJ-04APB22电机数据表中的电机最大电流。  -->对吗?

3. 根据您在 C:\ti\c2000\C2000Ware_MotorControl_SDK_3_02_00_00\solutions\tmdxiddk379d\f2838x\include\fcl_f2838x_tmdxiddk_settings_cpu1.h 中的代码、您描述了 TPwM_CARRIER、如所示  

      #define TPWM_CARRIER      (1000.0/PWM_FREQUENCY)  //in 微秒

  但是、PWM_FREQUENCY 是10kHz。 1000/10x10^3=100us 是否正确 ???  我认为 TPWM_FREQUENCY 是100ms。   plz 告诉我正确的地方。

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

    Sangoh、

    请注意、今天7月5日是美国假日。  您应在7月6日当天结束前收到回复。  感谢您的耐心。

    最棒的

    Matthew  

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

    1.应用程序代码与此参数无关。 所以、没有问题。

    base_current 由 PCB 硬件而不是电机硬件决定。 当 LEM 执行8.1A 时、反馈感应将最大程度地减小。

    TPWM 考虑以 KHz 为单位的 PWM 频率、Hence、您只需显示10、因此答案是100us。