电机控制中,常用的控制策略就是FOC与DTC这两种。伺服中运用更多的是FOC,但是这并不妨碍我们了解DTC这种算法。这里,我想要探讨的是这两种算法的区别。首先这两种算法的区别在于对转矩的描述上。从宏观上来说,电机的转矩可以通过能量的转换来计算。忽略杂散等损耗,输入的电能一部分转化为磁能,另一部分转化为机械能,而扭矩主要用来产生机械能。对于双馈电机,通过能量计算得到的最原始的状态为定转子电流与转矩之间的关系。而因为磁链与电流的关系,又可以转化为磁链计算得到力矩。而且还可以从定子侧计算扭矩,转子侧计算扭矩,不同的扭矩计算方式,往往会导致不同的计算结果。对于伺服电机矢量控制,采用电流计算转矩时,转矩主要有q轴的电流产生,那么通过改变q轴的电流就可以改变力矩。对于DTC而言,扭矩的计算通过定转子的磁链,而转子由于使用永磁铁,其磁通不变,则可以通过改变转子侧磁链的大小及它与转子侧的夹角来改变力矩的大小,由于使用svpwm进行电压控制,在每次控制时采用几个固定的矢量电压,相对于FOC的不断的调整电流大小,无级调整,DTC对扭矩的控制比较粗鲁,也就是所谓的bang bang 控制。
由于DTC直接控制磁链改变转矩,但FOC需要控制电流进而控制转矩,相对而言,DTC控制响应比较快,但是因为每次控制并不是无级的,所以精度稍微差点。