Simulace - 7. díl
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Simulace - 7. dílSimulace - 7. díl

 

Simulace - 7. díl

Google       Google       31. 8. 2006       22 711×

RLC obvody jsou prakticky ve všech obvodech, ať už vysokofrekvenčních nebo třeba silnoproudých. My si je zkusíme alespoň v základní podobě nasimulovat.

Za soustavu prvního řádu jsme považovali elektrický obvod, který obsahoval jeden energeticky setrvačný prvek, tedy induktor (cívku – proudově setrvačný prvek) nebo kapacitor (kondenzátor – napěťově setrvačný prvek). Systém druhého řádu bude obsahovat oba tyto prvky, každý v jednom exempláři. Na řešení obvodů se dvěmi cívkami nebo kondenzátory si posvítíme někdy později.

Dnešním dílem také vstoupíme do tzv. stavové analýzy, kdy nás pro začátek nebudou zajímat všechny veličiny v obvodu, ale jen veličiny stavové. V minulých dílech jsme se se stavovými veličinami již setkali, ale mluvit o stavové analýze, když máme pouze jednu stavovou veličinu, je směšné.

Našimi stavovými veličinami jsou proud induktorem a napětí na kapacitoru (protože se ze své fyzikální podstaty nemohou měnit skokově). Pro každou veličinu určíme diferenciální rovnici prvního řádu a získáme tak soustavu dvou rovnic, které už budeme řešit podobně jako v minulém díle. Bude nás tedy zajímat, jak vytvořit a upravit tyto rovnice.

Pro začátek si můžeme vzít jednoduchý obvod se sériově zapojeným rezistorem, induktorem a kapacitorem. Pokud jste se zajímali o radioamatérství, určitě jste poznali sériový rezonanční obvod. Ne vždy se ale toto zapojení používá jako generátor sinusového průběhu, resp. ne vždy tento obvod rezonuje. Dost často se objevuje ve zdrojích stejnosměrného napětí jako výstupní filtr nebo jako výhybka pro reproduktory.

Rezistor zde zastupuje parazitní odpor vodičů cívky, popřípadě přívodních vodičů kondenzátoru, může zastupovat i skutečný rezistor. Zanedbáváme drobnosti jako indukčnost přívodních vodičů . Také zanedbáváme vliv teploty, frekvence a dalších na vlastnosti prvků. Určitě jsem ještě spoustu věcí zapomněl, ale pro nás bude zatím stačit uvedený idealizovaný obvod, už jen proto, že v běžných podmínkách se jeho chování blíží skutečnosti. Dalším zjednodušujícím předpokladem bude napájení z ideálního zdroje stejnosměrného napětí.

Výhodu mají ti, kteří dávali na hodinách elektrotechniky pozor. Máme totiž jednu smyčku, takže podle Kirchhoffových zákonů sestavíme jednu napěťovou rovnici:

V podstatě je to všechno, co potřebujeme k sestavení modelu vědět, protože víme, že:

S těmito vědomostmi pouhým dosazením vytvoříme rovnici, např. pro napětí na kondenzátoru. Bude to ale jedna rovnice druhého řádu, kterou můžeme přímo řešit pouze analyticky:

Tento způsob je opravdu vhodný jen tehdy, když chceme řešit obvod analyticky. Pro numerické řešení se bude hodit pár následujících rad:

› Pro každý induktor sestavíme napěťovou rovnici podle smyčky, ve které se nachází. Napětí na kondenzátorech v této smyčce (tedy i v rovnici) zapíšeme pouze identifikátorem jejich napětí (např. uc), nepřepisujeme je do diferenciálního ani integračního tvaru! Napětí na induktoru nahradíme výrazem L*diL/dt.

› Pro každý kondenzátor sestavíme proudovou rovnici podle uzlu, ze kterého je napájen. Proud kondenzátorem potom nahradíme výrazem C*duC/dt.

Podle těchto rad lze sestavit rovnice pro většinu obvodů. V každé rovnici by měla vystupovat pouze jedna derivace. Ostatní veličiny, ačkoliv jsou stavovými veličinami, pouze dosazujeme tak, jak jsme je vypočítali v minulém kroku.

Sestavíme tedy rovnice pro náš obvod. Obsahuje pouze jednu smyčku a žádný uzel, můžeme tedy sestavit jen jednu rovnici, a to napěťovou. Druhou rovnici ale už známe. Víme totiž, že proud kondenzátorem je:

