无刷电机
概念辨析
无刷直流电机
无刷减速电机
直流无刷减速电机
1.减速:减速电机是指减速机和电机(马达)的集成体。这种集成体通常也可称为齿轮马达或齿轮电机。
2.无刷:无刷是直流电机的一个种类(直流电机分无刷和有刷)。常用的是有刷,无刷和有刷区别自行百度。
3.直流:电机在直流电下工作,与异步电机、同步电机在交流电下工作形成对比
4.电机:电机这个词本身指的是电动机、发动机和原动机等“动力设备”,不是单指电动机。生活中,我们所谓的电机绝大部分指的就是电动机。
5.马达:电机和马达是一个东西,马达是俗称
入门
直接从应用开始,我们在某宝上买来的无刷电机,怎么用呢,从这里开始介绍,设计的原理会在后面介绍
图源于某宝
首先介绍五线控制方法
红黑:用于供电,不必多说
白色:CW/CCW是双脉冲工作方式,是用于电机驱动的;CW为正转脉冲信号,CCW为反转脉冲信号,通常都是差分方式输出,两信号相位差90度,根据相位超前或滞后来决定旋转方向,脉冲数决定电机转动角度。
黄色:记录脉冲数,等会用于算电机的转动角度
蓝色:脉宽调制也叫PWM;
大致有印象后,我们来介绍BLDC,BLDC可以被叫做无刷直流电机,方波和正弦波都是可以去驱动电机的,分别对应BLDC和PMSM(永磁同步电机)(控制PMSM电机就会用到把方波等效为带正弦波的操作)
接下来介绍如何征服这个电机,怎么让它让我们想要的方式旋转,就要引入控制算法,FOC
核心
当知道我们采用BLDC驱动电机后,介绍FOC算法,也可以叫磁场控制方法
FOC算法
这是一种驱动BLDC或PMSM电机的算法,能够精确控制电机,并且能够让电机在极低转速下保持力矩和稳定性
下面这个链接讲的很好
FOC算法是基于位置传感器的测量去设定合适的电压
FOC控制中主要会用到三个PID环,电流环、速度环、位置环
电流反馈控制电流环(也可以叫力矩环),电流的大小与扭矩成正比 (电流可以直接控制力矩,如果用电压控制力矩,对于不同的电机,给相同的电压,产生的力矩不同)
扭矩控制电机的转速(速度环),用电流变换的频率来可换力的大小,从而控制电机的转速
电机转速控制电机位(可以叫角度环),控制速度的持续时间反应电机的位置
写代码进行的是对这三个环的控制
代码
理论结束了就是代码部分了
主要讲三个模块
相电压计算算法(调制): setPhaseVoltage()
这里用的是SPWM(想办法用方波去模拟正弦波)控制
电机和传感器校准: initFOC()
实时执行: loopFOC()
应该尽可能地快地去执行 频率最好>1KHZ
准备工作
1.准备好位置传感器、编码器、驱动器、电流检测(是驱动器的一个功能)
2.开始配置无刷直流电机
无刷直流电机的配置
基础配置
1.首先确定电机的极对数(极对数就是电动机的磁极数,NS为一组,那个组数)
2.连接传感器、驱动器、电流传感器(这个到时候英飞凌方案应该会给你配置好,这些就有点像".h"里面的东西)
3.FOC力矩的控制需要正弦电流,所以我们用SPWM控制
校准
1.校准位置传感器、编码器、电机的相电阻(参考三相电的相)
选择力矩模式
选择FOC模式(具体方式见上面那张图)
电机控制
参数设置
1.三个环,力矩环、速度环、角度环(通常只需P控制),后面两个环有对应的PID参数
其中后面两个环是传统的PID控制,第一个力矩环,因为涉及到电流的变化,所以用的是FOC算法
其实后面两个环开环控制也可以
那其实力矩环内也是有PID的,但我觉得FOC算法应该英飞凌方案会直接给你,里面的不用再写了,但其实也是可以去调的,主要是电流进行操作。
至此无刷电机的初始化结束
函数 loopFOC()
的行为直接取决于力矩控制模式。
如果是使用电压模式,它从传感器中获取当前的电机角度,转变为电角度并将q轴的Uq电压指令 motor.voltage_q
转换为适当的相位电压 ua, ub 和 uc ,把它们输出到电机上。
而如果它用于DC或FOC current模式,它还会读取电流传感器并运行闭环电流控制。
原本我们可能对编码器设置的是目标转速,而现在我们对于无刷电机设置的是目标电压,这个电压会反应电机转速
更新于2021年12月6日
1.无感无刷电机中的无感,这个“感”指霍尔元件(霍尔传感器),使用霍尔元件的目的是去获取位置(角度)信息,如果能有其他的方式,就可以不用霍尔元件。其他的方式例如:编码器、磁力传感器。
无感还可以指不需要编码器等额外的传感器
2.这篇文章很赞
稚晖君对FOC的文章
版权声明:本文为CSDN博主「贪玩的yl」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_49453728/article/details/121636705
暂无评论