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

InstaSPIN_BLDC算法请教

最近买了套TI的开发套件,在看InstaSPIN_BLDC算法,其中看到drv.h文件中的函数 InstaSPIN_BLDC_Calc(obj->instaHandle);时非常不理解,一步一步往下追溯就是这个函数了bemfnegint_calc(v);

inline void bemfnegint_calc(H_INSTASPIN_BLDC v)
{
	v->commTrig = NO;

	if(v->vIntLockout == YES)
	{
		if(*(v->vPhase) > 0)
		{
			v->vIntLockout = NO;
		}
	}
	else
	{
		v->vInt += *(v->vPhase);			// Integrate the phase voltage

		if(v->vInt < 0)					// Only integrate negatively
		{
			if(v->vInt < -(v->intThreshold))	// Check to see if there is enough volt-seconds to commutate
			{
				v->vIntLockout = YES;
				v->commTrig = YES;
				v->vInt = 0;
			}
		}
		else
		{
			v->vInt = 0;
		}
	}
}

这其中的vInt,intThreshold,vIntLockout都是干吗的啊,有没有讲解这些代码的参考手册,或者能不能讲下 InstaSPIN_BLDC_Calc(obj->instaHandle);的大致程序流程,十分感谢~

gaoyang9992006:

http://www.ti.com.cn/tool/cn/instaspin-bldc

http://www.ti.com.cn/cn/lit/an/zhca541/zhca541.pdf

算法的讲解我也没有找到,只有这个东西的使用方法。

Zheng Lee:

回复 gaoyang9992006:

看这个还是看不懂的…请问你是怎么学习这个的啊,初学的话~

gaoyang9992006:

回复 Zheng Lee:

BLDC 原理与驱动。应该先学这个吧,如果用,你就直接用人家现成的函数,先试试能用就行,别管人家是怎么做的。

Young Hu:

回复 gaoyang9992006:

传统的sensorless bldc的控制方式都是基于过零点换相,通过比较器去判断过零点。InstaSpin-BLDC是通过电压信号积分查找过零点,优点是抗干扰能力更强

Zheng Lee:

回复 Young Hu:

Hi,Young Hu

    我想继续问下,这个反电势积分问题

(1)阈值intThreshold是如何确定的呢,模板里用的是 0.10

(2)关于if(v->vInt < -(v->intThreshold))这句话,判断满足这条件后就立即产生了一个commTrig换相吗,感觉好不严谨

Zheng Lee:

回复 Zheng Lee:

有没有人来解决下上面这两个问题啊 ,或者给个提示也行~

赞(0)
未经允许不得转载:TI中文支持网 » InstaSPIN_BLDC算法请教
分享到: 更多 (0)