TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F280049: DCL中的Direct Form 1 (Third Order) 和Direct Form 2 (Third Order) Compensators有什么不同

Part Number:TMS320F280049

在“C2000 Digital Control Library Version 3.4 User’s Guide”文中介绍了Direct Form 1 (Third Order) 和Direct Form 2(Third Order) 两种形式的3阶补偿器,

1)从他们的Z域的传递函数和差分表达式来看,都相同

2)从软件代码来看

Direct Form 1 (Third Order):

static inline float32_t DCL_runDF13_C4(DCL_DF13 *p, float32_t ek)
{
p->d4 = (ek * p->b0) + (p->d1 * p->b1) + (p->d2 * p->b2) + (p->d3 * p->b3) – (p->d5 * p->a1) – (p->d6 * p->a2) – (p->d7 * p->a3);
p->d3 = p->d2;
p->d2 = p->d1;
p->d1 = ek;
p->d7 = p->d6;
p->d6 = p->d5;
p->d5 = p->d4;

return(p->d4);
}

和Direct Form 2(Third Order):

static inline float32_t DCL_runDF23_C4(DCL_DF23 *p, float32_t ek)
{
float32_t v7;

v7 = (ek * p->b0) + p->x1;
p->x1 = (ek * p->b1) + p->x2 – (v7 * p->a1);
p->x2 = (ek * p->b2) + p->x3 – (v7 * p->a2);
p->x3 = (ek * p->b3) – (v7 * p->a3);

return(v7);
}

执行的结果都为u(k) = e(k) * b0 + e(k-1) * b1 + e(k-2)* b2 + e(k-3) * b3  – u(k-1) * a1 – u(k-2) * a2) – u(k-3) * a3;

3 从CompDesigner GUI的设定来看Direct Form 1 (Third Order) 和Direct Form 2(Third Order) 两种补偿器设定时选的补偿器类型是同一个

我的问题是:为什么在“C2000 Digital Control Library Version 3.4 User’s Guide”中要把同一个3阶补偿器分Direct Form 1 (Third Order) 和Direct Form 2(Third Order) 两种形式,而且还是Direct Form 2 (Third Order) 的鲁棒性比Direct Form 1(Third Order) ,建议使用Direct Form 2(Third Order) ,他们的区别道理在哪里?

Green Deng:

看一下这个帖子的回复:https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/868754/tms320f280049-dcl_df22_c1-dcl-lib-vs-cntl_2p2z-dp-lib/3213643?tisearch=e2e-sitesearch&keymatch=%2522Direct%2520Form%25201%2522#3213643 

,

Aiden zhang:

这个帖子里只有这一句话和我的我的问题相关,但是我没用得到想要的答案。你要是看懂了,麻烦给我解释一下。谢谢。

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F280049: DCL中的Direct Form 1 (Third Order) 和Direct Form 2 (Third Order) Compensators有什么不同
分享到: 更多 (0)