V předchozím díle jsme se seznámili se simulacemi ve frekvenční oblasti a také šikovnými funkcemi STEP a MEASURE [1]. Nyní bych rád představil vybrané modely součástek podporované ze strany Spice. Také si ukážeme, jak lze jednoduše použít modely třetích stran, případně modifikovat parametry a vytvořit si tak součástku vlastní.
Ano, i náš oblíbený LTspice® používá standardní definice pro obecné modely součástek. Jako příklad můžeme uvést zdroj napětí nebo třeba diodu. Mnoho informací o „čistém“ Spicu naleznete například na stránkách univerzity v Berkeley [2]. Prvky, nebo chcete-li modely součástek, jsou rozděleny do čtyř kategorií: Elementární (rezistor, kapacitor, induktor), Napěťové a proudové zdroje, Elektrické vedení a v neposlední řadě Tranzistory & diody.
Obecná syntaxe pro zdroj napětí vypadá takto: VXXXXXXX N+ N- <DC<> DC/TRAN VALUE> <AC <ACMAG <ACPHASE>>>+ <DISTOF1 <F1MAG <F1PHASE>>> <DISTOF2 <F2MAG <F2PHASE>>>
Možná si položíte otázku, jaký význam má zabývat se obecným modelem, když máme přímo v LTspice® k dispozici konkrétní modely tranzistoru, diody atd. Odpověď je jednoznačná: význam to má! Ukážeme si to na několika příkladech.
V naší praxi není ideální skoro nic. Tranzistory spínají pomalu, se zpožděním a v sepnutém stavu nemají nulový odpor. Jak to udělat, když potřebujete sepnout signál v přesně definovaném čase, okamžitě a s téměř nulovým odporem? Ve velkoobchodní síti takový prvek sice neseženete, ale ve SPICE naštěstí můžete použít model SWITCH. Na obr. 1 je obvod ideálního snižujícího měniče právě s využitím našeho spínače. Spínač S1 tvoří hlavní spínací prvek měniče, zatímco komplementární spínač S2 se chová jako aktivní dioda. Pro oba spínače jsme nadefinovali společný model „spinac“, „.model spinac SW (Ron = 1u Roff = 1meg Vt = 0 Vh = 0)“. Parametry jsou následující, v pořadí zleva doprava: odpor v sepnutém stavu 1 μΩ, odpor v rozepnutém stavu 1 MΩ, prahové napětí 0 V a hystereze 0 V. Oba spínače jsou ovládány pomocným zdrojem pulzů V2.
Dalším šikovným modelem je napětím řízený zdroj napětí. V knihovně součástek naleznete také napětím řízený zdroj proudu či proudem řízené zdroje, princip použití je stejný. Zpátky ale k našemu napětím řízenému zdroji, kdy zapojíme schéma dle obr. 2. Jedná se o jednoduchý návrh invertujícího zesilovače se zpětnou vazbou. Náš ideální zesilovač je realizován právě řízeným zdrojem napětí. Zesílení nastavíte v kontextové nabídce zdroje, kterou zobrazíte levým kliknutím nad jeho symbolem. Pro atribut Value zadáme hodnotu zesílení našeho „zesilovače“, zde konkrétně 1 meg.
Co říkáte na ideální dvoucestný usměrňovač? Skvělé! Mohli bychom použít čtyři ideální diody? Tak dobrý nápad to ale zase není. Proč dělat věci složitě, když to jde mnohem jednodušeji s řízeným zdrojem napětí? Tento zdroj dává na výstupu napětí definované funkcí, přičemž parametrem může být jakákoli obvodová veličina. Usměrňovač můžeme realizovat pomocí funkce absolutní hodnoty a do vlastností zdroje zadáme pro Value „V = 2*abs (V(in))“. Ale pozor, v knihovně součástek je tento zdroj uveden jako „bv“. Nemusíte se bát popustit uzdu svým matematickým fantaziím, podporováno je mnoho dalších funkcí (logaritmus, mocniny, goniometrické funkce atd.). Úplný výčet lze nalézt v nápovědě programu nebo na stránkách LTwiki [3]. Schéma obvodu sledujeme na obr. 3.
Od zdrojů se přesuneme k diodě. Výrobci součástek nám mnohdy vyjdou vstříc, tak jak to bylo i v mém případě. Potřeboval jsem doladit zařízení, kde byla svítivá dioda zároveň použita jako signalizace a také napěťová reference. Nebylo jednoduché obvod navrhnout tak, aby odpovídal standardům, ale velmi u toho pomohl právě Spice. Od výrobce jsem získal model mnou použité LED, specifikovaný pro minimální, nominální a maximální napětí v propustném směru. Nyní si ukážeme, jak takový model importovat.
Model od výrobce je definován v textovém souboru „LG_M67.txt“. Soubor musí být ve zdrojovém adresáři, tedy tam, kde je uloženo i naše schéma. Spice tento soubor uvidí, jen když ho připojíme ke schématu, a to provedeme příkazem „.include LG_M67K.txt“, viz obr. 4. Z knihovny součástek vybereme obecný model svítivé diody „LED“. Obecný model diody „D“ bude fungovat naprosto stejně, pouze nebude odpovídat symbol. Nad diodou otevřeme rozšířené kontextové menu a do vlastností (Value) zadáme název modelu, který chceme použít. V našem textovém souboru byly nadefinovány tři modely LG_M67K_min, LG_M67K_nom a LG_M67K_max.
Před časem jsem řešil, jak v simulaci co nejjednodušeji realizovat ideální omezovač proudu tekoucího obvodem. Zdroj proudu jako takový nebyl vhodný a napětí zdroje by zase bylo nutné omezit v závislosti na maximálním vstupním napětí. Našel jsem však velmi elegantní řešení s použitím modelu diody – viz také obr. 5. Nadefinujeme si tedy model omezovače, u kterého nám bude stačit jeden řádek ve Spicu: „.model omez D (ron = 0 Ilimit = 10m)“. Z knihovny součástek, stejně jako v předchozím příkladu, vybereme model diody „D“ a pro Value zadáme název našeho upraveného modelu diody, modelu omezovače „omez“. Výstup můžete vidět na obr. 5.
Stejný postup je samozřejmě možné aplikovat pro jakýkoli model v knihovně LTspice®. Pokud použijete modely součástek třetích stran, tak jako v případě LED diody, mějte na paměti, že modely jsou často velmi zjednodušené a mnohdy nepostihují dynamické, ale ani jiné vlastnosti reálných součástek (pokračování příště).