电机优化设计基础
1. 电机设计问题
电机设计主要包含两个阶段:尺寸计算阶段和验证计算阶段。
在尺寸计算阶段,需根据电机设计规格来选择材料、确定拓扑结构,并计算所有几何参数。由于电机性能指标与几何尺寸之间的关系复杂且非线性,难以通过一组反函数从性能指标直接得出几何尺寸。即:
[p_i = f_i (X)]
[i = 1, n]
其中,(p_i) 是设计规格中的性能指标,(X) 是几何变量和材料属性向量,(f_i) 是复杂的非线性函数。通常,满足 (p_i) 的变量向量 (X) 不止一个,而且对于某些设计规格,特定类型的电机可能不存在设计解决方案。
经典的非优化设计会寻找一个能满足大部分(甚至全部)设计规格的解决方案 (X)。而优化设计则在掌握所有可行变量值的大部分后,选择满足给定最优准则(如最小初始成本、最小重量或最大效率)的解决方案。
由于无法通过 (f_i) 的反函数确定几何变量向量,通常会根据以往经验选择电应力和磁应力(如电流密度、线性电流负载、磁通密度、转子剪切应力等),并给出一些详细的槽几何参数,如气隙处的槽开口或槽楔厚度。然后,利用电学定律(麦克斯韦方程)和几何关系计算所有几何参数。但由于电应力和磁应力是任意选择的,不能保证几何变量向量 (X) 满足设计规格 (p_i),因此性能验证是设计过程中必不可少的一部分。
验证计算包括:
- 电磁验证
- 热验证
- 机械验证
一般来说,为了满足性能 (p_i),尺寸计算可能需要重复多次。因此,即使在经典设计中,几何尺寸也是通过迭代确定的。迭代次数取决于每次验证计算后改变电/磁应力的策略。为了减少迭代次数,需要建立电/磁应力变化与几何参数变化之间的关联。不过,除了经验丰富的设计师,迭代次数通常仍然较高。
经典设计方法的流程如下:
graph LR
A[设计规格] --> B[选择电磁应力]
B --> C[尺寸计算]
C --> D[电磁验证]
C --> E[热验证]
C --> F[机械验证]
D --> |是| G[编制技术文件]
E --> |是| G
F --> |是| G
D --> |否| H[选择新的电磁应力和初步通用格式]
E --> |否| H
F --> |否| H
H --> C
优化设计规格通常包含最低性能要求和一个目标函数。初始电磁应力和几何参数可以由设计师指定,也可以通过特定程序在指定范围内随机生成。尺寸和参数计算与经典设计类似,但还会计算目标函数。然后进行电磁、热和机械验证计算,对于每个不合适的性能指标,会在目标函数中添加惩罚项。如果惩罚系数足够高,最终设计解决方案将满足这些要求。
优化设计的流程如下:
graph LR
A[设计规格(最低规格、目标函数)] --> B[电磁应力和初始几何变量值]
B --> C[尺寸计算]
C --> D[参数计算]
D --> E[目标函数评估]
E --> F[电磁验证]
E --> G[热验证]
E --> H[机械验证]
F --> |是| I{目标函数是否最小?}
G --> |是| I
H --> |是| I
F --> |否| J[向目标函数添加惩罚项]
G --> |否| J
H --> |否| J
J --> K["调整电磁应力和几何变量以改善目标函数"]
K --> C
I --> |是| L[编制技术文件]
I --> |否| K
2. 优化方法
优化从数学、科学和经济学的角度有多种定义,简单来说,优化是在给定情况下获得最佳结果的行为。对于电机,优化可应用于电机(驱动)设计过程,以在满足给定标准的同时,实现最低生产成本和最佳电机(驱动)性能,也可用于驱动/发电机控制。
电机设计的优化标准可以是降低生产成本、提高电机性能,或同时实现两者。生产成本结构复杂,包括:
- 制造电机所用的材料,可分为有源材料(如定子和转子线圈、软磁材料芯和永磁体)和无源材料(如轴承、轴、框架、通风(冷却)系统、绕组端子和接线盒)
- 电机制造过程中使用的材料和能源
- 生产设施成本
- 设计成本,包括优化成本
- 推广成本、营销成本等
本文主要关注有源材料成本的优化,这是降低总体成本的一个重要方面。生产设施对有源材料成本的影响通过技术限制和技术因素来考虑,这些因素是有源材料优化算法中的常量输入。例如,槽填充系数对电机性能(如单位体积转矩)有重要影响,它取决于绕组技术。自动绕线机的槽填充系数通常小于 0.35,而熟练工人手工绕线的槽填充系数可高达 0.7。提高绕组槽填充系数可降低有源材料成本,但需要更好的生产设施。
优化过程会产生磁性铁芯叠片的新几何尺寸。引入新的叠片几何形状到生产中成本较高,因为需要新的冲床。因此,需要研究新机器的成本以及投资回报所需的时间。在相同标准下(为简单起见,仅考虑有源材料成本),最优叠片尺寸取决于有源材料的价格。由于材料价格变化动态性高,磁性叠片的几何尺寸会随时间变化。只有当有源材料成本降低足以补偿新设施成本,并在持续的投资回收期内实现时,新的优化电机才会投入生产。市场价格预测对此也很有帮助。
电机的最低成本并不一定意味着对用户来说是最优的。用户评估电机最优设计的标准还包括良好的效率和较低的初始价格,这两个要求看似相互矛盾,但在最大效率和较低电机成本之间存在一个最优平衡点。在许多应用中,电机的可靠性比成本更重要。
优化设计在数学上表现为最小化目标函数 (f_{ob}),它取决于优化变量向量 (X) 和一组约束条件((g_i (X)) 为不等式约束,(h_i (X)) 为等式约束)。通常,优化变量域有上下界:
[
\begin{cases}
\text{find } X \text{ to minimize } f_{ob}(X) \
g_i(X) \leq 0, & 1 \leq i \leq m \
h_i(X) = 0, & 1 \leq i \leq k \
x_{i \min} \leq x_i \leq x_{i \max}, & 1 \leq i \leq n
\end{cases}
]
在电机设计中,目标函数可以是有源材料的成本、有源材料的重量、电机能源效率或它们的组合。常见的约束条件包括电机过热小于可接受的温度值、转矩或功率大于所需值、启动电流小于最大可接受值、转矩脉动小于可接受值以及技术限制。目标函数 (f_{ob}) 和约束函数 (g_i)、(h_i) 是复杂函数,通常没有解析表达式来求其导数,因此像增广拉格朗日乘数法等解析方法无法应用。等式约束可以通过选择合适的优化变量来消除,但有时新的优化变量会使目标函数变得更复杂。
有几种数值方法可用于解决上述优化问题,但数值方法的主要缺点是算法可能收敛到局部最优解,而局部最优解可能远离全局最优解。为了增加找到全局最小值的概率,可以从多个初始点开始优化算法。另一种方法是使用进化算法,如遗传算法,它处理一组设计向量。模拟退火算法也有更好的机会达到全局最优,因为它有时允许根据虚拟温度逆着目标函数梯度移动。
一大类优化算法涉及搜索方法。许多搜索算法用于解决无约束优化问题,同样的方法也可用于有约束问题,但需要检查优化向量是否属于可行域(即所有约束条件是否满足)。惩罚函数是将约束问题转化为等价无约束问题的另一类方法,等价目标函数变为:
[F(X) = f(X) + r_k \sum_{i=1}^{m} G_i(g_i (X))]
惩罚函数 (G_i) 分为两类:内部惩罚函数和外部惩罚函数。如果使用内部惩罚函数,最优解的轨迹会改变,但仍在可行域内。当 (r_k) 常数减小时,使等价函数 (f(X)) 最小化的向量会接近使初始目标函数 (f(X)) 最小化的向量。通过外推向量 (X(r_k)) 系列到 (r_k = 0),可以得到使初始目标函数最小化的向量。常见的内部惩罚函数有:
[G_i = -\frac{1}{g_i (X)}]
[G_i = \log (-g_i (X))]
如果使用外部惩罚函数,当目标函数 (f(X)) 的最小值在可行域内时,使等价目标函数最小化的向量轨迹与使目标函数 (f(X)) 最小化的向量轨迹重合;当 (f(X)) 的最小值在可行域外时,该向量轨迹在可行域外。随着惩罚因子 (r_k) 增加,外部向量轨迹会向可行域移动。当惩罚因子趋于无穷大时,解的轨迹趋于可行域边界。常见的外部惩罚函数有:
[G_i = \max (0, g_i (X))]
[G_i = [\max (0, g_i (X))]^2]
3. 最优电流控制
电机的转矩由一对磁化电流和转矩电流产生。最优控制问题之一是最小化电机损耗或电流。以感应电机的稳态转子磁场控制为例,优化向量有两个变量:磁化电流和转矩电流,它们被视为相电流分量。同时存在两个约束条件:一个是通过转矩方程给出的等式约束,另一个是不等式约束,即所需的定子电压应小于或等于可用电压。由于定子电压取决于电机速度,第二个约束是参数约束。
对于足够小的速度,电压约束不影响最优电流解,此时优化问题变为:
[i_1 = \sqrt{i_M^2 + i_T^2}]
[T = 3p_1 \frac{L_m}{L_r} L_m i_M i_T = 3p_1 L_{mr} i_M i_T]
这是一个有两个变量和一个等式约束的优化问题。可以通过等式约束消除一个变量,通常磁化电感取决于磁化电流,但可认为与转矩电流无关。因此,可从转矩方程计算转矩电流并代入电流表达式:
[i_1 = \sqrt{i_M^2 + (\frac{T}{3p_1 L_{mr}})^2 \frac{1}{i_M^2}}]
为了便于求解,将目标函数替换为具有相同极值点的简单函数:
[f_{obj} = i_M^2 + (\frac{T}{3p_1 L_{mr}})^2 \frac{1}{i_M^2}]
最小电流发生在以下方程的解处:
[\frac{\partial f_{obj}}{\partial i_M} = 0]
如果磁化电感为常数,上述方程变为:
[2i_M - 2(\frac{T}{3p_1 L_{mr}})^2 \frac{1}{i_M^3} = 0]
其解析解为:
[i_M = \sqrt{\frac{T}{3p_1 L_{mr}}}]
将磁化电流的最优值代入转矩方程可计算转矩电流。重要的是,当磁化电感为常数时,最小电流在磁化电流等于转矩电流时获得,即:
[i_T = \frac{T}{3p_1 L_{mr} i_M} = \sqrt{\frac{T}{3p_1 L_{mr}}} = i_M]
然而,实际电机中的磁化电感不是常数。以一台具有特定参数的感应电机为例,研究按恒定电感优化原则控制磁化电流和转矩电流时电机的行为。结果表明,对于小转矩,即使模型不准确,电流也会减小;但对于大转矩,考虑优化准则的相电流比 (i_M) 为常数的策略下的电流大。最优控制电流曲线处于两者之间,在低负载时能较好地预测电流。
当考虑磁化电感对磁化电流的依赖时,目标函数的导数是优化的关键,但会得到一个非线性方程:
[i_M^4 = (1 + \frac{i_M}{L_{mr}} \cdot \frac{\partial L_{mr}}{\partial i_M}) (\frac{T}{3p_1 L_{mr}})^2]
由于 (L_{mr}) 电感与磁化电流非线性相关,很多情况下只能通过测量或数值模型获得几个电流下的电感值表,且这些值可能存在测量或数值误差。可以使用基于最小二乘误差最小化的电感与电流的解析近似方法来过滤这些误差。例如,磁化电感曲线可通过以下指数级数近似:
[L_m = c_0 + \sum_{i=1}^{5} c_i e^{-2i \psi_m^2}]
其中,级数系数分别为 (c_0 = 0.002093 H),(c_1 = 3.3311 H),(c_2 = -10.6093 H),(c_3 = 17.1183 H),(c_4 = -13.2716 H),(c_5 = 3.93556 H)。方程变为超越方程,只能通过数值方法求解。若计算转矩与磁化电流的关系:
[T = 3p_1 L_{mr} i_M^2 \frac{1}{\sqrt{1 + \frac{i_M}{L_{mr}} \cdot \frac{\partial L_{mr}}{\partial i_M}}}]
然后从转矩方程计算转矩电流。最优转矩电流与磁化电流的比值 (k_{iopt}) 仅取决于磁化电流和电机结构,这个非线性函数可以存储在表中用于最优控制:
[i_T = \frac{1}{\sqrt{1 + \frac{i_M}{L_{mr}} \cdot \frac{\partial L_{mr}}{\partial i_M}}} i_M = k_{iopt} i_M]
最优电流控制在低转矩时能提高能量性能,但电机在弱磁时动态性能较差。电机建立磁场的时间常数约为建立转矩时间常数的 10 倍,因此最小电流优化仅适用于负载转矩无突然变化且不需要快速转矩响应的情况。定子电流最小化可降低损耗,但不等于最小化总损耗,总损耗的目标函数为:
[p_{loss} = R_1 (I_T^2 + I_M^2) + R_2 I_T^2 + \frac{(\omega_1 L_m)^2}{R_{Fe}} I_M^2 = (R_1 + \frac{(\omega_1 L_m)^2}{R_{Fe}}) I_M^2 + (R_1 + R_2) I_T^2]
在低负载转矩时降低磁化电流以减小定子电流,会降低定子铜损耗,但转矩分量增加,转子笼损耗也会增加。铁损耗随磁化电流减小而减小,但也与速度有关。如果速度较小,铁损耗可忽略不计。通常,最小损耗优化准则给出的磁化电流比最小电流准则略大。
4. 改进的胡克 - 吉维斯优化算法
胡克 - 吉维斯优化算法是一种模式搜索算法,使用探索性移动和模式移动两种方式。下面介绍其改进版本,以使用外部惩罚函数进行约束系统优化。
该优化算法步骤如下:
1.
选择优化变量和常量几何尺寸
:将优化变量分组为向量。以永磁无刷电机为例:
[X = \begin{bmatrix} poles & D_{ext} & w_{st} & w_{c} & h_{c} & h_{sy} & l_{pm} \end{bmatrix}^T]
其中,
poles
是每台原始电机的极数,
Dext
是定子铁芯外径,
wst
是定子齿宽,
wc
是线圈宽度,
hc
是定子槽内线圈高度,
hsy
是轴向定子轭长度,
lpm
是永磁体径向长度。
2.
确定技术限制和几何约束,并选择优化变量范围
:数学表达式为:
[X_{min} \leq X \leq X_{max}]
[g_1 (X) = 0]
[g_2 (X) \leq 0]
其中,(g_1 : \Re^n \to \Re^p) 和 (g_2 : \Re^n \to \Re^q) 是在变量空间上定义的向量函数,分别考虑“p”个等式约束和“q”个不等式约束。
3.
选择目标标量函数
:考虑惩罚函数 (f_p (X)) 后,目标函数为:
[f_p = \sum_{i=1}^{p + q} f_{pi} (g_i (X))]
其中:
[f_{pi} =
\begin{cases}
0 & \text{if } 1 \leq i \leq p \text{ and } g_i (X) = 0 \
0 & \text{if } p + 1 \leq i \text{ and } g_i (X) \leq 0 \
\text{monotonic positive} & \forall \text{otherwise}
\end{cases}
]
最终目标函数为:
[f (X) = f_1 (X) + f_p (X)]
4.
选择优化变量向量的初始值、初始步长向量、最小步长向量和步长更新比率
:步长更新比率 (r) 满足 (0 < r < 1)。
5.
计算所有必要的几何尺寸和电机性能,并评估目标函数 (f_0)
:通过分析模型计算电机性能。
6.
进行局部网格搜索
:沿每个优化变量的正负方向进行搜索,计算目标函数及其梯度:
[h = \begin{bmatrix} h_1, h_2, \cdots, h_n \end{bmatrix} = \begin{bmatrix} \frac{\partial f}{\partial x_1}, \frac{\partial f}{\partial x_2}, \cdots, \frac{\partial f}{\partial x_n} \end{bmatrix}]
偏导数通过三点函数评估数值计算:
[\frac{\partial f}{\partial x_k} =
\begin{cases}
\frac{f_k - f_0}{dx_k} & \text{if } f_{-k} \geq f_0 > f_k \
\frac{f_0 - f_{-k}}{dx_k} & \text{if } f_{-k} < f_0 \leq f_k \
\frac{f_k - f_{-k}}{2dx_k} & \text{if } f_{-k} < f_0 > f_k \
0 & \text{if } f_{-k} > f_0 < f_k
\end{cases}
]
其中,(f_k) 是在点 (X_k) 处的目标函数值,(X_k) 是由 (X_0) 沿 (k) 方向移动 (dx_k) 得到的,(f_{-k}) 同理。
梯度方向的步长为:
[\Delta = (\Delta_1, \Delta_2, \cdots, \Delta_n) = \begin{pmatrix} h_1 \cdot \frac{dx_1}{|h|}, h_2 \cdot \frac{dx_2}{|h|}, \cdots, h_n \cdot \frac{dx_n}{|h|} \end{pmatrix}]
7.
进行优化变量向量移动
:沿梯度方向移动,直到目标函数减小。
8.
重复搜索和梯度移动
:直到搜索无法找到更好的点,即梯度范数 (|h| = 0)。
9.
减小步长并重复上述步骤
:直到达到变量变化的最小值且梯度范数消失。为增加找到全局最小值的概率,算法应使用不同的优化变量初始值多次运行。
目标函数可表示为:
[f = c_i (X) + c_e (X) + c_p (X)]
其中,(c_i) 是初始成本依赖项,(c_e) 是能量损耗成本,(c_p) 是惩罚成本。
初始成本通常是电机的有源材料成本,对于某些应用,还可加上所需的电力电子成本:
[C_i = c_{Cu} m_{Co} + c_{lam} m_{sFe} + c_{Fe} m_{rFe} + c_{PM} m_{PM} + c_{a} m_{t} + c_{pe} \frac{P_n}{pf}]
其中,
Cco
是铜的价格,
Clam
是叠片价格,
CFe
是转子铁价格,
CPM
是永磁体价格,
Ca
是每单位总质量的额外价格,
mt
和
mc0
是绕组质量,
msFe
是定子叠片质量,
mrFe
是转子铁质量,
mPM
是永磁体质量,
Pn
是电机额定功率,
pf
是功率因数,
cpe
是电力电子每伏安的价格。
能量损耗成本表达式为:
[c_e = P_n \left( \frac{1}{\eta (X)} - 1 \right) \cdot t_l \cdot p_e]
考虑负载因子变化的更复杂表达式为:
[c_e = P_n \cdot t_l \cdot p_e \cdot \sum_{j} \left( \frac{1}{\eta_j (X)} - 1 \right) p_{kj} k_j]
其中,(\sum_{j} p_{kj} = 1)。
为满足制造商和客户对初始成本和效率的要求,可修改能量损耗成本函数:
[c_e =
\begin{cases}
P_n \left( \frac{1}{\eta (X)} - \frac{1}{\eta_{min}} \right) \cdot t_l \cdot p_e & \text{if } \eta (X) < \eta_{min} \
0 & \text{if } \eta (X) \geq \eta_{min}
\end{cases}
]
约束惩罚成本由过热惩罚成本和永磁体退磁惩罚成本组成:
[c_p = c_{pt} + c_{pdm}]
过热惩罚成本:
[c_{pt} = c_{pts} + c_{ptr}]
[c_{pts} = \max (0, T_w - T_{wad}) \cdot k_{ts} \cdot c_i]
[c_{ptr} = \max (0, T_r - T_{rad}) \cdot k_{tr} \cdot c_i]
永磁体退磁惩罚成本:
[c_{pdm} = \max \left( 0, -\frac{\min (\Phi_{PMdm})}{\Phi_{PM0}} \right) \cdot k_{dm} \cdot c_i]
5. 使用遗传算法的电机设计
在模式搜索优化算法之后,介绍一种进化算法——遗传算法。遗传算法通过特定选择规则,使一组候选解进化到使成本函数最小的状态。
开发用于电机最优设计的遗传算法步骤如下:
1.
选择优化变量、其最小值和最大值以及分辨率
:部分优化变量可能为整数,此时分辨率为 1。无需为优化向量提供初始值。
2.
选择优化向量的遗传编码
:有二进制编码和连续(实数)编码两种方法。
3.
选择目标函数并开发分析模型
:从优化变量向量评估目标函数,也可使用有限元法(FEM),但需完整的参数化模型。
4.
选择选择算法和停止准则
:选择算法用于生成下一代成员,停止准则用于确定算法何时停止。
每个变量二进制编码所需的位数 (n_{bit}) 计算如下:
[n_{vx} (i) = \lceil \frac{X_{max} (i) - X_{min} (i)}{r_x (i)} \rceil]
[n_{bit} (i) = 1 + \lfloor \log_2 (n_{vx} (i)) \rfloor]
优化变量从遗传二进制编码转换为实际值:
[X = X_{min} + g_{xb} \cdot r_x]
连续编码转换为实际值:
[X = X_{min} + g_{xc} \cdot (X_{max} - X_{min})]
许多编码可能不满足最小要求条件,如几何约束,不符合要求的成员将被丢弃,重新生成随机编码,直到初始种群完整。
优化设计目标是最小化目标函数,而遗传算法最大化适应度函数。可通过将目标函数取倒数计算适应度函数:
[f_g (X_i) = \frac{1}{f (X_i)}]
[f_r (X_i) = \frac{f_g (X_i)}{\sum_{i} f_g (X_i)}]
[r_k = \sum_{i=1}^{k} f_r (X_i)]
使用蒙特卡罗轮盘选择方法选择成员为下一代提供遗传代码,为避免快速收敛到局部解,已成为父母的成员的适应度函数乘以排除因子。
通过交叉和变异操作生成后代:
-
交叉
:从两个父母重组遗传代码生成两个后代。例如,对于感应电机的特定变量编码,可采用多切割和可变位置切割的方式,并随机组装切割后的代码部分。
-
变异
:从单个父母生成后代,除一两个变量用随机代码替换外,其余代码与父母相同。
连续编码的交叉操作部分后代代码计算如下:
[g_{o1} (i) = g_{p1} (i) + \alpha [g_{p2} (i) - g_{p1} (i)]]
[g_{o2} (i) = g_{p2} (i) + \alpha [g_{p1} (i) - g_{p2} (i)]]
[g_{o1} (j) = g_{p2} (j) + \alpha [g_{p1} (j) - g_{p2} (j)]]
[g_{o2} (j) = g_{p1} (j) + \alpha [g_{p2} (j) - g_{p1} (j)]]
控制遗传算法的参数包括种群大小、代数、精英主义(直接进入下一代的最佳成员数量)、变异率(每个变量遗传代码发生变异的概率)和排除因子(父母交配后适应度函数的降低率)。
综上所述,电机的优化设计是一个复杂的过程,涉及多种方法和算法。改进的胡克 - 吉维斯优化算法和遗传算法都有各自的特点和适用场景,在实际应用中,可根据具体需求选择合适的方法来实现电机的最优设计。
超级会员免费看
1382

被折叠的 条评论
为什么被折叠?



