- 本课程为精品课,您可以登录eeworld继续观看:
- TI 无传感电机控制算法介绍 增强滑膜及高频注入算法
- 登录
- 课程目录
- 相关资源
- 课程笔记
大家好 欢迎大家参加TI工业研讨会
我是TI Century FAE Igor An
今天由我继续给大家介绍TI的无传感电机控制加PFC解决方案
今天我要为大家主要介绍的是TI为大家提供的无传感电机控制算法
主要是无传感电机控制的角度位置观测器
目前TI能为大家提供的无传感电机算法主要有以下几种
第一种呢就是Sensorless BLDC
那这个其实是我们经常讲的方波 方波控制
那传统方波控制一般是用霍尔传感器
那这里我们使用无传感的方式去估计它的换相点
那我们有完全开源的Sensorless BLDC的解决方案
是在我们的controlSUITE的这个DMC软件库里面
同时还有一个是instaSPIN的BLDC的方案
那这个库是编成一个library的
大家是不能看到源码
但是可以方便地利用它的接口去使用这个软件
另外一个呢 就是我们这个滑膜 滑膜观察器
那这个做电机控制的人应该比较熟悉
这个已经非常出来有点年头的这一个算法
那还有的就是我们的最近这些年主推的instaSPIN的FOC的算法
这是一个性能非常优异的无传感电机算法
它这个最低转速可以下探到非常低的一个转速
那还有就是高频注入算法
那这个主要是为了解决零速和低速的一些问题的一套
一套无传感的算法
那右边两个框图呢 上面这个是SMO的估算器的主要几个框图
那下面这个呢是我们集成了FAST
也就是我们instaSPIN的这个估算器的一个FOC的控制框图
那这个估算器呢 instaSPIN的估算器我们称之为FAST
其实是因为它这个估算器的输出有四个量
第一个flux angle speed torque
那这几个首字母加起来就是FAST
我这个估算器出来除了这个角度和速度信息之外
还会有这个磁链和这个力矩的信息供大家使用
从SMO的这个图上看啊其实这个就是非常经典的SMO
那这里不同的这个实现啊
可能会选择不同的收敛控制器
那这个TI的方案里面呢
我们是用的这种帮帮控制的这个控制器
那后面呢
我们会针对几个主要的算法给大家更深入的介绍
我们实现这些算法的一些基本的方法
那首先给大家介绍的是SMO那这里我们加了一个e
eSMO
就是enhanced 增强型SMO
那其实这个不加e的这个就是纯的SMO这个算法呢
我们TI在网上已经完全open source给大家使用
已经有20几年的时间了
那这个传统的SMO的算法
大家可以在TI的controlSUITEDMC这个库里面直接下来
直接可以看到你可以随便地使用
那我们加了这个e的增强型SMO的这个算法呢
是我们在2013年推出的
那这个增强呢其实它没有改变eSMO的核心算法
那前面的这个估算
帮帮控制这些其实都是没有变的
那只是我们得到这个反应式EFRE β之后
我们从EFRE β得到这个实际角度sita的时候
我们会经过一些处理
比如说一些通率波
或者是其他类型的滤波
滤波之后造成的这个角度延时我们还有一个角度补偿
那这个增强型其实是处理这一块的
那我们去切换了一个新型的滤波方式
就是改进了滤波方式吧
然后 把这个滤波之后的结果进行角度补偿的方式
做成了一个自动机制
之前呢 如果用纯的SMO的话
可能要客户大家自己去做一个角度补偿算法去补偿
那我们增强型里面呢会把这个角度补偿的这个机制
也放在我们的这个观察器里面
一起给大家提供一个最终的角度结果
所以这个增强型的那个得到的角度呢
它是补偿过的角度
它这个在动态特性和角度精度上
都比传统的SMO有了比较大的这个改善
当然这个eSMO呢
目前我们是用一个delight的库的形式供给大家的
所以说在这个e怎么实现这个e的时候
大家现在目前还是看不到源码的
但是可以方便地用这个live去做您的工程
直接用它的结果
那我们很清楚就是说
SMO无论是eSMO还是SMO来说
它都是利用电机的 永磁电机的这个反定式特性去估计转子位置的
所以 那我们知道
它的这个理论上的一个使用情景呢
就是在中速和高速的情况下
也就是说我有反定式或者反定式比较强的这种工况下
我才能使eSMO估计出转子位置
那当零速和低速的时候
当没有反定式或者反定式信号非常微弱的时候
那SMO以及一系列
利用反定式原理去进行转子位置估算的
那比如说伦伯格
比如说全机观察器等等这一系列的这种无传感估算算法
它都是不适用的
或者说它的性能都是不能保证的
因此我们在这里面会给大家一个推荐
就是SMO匹配我们高频注入算法去把全速度范围覆盖掉
那这个高频注入算法呢
我们TI也是有一个代码库供大家使用的
后面我们会对高频注入算法也再做一个简单的介绍
这里我们看到呢 就是SMO
或者叫eSMO在FOC控制环路中的控制框图
那这里最关键呢 就是Sliding mode observer 滑膜观察器
那么可以看到它的输入是Vα Vβ Iα Iβ
输出是eα eβ那输出就是两个反定式
在αβ上面的这个信号
那它输入呢 Iα Iβ是通过我采的这个abc电流
去做这个clark变化得到的
那Vα Vβ呢实际上就是我们的这个输出
给电机的输出这个电压
在这个αβ相陷的这个表示
那一般这个VαVβ呢
是根据我们控制环路这个实际给出这个duty cycle
以及母线去估算出来的
它会有一定误差 比如说死驱啊
这个一些压降啊这些我们并没有考虑进去
所以它有一定误差
但是在可以接受的范围内呢
所以这个SMO对于一些高性能高精度里面呢
可能这个控制可能它的性能并不是那么理想
那有一方面原因是因为我们这个电机
电压这个值并不是特别的精确
那我们可以加一些补偿 但也相对于比较难把它补得非常非常准
然后得到这个eαeβ它的反应式
然后我们一般来说我们有一个
就可以得到这个角度了
那我们这里也可以用一个类似于锁向的一个概念
就是说把eαeβ进行解耦用解耦之后变成ed eq
然后用ed eq建一个我们叫position observer
其实就是一个锁向控制环
那得到我们这个sita或者是速度
那只是一种实现方式啦
那在我们这个eSMO的这个库里面呢
它的输出就是eαeβ出来直接得到一个补偿过的sita
那后面这段呢大家可以自己加
那TI也有一些参考设计里面是加入了这个position observer的
但是并没有包含在eSMO库里面
好 我们之前提到了这个
我们的FAST 我们的eSMO
那不管这些无传感它的原理或者估算器是怎么样的
它都是利用反定式的这个特性去估算的
那就从下面这两张图我们可以看到
那绿色的表示这个FAST
或者是我们叫eSMO它的有效工作区间
那就是中速或高速
那这个红色的是一个低速或者是零速这个位置
实际上无论是FAST还是eSMO它都没有办法
就从理论上就没有办法把这部分的角度很精确地估算出来
那这部分呢 我们就用IPD
那这IPD的意思就是Initial Position Detection
那实际上它检测的是零速
那这个零速过了后面这一段
电机在运行但是速度很低情况下运行的时候呢
我们可能就是用高频注入算法
那其实IPD也是高频注入啦
只是说高频注入的一个阶段
它是在零速阶段叫IPO在这个有运动的低速阶段
我们就叫HFI 叫高频注入
那高频注入的这个算法有一些
它本身的对电机的一些要求
那我们从这里可以看到其实我们这个高频注入算法
只能应用在这个有凸极率的这种支差型电机
那像这种表梯电机 没有凸极特性的
它就没有办法把这个转子位置估算出来
那原因是在于 我们看下面
它这个转子在转一周的时候
整个定子侧的电感的值
在表梯电机它定子电感的值几乎是一条直线
也就是我们常说的Ld=Lq
那在这个有凸极率的电机上
它这个转子转一周的时候
定子侧的电感值是随着你转子位置的不同
因为转子的磁场对定子侧的这个电感量是有影响的
所以就是有LdLq
那我们一般的讲Ld
那就是这个峰值的地方
最大值的就是Ld谷值的就是Lq
那很多这个用户或者是
客户或者工程师会有一些问题
知道Ls怎么算Ld Lq
因为我们知道很多电机里面的量
比如说我的三项电阻值或者电感值
电阻值它一般是或者是三项电压电流值
它会有一个根号三用这中三向到两向这种关系
那其实LdLq和Ls之间的关系并不是这样
那其实它就是峰值谷值和平均值的关系
那Ls实际上指的就是整个这个波动的平均值
那一般我知道LdLq要求我的Ls的话
一般是讲Ld加Lq除以2就是得到Ls
那这个框图给大家展示呢
就是高频注入这个估算器在FOC的这个环路里面
它的一个实现框图
那我们这里看几个比较重要的点就是
用红色标注出来的这第一个
我高频注入是在哪里注入
那其实我们就是在FOC环路里
TI的实现方式呢是在这个Vd上叠加一个高频信号
那这个Vd就是你零速的时候电机是不转的
可能你正常输出的Vd就是零
但如果是你在低速的时候电机是要转的
你要由VdVq向电机输出力矩
那这个VdVq就是在正常的FOC算出来的
要控制电机转速输出力矩的这个VdVq
那在这个计算的基础上我增加一个额外的高频信号
那这个就是我们去设计这个高频信号加进去
那TI加进的是个高频风波信号那这个信号加进电机以后呢
会由这个高频这个实际上是个电压信号
高频电压信号产生一个高频电流信号
那我们去采集abc电流的时候
经过解耦得到这个电流就会包含两部分
一部分低频的 那实际上就是
理想状态下它就是直流就是Id Iq
那作为这个FOC的这个控制作为输出力矩的这部分
另一部分高频的信号
我们是输送给这个高频注入的这个位置观察器
由这个高频信号去解出我们的角度位置
从而得到角度位置和速度信息
那这里面我们就用到了刚才类似于SMO里面介绍的
我们一个锁向环路去得到这个角度和速度信息
那从这里面看Band-pass filter这个环节
那其实它需要做两个事情
一个就是把低频的分裂出来给这个FOC控制环路
把高频的信号分离出来给我这个高频注入的这个环路
这是它的基本原理
那当然在这个高频注入的估算器里面有非常多的复杂算法
那目前呢
我们是把这部分算法做成一个标准的库的形式来提供给大家
那这里我们看到的呢就是我们刚才讲到的
这个波形就是我们注入的这个高频风波电压信号
那注入进去之后
定子的电感会产生一个高频的三角波电流
那实际的这个波形呢大概会是这样的
它是类似于三角波的这个电流
那我们通过这个电流会经过我们的锁向环路
去分析它的这个角度和位置信息
但有一个高频注入里面的一个环路上的问题就是说
我从这个环路分解出一个角度它是一个0到180的一个值
那我并不知道它是一个正的0到180 还是一个负的0到180
那这里面就是需要进一步确认另一个信息 就是南北极信息
那我们知道那正零到一百八和负零到一百八
其实就是我是对的是南极就是N还是S
那我们从这个磁力线
磁力曲线的这个上面可以看到
如果是N极对着我这个定子的线圈的话
那它对我的一个磁场是增强的
那S的话就是相反它的磁场是减弱的
所以我们从这个波形上看如果是这个N对应的
对的我这个转子位置
我们看 这个高频的电流那波形几乎是
和这个几乎一样的
但是我们仔细看这个数值它是正向的1.82 负向的 负的1.7
就是正的比负的要高
而相反的这边是负的比正的要高
那其实它的NS判断就是通过这种
这种直观的判断到底是正的大还是负的大
那其实就是哪边的这个电感量更大
或哪边的更小来判断它的NS
那这是高频注入实现的一个细节
那这里跟大家介绍一下
就是我们上面介绍的这些无传感电机算法
其实都可以在TI的官网上直接免费的下载下来的
那这些下载资源呢我们下面跟大家介绍一下
那下载资源主要包括controlSUITEMotorware还有C2000 ware
那controlSUITE呢
是我们C2000一个非常重要的这个资源共享库
包括里面有一些这个我们UN板的电路图
原理图 PCB还有很多的这种参考代码库
还有这个controlSUITE里面集成了一个PowerSUITE
那这PowerSUITE里面呢
有一个非常方便使用的一个图形化界面的
帮助大家去开发数字电源的一些简单的工具
那包括一些buck-boost的电路啊
您可以直接在这个图形化界面上去配置你板子上的各种端口
同时它会自动的帮您生成代码
就是您整个在 我们已经支持的几颗拓扑里面您就不用直接手写代码
直接用图形化界面自动生成代码
同时自动去类似于myplant的一个control
control这个工具一样帮您去分析你的PID 分析你的波特图
去自动帮您生成这个控制环路参数
等等等等一系列非常方便的这个工具
同时PowerSUITE里面呢还有一个非常强的工具就是SFI
其实就是我们传统讲的这个环路分析仪
那它会有一个分析仪的功能集成到我们的代码里
实际上就是在您的主控环路里面注入一个额外的信号
同时对它进行这个频谱分析
然后通过这个SFA可以帮你画出你的闭环波特图
帮你评估你的系统
那这个都是数字电源相关的
同时还有非常多电机相关的
有传感的 无传感的 霍尔传感器光电编码传感器等等等等一系列
那大家可以去下 都是免费下载的
在C2000里面
那上面就是它的这个层级地址
那还有一个就是Motorware
那这个Motorware呢
其实是我们发布instaSPIN FOC和instaSPIN motion的一个主要软件平台
大家可以去下载
那instaSPIN motion里 instaSPIN FOC里面呢 除了instaSPIN的这个重要功能
还有一些非常实用的功能就比如说过调制
这个低速的力矩振动补偿
那这在压缩机型里面非常实用
那它这个振动补偿也是用一个先进的
二次线性迭代的方式去自动地识别力矩曲线
自动地去补偿的
还有这个 这里写的是coming soon其实现在已经发布了
就是IPD_HFI加上instaSPIN的这种开发算法
好 谢谢大家的时间
欢迎大家继续关注这一方面的讲座
猜你喜欢
换一换
推荐帖子
- Keil 调试之Hardfault_Hander
- 今天写了个程序,由于上次没测试导致调试花费时间很长,所以准备写个测试程序,看看各个变量的值对不对,结果 。。。见下图 ...
- 18349369809 微控制器 MCU
- MSP430F149比较器
- 这两天研究了一下430的比较器,开始的时候,没有看懂是怎么一回事,在网站看这方面的博客,好像懂了,但是一到编程,就变得无从下手,但是,皇天不负有心人,笔者还是把他弄懂了 其实这里就是看懂一幅图,两个寄存器,明白工作原理就可以了 这是比较器A的逻辑图,比价器A由4个部分组成 标号1:内部参考电压发生器,可以产生0.25V,0.50v的参考电压 标号2,:外部电压输入端,CA0对应P2....
- Aguilera 微控制器 MCU
- MSP430G2553 模数转换器 ADC10
- 一、ADC10组成ADC10模块是MSP430 MCU内部的一个高性能、10位的模数转换器,包含了SAR(Successive-Approximation-Register) core、采样选择控制、基准源发生器和DTC(Data Transfer Controller)。DTC功能允许采样结果直接内部存储,而不需要CPU的干预。二、相关寄存器主要寄存器及功能有:ADC10AEx:模拟输入使能,用...
- 灞波儿奔 微控制器 MCU
- MSP430G2553+SD卡+DA转换器的MP3播放器
- 本帖最后由 xiongpb 于 2015-6-1 15:39 编辑 为了参加学校的电子系统设计大赛,这两个星期用MSP430的LAUNCHPAD做了一个可以播放WAV格式音频的音乐播放器,由于是直接用DA输出然后音频放大输出,所以不能播放MP3格式的音乐,但总的还是达到了开始预想的结果,先在这里给大家分享一下播放的效果,以后有时间了再做详细的介绍。以后可能很少待实验室了,要准备考研去了,,,,...
- xiongpb 微控制器 MCU