各位老师你们好,我在做永磁同步电机矢量控制系统,采用的是无位置滑动模态估计法,在随转子转速进行计算时,看到controlSuite中FOC程序,看到程序中的基频Base_Freq设置为200hz,然后遇到一些问题:
1、利用下面这个式子进行角速度的计算,
Temp1 = _IQmpy(v.K1,(v.EstimatedTheta – v.OldEstimatedTheta));
其中K1=_IQ21(1/(BASE_FREQ*T));
利用表达式可以表示为:

式子中的Tspeed是中断服务频率的倒数吧,为什么还要在除一个基频呢?这个是标幺化处理吗?具体处理思想是什么呢?
2、为了方便您解决问题,我将系统的控制框图放在下面了。在程序中我还看到,在进行RG模块时需要计算StepAngleMax,这个就是每进入一次中断增加的角度值吧,为什么它的值就是BASE_FREQ*T呢?
非常感谢!!!

Terry Deng:
你说的是BASE_FREQ吧,这个是TI 自定义的标幺化 频率值,比如设定BASE_FREQ是200hz,也是就说当电机频率达到200hz时,算法里面显示值为IQ(1)。
各位老师你们好,我在做永磁同步电机矢量控制系统,采用的是无位置滑动模态估计法,在随转子转速进行计算时,看到controlSuite中FOC程序,看到程序中的基频Base_Freq设置为200hz,然后遇到一些问题:
1、利用下面这个式子进行角速度的计算,
Temp1 = _IQmpy(v.K1,(v.EstimatedTheta – v.OldEstimatedTheta));
其中K1=_IQ21(1/(BASE_FREQ*T));
利用表达式可以表示为:

式子中的Tspeed是中断服务频率的倒数吧,为什么还要在除一个基频呢?这个是标幺化处理吗?具体处理思想是什么呢?
2、为了方便您解决问题,我将系统的控制框图放在下面了。在程序中我还看到,在进行RG模块时需要计算StepAngleMax,这个就是每进入一次中断增加的角度值吧,为什么它的值就是BASE_FREQ*T呢?
非常感谢!!!

xu zhang11:
回复 Terry Deng:
谢谢您的回复,请问BASE_FREQ*T计算得到的是什么值呢?另外K1=_IQ21(1/(BASE_FREQ*T))得到的是什么值呢?进行速度计算为真么需要这个值?
非常感谢!!!
各位老师你们好,我在做永磁同步电机矢量控制系统,采用的是无位置滑动模态估计法,在随转子转速进行计算时,看到controlSuite中FOC程序,看到程序中的基频Base_Freq设置为200hz,然后遇到一些问题:
1、利用下面这个式子进行角速度的计算,
Temp1 = _IQmpy(v.K1,(v.EstimatedTheta – v.OldEstimatedTheta));
其中K1=_IQ21(1/(BASE_FREQ*T));
利用表达式可以表示为:

式子中的Tspeed是中断服务频率的倒数吧,为什么还要在除一个基频呢?这个是标幺化处理吗?具体处理思想是什么呢?
2、为了方便您解决问题,我将系统的控制框图放在下面了。在程序中我还看到,在进行RG模块时需要计算StepAngleMax,这个就是每进入一次中断增加的角度值吧,为什么它的值就是BASE_FREQ*T呢?
非常感谢!!!

Terry Deng:
回复 xu zhang11:
这个道理很简单啊,速度 = 距离 / 时间,在程序里 距离 就是 前后两次角度的 差值,时间 就是前后两次中断的固定间隔周期 T,两者相除就是 角速度。
至于为什么加上BASE_FREQ,前面说过了是为了标幺化,就是说 程序里的 角速度值 单位 1 等于 BASE_FREQ的值。这样是为了方便 程序里所有变量统一单位。
各位老师你们好,我在做永磁同步电机矢量控制系统,采用的是无位置滑动模态估计法,在随转子转速进行计算时,看到controlSuite中FOC程序,看到程序中的基频Base_Freq设置为200hz,然后遇到一些问题:
1、利用下面这个式子进行角速度的计算,
Temp1 = _IQmpy(v.K1,(v.EstimatedTheta – v.OldEstimatedTheta));
其中K1=_IQ21(1/(BASE_FREQ*T));
利用表达式可以表示为:

式子中的Tspeed是中断服务频率的倒数吧,为什么还要在除一个基频呢?这个是标幺化处理吗?具体处理思想是什么呢?
2、为了方便您解决问题,我将系统的控制框图放在下面了。在程序中我还看到,在进行RG模块时需要计算StepAngleMax,这个就是每进入一次中断增加的角度值吧,为什么它的值就是BASE_FREQ*T呢?
非常感谢!!!

xu zhang11:
回复 Terry Deng:
谢谢您:
“角速度值 单位 1 等于 BASE_FREQ的值”这样的话加速度单位1与转速单位1应该一致的吧。转速单位1代表3000r/min,二者都是基值,那这样的话应该一致吧,但是BASE_FREQ与转速基值不一致啊?
在斜坡信号产生模块中有StepAngleMax=BASE_FREQ*T(T=1/f,f是中断服务频率),这个频率怎么和角度存在关系呢?
谢谢您。
TI中文支持网



