Python和MATLAB微机电健康推导算法和系统模拟优化设计

🎯要点

🎯惯性测量身体活动特征推导健康状态算法 | 🎯卷积网络算法学习惯性测量数据估计六自由度姿态 | 🎯全球导航卫星系统模拟,及惯性测量动态测斜仪算法、动态倾斜算法、融合算法 | 🎯微机电系统加速度计陀螺仪模拟优化 | 🎯微机电系统模拟优化设计

🍪语言内容分比

在这里插入图片描述
在这里插入图片描述

🍇MATLAB静电驱动微机电器件

微机电系统器件通常由悬挂在固定电极上方的可移动细梁或具有高纵横比的电极组成。驱动、切换和其他信号和信息处理功能可以利用在可移动电极和固定电极之间施加电压而引起的电极变形。最常见的微机电系统器件是悬挂在接地电极上方的一系列悬臂梁开关。
此示例使用以下几何结构来模拟微机电系统开关。顶部电极的长度为 150 μ m 150 \mu m 150μm,厚度为 2 μ m 2 \mu m 2μm。杨氏模量 E 为 170 G P a 170 GPa 170GPa,泊松比 u u u 为 0.34 。底部电极的长度为 50 μ m 50 \mu m 50μm,厚度为 2 μ m 2 \mu m 2μm,距离顶部电极最左端 100 μ m 100 \mu m 100μm。顶部和底部电极之间的间隙为 2 μ m 2μm 2μm​​。
在顶部电极和接地平面之间施加的电压会在导体表面感应出静电荷,进而导致静电力垂直作用于导体表面。由于接地平面是固定的,静电力只会使顶部电极变形。当梁变形时,电荷会在导体表面重新分布。由此产生的静电力和梁的变形也会发生变化。这个过程一直持续到系统达到平衡状态。

为简单起见,本示例使用基于松弛的算法而不是牛顿方法来耦合静电域和机械域。该示例遵循以下步骤:

  1. 使用可移动电极上的恒定电势 V0 解决非变形几何结构中的静电有限元分析问题。
  2. 使用沿可移动电极计算的电荷密度值计算机械解决方案的负载和边界条件。可动电极上的静电压力由下式给出

P = 1 2 e ∣ D ∣ 2 P=\frac{1}{2 e}|D|^2 P=2e1D2,其中, ∣ D ∣ |D| D 是电通量密度的大小, ϵ \epsilon ϵ 是可移动电极旁边的介电常数。

  1. 通过求解机械有限元分析问题来计算可移动电极的变形。

  2. 使用计算出的可移动电极的位移来更新沿可移动电极的电荷密度,

∣ D d e f ( x ) ∣ ≈ ∣ D 0 ( x ) ∣ G G − v ( x ) \left|D_{ def }(x)\right| \approx\left|D_0(x)\right| \frac{G}{G-v(x)} Ddef(x)D0(x)Gv(x)G,其中 ∣ D def  ( x ) ∣ \left|D_{\text {def }}(x)\right| Ddef (x) 是变形电极中电通量密度的大小, ∣ D 0 ( x ) ∣ \left|D_0(x)\right| D0(x) 是变形电极中电通量密度的大小未变形电极中的电通量密度, G G G 是在没有驱动的情况下可移动电极和固定电极之间的距离, v ( x ) v(x) v(x) 是可移动电极在位置 x x x 处沿其轴的位移。

  1. 重复步骤2-4,直到最后两次迭代中的电极变形值收敛。

在此示例的静电分析部分中,将计算电极周围的电势。首先,使用构造实体几何建模方法创建悬臂开关几何体。用于静电分析的几何体由三个矩形组成,用矩阵表示。矩阵的每一列描述了一种基本形状。

rect_domain = [3 4 1.75e-4 1.75e-4 -1.75e-4 -1.75e-4 ...
                  -1.7e-5 1.3e-5 1.3e-5 -1.7e-5]';
rect_movable = [3 4 7.5e-5 7.5e-5 -7.5e-5 -7.5e-5 ...
                    2.0e-6 4.0e-6 4.0e-6 2.0e-6]';
rect_fixed = [3 4 7.5e-5 7.5e-5 2.5e-5 2.5e-5 -2.0e-6 0 0 -2.0e-6]';
gd = [rect_domain,rect_movable,rect_fixed];

