amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
查看: 16837|回复: 165

无感FOC源码

  [复制链接]
发表于 2015-11-17 15:21:22 | 显示全部楼层 |阅读模式

附件是英飞凌的基于TLE9879的无感FOC源码,验证可用。
这份代码是完全开源的,全部C语言编写,需要MDK5.0以上版本支持。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2015-11-17 15:30:46 | 显示全部楼层
先行标记。
发表于 2015-11-17 15:37:19 | 显示全部楼层
支持下
发表于 2015-11-17 15:51:16 | 显示全部楼层
丁页!大力顶!有了您论坛更精彩!
发表于 2015-11-17 15:52:40 | 显示全部楼层
现在四轴板块成了电机控制板块
发表于 2015-11-17 16:21:59 | 显示全部楼层
不知道位置估算是不是开放源码
发表于 2015-11-17 16:51:40 | 显示全部楼层
谢谢!               
发表于 2015-11-17 17:21:46 | 显示全部楼层
感谢分享!
发表于 2015-11-17 17:29:54 | 显示全部楼层
谢谢楼主分享。
发表于 2015-11-17 17:36:48 | 显示全部楼层
感谢楼主的验证
发表于 2015-11-17 18:01:42 来自手机 | 显示全部楼层
多谢lz分享~
发表于 2015-11-17 18:15:08 | 显示全部楼层
路过 ,下来看看  。谢谢分享
发表于 2015-11-17 18:52:52 | 显示全部楼层
好..............
发表于 2015-11-17 20:31:57 | 显示全部楼层
有详细的应用手册吗
发表于 2015-11-17 23:39:45 | 显示全部楼层
学习一下
发表于 2015-11-18 09:10:10 | 显示全部楼层
谢谢,下载学习
 楼主| 发表于 2015-11-18 09:15:16 | 显示全部楼层
xsh2005105326 发表于 2015-11-17 16:21
不知道位置估算是不是开放源码

所有源码当然包括位置估算了,是PLL位置估算算法,能不能看懂就看你自己了。
发表于 2015-11-18 09:17:55 | 显示全部楼层
不错,谢谢楼主!
 楼主| 发表于 2015-11-18 09:21:36 | 显示全部楼层
xuezubo 发表于 2015-11-17 20:31
有详细的应用手册吗

不提供手册,本来这个源码也是不公开的,后来我发现已经能下载到,索性就把公开的源码发上来了。
发表于 2015-11-18 09:31:16 | 显示全部楼层
下载了BLHELI的源码还没看呢,先下载了慢慢看
发表于 2015-11-18 10:06:49 | 显示全部楼层
MDK5.14提示Infineon.TLE987x_DFP没有安装,无法编译。这个dfp到哪里找?
发表于 2015-11-18 10:08:47 | 显示全部楼层
本帖最后由 xly 于 2015-11-18 10:15 编辑
guzhongqi 发表于 2015-11-18 09:21
不提供手册,本来这个源码也是不公开的,后来我发现已经能下载到,索性就把公开的源码发上来了。 ...


刚刚下载来编译了下,能成功。感谢提供。环境KEIL5.17版本。
发表于 2015-11-18 10:21:42 | 显示全部楼层
xly 发表于 2015-11-18 10:08
刚刚下载来编译了下,能成功。感谢提供。环境KEIL5.17版本。

你用的MDK哪个版本?
发表于 2015-11-18 10:44:07 | 显示全部楼层
Eastnorth 发表于 2015-11-18 10:21
你用的MDK哪个版本?

5.17版本。
发表于 2015-11-18 11:10:50 | 显示全部楼层
纯C代码没库的么
发表于 2015-11-18 11:19:40 | 显示全部楼层
__ssat();这个函数干什么用的,另外这颗单片机的mdk的pack好像keil网上找不到 谁提供一下
发表于 2015-11-18 11:21:03 来自手机 | 显示全部楼层
楼主索性把原理图也放上来吧
发表于 2015-11-18 12:16:28 | 显示全部楼层
weichao4808335 发表于 2015-11-18 11:21
楼主索性把原理图也放上来吧




