龙空技术网

ST电机库5.0完全开源对电机控制软件工程师有何影响?

大方老师进阶上位机 5403

前言:

目前你们对“foc开源算法”大致比较讲究,姐妹们都需要学习一些“foc开源算法”的相关文章。那么小编在网上汇集了一些关于“foc开源算法””的相关文章,希望各位老铁们能喜欢,大家一起来了解一下吧!

ST电机5.0完全开源对电机控制软件工程师有何影响?

安装STMC_SDK后,生成工程比较麻烦,跟安装的版本,插件都有关系,这样子就很难读到开源的代码。

机缘巧合之下,发现可以直接在安装路径下看到源码,路径是D:\Program Files (x86)\STMicroelectronics\MC_SDK_5.3.2\Middlewares\ST\MotorControl\MCSDK\MCLib\Any\Src

一般我是把这类软件装D盘。原厂的源码还是值得初学者学习的,祝大家好运,早日年薪百万!

另外安5.3.2的版本,源码反而比较少,安5.0.1版本,代码丰富一些,还有高频注入的源文件:

STMotor Profiler都更新5.3.2了,听同事说起过ST的开源代码效果一般,自己没用过。

看到有些朋友在"老工程"担忧,这个见仁见智,谈下个人的看法。

据我所知,认识的变频器或者伺服行业老工程,这ST的代码对他们来说意义并不大。比如汇川和英威腾最早做开发的一批人,早2008年,汇川就有1140VAC三相永磁同步电机FOC控制,支持双机主从控制驱动皮带机这类启动力矩要求极高的负载,并且要求双机同步驱动。因为负载太大,一台电机拖不动,需要两台机输出同样的力矩分担负载。

英威腾2008年左右就有1140VAC三相交流异步电机FOC控制,虽然性能不是特别稳定,但是在那个年代基本是最早的破冰者。

1140VAC电机FOC能做220VAC/380VAC/36VDC驱动,只是一个移植的问题吧。

以我有限的经历来看,确实有些老工程师不愿意交流,毕竟电气传动行业都是源于艾默生开枝散叶,裂变的各个公司在开发文化上就要求尽量做到内部保密,这些也可以理解。但是要ST把代码开源对他们造成很大冲击,那就没必要~~

ST为例,基本没HFI的驱动能力。国产公司里已经有不少开发出了基于方波高频注入,脉振高频注入的控制方法和初始位置辨识方法,这类方法主要用IPM,ST主要面向家电和工具市场,很少涉IPM的驱动。

SPM的低速带载能力ST基本没有,包括很多芯片厂家清一色的If+SMO,复杂一点就是If+Luenberger,基本只有中高速能带载。在通用电控行业,无传感PMSM都要求做到20:1的调速范围,即5%额定速度必须输出额定力矩,速度精度满足+/-0.5%,转矩精度+/-5%。用到的方法有电流模型、磁链模型、可以动态补偿If(对于阶跃负载不适用)。

到了高速范围SMO因为速度精度难以达标,基本没有使用在通用电控行业,模型参考自适应因为低速比较差,对参数敏感在工业界鲜有使用。常见的是基于旋转坐标系的拓展反电势法或者磁链模型、电流模型,后两者在全速度范围内都可以使用,不需要切换。以上都是比较常见的方法还有更多衍生的方法就不列举了。

这些方法老工程师们参与了很多。

再说到环路,接触的大多数芯片方案,比如峰Fortior或者技Active-semi,速度环和电流环,弱磁,基本都是一个手动调PI参数的方法,即使要求输入电机参数,也没有考虑建立数学模型进行参数自整定。离线自整定没有,更不用说在线自整定了。电流环也没有考虑过加前馈,更不用说考虑深度弱磁需要的复矢量电流环。转动惯量没辨识过,速度环增益完全靠调试。

以上都是一些基本FOC环路,更加复杂的就包括:低速带载对定子电阻的敏感性问题,在线参数辨识,自适应的死区补偿,弱磁快速退饱和等等。

在伺服或CNC机床、主轴行业,对于在线惯量和负载辨识smoothing卷积、在线自适应滤波,芯片厂家就更加没有积累了。

ST的代码开源对于初学者帮助很大,可以快速上手,建立FOC的总体认识,间接促进了这个行业的整体发展。但是开源的代码距离稳定的产品还是有很大距离,通过开源代码上手了以后,长征才刚刚开始,仍需结合实际的项目同时补充理论基础,继续努力。

毕竟电控不是以代码量取胜,除非汽车行业,还是以手写代码为主MBD比较少。各种具体控制算法和源码,是无穷无尽的。真正重要的是开发和解决问题的方法和思路,加上经验的积累,这是电控的核心,也是无法开源的,只能靠时间孤独的积累。

如果我有幸能遇到老工程师,我会诚心向他们请教学习,也希望朋友们多多交流。

标签: #foc开源算法