@TOC]电机控制)

永磁同步电机滑膜(eSMO)无传感器控制

先贴上TI eSMO控制算法
具体请看这个大哥写的文章
https://blog.csdn.net/lijialin_bit/article/details/104263194

v.Fsmopos = exp((-v.Rs/v.Ls)*(v.Ts));               \v.Gsmopos = (v.Vb/v.Ib)*(1/v.Rs)*(1-v.Fsmopos);
/*  Sliding mode current observer   */                                                              \v.EstIalpha = _IQmpy(v.Fsmopos,v.EstIalpha) + _IQmpy(v.Gsmopos,(v.Valpha-v.Ealpha-v.Zalpha));        \v.EstIbeta  = _IQmpy(v.Fsmopos,v.EstIbeta)  + _IQmpy(v.Gsmopos,(v.Vbeta -v.Ebeta -v.Zbeta ));        \\/*    Current errors  */                                                                              \v.IalphaError = v.EstIalpha - v.Ialpha;                                                               \v.IbetaError  = v.EstIbeta  - v.Ibeta;                                                                \\/*  Sliding control calculator    */                                                                  \/* v.Zalpha=v.IalphaError*v.Kslide/v.E0) where E0=0.5 here*/                                     \v.Zalpha = _IQmpy(_IQsat(v.IalphaError,v.E0,-v.E0),_IQmpy2(v.Kslide));                                \v.Zbeta  = _IQmpy(_IQsat(v.IbetaError ,v.E0,-v.E0),_IQmpy2(v.Kslide));                                \\/*    Sliding control filter -> back EMF calculator    */                                              \v.Ealpha = v.Ealpha + _IQmpy(v.Kslf,(v.Zalpha-v.Ealpha));                                            \v.Ebeta  = v.Ebeta  + _IQmpy(v.Kslf,(v.Zbeta -v.Ebeta));                                         \\/*    Rotor angle calculator -> Theta = atan(-Ealpha,Ebeta)   */                                      \v.Theta = _IQatan2PU(-v.Ealpha,v.Ebeta);

正文开始
希望大家批评指正给出建议,控制对象为一个非常特殊的电机,电机的电感量非常小,磁链也不大,电机参数如图示。

整个仿真框架
仿真中有两个保持器,用来模拟实际芯片电压、电流采样频率,这里设置很重要,对仿真波形影响很大,我现在头痛的问题之一,IGBT一般工作在10KHz,因此电压电流的采样频率也应该是10KHz,才符合实际运行状态,但是我的控制对象在电流采样在10Khz仿真波形很差,100khz勉强可以使用。
滑膜控制器给定电压,为2r/2s变化后计算出的电压Uapha,Ubate。在袁雷老师的仿真中,无传感器仿真效果很好,是因为仿真在连续域运行,测量逆变器输出电压,这里的电压每一相都是方波信号,而实际运行根本没办法用于采样计算,因为可能采样方波电压时间很短,控制芯片无法在极短的时间运行矢量控制算法。

上仿真(采用TI官网2812的eSMO算法)

1.eSMO观测器仿真,与传统观测器差别不大,中间matlab函数为滑膜控制函数,目的是使控制效果平滑。

2.电压采样频率为10Khz,电流采样频率为100Khz
实际转速1000
这里为电角速度

估算转速:

实际反电动势与估算反电动势对比波形,这里这波形更能反应滑膜控制算法的准确性,粉色为估计反电动势
可以看到,此算法牺牲了电机反电动势的幅度准确性,但采用PLL计算电机速度与角度,幅度根本不需要。

2.传统滑膜控制器,大家自行比对,差别区别不大

估算转速仿真波形,可以看到上述仿真效果更好。

实际反电动势与估算反电动势对比波形

3.滑膜控制函数

function y = fcn(x,a)
y = (exp(a*x)-exp(-a*x))/(exp(a*x)+exp(-a*x));

令我感到头大的问题来了,电流采样频率,当电流采样为10khz

电机估算转速烂的不成样子。

还未完结,先写到这里,有解决问题点子的大佬请留言

目前,实际实验我设想两种方案解决问题
一 、寻求更好的算法
二、重新搭建平台,采用mos,把开关频率提上去。

