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.

HVmotorctrl_pfc电机控制程序中,无法进行ePWM模块的错误保护功能



本公司从TI购得的HVmotroctrl_pfc电机实验板,在上面进行IPM模块的过流保护实验,并没有成功。

实验中发现当过电流信号为高电平时,板子上只有LED在闪,而EPWM还是有输出,无法保护电机。仔细看了一下controlsuit中的程序(无位置传感器交流电机控制)发现GPIO15并没有作为TZ1来使用,本人打开这个TZ1,如图所示:

下载后重新再运行,当给GPIO15一个高电平时,PWM照样有输出,并没有按配配置全部拉低并闭,相关的TRIP配置如下:(也是Controlsuit上的配置)

这里的TZ1配的是OST(一次触发),而EPWM配置为:当TZ触发时全部输出为低电平(并闭IPM模块)

但是F28035并没有做到这个功能的实现。

因为为了验证这个TZ1到底有没有触发,我在这个程序的后台检验程序段中做了相关的实验,程序如下所示:

这里的标志位OST是指示是否有一次触发产生,实验是这样做的,我在TripFlagDMC=1;前设断点,如果上面的条件成立,则程序指针一定会运行到这条指令。当在GPIO为低电平时,程序可以运行到这里,奇怪的是,当我将GPIO15加上高电平时(3.3v)时,它也可以运行到这里!

证明:这个OST位一直是置位的,与TZ1的高低无关,但是如果是其它的原因使这个OST位置位也应该要拉低EPWM的输出电位啊!

现在要问的问题是:是什么使这个OST置位了?为什么在OST置位的条件下,PWM没有按TZCTL设置的方式来工作?

原程序就是controlsuit中的HVACI_Sensorless