protel4.pdf

(295 KB) Pobierz
10898088 UNPDF
12/99
Programy komputerowe
37
Protel Design Explorer 99 cz. 4
Tabela 1 – Przedrostki stosowane
w zapisie liczbowym
Po zmaganiach z rysowaniem sche-
matów oraz projektowaniem p³ytek przy-
sz³a kolej na modu³ symulacji. Zachêcam
do dok³adnego zapoznania siê z nim za-
równo doœwiadczonych elektroników, jak
i tych zupe³nie pocz¹tkuj¹cych. Dla
pierwszej grupy osób bêdzie on doskona-
³ym narzêdziem pozwalaj¹cym na spraw-
dzenie poprawnoœci pracy bardziej
skomplikowanych uk³adów i wykrycie
b³êdów jeszcze podczas tworzenia sche-
matu ideowego. Mo¿liwoœæ obserwacji
przebiegów w dowolnym miejscu uk³adu
pomo¿e pocz¹tkuj¹cym elektronikom
w zrozumieniu zasady dzia³ania zupe³nie
podstawowych uk³adów.
suj¹cego sposób jego dzia³ania. Mo¿liwe
s¹ do przeprowadzenia symulacje analo-
gowe, cyfrowe lub analogowo-cyfrowe.
Jeœli stworzyliœmy uk³ad z³o¿ony
z elementów biblioteki Sim.ddb , to do
przeprowadzenia symulacji pozostaj¹
nam ju¿ tylko trzy proste kroki:
1. Do³¹czamy do uk³adu odpowiednie
Ÿród³a sygna³ów (np. sinusoidalne);
2. Okreœlamy punkty obwodu w których
chcemy obserwowaæ przebiegi;
3. Konfigurujemy symulator
Przed rozpoczêciem symulacji bar-
dzo wa¿n¹ rzecz¹ jest opisanie ka¿dego
elementu niepowtarzaln¹ nazw¹ ( Desi-
gnator ). Zwykle dla uk³adów scalonych
stosuje siê nazwy U1, U2... , dla rezysto-
rów R1, R2... itd. Nie wykonanie tej
czynnoœci spowoduje, ¿e kilka elemen-
tów bêdzie posiada³o tak¹ sam¹ nazwê,
co doprowadzi do powstawania b³êdów
podczas symulacji. Automatyczne nume-
rowanie elementów mo¿emy wykonaæ
dziêki opcji Menu/Tools/Annotate ... .
Podczas definiowania wartoœci ró¿-
nych elementów spotkamy siê z koniecz-
noœci¹ wpisywania liczb bardzo du¿ych
lub bardzo ma³ych. Mo¿emy wykonaæ to
na kilka sposobów.
Przyk³adowo zapisy:
1000 , 1000.0 , 1000Hz , 1e3 , 1.0e3 ,
1KHz i 1K reprezentuj¹ t¹ sam¹ liczbê
równ¹ 1000.
Nale¿y pamiêtaæ aby zapisywaæ je
jednym ci¹giem znaków, nie wstawiaj¹c
pomiêdzy litery i cyfry znaków spacji.
Wszystkie mo¿liwe do zastosowania lite-
Symbol
Mno¿nik
T
10 12
G
10 9
Meg
10 6
K
10 3
mil
25,4 –6
m
10 –3
u
10 –6
n
10 –9
p
10 –12
f
10 –15
ry i odpowiadaj¹ce im mno¿niki zesta-
wiono w Tabeli 1.
Zdefiniowane Ÿród³a sygna³ów znaj-
duj¹ siê tak¿e w bibliotece Sim.ddb
w zbiorze Symulation Symbols.lib . Na-
tomiast najprostsze z nich, takie jak
Ÿród³a napiêæ sta³ych, sinusoidalnych
i prostok¹tnych mo¿emy znaleŸæ w Me-
nu/Simulate/Sources> . Posiadaj¹ one
zdefiniowane wszystkie parametry (nale-
¿y tylko wype³niæ pole Designator ) i do-
skonale nadaj¹ siê do przeprowadzenia
pierwszych prób z symulatorem.
W celu zaprezentowania mo¿liwoœci
modu³u symulacji wybra³em jeden z go-
towych uk³adów przyk³adowych o na-
zwie Analog Amplifier i znajduj¹cy siê
w katalogu \Program Files\Design
Explorer 99\Examples\ . Jest to prosty
wzmacniacz m.cz. zbudowany w oparciu
o koœæ mA 741. Takie rozwi¹zanie ustrze-
¿e czytelnika od pope³niania b³êdu pod-
czas rysowania schematu i pozwoli sku-
piæ siê na samej symulacji. Schemat ide-
Rozpoczêcie pracy z symulatorem
Pierwsz¹ czynnoœci¹ potrzebn¹ do
wykonania symulacji jest stworzenie go-
towego schematu w module Schematic
Editor . Jednak aby symulacja by³a mo¿li-
wa do przeprowadzenia, modu³ Circut
Simulation potrzebuje pewnych dodat-
kowych informacji o ka¿dym elemencie
w zaprojektowanym obwodzie. S¹ to
miêdzy innymi symbol elementu i nazwa
biblioteki definiuj¹cej jego parametry
elektryczne. Informacje te przechowywa-
ne s¹ w specjalnych bibliotekach symbo-
lów elementów. Mo¿liwe do zasymulo-
wania elementy znajduj¹ siê w bibliotece
\Program Files\Design Explorer 99\Li-
brary\Sch\Sim.ddb . Ka¿dy z symboli ele-
mentów zawartych w tej bibliotece za-
wiera nazwê modelu symulacyjnego opi-
Rys. 1 Schemat ideowy symulowanego uk³adu
Rys. 2 Okienko g³ówne definiowania parametrów symulacji
10898088.003.png 10898088.004.png
38
Protel Design Explorer 99 cz.4
12/99
Rys. 3 Parametry symulacji Transient
Rys. 4 Wynik symulacji Transient
owy omawianego wzmacniacza widocz-
ny jest na rysunku 1.
Posiadaj¹c ju¿ w pe³ni gotowy sche-
mat ideowy mo¿emy przejœæ do zdefinio-
wania warunków symulacji uk³adu. Wy-
wo³uj¹c Menu/Simulate/Setup ... otwo-
rzymy okienko (rysunek 2) pozwalaj¹ce
na ustawienie wszystkich parametrów
pracy symulatora. W górnej czêœci okna
znajduj¹ siê zak³adki, których wywo³anie
pozwala nam na konfiguracje wybranych
sposobów symulacji. Symulacje , które
maj¹ zostaæ wykonane zaznaczamy
w sekcji Select Analyses to Run . Lista
wyboru Collect Data For okreœla jakiego
typu dane powinny zostaæ obliczone
podczas symulacji i zapisane do pliku
wynikowego. Nale¿y wybraæ odpowie-
dni¹ z nich. Pierwsze cztery pozwalaj¹ na
obliczanie danych dla wszystkich warto-
œci danego typu (pr¹dy, napiêcia etc.).
Ostatnia opcja ( Active Signals ) spowo-
duje, i¿ obliczenia bêd¹ wykonywane je-
dynie dla sygna³ów znajduj¹cych siê na
liœcie w okienku Active Signals . Rozwi¹-
zanie takie posiada zarówno wady jak
i zalety. Wad¹ jest koniecznoœæ ponowne-
go przeprowadzenia symulacji w przy-
padku koniecznoœci obejrzenia dodatko-
wych sygna³ów. Niew¹tpliw¹ zalet¹ na-
tomiast szybkoœæ wykonywania obliczeñ
oraz niewielki rozmiar pliku wynikowe-
go. Aktywne sygna³y ( Active Signals )
wybieramy z listy wszystkich sygna³ów
( Available Signals ). S³u¿¹ do tego wi-
doczne pomiêdzy oba oknami przyciski
pozwalaj¹ce na przemieszczanie z okna
do okna pojedynczego sygna³u („<” ,
„>”) lub wszystkich zaznaczonych
(„<<” , „>>”). Lista wyboru Sheets to
Netlist pozwala na wybranie zakresu pro-
wadzonej symulacji (ca³y projekt, poje-
dynczy schemat ...). Ostatnim elemen-
tem okienka jest grupa SimViewSetup .
Pozwalaj¹ one na zapamiêtanie ostatnie-
go ustawienia parametrów symulatora,
oraz wyœwietlanie jedynie przebiegów
znajduj¹cych siê w oknie Active Signals .
Symulacja uk³adu
Program pozwala na wykonanie kil-
ku ró¿nych symulacji uk³adu. Postaram
siê teraz opisaæ ka¿d¹ z nich. Przedstawiê
zatem sposoby konfiguracji oraz przyk³a-
dowe przebiegi otrzymane w wyniku wy-
konania symulacji uk³adu widocznego na
rysunku 1.
Najprostsz¹ analiz¹ uk³adu jest
Operating Point Analysis . Tego typu
symulacja wykonywana jest zawsze
przed symulacjami Transident lub AC
Small Signal i jest niezbêdna do zbada-
nia warunków pocz¹tkowych pracy
uk³adu oraz ustalenia niektórych auto-
matycznie definiowanych parametrów
symulacji. Pierwsz¹ u¿yteczn¹ analiz¹
jest Transient Analysis , czyli symulacja
przejœciowa uk³adu. Generuje ona prze-
Rys. 5 Parametry symulacji AC Small Signal
Rys. 6 Wynik symulacji AC Small Signal
10898088.005.png 10898088.006.png
12/99
Protel Design Explorer 99 cz.4
39
biegi jakie zwykle mo¿emy otrzymaæ na
ekranie oscyloskopu, czyli odpowiedz
pr¹dow¹ lub napiêciow¹ uk³adu
w funkcji czasu, która jest wynikiem po-
budzenia sygna³em wejœciowym. Anali-
za tego typu zawsze rozpoczyna siê od
czasu równego zero.
W przedziale czasu pomiêdzy zerem
a wartoœci¹ pola Start Time (rysunek 3)
symulacja tak¿e jest wykonywana, lecz
jej wyniki nie s¹ zapamiêtywane. Jest to
niezbêdne do okreœlenia w jakim stanie
znajdowa³ siê uk³ad w momencie rozpo-
czêcia obserwacji ( Start Time ).
W przedziale czasowym pomiêdzy Start
Time i Stop Time wykonywane s¹ obli-
czenia, które nastêpnie mo¿emy ogl¹d-
n¹æ w postaci wykresu. Parametr Step Ti-
me okreœla co jaki interwa³ czasowy po-
winny byæ wykonywane obliczenia. Im
jest on mniejszy, tym symulacja jest do-
k³adniejsza, lecz wymaga wiêcej czasu
i pamiêci. Jednak nie jest to zmienna sta-
tyczna. Symulator automatycznie j¹
zmienia w razie koniecznoœci (np. gdy
wystêpuj¹ szybko narastaj¹ce lub opada-
j¹ce zbocza sygna³u analiza uk³adu wyko-
nywana jest czêœciej). Wartoœæ parametru
Maximum Step okreœla jaki mo¿e byæ
maksymalny interwa³ czasu, który pro-
gram mo¿e ustaliæ automatycznie. Typo-
wo Czasy Step Time i Maximum Step
takie same.
Program mo¿e automatycznie usta-
wiæ te czasy korzystaj¹c z parametrów
wpisanych w sekcji Default Parame-
ters . Definiujemy tam iloϾ cykli obser-
wowanego sygna³u, które chcemy
ogl¹dn¹æ ( Cycles Displayed ) oraz iloœæ
wykonywanych obliczeñ w ci¹gu jedne-
go cyklu.
Pole Use Initial Conditions pozwala
na rozpoczêcie symulacji z innymi para-
metrami pocz¹tkowymi elementów, ni¿
s¹ domyœlnie przyjête (np. domyœlnie na
pocz¹tku symulacji wszystkie kondensa-
tory s¹ roz³adowane). W naszym przy-
padku nie korzystamy z tej opcji. Symu-
lacjê widoczn¹ na rysunku 4 przeprowa-
dzono dla wartoœci domyœlnych, i wi-
doczne s¹ na nim przebiegi napiêcia na
wejœciu i wyjœciu uk³adu.
Kolejnym bardzo czêsto wykorzysty-
wanym typem symulacji jest AC Small Si-
gnal . Analiza tego typu generuje odpo-
wiedz czêstotliwoœciow¹ uk³adu. Symula-
cja wykonywana jest dla ma³ej amplitudy
sygna³u wejœciowego, a jej wynikiem jest
amplituda sygna³u wyjœciowego w funkcji
czasu. Mo¿emy dziêki niej okreœlaæ pa-
smo przenoszenia uk³adu. W celu prze-
prowadzenia symulacji tego typu, do wej-
œcia uk³adu musi zostaæ przy³¹czone co
najmniej jedno Ÿród³o przebiegu zmien-
nego. Analizowany przyk³ad spe³nia ten
wymóg (Ÿród³o napiêciowe Vin ). Ampli-
tuda przebiegu podawana jest w ustawie-
niach Ÿród³a jako parametr AC Part Field .
Ustawienie wartoœci 1 pozwoli na obser-
wacjê wzmocnienia w odniesieniu do po-
ziomu 0 dB. ród³o to na czas symulacji
zastêpowane jest poprzez generator prze-
biegu sinusoidalnego o czêstotliwoœci
zmieniaj¹cej siê od Start Frequency do
Stop Frequency z krokiem okreœlonym
przez parametry Test Pionts oraz Sweep
Type . Parametry wykonania symulacji
ustawiamy w zak³adce AC Small Signal
okienka Analyses Setup . Widoczne jest
ono na rysunku 5. Opcje Sweep Type de-
finiuj¹ iloœæ punktów testowych w nastê-
puj¹cy sposób:
Linear – Wartoœæ Test Points okreœla ca³-
kowit¹ iloœæ punktów testowych dla ca³ej
symulacji;
Decade – Wartoœæ Test Points okreœla
iloœæ punktów testowych na ka¿d¹ deka-
dê zmiennoœci czêstotliwoœci sygna³u
wejœciowego;
Octave – Wartoœæ Test Points okreœla
iloœæ punktów testowych na ka¿d¹ okta-
wê zmiennoœci czêstotliwoœci sygna³u
wejœciowego.
Iloœæ rzeczywiœcie obliczanych punk-
tów podczas ca³ej symulacji wyœwietlana
jest jako wartoϾ zmiennej Total Test
Points .
Wynik przyk³adowej symulacji tego
typu przedstawia rysunek 6. Przedsta-
wiony wykres celowo odbiega od przyjê-
tej normy dla tego typu charakterystyk.
Mianowicie skala czêstotliwoœci jest linio-
wa zamiast logarytmiczna, natomiast
wzmocnienie sygna³u nie zosta³o przed-
stawione w dB. Jest to bowiem domyœlny
sposób rysowania wykresów. Sposób
zmiany tych ustawieñ zostanie opisany
podczas prezentacji obs³ugi okienka pre-
zentacji wyników symulacji.
Symulacja DC Sweep wykonuje ca³¹
seriê symulacji typu Operating Point , za
ka¿dym razem modyfikuj¹c napiêcia
w zadanych Ÿród³ach. Pozwala to na uzy-
skanie charakterystyki przejœciowej uk³a-
du dla pr¹du sta³ego. Jak wynika z rysun-
ku 7 mo¿liwa jest symulacja dla dwóch
napiêæ wejœciowych. Zdefiniowanie
pierwszego z nich jest konieczne, nato-
miast drugiego opcjonalne. W liœcie wy-
boru znajduj¹ siê nazwy wszystkich do-
stêpnych w uk³adzie Ÿróde³ ( Source Na-
me ). Parametry Start Value oraz Stop
Value okreœlaj¹ pocz¹tkowe i koñcowe
Rys. 7 Parametry symulacji DC Sweep
Rys. 8 Wynik symulacji DC Sweep
10898088.001.png
40
Protel Design Explorer 99 cz.4
12/99
Rys. 9 Parametry symulacji Monte Carlo
Rys. 10 Wynik symulacji Monte Carlo
wartoœci dla wybranego Ÿród³a, nato-
miast pole Step Value definiuje wielkoϾ
kroku zmiany wartoœci Ÿród³a.
Widoczny na rysunku 8 wynik sy-
mulacji przeprowadzony zosta³ przy
zmiennych wartoœciach napiêæ Vin (na-
piêcie wejœciowe) oraz V1 (dodatnie na-
piêcie zasilaj¹ce). Napiêcie Vin zmienia-
³o siê od –2 V do 2 V z krokiem 20 mV,
natomiast V1 od 10 V do 15 V z krokiem
1 V. Dziêki temu otrzymaliœmy szeœæ cha-
rakterystyk. Na osi X widoczny jest za-
kres zmiennoœæ wartoœæ napiêcia Vin ,
natomiast na osi Y zakres zmiennoœci na-
piêcia wyjœciowego. Z otrzymanej cha-
rakterystyki wynika, ¿e wzmocnienie dla
napiêcia sta³ego wynosi 10 (dla
V1 =+12 V). Dla zakresu napiêæ ujem-
nych sygna³u wejœciowego otrzymujemy
dodatni sygna³ na wyjœciu (wzmacniacz
odwraca fazê sygna³u). Natomiast ma-
ksymalna dodatnia wartoœæ napiêcia na
wyjœciu uk³adu zale¿y od wartoœci napiê-
cia zasilaj¹cego V1 .
Analiza Monte Carlo wykonuje kilka
niezale¿nych symulacji uk³adu, przy
czym dla ka¿dej z nich stosuje losowo
wybrane (w zakresie okreœlonej toleran-
cji) wartoœci elementów. Analiza tego ty-
pu nie mo¿e byæ wykonana samodziel-
nie, lecz tylko w kooperacji z symulacja-
mi typu AC , DC lub Transient . Taka sy-
mulacja zapisuje dane jedynie dla sygna-
³ów okreœlonych w liœcie Active Signals
okienka Setup Analyses . Wykorzystuje-
my j¹ w celu okreœlenia wp³ywu wartoœci
tolerancji rzeczywistych elementów na
warunki pracy uk³adu. Pozwoli na okre-
œlenie które z elementów powinny cha-
rakteryzowaæ siê ma³¹ wartoœci¹ toleran-
cji, a których nawet znaczne odstêpstwo
od wartoœci nominalnej wprowadza je-
dynie niewielk¹ zmianê w pracy uk³adu.
Dziêki temu bêdzie mo¿liwe zastosowa-
nie lepszych, a wiêc dro¿szych elemen-
tów jedynie w pewnych newralgicznych
punktach uk³adu. Okienko odpowiedzial-
ne za konfiguracje symulacji przedstawia
rysunek 9. Pole Simulation Runs okreœla
ile jednostkowych symulacji powinno zo-
staæ przeprowadzonych. Parametr Simu-
lation Seed jest pewn¹ liczb¹ wykorzy-
stywan¹ w procesie generacji liczb loso-
wych. Domyœlnie ustawiona jest na –1.
W przypadku , kiedy chcemy wygenero-
waæ inn¹ seriê zmiennych losowych nale-
¿y zmodyfikowaæ t¹ wartoœæ. W wiêkszo-
œci przypadków nie jest to konieczne.
Grupa opcji Default Distribution
pozwala na wybranie rozk³adu wed-
³ug którego losowane bêd¹ wartoœci
elementów.
Uniform distribution – jest to rozk³ad
w którym wylosowanie jakiejkolwiek licz-
by z zadanego przedzia³u jest tak samo
prawdopodobne. Przyk³adowo dla rezy-
stora o wartoœci 1 kW i tolerancji 10%
jednakowo prawdopodobne bêdzie wy-
losowanie dowolnej wartoœci z zakresu
900 W do 1100 W.
Gaussian distribution – ten typ rozk³adu
generuje zmienne losowe, których praw-
dopodobieñstwo wyst¹pienia jest wiêk-
sze w pobli¿u wartoœci nominalnej.
W naszym przypadku wyst¹pienie warto-
œci bliskiej 1000 W bêdzie bardzo du-
¿e, natomiast wartoœci 900 W lub
1100 W znikome.
Worst Case distribution – jest to rozk³ad
podobny do rozk³adu uniform, z t¹ ró¿ni-
c¹, ¿e pod uwagê brane s¹ tylko wartoœci
krytyczne. Dla rezystora 1k W ±10% bê-
d¹ to wiêc 900 W oraz 1100 W. Dla ka¿-
dej wykonywanej symulacji bêdzie jed-
nakowo prawdopodobne wylosowanie
wartoœci 900 lub 1100.
Mo¿emy okreœliæ wartoœci domyœl-
nych tolerancji dla szeœciu grup elemen-
tów: rezystorów, kondensatorów, induk-
torów, Ÿróde³ napiêcia sta³ego, wartoœci
beta tranzystorów oraz czasu propagacji
elementów cyfrowych. Ka¿d¹ z nich
wpisujemy w grupie Monte Carlo De-
fault Tolerances . Wartoœæ ka¿dego ele-
mentu jest niezale¿nie losowana (w za-
kresie tolerancji) dla ka¿dego elementu.
Przyk³adowo jeœli w uk³adzie znajduj¹
siê dwa rezystory o wartoœci nominalnej
1000 W, to podczas symulacji ich war-
toœæ mo¿e zostaæ losowo okreœlo-
na np. na 953 W dla jednego z nich
i 1022 W dla drugiego.
W przypadku kiedy chcemy u¿yæ
specjalnych wartoœci tolerancji dla wy-
branego przez nas elementu powinniœmy
skorzystaæ z przycisku Add... znajduj¹ce-
go siê w grupie Specific Device Toleran-
ces . W takim przypadku dla wybranych
elementów losowanie wartoœci bêdzie
przeprowadzane z ich specyficznymi pa-
rametrami, takimi jak tolerancja i stoso-
wany rozk³ad.
W analizowanym przyk³adzie 10%
tolerancja nie wp³ywa w bardzo du¿y
sposób na jego warunki pracy. Dlatego
te¿ dla dobrego uwidocznienia wp³ywu
tolerancji elementów wprowadzono jej
du¿e wartoœci. Widoczna na rysunku 10
symulacja Monte Carlo przeprowadzona
zosta³a we wspó³pracy z symulacj¹ typu
Transient .
à Jaros³aw Piotrkowiak
10898088.002.png
Zgłoś jeśli naruszono regulamin