“看到下面的视频演示,是不是有一种强烈的复刻冲动?”
Made with KiCad 系列将支持新的展示方式。直接将以下链接复制到浏览器中(或点击“阅读原文”):https://www.eda.cn/ecadViewer/viewerPage/?xmlId=37a22392-c647-4040-83e8-1eab63a2f587&fileZip=%2Fdata%2Fdesign%2Fdemo%2F37a22392-c647-4040-83e8-1eab63a2f587.zip即可动态查看设计的原理图、PCB、3D 及 BOM,查询设计中器件、走线、焊盘的属性详情。还可以在原理图中与AI小助手互动,帮您更高效地学习设计细节:


概览仓库包含 flip-card 项目的所有相关文件。这是一个可以运行流体隐式粒子(FLIP)模拟的名片项目。
-
PCB 设计文件位于 “kicad-pcb” 文件夹中。
-
flip-card 项目的灵感来源于 mitxela 的流体模拟吊坠项目:https://mitxela.com/projects/fluid-pendant
-
流体模拟的逻辑包含在一个独立的 crate (代码包) 中,位于 “fluid_sim_crate” 文件夹内。这部分是基于 Matthias Müller (https://github.com/matthias-research) 的工作,以及他在其 YouTube 频道 “Ten Minute Physics” 上的精彩演示。
-
项目中一个比较难实现的功能是可充电电池。我从 cnlohr 的 tiny touch lcd 项目https://github.com/cnlohr/ch32v003_3digit_lcd_usb/中找到了一个板边 USB-C 接口的设计方案。
-
“sim_display” 文件夹中也提供了一个WASM 模拟器,我用它来调试模拟中出现的问题。
-
在rp2350 芯片上运行的流体模拟实现代码位于 “flip-card_firmware” 文件夹中。

Rust 实现的二维流体仿真库fluid_sim_crate 文件夹中的代码实现了一种名为FLIP (Fluid Implicit Particle)的混合流体仿真算法。FLIP 算法结合了两种主要的流体仿真方法:
-
欧拉方法(Eulerian Method): 在一个固定的网格(Grid)上描述流体的属性,如速度、压力等。这在处理压力和不可压缩性时非常高效。
-
拉格朗日方法(Lagrangian Method): 通过追踪大量粒子(Particles)来描述流体的运动。这能非常有效地处理对流(advection)项,防止数值耗散,并能自然地追踪流体的表面。
FLIP 算法的核心思想是:用粒子来携带速度等信息并进行对流,然后将粒子的信息传递到网格上,在网格上求解压力和强制不可压缩性,最后再将网格上更新后的速度信息传递回粒子。这种结合方式取长补短,既能获得清晰的流体表面,又能高效地求解压力。
代码被封装在FluidSimulation模块中,主要包含了FlipFluid结构体(算法核心)和Scene结构体(用于管理和控制仿真)。
原理图 & PCB





LicenseMIT仓库 & 下载
可以在Github中获取开源仓库:
https://github.com/Nicholas-L-Johnson/flip-card
Baidu 下载:

注意:如果想第一时间收到 KiCad 内容推送,请点击下方的名片,按关注,再设为星标。
常用合集汇总:
- KiCad 8 探秘合集
- KiCad 使用经验分享
- KiCad 设计项目(Made with KiCad)
- 常见问题与解决方法
- KiCad 开发笔记
- 插件应用
- 发布记录
-
KiCAD
+关注
关注
6文章
328浏览量
10525
发布评论请先 登录
我用微信聊天完成了地狱级 EDA 源码(KiCad 10.99)编译!
DIY 流体模拟吊坠(一):理论与第一个吊坠的制作
Made with KiCad(140):Hassoscope Pro 2G 带宽的 USB 示波器
Made with KiCad(138):AnyShake Explorer一款开源、专业级的地震监测系统
Made with KiCad(135):Echo - 开源的音乐播放器
Made with KiCad(132):PCB 应变片(Strain Gauge)
开源工具 Made with KiCad(131):BomberCat 安全测试工具
开源 Made with KiCad(129):CatSniffer IoT 多协议工具
【开源分享】Made with KiCad(128):CANBoard V2 开源一款支持CAN的简单IO板
Made with KiCad(128):CANBoard V2 开源一款支持CAN的简单IO板
Made with KiCad(105):iCEBreaker FPGA 开发板(适于教学使用)
Made with KiCad(102):DIY 一个红外热成像仪
Made with KiCad(九十八):USB-C 的 Raspberry PiCo 2
Made with KiCad(125):Inkplate 6 MOTION 电子墨水屏
Made with KiCad(141):我把流体模拟,做成了一张名片
评论