请问各位,我用开环SVPWM产生输出的电压频率怎么有跳动...
请问各位,我用开环SVPWM产生输出的电压频率怎么有跳动...为什么载波频率和运行频率整除时就不跳动了..
void svgenmf_calc(SVGENMF *v)
{
_iq EntryOld,dx,dy;
_iq T = _IQ(1.0);
// Normalise the freq input to appropriate step angle
// Here, 1 pu. = 60 degree
StepAngle = _IQmpy(v->Freq,v->FreqMax);
// Calculate new angle alpha
EntryOld = v->NewEntry;
v->Alpha = v->Alpha + pygd;//计算偏移角度
if (v->Alpha >= _IQ(1.0))
{
v->Alpha = v->Alpha-_IQ(1.0);
}
v->NewEntry = v->Alpha;
v->t2 =_IQmpy( _IQsin(_IQmpy(v->NewEntry,PI_THIRD)),hubbuf); // t2 = sin(NewEntry)计算矢量作用时间
v->t1 =_IQmpy(_IQsin(PI_THIRD-_IQmpy(v->NewEntry,PI_THIRD)),hubbuf); // t1= sin(60-NewEntry)
if((v->t1 + v->t2) > _IQ(0.9999))//0.9999防止过饱和
{
v->t1 = _IQdiv(v->t1,(v->t1 + v->t2));
v->t2 = _IQdiv(v->t2,(v->t1 + v->t2));
}
dx=v->t1;
dy=v->t2;
// Determine which sector
if (v->NewEntry-EntryOld<0)//计算扇区
{
if (v->SectorPointer==5)
v->SectorPointer = 0;
else
v->SectorPointer = v->SectorPointer + 1;
} 怎么没人解答咧...求助 采样不均匀 回复 3# lbz0123
你是说示TEK的波器采样不均匀?那为什么载波频率和运行频率整除时就不跳了 载波频率多少,10K?能被这个数整除的数可多了。。。
重点关注这句话 StepAngle = _IQmpy(v->Freq,v->FreqMax);
Freq是否是运行频率?FreqMax呢?
另外,是怎样一种跳动呢?是否是float和int数据格式不对应那种跳动呢? 载波采样不均匀 不能整除 表示前后两个调制波周期的采样点数不同 采样就不均匀了 如果采样点数少的话 波形就会有差异了 载波频率是1K, FREQ是运行频率,FreqMax=6*50/1000 载波频率是1K, FREQ是运行频率,FreqMax=6*50/1000 载波频率是1K, FREQ是运行频率,FreqMax=6*50/1000 载波频率是1K, FREQ是运行频率,FreqMax=6*50/1000 StepAngle=pygd 否?
页:
[1]