0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Made with KiCad(141):我把流体模拟,做成了一张名片

KiCad 来源:KiCad 作者:KiCad 2025-09-19 11:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

看到下面的视频演示,是不是有一种强烈的复刻冲动?

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小助手互动,帮您更高效地学习设计细节:wKgZPGjMy-KAFCi7AAK4tsrKtEE356.pngwKgZPGjMy-KAYFt9AATA7ymbdoI351.pngwKgZPGjMy-KAZkVxAAPsoH4aSx0688.pngwKgZPGjMy-OAd9OuAAR0wQSEdug050.png概览

仓库包含 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” 文件夹中。

wKgZPGjMy-OAaBjHAA_nbO5TbtU423.pngwKgZPGjMy-OAU5GnAAJhSOJjz-s172.jpgRust 实现的二维流体仿真

fluid_sim_crate 文件夹中的代码实现了一种名为FLIP (Fluid Implicit Particle)的混合流体仿真算法。FLIP 算法结合了两种主要的流体仿真方法:

  1. 欧拉方法(Eulerian Method): 在一个固定的网格(Grid)上描述流体的属性,如速度、压力等。这在处理压力和不可压缩性时非常高效。

  2. 拉格朗日方法(Lagrangian Method): 通过追踪大量粒子(Particles)来描述流体的运动。这能非常有效地处理对流(advection)项,防止数值耗散,并能自然地追踪流体的表面。

FLIP 算法的核心思想是:用粒子来携带速度等信息并进行对流,然后将粒子的信息传递到网格上,在网格上求解压力和强制不可压缩性,最后再将网格上更新后的速度信息传递回粒子。这种结合方式取长补短,既能获得清晰的流体表面,又能高效地求解压力。

代码被封装在FluidSimulation模块中,主要包含了FlipFluid结构体(算法核心)和Scene结构体(用于管理和控制仿真)。

原理图 & PCB

wKgZPGjMy-OAVGj9AAKOvIs7vBk322.pngwKgZPGjMy-SATSwhAAWJqYh8-xw513.pngwKgZPGjMy-SAGaLmAAVpe4uZORg179.pngwKgZPGjMy-SAPOodAAM5MEQV0HQ004.pngwKgZPGjMy-SACsSBAAXX9pfaVeM095.png  wKgZPGjMy-SAW2owAAKLbhSYKEE027.pngwKgZPGjMy-WAfK7nAAX3PlsyCFM824.pngLicenseMIT

仓库 & 下载

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

Baidu 下载:

wKgZPGjMy-WAQI3VAACWT6nEkn0678.png

注意:如果想第一时间收到 KiCad 内容推送,请点击下方的名片,按关注,再设为星标。


常用合集汇总:

