SCSyrup
Knihovna pro symbolickou analýzu spínaných obvodù.
SCSyrup umí pro SPICEovsky popsaný obvod spoèítat symbolickou pøenosovou funkci (rùzného typu) nebo dvojbranovou matici (opìt rùzného typu), kterou pak lze dále zpracovávat standardními pøíkazy Maple.
Knihovna umoòuje analyzovat dvoufázovì spínané SC obvody, kde jedna fáze trvá polovinu periody spínání. Algoritmus pouitý v knihovnì SCSyrup je zaloen na modifikované metodì uzlových napìtí, kde místo proudù jsou pouity náboje. Knihovna poèítá správnì pouze takové obvody, u který dojde za dobu trvání jedné fáze k ustálení pøechodových dìjù.
Obvodové prvky, které lze pouít: kondenzátor, spínaè spínající v sudé nebo liché fázi, ideální operaèní zesilovaè a vechny typy øízených zdrojù. Zadávání prvkù je stejné jako u knihovny "Syrup".
Syntaxe:
Základní prvky:
Kondenzátor..............C<øetìzec> <+uzel> <-uzel> [<hodnota>]
Spínaè.......................S<øetìzec> <+uzel> <-uzel> <fáze>
Operaèní zesilovaè...A<øetìzec> <+vst. uzel> <-vst. uzel> <+výst. uzel> <-výst. uzel>
Øízené zdroje:
Pro zaèátek pouze
Napìtím øízený zdroj napìtí.....E<øetìzec> <+vst. uzel> <-vst. uzel> <+výst. uzel> <-výst. uzel> [<øídící konstanta>]
Výpoèet pøenosové funkce:
TransferS - Symbolicky
TransferN - s dosazením hodnot prvkù (pokud byly hodnoty zadány)
TransferS(<popis obvodu>,<vst. uzel>,<výst. uzel>,<typ pøenosu>,<typ buzení>,<typ zakonèení>)
<popis obvodu> - nejèastìji jméno promìné (viz pøíklad)
<vst. uzel> - èíslo vstupního uzlu
<výst. uzel> - èíslo výstupního uzlu
<typ pøenosu> - EE, EO, OE , nebo OO - typ pøenosu ze které do které fáze E -sudá, O -lichá
<typ buzení> -
pro zaèátek pouze
VV (napìové buzení v sudé i v liché fázi)
<typ zakonèení> -
pro zaèátek pouze
VV (výstup naprázdno v sudé i v liché fázi)
Popis vech pøíkazù
pro výpoèty i jejich syntaxi lze nalést v helpu.
Obèas je dobré trochu uklidit!
> restart;
Naètení knihovny funkcí SCSyrupu
> with(scsyrup);
Pøíklady:
Jednoduchý spínaný obvod obsahující dva kondenzátory a dva spínaèe. Obvod se chová jako dolní propust.
> scobvod:=TEXT(`Spinany RC obvod`,
> `*komentáø`,
> `C1 3 0 1`,
> `C2 2 0 1`,
> `S1 1 3 1`,
> `S2 3 2 2`,
> `.end`);
Výpoèet symbolické pøenosové funkce z uzlu 1 do uzlu 2, vstup i výstup je v sudé fázi
> TS1:=TransferS(scobvod,1,2,EE,VV,VV);
Pøenosová funkce s dosazením hodnot prvkù
> TN1:=TransferN(scobvod,1,2,EE,VV,VV);
Ukázka zpracování pøenosové funkce v Maple
Výpoèet modulové kmitoètové charakteristiky v dB pro fvz = 100Hz a 200Hz.
> ATN1:=TAbs(TN1,100);
> ATN2:=TAbs(TN1,200);
> with(plots):
> semilogplot({subs(omega=2*Pi*f,20*log10(ATN1)),subs(omega=2*Pi*f,20*log10(ATN2))},f=0.5..50);
Podovnì lze zobrazit i fázovou charakteristiku.
Pozor na vzorkovací teorém (vimnìte si lineární osy kmitoètu!).
> plot({subs(omega=2*Pi*f,20*log10(ATN1)),subs(omega=2*Pi*f,20*log10(ATN2))},f=0.5..200);
Algoritmus pouitý v SCSyrupu poèítá s kapacitní maticí obvodu. Pomocí pøíkazu CMatrixS (CMatrixN) lze tuto matici zobrazit.
> CMatrixS(scobvod);
>