⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 power456.lib

📁 开关电源的设计及仿真.rar
💻 LIB
📖 第 1 页 / 共 2 页
字号:
**** Lib files for Christophe BASSO's book
**** OrCAD PSpice compatible
**** Last modified on January 2007
* ---------------------------------------------------------- *
* PSpice generic models library for PWM controllers working in
* Voltage Mode (PWMVM) or Current Mode (PWMCM)
* Models developped by Christophe BASSO, Toulouse (FRANCE)
* Please report any bugs or non-convergence problems to:
* CBASSO@WANADOO.FR
* These models require PSpice version 6.2a or higher
* ---------------------------------------------------------- *
******
*$
.SUBCKT PWMCM2 1   2   3    4  5	    6 	PARAMS:
*	          OUT GND COMP FB SENSE VOSC
+REF=2.5, PERIOD=5U, DUTYMAX=0.8, RAMP=5V, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, VOUTLO=100M, RATIO=0.333
*	
*	Generic Model for Current Mode PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: October 25th 1996
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DUTYMAX 	; maximum duty cycle
* RAMP		; ramp amplitude for compensation
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
* RATIO		; maximum peak current at max output error level
			; (CM only)
***********************************************
XERR 10 4 3 2 ERRAMP PARAMS:	VHIGH={VHIGH} ISINK={ISINK} ISOURCE={ISOURCE} ; error amplifier
+				VLOW={VLOW} POLE={POLE} GAIN={GAIN}
VREF 10 2 {REF}					; reference voltage
ELIM 500 2 VALUE = { V(3)*RATIO }				; max peak current = VOH*RATIO / Rsense
XCOM 5 500 12 COMP				; limit comparator
XFFL 11 82 14 13 FFLOP				; flip-flop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}	; Clock set pulses
VRAMP 6 2 PULSE 0 {RAMP} 0 {PERIOD-2N} 1N 1N {PERIOD}
VDUT 80 2 PULSE 0 5 {PERIOD*DUTYMAX} 1N 1N {(PERIOD-PERIOD*DUTYMAX)-2N} {PERIOD} ; max. duty cycle (=delay/period) delay=period-(tr+tf+tpuls)
XOR1 11 14 81 OR2				; Clock OR FFlopD
XOR2 80 12 82 OR2				; IMAX OR MAXduty Reset
E_BOUT 15 2 VALUE = { IF ( V(81) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT 15 1 {ROUT}				; output resistor
.ENDS PWMCM2
******
.SUBCKT PWMCMS out1   2   3    4  5	    6 	out2 PARAMS:
*	          OUT GND COMP FB SENSE VOSC
+REF=2.5, PERIOD=5U, DUTYMAX=0.8, RAMP=5V, VOUTHI=15V, 
+RO1=10, RO2=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, VOUTLO=100M, RATIO=0.333, DT=100N
*	
*	Generic Model for Current Mode PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: December 18th 2005
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DUTYMAX 	; maximum duty cycle
* RAMP		; ramp amplitude for compensation
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
* RATIO		; maximum peak current at max output error level
			; (CM only)
***********************************************
.PARAM Rd={DT/(0.693*1n)}

XERR 10 4 3 2 ERRAMP PARAMS:	VHIGH={VHIGH} ISINK={ISINK} ISOURCE={ISOURCE} ; error amplifier
+				VLOW={VLOW} POLE={POLE} GAIN={GAIN}
VREF 10 2 {REF}					; reference voltage
ELIM 500 2 VALUE = { V(3)*RATIO }				; max peak current = VOH*RATIO / Rsense
XCOM 5 500 12 COMP				; limit comparator
XFFL 11 82 14 13 FFLOP				; flip-flop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}	; Clock set pulses
VRAMP 6 2 PULSE 0 {RAMP} 0 {PERIOD-2N} 1N 1N {PERIOD}
VDUT 80 2 PULSE 0 5 {PERIOD*DUTYMAX} 1N 1N {(PERIOD-PERIOD*DUTYMAX)-2N} {PERIOD} ; max. duty cycle (=delay/period) delay=period-(tr+tf+tpuls)
XOR1 11 14 81 OR2				; Clock OR FFlopD
XOR2 80 12 82 OR2				; IMAX OR MAXduty Reset
E_BOUT din 2 VALUE = { IF ( V(81) > 3.5, 5, 0 ) }

X1 550 din out10 AND2DT
X2 700 800 out20 AND2DT
EB100 300 0 Value = { IF ( V(out10) > 2.5, {VOUTHI}, {VOUTLO} ) }
EB200 310 0 Value = { IF ( V(out20) > 2.5, {VOUTHI}, {VOUTLO} ) }
Rout1 300 out1 {Ro1}
Rout2 310 out2 {Ro2}
R3 din 550 {Rd}
C1 550 0 1n
R4 800 700 {Rd}
C2 700 0 1n
X3 din 800 INVDT

.ENDS PWMCMS
******
.SUBCKT 2SWITCHCM 1    8   7    2   3    4  5    6 PARAMS:
* 				  OUT1 GNF OUT2 GND COMP FB SENS OSC
+REF=2.5, PERIOD=5U, DUTYMAX=0.8, RAMP=5V, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, VOUTLO=100M, RATIO=0.333
*			  	
*	Generic Model for 2 switch Current Mode PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: October 1999
*
VREF 10 2 {REF}							; reference voltage
XCOM 5 500 12 COMP						; limit comparator
ELIM 500 2 VALUE = { V(3)*RATIO }		; max peak current = VOH*RATIO / Rsense
XFFL 11 82 14 13 FFLOP					; RS latch flipflop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}; Clock set pulses
VDUT 80 2 PULSE 0 5 {PERIOD*DUTYMAX} 1N 1N {(PERIOD-PERIOD*DUTYMAX)-2N} {PERIOD}
VRAMP 6 2 PULSE 0 {RAMP} 0 {PERIOD-2N} 1N 1N {PERIOD}
XOR1 11 14 81 OR2						; Clock OR FFlopD
XOR2 80 12 82 OR2						; IMAX OR MAXduty Reset
EOUT1 25 8 VALUE = { IF ( V(81) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT1 25 1 {ROUT}							; Output resistor 1
RDUMF 8 2 10MEG
EOUT2 250 2 VALUE = { IF ( V(81) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT2 250 7 {ROUT}						; Output resistor 2
CP1 110 0 {1/(6.28*(GAIN/100U)*POLE)}
E1 50 0 110 0 1
R9 50 200 5
D14 200 130 DMOD
IS1 130 0 {ISINK/100}
Q1 0 130 160 QPMOD
IS2 70 3 {ISOURCE}
D12 3 70 DMOD
D15 0 110 DCLAMP
G1 0 110 10 4 100U
V1 70 0 {VHIGH-0.6}
V2 3 160 {VLOW-40M}
RP1 110 0 {GAIN/100U}
.MODEL QPMOD PNP
.MODEL DCLAMP D (RS=10 BV=10 IBV=0.01)
.MODEL DMOD D
.ENDS
*$
******
.SUBCKT PWMVM2 1   2   3    4  5		PARAMS:
*	      	  OUT GND COMP FB IMAX
+REF=2.5, PERIOD=5U, DUTYMAX=0.8, IMAX=2.5V, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, DUTYMIN=0.1, VOUTLO=100M
*	
*	Generic Model for Voltage Mode PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: October 26th 1996
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DUTYMAX 	; maximum duty cycle
* DUTYMIN	; minimum duty cycle
* IMAX		; max voltage upon (external) RSENSE resistor 
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
***********************************************
.PARAM VP = { (VLOW*DUTYMAX-VHIGH*DUTYMIN+VHIGH-VLOW)/(DUTYMAX-DUTYMIN) }	; valley ramp voltage
.PARAM VV = { (VLOW-DUTYMIN*VP)/(1-DUTYMIN)}								; peak ramp voltage
XERR 10 4 3 2 ERRAMP PARAMS:	VHIGH={VHIGH} ISINK={ISINK} ISOURCE={ISOURCE} ; error amplifier
+VLOW={VLOW} POLE={POLE} GAIN={GAIN}
VREF 10 2 {REF}					; reference voltage
VRAMP 16 2 PULSE {VV} {VP} 0 {PERIOD-2N} 1N 1N {PERIOD} ; comparison ramp
XCOM1 16 3 18 COMP				; PWM comparator
XCOM2 5 19 12 COMP				; I limit comparator
VLIMT 19 2 {IMAX}				; I limit level (Max voltage upon external sense resistor)
XOR2 12 18 20 OR2				; Reset by IMAX OR PWM
XFFL 11 20 14 13 FFLOP				; flip-flop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}	; Clock set pulses
E_BOUT 15 2 VALUE = { IF ( V(14) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT 15 1 {ROUT}				; output resitor
.ENDS PWMVM2
*$
************
.SUBCKT PUSH_CM 1    7    2   3    4  5    6 PARAMS:
*			    OUT1 OUT2 GND COMP FB SENS OSC
+REF=2.5, PERIOD=5U, DEAD=0.95, RAMP=5V, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, VOUTLO=100M, RATIO=1
*	
*	Generic Model for Current Mode Push-Pull PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: July 5th 2001
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DEAD	 	; dead time between OUT1 and OUT2
* RAMP		; ramp amplitude for compensation
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
***********************************************
VREF 10 2 {REF}							; reference voltage
XCOM 5 500 12 COMP						; limit comparator
EBLIM 500 2 Value = { V(3)*{RATIO} }				; max peak current = VOH*RATIO / Rsense
XFFL1 82 11 14 13 FFLOP					; RS latch flipflop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}; Clock reset pulses
VDUT 80 2 PULSE 0 5 {PERIOD*DEAD} 1N 1N {(PERIOD-PERIOD*DEAD)-2N} {PERIOD}
VRAMP 6 2 PULSE 0 {RAMP} 0 {PERIOD-2N} 1N 1N {PERIOD}
XOR1 11 14 81 OR2						; Clock OR FFlopD
XOR2 80 12 82 OR2						; IMAX OR MAXduty set
XFFL2 81 300 2 2 300 301 TOGGLE
XNOR1 301 81 303 NOR2 
XNOR2 300 81 304 NOR2
EBOUT1 15 2 Value = { IF ( V(303) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT1 15 1 {ROUT}							; Output resistor 1
EBOUT2 250 2 Value = { IF ( V(304) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT2 250 7 {ROUT}						; Output resistor 2
RDUM1 10 4 8MEG
CP1 110 0 {1/(6.28*(GAIN/100U)*POLE)}
E1 50 0 110 0 1
R9 50 200 5
D14 200 130 DMOD
IS1 130 0 {ISINK/100}
Q1 0 130 160 QPMOD
IS2 70 3 {ISOURCE}
D12 3 70 DMOD
D15 0 110 DCLAMP
G1 0 110 10 4 100U
V1 70 0 {VHIGH-0.6}
V2 3 160 {VLOW-40M}
RP1 110 0 {GAIN/100U}
.MODEL QPMOD PNP
.MODEL DCLAMP D (RS=10 BV=10 IBV=0.01)
.MODEL DMOD D
.ENDS PUSH_CM
*$
******
.SUBCKT PUSH_VM 1    7    2   3    4  5		PARAMS:
*	      	    OUT1 OUT2 GND COMP FB IMAX
+REF=2.5, PERIOD=5U, DUTYMAX=0.95, IMAX=2.5, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, DUTYMIN=0.1, VOUTLO=100M
*	
*	Generic Model for Voltage Mode Push-Pull PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: November 18th 1996
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DUTYMAX 	; maximum duty cycle (naturally limited at 0.5 or less)
* DUTYMIN	; minimum duty cycle
* IMAX		; max voltage upon (external) RSENSE resistor 
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
***********************************************
.PARAM VP = { (VLOW*DUTYMAX-VHIGH*DUTYMIN+VHIGH-VLOW)/(DUTYMAX-DUTYMIN) }	; valley ramp voltage
.PARAM VV = { (VLOW-DUTYMIN*VP)/(1-DUTYMIN)}								; peak ramp voltage
XERR 10 4 3 2 ERRAMP PARAMS:	VHIGH={VHIGH} ISINK={ISINK} ISOURCE={ISOURCE} ; error amplifier
+VLOW={VLOW} POLE={POLE} GAIN={GAIN}
VREF 10 2 {REF}					; reference voltage
VRAMP 16 2 PULSE {VV} {VP} 0 {PERIOD-2N} 1N 1N {PERIOD} ; comparison ramp
XCOM1 16 3 18 COMP				; PWM comparator
XCOM2 5 19 12 COMP				; I limit comparator
VLIMT 19 2 {IMAX}				; I limit level (Max voltage upon external sense resistor)
XOR2 12 18 20 OR2				; Set by IMAX OR PWM
XFFL 20 11 14 13 FFLOP			; flip-flop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}	; Clock Reset pulses
XNOR1 301 14 303 NOR2 
XNOR2 300 14 304 NOR2
XFFL2 14 300 2 2 300 301 TOGGLE
E_BOUT1 15 2 VALUE = { IF ( V(303) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT1	15 1 {ROUT}				; output resitor
E_BOUT2 250 2 VALUE = { IF ( V(304) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT2 250 7 {ROUT}				; output resitor
.ENDS PUSH_VM
*$
********
.SUBCKT HALF_CM 1   8   7      2   3    4  5	    6 	PARAMS:
*	            OUT GNF OUT2   GND COMP FB SENSE VOSC
+REF=2.5, PERIOD=5U, DUTYMAX=0.95, RAMP=5V, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, VOUTLO=100M, RATIO=0.333
*	
*	Generic Model for Current Mode Half-bridge PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: November 21st 1996
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DUTYMAX 	; maximum duty cycle on both outputs
* RAMP		; ramp amplitude for compensation
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
***********************************************
XERR 10 4 3 2 ERRAMP PARAMS:	VHIGH={VHIGH} ISINK={ISINK} ISOURCE={ISOURCE} ; error amplifier
+				VLOW={VLOW} POLE={POLE} GAIN={GAIN}
VREF 10 2 {REF}					; reference voltage
ELIM 500 2 VALUE = { V(3)*RATIO }				; max peak current = VOH*RATIO / Rsense
XCOM 5 500 12 COMP				; limit comparator
XFFL 82 11 14 13 FFLOP				; flip-flop
RDUM 13 2 1MEG
VCLK 11 2 PULSE 0 5 0 1N 1N 10N {PERIOD}	; Clock set pulses
VRAMP 6 2 PULSE 0 {RAMP} 0 {PERIOD-2N} 1N 1N {PERIOD}
VDUT 80 2 PULSE 0 5 {PERIOD*DUTYMAX} 1N 1N {(PERIOD-PERIOD*DUTYMAX)-2N} {PERIOD} ; max. duty cycle (=delay/period) delay=period-(tr+tf+tpuls)
XOR1 11 14 81 OR2				; Clock OR FFlopD
XOR2 80 12 82 OR2				; IMAX OR MAXduty Reset
XNOR1 301 81 303 NOR2
XNOR2 300 81 304 NOR2
XFFL2 81 300 2 2 300 301 TOGGLE
E_BOUT1 25 8 VALUE = { IF ( V(303) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT1 25 1 {ROUT}							; Output resistor 1
RDUMF 8 2 10MEG
E_BOUT2 250 2 VALUE = { IF ( V(304) > 3.5, {VOUTHI}, {VOUTLO} ) }
ROUT2 250 7 {ROUT}
.ENDS HALF_CM
*$
***********
.SUBCKT HALF_VM 1    8   7    2   3    4  5		PARAMS:
*	      	    OUT1 GNF OUT2 GND COMP FB IMAX
+REF=2.5, PERIOD=5U, DUTYMAX=0.8, IMAX=2.5V, VOUTHI=15V, 
+ROUT=10, VHIGH=3, ISINK=15M, ISOURCE=500U, 
+VLOW=100M, POLE=30, GAIN=31622, DUTYMIN=0.1, VOUTLO=100M
*	
*	Generic Model for Voltage Mode Half-Bridge PWM controller
*	Developed by Christophe BASSO, France
*	PSpice compatible format
*	Last modified: November 21st 1996
*
***** Generic PWM controller parameters *******
* REF 		; internal reference voltage
* PERIOD	; switching period
* DUTYMAX 	; maximum duty cycle
* DUTYMIN	; minimum duty cycle
* IMAX		; max voltage upon (external) RSENSE resistor 
* VOUTHI	; driver output voltage high
* VOUTLO	; driver output voltage low
* ROUT		; driver output resistor
***** Internal error amplifier parameters *****
* VHIGH		; maximum output voltage
* VLOW		; minimum output voltage
* ISINK		; sink capability
* ISOURCE	; source capability
* POLE		; first pole in Hertz
* GAIN		; DC open-loop gain (default=90dB)
***********************************************
.PARAM VP = { (VLOW*DUTYMAX-VHIGH*DUTYMIN+VHIGH-VLOW)/(DUTYMAX-DUTYMIN) }	; valley ramp voltage
.PARAM VV = { (VLOW-DUTYMIN*VP)/(1-DUTYMIN)}								; peak ramp voltage

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -