受社区朋友提示,利用把下面两个桥臂MOS管打开,其他4个关断.短路电机.软件这样写,先初始化
EALLOW;
// CPU Halt Trip
EPwm1Regs.TZSEL.bit.OSHT1=0x1;
EPwm2Regs.TZSEL.bit.OSHT1=0x1;
EPwm3Regs.TZSEL.bit.OSHT1=0x1;
EPwm1Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm1Regs.TZCTL.bit.TZB = TZ_FORCE_HI; // 置高
EPwm2Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm2Regs.TZCTL.bit.TZB = TZ_FORCE_HI; // 置高
EPwm3Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm3Regs.TZCTL.bit.TZB = TZ_FORCE_LO; // 置低
EDIS;
以后希望电机停机
EPwm1Regs.TZFRC.all = 4; //开启保护功能
我担心的会这样会不会引起 同1桥臂的上下2个MOS管短路?在进行保护的过程中(虽然这个时间很小),比如给下面2个桥臂置高的时候,上面的桥臂还没关断,
因为这个不是正常的PWM输出阶段?
我用过那个方案,同时给6路PWM置低,发现电机挺不下来,好像突然停顿一下,有继续跑起来了,不知何故
Igor An:
这样做从MCU角度是可以的,你的担心是有可能的,这主要要看功率部分的驱动电路是否能快速关断上管。
另外,六个管子全都置低,肯定是可以的,只是没有制动效果,只是关断PWM让电机自由停止。
如果发现顿一下继续转,有可能是有地方在不停的刷CLEAR TZ的开机命令。
你可以先找一个低压的评估板跑一下关机逻辑,测试一组PWM输出,看是否实现了想法,避免在软件实现上的一些细节导致没有达到预期效果。
受社区朋友提示,利用把下面两个桥臂MOS管打开,其他4个关断.短路电机.软件这样写,先初始化
EALLOW;
// CPU Halt Trip
EPwm1Regs.TZSEL.bit.OSHT1=0x1;
EPwm2Regs.TZSEL.bit.OSHT1=0x1;
EPwm3Regs.TZSEL.bit.OSHT1=0x1;
EPwm1Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm1Regs.TZCTL.bit.TZB = TZ_FORCE_HI; // 置高
EPwm2Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm2Regs.TZCTL.bit.TZB = TZ_FORCE_HI; // 置高
EPwm3Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm3Regs.TZCTL.bit.TZB = TZ_FORCE_LO; // 置低
EDIS;
以后希望电机停机
EPwm1Regs.TZFRC.all = 4; //开启保护功能
我担心的会这样会不会引起 同1桥臂的上下2个MOS管短路?在进行保护的过程中(虽然这个时间很小),比如给下面2个桥臂置高的时候,上面的桥臂还没关断,
因为这个不是正常的PWM输出阶段?
我用过那个方案,同时给6路PWM置低,发现电机挺不下来,好像突然停顿一下,有继续跑起来了,不知何故
user4729463:
回复 Eric Ma:
gPwmData.Tabc,这个寄存器没看到
是不是三项空比为设置为0(对上桥臂而言),这样上面三个MOS都关断,下面都导通?
受社区朋友提示,利用把下面两个桥臂MOS管打开,其他4个关断.短路电机.软件这样写,先初始化
EALLOW;
// CPU Halt Trip
EPwm1Regs.TZSEL.bit.OSHT1=0x1;
EPwm2Regs.TZSEL.bit.OSHT1=0x1;
EPwm3Regs.TZSEL.bit.OSHT1=0x1;
EPwm1Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm1Regs.TZCTL.bit.TZB = TZ_FORCE_HI; // 置高
EPwm2Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm2Regs.TZCTL.bit.TZB = TZ_FORCE_HI; // 置高
EPwm3Regs.TZCTL.bit.TZA = TZ_FORCE_LO; // 置低
EPwm3Regs.TZCTL.bit.TZB = TZ_FORCE_LO; // 置低
EDIS;
以后希望电机停机
EPwm1Regs.TZFRC.all = 4; //开启保护功能
我担心的会这样会不会引起 同1桥臂的上下2个MOS管短路?在进行保护的过程中(虽然这个时间很小),比如给下面2个桥臂置高的时候,上面的桥臂还没关断,
因为这个不是正常的PWM输出阶段?
我用过那个方案,同时给6路PWM置低,发现电机挺不下来,好像突然停顿一下,有继续跑起来了,不知何故
Igor An:
回复 user4729463:
闭合三个下管,断开三个上管除了上面Eric提到的方式,也可以用下面的方法:
将三个下管闭合,三个上管断开(关机)
EALLOW;EPwm1Regs.AQCSFRC.all = 0x0005;EPwm2Regs.AQCSFRC.all = 0x0005;EPwm3Regs.AQCSFRC.all = 0x0005;EDIS;
将所有管子放开(开机)
EPwm1Regs.AQCSFRC.all = 0x000F;
EPwm2Regs.AQCSFRC.all = 0x000F;
EPwm3Regs.AQCSFRC.all = 0x000F; EDIS;