器件型号: LAUNCHXL-F280039C
您好:
经过数小时评估 SDK 和后续 UMCSDK 版本后、代码似乎被错误地使用、并针对内部电流约束启用 PWM 故障控制 (hal.h)。 这是一个不!
因此、通过快速禁用和启用功能调用 (hal.h) 来导致电机控制信号门控不当、这些调用旨在为半桥电机栅极驱动器解释安全控制。 非 sys_main.c、motor_common.c、motor1_drive.c 中的内部软件控制标志。
当示例软件版本未正确使用 ePWM falut 控制时、客户会将自己的单触发和/或强制 DAC 控制添加到这两个用于外部电机故障控制的函数中、就会产生设计混淆。
请明确为 UMCSDK 内部启用/禁用标志添加不会影响外部电机 PWM 故障控制 (hal.h) 的函数、但可能清除故障功能看起来比较谨慎。 例如、当 C 代码变得不稳定时、带有紧急切断按钮的控制面板可能无法制动电机! 在这种情况下、我们可能会得到一次性中断或布尔标志、通过 EPWM 动作限定器将栅极驱动置于高阻抗状态。 BTW 清除 interrupt_all 标志对于任何添加的 ePWM 动作限定符 setup_pwmfaults 函数不会执行任何操作。
否则、电机 ID 过程会很好地移植到 HID 器件中并正常运行。 然而、PWM 故障标志需要透明、以便工程师将其 C 代码添加到其 C 代码中、以实现与 UMCSDK 示例代码的运行没有干扰的硬件限制、从而创建 FAST、eSMO 和 GDSVM 控制信号、以便在 PWM 模块中添加客户栅极驱动器!
当我们从 main.c 返回时、为什么当前开始循环时不受约束?disable_pwm () 电机可能会尝试启动然后立即停止、而不是实际停止、当 50%的占空比上下增加 1%左右时、电流开始自动激增。 奇怪的电流循环行为证明了永久循环正在逃逸、perhpas、因为 CPU 计时器溢出开始驱动未处理的中断?