电路模拟器

电路模拟器

CircuitSim是一个适用于Minecraft 1.20.1版本的Forge模组,让你能在游戏中构建和模拟真实的电子电路。在世界上放置组件方块,用电线连接它们,并运行由ngspice驱动的完整SPICE仿真。

技术

CircuitSim — 一个 Minecraft 电路仿真模组

该模组完全由 AI 辅助构建。

CircuitSim 是一个针对 1.20.1 版本的 Minecraft Forge 模组,允许你在游戏内构建和仿真真实的电子电路。在世界中放置元件方块,用电线连接它们,然后右键点击仿真方块即可运行由 ngspice 驱动的完整 SPICE 仿真。

同相放大器

米勒放大器

MOSFET 输出特性


特性

无源与基础元件

  • 电阻、电容、电感
  • 电压源: 直流 (DC)、正弦 (SIN)、脉冲 (PULSE)
  • 电流源
  • 二极管
  • 导线接地

受控(依赖)源

  • VCVS — 电压控制电压源 (E)
  • VCCS — 电压控制电流源 (G)
  • CCVS — 电流控制电压源 (H)
  • CCCS — 电流控制电流源 (F)

IC / PDK 元件

  • IC 电阻IC 电容
  • IC NMOS4IC PMOS4(4 端 MOSFET)
  • SKY130A PDK 支持,可配置 .lib 路径,外加一个通用占位 PDK 和用于自定义库的自由格式 .include 模式

多单元方块

  • 放大器 — 5×5 运算放大器子电路,可选择 5 引脚或 7 引脚(失调电压调零)变体,并带有垂直镜像开关,用于交换同相/反相输入和电源轨

测量

  • 电压探针 — 带标签,测量节点电压
  • 电流探针 — 串联放置以测量支路电流

仿真控制

  • 仿真方块 — 运行分析。支持的类型:
    • .OP — 直流工作点
    • .AC — 频率扫描(起始/终止/每十倍频程点数,对数频率轴)
    • .TRAN — 瞬态分析(时间步长,停止时间)
  • 温度 — 单一值(例如 27)或扫描规格(例如 20:40:520,30,40),每个温度运行一次
  • ngspice 兼容模式: hsapsaltkiva
  • 参数化方块 — 在多次运行中扫描目标元件的参数(值、W、L、mult、nf)
  • 命令方块 — 多行原始 ngspice 命令块,逐字注入到网表 .control 部分
  • 仿真链接方块 — 将两个物理上断开的子电路桥接到同一网表中,而不合并其节点(用于从远程区域路由 CCVS/CCCS 控制源)

输出

  • 图形屏幕 — 同时绘制最多两个探针(堆叠显示),悬停提示显示精确值;AC 扫描使用 log10 X 轴
  • 通过 ngspice 子进程进行 SPICE 仿真 — 真实的节点电压和支路电流
  • .OP 结果打印到游戏内聊天框
  • 游戏内 GUI 用于配置每个元件的值,支持 SI 后缀解析(p、n、u、m、k、M、…)

环境要求

  • Minecraft 1.20.1
  • Minecraft Forge 47.3.0
  • Java 17
  • 已安装 ngspice 并可在系统 PATH 中访问

安装

方法一:直接使用

  1. 为 Minecraft 1.20.1 安装 Java 17Minecraft Forge 47.3.0
  2. 安装 ngspice,确保 ngspice_con(Windows)或 ngspice(Linux/Mac)可以从终端访问。
  3. 获取 最新版本
  4. 将模组放入 Minecraft 的 mods/ 文件夹

方法二:自行构建

  1. 为 Minecraft 1.20.1 安装 Java 17Minecraft Forge 47.3.0
  2. 安装 ngspice,确保 ngspice_con(Windows)或 ngspice(Linux/Mac)可以从终端访问。
  3. 克隆此仓库:
    git clone https://github.com/Dank0v/circuitsim.git
    cd circuitsim
    
  4. 使用 Gradle wrapper 构建模组:
    # Windows
    gradlew.bat build
    
    # Linux / Mac
    ./gradlew build
    
  5. build/libs/ 中找到编译好的 .jar 文件 — 文件名类似于 circuitsim-x.x.x.jar
  6. 将该 .jar 文件放入 Minecraft 的 mods/ 文件夹中。
  7. 启动游戏。

使用方法

  1. 打开 Circuit Simulator 创造模式标签页以找到所有方块。
  2. 放置元件方块并用导线方块连接它们。每个电路至少需要一个接地方块。
  3. 右键点击任何元件以打开其配置 GUI 并设置数值。
  4. 在电路任意位置放置一个仿真方块
  5. 右键点击仿真方块运行仿真。结果将显示在聊天框中。

探针

  • 电压探针 — 放置在导线节点旁边。右键点击可为其添加标签。仿真将报告该节点的电压。
  • 电流探针 — 串联放置(在两根导线之间)以测量通过该支路的电流。

已知问题 / 待办事项


许可证

GPL-3.0 — 参见 LICENSE