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.

[参考译文] TMS320F28069F:使用 F28069实现降压/升压直流控制的 SFRA

Guru**** 2386620 points
Other Parts Discussed in Thread: SFRA, TIDM-BUCKBOOST-BIDIR
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/782312/tms320f28069f-sfra-for-buck-boost-dc-control-by-using-f28069

器件型号:TMS320F28069F
主题中讨论的其他器件:TIDM-BUCKBOOST-BIDIR

尊敬的专家:

我  最近已将 SFRA 库移植到我的项目中、但当我进行开环频率扫描时、从 GUI 获得的结果似乎存在一些问题。

请您能帮我解决这个问题吗?

我的项目是使用全桥电路的降压-升压直流/直流转换 器、这与 TI 的示例(TIDM-BUCKBOOST-BIDIR)非常相似。

MCU 是具有100kHz PWM 频率的 F28069、程序也是根据 TI 的示例(TIDM-BUCKBOOST-BIDIR)修改的。

我正在尝试使用 SFRA 工具获取具有转换器峰值电流模式控制的开环。

GUI 可以连接并开始扫描。 问题是当扫描结束时、GUI 显示错误的结果。  CVS 文件中的信息也不正确、

我的33K ISR 中有以下代码。

IsrTicker++;

Vout_Ref=SFRA_IQ_Inject (Vout_Ref_DC);

DPL_Func ();//调用 DPL

EPwm1Regs.ETCLR.bit.INT=1;
PieCtrlRegs.PIEACK.All=PIEACK_Group3; 

以及一些 相关的代码

#define SFRA_ISR_FREQ 33000//83000
#define SFRA_FREQ_START 100
#define SFRA_FREQ_LENGTH 100
// SFRA 阶跃^= 10 μ s (1/每十倍频的步进数(40))
#define SFREQ_STEP_MUSH (float) 1.059253

SFRA_SFRAIq SFRA1;

main (void)...

(笑声)

SFRA1.ranimation=_IQ26 (0.10);
SFRA1.Vec_Length =SFRA_FREQ_LENGTH;
SFRA1.ISR_Freq=SFRA_ISR_FREQ;
SFRA1.Freq_Start=SFRA_FREQ_START;
SFRA1.Freq_Step=SFREQ_STEP_MO倍增;
SFRA1.FreqVect=FreqVect;
SFRA1.GH_MagVect=OL_MagVect;
SFRA1.GH_PhaseVect=OL_PhaseVect;
SFRA1.H_MagVect=Plant_MagVect;
SFRA1.H_PhaseVect=Plant_PhaseVect;
SFRA_IQ_init (&SFRA1);
SCIA_Init();

CommsSerialflg = 0;
CommsTimer = 0;

//"set"变量
//将 GUI 按钮分配到所需的标志地址
varSetBtnList[0]=(Int16*)&OKalizationFlag;

//"Get"变量
//------
//指定一个 GUI "getable"参数地址
varGetList[0]=(Int16*)&(SFRA1.Vec_Length );
varGetList[1]=(Int16*)&(SFRA1.STATUS);
varGetList[2]=(Int16*)&(SFRA1.FreqIndex);

//"Setable-------------------------------------------------------------------------------------------------------------------------------

//通过文本参数 address
dataSetList[0]=(UINT32*)&(SFRA1.Freq_Start);
dataSetList[1]=(UINT32*)&(SFRA1.Magnet);
dataSetList[2]=(UINT32.*)=(UIntray*

=



) v32*;GetIntrasure*= V32*=
(GetInture*=) v32*;GetIntranure*= Vrasure*= v32*;GetVaretPhasure*=(v32*=)
arrayGetList[5]=(Int32*)&(SFRA1.Freq_Start);
arrayGetList[6]=(Int32*)&(SFRA1.振 幅);
arrayGetList[7]=(Int32*)&(SFRA1.Freq_Step);

...

。}

void A2 (void)/2ms
{
SFRA_IQ_background (&SFRA1);
SerialHostComms ();
//------
//下次 CpuTimer0 'counter'达到周期值时,转至 A1
A_Task_ptr =&A1;
}

控制卡上的 void B2 (void)//Blink LED -15ms
{
if (initiatizationFlag = 1)
{
SFRA_IQ_init (&SFRA1);
initiatizationFlag = 0;
SFRA1.start =1----
}

//下次 CpuTimer1 'counter'达到周期值时,转到 B3
B_Task_ptr =&b3;
}

我想知道我的机具是否有问题。 
请帮帮我。
谢谢!

  没有英汉互译结果 μ A
  请尝试网页搜索 μ A
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果是 F28069、您可以使用该库的浮点版本吗?

    如果您在代码中未使用浮点、并且想要使用定点库、请确保根据 UG 正确识别 sin 表位置、它可能是您使用的器件所特有的。 即 F28069或 F28069M 可能具有不同的 sin 表位置。

    现在、我提供了一个 STB 示例、说明一位客户能够运行以自行诊断问题。

    请按照上面的步骤操作、看看您是否能够解决该问题

    e2e.ti.com/.../747040