前言
提醒:
文章内容为方便作者自己后日复习与查阅而进行的书写与发布,其中引用内容都会使用链接表明出处(如有侵权问题,请及时联系)。
其中内容多为一次书写,缺少检查与订正,如有问题或其他拓展及意见建议,欢迎评论区讨论交流。
文章目录
论文引用
第一章
之前笔者已对该论文进行过总结,主要集中于第一章(国内外背景),csdn文章主要集中于调研。
本篇文章将集中于电机磁场分析与音圈电机的设计。
第二章
假设条件:
1)电机中的磁轭被认为有足够大的磁导率,因而可以忽略磁轭的磁饱和现象,同时忽略磁轭磁导率的非线性特性。2)由于计算空间有限,本论文中认为计算空间之外的磁势为零,磁导率也为零。
3)由于永磁体和空气的磁导率非常的接近,本假设永磁体和空气有着一样的磁导率。
——磁荷法
典型的音圈电机模型图。
其中永磁体有六块,其磁化方向按照一定的规律变化。
永磁体夹在磁轭中间,其中永磁体中的箭头表示永磁体的磁化方向。
上下两块是磁轭,磁轭是用来增强气隙磁密的。磁轭形成等势面,提供高磁导率的路径,使得磁场形成回路,减小磁漏。
对电机气隙磁场进行分析计算,首先需要对单个永磁体的磁场分布进行分析计算,之后整个电机的空气间隙磁感
应强度可以通过所有永磁体块的磁感应强度叠加而得到。
磁荷法基本推导
- 磁荷模型将永磁体用分布在垂直磁化方向的两个面的磁荷来等效替代。
- 磁荷模型相关公式可参见:磁荷模型的详细介绍
首先,永磁体的磁化向量定义为:
M
=
M
0
z
^
\mathbf{M} = M_0 \mathbf{\hat{z}}
M=M0z^
其中,
M
0
M_0
M0 是均匀磁化强度,单位是 A/m,
z
^
\mathbf{\hat{z}}
z^ 是永磁体表面的单位法向量。
接着,单位法向量
n
^
\mathbf{\hat{n}}
n^ 的表达式为:
n
^
=
{
+
z
^
(
z
=
z
2
)
−
z
^
(
z
=
z
1
)
\mathbf{\hat{n}} = \begin{cases} +\mathbf{\hat{z}} & (z = z_2) \\ -\mathbf{\hat{z}} & (z = z_1) \end{cases}
n^={+z^−z^(z=z2)(z=z1)
这表示在
z
=
z
2
z = z_2
z=z2 处,法向量指向 +z 方向,而在
z
=
z
1
z = z_1
z=z1 处,法向量指向 -z 方向。
根据这些定义,磁荷密度
σ
m
\sigma_m
σm 可以表示为:
σ
m
=
M
⋅
n
^
=
{
+
M
0
(
z
=
z
2
)
−
M
0
(
z
=
z
1
)
(
A
/
m
)
\sigma_m = \mathbf{M} \cdot \mathbf{\hat{n}} = \begin{cases} +M_0 & (z = z_2) \\ -M_0 & (z = z_1) \end{cases} \quad (A/m)
σm=M⋅n^={+M0−M0(z=z2)(z=z1)(A/m)
其中,
M
0
M_0
M0 可以通过以下公式计算:
M
0
=
B
r
μ
0
M_0 = \frac{B_r}{\mu_0}
M0=μ0Br
这里,
B
r
B_r
Br 是剩余磁感应强度,
μ
0
\mu_0
μ0 是真空磁导率。
接下来,标量磁势
φ
m
\varphi_m
φm 的表达式为:
φ
m
=
1
4
π
∬
σ
m
∣
x
−
x
′
∣
d
S
′
\varphi_m = \frac{1}{4\pi} \iint \frac{\sigma_m}{|\mathbf{x} - \mathbf{x}'|} dS'
φm=4π1∬∣x−x′∣σmdS′
这可以分解为两个积分,分别对应两个表面:
φ
m
=
1
4
π
∬
M
0
∣
x
−
x
′
∣
d
S
′
+
1
4
π
∬
−
M
0
∣
x
−
x
′
∣
d
S
′
\varphi_m = \frac{1}{4\pi} \iint \frac{M_0}{|\mathbf{x} - \mathbf{x}'|} dS' + \frac{1}{4\pi} \iint \frac{-M_0}{|\mathbf{x} - \mathbf{x}'|} dS'
φm=4π1∬∣x−x′∣M0dS′+4π1∬∣x−x′∣−M0dS′
其中,
x
=
(
x
,
y
,
z
)
\mathbf{x} = (x, y, z)
x=(x,y,z) 和
x
′
=
(
x
′
,
y
′
,
z
′
)
\mathbf{x}' = (x', y', z')
x′=(x′,y′,z′),而
∣
x
−
x
′
∣
|\mathbf{x} - \mathbf{x}'|
∣x−x′∣ 是它们之间的距离。
磁场强度
H
\mathbf{H}
H 通过标量磁势的负梯度得到:
H
=
−
∇
φ
m
\mathbf{H} = -\nabla \varphi_m
H=−∇φm
而磁感应强度
B
\mathbf{B}
B 则通过以下公式计算:
B
=
μ
0
H
\mathbf{B} = \mu_0 \mathbf{H}
B=μ0H
因为在实际应用中仅仅只有一个沿
z
z
z 方向的磁感应强度分量能产生有效洛伦兹力。因此只需要沿
z
z
z方向的磁感应强度计算。
最后,沿
z
z
z 方向的磁感应强度分量为:
B
z
(
x
,
y
,
z
)
=
−
μ
0
M
0
4
π
∬
z
−
z
′
(
(
x
−
x
′
)
2
+
(
y
−
y
′
)
2
+
(
z
−
z
′
)
2
)
3
d
x
′
d
y
′
∣
z
′
=
z
2
+
μ
0
M
0
4
π
∬
z
−
z
′
(
(
x
−
x
′
)
2
+
(
y
−
y
′
)
2
+
(
z
−
z
′
)
2
)
3
d
x
′
d
y
′
∣
z
′
=
z
1
B_z(x, y, z) = -\frac{\mu_0 M_0}{4\pi} \iint \frac{z - z'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_2} + \frac{\mu_0 M_0}{4\pi} \iint \frac{z - z'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_1}
Bz(x,y,z)=−4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3z−z′dx′dy′
z′=z2+4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3z−z′dx′dy′
z′=z1
这个公式中
z
=
z
2
z = z_2
z=z2 和
z
=
z
1
z = z_1
z=z1 分别对应两个表面。
总磁感应强度是所有永磁体的贡献之和(线性叠加):
B
z
=
∑
i
=
1
,
2
N
B
z
(
i
)
B_z = \sum_{i=1,2}^N B_{z(i)}
Bz=i=1,2∑NBz(i)
磁荷法仿真
仿真皆为定性仿真,具体参数并非一致
python仿真
使用python进行仿真
import numpy as np
from scipy.integrate import dblquad
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 定义常量
mu_0 = 4 * np.pi * 1e-7 # 真空磁导率
M_0 = 1 # 假设的磁化强度
z_1 = -1
z_2 = 1
# 定义被积函数
def integrand(xp, yp, x, y, z, z_prime):
r = np.sqrt((x - xp)**2 + (y - yp)**2 + (z - z_prime)**2)
return (z - z_prime) / r**3
# 定义积分上下限
x_lower = -1
x_upper = 1
y_lower = -1
y_upper = 1
# 定义计算Bz的函数
def Bz(x, y, z):
integral1, _ = dblquad(integrand, y_lower, y_upper, lambda yp: x_lower, lambda yp: x_upper, args=(x, y, z, z_2))
integral2, _ = dblquad(integrand, y_lower, y_upper, lambda yp: x_lower, lambda yp: x_upper, args=(x, y, z, z_1))
return (-mu_0 * M_0 / (4 * np.pi)) * integral1 + (mu_0 * M_0 / (4 * np.pi)) * integral2
# 生成网格点
x = np.linspace(-2, 2, 20)
y = np.linspace(-2, 2, 20)
z = np.linspace(-1, 2, 20)
X, Y, Z = np.meshgrid(x, y, z)
# 计算Bz的值
Bz_values = np.zeros_like(X)
for i in range(X.shape[0]):
for j in range(X.shape[1]):
for k in range(X.shape[2]):
Bz_values[i, j, k] = Bz(X[i, j, k], Y[i, j, k], Z[i, j, k])
# 可视化结果
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
# 添加散点图
sc = ax.scatter(X, Y, Z, c=Bz_values.ravel(), cmap='viridis', alpha=0.2)
fig.colorbar(sc, label='Bz')
# 添加坐标轴
ax.quiver(0, 0, 0, 1, 0, 0, color='r', label='X-Axis') # X轴
ax.quiver(0, 0, 0, 0, 1, 0, color='g', label='Y-Axis') # Y轴
ax.quiver(0, 0, 0, 0, 0, 1, color='b', label='Z-Axis') # Z轴
# 添加平面
x_plane, y_plane = np.meshgrid(np.linspace(x_lower, x_upper, 20), np.linspace(y_lower, y_upper, 20))
z_plane1 = np.full_like(x_plane, z_1) # z = -1
z_plane2 = np.full_like(x_plane, z_2) # z = 1
# 画 z_1 = -1 和 z_2 = 1 平面
ax.plot_surface(x_plane, y_plane, z_plane1, alpha=0.5, color='g', label=f'z = {z_1}')
ax.plot_sur*斜体样式*face(x_plane, y_plane, z_plane2, alpha=0.5, color='b', label=f'z = {z_2}')
# 设置标签和标题
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.set_title('Magnetic Field Bz in 3D Space')
# 显示图例
plt.legend()
# 设置视角
ax.view_init(elev=30, azim=45)
plt.show()
运行结果为:
mathematica仿真
使用mathematica进行仿真
运行结果如下:
将三个方向的矢量合成:
B x ( x , y , z ) = − μ 0 M 0 4 π ∬ x − x ′ ( ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 ) 3 d x ′ d y ′ ∣ z ′ = z 2 + μ 0 M 0 4 π ∬ x − x ′ ( ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 ) 3 d x ′ d y ′ ∣ z ′ = z 1 B_x(x, y, z) = -\frac{\mu_0 M_0}{4\pi} \iint \frac{x - x'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_2} + \frac{\mu_0 M_0}{4\pi} \iint \frac{x - x'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_1} Bx(x,y,z)=−4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3x−x′dx′dy′ z′=z2+4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3x−x′dx′dy′ z′=z1 B y ( x , y , z ) = − μ 0 M 0 4 π ∬ y − y ′ ( ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 ) 3 d x ′ d y ′ ∣ z ′ = z 2 + μ 0 M 0 4 π ∬ y − y ′ ( ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 ) 3 d x ′ d y ′ ∣ z ′ = z 1 B_y(x, y, z) = -\frac{\mu_0 M_0}{4\pi} \iint \frac{y - y'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_2} + \frac{\mu_0 M_0}{4\pi} \iint \frac{y - y'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_1} By(x,y,z)=−4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3y−y′dx′dy′ z′=z2+4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3y−y′dx′dy′ z′=z1 B z ( x , y , z ) = − μ 0 M 0 4 π ∬ z − z ′ ( ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 ) 3 d x ′ d y ′ ∣ z ′ = z 2 + μ 0 M 0 4 π ∬ z − z ′ ( ( x − x ′ ) 2 + ( y − y ′ ) 2 + ( z − z ′ ) 2 ) 3 d x ′ d y ′ ∣ z ′ = z 1 B_z(x, y, z) = -\frac{\mu_0 M_0}{4\pi} \iint \frac{z - z'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_2} + \frac{\mu_0 M_0}{4\pi} \iint \frac{z - z'}{\left( \sqrt{(x - x')^2 + (y - y')^2 + (z - z')^2} \right)^3} dx' dy' \Bigg|_{z'=z_1} Bz(x,y,z)=−4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3z−z′dx′dy′ z′=z2+4πμ0M0∬((x−x′)2+(y−y′)2+(z−z′)2)3z−z′dx′dy′ z′=z1
使用mathematica进行仿真
运行结果如下:
ansys仿真
使用ansys,仿真条形磁铁。
仿真结果为:
——面电流法
面电流法基本推导
如果一块永磁体内部是均匀磁化的,即永磁体内部每一个点的磁化强度 M M M都有着一样的幅值和方向。
根据麦克斯韦方程组,可知在该永磁体内部的电流密度为零。
但是在平行于磁化方向的两个表面会存在面电流。
故可以将永磁体的等效为面电流进行磁场的计算。
单一面电流元产生的磁场示意图如图:
Y 方向磁化单一永磁体等效面电流磁场计算
1. 磁场表示
磁场可以表示为:
{
B
0
x
=
B
0
sin
θ
B
0
y
=
B
0
cos
θ
\begin{cases} B_{0x} = B_0 \sin \theta \\ B_{0y} = B_0 \cos \theta \end{cases}
{B0x=B0sinθB0y=B0cosθ
其中:
{
B
0
=
μ
0
I
2
π
r
θ
=
sin
−
1
(
y
−
b
r
)
r
=
(
x
−
a
)
2
+
(
y
−
b
)
2
\begin{cases} B_0 = \frac{\mu_0 I}{2\pi r} \\ \theta = \sin^{-1}\left(\frac{y - b}{r}\right) \\ r = \sqrt{(x - a)^2 + (y - b)^2} \end{cases}
⎩
⎨
⎧B0=2πrμ0Iθ=sin−1(ry−b)r=(x−a)2+(y−b)2
式中的 ( a , b ) (a, b) (a,b) 表示面电流元所在位置的坐标, ( x , y ) (x, y) (x,y) 表示空间中任意一点的坐标; B 0 B_0 B0 表示该面电流元在空间中任一点的磁感应强度, B 0 x B_{0x} B0x 和 B 0 y B_{0y} B0y 分别为 B 0 B_0 B0 在 x x x 和 y y y 方向的分量; r r r 表示由该面电流元到空间中任一点的矢量的长度。
2. 面电流产生的磁感应强度
假设面电流
I
I
I 在空间中的电流密度为
K
l
K_l
Kl,则面电流
I
I
I 在空间中任意一点产生的磁感应强度分布为:
{
B
l
x
=
∫
θ
1
θ
2
μ
0
K
l
2
π
r
sin
θ
d
θ
B
l
y
=
−
∫
θ
1
θ
2
μ
0
K
l
2
π
r
cos
θ
d
θ
\begin{cases} B_{lx} = \int_{\theta_1}^{\theta_2} \frac{\mu_0 K_l}{2\pi r} \sin \theta \, d\theta \\ B_{ly} = -\int_{\theta_1}^{\theta_2} \frac{\mu_0 K_l}{2\pi r} \cos \theta \, d\theta \end{cases}
{Blx=∫θ1θ22πrμ0KlsinθdθBly=−∫θ1θ22πrμ0Klcosθdθ
根据图 的坐标系的几何关系可以得到:
{
r
=
x
−
a
−
w
cos
θ
d
l
=
x
−
a
−
w
cos
2
θ
d
θ
\begin{cases} r = \frac{x - a - w}{\cos \theta} \\ dl = \frac{x - a - w}{\cos^2 \theta} \, d\theta \end{cases}
{r=cosθx−a−wdl=cos2θx−a−wdθ
{ θ 1 = tan − 1 ( y − b + h x − a − w ) θ 2 = tan − 1 ( y − b − h x − a − w ) \begin{cases} \theta_1 = \tan^{-1}\left(\frac{y - b + h}{x - a - w}\right) \\ \theta_2 = \tan^{-1}\left(\frac{y - b - h}{x - a - w}\right) \end{cases} ⎩ ⎨ ⎧θ1=tan−1(x−a−wy−b+h)θ2=tan−1(x−a−wy−b−h)
其中
(
a
,
b
)
(a, b)
(a,b) 表示永磁体中心位置的坐标,
(
x
,
y
)
(x, y)
(x,y) 表示空间中任意某点的位置坐标。
2
h
2h
2h 表示永磁体的厚度,
2
w
2w
2w 表示永磁体的宽度。把上述公式代入可以写成:
{
B
l
x
=
−
∫
θ
1
θ
2
μ
0
K
l
2
π
sin
θ
cos
θ
d
θ
B
l
y
=
∫
θ
1
θ
2
μ
0
K
l
2
π
d
θ
\begin{cases} B_{lx} = -\int_{\theta_1}^{\theta_2} \frac{\mu_0 K_l}{2\pi} \frac{\sin \theta}{\cos \theta} \, d\theta \\ B_{ly} = \int_{\theta_1}^{\theta_2} \frac{\mu_0 K_l}{2\pi} \, d\theta \end{cases}
{Blx=−∫θ1θ22πμ0KlcosθsinθdθBly=∫θ1θ22πμ0Kldθ
对上述公式进行积分可以得到:
{
B
l
x
=
μ
0
K
l
2
π
ln
cos
θ
2
cos
θ
1
B
l
y
=
μ
0
K
l
2
π
(
θ
2
−
θ
1
)
\begin{cases} B_{lx} = \frac{\mu_0 K_l}{2\pi} \ln \frac{\cos \theta_2}{\cos \theta_1} \\ B_{ly} = \frac{\mu_0 K_l}{2\pi} (\theta_2 - \theta_1) \end{cases}
{Blx=2πμ0Kllncosθ1cosθ2Bly=2πμ0Kl(θ2−θ1)
将上述公式代入可以计算得出面电流
I
I
I 在空间中任意某点产生的磁场磁感应强度为:
{
B
l
x
(
x
,
y
)
=
μ
0
K
l
4
π
ln
(
(
x
−
a
−
w
)
2
+
(
y
−
b
+
h
)
2
(
x
−
a
−
w
)
2
+
(
y
−
b
−
h
)
2
)
B
l
y
(
x
,
y
)
=
μ
0
K
l
2
π
(
tan
−
1
(
y
−
b
−
h
x
−
a
−
w
)
−
tan
−
1
(
y
−
b
+
h
x
−
a
−
w
)
)
\begin{cases} B_{lx}(x, y) = \frac{\mu_0 K_l}{4\pi} \ln \left( \frac{(x - a - w)^2 + (y - b + h)^2}{(x - a - w)^2 + (y - b - h)^2} \right) \\ B_{ly}(x, y) = \frac{\mu_0 K_l}{2\pi} \left( \tan^{-1}\left(\frac{y - b - h}{x - a - w}\right) - \tan^{-1}\left(\frac{y - b + h}{x - a - w}\right) \right) \end{cases}
⎩
⎨
⎧Blx(x,y)=4πμ0Klln((x−a−w)2+(y−b−h)2(x−a−w)2+(y−b+h)2)Bly(x,y)=2πμ0Kl(tan−1(x−a−wy−b−h)−tan−1(x−a−wy−b+h))
同样的可以推导出面电流
I
I
II
II 所产生的磁感应强度应该为:
{
B
l
l
x
(
x
,
y
)
=
−
μ
0
K
l
4
π
ln
(
(
x
−
a
+
w
)
2
+
(
y
−
b
+
h
)
2
(
x
−
a
+
w
)
2
+
(
y
−
b
−
h
)
2
)
B
l
l
y
(
x
,
y
)
=
−
μ
0
K
l
2
π
(
tan
−
1
(
y
−
b
−
h
x
−
a
+
w
)
−
tan
−
1
(
y
−
b
+
h
x
−
a
+
w
)
)
\begin{cases} B_{llx}(x, y) = -\frac{\mu_0 K_l}{4\pi} \ln \left( \frac{(x - a + w)^2 + (y - b + h)^2}{(x - a + w)^2 + (y - b - h)^2} \right) \\ B_{lly}(x, y) = -\frac{\mu_0 K_l}{2\pi} \left( \tan^{-1}\left(\frac{y - b - h}{x - a + w}\right) - \tan^{-1}\left(\frac{y - b + h}{x - a + w}\right) \right) \end{cases}
⎩
⎨
⎧Bllx(x,y)=−4πμ0Klln((x−a+w)2+(y−b−h)2(x−a+w)2+(y−b+h)2)Blly(x,y)=−2πμ0Kl(tan−1(x−a+wy−b−h)−tan−1(x−a+wy−b+h))
因而可以根据上述公式得到沿
Y
Y
Y 轴正方向磁化的永磁体块在空间中任一点
P
(
x
,
y
)
P(x, y)
P(x,y) 所产生的磁场为:
{
B
y
x
(
x
,
y
)
=
B
l
x
(
x
,
y
)
+
B
l
l
x
(
x
,
y
)
B
y
y
(
x
,
y
)
=
B
l
y
(
x
,
y
)
+
B
l
l
y
(
x
,
y
)
\begin{cases} B_{yx}(x, y) = B_{lx}(x, y) + B_{llx}(x, y) \\ B_{yy}(x, y) = B_{ly}(x, y) + B_{lly}(x, y) \end{cases}
{Byx(x,y)=Blx(x,y)+Bllx(x,y)Byy(x,y)=Bly(x,y)+Blly(x,y)
其中变量 B y x B_{yx} Byx 下标中的第一个下标 y y y 表示永磁体的磁化方向为沿 Y Y Y 轴方向,第二个下标 x x x 表示空间中某点磁感应强度沿 X X X 轴的分量;变量 B y y B_{yy} Byy 亦然。
面电流法仿真
仿真皆为定性仿真,具体参数并非一致
python仿真
使用python进行仿真
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.colors import Normalize
# 定义常数
mu0 = 4 * np.pi * 1e-7 # 真空磁导率
# 定义函数
def Blx(x, y, a, b, w, h, Kl):
return (mu0 * Kl) / (4 * np.pi) * np.log(((x - a - w) ** 2 + (y - b + h) ** 2) / ((x - a - w) ** 2 + (y - b - h) ** 2))
def Bly(x, y, a, b, w, h, Kl):
return (mu0 * Kl) / (2 * np.pi) * (np.arctan((y - b - h) / (x - a - w)) - np.arctan((y - b + h) / (x - a - w)))
def Bllx(x, y, a, b, w, h, Kl):
return -(mu0 * Kl) / (4 * np.pi) * np.log(((x - a + w) ** 2 + (y - b + h) ** 2) / ((x - a + w) ** 2 + (y - b - h) ** 2))
def Blly(x, y, a, b, w, h, Kl):
return -(mu0 * Kl) / (2 * np.pi) * (np.arctan((y - b - h) / (x - a + w)) - np.arctan((y - b + h) / (x - a + w)))
# 参数设置
a, b, w, h, Kl = 0, 0, 0.5, 0.5, 1
# 生成网格点
x = np.linspace(-2, 2, 100)
y = np.linspace(-2, 2, 100)
X, Y = np.meshgrid(x, y)
# 计算磁场分量
Bx = Blx(X, Y, a, b, w, h, Kl) + Bllx(X, Y, a, b, w, h, Kl)
By = Bly(X, Y, a, b, w, h, Kl) + Blly(X, Y, a, b, w, h, Kl)
# 计算磁场强度大小
B = np.sqrt(Bx ** 2 + By ** 2)
# 绘制流线图
plt.figure(figsize=(10, 8))
plt.streamplot(X, Y, Bx, By, color=B, cmap='hot', density=2)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Stream Plot of Magnetic Field Distribution')
plt.colorbar(label='Magnetic Field Strength')
plt.show()
# 绘制热量图
plt.figure(figsize=(10, 8))
plt.contourf(X, Y, B, levels=50, cmap='hot')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Heat Map of Magnetic Field Distribution')
plt.colorbar(label='Magnetic Field Strength')
plt.show()
运行结果:
X 轴方向磁化单一永磁体等效面电流磁场分析
和沿Y轴正方向磁化永磁体的等效面电流磁场分布分析过程一样:
同理可以通过推理得到面电流 I I I III III的磁场磁感应强度分布计算式子为:
{ B I I I x ( x , y ) = μ 0 K l 2 π tan − 1 ( y − b + h x − a − w ) − μ 0 K l 2 π tan − 1 ( y − b + h x − a + w ) B I I I y ( x , y ) = μ 0 K l 4 π ln ( ( x − a − w ) 2 + ( y − b + h ) 2 ( x − a + w ) 2 + ( y − b + h ) 2 ) \begin{cases} B_{\mathrm{IIIx}}(x,y)=\frac{\mu_0 K_l}{2 \pi} \tan^{-1}\left(\frac{y-b+h}{x-a-w}\right)-\frac{\mu_0 K_l}{2 \pi} \tan^{-1}\left(\frac{y-b+h}{x-a+w}\right) \\ B_{\mathrm{IIIy}}(x, y)=\frac{\mu_0 K_l}{4 \pi} \ln \left(\frac{(x-a-w)^2+(y-b+h)^2}{(x-a+w)^2+(y-b+h)^2}\right) \end{cases} ⎩ ⎨ ⎧BIIIx(x,y)=2πμ0Kltan−1(x−a−wy−b+h)−2πμ0Kltan−1(x−a+wy−b+h)BIIIy(x,y)=4πμ0Klln((x−a+w)2+(y−b+h)2(x−a−w)2+(y−b+h)2)
面电流 I V IV IV的磁场磁感应强度分布的解析式子为:
{ B I V x ( x , y ) = − μ 0 K l 2 π tan − 1 ( y − b − h x − a − w ) + μ 0 K l 2 π tan − 1 ( y − b − h x − a + w ) B I V y ( x , y ) = − μ 0 K l 4 π ln ( ( x − a − w ) 2 + ( y − b − h ) 2 ( x − a + w ) 2 + ( y − b − h ) 2 ) \begin{cases} B_{\mathrm{IVx}}(x, y)=-\frac{\mu_0 K_l}{2 \pi} \tan^{-1}\left(\frac{y-b-h}{x-a-w}\right)+\frac{\mu_0 K_l}{2 \pi} \tan^{-1}\left(\frac{y-b-h}{x-a+w}\right)\\ B_{\mathrm{IVy}}(x, y)=-\frac{\mu_0 K_l}{4 \pi} \ln \left(\frac{(x-a-w)^2+(y-b-h)^2}{(x-a+w)^2+(y-b-h)^2}\right) \end{cases} ⎩ ⎨ ⎧BIVx(x,y)=−2πμ0Kltan−1(x−a−wy−b−h)+2πμ0Kltan−1(x−a+wy−b−h)BIVy(x,y)=−4πμ0Klln((x−a+w)2+(y−b−h)2(x−a−w)2+(y−b−h)2)
根据两组式子,可以得到沿X轴方向磁化单个永磁体的磁场磁感应强度分布为:
{ B x x ( x , y ) = B I l l x ( x , y ) + B I V x ( x , y ) B x y ( x , y ) = B I l l y ( x , y ) + B I V y ( x , y ) \begin{cases} B_{xx}(x, y)=B_{\mathrm{Illx}}(x, y)+B_{\mathrm{IVx}}(x, y)\\ B_{xy}(x, y)=B_{\mathrm{Illy}}(x, y)+B_{\mathrm{IVy}}(x, y) \end{cases} {Bxx(x,y)=BIllx(x,y)+BIVx(x,y)Bxy(x,y)=BIlly(x,y)+BIVy(x,y)
式子中的变量 B x x B_{xx} Bxx下标中的第一个下标x表示永磁体的磁化方向为沿X轴方向,
第二个下标x表示空间中某点中磁感应强度沿X轴的分量;变量 B x y B_{xy} Bxy亦然。
以上所有式子中的电流密度K可以表示为:
K l = M K_l=M Kl=M
其中M表示磁化强度。
根据推理可以得出,单一永磁体的等效面电流磁场磁感应强度的分布只和空间的位置坐标、永磁体的包括宽度和长度在内的尺寸参数、永磁体的磁化强度有关。因而可以直观的得出磁场分布和永磁体结构参数的关系,而且计算表达式简单,不会带来巨大的计算量。