原理图在文件中。
MDK5.14如何加入TLE987x的pack?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2015-11-18 13:43:28 | 显示全部楼层
本帖最后由 mandylion2008 于 2015-11-18 13:55 编辑

多谢提供!好像ST的一个讲座PDF中有关于PLL方法的介绍。
最快能支持到多少转速?
有空移植一下,--SSAT()这个函数是用来做饱和运算的,这个在MICROCHIP的AN1078中有专门的DSP指令。
发表于 2015-11-18 13:55:42 | 显示全部楼层
感谢楼主分享呀
发表于 2015-11-18 15:35:10 | 显示全部楼层
ST的电机库 有感FOC 楼主关注过吗?
 楼主| 发表于 2015-11-19 08:28:46 | 显示全部楼层
linjing530 发表于 2015-11-18 15:35
ST的电机库 有感FOC 楼主关注过吗?

ST的库也看过,不是全部开源的,开源的部分价值也不大,因为不能移植。
STM32做电机控制不如英飞凌的XMC有优势,这个TLE9879的特点是集成度高,24V以内的无刷电机直接加6个MOS管就可以驱动了,不需要DCDC和预驱芯片。
发表于 2015-11-19 09:59:22 | 显示全部楼层
好东西,要MARK一下
发表于 2015-11-19 10:49:39 | 显示全部楼层
本帖最后由 mandylion2008 于 2015-11-19 10:50 编辑

刚刚仔细看了一下这个TLE9879的KIT原理图,原来还是单电阻采样的搞法!
但是单电阻的方案是不能适应航模电调那种需要高动态响应的应用场合的,但是作为稳定运行的风机,水泵之类的还是不错的,毕竟只用一个电阻采样,成本会小一点点。

但是驱动、降压、单片机放一块还是比较有利于小型化的。
 楼主| 发表于 2015-11-19 10:56:09 | 显示全部楼层
mandylion2008 发表于 2015-11-19 10:49
刚刚仔细看了一下这个TLE9879的KIT原理图,原来还是单电阻采样的搞法!
但是单电阻的方案是不能适应航模电 ...

是的,这个主要是针对汽车风机水泵应用的,调速也不是什么大问题吧,我现在就是调速的。
 楼主| 发表于 2015-11-19 10:57:33 | 显示全部楼层
mandylion2008 发表于 2015-11-19 10:49
刚刚仔细看了一下这个TLE9879的KIT原理图,原来还是单电阻采样的搞法!
但是单电阻的方案是不能适应航模电 ...

高转速高响应可能确实做不了
发表于 2015-11-19 12:11:28 | 显示全部楼层

好东西,要MARK一下
发表于 2015-11-19 13:07:32 | 显示全部楼层
mandylion2008 发表于 2015-11-19 10:49
刚刚仔细看了一下这个TLE9879的KIT原理图,原来还是单电阻采样的搞法!
但是单电阻的方案是不能适应航模电 ...

听说IR的方案在零度那里调试通过了,就是单电阻
发表于 2015-11-19 13:23:57 | 显示全部楼层
本帖最后由 mandylion2008 于 2015-11-19 13:28 编辑
梦幻之旅 发表于 2015-11-19 13:07
听说IR的方案在零度那里调试通过了,就是单电阻


应该不会!
看来老兄你对模型电调行业了解挺深的啊。
用单电阻肯定比不过多电阻的,算法决定了,x度如果真的使用的话,我觉得应该是一个暂时的折衷方案,既要比TI的方案要便宜,且不与DJI相同,以示自主,在没有完全掌握这个技术的条件下也要做到尽可能不受人制约,所以IR的方案就又被推出来了,至于响应快不快并不太重要(我用FOC要把精灵2的感度都调的快到下限了),关键是便宜,够用,能量产可靠就行。玩家一般听到没有声音就很高兴了,FOC真的很安静呢!

