打印

SVPWM程序 CMPA输出为0有可能是什么原因

[复制链接]
1293|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
598835484|  楼主 | 2018-5-15 19:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 598835484 于 2018-5-15 20:00 编辑
float temp;
float X,Y,Z, t1,t2;
Uint16 A,B,C,N,Sector;
float Ta, Tb, Tc;
float K=1.73205081;//sqrt(3)


X= K*p->Ubeta/p->Vdc*p->T;
Y=(K*p->Ubeta+3*p->Ualpha)/(2*p->Vdc)*p->T;
Z=(K*p->Ubeta-3*p->Ualpha)/(2*p->Vdc)*p->T;
//
if(p->Ubeta>0)
   {A=1;}
else
   {A=0;}

if( (K*p->Ualpha-p->Ubeta)>0 )
   {B=1;}
else
   {B=0;}

if((-K*p->Ualpha-p->Ubeta)>0)
   {C=1;}
else
   {C=0;}

N=A+2*B+4*C;
//
switch(N)
{
case 1:{Sector=2;break;}
case 2:{Sector=6;break;}
case 3:{Sector=1;break;}
case 4:{Sector=4;break;}
case 5:{Sector=3;break;}
case 6:{Sector=5;break;}
default:{;}
}
//
switch(Sector)
{
case 1: {t1=-Z; t2= X;break;}
case 2: {t1= Z; t2= Y;break;}
case 3: {t1= X; t2=-Y;break;}
case 4: {t1=-X; t2= Z;break;}
case 5: {t1=-Y; t2=-Z;break;}
case 6: {t1= Y; t2=-X;break;}
  default:{;}
}

if((t1+t2)>p->T)//对过调制情况进行调整
{
  temp=t1+t2;
  t1=t1*p->T/temp;
  t2=t2*p->T/temp;
}

//
Ta=(p->T-t1-t2)/4;//作用时间分配
Tb=Ta+(t1/2);
Tc=Tb+(t2/2);

switch(Sector)
  {
        case 1: {p->Tcmpa=Ta; p->Tcmpb=Tb; p->Tcmpc=Tc; break;}
        case 2: {p->Tcmpa=Tb; p->Tcmpb=Ta; p->Tcmpc=Tc; break;}
        case 3: {p->Tcmpa=Tc; p->Tcmpb=Ta; p->Tcmpc=Tb; break;}
        case 4: {p->Tcmpa=Tc; p->Tcmpb=Tb; p->Tcmpc=Ta; break;}
        case 5: {p->Tcmpa=Tb; p->Tcmpb=Tc; p->Tcmpc=Ta; break;}
        case 6: {p->Tcmpa=Ta; p->Tcmpb=Tc; p->Tcmpc=Tb; break;}
    default:{;}

  }
其中 Udc给定为540,Ts为中断时间0.000125s,Ualpha和Ubeta都有输入但是CMPA一直输出都是0,请问是代码有问题吗?

相关帖子

沙发
598835484|  楼主 | 2018-5-15 20:01 | 只看该作者
EPwm1Regs.CMPA.half.CMPA = (int)(2.0*p->PeriodMax*p->Tcmpa);
EPwm2Regs.CMPA.half.CMPA = (int)(2.0*p->PeriodMax*p->Tcmpb);
EPwm3Regs.CMPA.half.CMPA = (int)(2.0*p->PeriodMax*p->Tcmpc);

使用特权

评论回复
板凳
zhangmangui| | 2018-5-15 22:40 | 只看该作者
先把捕获中断打开   看看能不能触发进入中断

使用特权

评论回复
地板
598835484|  楼主 | 2018-5-16 08:29 | 只看该作者
zhangmangui 发表于 2018-5-15 22:40
先把捕获中断打开   看看能不能触发进入中断

中断可以的,中间变量值都有编号就是值非常小

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

30

主题

118

帖子

4

粉丝