变速驱动(VSD)电机为大幅降低能源消耗和对外国燃料的依赖带来了希望。一种方法是使用数字信号
处理器 (DSP) 为无刷直流 (BLDC) 电机等电机创建新一代基于 VSD 的控制器。
然而,这些电机也面临着挑战。使用传统的比例、积分和微分 (PID) 控制器时,控制 BLDC 电机的电机速度非常复杂,因为它们依赖于复杂的数学模型并且计算量大。另一种方法是使用模糊逻辑 (FL) 算法来消除对复杂数学公式的需求并提供易于理解的解决方案。与 PID 控制器相比,FL 电机控制的开发周期也更短,因此上市时间也更快。本文讨论使用 FL 算法通过 Texas I
NStruments c28xx 定点 DSP 系列控制 BLDC 电机的过程。
BLDC 控制模型开发
在构造 FL
发动机之前,我们必须首先开发一个模型作为设计的基础。FL 控制器使用启发式知识并使用模型的语言描述来表达设计。我们不会从头开始开发模型,而是使用 PID 控制器模型作为起点。一旦开发并实现,FL控制器就可以通过调整其参数来改进。
一般来说,开发 FL BLDC 控制器有三个设计步骤:
1. 定义输入、输出和控制器的操作范围。
2. 定义模糊隶属度集函数和规则。
3. 调整发动机。
图 1 显示了 BLDC 控制器模型的框图。
查看全尺寸图像
步是定义模型的相关输入和输出。输入为误差 (E),即设定速度 (SS) 和当前速度 (CS) 之间的当前误差。另一个输入是误差变化 (CE),它是当前误差与之前计算的误差 (PE) 之间的差值。输出是电枢电压(CV)的变化,即当前电枢电压(CAV)与先前电枢电压(PAV)的存储值之间的差值。得到的模型方程如下:
E = SS – CS
CE = E – PE
CV = CAV – PAV
电机速度单位为每分钟转数 (RPM),E 决定我们与目标速度的接近程度。因此,当E > 0 时,电机速度低于设定速度。或者,E < 0 表示电机旋转速度快于设定速度。CE 确定控制器的调整方向。当且仅当 (iff) 当前速度小于设定速度时,CE 为正。或者,当且仅当当前速度大于设定速度时,CE 为负。当接近设定速度时,CE 在正值和负值之间交替。CV 是施加到电枢的激励电压。该电压在实现中表示为脉宽调制 (PWM) 占空比。
下一步是定义模糊隶属度集函数、变量和规则。为了工作,非模糊(清晰)的输入和输出必须转换为模糊的。转换是通过使用语言变量来表示输入和输出范围来执行的。这些也称为模糊变量。模糊变量用于划分隶属函数的值区域。例如,使用五个变量来映射输入和输出。它们是负中(NM)、负小(NS)、零(Z)、正小(PS)和正中(PM)。该模型的输入和输出是由五个模糊变量在操作范围内描述的隶属集函数。
FL 控制器不使用数学公式,而是使用模糊规则来做出决策并生成输出;多么酷啊?FL 规则采用 IF-THEN 语句的形式。模糊规则决定系统行为,而不是复杂的数学方程。例如,如果误差 (E) 等于 NM,误差变化 (CE) 等于 PS,则电枢电压 (CV) 的变化等于 NS。使用的规则数量基于设计者的经验和系统的知识。因此,对于我们的系统,使用的规则数量为 25 个,这是基于使用 PID 控制面的基本 PID 控制器模型。
为了给电枢通电,CV 模糊输出必须转换回清晰输出。这个过程称为去模糊化。 使用一种流行的去模糊方法,称为重心法;稍后我将更详细地讨论它。
设计的一步是调整会员功能和规则。此阶段也称为调优。调整用于提高 FL 控制器的性能。一旦设计完成,控制器就可以实施了。