Hi, I am trying to model a TO-92 transistor (2N4401) to see what effects "thermal memory" have on its behaviour at medium signal levels. From digging around, I was able to make up a circuit that corrects for the Vbe temperature coefficient. The circuit calulates transistor power dissipation, converts that to current, and applies it to an RC (Foster) network that represents the thermal resistance and time constants of the transistor die, case and air cooling. That calculates the instantaneous temperature, which is then applied to a voltage in series to the base (0.0022 v/deg C). The temperature simulation seems reasonably close to the response of a TO-92 transistor (2N7000 used as reference). I don't know enough about transistor theory.... so I have a few questions if anyone has done this stuff before:
1) will this model beta variation with die temperature? 2) if not, is there a decent way to do it? 3) are there any refinements to this method to get a better approximation to real behaviour?Here is my LTSpice circuit:
Version 4 SHEET 1 988 712 WIRE 928 -160 208 -160 WIRE 608 -48 112 -48 WIRE 608 48 608 -48 WIRE 608 48 480 48 WIRE 720 48 608 48 WIRE 416 64 336 64 WIRE 480 64 480 48 WIRE 608 64 608 48 WIRE 720 64 720 48 WIRE 336 80 336 64 WIRE 416 80 416 64 WIRE 208 96 208 -80 WIRE 288 96 208 96 WIRE 64 112 32 112 WIRE 928 112 928 -160 WIRE 32 128 32 112 WIRE 64 128 64 112 WIRE 112 128 112 -48 WIRE 208 128 208 96 WIRE 416 160 336 160 WIRE 608 160 608 144 WIRE 720 160 720 128 WIRE 720 160 608 160 WIRE -144 176 -208 176 WIRE 48 176 -64 176 WIRE 144 176 128 176 WIRE 336 176 336 160 WIRE 480 176 480 144 WIRE -208 224 -208 176 WIRE 416 224 336 224 WIRE 208 240 208 224 WIRE 288 240 288 144 WIRE 288 240 208 240 WIRE 336 240 336 224 WIRE 288 256 288 240 WIRE 416 256 416 224 WIRE 608 272 608 240 WIRE 720 272 720 224 WIRE 720 272 608 272 WIRE 608 288 608 272 WIRE 208 336 208 320 WIRE 288 336 288 304 WIRE 288 336 208 336 WIRE 336 336 336 320 WIRE 416 336 336 336 WIRE 336 352 336 336 WIRE 608 400 608 368 WIRE 928 464 928 192 WIRE 928 464 608 464 WIRE 608 496 608 464 WIRE -208 544 -208 304 WIRE 208 544 208 336 WIRE 208 544 -208 544 WIRE 208 560 208 544 FLAG 608 496 0 FLAG 336 176 0 FLAG 336 352 0 FLAG 480 176 0 FLAG 32 128 0 FLAG 608 400 0 FLAG 720 336 0 FLAG 208 560 0 SYMBOL npn 144 128 R0 SYMATTR InstName Q1 SYMATTR Value 2N4401 SYMBOL res 192 224 R0 SYMATTR InstName R1 SYMATTR Value .01 SYMBOL res 192 -176 R0 SYMATTR InstName R2 SYMATTR Value 20 SYMBOL voltage 928 96 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 10 SYMBOL voltage -208 208 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 WINDOW 3 -291 56 Left 0 SYMATTR Value PULSE(0 10 0 0 0 100 0 1) SYMATTR InstName V2 SYMBOL res 400 240 R0 SYMATTR InstName R3 SYMATTR Value 1 SYMBOL g 336 224 R0 WINDOW 3 24 44 Left 0 SYMATTR Value 100 SYMATTR InstName G1 SYMBOL g 336 64 R0 SYMATTR InstName G2 SYMATTR Value 1 SYMBOL res 400 64 R0 SYMATTR InstName R6 SYMATTR Value 1 SYMBOL bi 480 64 R0 WINDOW 3 -53 88 Left 0 SYMATTR Value I=-v(n003)*V(n009) SYMATTR InstName B1 SYMBOL res 592 48 R0 SYMATTR InstName R8 SYMATTR Value 50 SYMBOL cap 736 128 R180 WINDOW 0 24 64 Left 0 WINDOW 3 24 8 Left 0 SYMATTR InstName C2 SYMATTR Value .0002 SYMBOL res 592 144 R0 SYMATTR InstName R9 SYMATTR Value 50 SYMBOL cap 736 224 R180 WINDOW 0 24 64 Left 0 WINDOW 3 24 8 Left 0 SYMATTR InstName C3 SYMATTR Value .002 SYMBOL e 144 176 R90 SYMATTR InstName E1 SYMATTR Value .0022 SYMBOL res 592 272 R0 SYMATTR InstName R10 SYMATTR Value 300 SYMBOL cap 704 272 R0 SYMATTR InstName C4 SYMATTR Value .07 SYMBOL res -48 160 R90 WINDOW 0 0 56 VBottom 0 WINDOW 3 32 56 VTop 0 SYMATTR InstName R4 SYMATTR Value 4000 TEXT -152 496 Left 0 !.tran 0 100 0 200u TEXT 616 24 Left 0 ;junction temp. TEXT 432 224 Left 0 ;emitter\ncurrent TEXT 336 16 Left 0 ;collector\nvoltage TEXT 480 32 Left 0 ;i=power TEXT 216 408 Left 0 ;emitter TEXT 216 -16 Left 0 ;collector TEXT -56 152 Left 0 ;base TEXT 0 88 Left 0 ;Vbe correction TEXT 632 400 Left 0 ;ambient TEXT -208 600 Left 0 ;2N4401 modified for self heating. Power is calculated as current at B1, temperature is \ncalculated from Foster type RC network. Transient response of temperature is\nwithin 20% from
1ms-100s.(watch out for the long lines that might be wrapped by your newsreader)
Paul G.