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.

[参考译文] 编译器/TMS320F28069:电机参数的在线修改

Guru**** 2605765 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/681283/compiler-tms320f28069-online-modification-of-motor-params

器件型号:TMS320F28069

工具/软件:TI C/C++编译器

您好!

我想修改(在线)一些电机和控制参数。

我使用的是定制板。 该板包含 NV 存储器。 该存储器应存储一些参数、以使软件可配置用于多个电机。 为此、应从存储器而非 user.h 中读取 user.h 中定义的某些参数 这是可行的吗? 我已经修改了代码 、我对一些参数有一些疑问:

例如、USER_MOTOR_RAGE_VLUX 参数似乎被用于以这种方式进行最大磁通计算:

float_t maxFlux =(USER_MOTOR_RATED_FLUX*(USER_MOTOR_TYPE=MOTOR_Type_Induction)?0.05:0.7);

这是  EST_getFlux_pu 函数的一部分。 此函数不可访问、因此我无法使用 全局变量修改 USER_MOTOR_RAGED_FLUX 定义。

有什么方法可以做到这一点吗?

我只想将一些 user.h 定义(至少电机定义、偏移、最大速度和最大加速度)转换为全局变量(结构中)。 有可能吗?

提前感谢您

Borja Gómez í a

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果电机未运行、您可以在线更改电机参数、使用数据变量替换所有常量电机参数、然后按顺序调用 USER_setParams (&gUserParams)、CTRL_setParams (ctrlHandle、&gUserParams)和 CTRL_setUserMotorParams (ctrlHandle)。
    如果电机正在运行、则不建议在线更改 MOTOR_ratedFlux (USER_MOTOR_RATID_FLUX)、因为 instaSPIN-FOC 算法会始终根据电机计算出的 BEMF 更新磁通。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的。 感谢你的帮助

    Borja。