审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • KiCAD
    +关注

    关注

    6

    文章

    328

    浏览量

    10526
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    用微信聊天完成了地狱级 EDA 源码(KiCad 10.99)编译!

      开始正文前先做个简单的 Q 前向声明(因为现在 sharedspice.h 已经定义了完整的结构体): 微信ClawBot: Actually I need to restore
    的头像 发表于 04-15 11:15 4119次阅读
    <b class='flag-5'>我</b>用微信聊天完<b class='flag-5'>成了</b>地狱级 EDA 源码(<b class='flag-5'>KiCad</b> 10.99)编译!

    城市一张网,以数据之桥擎托未来

    以“城市一张网”为基石,打造可信数据空间,赋能全域数字化转型
    的头像 发表于 10-14 09:29 2150次阅读
    城市<b class='flag-5'>一张</b>网,以数据之桥擎托未来

    DIY 流体模拟吊坠():理论与第个吊坠的制作

    “  作者手工打造了款独特的镀金吊坠,它内置了块定制设计的电路板,能够实时运行流体模拟。文章记录了从复杂的软件实现、电子设计到精细的金工和组装的整个过程。 ”  
    的头像 发表于 09-07 17:49 3011次阅读
    DIY <b class='flag-5'>流体</b><b class='flag-5'>模拟</b>吊坠(<b class='flag-5'>一</b>):理论与第<b class='flag-5'>一</b>个吊坠的制作

    Made with KiCad(140):Hassoscope Pro 2G 带宽的 USB 示波器

    “  Hassoscope Pro 是款经济实惠、开源、可扩展的 2 GHz、3.2 GS/s、12 位 USB 示波器。 ”   Made with KiCad 系列将支持新的展示方式。直接将以
    的头像 发表于 09-01 18:29 6591次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(140):Hassoscope Pro 2G 带宽的 USB 示波器

    Made with KiCad(138):AnyShake Explorer款开源、专业级的地震监测系统

    “  AnyShake Explorer 是款开源、专业级的地震监测系统。在个“黑箱”、价格高昂的系统已成常态的领域,Explorer 改变了这切。 ”   Made with
    的头像 发表于 08-11 11:19 2185次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(138):AnyShake Explorer<b class='flag-5'>一</b>款开源、专业级的地震监测系统

    Made with KiCad(135):Echo - 开源的音乐播放器

    “  Echo 是个开源硬件平台,专为音乐播放器设计。该项目的目标是开发款基于开源软件并采用开源设计的高品质音乐播放器。 ”   Made with KiCad 系列将支持新的展示
    的头像 发表于 07-16 11:17 3349次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(135):Echo - 开源的音乐播放器

    Made with KiCad(132):PCB 应变片(Strain Gauge)

    “  将 PCB 本身作为传感元件的应变测量装置,通过检测 PCB 变形引起的电学特性变化来测量机械应变或位移。 ” Made with KiCad 系列将支持新的展示方式。直接将以下链接复制到
    的头像 发表于 07-03 11:20 4562次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(132):PCB 应变片(Strain Gauge)

    开源工具 Made with KiCad(131):BomberCat 安全测试工具

    “  BomberCat 是个结合硬件开发与安全测试的开源工具,主要面向电子工程和网络安全领域。用于检测银行终端、门禁系统等设备的漏洞。 ” Made with KiCad 系列将支持新的展示方式
    的头像 发表于 06-19 11:18 8230次阅读
    开源工具 <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(131):BomberCat 安全测试工具

    开源 Made with KiCad(129):CatSniffer IoT 多协议工具

    “   CatSniffer 是款专为物联网(IoT)安全研究设计的硬件工具,其核心功能包括无线通信的嗅探、协议分析和安全测试。   ” Made with KiCad 系列将支持新的展示方式
    的头像 发表于 06-09 11:14 2348次阅读
    开源 <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(129):CatSniffer IoT 多协议工具

    【开源分享】Made with KiCad(128):CANBoard V2 开源款支持CAN的简单IO板

    CANBoard 是款支持 CAN 的简单 IO 板,专门设计用于方向盘/按钮盒/面板等设备。 Made with KiCad 系列将支持新的展示方式:点击查看 即可动态查看设计的原理图
    发表于 06-03 14:17

    Made with KiCad(128):CANBoard V2 开源款支持CAN的简单IO板

    “  CANBoard 是款支持 CAN 的简单 IO 板,专门设计用于方向盘/按钮盒/面板等设备。 ” Made with KiCad 系列将支持新的展示方式。直接将以下链接复制到浏览器中(或
    的头像 发表于 05-27 17:37 1458次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(128):CANBoard V2 开源<b class='flag-5'>一</b>款支持CAN的简单IO板

    Made with KiCad(105):iCEBreaker FPGA 开发板(适于教学使用)

    “  今天我们来回顾款经典的开源 FPGA 开发板 ICEBreaker,专为教师和学生设计 。目前有两个版本,经典款和尺寸更小的 Bitsy。 ” Made with KiCad 系列将支持
    的头像 发表于 04-30 16:48 3009次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(105):iCEBreaker FPGA 开发板(适于教学使用)

    Made with KiCad(102):DIY 个红外热成像仪

    ://bbs.elecfans.com/jishu_2455217_1_1.html:29 Made with KiCad 系列将支持新的展示方式。直接将以下链接复制到浏览器中(或点击“阅读原文”打开): https://www.eda.cn/ecadViewer/vie
    的头像 发表于 04-29 17:02 2583次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(102):DIY <b class='flag-5'>一</b>个红外热成像仪

    Made with KiCad(九十八):USB-C 的 Raspberry PiCo 2

    ://bbs.elecfans.com/jishu_2455217_1_1.html Made with KiCad 系列将支持新的展示方式。直接将以下链接复制到浏览器中: https://www.eda.cn
    的头像 发表于 04-28 18:27 1308次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(九十八):USB-C 的 Raspberry PiCo 2

    Made with KiCad(125):Inkplate 6 MOTION 电子墨水屏

    “  Inkplate 6 MOTION 是 Soldered Electronics 公司设计的款 6 英寸、低延迟的电子墨水屏。主控使用了 STM32H743。  ”   Made
    的头像 发表于 04-25 11:18 1534次阅读
    <b class='flag-5'>Made</b> with <b class='flag-5'>KiCad</b>(125):Inkplate 6 MOTION 电子墨水屏