目录
传统DTC控制仿真
1. DTC简单介绍
DTC其基本思路是不再将定子侧的相关变量折算到转子的旋转坐标系下,放弃了矢量控制中电流解耦的控制思想 ,去掉了PI调节模块、反Clark-Park变换和SVPWM模块 ,转而通过检测母线电压和定子电流 ,直接计算出电机的磁链和转矩 ,并利用两个滞环比较器直接实现对定子磁链和转矩的解耦控制。传统的DTC控制通过滞环控制来实现,FOC中的SVPWM在DTC控制中则是通过开关查表实现. 如下图为典型的永磁同步电机DTC控制。
2. 传统DTC仿真模型
通过滞环来对估算到的转矩,和磁链 进行控制,速度环直接输出Te_ref,通过滞环控制开关管的导通判断。再通过角度或者磁链计算出扇区,利用扇区通过查表确定当前功率管的开通判断顺序。和SVPWM不同的是SVPWM输出的是比较值,固定频率,变化的占空比。这种通过开关控制的方法开关频率越高,控制效果越好。
仿真系统:
算法部分:
3. DTC仿真效果
DTC控制频率20K的速度和电流响应效果
磁链圆的效果
DTC控制频率10K的速度和电流响应效果
磁链圆的效果
转矩响应效果
控制频率越高,开关频率越高,控制效果越好,但是这种控制方式在实际硬件中实行的话可能需要极高的开关频率,加上环路的控制,对MCU的性能要求比较高。用这种方式在实际的硬件上测试也出现同样的问题,相电流不平滑,且直接对功率管开关,容易过流。也有很多论文提出了不少的改进方法,这里不一一列举。
改进DTC SVPWM控制仿真
1. SVPWM替换查表
通过基于滑模控制器的转矩磁链调节器,输入磁链误差和转矩误差,进而计算出两相静止坐标系的空间电压,完成DTC的系统控制任务。
2. 无传感磁链估算
这里我们通过一个无感磁链观测器,通过输入的Ialpha Ibeta, 和Ualpha Ubeta估算出转矩和磁链以及当前转速和当前的角度。
改进后的DTC控制仿真
控制频率10K
1. 速度响应
明显电流光滑了很多
2. 转矩响应
给定转矩和估算转矩,估算转矩在给定转矩上下浮动
电机实际转矩
和估算的转矩有些误差
3. 磁链圆
得到的磁链更接近圆也更光滑
4. 无感角度估算
接近真实角度
代码生成
为方便实际验证,模型里面也加入了Hall的角度计算,验证观测器是否能正常工作
生成代码并集成
开发板验证
电机参数如下:
程序下载到开发板后连接Simulink的串口调试工具,上传观测量:
开发板主控芯片是STM32F401,低压24V。
运行效果:
如下图:
和仿真效果一样,通过PI输出的转矩和估算的转矩基本重和,估算的角度和霍尔计算的角度也基本一致,拿掉霍尔后也能正常闭环控制。通过电位器给定转速995RPM,实际转速和给定基本一致。
电流波形(2K采样频率):
总结
DTC的控制系统通过模型验证以及生成代码到开发板中运行调试,实际和仿真接近,模型的电机仿真参数来自于实际的电机测量参数,目前系统已经可以通过霍尔计算角度或者通过无感磁链观测器获得角度,目前基本功能实现,但还有很多地方有待改进。
模型链接:https://item.taobao.com/item.htm?id=711284919204&spm=a1z10.1-c.w4004-13354255027.29.41292a1f58UIQV