主要内容

转换香料网列表Simscape

您可以使用SPICE转换助手将SPICE组件转换为Simscape™等同物。这种转换通常是自动的。但是,由于SPICE是一种丰富的语言,不进行一些手动干预并不总是能够执行完整的转换。

按照以下步骤将SPICE子电路转换为等效Simscape组件。

  1. 使用subcircuit2ssc函数从SPICE网络列表文件生成Simscape语言组件文件。您可以使用可选选项subcircuit1,…,subcircuitN输入参数,用于指定要转换的子电路。

  2. 对生成的Simscape组件文件进行任何必要的手动转换。要识别所需的手动转换,请检查生成的Simscape组件文件开头的注释。您可以使用可选选项un万博1manbetxsupportedcommands.生成的输出参数结构体数组,列出每个子电路不支持的SPICE万博1manbetx命令。

  3. 使用以下命令构建库ssc_build或者使用将单个组件添加到模型中Simscape组件块。

有许多不同的SPICE模拟器,它们在语法和语法解释方面有所不同。转换助手使用与Cadence相同的语法®如果存在这种差异,则遵循PSpice。

命令

Spice转换助理支持这些命令:万博1manbetx

  • .FUNC——可重用函数

  • 帕拉姆先生——可定义的参数

  • 得閒- 可重用组件参数集

  • .SUBCKT——分支电路

  • . lib- 指令包含来自外部网表的模型

  • . inc- 指令包括外部网表的内容

转换助理实施.FUNC使用Simscape函数的SPICE命令。这些函数被放置在名为+subcircuit_name_simscape_functions,在那里subcircuit_name被转换的子电路的名称。

指定得閒电阻器,电容器和电感器的语法,如

.MODEL  res(r=) .MODEL  cap(c=) .MODEL  ind(l=)
在哪里rc, 和l值是组件声明中指定的值的缩放因子。此行为符合PSpice,但在所有模拟器中并不一致。

属性指定的初始条件不会自动转换。我知道了陈述。但是,您可以使用语法指定电容器和电感器的初始条件IC = <值>.此外,您可以手动转换任何。我知道了语句来自生成的Simscape组件文件。

因为转换助手的目的是帮助将SPICE子电路转换为Simscape块,模拟命令,例如.TRAN,将被忽略。

数字后缀

转换助手支持这些数字SPICE后缀:万博1manbetx

后缀 姓名 规模
T 1 e12汽油
G Giga 1 e9
梅格 大型 1 e6
K 公斤 1 e3
1 e - 3
米尔 - 25.4 e-6
U 1 e-6
N 纳米 1 e-9
P 皮科 1 e-12
F 毫微微 1 e15汽油

数学函数

转换助手支持SPICE和Simscape中使用的这万博1manbetx些基本数学函数。这些基本的数学函数可能不是连续的或平滑的,并可能在模拟过程中造成数值问题。为了解决这些问题,这些函数可能需要平滑。

subcircuit2ssc函数在转换SPICE子电路时自动开启平滑参数。要禁用平滑选项,在生成的Simscape组件块的块掩码中,设置指定函数平滑参数参数到

小学数学

姓名 香料函数 Simscape功能
绝对值 腹肌 simscape.function.abs (x,佐)
最小的元素 simscape.function.minm(x,y,n,epsilon)
最大的元素 马克斯 simscape.function.maxm (x, y, n,ε)
符号函数 胡志明市 simscape.function.sign(x,zc)

三角学习

姓名 香料函数 Simscape功能
s
反正弦 印度历的7月 simscape.function.asinm (x,警告)
双曲正弦 Sinh. simscape.function.sinhm(x,maxabsx,warn)
余辉 因为 因为
逆余弦 ACOS. simscape.function.acosm(x,warn)
双曲余弦 科什 simscape.function.coshm (x, maxAbsX警告)
棕褐色 simscape.function.tanm(x,标志,epsilon,x0,warn)
逆切 : :
四象限逆切 量化 量化
双曲正切 双曲正切 双曲正切

指数和对数

姓名 香料函数 Simscape功能
权力 x**ypwr(x,y), 或者压水堆(x,y) simscape.function.powerRational (x, y,国旗,ε,警告)
指数 exp. simscape.function.expm (x, xl、xh警告)
自然对数 ln或者日志 simscape.function.logm(x,x0,warn)
八进制数数对数 log10. simscape.function.log10m (x, x0,警告)
平方根 √6 simscape.function.sqrtm(x,标志,epsilon,warn)

转换助理解释日志()作为自然对数而不是以10为底的对数。并非所有SPICE模拟器在这方面都是一致的,因此要确保这种解释与SPICE模型一致。

其他

此外,转换助手还支持以下SPICE和Simscape函数:万博1manbetx

姓名 香料函数 Simscape功能
如果条件 如果 如果其他
饱和 限制 simscape.function.limitm (x, a、b、n,ε)
电流装置
电压设备 v v
阶跃函数 STP. 如果x> 0,则为其他0结束
导数(见限制 滴滴涕 der
表格 表格 simscape.tablelookup ((x1, x2,……xn) (y1, y2,…yn), x,插值=线性外推法=最近的)

Simscape函数列表

这个函数总是输出一个正值。使用这个函数可以防止被零除法之类的问题。ε确定转换的平滑度,并且是千斤顶的绝对误差x= 0

x>ε,这个函数的输出趋向于x

这个函数返回输入参数的绝对值,x

您可以通过指定输入参数来启用或禁用零交叉到任一真的或者

这个函数返回的指数xExp(x),当x范围之间xlxl.否则,它使用线性外推与梯度匹配的边界。

使用此函数可避免与Exp(x)对于很小或很大的输入参数。

这个函数返回的双曲余弦值xcosh(x),当x范围之间-maxAbsXmaxAbsX.否则,它使用线性外推与梯度匹配的边界。

使用此函数可避免与cosh(x)对于较大的负或正输入参数。

这个函数返回的是的双曲正弦xsinh (x),当x范围之间-maxAbsXmaxAbsX.否则,它使用线性外推与梯度匹配的边界。

使用此函数可避免与sinh (x)对于较大的负或正输入参数。

这个函数返回的是的反余弦值x助理文书主任(x),因为1≤x≤10x> 1, π代表x < 1.这样可以防止对无效输入范围的小数字入侵助理文书主任(x)

这个函数返回的反正弦值xAsin(x),因为1≤x≤10x> 1, π代表x < 1.这样可以防止对无效输入范围的小数字入侵Asin(x)

这个函数返回x之间的有限xlxh.输入参数,n,设置平滑函数的顺序。

论点ε确定了转换的开始,并且是函数的绝对误差时x等于xl或者xh

这个函数返回的自然对数x日志(x),当x大于X0..否则,它使用线性外推与梯度匹配的边界。

的值时使用此函数x达到接近0在模拟。集X0.之间的01

此功能返回基本10对数xlog10 (x),当x大于X0..否则,它使用线性外推与梯度匹配的边界。

的值时使用此函数x达到接近0在模拟。集X0.之间的01

这个函数返回之间最大的参数xy.输入参数,n,设置平滑函数的顺序。

论点ε确定了转换的开始,并且是函数的绝对误差时x等于y

此函数返回最小的参数xy.输入参数,n,设置平滑函数的顺序。

论点ε确定了转换的开始,并且是函数的绝对误差时x等于y

功率功能x ^ Y.,在那里y是理性的,有消极的保护x

如果国旗参数是0,函数返回x ^ Y.x≥0- (- x) ^ yx<0.如果国旗参数是1将幂函数应用于simscape.function.hyp (x,ε)

SPICE转换助手转换pwr(x,y)香料函数simscape.function.powerRational (x, y, 1,0,警告)

SPICE转换助手转换压水堆(x,y)香料函数simscape.function.powerRational(x,y,0,0,warn)

这个函数返回输入参数的signum,x

您可以通过指定输入参数来启用或禁用零交叉到任一真的或者

带输入参数保护的平方根函数。

如果国旗参数是0,此函数返回sqrt (x)为阳性x-sqrt(-x)对于否定x.如果国旗参数是1,将平方根函数应用于simscape.function.hyp (x,ε)

带输入保护的正切函数。

如果国旗参数是0,此函数返回切线x谭(x),当x等于2π.或者-π/ 2..的ε参数决定在这些点上过渡的平滑性。

如果国旗参数是1,此函数返回切线x谭(x),当x范围之间x0X0..否则,它使用线性外推与梯度匹配的边界。

1 /ε是输出参数的最大允许值y

< / argumentlist >

符号

转换助手识别这些SPICE符号:

  • +在行的开始时,指示前一行的线路继续

  • 在一行的开始时表示整行是评论

  • 在一行中表示内联注释的开始

组件

本节中的Spice命令表示说明:

  • <参数>指命令行中所需的项目

  • <参数> *指命令行中出现一次或多次的必需项

  • (论点)指命令行中的可选项目

  • [争论]*指命令行中出现零次或多次的可选项

此列表显示了受支持的SPICE组件的完整集合,以及它们受支持的S万博1manbetxPICE netlist表示法。您只能指定得閒与SPICE默认值不同的参数。

来源

  • 独立电压源

    v  <+节点> < -  node> [dc]  v  <+ node> < -  node> exp(     )v  <+节点> < - 节点>脉冲(      )v  <+ node> < -  node> pwl(<< tj> > *)v  <+节点> < -  node> sffm(    )v  <+ node> <- 节点> SIN(    
  • 独立电流源

    我<名称> < +节点> < - >节点(DC)价值> <我<名称> < +节点> < - >节点exp (< i1 > < i2 > < td1 > < tc1 > < td2 > < tc2 >)我<名称> < +节点> < - >节点脉冲(< i1 > < i2 > < td > < tr > < tf > < pw > < / >)我<名称> < +节点> < - >节点pwl (< < tj > < ij > > *)我<名称> < +节点> < - >节点sffm (< ioff > < iampl > < fc > < mod > <调频>)我<名称> < +节点> < - >节点罪(< ioff > < iampl > <频率> < td > < df >)
  • 电流控制电压源

    H <名称> < +节点> < -节点> <电压源名称> <增加> H <名称> < +节点> < - >节点值={<表达式>}H <名称> < +节点> < - >节点聚(< >价值)<电压源名称> * <系数> * H <名称> < +节点> < - >节点表{<表达式>}= < <输入值>,<输出值> > * H <名称> < +节点> < -节点> <电压源名称>表= < <输入值>,<输出值> > *
  • 压控电压源

    E<+node><-node><+control node><-control node>E<+node><-node>值={}E<+node><-node>多边形()<+control node><-control node><系数>*E<+node><-node>表{输入值>,,>*E<+node><-node><+control node><-control node>表=<>*
  • 电流控制电流源

    f  <+节点> < - 节点> <电压源名称> <增益> f  <+节点> < -  node>值= {<表达式>} f  <+ node> < - 节点> < - 节点>POLY() * * F <+ node> <- node> TABLE {}=< ,  >* F <+ node> <- node>  TABLE=< ,  >*
  • 压控电流源

    G <+ node> <- node> <+ control node> <- node>  G <+ node> <- node> VALUE={} G <+ node> <- node b> POLY(< VALUE >) <<+ control node> <- control node>>* * G <+ node> <- node> TABLE {}=< ,<输出值> >* G <+节点> <-节点> <+控制节点> <-控制节点> TABLE=< <输入值>,<输出值> >*
  • 行为源(<表达式>不需要出现在括号中{})

    B<+node><-node>V=B<+node><-node>I=

无源设备

  • 电阻器

    R <+ node> <- node> [model name]  .MODEL  res(R =)
  • 电容器

    C <+ node> <- node> [model name]  [IC=] .MODEL  cap(C=)
  • 电感器

    L <+ node> <- node> [model name]  [IC=] .MODEL  ind(L =)
  • 电感耦合

    K <感应器名称> <感应器名称>* 

开关

  • 压控开关

    S <+ node> <- node> <+ control node> <- control node>  .MODEL  sw(ron=, roff=, vt=, vh=)
  • 电流控制开关

    W <+ node> <- node>   .MODEL  csw(ron=, roff=, it=, ih=)

半导体器件

  • 二极管

    D <名称> < +节点> < -节点> <模型名称>(地区)得<模型名称> D (rs = = <价值>,<价值>,n = > <价值,cjo = > <价值,vj = > <值,+ m = > <价值,fc = > <价值,tt = > <价值,revbrk = > <价值,bv = > <价值,ibv = > <值,+ xti = > <价值,如= < >价值)
  • 双极结晶体管(BJT)

    NPN型

    Q    [substrate node]   .MODEL  npn(bf=, br=, cjc=, cjs=, +eg=, fc=, ikf=, ikr=, irb=, is=, isc=, +ise=, itf=, mjc=, mje=, mjs=, nc=,)= > <值,+ nf = > <价值,nr = > <价值,rb = > <价值,遏制= > <价值,rc = > <价值,re = > <价值,tf = > <值,+ tr = > <价值,vaf = > <价值,var = > <价值,vjc = > <价值,vje = > <价值,vj = > <价值,vtf = > <值,+ xcjc = > <价值,xtb = > <价值,xtf = > <价值,xti = < >价值)

    PNP.

    Q[衬底节点].modelpnp(bf=,br=,cjc=,cje=,cjs=,+eg=,fc=,ikf=,ikr=,irb=,is=,isc=,+ise=,itf=,mjc=,mjs=,nc=,nc=,ne=,ne=,+nf=,nr=,nr=,rb=,rb=,rb=,rb=,rbm=lue>,var=,vjc=,vje=,vjs=,vtf=,+xcjc=,xtb=,xtf=,xti=

  • 结场效应晶体管(JFET)

    n沟道

    J  <漏极节点> <门节点> <源节点> <型号名称> [区域] .model <型号名称> njf(beta = ,cgd = ,cgs = ,fc= ,is = ,+ lambda = ,m = ,n = ,rd = ,rs = ,vto = ,xti =

    p沟道

    [area] .MODEL  pjf(beta=, cgd=, cgs=, fc=, is=, +lambda=, m=, n=, rd=, rs=, vto=, xti=)

  • 金属氧化物半导体场效应晶体管

    N-Channel(仅支持1级和3级)万博1manbetx

    M      +[L=] [W=] [AD=] [AS=] [PD=] [PS=] [NRD=] +[NRS=] [M=] .MODEL  nmos(cbd=, cbs=, cgbo=, cgdo=, +cgso=, cj=, cjsw=, delta=, eta=, fc=)+γ= > <价值,是= > <价值,js = > <价值,kappa = > <价值,kp = > <价值,λ= > <值,+ ld = > <价值,水平= > <价值,乔丹= > <价值,mjsw = > <价值,n = > <价值,内夫= > <价值,nfs = > <值,+ nss = > <价值,nsub = > <价值,”= > <价值,nrs = > <价值,pb = > <价值,φ= > <价值,rd = > <值,+ rs = > <价值,rsh = > <价值,θ= > <价值,托克斯= > <价值,tpg = > <价值,ucrit = > <价值,+单边= > <价值,uo = > <价值,vmax = > <价值,vto = > <价值,xj = < >价值)

    P通道(仅支持1级和3级)万博1manbetx

    M      +[L=] [W=] [AD=] [AS=] [PD=] [PS=] [NRD=] +[NRS=] [M=] .MODEL  pmos(cbd=, cbs=, cgbo=, cgdo=, +cgso=, cj=, cjsw=, delta=, eta=, fc=,)+γ= > <价值,是= > <价值,js = > <价值,kappa = > <价值,kp = > <价值,λ= > <值,+ ld = > <价值,水平= > <价值,乔丹= > <价值,mjsw = > <价值,n = > <价值,内夫= > <价值,nfs = > <值,+ nss = > <价值,nsub = > <价值,”= > <价值,nrs = > <价值,pb = > <价值,φ= > <价值,rd = > <值,+ rs = > <价值,rsh = > <价值,θ= > <价值,托克斯= > <价值,tpg = > <价值,ucrit = > <价值,+单边= > <价值,uo = > <价值,vmax = > <价值,vto = > <价值,xj = < >价值)

子系统

  • 分支电路

    X [node]*  [PARAMS: < = >*]

执行手动转换

生成SIMSCAPE组件文件后,检查每个文件标头以获取有关不受支持的SPICE命令的消息。万博1manbetx例如,转换助手不支持电阻温度系数的实现:万博1manbetx

R1 p n 1k TC=0.01,-0.002

生成的Simscape组件文件包含所有受支持的转换和此标题,该标题标识了用于手动转换的电阻的温度系数:万博1manbetx

组件测试%测试%组件从香料网列表自动生成(11-Dec-2018 09:34:57)。%用户应该手动实现以下Spice命令,以便%实现完整的实现:%R1:TC 0.01 -0.002
要完成转换,请修改Simscape组件文件以实现缺失的组件。有关执行手动转换和此特定场景的更多信息,请参见subcircuit2ssc

寄生价值

对于无源器件,如电容器和电感,要在生成的Simscape组件文件中引入寄生值,设置寄生指定值参数到是的.的值电容器寄生串联电阻或者电感寄生并联电导参数。

限制

  • 网表必须以PSPICE格式写入并进行句子正确。转换助理不会检查适当的PSPICE语法。

  • 只支持PSpice网络列表语言的一个子集。万博1manbetx但是,在相应的Sims万博1manbetxcape组件文件的顶部标识不支持的PSpice命令,以方便手动转换。

  • 要将生成的Simscape组件构建到Simscape块中,参数值必须符合Simscape约束。例如,基本电容的电容和基本电感的电感必须是非零的。

  • 转换助手不支持使用派生的SPICE函数,万博1manbetx滴滴涕,在函数调用中。

另请参阅

|

相关话题