Charakteristiky NPN tranzistora: Rozdiel medzi revíziami

Z Kiwiki
Skočit na navigaci Skočit na vyhledávání
(Vytvorená stránka „__NOTOC__ Category:Simulácie a modelovanie Príklad ukazuje výpočet charakteristiky NPN tranzistora pomocou simulácia riadenej skriptom. <center> {|class="wikitab…“)
 
d
 
(10 medziľahlých úprav od 2 ďalších používateľov nie je zobrazených)
Riadok 1: Riadok 1:
 
__NOTOC__
 
__NOTOC__
 
[[Category:Simulácie a modelovanie]]
 
[[Category:Simulácie a modelovanie]]
Príklad ukazuje výpočet charakteristiky NPN tranzistora pomocou simulácia riadenej skriptom.
+
{{Simulacia_modelovanie_3|1}}
 +
Príklad ukazuje simuláciu výstupnej charakteristiky NPN tranzistora<ref>http://en.wikipedia.org/wiki/NPN_transistor#NPN</ref> pomocou simulátora riadeného skriptom vytvoreným v jazyku Python. Pri zadanom rozsahu napätí zdroja V1 od 0V do 5V SPICE príkazom ''.DC V1 0 5 0.01'' je parametrom simulácie bázový prúd tranzistora. Bázový prúd je zadaný zo skriptu substitúciou hodnotou parametra {IB} prúdového zdroja I1. Prúd kolektora je snímaný [[Model-Prúdová_sonda |prúdovou sondou  ]] X1.
  
<center>
+
[[Súbor:0100_dc_npn.png |thumb|center|400px| <div align="center"> Zapojenie obvodu </div> ]]
{|class="wikitable"
 
| align="center" width=500 | [[Súbor:0050_ttl.png | 400px]]
 
|-
 
| align="center" width=500 | '''Zapojenie obvodu'''
 
|}
 
</center>  
 
  
V simulácii bol na zobrazenie prevodovej charakteristiky použitý komponent [[Plot_xy | ''PLOT_XY'']].
+
Simulačný skript riadi proces simulácie, v cykle mení hodnotu paramera {IB} a pre zmenený parameter vyvoláva simuláciu.
 +
Výstup simulácie je zobrazený pomocou štandardných postupov v [http://matplotlib.sourceforge.net matplotlib] s využitím renderovania textov v [http://matplotlib.sourceforge.net/users/usetex.html#usetex-tutorial LaTeX].
  
<center>
+
<source lang="python" line>
{|class="wikitable"
+
from scipy import *
| align="center" width=500 | [[Súbor:0050_ttl_11.png | 500px]]
+
import matplotlib as plt
|-
+
import sys
| align="center" width=500 |'''Výsledok simulácie'''
+
sys.path.append('../../py')
|}
 
</center>
 
  
== Úlohy ==  
+
from gsim import *
* Z grafu prevodovej charakteristiky určite hranice logických úrovní '''H''' a '''L'''.  
+
 
 +
g=gsim('01000_dc_char.sch')    # load gschem circuit diagram
 +
g.netlist()                    # create netlist
 +
 
 +
for i in arange(1e-5, 10e-5, 1e-5):  # loop for parameter range
 +
g.setPAR('IB',i)            # update parameter
 +
g.sim()                      # run DC SWEEP simulation
 +
ic=g.yData.get('v(ic)')      # extract data and add data to plot
 +
plt.plot(g.xData,ic,'o-',markevery=40, label=r'$'+str('%3.0f' %(i*1e6) )+'\mu A$')
 +
 
 +
plt.grid(True)                # create graphics with decorations
 +
plt.legend(loc='upper right')
 +
plt.ylim(ymin=0.0)
 +
plt.xlabel(r'$V_{CE}\,[V]$',fontsize=18)
 +
plt.ylabel(r'$I_B\,[A]$',fontsize=18)
 +
plt.title(r'$I_C=f(I_B, V_{CE})$',fontsize=18)
 +
show()
 +
</source>
 +
 
 +
 
 +
Výsledok simulácie je zobrazený na nasledujúcom obrázku
 +
 
 +
[[Súbor:0100_npn_char.png |thumb|center|500px| <div align="center"> Výsledok simulácie </div>]]
  
 
== Odkazy a literatúra ==
 
== Odkazy a literatúra ==
 
<references/>
 
<references/>

Aktuálna revízia z 22:45, 22. marec 2013

Príklad ukazuje simuláciu výstupnej charakteristiky NPN tranzistora[1] pomocou simulátora riadeného skriptom vytvoreným v jazyku Python. Pri zadanom rozsahu napätí zdroja V1 od 0V do 5V SPICE príkazom .DC V1 0 5 0.01 je parametrom simulácie bázový prúd tranzistora. Bázový prúd je zadaný zo skriptu substitúciou hodnotou parametra {IB} prúdového zdroja I1. Prúd kolektora je snímaný prúdovou sondou X1.

Zapojenie obvodu

Simulačný skript riadi proces simulácie, v cykle mení hodnotu paramera {IB} a pre zmenený parameter vyvoláva simuláciu. Výstup simulácie je zobrazený pomocou štandardných postupov v matplotlib s využitím renderovania textov v LaTeX.

 1 from scipy import *
 2 import matplotlib as plt
 3 import sys
 4 sys.path.append('../../py')
 5 
 6 from gsim import *
 7 
 8 g=gsim('01000_dc_char.sch')    # load gschem circuit diagram
 9 g.netlist()                    # create netlist
10 
11 for i in arange(1e-5, 10e-5, 1e-5):  # loop for parameter range
12 	g.setPAR('IB',i)             # update parameter
13 	g.sim()                      # run DC SWEEP simulation
14 	ic=g.yData.get('v(ic)')      # extract data and add data to plot
15 	plt.plot(g.xData,ic,'o-',markevery=40, label=r'$'+str('%3.0f' %(i*1e6) )+'\mu A$')
16 
17 plt.grid(True)                 # create graphics with decorations
18 plt.legend(loc='upper right')
19 plt.ylim(ymin=0.0)
20 plt.xlabel(r'$V_{CE}\,[V]$',fontsize=18)
21 plt.ylabel(r'$I_B\,[A]$',fontsize=18)
22 plt.title(r'$I_C=f(I_B, V_{CE})$',fontsize=18)
23 show()


Výsledok simulácie je zobrazený na nasledujúcom obrázku

Výsledok simulácie

Odkazy a literatúra