本来对电调已经不会再爱了,但是最近这几天好像突然间有很多人对无感FOC感兴趣了,也许我得放一个使用我最新的、和TI INSTA-FOC的启动算法几乎一样的启动算法来展示一下,先把手头的事忙完再说。。。
发表于 2015-11-19 13:25:23 来自手机 | 显示全部楼层
感谢楼主,好东西
发表于 2015-11-19 13:25:42 | 显示全部楼层
guzhongqi 发表于 2015-11-19 10:56
是的,这个主要是针对汽车风机水泵应用的,调速也不是什么大问题吧,我现在就是调速的。 ...

这个算法的启动如何呢?大家可能都会很感兴趣的。
有空放个视频吧。
发表于 2015-11-19 13:27:55 | 显示全部楼层
英飞凌的片子还是那么难买么?
发表于 2015-11-19 13:31:43 | 显示全部楼层
本帖最后由 mandylion2008 于 2015-11-19 13:32 编辑
xl1736 发表于 2015-11-19 13:27
英飞凌的片子还是那么难买么?


英飞凌的片子很好买啊!
样片找代理要,如果要你填单就免谈,量大叫他们派个背包的兄弟过来就可以了。
我手上好多XMC1301的片子,够我用的。
发表于 2015-11-19 14:35:24 | 显示全部楼层
mandylion2008 发表于 2015-11-19 13:23
应该不会!
看来老兄你对模型电调行业了解挺深的啊。
用单电阻肯定比不过多电阻的,算法决定了,x度如果 ...

单电阻为什么动态性能不够呢?
发表于 2015-11-20 17:01:37 | 显示全部楼层
感谢楼主
发表于 2015-11-20 20:22:59 来自手机 | 显示全部楼层
下载来看看
发表于 2015-11-20 21:34:13 来自手机 | 显示全部楼层
都是专业大牛
发表于 2015-11-21 11:21:17 | 显示全部楼层
最近也在研究bldc foc,谢谢!
发表于 2015-11-21 14:00:33 | 显示全部楼层
是什么时候的代码,什么时候开源的啊
发表于 2015-11-21 14:02:58 | 显示全部楼层
mandylion2008 发表于 2015-11-19 13:23
应该不会!
看来老兄你对模型电调行业了解挺深的啊。
用单电阻肯定比不过多电阻的,算法决定了,x度如果 ...

厉害,可以的话,简单的说说
发表于 2015-11-21 14:38:55 | 显示全部楼层
有相关的说明文档吗?谢谢
发表于 2015-11-21 19:44:01 来自手机 | 显示全部楼层
显标记下,五感foc
发表于 2015-11-22 11:48:20 | 显示全部楼层
顶顶                           
发表于 2015-11-22 21:16:18 | 显示全部楼层
多谢楼主分享
发表于 2015-11-27 19:33:05 | 显示全部楼层
        /* KI current regulator parameter          **
发表于 2015-11-27 19:34:14 | 显示全部楼层
        /* KI current regulator parameter          **
        ** 5.0 => 5V ADC referenc voltage          */
        KI=5.0*2.0/(Emo_Focpar_Cfg.Rshunt*OpGain);
        /* KU voltage regulator parameter          **
        ** 12.0 => normalization to 12V            **
        ** 645.0 => space vector modulation factor **
        ** 16.0 =>  for DC-Link alignment          */
  KU=(12.0*645.0*16.0)/(Emo_Svm.MaxAmp*sqrt(3.0));
谁能解释下,KI和KU的算的什么意思啊,看不懂
发表于 2015-11-27 20:21:18 | 显示全部楼层
多谢分享!
发表于 2015-11-27 20:37:52 | 显示全部楼层
赞!!
最新的DAVE貌似已经不能生成FOC代码了。。。。
发表于 2015-12-1 14:03:39 | 显示全部楼层
谢谢,学习中.
发表于 2015-12-1 16:02:30 | 显示全部楼层
Eastnorth 发表于 2015-11-18 12:16
原理图在文件中。
MDK5.14如何加入TLE987x的pack?