Máme tedy dvě rovnice, v každé vystupuje pouze jedna derivace – to jsme chtěli. Teď už zbývá pouze přepsat je pro program (do tzv. diferenčního tvaru):

Poslední dvě rovnice už stačí jen naprogramovat, v programu uvést hodnoty parametrů a nezapomenout na počáteční podmínky simulace (obvykle volíme nulové).

// Simulace sériového RLC obvodu
// www.programujte.cz 2006 - Matěj Pácha
// Visual C++ 2005 Express Edition
// Výsledek ukládá do souboru "sim.txt"

#include "stdafx.h"
#include <fstream>
#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	ofstream fout;
	fout.open("sim.txt");

	double t,h,i,u,uc,r,l,c,konec;
	
	t=0;			//proměnná času
	i=0;			//nastavíme počáteční podmínky
	uc=0;			//
	u=10;			//napětí zdroje U = 10 V
	h=0.0001;		//krok, se kterým počítáme
	konec=0.1;		//čas konce simulace
	r=10;			//Odpor R = 10 ohm
	l=0.1;			//Indukčnost L = 100 mH
	c=0.0005;		//Kapacita C = 500 uF
	
	for(t = 0; t < konec ; t += h)
	{
				//simulační rovnice
		i += h*(u - r*i - uc)/l;
		uc += h*i/c;
				//výstup do souboru
		fout << t << "\t" << i << "\t" << uc << "\n";
	}
	fout.close();
	return 0;
}

Jen tak ze cviku bychom si mohli uvést příklad, ve kterém budeme uvažovat se svodovým odporem kondenzátoru nebo, chcete-li, s jeho vybíjecím rezistorem. Schéma vypadá následovně:

Pro induktor sestavíme napěťovou rovnici podle smyčky, ve které se nachází. Pro kondenzátor zase rovnici proudovou pro uzel, ze kterého je napájen.

Zbývá už jen zdrojový kód, opět např. v jazyku C, podobný tomu předcházejícímu. Stačí jen doplnit chybějící proměnné a změnit výpočtovou část. Zručnější programátoři už mohou pouzdřit v OOP a poté na celou problematiku zapomenout. Přesto si ale myslím, že znát princip je velkou devizou. Pro zajímavost ještě uvedu příklad, jak mohou vypadat průběhy stavových veličin.

Průběhy proudu i=f(t) a napětí uc=f(t)

a) L = 100mH, C = 500 uF

b) L = 10 mH, C = 500 uF

Jak je vidět, průběhy veličin se mohou značně lišit. Obecně rozeznáváme tři teoretické typické tvary, z nichž pouze dva mohou v reálném světě nastat. Nazývají se periodický (kvaziperiodický), aperiodický a na hranici periodicity. První název je odvozen ze sinusové (periodické) složky průběhu, druhý naopak nevykazuje ani náznak opakování kterékoliv jeho složky. Průběh na hranici periodicity vykazuje nejrychlejší ustálení, ale dosažení tohoto stavu ve skutečnosti je dost problematické. Tento průběh veličin se vyskytuje pouze při jedné jediné kombinaci hodnot parametrů vyšetřovaného systému a jak jistě tušíte, parametry skutečného světa nejsou nikdy dost přesné a nebývají ani stálé. Proto je tento průběh pouze teoretický.

Pokud budete experimentovat s hodnotami L a C, můžete narazit na problém s divergencí (probráno v minulém díle). Z prvních dvou grafů je také zřejmé, proč kupovat kondenzátory na vyšší napětí, než k jakému ho budeme připojovat: napětí při přechodovém ději může krátkodobě dosáhnout až dvojnásobku ustálené hodnoty napětí. Kondenzátor samozřejmě může vydržet, ale pravděpodobně zkrátíte jeho životnost. Indukčnost se totiž vyskytuje v každém síťovém zdroji (transformátor, tlumivky ve spínaných zdrojích, vodiče), takže nikdy nejde stoprocentně jen o prosté připojení kondenzátoru (čistě exponenciální průběh).

Příště si zkusíme simulace z jiného soudku…

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Ing. Matěj PáchaAutor je studentem doktorského studia na Elektrotechnické fakultě Žilinské univerzity, obor Elektrická trakce. Mezi koníčky patří hudba a hra na baskytaru.
Web    

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý