Operácie

KiCAD + Spice tutorial

Z SensorWiki

PSPICE - simulácia obvodov.

V tomto materiáli sa stručne oboznámite so základnými príkazmi simulačného programu SPICE (Simulation Program with Integrated Circuits Emphasis). Tento program je jedným z najrozšírenejších na svete a má za sebou pomerne dlhú históriu. Vznikol r.1975 (!) na University of California v Berkeley. Umožňuje simulovať obvody v ustálenom stave (metódou uzlových napätí), prechodovú analýzu, frekvenčnú analýzu, citlivostnú analýzu (aj teplotnú) a mnoho ďalších. Samotný program je ovládaný príkazovo, užívateľské rozhranie je veľmi strohé, vidno, že pôvod programu je v UNIXe. Dnes však existuje veľa nastavbových programov - posledným z nich je kompletný vývojový balík bežiaci pod W95 obsahujúci schematický editor, systém na návrh plošných spojov, na návrh programovateľných (PLD) obvodov a samozrejme aj simuláciu.

Príklad č.1. Lineárny obvod

V ľubovoľnom “programátorskom” editore (napr Shift+F4 v NC) vytvoríme vstupný súbor s popisom obvodu.


Na prvom riadku je vždy názov simulovaného obvodu:
Simulacia linearneho obvodu - Jozko Mrkvicka
Potom nasledujú jednotlivé prvky, zacneme odpormi:
R1 1 2 1k  ;za bodkociarkou moze byt komentar
R2 2 0 4k7
Prvé je označenie prvku, potom prvý uzol a druhý uzol a napokon hodnota. Označenie i uzly môžu byť ľubovolné, ale aspoň jeden z uzlov sa musí volať 0. Potom vložíme napäťový zdroj:
Vin 1 0 10V ;kladný pól 1, záporný 0, veľkosť 10V
A napokon vložime riadiace príkazy (začínajú bodkou):
.OP
.END

To znamená, že chceme len vypočítať veľkosti napätí v obvode (.OP - operating point) a skončiť (.END)

Súbor uložíme pod naázvom napr. priklad1.cir a spustíme program PSpice s parametrom:

pspice.exe priklad1

Ak je všetko v poriadku, vytvorí sa súbor priklad1.out, v ktorom sú výsledky simulácie.

Úloha: Určte veľkosti napätí v obvode podľa obrázku.

Príklad č.2: V-A charakteristika diódy.

Ukážeme si, ako sa simulujú zložitejšie prvky a ako zobraziť výsledky simulácie graficky. Pre meranie charakteristiky musímer diódu zapojiť podľa obrázku, princíp je podobný ako pri zobrazení charakteristiky na osciloskope.


Na vstupe bude meniteľný zdroj V1:
V1 2 0 ;veľkosť určíme neskôr
Pretože PSpice používa pri výpočte metódu uzlových napätí, nedostaneme vo výsledku priamo veľkosti prúdov. Program vie vypočítať len veľkosti prúdov cez ideálne napäťové zdroje. Preto si pomôžeme zaradením zdroja napätia 0V:
Vd 2 1 0
Diódu zadáme podobne ako ostatné prvky, ale pretože je to nelineárny prvok, musíme zadať aj jej správanie a parametre. Tie udáva príslušný model. Niektorí výrobcovia poskytujú konštruktérom modely konkrétnych typov súčiastok, takže program nemusí pracovať len s ideálnymi prvkami. V našom prípade:


D1 1 0 KZZ74
.model KZZ74 D (Is=0.1uA N=1 Rs=12 Bv=9.7 Ibv=5mA)

Nakreslíme si charakteristiku od -12 po 1V, v krokoch po 0.5V. Musíme teda povedať, že jednosmerný (DC) zdroj V1 sa má meniť v tomto rozsahu:
.DC V1 -12 1 0.1
Nasledujúce dva príkazy vypíšu hodnoty zo simulácie do tabuľky (.print) a “vykreslia” charakteristiku v pseudografike do súboru priklad2.out (.plot).
.print DC I(Vd)
.plot DC I(Vd)

Posledný príkaz zapíše výsledky v binárnom tvare vhodnom pre grafický postprocesor:
.probe I(Vd)
.end

Po uložení súboru spustíme simuláciu a po nej grafický postprocesor (ak sa nespustí sám):
probe.exe priklad2

Príkazom Add_trace pridáme do (zatiaľ prázdneho) grafu našu charakteristiku: stlačíme a zo zoznamu vyberieme I(Vd). Ak nám nevyhovuje mierka, môžeme ju zmeniť buď X_axis alebo Y_axis. Ak vyberieme Cursor môžeme zmerať hodnoty v jednotlivých bodoch.

Úloha: nasimulujte diódu z cvičení a zmerjate veľkosť Zenerovho napätia a prúd If pri Uf=0.5V.

Príklad č.3: Stabilizátor so Zenerovou diódou.

Použijeme zapojenie podľa obrázku, parametre podľa vašej domácej úlohy.


Kolísanie napätia na vstupe nasimulujeme pomocou zdroja harmonického napätia s offsetom: U_{in} =  18 + 2 \cdot sin (2 \pi 50 ) \qquad  [V] t.j. 18\pm2V s frekvenciou 50Hz.


    Stabilizator so zenerovou diodou - Jozko Mrkvicka
    Vin 1 0 sin (18 2 50)
    R0  1 2 500
    D1  0 2 KZZ74               ;v zavernom smere!
    .model KZZ74 D (Is=0.1uA N=1 Rs=12 Bv=9.7 Ibv=5mA)

Záťaž predstavuje rezistor Rz s hodnotou, ktorá sa mení od 1k až po 10k. To zadáme nsaledovne:

    Rz  2 0 {R}
    .param R=1k                   ;inicializacna hodnota
    .step param (R) 1k 10k 2.5k   ;skokom od 1 po 10k po 2.5

Zaujíma nás časový priebeh výstupného napätia, preto zadáme typ analýzy .TRAN (transient - prechodová) a zavoláme grafický postprocesor:

    .tran 1ms 0.1s                ;od 0 po 0.1s po 1ms
    .probe
    .end

Úloha: Aké je maximálne zvlnenie výstupného napätia (v %) pre najhorší možný prípad? (t.j. max povolený rozptyl vstupného napätia a najhorší prípad zo simulovaných záťaží).

Literatúra:

Návod pre začiatočníkov aj s príkladmi nájdete napr. na počítači University of Pennsylvania na adrese
http://www.seas.upenn.edu/ jan/spice/spice.overview.html
Alebo na http://www.coe.uncc.edu/project_posaic/mosaic_help/ecad/pspice

Samotný program si môžete nahrať na ftp://ftp.microsim.com/
alebo http://www.microsim.com/

Existujú aj tlačené učebnice, tie si ale treba kúpiť:

P.Tuinenga: SPICE. A Guide to Circuit Simulation and Analysis Using PSpice, 3rd Ed., Prentice Hall, Upper Saddle River, NJ, 1995

F.Monssen: MicroSim PSpice with Circuit Analysis, 2nd Ed., Prentice Hall, Upper Saddle River, NJ, 1998