我的Keil 5.17安装DFP也等了好久,分享一下下载完成的TLE987x的pack给大家吧。文件有点大,去百度网盘分享下:
链接:http://pan.baidu.com/s/1bnyVLSV 密码:nakw
发表于 2015-12-1 16:46:20 来自手机 | 显示全部楼层
谢谢分享。
发表于 2015-12-2 21:05:13 | 显示全部楼层
都是无感大牛啊! 进来学习学习
发表于 2015-12-4 12:07:08 | 显示全部楼层
为了下载这个源程序我也是蛮拼的了,请问这个算法执行耗时多少?
发表于 2015-12-10 16:47:41 | 显示全部楼层
/* KI current regulator parameter          **
        ** 5.0 => 5V ADC referenc voltage          */
        KI=5.0*2.0/(Emo_Focpar_Cfg.Rshunt*OpGain);
        /* KU voltage regulator parameter          **
        ** 12.0 => normalization to 12V            **
        ** 645.0 => space vector modulation factor **
        ** 16.0 =>  for DC-Link alignment          */
  KU=(12.0*645.0*16.0)/(Emo_Svm.MaxAmp*sqrt(3.0));
楼主能解释下,怎么做归一化处理的,还有就是电压归一化的时候16是什么意思,谢谢
 楼主| 发表于 2015-12-11 14:47:54 | 显示全部楼层
leeloo 发表于 2015-12-10 16:47
/* KI current regulator parameter          **
        ** 5.0 => 5V ADC referenc voltage          */ ...

我不负责答疑解惑,毕竟也不是我自己写的代码。
发表于 2015-12-18 18:54:18 | 显示全部楼层
各位服不服,我服了!
还有人在淘宝网上以5块的价钱进行贩卖了。
 楼主| 发表于 2015-12-19 15:22:01 | 显示全部楼层
mandylion2008 发表于 2015-12-18 18:54
各位服不服,我服了!
还有人在淘宝网上以5块的价钱进行贩卖了。

我都没想到还能卖钱,真是人才啊!
发表于 2015-12-19 20:13:21 | 显示全部楼层
guzhongqi 发表于 2015-12-19 15:22
我都没想到还能卖钱,真是人才啊!

所以你就知道在中国搞开源是多么天真的想法了!
发表于 2015-12-20 14:17:22 | 显示全部楼层
大力顶!有了您论坛更精彩!
发表于 2015-12-28 09:59:07 | 显示全部楼层
多谢楼主分享
发表于 2016-1-26 10:51:05 | 显示全部楼层
感谢分享,最近刚好在学这个,。非常有用
发表于 2016-1-26 11:53:29 | 显示全部楼层
XIEXIE楼主
发表于 2016-2-25 15:42:14 | 显示全部楼层
这代码 关于启动如何?
发表于 2016-2-25 17:16:51 | 显示全部楼层
mrcricket 发表于 2016-2-25 15:42
这代码 关于启动如何?


放心,没有人会给出真正的启动代码,TI 的INSTA FOCA就是靠这个吃饭的,他的东西都是固化在芯片内部,只能调用函数的。
推荐高频注入,杠杠的!
发表于 2016-2-25 17:23:43 | 显示全部楼层
感谢分享,琢磨研究中
 楼主| 发表于 2016-2-26 09:08:59 | 显示全部楼层
mandylion2008 发表于 2016-2-25 17:16
放心,没有人会给出真正的启动代码,TI 的INSTA FOCA就是靠这个吃饭的,他的东西都是固化在芯片内部,只 ...

这个代码是开环启动的,做做水泵还行,可能风机都做不了(有风的情况)。
发表于 2016-2-26 14:32:28 | 显示全部楼层
只有自己搞懂了  自己写代码才算真正掌握   调用函数的话 还是受制于人   又不好移植   
开源代码真是好东西
发表于 2016-2-28 20:32:26 | 显示全部楼层
弱弱的问一句额   大家说的FOC的启动指的是什么啊?

我刚开始启动的就直接输出SVPWM就可以启动了

后来发现ST的方案是 Iq = 0 Id慢慢往上加  加到一个固定的位置 然后再切换到整套的FOC算法   这样比直接执行FOC启动要快很多

各位说的启动时啥呢?

发表于 2016-2-28 21:14:02 | 显示全部楼层
有文档就好
 楼主| 发表于 2016-2-29 09:00:59 | 显示全部楼层
你贼漂亮 发表于 2016-2-28 20:32
弱弱的问一句额   大家说的FOC的启动指的是什么啊?

我刚开始启动的就直接输出SVPWM就可以启动了

FOC要稳定运行最关键的就是要有实时的转子位置信息,不管是用编码器、有霍尔还是无传感器,电机在上电启动的时候是不知道当前转子的位置的,只有转起来了才能测量或估算转子确切的位置(高频注入可以在零转速估算转子位置,但并不适用所有电机),所以电机怎样可靠稳定的启动就非常关键,尤其是带载启动更为困难。
发表于 2016-2-29 09:53:08 | 显示全部楼层
你贼漂亮 发表于 2016-2-28 20:32
弱弱的问一句额   大家说的FOC的启动指的是什么啊?

我刚开始启动的就直接输出SVPWM就可以启动了

是不是没有带负载啊!
发表于 2016-2-29 13:59:44 | 显示全部楼层
正在找,谢谢
发表于 2016-2-29 19:57:47 | 显示全部楼层
guzhongqi 发表于 2016-2-29 09:00
FOC要稳定运行最关键的就是要有实时的转子位置信息,不管是用编码器、有霍尔还是无传感器,电机在上电启 ...

你说的很对,我就是使电机先转起来之后再检测的转子位置    重载启动还没有试过额    轻载可以
发表于 2016-2-29 19:59:04 | 显示全部楼层
mandylion2008 发表于 2016-2-29 09:53
是不是没有带负载啊!

轻载运行的~          大神一下就知道问题的关键了,厉害啊
发表于 2016-3-2 20:38:32 | 显示全部楼层
好东西,mark
发表于 2016-3-16 20:32:01 | 显示全部楼层
谢谢了!!!希望在楼主帮助下早日学会无感FOC
发表于 2016-3-17 17:38:11 | 显示全部楼层
弄下来看看先
发表于 2016-3-19 14:04:34 | 显示全部楼层
哇哦!感谢感谢。
发表于 2016-3-21 23:52:12 | 显示全部楼层
都是高手。海绵宝宝一直都是学习榜样。
发表于 2016-4-5 13:15:04 | 显示全部楼层
不错,下载了,学习下,
发表于 2016-4-13 21:27:56 | 显示全部楼层
正好需要,感谢,先回复后下载
发表于 2016-4-14 05:06:32 | 显示全部楼层
感谢楼主分享.FOC挺难的。
发表于 2016-4-14 08:25:51 | 显示全部楼层
谢谢分享。。。
发表于 2016-4-17 03:54:46 | 显示全部楼层
感谢分享!!!
发表于 2016-4-19 22:48:32 | 显示全部楼层
感谢楼主分享
发表于 2016-4-20 11:02:28 | 显示全部楼层
感谢分享!
发表于 2016-4-21 10:30:11 来自手机 | 显示全部楼层
感谢楼主分享,好帖收藏了。
发表于 2016-4-22 15:47:44 | 显示全部楼层
MARK,刚好学习用。
发表于 2016-4-23 21:01:58 | 显示全部楼层
楼主辛苦了,刚好要用这个芯片
发表于 2016-5-8 10:26:19 | 显示全部楼层
guzhongqi 发表于 2015-11-18 09:21
不提供手册,本来这个源码也是不公开的,后来我发现已经能下载到,索性就把公开的源码发上来了。 ...

请问LZ 是从哪里下载到的这份代码?

sensorless部分感觉很诡异,
有PLL 貌似还有滑膜
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 粤ICP备09047143号 )

GMT+8, 2017-7-22 06:33

阿莫电子论坛, 原"中国电子开发网"

© 2004-2016 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表