掌握SPICE电路仿真:设计师与学生的实用指南
善用计算机能使其成为科技工程不可或缺的盟友。最强大应用之一是电路仿真。这类程序让设计师快速评估概念,较实物原型大幅节省时间和成本。
对电子初学者,仿真提供即时动手实验途径,无需组装硬件即可探究电路行为。实测虽必不可少,但虚拟实验有助建立直觉、快速迭代。
本指南将穿插SPICE仿真截图说明关键概念。通过研究这些结果,学习者可在不陷复杂数学的前提下掌握电路动态。
SPICE电路仿真
计算机建模电路我使用SPICE(Simulation Program with Integrated Circuit Emphasis)。SPICE解析电路文本描述——称作网表——输出详细数学分析结果。
欲深入了解,本系列第5卷参考章节全面覆盖SPICE。此处聚焦基础并演示简单例子。
首先需在机器安装SPICE。多操作系统免费可用,我演示轻量版2G6,以其易用性著称。
接下来分析前文基本电路:10伏电池串联5Ω电阻。目标验证SPICE按欧姆定律(I=E/R)计算预期电流。
SPICE是基于文本的程序
SPICE不解析图形原理图,需纯文本描述。每个唯一连接点分配节点号。共享同一点的节点编号相同。SPICE还要求节点0作为参考(地)。
简单例子仅两节点——节点1和节点0:

此图说明节点编号,但SPICE需相同信息的纯文本形式。
用文本编辑器创建SPICE网表
文本编辑器(Windows记事本、Linux Vim)提供无格式干扰环境编写网表。SPICE依赖这些文件的精确语法。
首行添加标题:

定义电压源用字母“v”、节点号、直流电压值:

指定电阻用“r”及其节点连接:

以.end语句结束网表。完整网表如下:

命令行运行SPICE
保存文件(如circuit1.cir)后,终端调用SPICE:
spice < circuit1.cir
Linux下回车前命令行如下:

SPICE打印网表、节点电压、电源电流、总功率耗散。示例输出:

注意SPICE按内部符号约定报告电流为负值。功率以科学计数法显示(2.00E+01 W)。
重定向输出到文本文件
抑制屏幕输出并捕获结果到文件,重定向SPICE输出:

生成文件output1.txt可用文本编辑器编辑。移除多余页眉后,核心数据即可分析或纳入文档:

清理后的输出直接呈现为文本:
my first circuit v 1 0 dc 10 r 1 0 5 .end node voltage ( 1) 10.0000 voltage source currents name current v -2.000E+00 total power dissipation 2.00E+01 watts
修改元件值
修改网表、保存、重运行SPICE即可改变元件。如电压增至30V,结果:
second example circuit v 1 0 dc 30 r 1 0 5 .end node voltage ( 1) 30.0000 voltage source currents name current v -6.000E+00 total power dissipation 1.80E+02 watts
电流从2A增至6A,功率从20W增至180W(9倍),符合焦耳定律(P=E²/R)。
使用SPICE扫描与绘图功能
为考察电压范围内电路行为,添加.dc指令。注释(以“*”开头)辅助文档:
third example circuit v 1 0 r 1 0 5 *the ".dc" statement tells spice to sweep the "v" supply *voltage from 0 to 100 volts in 5 volt steps. .dc v 0 100 5 .print dc v(1) i(v) .end
.print命令输出各步骤表格数据:
v i(v) 0.000E+00 0.000E+00 5.000E+00 -1.000E+00 1.000E+01 -2.000E+00 ... 1.000E+02 -2.000E+01
将.print改为.plot生成简单文本图:
Legend: + = v#branch ----------------------------------------------------------------------- sweep v#branch-2.00e+01 -1.00e+01 0.00e+00 ----------------------|------------------------|------------------------| 0.000e+00 0.000e+00 . . + 5.000e+00 -1.000e+00 . . + . ... 1.000e+02 -2.000e+01 + . . ----------------------|------------------------|------------------------| sweep v#branch-2.00e+01 -1.00e+01 0.00e+00
用外部工具解读SPICE输出
图形程序如Nutmeg可读取SPICE文本输出并可视化绘图。典型Nutmeg图显示电阻电压v(1)随源电压线性增加。

无论SPICE多熟练,理解其报告数字至关重要。后续例子我将持续标注输出,揭秘结果并释放工具全部潜力。
相关练习题
- 基础电学练习题
- 基础直流练习题
- 基础网络分析练习题
- 基础交流练习题
- 基础半导体练习题
- 基础模拟电路练习题
- 基础数字电路练习题
工业技术