【永磁同步电机滑膜无感控制】
@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,把开关频率提上去。
【永磁同步电机滑膜无感控制】相关推荐
- 永磁同步电机滑膜控制SMO控制仿真模型
永磁同步电机滑膜控制SMO控制仿真模型 ID:929617630041681小***莫
- 基于超螺旋滑模观测器的内置式永磁同步电机ipmsm无位置(速度)传感器控制模型
基于超螺旋滑模观测器的内置式永磁同步电机ipmsm无位置(速度)传感器控制模型 dq旋转坐标系建立滑模观测器 引入二阶滑模超螺旋算法替代一阶滑模 引入锁相环PLL估计转速及转子位置id=6509656 ...
- 永磁同步电机的直接转矩控制(一)一一一DTC仿真模型的搭建
永磁同步电机的直接转矩控制(一)一一一DTC仿真模型的搭建 目录 永磁同步电机的直接转矩控制(一)一一一DTC仿真模型的搭建 0研究背景 1直接转矩控制的简单介绍 2控制系统仿真模型的搭建 2.1 被 ...
- STM32 电机教程 33 - 无刷电机无感控制快速实现
前言 上一节<STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现>给大家分享了ST的官方的无刷电机无感控制实现方案(基于NUCLEO-F103R ...
- 永磁同步电机的直接转矩控制(四)一一一基于滑模转速控制器的DTC
永磁同步电机的直接转矩控制(四)一一一基于滑模转速控制器的DTC 目录 永磁同步电机的直接转矩控制(四)一一一基于滑模转速控制器的DTC 0研究背景 1基于滑模的转速控制器设计 2基于滑模的转速控制器 ...
- AC7811-BLDC无感控制代码详解
BLDC控制框图 BLDC 的控制电路对电机转子位置信号进行逻辑变换后产生脉宽调制 PWM 信号,驱动逆变器的功率开关管,从而控制 BLDC 电机各相绕组按一定顺序工作,在电机气隙中产生跳跃式旋转磁场 ...
- Foc无传感器带载启动代码方案,高频注入,电流模型估算,滑膜 无感算法,C需要,开源,不是官方库。重载启动,效果很好。
Foc无传感器带载启动代码方案,高频注入,电流模型估算,滑膜 无感算法,C需要,开源,不是官方库.重载启动,效果很好.
- 无刷电机无感控制,速度电流双闭环
无刷电机无感控制,速度电流双闭环. 程序加配套仿真和实验图 ID:69700614767543439
- 永磁同步电机无感控制“开环切闭环”的几点疑问
这里所说的"开环"指的是"I/f"控制,闭环即"速度-电流双闭环".很多论文中都提到了加权过渡的思路,比如参考论文中的描述如下图所示,使用角 ...
最新文章
- Android 图片透明度处理代码
- Java虚拟机中的栈和堆
- 【观影】摩托日记、盲井
- python的类写法_Python3 类静态数据的写法
- QT的QSignalTransition类的使用
- Vim配置文件(全平台可用)2012-05-01版
- 无法加载可扩展计数器_多核可扩展计数器
- 自定义C++异常处理
- 证券期货行业监管大数据治理方案研究
- HTML—讲解分割线标签、文字居中、背景图片充满全图
- U盘恢复软件,U盘格式化后怎么恢复数据
- cad黑色背景变成白色_学会了、让你前程似锦的CAD完整版教程
- BP神经网络(Python代码实现)基于pytorch
- 北京市地铁线路及站点数据
- SMT表面贴片工序详解
- 简单的了解一下MySQL连接查询
- 抽象类的作用是什么?
- 网页游戏制作html5,利用HTML5 Canvas制作一个简单的打飞机游戏
- Python爬取王者荣耀英雄的皮肤数据并下载皮肤图片项目
- IBM p系列小型机日常维护及故障排除时常用命令(检查IBM设备状态汇总)
热门文章
- fgvc-aircraft-2013b飞机细粒度数据训练集和测试集划分python代码
- web服务器超过访问上限显示,web服务器超过访问上限(图文)
- 广告电商:创新营销模式的优势与发展建议
- ADB、Fastboot、Recovery、Hboot、Bootloader介绍
- 普通初中理化生实验室的教学仪器配置标准
- 【私有云盘】搭建PHP轻量文件管理器 - TinyFileManager「公网远程访问」
- 2021-12-16 混沌性检测微弱特征信号
- 海康iMVS-VM-6100/7100机器视觉软件加密狗
- java 第一天_Java学习第一天
- 基于Android studio的使用百度地图API定位到大西洋几内亚湾(一片蓝图)问题