
PADEN仿真
OSHWHub8v1.0.7
通过与 PADEN 桥接实现 PCB 电源分配网络,DC压降等分析。
详情
更改日志
历史版本
评论
PADEN仿真
OSHWHub8详情
更改日志
历史版本
评论
简体中文 | English | 繁體中文 | 日本語 | Русский
PADEN仿真
嘉立创EDA & EasyEDA 专业版扩展 — 从 PCB 提取数据并进行 PDN 电源分配网络 FEM 分析
版本: 1.0.7 | 分类: PCB | 关键词: PDN, Power Analysis, Simulation, 仿真, PI
功能
通过与 PADEN 桥接实现 PCB 电源分配网络,DC压降等分析:
- 从 EasyEDA 提取 PCB 走线、过孔、焊盘、铺铜数据
- 用户配置电源轨道(电压源、电流负载)
- 客户端预网格化(TypeScript earcut 三角剖分)
- 调用本地 Python 后端进行 FEM 求解
- WebGL 可视化电压分布和功率密度热力图
架构
EasyEDA PCB
│
▼
┌─────────────┐ ┌──────────────┐ ┌───────────────┐
│ extract.ts │────▶│ convert.ts │────▶│ mesh.ts │ 客户端预网格化
│ 数据提取 │ │ 数据转换 │ │ 三角剖分 │
└─────────────┘ └──────────────┘ └───────┬───────┘
│
format_version=2
│
▼
┌─────────────────┐
│ Python 后端 │
│ main.py │
│ ├ solver.py │ FEM 求解
│ ├ problem.py │ 问题定义
│ └ mesh_pure.py │ 网格数据结构
└────────┬────────┘
│
▼
┌─────────────────┐
│ results.html │ WebGL 可视化
└─────────────────┘
使用流程
1.在嘉立创EDA专业版(3.2+)中安装本扩展
安装完后进行配置


2.在工程设计下,PCB编辑窗口可以使用本扩展
3.通过顶部菜单栏 高级 → PADEN仿真 → 运行PADEN仿真...
4.选取需要分析的参数,然后点击开始分析


快速开始
1. 安装前端依赖
npm install
2. 编译扩展
npm run compile
打包发布:
npm run build
3. 启动 Python 后端
cd paden-service
start-paden-windows.bat
start-paden-windows.bat 会自动:
- 从 GitHub 拉取最新的
solver.py和problem.py - 安装 Python 依赖(numpy, scipy, shapely, fastapi, uvicorn, matplotlib)
- 语法检查
- 启动服务在
localhost:5000
4. 在 EasyEDA 中安装
- 打开嘉立创EDA专业版,进入 PCB 编辑器
- 安装扩展包,第一次运行时会弹出一个后端服务启动提示,需要按步骤启动服务

- 在菜单中选择 PDN 分析 → 运行 PDN 分析...
项目结构
├── src/ # TypeScript 前端
│ ├── index.ts # 主入口,分析流程编排
│ ├── extract.ts # PCB 数据提取(走线、过孔、焊盘、铺铜)
│ ├── convert.ts # 数据转换 + 预网格化 + 序列化
│ ├── mesh.ts # 客户端三角剖分(earcut 半边数据结构)
│ ├── api.ts # HTTP 通信(与 Python 后端)
│ ├── display.ts # 结果展示(IFrame + Storage + MessageBus)
│ └── types.ts # 类型定义
├── ui/
│ ├── config.html # 电源轨道配置界面
│ ├── results.html # WebGL 可视化结果界面
│ └── results.tpl.html # results.html 构建模板
├── paden-service/ # Python 后端
│ ├── main.py # FastAPI 服务端(反序列化、求解编排、可视化)
│ ├── solver.py # FEM 求解器(来自 GitHub)
│ ├── problem.py # 问题定义(来自 GitHub)
│ ├── mesh_pure.py # 网格数据结构(半边、微分形式)
│ ├── standby/ # solver.py + problem.py 备份
│ └── start-paden-windows.bat # 一键构建启动脚本
├── config/ # 构建配置
│ ├── esbuild.common.ts
│ └── esbuild.prod.ts
└── extension.json # 扩展配置
使用流程
- 提取数据 — 从当前 PCB 提取走线、过孔、焊盘、铺铜区域
- 配置分析 — 选择电源网络,设置电压源和电流负载
- 客户端预网格化 — TypeScript 端使用 earcut 算法对铜皮区域做三角剖分
- FEM 求解 — Python 后端接收预网格数据,构建拉普拉斯矩阵并求解电压分布
- 可视化 — WebGL 渲染电压分布热力图,支持层切换、网格边显示、过孔标记
技术栈
前端:TypeScript, esbuild, WebGL, earcut
后端:Python, FastAPI, numpy, scipy, shapely, matplotlib
依赖:@jlceda/pro-api-types, earcut
开源许可
本扩展使用 Apache License 2.0 开源许可协议。
链接
1.0.7
变更
- 移除调试日志输出
- 铺铜提取兼容 PrimitiveFill / PrimitivePoured 两种数据格式
- 完善反序列化与结果面板的数据传递(含连接点、层边界、可视化图片)
1.0.6
新增
- 客户端预网格化(基于 earcut 三角剖分),减轻后端计算压力
变更
- 序列化格式升级至 v2,支持预网格化数据传输
- 优化焊盘去重逻辑,避免自由焊盘与器件焊盘��复
1.0.5
新增
- 分析前配置面板(config.html),支持用户指定电压源和电流负载
- 多网络独立配置,每个电源轨道可单独设置电压与负载参数
- 铜层厚度配置
变更
- 分析主流程增加用户配置步骤,取消时安全退出
1.0.4
新增
- 结果可视化面板(results.html),展示电压分布与功率密度
- 支持 3D 视图和分层层析图
- 支持 SVG/PNG 格式的分析图片展示
变更
- 后端返回结果含 images / connection_points / layer_boundaries 字段时自动渲染
1.0.3
新增
- PCB 数据转换模块(convert.ts),将 EasyEDA 原始数据转为 padne 问题格式
- 网络构建:根据走线/过孔/焊盘自动生成电气连接和几何形状
- 层叠结构推导(铜层厚度、电导率)
变更
- 过孔按网络分组,关联所在铜层列表
1.0.2
新增
- HTTP 通信模块(api.ts),与 paden Python 后端服务交互
- 服务健康检查(/test)和分析请求(/analyze)
- 可配置的服务地址(host:port)
1.0.1
新增
- PCB 数据提取模块(extract.ts),通过 EasyEDA Pro API 提取走线、过孔、焊盘、铺铜数据
- 按网络名称遍历提取,自动识别铜箔层和外层
- 多边形解析:支持矩形、圆形、圆弧、贝塞尔曲线等图元
1.0.0
初始版本。搭建扩展项目框架,注册 PCB 编辑器头部菜单「PDN 分析」入口。

暂无数据
类型
PCB
关键词
PDNPower AnalysisSimulation仿真PI
扩展信息
| 版本 | v1.0.7 |
| 发布者 | OSHWHub |
| 发布时间 | 2026-07-03 18:07:56 |
| 名称 | paden-integration |
| UUID | 9b01123fa69e4303a9c3a560ce5bb31b |
| 适用EDA版本: | ^3.2.0 |
| 报告 | 报告滥用 |
评论