尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

LTspice中AC扫描分析差模与共模特性的实用指南

LTspice中AC扫描分析差模与共模特性的实用指南 1. 为什么要用AC扫描分析差模和共模特性搞电源、搞EMC、搞运放电路的朋友迟早都得面对差模和共模这对概念。我刚开始用LTspice做仿真时最头疼的事不是画原理图而是不知道怎么在软件里把差模和共模分别“拎”出来看。很多人一上来就只会做瞬态分析时域波形拉得老长结果看完还是一头雾水。直到我习惯用AC扫描之后才真正体会到这件事有多高效。先说清楚AC扫描是干什么的。它在LTspice里的本质是线性化小信号分析也就是说它会先把电路在某个工作点展开成线性模型然后计算输入从低频到高频扫过去时输出端的幅频特性和相频特性。这个过程在交流小信号视角下把电路当成了“黑箱”你给它什么频段的输入它就给你什么频段的输出特别适合看增益、带宽、滤波器特性、环路稳定性这类内容。而差模和共模分析恰恰就是这些内容的典型应用场景。那差模和共模跟AC扫描怎么挂钩简单说差模是两条线之间反向传输的信号共模是两条线对地同向传输的信号。AC扫描可以在同一个电路里分别以这两种激励方式注入信号通过观察输出响应来评估电路对差模信号的放大能力以及对共模信号的抑制能力。对于运放电路来说关心的是差模增益、共模增益和共模抑制比CMRR对于EMI滤波器来说关心的是差模电感和共模电感在不同频段的插入损耗。这些全都是频率相关的指标用AC扫描再合适不过。这篇内容适合谁看如果你刚开始接触LTspice懂一点电路基础但对差模共模的仿真方法不熟这篇文章可以帮你少走弯路。如果你已经在做滤波电路或运放电路想快速验证自己设计的共模抑制效果这篇文章同样能给你一套可以直接照做的思路。下面我从测试电路搭建开始把LTspice里AC扫描分析差模和共模的完整流程拆开讲。2. 搭建差模和共模测试电路的基本思路2.1 差模信号的注入方式先把电路搭建的逻辑搞清楚。你不可能在同一个仿真里“同时”看到差模和共模的全部特性因为激励源的位置和极性决定了电路处于哪种激励状态。差模激励的关键点在于两个输入端的信号幅度相等、相位相反。在LTspice里实现起来非常直接用两个交流源串联就行一个设成AC 1另一个设成AC -1然后把它们分别接到两个输入端。这里有一个容易被忽视的细节AC幅值里的正负号是有意义的。很多人第一次用LTspice以为AC幅值只能写正数其实负号代表相位180度反相。正因为有这个设定你不需要额外放置反相器或电压控制源来构造差模信号。比如你要分析一个差分放大器的差模增益就在同相输入端放一个AC 1的电压源反相输入端放一个AC -1的电压源两边的直流工作点仍然由偏置电路决定AC扫描时小信号才会按照反相关系注入。这样做最大的好处是直流偏置和小信号激励完全解耦不会因为你换了激励方式而导致工作点漂移。2.2 共模信号的注入方式共模激励就更容易理解了两个输入端的信号幅度相等且相位相同。在LTspice里直接给两个输入各接一个AC 1的电压源或者更省事的做法是只用一个交流源同时并联接到两个输入端。不过我个人建议还是用两个独立电压源各接各的这样后面如果要做大信号参数扫描灵活性更高。共模分析最常见的使用场景有两个。第一个是运放电路的CMRR测量。你给运放两个输入端都施加相同的交流小信号正常来说输出端应该几乎看不到这个信号因为运放的共模增益非常低。但实际电路里因为电阻失配、运放自身共模抑制有限输出端总会有残余响应。AC扫描能把这个残余响应扫成一条曲线直观显示出共模抑制在全频段的表现。第二个场景是EMI滤波器里的共模电感分析。共模电感的绕线方式决定了它对差模电流呈现低阻抗、对共模电流呈现高阻抗。你用AC扫描给电路注入共模信号就能看到滤波器对共模噪声的衰减曲线。这时候激励源接在两线合并后的路径上而不是两线之间。2.3 关键元器件选择与值设定搭建测试电路时器件的参数设定决定了仿真结果是否可信。很多初学者习惯随手放几个电阻电容仿真却发现曲线形状离谱问题一般就出在这里。先说运放模型。LTspice自带的OP系列模型比如OP07、LT1001在低频段表现很好但如果你要分析几十MHz以上的环路特性这些通用模型就不够用了。这时候最好用厂商提供的宏模型尤其是你实际要用的那颗芯片。第三方模型的导入方式后面会提到这里先提醒一句模型里的寄生参数直接决定了高频段的仿真可信度。再说无源器件。做差模共模分析时电容的等效串联电阻ESR和电感的寄生电容EPC都不是可以忽略的“小细节”。比如你做共模电感仿真理想电感模型在谐振频率以上会表现出异常的阻抗下降但实际电感因为绕组间寄生电容的存在在高频段阻抗会有一个峰值然后回落。如果你在LTspice里只放一个理想电感扫到1MHz以上你会发现曲线“莫名其妙”地单调上升这就是没有考虑寄生参数的典型表现。解决办法是给电感并联一个几pF的分布电容在线路上串联一个小阻值的电阻模拟铜损这样才能得到和生产品测试对得上的插入损耗曲线。3. LTspice中AC扫描命令的设置细节3.1 交流分析参数的设置方法搭建完电路接下来就是AC扫描的核心操作。在LTspice里AC分析的命令入口在菜单栏的Simulate - Edit Simulation Cmd或者在原理图上直接放置一个.ac语句。命令格式一般写成.ac dec 20 10 10Meg这行命令的含义是用十倍频程步进方式扫描每个十倍频程取20个点起始频率10Hz终止频率10MHz。我平时习惯用dec模式而不是lin模式因为EMC和放大器频响分析跨的频段往往有好几个数量级线性扫描要么低频点太稀疏要么高频点太多跑不完。dec模式下每个十倍频程的点数固定低频段和高频段都能照顾到。这里有个经验值可以参考低频段到高频段跨度很大的时候点数设置20到50之间比较合适。点太少谐振峰可能被漏掉点太多仿真时间会肉眼可见地变长。对于大多数无源滤波器分析每十倍频程20个点就够用了临界谐振点不够平滑的话再用50个点跑一次确认。3.2 信号源AC幅值的设定AC扫描的激励源设置和瞬态分析完全不同。很多人从瞬态分析转过来习惯性地去设置SINE电压的幅度和频率结果AC扫描出来一塌糊涂。这里要记住一个关键点在AC扫描中信号源的幅值参数是“小信号”幅值不是时域波形的实际幅值线性化分析中它只是一个归一化的参考值。具体操作上你放置好一个电压源之后右键点击它在Advanced选项卡里可以看到DC Value、AC Amplitude和AC Phase这三栏。AC Amplitude填1AC Phase填0或者180这个值代表你注入的小信号幅度。填1的好处在于输出端的电压值可以直接读成增益——输入是1个单位输出是0.5就代表增益是-6dB输出是100就代表增益是40dB不用再去换算相对值。共模分析时两个激励源通常都填AC 1、Phase 0。差模分析时一个填AC 1、Phase 0另一个填AC 1、Phase 180。之前说过负号也可以用来替代Phase 180但我更推荐写Phase 180的方式因为在原理图上一眼就能看出两个信号源的相位关系排查问题时更直观。3.3 参数扫描与步骤设计AC扫描往往不是只跑一条曲线就结束。在LTspice里做参数扫描可以用.step命令搭配变量来实现。比如你想看不同阻值的电阻对共模抑制比的影响可以先在原理图里把电阻值定义成变量Rvar然后在命令里写.ac dec 20 10 10Meg .step param Rvar 1k 100k 10k.step会和.ac联合执行每改变一次Rvar就完整跑一遍AC扫描。这个功能在差模共模分析里非常实用因为很多时候你不是只想知道“当前设计行不行”而是想知道“哪个参数能让共模抑制最好”。比如你在做一个分压网络决定CMRR的差分放大器用.step把四个电阻的容差和阻值扫描一遍就能很快看出灵敏度最高的那个电阻是哪一个这对实际选料非常有指导意义。不过参数扫描有个坑变量多的时候仿真次数是乘法关系。如果你同时用.step扫两个变量每个变量取10个点那就是100次扫描有些复杂电路一次扫描就要几秒钟整体跑下来可能要花好几分钟。建议先用固定参数跑通电路确认结果合理再逐步增加扫描维度不要一上来就把所有变量全挂上。4. 差模和共模仿真结果的分析方法4.1 差模增益的读取方式仿真跑完之后LTspice会弹出一个波形窗口默认显示的是输出节点的电压幅度曲线。横轴是频率纵轴是dB值。如果你按照前面说的把AC幅值都填了1那这个曲线读出来的就是增益曲线。差模增益的读取思路是在差分电路中输出端取的是两端电压之差。LTspice里你可以用表达式直接计算差模输出比如V(Vout_plus) - V(Vout_minus)。这时候如果注入的是差模激励算出来的结果就代表差模增益曲线。我最常做的事情是直接加一条输出差值的表达式曲线同时保留单端输出的曲线两条线对照着看能发现很多单端输出看不出来的问题。这里要特别注意放大器电路的差模增益在低频段和中频段通常是一条水平直线高频段开始滚降。如果你扫出来的结果低频段就不是平的大概率是耦合电容或偏置电阻没有设置好导致低频增益被拉低。这时候可以回过去检查高通转折频率是否符合预期。4.2 共模增益和CMRR的计算共模增益的读取方式和差模增益完全不同。注入共模信号时两个输入端的信号是同相的理想情况下输出应该为零但实际电路做不到输出端总会有残差。在LTspice波形窗口里你同样用V(out)看输出幅度但此时的数值就是共模增益。我在实际分析中最看重的是CMRR曲线。CMRR的定义是差模增益除以共模增益在LTspice里不需要手动逐点计算。你可以在波形窗口里直接添加一条表达式曲线把它定义成20 * log10(V(dm) / V(cm))前提是你已经分别跑过差模和共模两组扫描。更省事的办法是用AC分析的复数结果来做数学运算因为在波形窗口里LTspice默认显示的其实是复数幅值你直接做除法、log运算都是成立的。CMRR曲线的形态非常能说明问题。低频段的CMRR很高因为运放的低频共模增益接近零但高频段CMRR会急剧下降。如果你看到CMRR曲线在某个频率出现尖锐的“凹陷”说明这里可能有谐振点或者寄生耦合路径被激起来了。这个凹陷对应的频率就是你需要特别注意的频段。4.3 利用波形运算提高分析效率LTspice波形窗口支持很多内置函数不只是V()和20*log10()。比如你分析EMI滤波器时关心的是插入损耗而不是增益那就用20*log10(V(out)/V(in))来计算衰减量。更高级一点的用法是直接看相位裕度这对环路稳定性分析很重要虽然差模共模分析用不到但运算窗口支持测量相位曲线的特性这一点在做滤波器时偶尔也能用上。波形运算还有一个容易被忽略的地方如果跑过.step参数扫描波形窗口里会同时显示多条曲线每条对应一个参数值。双击图例里的曲线名可以单独查看某一条右键图例还可以显示每条曲线的具体参数值。这对判断趋势变化非常方便不用重新仿真就能看清电阻从1k变到100k时CMRR下降了大概多少dB。5. 运放电路CMRR仿真的完整流程5.1 基础差分放大器电路搭建讲完原理和设置下面用一个最常见的差分放大器电路来完整走一遍流程。这个电路是差模共模分析的试金石因为它的CMRR主要取决于外部电阻的匹配精度电路结构极其简单适合用来验证你的仿真方法有没有问题。先放一个LTspice自带的通用运放比如LT1001再放四个电阻。同相输入端通过R1接地、通过R3接到输出端形成反馈反相输入端通过R2接输入信号、通过R4接地。经典的差分比例关系是R3/R1 R4/R2差模增益就由这个比值决定。我习惯把四个电阻都设成10k这样差模增益是1倍也就是0dB后续算CMRR时数字好算。这里有个重要提醒这四个电阻的精度直接关系到仿真结果里的共模增益。如果你用LTspice默认的理想电阻模型四个阻值完全一致共模增益理论上会非常低CMRR曲线会高得离谱这反而说明仿真条件不够真实。为了接近实际我会给其中某个电阻设置一个小的容差偏移比如把R2改成10.01k用来模拟0.1%精度电阻的失配情况。这样做出来的CMRR数值和实际测量更接近也更具备工程参考意义。5.2 差模激励下的仿真步骤电路搭好之后先把R1断开接地的那端拆掉改接一个交流电压源到地AC幅度设为1Phase设为0。R2那一侧保持接地。这样整个电路处于差模激励状态——R1端有AC信号R2端没有从运放差分输入端看进去就是正反相之间有大小相等、相位相反的差模分量。放置AC扫描命令.ac dec 50 10 10Meg运行仿真然后在波形窗口添加表达式V(Vout)就能读出输出端的差模增益曲线。对于阻值全为10k的电路这条曲线应该是从0dB开始到某个频率后因为运放增益带宽积的限制开始滚降。如果你的曲线从头到尾都不是平的检查一下运放的模型是否正确接入了电源引脚。运放仿真最容易被忽略的就是忘接电源导致电路根本没有正常放大能力。5.3 共模激励下的仿真步骤与CMRR曲线生成差模仿真做完之后把激励方式改一下R1和R2各自断开接地的那端分别接两个交流源两个都设AC 1、Phase 0。这样运放两个输入端都收到相同的共模小信号。再次运行AC扫描读取输出端曲线V(Vout)这条曲线就是共模增益。理论上共模增益应该很低但因为我们故意给R2设置了0.1%的偏差共模增益不是零而是一条随频率变化的曲线。接下来在波形窗口添加表达式20 * log10(V(dm_out) / V(cm_out))注意这里的V(dm_out)需要你在差模仿真结果里单独存下来。或者更简单的做法是先在差模仿真的波形窗口里把最大增益值记下来再在共模仿真窗口里直接算两者的差值。因为差模增益本来就是0dB这里CMRR的dB值就等于0减去共模增益的dB值。这也是为什么我刚才特意强调要先把差模增益做成0dB的原因会让后续计算省掉大量麻烦。6. 共模电感插入损耗的AC扫描分析6.1 共模电感的电路建模说完了运放再来看看另一个高频场景共模电感的插入损耗仿真。这一步是AC扫描在电源EMI设计里的典型应用。共模电感在电路里通常是由两个绕在同一磁芯上的线圈组成的它在差模电流下产生的磁场相互抵消表现为低阻抗在共模电流下磁场加强表现为高阻抗。在LTspice里建模时最直接的方式是用两个电感加上一个耦合系数K来表示这种理想耦合关系。具体操作是放置两个电感L1和L2然后放置一个K语句把它们耦合起来。K语句的写法是.K1 L1 L2 0.99耦合系数取0.99左右模拟实际磁芯的有限耦合效果。很多人在这一步偷懒设成1结果仿真曲线和实测偏差很大。原因是完全耦合状态下差模漏感会变成零而实际磁芯总有漏感存在这正是决定差模滤波器低频特性的关键参数。除了耦合电感本身还要给两个线圈并联上寄生电容模拟绕组间的分布电容效应。大小可以先用经验值比如5pF到20pF具体要看电感的物理尺寸和绕线工艺。这个寄生电容决定了共模电感在超高频段的阻抗特性没有它的话扫描结果会在高频段明显失真。6.2 差模和共模插入损耗的仿真对比模型搭好之后在共模电感的输入端接一个AC 1的交流源输出端接负载电阻然后跑AC扫描。要测差模插入损耗就把输入源接在L1和L2的串联方向上要测共模插入损耗就把输入源接在两条线合并后的路径上也就是两线对地之间。两种模式下输出端的电压曲线能直接反映插入损耗。最直观的做法是用前面提过的20*log10(V(out)/V(in))表达式算出衰减量随频率的变化曲线。差模插入损耗通常表现为一个低频段很低、到某个转折频率后爬升的曲线共模插入损耗则表现为宽频带内都有明显衰减但因为寄生电容的存在在某一频率后衰减会逐渐收窄甚至出现反升。把这四条曲线放到同一张图里对照就可以一眼看出这个共模电感在哪个频段的抑制能力最强还有哪个频段处理不了。6.3 借助参数扫描优化器件参数我在看插入损耗曲线时最常做的事是用.step扫K系数和寄生电容值。K系数从0.9变到0.99差模插入损耗的低频段变化很大寄生电容从5pF变到20pF高频段谐振点会明显移动。通过这种参数扫描你能很快确定当前选型的电感在目标频段内有没有余量需不需要换磁芯材料或者调整绕线工艺。这种做法跟实际测试非常接近。拿到样品后我的习惯是先在人家的数据手册里查标称阻抗曲线再用LTspice扫一遍确认自己的模型和标称曲线对得上最后再上仪器实测。如果三者的吻合度都够高后续改版换料就可以放心用模型来选型不用每个候选物料都花钱打样实测省下的时间和测试费可不少。7. 仿真过程中那些容易踩的坑7.1 仿真不收敛怎么办AC扫描虽然是小信号线性分析但前提是电路必须先求出正确的直流工作点。如果直流工作点计算失败AC扫描就会报错或者给出完全不合逻辑的结果。最典型的错误是运放输入端悬空、没有直流路径这种情况在搭建差模共模测试电路时特别容易遇到。因为你一会儿改输入端的接地方式一会儿又换成交流源很容易不小心把一个输入引脚悬空在那里。遇到不收敛或者曲线异常的情况先检查如下几项所有输入端是否有到地的直流通路、运放电源是否正确连接、有没有浮动的电压节点。LTspice里可以用菜单里的DC operating point先单独跑一次工作点看各节点电压是否合理。对运放电路来说重点关注同相输入端和反相输入端电压是否接近一致输出是否在电源轨中间。7.2 为什么仿真曲线与实测对不上这是一个让很多人崩溃的问题仿真曲线很漂亮实测却完全对不上。其实不一定是仿真方法错更可能的原因是模型里缺少了实测中存在但仿真中忽略的寄生参数。举个例子共模电感仿真时如果你没画PCB走线的寄生电感和焊盘电容在高频段曲线必然对不上。解决办法是在模型里加入这些寄生参数尽量让模型的复杂度逼近真实物理结构。另外还有一种常见偏差来自信号源内阻。AC扫描时默认电压源是理想电压源内阻为零。但实际测量中信号源和线缆都有阻抗尤其在做EMI测试时LISN的阻抗特性会直接影响插入损耗曲线。解决方式是在LTspice里给电压源串联一个50欧姆电阻或者按你的实际测量系统填入对应的源阻抗这样仿真条件才能和实测环境对齐。7.3 模型库与第三方模型的导入问题LTspice自带的器件库很强大但它毕竟不是所有厂商模型的万金油。有些芯片厂商只提供SPICE模型文件需要在LTspice里手动导入。具体流程是把模型文件通常是.lib或.sub文件放到项目文件夹下然后在原理图上放置一个通用的组件符号在元件属性里指定Model File路径和模型名称。很多人卡在这一步是因为模型文件名和模型名不是同一个需要在编辑界面里仔细看文件内容才能找到真正的模型名。导入之后先去跑一条最简单的直流工作点测试确认模型能正常工作再开始做AC分析。我吃过好几次亏直接导入新模型就上手仿真结果曲线乱得没法看查了半天才发现是模型引脚的顺序和符号对不上。LTspice的符号引脚顺序有时和厂商模型的.subckt定义不一致这种情况需要在原理图里手动调整引脚映射关系或者在网表里直接用模型原本的引脚定义。7.4 如何用仿真结果反推设计改进方向仿真分析做到最后关键不是得到一条漂亮的曲线而是找到改进方向。在运放的CMRR分析里如果发现低频CMRR很好、高频CMRR快速恶化通常意味着需要减小运放输入端的寄生电容差异或者在反馈电阻上并联补偿电容来平衡两条路径的时间常数。在共模电感分析里如果某个频段插入损耗达到峰值后快速回落就该考虑增加磁珠或者改变滤波器的级数而不是一味增大电感量。LTspice的优势在于你可以快速做参数扫描把每个参数的影响面都摸一遍。比如调整某个补偿电容从1pF到10pF观察CMRR曲线最深凹陷的位置怎么移动然后根据你实际需要抑制的频率点来确定最优容值。这种“扫描-观察-决策”的闭环流程比在实验室里反复换料调试要快得多。我在设计EMI滤波器时基本都会先在LTspice里把各级参数扫出一张完整的趋势图再拿着这张图去跟器件供应商讨论选型效率提升非常明显。
返回列表