【永磁同步电机滑膜无感控制】相关推荐

  1. 永磁同步电机滑膜控制SMO控制仿真模型

    永磁同步电机滑膜控制SMO控制仿真模型 ID:929617630041681小***莫

  2. 基于超螺旋滑模观测器的内置式永磁同步电机ipmsm无位置(速度)传感器控制模型

    基于超螺旋滑模观测器的内置式永磁同步电机ipmsm无位置(速度)传感器控制模型 dq旋转坐标系建立滑模观测器 引入二阶滑模超螺旋算法替代一阶滑模 引入锁相环PLL估计转速及转子位置id=6509656 ...

  3. 永磁同步电机的直接转矩控制(一)一一一DTC仿真模型的搭建

    永磁同步电机的直接转矩控制(一)一一一DTC仿真模型的搭建 目录 永磁同步电机的直接转矩控制(一)一一一DTC仿真模型的搭建 0研究背景 1直接转矩控制的简单介绍 2控制系统仿真模型的搭建 2.1 被 ...

  4. STM32 电机教程 33 - 无刷电机无感控制快速实现

    前言 上一节<STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现>给大家分享了ST的官方的无刷电机无感控制实现方案(基于NUCLEO-F103R ...

  5. 永磁同步电机的直接转矩控制(四)一一一基于滑模转速控制器的DTC

    永磁同步电机的直接转矩控制(四)一一一基于滑模转速控制器的DTC 目录 永磁同步电机的直接转矩控制(四)一一一基于滑模转速控制器的DTC 0研究背景 1基于滑模的转速控制器设计 2基于滑模的转速控制器 ...

  6. AC7811-BLDC无感控制代码详解

    BLDC控制框图 BLDC 的控制电路对电机转子位置信号进行逻辑变换后产生脉宽调制 PWM 信号,驱动逆变器的功率开关管,从而控制 BLDC 电机各相绕组按一定顺序工作,在电机气隙中产生跳跃式旋转磁场 ...

  7. Foc无传感器带载启动代码方案,高频注入,电流模型估算,滑膜 无感算法,C需要,开源,不是官方库。重载启动,效果很好。

    Foc无传感器带载启动代码方案,高频注入,电流模型估算,滑膜 无感算法,C需要,开源,不是官方库.重载启动,效果很好.

  8. 无刷电机无感控制,速度电流双闭环

    无刷电机无感控制,速度电流双闭环. 程序加配套仿真和实验图 ID:69700614767543439

  9. 永磁同步电机无感控制“开环切闭环”的几点疑问

    这里所说的"开环"指的是"I/f"控制,闭环即"速度-电流双闭环".很多论文中都提到了加权过渡的思路,比如参考论文中的描述如下图所示,使用角 ...

最新文章

  1. Android 图片透明度处理代码
  2. Java虚拟机中的栈和堆
  3. 【观影】摩托日记、盲井
  4. python的类写法_Python3 类静态数据的写法
  5. QT的QSignalTransition类的使用
  6. Vim配置文件(全平台可用)2012-05-01版
  7. 无法加载可扩展计数器_多核可扩展计数器
  8. 自定义C++异常处理
  9. 证券期货行业监管大数据治理方案研究
  10. HTML—讲解分割线标签、文字居中、背景图片充满全图
  11. U盘恢复软件,U盘格式化后怎么恢复数据
  12. cad黑色背景变成白色_学会了、让你前程似锦的CAD完整版教程
  13. BP神经网络(Python代码实现)基于pytorch
  14. 北京市地铁线路及站点数据
  15. SMT表面贴片工序详解
  16. 简单的了解一下MySQL连接查询
  17. 抽象类的作用是什么?
  18. 网页游戏制作html5,利用HTML5 Canvas制作一个简单的打飞机游戏
  19. Python爬取王者荣耀英雄的皮肤数据并下载皮肤图片项目
  20. IBM p系列小型机日常维护及故障排除时常用命令(检查IBM设备状态汇总)

热门文章

  1. fgvc-aircraft-2013b飞机细粒度数据训练集和测试集划分python代码
  2. web服务器超过访问上限显示,web服务器超过访问上限(图文)
  3. 广告电商:创新营销模式的优势与发展建议
  4. ADB、Fastboot、Recovery、Hboot、Bootloader介绍
  5. 普通初中理化生实验室的教学仪器配置标准
  6. 【私有云盘】搭建PHP轻量文件管理器 - TinyFileManager「公网远程访问」
  7. 2021-12-16 混沌性检测微弱特征信号
  8. 海康iMVS-VM-6100/7100机器视觉软件加密狗
  9. java 第一天_Java学习第一天
  10. 基于Android studio的使用百度地图API定位到大西洋几内亚湾(一片蓝图)问题