NGSPICE ensuciando las características de BJT

1

Estoy tratando de obtener características BJT en NGSPICE, pero por alguna razón, las parcelas se remontan al origen.

* BJT characteristics

RB 1 2 1Meg
RC 4 3 1k
QBJT 3 2 0 BC107B
V1 1 0 dc 12
V2 4 0 dc 10

.model BC107B   NPN(Is=7.049f Xti=3 Eg=1.11 Vaf=59.59 Bf=381.7 Ise=59.74f
+               Ne=1.522 Ikf=3.289 Nk=.5 Xtb=1.5 Br=2.359 Isc=192.9p Nc=1.954
+               Ikr=7.807 Rc=1.427 Cjc=5.38p Mjc=.329 Vjc=.6218 Fc=.5 Cje=11.5p
+               Mje=.2718 Vje=.5 Tr=10n Tf=438p Itf=5.716 Xtf=14.51 Vtf=10)
*       PHILIPS     pid=bc107b  case=TO18
*       91-08-02 dsq

.dc V2 0 10 0.1 V1 1.5 3.5 0.5 

************
.control
run
plot v(4,3)/1k vs v(3) 
.endc
************

.end

¿Cómo resuelvo este problema?

    
pregunta Surag

2 respuestas

1

No sé si es absolutamente necesario utilizar NGSPICE, pero con LTspice no tendría problemas ( ver más abajo).

Nota: LTspice es completamente gratuito y no tiene limitaciones (no hay un número máximo de piezas, por ejemplo, como la versión libre de otros simuladores comerciales). Es uno de los mejores simuladores (es usado por Linear Technology para simulaciones internas, no es un juguete). El programa es ligero (~ 40MB, IIRC), funciona bajo Windows y fue desarrollado para ejecutarse en Linux bajo WINE. La licencia es muy liberal: también puede utilizarla para fines comerciales, siempre y cuando no sea un competidor de la tecnología lineal (no trabaja para un fabricante de chips, ¿verdad? :-).

La siguiente instantánea ilustra el punto. Acabo de crear un esquema vacío y copié la parte esencial de su lista de redes en una directiva de especias en LTspice y dibujé Ic después de ejecutar la simulación. Aquí está el resultado:

Por supuesto, puede volver a dibujar el esquema desde cero, si lo necesita, pero si solo necesita las curvas, es tan fácil como es posible.

    
respondido por el Lorenzo Donati
1
  

¿Cómo resuelvo este problema?

La forma más sencilla es publicar dichos errores en el foro de ngspice de SourceForge ...

Cambie alrededor de la línea 277 de graf.c.

if (np && (tox > fromx)) 
    DevDrawLine(fromx, fromy, tox, toy);
    
respondido por el Marcel Hendrix

Lea otras preguntas en las etiquetas