在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8644|回复: 16

[讨论] ACDC线圈两种仿真模型的对比

[复制链接]
发表于 2012-11-2 11:28:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x


spectre 可以CALL  hspice model


另個是 call  verilog-A

edaboard google 到

// VerilogA for edaboard, transformer, veriloga

`include "constants.vams"
`include "disciplines.vams"

module transformer(pr1,pr2,sec1,sec2,th1,th2);
inout pr1,pr2,sec1,sec2,th1,th2;
electrical pr1,pr2,sec1,sec2,th1,th2;

parameter real n1 = 1.0 from [1:inf); //number of turns in primary winding
parameter real n2 = 3.0 from [1:inf); //number of turns in second winding
parameter real n3 = 3.0 from [1:inf); //number of turnes in third winding
parameter real L = 1n from (0:inf); //inductanse per one turn in H
parameter real k12 = 0.97 from [0:1]; //coupling between first and second, first and third windings

parameter real R1 = 1.0 from [0:inf); //resistance of primary winding in Ohm
parameter real R2 = 3.0 from [0:inf); //resistance of second winding in Ohm
parameter real R3 = 3.0 from [0:inf); //resistance of third winding in Ohm

real k13,F1,F2,F3;
analog begin
@(initial_step or initial_step("dc")) begin
k13 = k12;
end

F1 = L*(n1*I(pr1,pr2)-k12*n2*I(sec1,sec2)-k13*n3*I(th1,th2)); //magnetic flow through primary winding
F2 = L*(n2*I(sec1,sec2)-k12*n1*I(pr1,pr2)+n3*I(th1,th2)); //magnetic flow through secondary winding
F3 = L*(n3*I(th1,th2)-k13*n1*I(pr1,pr2)+n2*I(sec1,sec2)); //magnetic flow through secondary winding

V(pr1,pr2)<+R1*I(pr1,pr2)+n1*ddt(F1);
V(sec1,sec2)<+R2*I(sec1,sec2)+n2*ddt(F2);
V(th1,th2)<+R3*I(th1,th2)+n3*ddt(F3);

end

endmodule


以上代码感谢peterlin2010

以下是问题:
关于隔离开关电源线圈的仿真模型

奇怪的问题求助:我用peterlin2010 的代码,建了个model
设置好参数:
transformer n1=180 n2=45 n3=32 L=0.000052m k12=0.97 R1=0.18 R2=0.045 R3=0.032

同时我又建了另外一个model,用analogLib库里面的ind和mind:
K6 mutual_inductor coupling=0.97 ind1=L1 ind2=L2
K5 mutual_inductor coupling=0.97 ind1=L0 ind2=L2
K0 mutual_inductor coupling=0.97 ind1=L0 ind2=L1
L0 (net0246 net0182) inductor l=1.7m r=180.00m
L2 (net075 0) inductor l=53.73u r=45.000m
L1 (net0189 0) inductor l=106.25u r=32.000m


两种方案,同样的外围仿真结果对比。

结果大的波形可以达到基本上一致,但是后面一个方案的波形,在开关时ring很大,而前一个方案波形很漂亮,基本无ring
下图是AUX的波形

                               
登录/注册后可看大图


现在我不知道哪一种更接近实际情况?望有经验的指点一下
发表于 2012-11-4 10:02:22 | 显示全部楼层
the blue one is real if the setting is right
发表于 2012-11-5 14:38:48 | 显示全部楼层
回复 1# feiyufox


    非常想向你请教一个问题。
我尝试用analogLib库里面的ind和mind来组合三绕组变压器的时候,发现无法仿真得到合理结果。
求问?应该怎样搭起来这个结构?
 楼主| 发表于 2012-11-6 13:35:34 | 显示全部楼层
回复 3# cmfjxga

transformer n1=180 n2=45 n3=32 L=0.000052m k12=0.97 R1=0.18 R2=0.045 R3=0.032

同时我又建了另外一个model,用analogLib库里面的ind和mind:
K6 mutual_inductor coupling=0.97 ind1=L1 ind2=L2
K5 mutual_inductor coupling=0.97 ind1=L0 ind2=L2
K0 mutual_inductor coupling=0.97 ind1=L0 ind2=L1
L0 (net0246 net0182) inductor l=1.7m r=180.00m
L2 (net075 0) inductor l=53.73u r=45.000m
L1 (net0189 0) inductor l=106.25u r=32.000m


经过我比对,以上两种组合是基本一致的,除了切换时ring不同外。
L0 L1 L2分别是初次辅线圈
发表于 2012-11-6 17:15:22 | 显示全部楼层
回复 4# feiyufox


    非常感谢你的回答~~

能不能截个图?就是关于你自己用ind和mind组合得到的变压器模型……

我自己在spectre里面搭模型的时候,耦合参数K都是设置为1的,但是三绕组却无法收敛,无法得到合理的输出。

以下是我的电路图 dd.bmp
 楼主| 发表于 2012-11-9 10:43:18 | 显示全部楼层
1.png 好像也没有本质区别么,不收敛看是不是设置的问题
 楼主| 发表于 2012-11-19 15:54:44 | 显示全部楼层
更新,发现只要把
K6 mutual_inductor coupling=0.97 ind1=L1 ind2=L2
K5 mutual_inductor coupling=0.97 ind1=L0 ind2=L2
K0 mutual_inductor coupling=0.97 ind1=L0 ind2=L1
L0 (net0246 net0182) inductor l=1.7m r=180.00m
L2 (net075 0) inductor l=53.73u r=45.000m
L1 (net0189 0) inductor l=106.25u r=32.000m
中的K6的coupling从0.97改为1,即可达到很漂亮的无ring的结果,与verilogA仿真结果对应。
同时发现把K5或K0或K6中的任一个改为1,均可以。
为什么…………这地方必须是1, 哪来这么完美的coupling......






以上代码感谢

以下是问题:
关于隔离开关电源线圈的仿真模型
feiyufox 发表于 2012-11-2 11:28

发表于 2012-11-20 23:57:10 | 显示全部楼层
回复 7# feiyufox


    ring是漏感造成的,耦合系数改为1,相当于让漏感为0,ring自然就没有了。
发表于 2012-11-21 11:40:19 | 显示全部楼层
本帖最后由 ran1234 于 2012-11-21 11:44 编辑

各位高人,我根据上述的verilogA代码做仿真遇到问题;弱弱问一句;
transformer n1=180 n2=45 n3=32 L=0.000052m k12=0.97 R1=0.18 R2=0.045 R3=0.032

(1)这几个匝数180/45/32设置好后,R1/R2/R3怎么设置,设置不同有什么影响?
(2) L=0.000052m 怎么运算得来的?
我仿真发现,L值由小到大的设置不同;PWM调节变化很大,变压器工作模式由DCM 变化到CCM变化很大呀? 设置L值合适是多少?
发表于 2012-11-21 11:44:10 | 显示全部楼层
急,急,急!!! 小弟请教各位大虾!
我根据上述的verilogA代码做仿真遇到问题;弱弱问一句;
transformer n1=180 n2=45 n3=32 L=0.000052m k12=0.97 R1=0.18 R2=0.045 R3=0.032

(1)这几个匝数180/45/32设置好后,R1/R2/R3怎么设置,设置不同有什么影响?
(2) L=0.000052m 怎么运算得来的?
我仿真发现,L值由小到大的设置不同;PWM调节变化很大,变压器工作模式由DCM 变化到CCM变化很大呀? 设置L值合适是多少?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-2-10 23:09 , Processed in 0.025159 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表