为每个基本形状创建一个名称。将名称指定为矩阵,其列包含基本形状矩阵中相应列的名称。

ns = char('rect_domain','rect_movable','rect_fixed');
ns = ns';

创建一个描述基本形状的并集和交集的公式。

sf = 'rect_domain-(rect_movable+rect_fixed)';

使用 decsg 函数创建几何图形。

dl = decsg(gd,sf,ns);

创建 PDE 模型并将几何包含在模型中。

model = createpde;
geometryFromEdges(model,dl);

绘制几何图形。

pdegplot(model,"EdgeLabels","on","FaceLabels","on")
xlabel("x-coordinate, meters")
ylabel("y-coordinate, meters")
axis([-2e-4,2e-4,-4e-5,4e-5])
axis square

该几何图形中的边数为:

  • 可动电极:E3、E7、E11、E12
  • 固定电极:E4、E8、E9、E10
  • 域边界:E1、E2、E5、E6

将可移动电极设置为 20 V 的恒定电势值,将固定电极和域边界设置为 0 V。

V0 = 0;
V1 = 20;
applyBoundaryCondition(model,"dirichlet", ...
                             "Edge",[4,8,9,10],"u",V0);
applyBoundaryCondition(model,"dirichlet", ...
                             "Edge",[1,2,5,6],"u",V0);
applyBoundaryCondition(model,"dirichlet", ...
                             "Edge",[3,7,11,12],"u",V1);

控制这个问题的偏微分方程是泊松方程,
− ∇ ⋅ ( ϵ ∇ V ) = ρ -\nabla \cdot(\epsilon \nabla V)=\rho (ϵV)=ρ
其中 ϵ \epsilon ϵ是介电常数系数, ρ \rho ρ是电荷密度。只要介电常数恒定,介电常数就不会影响本例中的结果。假设域中不存在电荷,可以将泊松方程简化为拉普拉斯方程,
Δ V = 0 \Delta V=0 ΔV=0

📜泊松方程用例:Python低溫半导体电子束量子波算法计算

📜拉普拉斯方程用例:Python高压电容导电体和水文椭圆微分

指定系数。

specifyCoefficients(model,"m",0,"d",0,"c",1,"a",0,"f",0);

生成相对细的网格。

hmax = 5e-6;
generateMesh(model,"Hmax",hmax);
pdeplot(model)
xlabel("x-coordinate, meters")
ylabel("y-coordinate, meters")
axis([-2e-4, 2e-4,-4e-5, 4e-5])
axis square

求解模型

results = solvepde(model);

绘制外域的电势。

u = results.NodalSolution;
figure
pdeplot(model,"XYData",results.NodalSolution, ...
              "ColorMap","jet");

title("Electric Potential");
xlabel("x-coordinate, meters")
ylabel("y-coordinate, meters")
axis([-2e-4,2e-4,-4e-5,4e-5])
axis square

在此示例的机械分析部分中,将计算可移动电极的变形。

👉参阅&更新:计算思维 | 亚图跨际

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 00:52:05       4 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 00:52:05       5 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 00:52:05       4 阅读
  4. Python语言-面向对象

    2024-07-11 00:52:05       4 阅读

热门阅读

  1. 【力扣C语言】每日一题—第69题,X的平方根

    2024-07-11 00:52:05       9 阅读
  2. 【Git】本地版本控制

    2024-07-11 00:52:05       9 阅读
  3. 【Cookie 在 Spring Boot 中的实现】

    2024-07-11 00:52:05       8 阅读
  4. SQL的时间格式和文本灵活转换

    2024-07-11 00:52:05       11 阅读
  5. ubuntu22 设置开机直接登录桌面

    2024-07-11 00:52:05       8 阅读
  6. Sqlmap中文使用手册 - Options模块参数使用

    2024-07-11 00:52:05       9 阅读
  7. GIT基本概念以及简单使用方法

    2024-07-11 00:52:05       10 阅读
  8. SQL注入如何判断数据库类型

    2024-07-11 00:52:05       11 阅读
  9. 什么是引用

    2024-07-11 00:52:05       9 阅读
  10. 如何从Git仓库中删除大文件并解决推送错误方案

    2024-07-11 00:52:05       10 阅读