Okładka EP11/2003

Transkrypt

Okładka EP11/2003
w w w. e p . c o m . p l
ELEKTRONIKA PRAKTYCZNA •
NA CD: NIEŒMIERTELNY – KATALOG 194 MODELI 8051, 22 PROGRAMY CAD/EDA
Miêdzynarodowy magazyn elektroników konstruktorów
11/2003
●
listopad
●
15 zł 50 gr
(w tym 7% VAT)
11/2003 • listopad
A U T O M A T Y K A
Dzia³anie sterowników S7-200 - podstawy
DziÍki wielu artyku³om na
temat sterownikÛw PLC
publikowanym dotychczas
w†EP, ich moøliwoúci s¹
dobrze znane Czytelnikom.
W†praktyce doúÊ istotne jest
takøe zrozumienie sposobu
ich dzia³ania. To w³aúnie
zagadnienie jest tematem
prezentowanego artyku³u.
Rodzina sterownikÛw PLC SIMATIC
S7-200 sk³ada siÍ z†piÍciu jednostek centralnych: CPU221, CPU222, CPU224,
CPU226 i†CPU226XM. RÛøni¹ siÍ one miÍdzy sob¹†iloúci¹ dostÍpnej pamiÍci programu oraz pamiÍci danych, a†takøe liczb¹
zintegrowanych wejúÊ-wyjúÊ binarnych.
Zasada pracy sterownika S7-200 polega na cyklicznym przetwarzaniu programu
zapisanego w†nieulotnej pamiÍci programu
typu EEPROM. Sterownik ma dwa rodzaje pamiÍci (rys. 1) wykorzystywanej do
przechowywania, przenoszenia i†wykonywania programu. ZewnÍtrzna pamiÍÊ EEPROM s³uøy przenoszenia i†archiwizacji
programÛw. Program z†zewnÍtrznej pamiÍci kopiowany jest po za³¹czeniu napiÍcia
zasilaj¹cego do wewnÍtrznej pamiÍci EEPROM, gdzie jest zapamiÍtywany i†po wy³¹czeniu zasilania nie ulega zniszczeniu.
System operacyjny sterownika po za³¹czeniu zasilania kopiuje program zapisany
w†wewnÍtrznej pamiÍci EEPROM do pamiÍci RAM sterownika. Wykonywanie
programu odbywa siÍ w†pamiÍci RAM.
ZarÛwno zewnÍtrzna i†wewnÍtrzna pamiÍÊ
EEPROM oraz pamiÍÊ RAM jest podzielona na obszary:
- pamiÍci programu,
- danych i†parametrÛw,
- obszar danych z†podtrzymaniem.
Obszar danych z†podtrzymaniem jest
wykorzystywany do zapamiÍtywania wartoúci zdeklarowanych zakresÛw danych,
licznikÛw, zegarÛw, stanÛw i†wartoúci
zmiennych po zaniku napiÍcia zasilaj¹cego. Podtrzymanie realizowane jest poprzez kondensator o†duøej pojemnoúci
i†ma³ej up³ywnoúci. åredni czas podtrzymania danych wynosi 50 do 190 godzin.
W†przypadku potrzeby uzyskania
d³uøszych czasÛw podtrzymania zawartoúci pamiÍci stosuje siÍ opcjonaln¹ bateriÍ podtrzymuj¹c¹ dane. åredni czas
podtrzymania danych wynosi oko³o 200
dni. Obszar pamiÍci w†sterowniku oznaczony jako OB1 jest wywo³ywany cyklicznie przez system operacyjny sterownika, jak to pokazano na rys. 2.
Wykonywanie programu w†pÍtli OB1
koÒczy siÍ w†momencie natrafienia na instrukcjÍ MEND koÒcz¹c¹ wykonywanie
programu, po czym system operacyjny zaczyna wykonywaÊ ponownie pierwsz¹ napotkan¹ instrukcjÍ na pocz¹tku bloku
OB1. W†bloku tym mog¹ znajdowaÊ siÍ
instrukcje wywo³aÒ podprogramÛw - SBR.
Wydzielenie w†bloku OB1 podprogramÛw
ma na celu taki podzia³ zadaÒ programu,
aby moøna by³o np. utworzyÊ osobne programy np. do obs³ugi przekszta³tnika czÍstotliwoúci, komunikacji poprzez modemy
(procedury inicjalizacji, odbioru i†nadawania) lub obs³ugi paneli operatorskich OP.
W†kaødym podprogramie moøna wywo³aÊ
kolejny podprogram. Maksymalna g³ÍbokoúÊ zagnieødøenia podprogramÛw wynosi 8. Podprogram koÒczy siÍ w†momencie
wyst¹pienia instrukcji powrotu RET.
OprÛcz obs³ugi podprogramÛw sterowniki S7-200 mog¹ obs³ugiwaÊ takøe przerwania. Dziel¹ siÍ one na:
- procesowe, wywo³ywane poprzez narastaj¹ce lub opadaj¹ce zbocze sygna³u doprowadzonego do wejúÊ sterownika lub
- czasowe, wywo³ywane poprzez odmierzenie przez wewnÍtrzne zegary okreúlonego czasu, po ktÛrym nastÍpuje wywo³anie programu obs³ugi przerwania.
DostÍpne s¹ rÛwnieø przerwania od
portÛw komunikacyjnych. Zadaniem tych
przerwaÒ jest obs³uga danych nadawanych
i†odbieranych w†odpowiednich chwilach
czasowych poprzez porty komunikacyjne
sterownika. Przerwania maj¹ przydzielone
priorytety. Program obs³ugi przerwania
koÒczy siÍ w†momencie wyst¹pienia instrukcji RETI.
ZarÛwno podprogramy jak i†programy
obs³ugi przerwaÒ po ich zakoÒczeniu
przekazuj¹ wykonywanie programu do instrukcji nastÍpuj¹cej po instrukcji wywo³uj¹cej podprogram lub przerwanie. Odpowiednie adresy powrotÛw zapamiÍtywane
s¹ na stosie, przy czym za prawid³owe
dzia³anie odpowiada system operacyjny
sterownika.
OprÛcz pamiÍci programu w†sterowniku S7-200 przewidziano obszar danych
DB1. W†obszarze tym zapamiÍtywane s¹
wartoúci deklarowanych zmiennych, wyniki operacji matematycznych, wartoúci inicjalizuj¹ce, tabele, parametry. W†obszarze
tym moøna zdeklarowaÊ zakres zmiennych
ktÛre bÍd¹ podtrzymywane po zaniku zasilania. Obszar pamiÍci danych DB1 jest
oznaczony liter¹ V†(Variable - zmienne).
W†obszarze DB1 moøna przechowywaÊ dane w†dowolnym formacie, np. w†postaci
bajtu (8 bitÛw), s³owa (16 bitÛw) lub podwÛjnego s³owa (32 bity) - rys. 3.
OprÛcz obszaru DB1, pamiÍÊ danych
sk³ada siÍ z†obszaru danych o†dostÍpie bitowym oznaczonym jako M (Merker znacznik) oraz obszaru wejúÊ procesu
oznaczeniu ìEî (Eingange - wejúcia)
i†wyjúÊ procesu A (Ausgange - wyjúcia).
Do danych moøna odwo³ywaÊ siÍ
w†sposÛb bezpoúredni, poprzez jawne po-
Rys. 1. Obszary pamięci RAM oraz EEPROM
142
Elektronika Praktyczna 11/2003
A U T O M A T Y K A
mÛw. System operacyjny udostÍpnia szereg znacznikÛw†systemowych SM (System merker),
ktÛre odpowiadaj¹ za rÛøne
funkcje systemowe np. generacjÍ sygna³u 1†Hz lub s¹ aktywne tylko w†pierwszym cyklu
sterownika. Opis wszystkich
funkcji znajduje siÍ w†dokumentacji do sterownikÛw S7200 dostÍpnej w†Internecie pod
adresem znajduj¹cym siÍ na
koÒcu artyku³u.
Rys. 2. Opis cyklu pracy sterownika S7−200
Sterownik S7-200 posiada
rÛwnieø zintegrowane tzw.
szybkie liczniki. S¹ to liczniki, ktÛre po
danie adresu danej np. E3.4 (wejúcie bajt
zainicjalizowaniu zaczynaj¹ zliczaÊ impul3, bit 4) lub w†sposÛb poúredni za pomosy doprowadzone do ustalonych wejúÊ
c¹ wskaünika, np. &VW200, gdzie oznaczesterownika poza cyklem pracy sterownika.
nie & oznacza wskaünik do danej VW200.
Czas wykonywania i†liczba instrukcji proOprÛcz obszaru danych DB1, w†przegramowych nie ma wp³ywu na szybkoúÊ
strzeni danych sterownika wydzielono
i†pewnoúÊ zliczania szybkiego licznika.
obszar lokalnych danych L. Dane lokalne
Chc¹c odczytaÊ wartoúÊ szybkiego liczniprzyporz¹dkowane s¹ do danego podproka naleøy w†danym miejscu programu
gramu i†s¹ widoczne tylko w†podprograumieúciÊ instrukcjÍ odczytuj¹c¹ chwilow¹
mie SBRx, w†ktÛrym zosta³y†zadeklarowawartoúÊ szybkiego licznika. Liczba szybne. Dane lokalne nie s¹ dostÍpne poza dakich licznikÛw w†zaleønoúci od CPU wynym podprogramem SBRx. Dane lokalne
nosi od 4†do 6. Liczniki mog¹ zliczaÊ sygL, wykorzystuje siÍ aby przekazywaÊ warna³y o†czÍstotliwoúci do 30 kHz. OprÛcz
toúci z†programu g³Ûwnego do podprogra-
szybkich licznikÛw dostÍpne s¹ rÛwnieø
liczniki i†zegary wykorzystywane w†programie uøytkownika. Dodatkowo S7-200
wyposaøony jest w†wyjúcia PWM (modulacja szerokoúci impulsu) oraz PTO (modulacja czÍstotliwoúci), dziÍki czemu idealnie nadaje siÍ do sterowania silnikami
krokowymi oraz†uk³adami pozycjonowania. System operacyjny S7-200 dba o†odpowiednie przydzielenie czasu na sprawdzenie wszystkich elementÛw systemu.
System operacyjny sterownika nadzoruje wykonywanie programu, odpowiada
za komunikacjÍ z†innymi zewnÍtrznymi
urz¹dzeniami (sieci sterownikÛw†S7-200),
dokonuje samokontroli pod k¹tem sprawnoúci systemÛw S7-200, zapisuje stany
wyjúÊ do obrazu wyjúÊ procesu, ostatecznie odczytuje stany wejúÊ z†obrazu wejúÊ
procesu. Obraz wejúÊ i†wyjúÊ procesu to
obszar wydzielonej pamiÍci gdzie zapisywane s¹ stany sygna³Ûw dla wejúÊ i†wyjúÊ
sterownika. ChwilÍ czasow¹ w†ktÛrej odczytywany jest stan sygna³u dla wejúÊ
i†zapisu dla wyjúÊ dobiera automatycznie
system operacyjny. Sygna³y analogowe odczytywane z†modu³Ûw wejúÊ i†zapisywane
do wyjúÊ analogowych nie posiadaj¹ obrazu wejúÊ i†wyjúÊ procesu. W†zwi¹zku
z†tym wartoúci przekazywane lub odczytywane z†modu³Ûw analogowych s¹ wartoúciami chwilowymi. Bardzo bogaty zbiÛr
instrukcji w†tym instrukcji zmiennoprzecinkowych, komunikacyjnych, konwersji,
regulacji PID pozwala na tworzenie
w†oparciu o†sterowniki S7-200 bardzo z³oøonych programÛw dostÍpnych do tej pory tylko na duøych systemach sterownia.
DziÍki zintegrowanemu konfigurowalnemu
portowi komunikacyjnemu moøliwe jest
tworzenie zdecentralizowanych struktur
sterowania i†gromadzenia danych w†oparciu o†tryb swobodny portu ASCII.
Micha³ Bereza, Siemens
Dodatkowe informacje
Rys. 3. W obszarze pamięci danych DB1 można przechowywać dane w różnych
formatach
144
Pe³na dokumentacja w jêzyku angielskim do
sterownika S7-200 znajduje siê w Internecie
pod adresem: www.siemens.pl/simatic w podkatalogu Katalogi>Instrukcje.
Elektronika Praktyczna 11/2003
P O D Z E S P O Ł Y
Modu³y bezpieczeñstwa
firmy Schleicher
Berliñska firma Schleicher Relais Werke zosta³a
utworzona przez in¿yniera Otto Schleichera w 1937
roku. Pocz¹tkowo zak³ad zajmowa³ siê produkcj¹
prze³¹czników automatycznych, natomiast
pierwsze przemys³owe urz¹dzenia elektroniczne
produkowa³ od lat ‘50. Zaostrzenie norm
dotycz¹cych bezpieczeñstwa w latach ‘90
otworzy³o przed firm¹ Schleicher mo¿liwoœæ
rozwoju w nowym kierunku - w systemach
bezpieczeñstwa. Ju¿ w latach ‘80 specjaliœci
Schleichera stworzyli szereg rozwi¹zañ
dotycz¹cych bezpieczeñstwa maszyn, a tak¿e stali
siê wspó³twórcami aktualnych norm.
Zgodnie z wytycznymi UE, od dnia 1 stycznia 1995 wymaga siê,
aby wszystkie maszyny kierowane na rynek wspólnoty by³y oznakowane znakiem CE, natomiast wed³ug Rozporz¹dzenia Ministra
Gospodarki, Pracy i Polityki Spo³ecznej z 10 kwietnia 2003 roku
(Dz.U. Nr 91. poz. 857 i 858) obowi¹zek znakowania wyrobów
znakiem CE obowi¹zuje w kraju z chwil¹ wejœcia Polski do UE.
Jednostki kontrolne krajów cz³onkowskich UE maj¹ obowi¹zek
sprawdzaæ dotrzymania postulatów dotycz¹cych bezpieczeñstwa i ochrony zdrowia zgodnie z zaleceniami Dyrektywy Maszynowej. Ka¿da maszyna, która ma byæ wprowadzona do pracy
w UE podlega jej wytycznym. Jeœli wytyczne s¹ spe³nione, to
mo¿na tak¹ maszynê oznaczyæ znakiem CE, o co producent musi zadbaæ we w³asnym zakresie i na w³asn¹ odpowiedzialnoœæ.
Rys. 1. Graf oceny ryzyka
Producent, który nie spe³ni tych wymagañ wystawia siê na ryzyko wysokich kar oraz obowi¹zek wycofania produktów z rynku
na w³asny koszt.
Wobec akcesji Polski do struktur Unii Europejskiej, polscy producenci maszyn i urz¹dzeñ mog¹ a nawet powinni ju¿ teraz zadbaæ o spe³nienie odpowiednich norm i uzyskania prawa do nanoszenia znaku CE.
Tab. 1. Wymagania stawiane urządzeniom kwalifikowanym do poszczególnych kategorii bezpieczeństwa
Kategoria
Podstawowe wymagania
Zachowanie siê systemu
Zasady osi¹gniêcia
bezpieczeñstwa
B
Elementy steruj¹ce lub/i ochronne systemu zwi¹zane z bezpieczeñstwem jak
równie¿ ich elementy sk³adowe musz¹ byæ zaprojektowane , skonstruowane,
dobrane, po³¹czone zgodnie z obowi¹zuj¹cymi standardami, tak by by³y odporne
na spodziewane dzia³ania zewnêtrzne.
W przypadku wyst¹pienia b³êdu istnieje
prawdopodobieñstwo utraty funkcji
bezpieczeñstwa.
G³ównie
scharakteryzowane
przez dobór
komponentów
1
Wymagania klasy B musz¹ byæ spe³nione. Dodatkowo istnieje koniecznoœæ
stosowania wypróbowanych komponentów i zasad bezpieczeñstwa.
Jak w kategorii B, z wiêkszym marginesem
niezawodnoœci funkcji bezpieczeñstwa
2
Wymagania klasy B musz¹ byæ spe³nione. Dodatkowo istnieje koniecznoœæ
stosowania wypróbowanych komponentów i zasad bezpieczeñstwa. System
steruj¹cy musi kontrolowaæ funkcje bezpieczeñstwa w odpowiednich interwa³ach
czasowych.
W przypadku wyst¹pienia usterki miedzy
kontrolami, mo¿e dojœæ do utraty funkcji
bezpieczeñstwa.
3
Wymagania klasy B musz¹ byæ spe³nione. Dodatkowo istnieje koniecznoœæ
stosowania wypróbowanych komponentów i zasad bezpieczeñstwa. Pojedyncza
usterka nie mo¿e prowadziæ do utraty funkcji bezpieczeñstwa.Jeœli to mo¿liwe,
pojedyncza usterka powinna byæ wykrywana.
W przypadku wyst¹pienia usterki funkcja
bezpieczeñstwa jest realizowana. W przypadku
wyst¹pienia wiêkszej iloœci usterek mo¿e dojœæ do
utraty funkcji bezpieczeñstwa. Niektóre usterki s¹
wykrywane.
4
Wymagania klasy B musz¹ byæ spe³nione. Dodatkowo istnieje koniecznoœæ
stosowania wypróbowanych komponentów i zasad bezpieczeñstwa. Czêœci
odpowiedzialne za bezpieczeñstwo musz¹ byæ zaprojektowane w nastêpuj¹cy
sposób:
- pojedyncza usterka nie mo¿e prowadziæ do utraty funkcji bezpieczeñstwa,
- pojedyncza usterka powinna byæ wykrywana przed lub podczas kontroli funkcji
bezpieczeñstwa, lub jeœli to niemo¿liwe, nagromadzenie siê usterek nie mo¿e
prowadziæ do utraty funkcji bezpieczeñstwa.
W razie powstania jednej lub wiêcej usterek, funkcja
bezpieczeñstwa bêdzie zachowana. Usterki musz¹
byæ wykrywane w takim czasie aby nie nast¹pi³a
utrata funkcji bezpieczeñstwa.
138
G³ównie
scharakteryzowane
przez strukturê
systemu
Elektronika Praktyczna 11/2003
P O D Z E S P O Ł Y
Tab. 2. Kategorie zatrzymania określone w normie
PN−EN 60204−1
Kategoria stopu
Funkcja
0
Zatrzymanie przez natychmiastowe od³¹czenie dop³ywu
energii do napêdów urz¹dzenia (zatrzymanie
niekontrolowane)
1
Sterowane doprowadzenie do stanu spoczynku, przy
czym doprowadzenie energii zostanie od³¹czone dopiero
w stanie spoczynku
2
Sterowane doprowadzenie do stanu spoczynku, przy
którym utrzymywany jest dop³yw energii do napêdów
Tab. 3. Seria ekonomiczna 5000 (obudowa o szerokości
22,5mm)
Typ
Opis
SNO 5001K
stop awaryjny, monitorowanie drzwi bezpieczeñstwa
(1 styk i 1 alarm)
SNO 5001.1K
Fot. 2. Wersja „−A” z odłączanymi zaciskami
Jak SNO 5001K, bez blokady w³¹czenia i restartu
oraz monitorowania przycisku reset
SNO 5002K
Stop awaryjny, monitorowanie drzwi bezpieczeñstwa
(2 styki)
SNO 5002.1K
Jak SNO 5002K, bez blokady w³¹czenia i restartu
oraz monitorowania przycisku reset
SNZ 5052K
Sterowanie dwurêczne i monitorowanie drzwi
bezpieczeñstwa
Obowi¹zkiem producenta maszyny jest:
- eliminowaæ lub minimalizowaæ niebezpieczeñstwo urazu we
wszystkich fazach pracy i przez ca³y czas pracy maszyny,
- uwzglêdniæ wytyczne zawarte w normach przy projektowaniu
i konstrukcji nowych maszyn,
- w przypadku wystêpowania ryzyka uczyniæ kroki zwiêkszaj¹ce
ochronê, poprawiæ konstrukcjê mechaniczn¹ maszyny i wyposa¿yæ system steruj¹cy w zaaprobowane przekaŸniki bezpieczeñstwa. Z odpowiednich norm wynika koniecznoœæ u¿ycia dla
maszyn kategorii od 2 do 4 w obwodach natychmiastowego zatrzymania maszyny,
- informowanie instytucji certyfikuj¹cej o zmianach w konstrukcji
maszyny, które maj¹ wp³yw na bezpieczeñstwo,
- informowaæ u¿ytkownika o mo¿liwym ryzyku u¿ytkowania,
- razem z maszyn¹ dostarczaæ wyposa¿enie i urz¹dzenia zapewniaj¹ce bezpieczeñstwo,
- dostarczyæ deklaracjê zgodnoœci ze znakiem CE.
Tab. 4. Przekaźniki do „stopu awaryjnego” i aplikacji drzwi bezpieczeństwa
Typ
stop
awaryjny
drzwi
bezp.
stop
stop detekcja wyjœcie opóŸnie- opóŸnie- monitoawaryj- awaryj- zwarcia tranzysnie
nie
rowanie
ny 1-ka- ny 2-ka- poprzecz- torowe startu wy³¹cze- przyciski
na³owy na³owy nego
nia
RESET
SNO 1002
X
X
X
X
X
X
3
1
1
SNO 1004
X
X
X
X
X
X
3
1
1
SNO 1005
X
X
X
X
X
3
1
SNO 2001-xx
X
X
X
X
X
X
2
SNO 2002-xx
X
X
X
X
X
X
3
SNO 2003-xx
X
X
X
X
X
2
45
SNO 2004-17
X
X
X
X
2
22,5
SNO 2005
X
X
X
X
X
SNO 2012
X
X
X
X
X
SNV 2020-17
X
X
X
X
SNO 4003K
X
X
X
X
SNO 4003K-A
X
X
X
X
SNO 4062K
X
X
X
X
monitorowanie
jednoczesne
obwód
styki
styki
sprzê¿e- bezpie- kontrolnia moni- czeñstwa ne
torowania
X
X
X
X
X
X
X
SNO 4062K-A
X
X
X
X
X
X
SNV 4063KL
X
X
X
X
X
X
X
X
X
X
styki wyjœcie szerokoœæ
chwi- pó³prze- obudowy
lowe wodnikowe
90
90
90
45
1
1
90
X
3
1
45
X
6
4
90
X
4
1
90
X
3
1
22,5
X
3
1
22,5
X
2
1
22,5
1
X
X
X
2
X
X
X
3
22,5
22,5
SNV 4063KL-A
X
X
X
X
X
X
X
X
X
3
SNV 4063KP
X
X
X
X
X
X
X
X
X
X
3
1
22,5
22,5
SNV 4063KP-A
X
X
X
X
X
X
X
X
X
X
3
1
22,5
Tab. 4 − cd. − przekaźniki do barier optycznych, aplikacji sterowania dwuręcznego i listew stykowych
Typ
SNL 4062K
Kontrola Kontrola Listwy 1-kana³owy 2-kana³owy Detekcja Wyjœcie Monitoro- Monitoro- Obwód
Styki
Styki Styki SzerokoϾ
stanu dwurêczna stykowe
Stop
Stop
zwarcia pó³przewanie
wanie sprzê¿enia bezpie- kontrol- chwi- obudowy
bariery
awaryjny awaryjny poprzecz- wodniko- przycisku jedno- monitoro- czeñstwa
ne
lowe
optycznej
nego
we
RESET
czesne
wania
X
X
X
X
X
X
2
1
SNO 2005-xx
X
X
X
X
X
X
X
X
X
3
1
SNO 4062KM
X
X
X
X
X
X
X
X
2
1
22,5
X
X
X
X
22,5
SNO 4062KM-A
22,5
1
45
X
X
X
X
2
1
SNZ 4052K
X
X
X
X
X
2
1
22,5
SNZ 4052K-A
X
X
X
X
X
2
1
22,5
140
Elektronika Praktyczna 11/2003
P O D Z E S P O Ł Y
PrzekaŸniki bezpieczeñstwa firmy Schleicher
Fot. 3. Przekaźniki bezpieczeństwa serii 5000
Kategoria bezpieczeñstwa
Kategoria bezpieczeñstwa maszyny charakteryzuje poziom ryzyka, który musi byæ uwzglêdniony przy konstrukcji maszyny, jej
obwodów steruj¹cych i obwodów bezpieczeñstwa. Obejmuje równie¿ wymagane zachowanie czêœci systemu steruj¹cego odpowiedzialnej za bezpieczeñstwo z uwzglêdnieniem jego wytrzyma³oœci na awarie. Szczegó³owo problematyka ta jest zawarta w normach PN-EN 292-1, PN-EN 954-1 i PN-EN 1050. W tab. 1 podajemy opis wytycznych dla poszczególnych kategorii.
W zale¿noœci od analizy ryzyka urazu i zastosowanych zabezpieczaj¹cych elementach maszyny (pokrywy zabezpieczaj¹ce, konstrukcja i ergonomia maszyny, inne elementy zabezpieczaj¹ce), konstruktor maszyny i systemu steruj¹cego powinien okreœliæ wymagan¹ kategoriê bezpieczeñstwa i wed³ug niej zaprojektowaæ obwody natychmiastowego zatrzymania i wy³¹czenia maszyny. Z zamieszczonej wytycznych na obwody bezpieczeñstwa wynika koniecznoœæ stosowania
modu³ów bezpieczeñstwa od kategorii bezpieczeñstwa 2 i wy¿szej.
Przy okreœlaniu kategorii nale¿y uwzglêdniæ sytuacjê przy usuniêciu mo¿liwych do usuniêcia pokryw, drzwiczek itp., tak¿e, gdy
ich po³o¿enie jest kontrolowane za pomoc¹ ³¹czników krañcowych. W ocenie ryzyka (oprócz szczegó³owych norm) pomóc mo¿e graf oceny ryzyka (rys. 1).
Funkcje wy³¹czaj¹ce wed³ug PN-EN 60204-1
Sposób natychmiastowego wy³¹czenia maszyny zale¿y od konstrukcji i charakteru maszyny, momentu bezw³adnoœci czêœci ruchomych i miary ryzyka zranienia obs³ugi i uszkodzenia maszyny
przy próbie natychmiastowego zatrzymania maszyny. Norma PNEN 60204-1 okreœla trzy kategorie zatrzymania (patrz tab. 2).
Ka¿da maszyna powinna byæ wyposa¿ona w stop kategorii 0,
a wy¿szy stopieñ nale¿y przewidzieæ, jeœli wymagania bezpieczeñstwa lub konstrukcji maszyny tego wymagaj¹, tj. gdy niebezpieczeñstwo przy natychmiastowym od³¹czeniu energii by³oby wiêksze ni¿
przy kontrolowanym zatrzymaniu. Stop kategorii 0 i 1 powinny byæ
dzia³aæ niezale¿nie od stanu pracy maszyny, a stop kategorii 0 mieæ
zawsze pierwszeñstwo. Wszystkie funkcje stopu powinny mieæ równie¿ pierwszeñstwo od funkcji startu. Dodatkowo nale¿y uwzglêdniæ
fakt, ¿e maszyna wyposa¿ona w modu³ bezpieczeñstwa kategorii
4 i kategori¹ stopu 1, mo¿e byæ zaliczana co najwy¿ej do kategorii 3.
Jak wspomniano wczeœniej, w obwodach awaryjnego wy³¹czenia dla kategorii 2, 3 i 4 nale¿y stosowaæ modu³y (przekaŸniki)
bezpieczeñstwa. Bezpieczeñstwo odpowiada specjalna konstrukcja przekaŸnika, która zapewnia spe³nienie odpowiedniej kategorii nawet w przypadku defektu w³asnego uk³adu stykowego (np.
zgrzanie lub u³amanie zestyków), tote¿ nale¿y pamiêtaæ, ¿e nie
mo¿na spe³niæ wymagañ normy za pomoc¹ zwyk³ych przekaŸników lub zwyk³ego programu steruj¹cego maszyny.
Szeroki asortyment przekaŸników bezpieczeñstwa produkuje
niemiecka firma Schleicher, która zajmuje siê systemami bezpieczeñstwa ju¿ od lat osiemdziesi¹tych. Tak d³ugie doœwiadczenie
pozwala na zaoferowanie klientom szerokiego spektrum produktów o dobrych parametrach. W ofercie znajduj¹ siê nadal przekaŸniki w obudowach o szerokoœci 90 i 45 mm oraz nowe konstrukcje serii 4000 i 5000.
Wspomniane serie 4000 i 5000 s¹ przekaŸnikami w nowych,
niepalnych obudowach o szerokoœci 22,5 mm, wykonanych z poliwêglanu o wysokiej udarnoœci i sta³oœci kszta³tów do temperatury 120OC. Nadruki opisuj¹ce wyprowadzenia elektryczne s¹ wykonane technik¹ laserow¹, co zwiêksza wytrzyma³oœæ na œcieranie i zabrudzenie. Front obudowy jest wykonany w kolorze ¿ó³tym,
pozwalaj¹cym bezb³êdnie odró¿niæ przekaŸniki obwodów bezpieczeñstwa od np. przekaŸników czasowych. Poniewa¿ w wielu
przypadkach nale¿y zapewniæ ochronê maszyn pracuj¹cych
w bardzo ostrych warunkach klimatycznych, przekaŸniki nowych
serii mog¹ pracowaæ w temperaturach od -55 do +60OC. Tam
gdzie to potrzebne mo¿na równie¿ zastosowaæ przekaŸniki z opcj¹ „-A” (fot. 2). PrzekaŸniki te wyposa¿ono w konektory przystosowane do szybkiej wymiany uszkodzonego elementu (bez dodatkowych narzêdzi). Wtyki s¹ kodowane mechanicznie co zapobiega omy³kowemu pod³¹czeniu koñcówek.
PrzekaŸniki, w zale¿noœci od wersji i aplikacji nadaj¹ siê do monitorowania drzwi bezpieczeñstwa, barier optycznych, listew kontaktowych, stopu awaryjnego, obwodów sterowania dwurêcznego i s¹ wykonane dla kategorii bezpieczeñstwa 4 lub 3 (wed³ug
PN-EN 954-1) i kategorii stopu 0 lub 1 (wed³ug PN-EN 60204-1).
Seria 5000 (fot. 3) z za³o¿enia ma byæ seri¹ „ekonomiczn¹”.
Obni¿enie ceny uzyskano m.in. dziêki ograniczeniu liczby urz¹dzeñ (tylko 5 modeli, kategoria bezpieczeñstwa 4, kategoria stopu 0) i zastosowaniu tej samej obudowy co w przekaŸnikach czasowych serii NGG. Mog¹ one pe³niæ funkcje: stop awaryjny, monitorowanie drzwi, barier optycznych i listew stykowych oraz obwodów sterowania dwurêcznego. Zalet¹ urz¹dzeñ tej serii jest du¿y
wybór napiêæ zasilaj¹cych: 12 VDC, 24 VDC, 24 VAC, 115...120
VAC i 230 VAC, a obwody zasilania s¹ odizolowane podwójn¹ izolacj¹ od obwodów kontrolnych i sygna³owych (zgodnie z zaleceniami normy EN 50178), czego brak w przekaŸnikach innych serii.
Podstawowe w³asnoœci przekaŸników bezpieczeñstwa zebrano
w tab. 3 i 4. W przypadkach gdy liczba par styków jest niewystarczaj¹ca, mo¿na j¹ zwiêkszyæ za pomoc¹ modu³ów rozszerzaj¹cych wyszczególnionych w tab. 5.
Tomasz Œliwakowski, Amtek spol. s r.o.
Wiêcej informacji o produktach Schleicher: http://www.schleicher-de.com.
Dystrybutorem firmy Schleicher jest Amtek spol. s r.o., tel. (22)
423 91 18, [email protected], www.amtek.pl.
Tab. 5. Moduły rozszerzające
Typ
1-kana³owy
Stop awaryjny
2-kana³owy
Stop awaryjny
SNE 4003
X
SNE 4004K
X
SNE 4004KV
X
X
SNO 3004-xx
X
X
Elektronika Praktyczna 11/2003
OpóŸnione
wy³¹czenie Stop
Styki
bezpieczeñstwa
Styki
kontrolne
X
3
2
X
4
2
X
Styki
sprzê¿enia
SzerokoϾ
obudowy
22,5
1
22,5
4
1
22,5
3
1
45
141
A U T O M A T Y K A
Przekaźniki
uniwersalne
i styczniki mocy
Do produkcji przekaünikÛw,
wbrew ich prostej ìna okoî budowie, zaangaøowane s¹ technologie,
ktÛrych zaawansowanie z†niewielk¹
tylko przesad¹ moøna porÛwnaÊ
z†technologiami wykorzystywanymi
podczas produkcji pÛ³przewodnikÛw. Dzieje siÍ tak dlatego, øe wy-
Rys. 1. Krzywe obciążenia styków
przekaźników z rodziny MM
Elektronika Praktyczna 11/2003
magania stawiane przekaünikom
przez wspÛ³czesne aplikacje s¹ coraz ostrzejsze, co zmusza producentÛw do zwiÍkszania trwa³oúci
stykÛw, zmniejszania ich rezystancji, a†takøe poprawÍ parametrÛw
³¹czeniowych podczas sterowania
obci¹øeÒ indukcyjnych, ktÛre tradycyjnie sprawiaj¹ spore k³opoty.
W†ofercie firmy Omron znajduje siÍ piÍÊ grup przekaünikÛw:
- uniwersalne (najczÍúciej wykorzystywane w†aplikacjach przemys³owych), ktÛrej reprezentatami s¹ przekaüniki rodzin: MY,
LY, G2A, G2RS oraz MK-I/S,
- przekaüniki w†obudowach hermetycznych, przystosowanych do
pracy w†szczegÛlnie trudnych warunkach otoczenia, np. G2A-4,
- przekaüniki duøej mocy, reprezentowane przez rodziny: G4F,
G4B, G7L i†G7J,
- przekaüniki bistabilne (przerzutnikowe), prze³¹czane za pomoc¹
jednego lub dwÛch uzwojeÒ (rodziny MYK, G2AK, MMK, MKK),
Omron jest jednym
z†najwiÍkszych na úwiecie
producentÛw przekaünikÛw
oraz stycznikÛw,
umoøliwiaj¹cych sterowanie
urz¹dzeniami ma³ej, úredniej
i†duøej mocy.
W†artykule przedstawiamy
skrÛcony przegl¹d fragmentu
oferty przekaünikÛw tej firmy,
ktÛry jest najbardziej
interesuj¹cy dla elektronikÛw
i†automatykÛw.
- bistabilne przekaüniki zapadkowe
oraz bistabilne przekaüniki sekwencyjne (G4Q, G9B), ktÛrych
dzia³anie przypomina (odpowiednio) przerzutniki RS i†licznik
Johnsona (sterowane obci¹øenia
s¹ w³¹czane sekwencyjnie).
Styki przekaünikÛw, w†zaleønoúci od docelowej aplikacji, s¹ pokrywane:
135
A U T O M A T Y K A
Rys. 2. Najczęściej spotykane
konfiguracje styków
- w†przypadku wymaganej duøej
odpornoúci na korozjÍ: stopem
z³ota, platyny i†srebra. Takie pokrycie stosuje siÍ zazwyczaj
w†przekaünikach niskopr¹dowych.
- w†przypadku, gdy oprÛcz odpornoúci na korozjÍ, konieczna jest
odpornoúÊ na pr¹dy o†wiÍkszym
natÍøeniu: zwi¹zkami srebra
z†palladem (AgPd).
- czystym srebrem, gdy wymagana
jest ma³a rezystancja styku. Przekaüniki z†takimi stykami zaleca
siÍ do pracy z†wyøszymi napiÍciami i†pr¹dami.
- zwi¹zkami srebra z†niklem (AgNi), kiedy niezbÍdna jest odpornoúÊ na ³uki elektryczne, ktÛre
powstaj¹ zazwyczaj podczas sterowania obci¹øeÒ indukcyjnych.
- stopem srebra, o³owiu i†indu,
gdy szczegÛlnie duøe znaczenie
odpornoúÊ na przetÍøenia o†duøej
wartoúci.
- zwi¹zkami wolframu i†srebra,
szczegÛlnie w†przekaünikach pracuj¹cych w†ekstremalnych warunkach termicznych i†otoczeniu
brudnym chemicznie, steruj¹cych
obci¹øenia o†charakterze indukcyjnym.
Warto tu zwrÛciÊ uwagÍ na
fakt, øe zazwyczaj obci¹øalnoúÊ
stykÛw podawana przez producenta dotyczy úciúle okreúlonych warunkÛw i†podczas dobierania ich
do aplikacji naleøy kierowaÊ siÍ
tzw. krzyw¹ obci¹øenia, inn¹ dla
kaødego typu przekaünika. Przy-
k³ad rodziny takich krzywych dla
rÛønych warunkÛw obci¹øenia pokazano na rys. 1.
Zespo³y stykÛw mog¹ mieÊ rÛøn¹ konfiguracjÍ i†liczbÍ stykÛw.
NajczÍúciej spotykane konfiguracje
pokazano na rys. 2.
WiÍkszoúÊ typÛw przekaünikÛw
oferowanych przez firmÍ Omron
moøna zamÛwiÊ w†wersjach dostosowanych do wymagaÒ aplikacji,
dotyczy to zarÛwno stykÛw i†ich
pokrycia, jak i†strony ìwejúciowejî,
czyli cewki.
Cewki przekaünikÛw s¹ standardowo przystosowane do zasilania
napiÍciem:
- zmiennym o†wartoúci 6†V, 12 V,
24 V, 48 V, 50 V, 100...120 V,
a†takøe 200...240 V†(przy czÍstotliwoúci napiÍcia zasilaj¹cego 50
lub 60 Hz),
- sta³ym o†wartoúci: 6†V, 12 V, 24
V, 48 V, 100...120 V, a†takøe
200...240 V.
Poniewaø w†wyniku impulsowego sterowania cewek przekaünikÛw
w†ich uzwojeniach indukuj¹ siÍ
napiÍcia o†wartoúci mog¹cej uszkodziÊ elementy steruj¹ce, producent
wyposaøa niektÛre z†produkowanych modeli w†wewnÍtrzne obwody zmniejszaj¹ce amplitudÍ przepiÍcia (obwody gasikowe RC) lub
wrÍcz likwiduj¹ce szkodliwe impulsy†(diody prostownicze lub zestawy: dioda prostownicza + dioda
Zenera).
Nowoúci¹ wprowadzon¹ do nowych rodzin przekaünikÛw firmy
Omron s¹ przyciski testowe
(w†rÛønych kolorach, w†zaleønoúci
od typu przekaünika), za pomoc¹
ktÛrych moøna rÍcznie sterowaÊ
styki przekaünika oraz LED-owe
wskaüniki ich zadzia³ania. Producent rozwija takøe przekaünikowe
ìzapleczeî, oferuj¹c szerok¹ gamÍ
rÛønorodnych podstawek pod
Fot. 3. Jeden z typów podstawek
z automatycznymi zaciskami
produkowanych przez firmę
Omron
przekaüniki, za pomoc¹ ktÛrych
moøna je montowaÊ na p³ytkach
drukowanych, szynach DIN, chassis urz¹dzenia, wybieraj¹c przy
tym rÛønorodne moøliwoúci ich
do³¹czania (za pomoc¹ zaciskÛw†úrubowych, samozaciskaj¹cych
siÍ (fot. 3), po³¹czeÒ lutowanych,
owijanych itp.).
Prowadzone nieustannie prace
rozwojowe i†udoskonalanie konstrukcji przekaünikÛw zaowocowa³y popraw¹ doúÊ waønego wspÛ³czeúnie parametru: niezawodnoúci
pracy. Ma to o†tyle duøe znaczenie, øe ca³kiem niedawno przekaüniki elektromechaniczne uwaøane by³y za jedno z†najs³abszych ogniw urz¹dzeÒ. Omron gwarantuje
poprawn¹ pracÍ swoich przekaünikÛw (trwa³oúÊ stykÛw) przez co
najmniej 278 godzin w†morderczym i†rzadko spotykanym w†praktyce cyklu 1800 prze³¹czeÒ na godzinÍ (0,5 Hz) z†do³¹czonym maksymalnym dopuszczalnym obci¹øeniem. ØywotnoúÊ mechaniczna
przekaünikÛw jest wiÍksza, bo wynosi aø 100000000 (sto milionÛw)
cykli w†teúcie 18000 prze³¹czeÒ
na godzinÍ (prze³¹czanie z†czÍstotliwoúci 5†Hz), co daje 5555 godzin katorøniczej pracy. Czyli
konstruktorzy nadal maj¹ nad
czym pracowaÊ.
Andrzej Gawryluk, AVT
Dodatkowe informacje
Artyku³ powsta³ na podstawie materia³ów
udostêpnionych przez firmê Omron, tel. (22)
645-78-60, www.omron.com.pl.
136
Elektronika Praktyczna 11/2003
B I B L I O T E K A
E P
W “Bibliotece EP” prezentujemy książki dotyczące zagadnień związanych z różnymi dziedzinami techniki,
jednak zawsze przydatne w pracy elektronika lub pomocne w uprawianiu elektronicznego hobby. Nasza
opinia jest oczywiście subiektywna, ale wynika z wieloletniego doświadczenia zawodowego i chyba jest
zgodna z oczekiwaniami tych, którzy chcą z książek korzystać, a nie przyozdabiać nimi półki. Aby nie
marnować miejsca w EP, nie będziemy publikować recenzji książek ocenianych na jedną lub dwie
“lutownice”. Przyjęliśmy szeroką skalę ocen, aby ułatwić Czytelnikom orientację w potencjalnej
przydatności książki.
Publikowane w EP recenzje książek można znaleźć w Internecie pod adresem biblioteka.ep.com.pl.
Uwaga! Większość prezentowanych książek można zamówić w Dziale Handlowym AVT (patrz str. 133).
Chcemy w ten sposób udostępnić je Czytelnikom EP.
Janusz Narkiewicz, „GPS − Globalny System
Pozycyjny”, WKŁ 2003
Szczerze mÛwi¹c, zaniepokoi³
mnie tytu³ tej ksi¹øki. Przecieø Globalny System Pozycyjny to nie do
koÒca jest to samo, co Globalny
System Pozycjonowania (od ang.
Global Positioning System), ale okaza³o siÍ jednak, øe chodzi o†ìtenî
GPS. Drugi raz zaniepokoi³em siÍ,
gdy okaza³o siÍ, øe co najmniej kilka rysunkÛw wziÍto najprawdopodobniej bezpoúrednio z†Internetu (na
przyk³ad rysunek 3.1a to kopia rysunku dostÍpnego pod adresem
http://www.colorado.edu/geography/
gcraft/notes/gps/gif/orbits.gif, rysunek
3.1b to kopia rysunku dostÍpnego
pod adresem http://www.colorado.edu/geography/gcraft/notes/gps/gif/
oplanes.gif, a†rysunek R3.1 jest úcis³ym odpowiednikiem dostÍpnego
pod adresem http://www.colorado.edu/geography/gcraft/notes/gps/gif/
bit.gif, a†w†ksi¹øce nie ma ani s³owa na temat internetowych ürÛde³,
z†ktÛrych korzysta³ autor (poza podan¹ stron¹ www.p.dana.com, ktÛra
niestety nie istnieje). Nie zak³adam
Aleksander Simon, Marcin
Walczyk, ìSieci komÛrkowe
GSM/GPRS - us³ugi
i†bezpieczeÒstwoî, XYLAB 2002
Telefony komÛrkowe sta³y siÍ urz¹dzeniami bardziej powszechnymi od
pralek automatycznych, ale wiedza
o†dzia³aniu systemÛw telefonii komÛrkowych nie jest zbyt powszechna. Wynika to g³Ûwnie z†niewielkiej liczby
publikacji technicznych poúwiÍconych
Elektronika Praktyczna 11/2003
tu z³ej woli autora, ale jakoúʆniektÛrych rysunkÛw i†zdjÍÊ zamieszczonych w†ksi¹øce nie jest najlepsza,
a†konwersja kolorowych bitmap na
czarno-bia³e spowodowa³a pogorszenie ich czytelnoúci i†Wydawnictwo
mog³oby zadbaÊ o†ich jakoúÊ.
No, poczepia³em siÍ trochÍ, a†teraz do rzeczy: ksi¹øka jest ze
wszechmiar godna polecenia, zawiera bowiem wiele informacji przydatnych osobom, ktÛre chc¹ poznaÊ zasadÍ dzia³ania systemu GPS. Autor
wiele miejsca poúwiÍci³ omÛwieniu
zagadnieÒ, z†ktÛrych istnienia uøytkownicy systemy GPS nie zdaj¹ sobie sprawy, a†s¹ one niezwykle istotne dla dzia³ania systemu pozycjonowania i†mog¹ mieÊ wp³yw na jakoúÊ uzyskiwanych wynikÛw, co ma
ogromne znaczenie zw³aszcza
w†przypadku zastosowaÒ profesjonalnych. PrzystÍpnie zosta³y przedstawione przyczyny powstawania b³ÍdÛw†pozycjonowania i†moøliwoúci
ich korygowania, sporo miejsca autor poúwiÍci³ takøe na wyjaúnienie
sposobu kodowania sygna³u emitowanego przez satelity i†sposobÛw
ekstrakcji z†nich niezbÍdnych danych. Takøe rozdzia³ poúwiÍcony
dzia³aniu i†budowie odbiornikÛw
GPS ucieszy swoj¹ zawartoúci¹ CzytelnikÛw, zw³aszcza tych, ktÛrym zaleøy na poznaniu systemu od úrodka - wszak odbiorniki GPS dotych-
temu tematowi. Jakiú czas temu lukÍ
na rynku wydawniczym wype³ni³y
WK£ (Ryszard Zienkiewicz, ìTelefony
komÛrkowe systemÛw GSM i†DCSî),
ale jedna pozycja, skupiona zreszt¹ na
jednym z†wielu aspektÛw GSM, to
zdecydowanie zbyt ma³o, aby dostarczyÊ choÊby podstawow¹ wiedzÍ na
temat tego systemu.
Prezentowana ksi¹øka jest pierwszym wydanym w†jÍzyku polskim znanym nam kompendium na temat cyfrowej telefonii GSM. Autorzy zawarli
w†niej praktycznie komplet wiadomoúci
niezbÍdnych osobom pragn¹cym poz-
czas traktowaliúmy (takøe w†EP) jak
ìczarne skrzynkiî, z†ca³¹ pewnoúci¹
dzia³aj¹ce, tylko nie wiadomo jak...
Zalet¹ ksi¹øki jest takøe zamieszczenie w†niej informacji o†systemach
konkurencyjnych dla GPS (rosyjskim
GLONASS i†europejskim Galileo),
a†takøe przedstawienie historycznego
pod³oøa powstania systemÛw nawigacji satelitarnej.
Andrzej Gawryluk
naÊ architekturÍ, budowÍ i†zrozumieÊ
zasadÍ dzia³ania sieci przesy³owej, regu³y wspÛ³pracy poszczegÛlnych jej
elementÛw ze sob¹, a†takøe zaznajomiÊ
siÍ z†dostÍpnymi w†jej ramach us³ugami. Niebagateln¹ zalet¹ ksi¹øki jest
fakt, øe jej autorzy omÛwili podstawy
transmisji danych (CSD, HSCDS
i†GPRS) oraz protokÛ³ WAP w†rÛønych
odmianach. Znaczn¹ czÍúÊ ksi¹øki
poúwiÍcono zagadnieniom bezpieczeÒstwa danych przesy³anych w†sieci GSM,
ktÛra - o†czym nie jest powszechnie
wiadomo - nie jest wcale bezpiecznym
medium komunikacyjnym.
131
B I B L I O T E K A
E P
Reasumuj¹c: doskonale (choÊ, ze
wzglÍdu na objÍtoúÊ ksi¹øki, niezbyt
g³Íboko) opracowany temat, piÍkne
wydanie (ca³oúÊ na papierze kredowym, co znalaz³o - niestety - odbicie
w†cenie ksi¹øki), a†takøe wyraüna dba³oúÊ autorÛw o†jÍzyk.
Miko³aj Andrus
Jerzy Krajewski, ìG³oúniki
i†zestawy g³oúnikowe budowa, dzia³anie,
zastosowaniaî, WK£ 2003
Nareszcie coú dla fanÛw samodzielnej budowy zestawÛw g³oúnikowych.
Takiej ksi¹øki nie by³o na rynku od
co najmniej 12 lat! Moøna j¹ trakto-
waÊ niemaløe jak podrÍcznik, poniewaø autor prezentacjÍ zagadnieÒ praktycznych rozpocz¹³ od przedstawienia
i†wyjaúnienia zjawisk fizycznych zwi¹zanych z†propagacj¹ düwiÍku (w tym
podstawy akustyki fizycznej i†fizjologicznej oraz psychoakustyki). Bardzo
rzetelnie zosta³y przygotowane rozdzia³y zwi¹zane z†budow¹ i†parametrami
g³oúnikÛw dynamicznych, pewien niedosyt pozostawia natomiast rozdzia³
czwarty, w†ktÛrym przedstawiono takøe inne rodzaje g³oúnikÛw. Osobne
rozdzia³y poúwiÍcono budowie pasywnych i†aktywnych zwrotnic g³oúnikowych, obudÛw rÛønego typu, przedstawiono takøe†metody pomiaru parametrÛw g³oúnikÛw i†zestawÛw g³oúnikowych. Sporo miejsca autor poúwiÍci³
przybliøeniu regu³ optymalnego ustawiania zestawÛw g³oúnikowych w†pomieszczeniach, w†zaleønoúci zastosowanego systemu nag³oúnienia, omÛwi³
takøe - temat jest czÍsto lekcewaøony
nawet przez audiofilÛw - wp³yw akustyki pomieszczenia na jakoúÊ odtwarzanego düwiÍku (nawet najlepsze zestawy mog¹ nie ìzagraÊî†w†pokoju
o†úcianach wykonanych z†kamienia).
Ksi¹øka, bez cienie w¹tpliwoúci,
jest warta polecenia. Jedynym moim zdaniem - jej mankamentem
jest brak informacji o†narzÍdziach
programowych, za pomoc¹ ktÛrych
moøna miÍdzy innymi symulowaÊ
dzia³anie projektowanych obudÛw,
wspomagaÊ projektowanie pasywnych
zwrotnic i†aktywnych filtrÛw, a†takøe
poddawaÊ przybliøonej analizie dzia³anie zespo³Ûw g³oúnikowych z†rÛønymi g³oúnikami.
Zas³uøone 4†lutownice!
Miko³aj Andrus
ksi¹øka wybitna, polecamy!
ksi¹øka o†duøych walorach
praktycznych, polecamy!
moøe siÍ przydaÊ
daleka od doskona³oúci
nie warto kupowaÊ
Scott Mueller, ìRozbudowa
i†naprawa komputerÛw PCî,
Helion 2003, ksi¹øka zawiera
CD-ROM
Ksi¹øka doprawdy imponuj¹ca: zawiera blisko 1500 stron, na ktÛrych
autor wraz z†zespo³em redaktorÛw zebra³ praktycznie wszystkie informacje,
jaki mog¹ byÊ przydatne mniej i†bardziej zaangaøowanym w†przerÛbki swojego sprzÍtu uøytkownikom PC. Ta imponuj¹ca praca ma - z†punktu widzenia elektronika - jedn¹ wadÍ: praktycznie wszystkie prezentowane zagadnienia s¹ traktowane powierzchownie,
co powoduje, øe nie przyda siÍ ona
podczas projektowania urz¹dzeÒ wspÛ³pracuj¹cych z†PC. Co wiÍcej, ksi¹øka
wbrew zapowiedziom nie zwiera aktualnych informacji, co jest spowodowa-
132
Legenda:
ne najprawdopodobniej czasem trwania
cyklu wydawniczego.
PrzyznajÍ, mia³em nie lada dylemat
podczas oceniania ksi¹øki. Wydaje siÍ
- wiekopomne dzie³o, ale niestety niepozbawione istotnych wad. OprÛcz
niedoci¹gniÍÊ w†treúci ksi¹øki, potencjalni Czytelnicy musz¹ wzi¹Ê pod
uwagÍ jej stosunkowo wysok¹ cenÍ 159 z³otych. Czy jest tego warta? Gdybym mia³ wybieraÊ, to siÍgn¹³bym raczej po ìAnatomiÍ PCî Piotra Metzgera, ktÛrej siÛdme wydanie ukaøe siÍ
(juø siÍ ukaza³o?) w†listopadzie 2003.
Tomasz Jastrun
Elektronika Praktyczna 11/2003
PROJEKTY CZYTELNIKÓW
Dział „Projekty Czytelników” zawiera opisy projektów nadesłanych do redakcji EP przez Czytelników. Redakcja nie bierze
odpowiedzialności za prawidłowe działanie opisywanych układów, gdyż nie testujemy ich laboratoryjnie, chociaż
sprawdzamy poprawność konstrukcji.
Prosimy o nadsyłanie własnych projektów z modelami (do zwrotu). Do artykułu należy dołączyć podpisane oświadczenie,
że artykuł jest własnym opracowaniem autora i nie był dotychczas nigdzie publikowany. Honorarium za publikację
w tym dziale wynosi 250,− zł (brutto) za 1 stronę w EP. Przysyłanych tekstów nie zwracamy. Redakcja zastrzega sobie
prawo do dokonywania skrótów.
Pokojowy regulator temperatury
ze zdalnym sterowaniem, część 2
Pomys³ budowy
urz¹dzenia powsta³, gdy ze
wzglÍdu na nisk¹
temperaturÍ panuj¹c¹
w†pokoju, autor zmuszony
by³ do korzystania
z†dodatkowego ogrzewania
elektrycznego. Uøytkowanie
typowego ogrzewacza
wnÍtrzowego (popularnej
ìfarelkiî), oprÛcz wysokich
kosztÛw zuøytej energii
elektrycznej, mia³o powaøn¹
wadÍ: kaødorazowe
w³¹czenie i†wy³¹czenie
urz¹dzenia wymaga³o
interwencji uøytkownika.
A†przecieø jesteúmy tak
leniwi...
Projekt
113
Obs³uga magistrali
jednoprzewodowej
Na list. 2 przedstawiono
procedury asemblerowe realizuj¹ce fizyczn¹ komunikacjÍ z†urz¹dzeniami do³¹czonymi do magistrali jednoprzewodowej. Kaødorazowe
rozpoczÍcie transmisji na
magistrali jednoprzewodowej
wymaga najpierw wys³ania
tzw. impulsu zeruj¹cego
przez nadrzÍdny uk³ad nadajnika (tutaj mikrokontroler). Jest to realizowane poprzez wymuszenie przez pewien czas (480...960µs) niskiego poziomu na magistrali,
nastÍpnie zwolnienie magistrali (normalnie - gdy magistral¹ nie s¹ transmitowane
øadne dane - na magistrali
wystÍpuje poziom wysoki
wymuszany rezystorem podci¹gaj¹cym), odczekanie
okreúlonego czasu i†sprawdzenie stanu magistrali. Jeøeli wÛwczas magistrala
znajduje siÍ w†stanie niskim,
oznacza to obecnoúÊ jednego
Elektronika Praktyczna 11/2003
lub kilku uk³adÛw do³¹czonych do magistrali jednoprzewodowej. W†takim przypadku
uk³ady te, po up³ywie okreúlonego czasu, zwalniaj¹ magistralÍ jednoprzewodow¹.
Generowanie impulsu zeruj¹cego realizuje bezparametrowa procedura DSReset. Na
pocz¹tku dodatkowo blokowane s¹ wszystkie przerwania
z†wyj¹tkiem przerwania zewnÍtrznego - z†odbiornika
zdalnego sterowania, nastÍpnie zerowany jest bit magistrali DSbit (tutaj P3.3) i†wywo³ywana
jest
procedura
Delay5us realizuj¹ca opÛünienie bÍd¹ce wielokrotnoúci¹
5µs. Pod adresem bezpoúrednim (zmienn¹) delay - parametrem procedury - umieszcza siÍ krotnoúÊ tego opÛünienia. Po wymuszeniu na magistrali poziomu niskiego procedura odczekuje ok. 600µs, po
czym zwalnia magistralÍ (ustawia DSbit), czeka ok. 66µs
i†sprawdza stan magistrali, po
czym odczekuje jeszcze dodat-
kowo 300µs i†koÒczy swoje dzia³anie. Rejestr R7 zawiera rezultat wykonanej
operacji. Jeøeli wyst¹pi³
impuls obecnoúci uk³adÛw do³¹czonych do
magistrali jednoprzewodowej, w†tym rejestrze
znajduje siÍ 0. W†przeciwnym przypadku
wartoúÊ jest rÛøna od
zera.
Procedura _DSTx
realizuje zapis 8†bitÛw danych do uk³adu do³¹czonego do
magistrali jednoprzewodowej. Dane do zapisu
powinny znajdowaÊ siÍ w†rejestrze R7 procesora. Zapis
kaødego bitu na magistrali
jednoprzewodowej rozpoczyna siÍ od wymuszenia, przez
uk³ad nadrzÍdny, poziomu
niskiego na magistrali trwaj¹cego, zgodnie ze specyfikacj¹,
nie d³uøej niø 15µs (procedura czeka ok. 13µs). NastÍpnie
jeøeli zapisywanym bitem jest
ì1î - magistrala jest zwalniana (wystÍpuje poziom wysoki
wymuszony rezystorem podci¹gaj¹cym), jeøeli zaú zapisywanym bitem jest ì0î, wÛwczas uk³ad podrzÍdny podtrzymuje stan niski na magistrali. Ca³kowita d³ugoúÊ szczeliny czasowej zapisu (od momentu wymuszenia poziomu
niskiego na magistrali) nie powinna przekraczaÊ 120µs i†po
tym czasie magistrala powinna byÊ zwolniona. Czas przerwy miÍdzy nadawaniem kolejnych bitÛw nie moøe byÊ
krÛtszy niø 1µs.
Procedura DSRx realizuje
odczyt 8†bitÛw danych z†magistrali jednoprzewodowej.
101
PROJEKTY CZYTELNIKÓW
List. 2. Procedury obsługi
magistrali
jednoprzewodowej
Delay5us:
nop
nop
nop
djnz
ret
delay,Delay5us
DSReset:
mov r5,IE
anl IE,#129
clr DSbit
mov delay,#119
lcall
Delay5us
setb
DSbit
mov delay,#12
lcall
Delay5us
mov r7,#0
jnb DSbit,next1
mov r7,#1
next1:
mov delay,#60
lcall
Delay5us
mov IE,r5
ret
_DSTx:
clr EA
mov r6,#8
mov a,r7
Loop1:
mov delay,#1
clr DSbit
lcall
Delay5us
clr c
rrc a
jnc next2
setb
DSbit
next2:
mov delay,#14
lcall
Delay5us
setb
DSbit
nop
djnz
r6,Loop1
setbEA
ret
DSRx:
mov r6,#8
mov a,#0
clr EA
Loop2:
mov delay,#1
clr DSbit
lcall
Delay5us
setb
DSbit
nop
nop
clr c
jnb DSbit,next3
setb
c
next3:
rrc a
mov delay,#11
lcall
Delay5us
djnz
r6,Loop2
mov r7,a
setb
EA
ret
_CRCupdate:
mov a,r7
mov temp,a
mov r6,#8
CRCLoop:
xrl a,CRC
rrc a
mov a,CRC
jnc ZERO
xrl a,#18h
ZERO:
rrc a
mov CRC,a
mov a,temp
rr a
mov temp,a
djnz
r6,CRCLoop
ret
102
Szczelina czasowa odczytu
wygl¹da w†sposÛb analogiczny jak to opisano w†przypadku szczeliny czasowej zapisu.
Odczyt poszczegÛlnych bitÛw†rÛwnieø rozpoczyna siÍ
od wymuszenia poziomu niskiego na magistrali przez czas
nie d³uøszy niø 15µs, nastÍpnie magistrala jest zwalniana,
procedura odczekuje kilka
mikrosekund i†prÛbkowany
jest stan magistrali. Jeøeli
w†wyniku prÛbkowania odczytano poziom wysoki, oznacza to, øe odczytanym bitem
jest 1, w†przeciwnym przypadku odczytany bit to 0. Odczytany bajt danych znajduje
siÍ w†rejestrze R7.
Podczas dzia³ania obydwu
procedur
(_DSTx
i†DSRx) zabronione jest przyjmowanie jakichkolwiek przerwaÒ (zerowana globalna flaga EA), ktÛre mog³yby spowodowaÊ zak³Ûcenia w†precyzyjnym odmierzaniu czasu,
okreúlanego przez liczbÍ cykli maszynowych niezbÍdnych
do wykonania poszczegÛlnych rozkazÛw.
Procedura CRCupdate realizuje obliczanie wartoúci wielomianu kontrolnego CRC zgodnie z rÛwnaniem: x8+x5+x4+1.
Aktualizowan¹ wartoúÊ
wielomianu zawiera zmienna
o†nazwie CRC. Oúmiobitowa
dana wejúciowa, na podstawie ktÛrej dokonuje siÍ aktualizacja wartoúci wielomianu,
znajduje siÍ w††rejestrze R7.
Wyøej wymienione procedury (pe³ny listing programu
w†asemblerze znajduje siÍ
w†materia³ach udostÍpnionych na www.ep.com.pl i†p³ycie CD-EP11/2003B) zosta³y†skompilowane asemblerem A51 z†pakietu KEIL i†jako plik *.obj do³¹czone do listy plikÛw wejúciowych linkera L51.
Przekazywanie parametrÛw z†poziomu jÍzyka C†do
procedur asemblerowych odbywa siÍ poprzez rejestry mikroprocesora. Kaøda procedura
asemblerowa odpowiada funkcji w†jÍzyku C. Jeøeli podprogram asemblerowy wymaga jednego 8-bitowego parametru, wÛwczas kompilator
KEIL wartoúÊ argumentu funkcji (zmiennej typu char)
w†jÍzyku C†zapisze do rejestru R7 mikroprocesora. Przekazanie 8-bitowej wartoúci
z†programu w†asemblerze do
funkcji w†jÍzyku C†(wartoúÊ
zwracana przez funkcjÍ) rÛwnieø odbywa siÍ za poúrednictwem rejestru R7.
Odczyt temperatury
z†termometru DS1820
Z†poziomu jÍzyka C†deklaracja funkcji realizuj¹cych
wymienione wyøej operacje
(definicja tych funkcji zawarta jest w†kodzie asemblerowym, jako wyøej wymienione
procedury) wygl¹da nastÍpuj¹co:
Na list. 3 przedstawiono
kod ürÛd³owy funkcji w†jÍzyku
C†realizuj¹cej odczyt temperatury z†jednego lub kilku termometrÛw DS1820 do³¹czonych
do magistrali jednoprzewodowej z†wykorzystaniem wczeúniej zdefiniowanych procedur.
Funkcja ReadTemp() posiada dwa parametry. Pierwszy
z†nich (dev) to wskaünik do
tablicy zawieraj¹cej 8-bajtowy
unikalny numer seryjny danego uk³adu DS1820 wraz z†wartoúci¹ CRC dla tych 8†bajtÛw
(istotne w†przypadku do³¹czania do magistrali jednoprzewodowej wiÍcej niø jednego termometru, jeúli do magistrali
do³¹czony jest tylko jeden
uk³ad wÛwczas wystarczy ten
argument zast¹piÊ sta³¹†NULL).
Definicja tego parametru moøe
wygl¹daÊ nastÍpuj¹co:
code char
dev1[]={0x10,0x3b,0xe1,
0x38,0x00,0x00,0x00,0xad};
uchar DSReset(void);
void DSTx(uchar);
uchar DSRx(void);
void CRCupdate(uchar);
void ResetCRC(void);
uchar GetCRC(void);
przy czym typ uchar zosta³
zdefiniowany nastÍpuj¹co:
typedef unsigned char
uchar;
Dodatkowo w†module
asemblerowym zdefiniowano
dwie procedury ResetCRC
i†GetCRC. Pierwsza z†nich zeruje lokaln¹ zmienn¹ CRC
przechowuj¹c¹ wartoúÊ wielomianu kontrolnego, a†druga
procedura umoøliwia pobranie wartoúci tej zmiennej.
List. 3. Funkcja odczytu pamięci podręcznej układu DS1820
uchar ReadTemp (char *dev, char *buf)
{ char i;
if (DSReset()) return 1;
// impuls zerujący, jeśli brak odpowiedzi koniec funcji
DSTx(0xcc);
// Polecenie "przeskocz ROM", czyli transmisja do wszystkich układów
// dołączonych do magistrali
//DSTx(0x55);
//for (i=0;i<8;i++)DSTx(dev[i]);
//jeżeli chcemy nadawać do konkretnego układu (nie do wszystkich)
//należy użyć powyższego kodu
DSTx (0x44);
// Polecenie "zmierz temperaturę"
i=0; while (!DSRx())if (i++>10000) return 5;
// oczekiwanie na zakończenie pomiaru
if (DSReset()) return 1;
// znów impuls zerujący
if (dev!=NULL)
{ DSTx(0x55);
for (i=0;i<8;i++) DSTx(dev[i]);
// Polecenie "dopasuj ROM", czyli kolejne polecenia będą
// akceptowane tylko przez ten układ, którego numer seryjny
//znajduje się w tablicy dev
}
else
DSTx(0xcc);
// "przeskocz ROM" - jeśli jest tylko jeden układ
DSTx(0xBE);
//Polecenie "odczytaj pamięć podręczną"
ResetCRC();
// zerowanie lokalnej zmiennej CRC
for (i=0;i<8;i++)
{ buf[i]=DSRx();
CRCupdate(buf[i]);
}
// Odczyt kolejno 8 bajtów pamięci podręcznej, zapis każdego bajtu
// do bufora buf i aktualizacja CRC
buf[8]=DSRx();
// Dziewiąty transmitowany bajt to wartość CRC
if (DSReset()) return 1;
// Koniec operacji odczytu pamięci podręcznej - impuls zerujący
if (GetCRC()!=buf[8]) return 2;
return 0;
// Jeżeli wartość CRC obliczona i odczytana z układu DS1820
// są zgodne funkcja zwraca 0
}
Elektronika
Elektronika
Praktyczna
Praktyczna
11/2003
2/98
PROJEKTY CZYTELNIKÓW
Poniewaø numer seryjny
wraz z†wartoúci¹ CRC s¹ to
sta³e, wiÍc moøna je umieúciÊ
w†pamiÍci programu, oszczÍdzaj¹c pamiÍÊ danych. St¹d
s³owo kluczowe code.
Drugi parametr buf to
wskaünik do 9-bajtowej tablicy, do ktÛrej zostan¹ skopiowane kolejne bajty pamiÍci podrÍcznej z†uk³adu DS1820 zawieraj¹ce m.in. zmierzon¹ wartoúÊ temperatury. Funkcja
zwraca 0†jeøeli pomiar i†odczyt
temperatury przebieg³y pomyúlnie i†wartoúÊ rÛøn¹ od zera
w†przeciwnym przypadku.
Odczyt temperatury z†dok³adnoúci¹ 0,1 o C, zgodnie
z†dokumentacj¹, jest moøliwy
po zastosowaniu wzoru:
T = temp _ r − 0.25 +
buf [7] − buf [6]
buf [7]
gdzie buf jest tablic¹ zawieraj¹c¹ (jak wyøej) kopiÍ zawartoúci pamiÍci podrÍcznej
uk³adu DS1820, zaú temp_r
jest wartoúci¹ buf[0], ktÛrej
wszystkie bity zosta³y przesu-
Elektronika Praktyczna 11/2003
niÍte o†jeden w†prawo. Funkcjonalnie odpowiada to dzieleniu ca³kowitemu:
temp _ r = buf [0] / 2
lub w†jÍzyku C, z†wykorzystaniem operatora przesuniÍcia bitowego: temp_r=buf[0]>>1. Implementacja
powyøszego
rÛwnania pozornie wymaga zastosowania arytmetyki zmiennoprzecinkowej (np. zmiennych typu float), poniewaø jednak wystarczaj¹ca jest dok³adnoúÊ na poziomie jednego miejsca po przecinku - moøna wykorzystaÊ zmienne ca³kowite
z†odpowiednim przesuniÍciem
zakresu (dziesi¹te czÍúci staj¹
siÍ jednostkami - czyli otrzymana wartoúÊ jest w†efekcie 10krotnie wiÍksza od wartoúci
rzeczywistej). Tak¹ w³aúnie
ideÍ realizuje funkcja przedstawiona na list. 4.
Rzeczywist¹ wartoúÊ temperatury otrzymuje siÍ przez
podzielenie wartoúci zwracanej przez funkcjÍ przez 10 (np.
dla temperatury 21,3oC†funkcja zwrÛci wartoúÊ 213).
List. 4. Funkcja obliczająca temperaturę
z rozdzielczością 0,1oC
int GetTemp(char *buf)
{ int k,temp_r;
temp_r=buf[0];
temp_r>>=1;
// przesuniecie wszystkich bitow o jeden w prawo
if(buf[1]&0x01) temp_r-=128;
// jeżeli temperatura ujemna
k=((buf[7]-buf[6])*100);
// licznik ułamka pomnożony przez 100
k/=buf[7];
// realizacja ułamka
k-=25;
k/=10;
// odjęcie stałej 0.25 pomnożonej przez 100
// wystarczy dokładność 1 miejsce po przecinku
temp_r*=10; temp_r+=k;
// temp_r zawiera wartosc temperatury 10-krotnie większą
// od rzeczywistej
return temp_r;
}
Prezentowany uk³ad pokojowego regulatora temperatury moøna ³atwo wzbogaciÊ o†dodatkowe funkcje
uøytkowe. Na przyk³ad poprzez niewielk¹ modyfikacjÍ oprogramowania i††dodanie drugiego termometru
DS1820 moøna uzyskaÊ pomiar temperatury panuj¹cej
na zewn¹trz budynku. Moøna teø dodatkowo wprowadziÊ funkcjÍ kalkulacji
kosztÛw zuøytej energii
elektrycznej.
Zbigniew Hajduk
103
K U R S
Podstawy projektowania systemów
mikroprocesorowych, część 9
Zgodnie z†zapowiedzi¹ sprzed miesi¹ca, w†tej czÍúci kursu
przedstawiamy sposÛb wymiany danych pomiÍdzy
mikrokontrolerem i†standardow¹ klawiatur¹ PC-AT.
Zastosowanie takiej klawiatury to obecnie jeden
z†najtaÒszych sposobÛw wyposaøenia systemu
mikroprocesorowego w†interfejs umoøliwiaj¹cy
wprowadzanie danych.
Na rys. 30 przedstawiono wyprowadzenia standardowych z³¹cz
klawiatur PC. Najlepiej stosowaÊ
nieprzerobione w†øaden sposÛb
z³¹cza (dostosowaÊ w³asne urz¹dzenie do standardowego wtyku i†rozmieszczenia sygna³Ûw), choÊ w†razie
koniecznoúci moøna zastosowaÊ dowolne inne po³¹czenia - traci siÍ
jednak na kompatybilnoúci ze standardem, co moøe†utrudniÊ serwis
w†razie awarii. Na rys. 31 przedstawiono przyk³adowy sposÛb do³¹czenia klawiatury do mikrokontrolera. Zastosowano tu po³¹czenie bezpoúrednie z†dodatkowymi rezystorami podci¹gaj¹cymi, daj¹cymi lepsz¹
odpornoúÊ transmisji na zak³Ûcenia.
KlawiaturÍ naleøy zasilaÊ napiÍciem
+5 V, najlepiej tym samym, ktÛre
zasila wspÛ³pracuj¹cy z†ni¹ mikrokontroler. Podczas projektowania
uk³adu zasilania naleøy uwzglÍdniÊ
dodatkowy pobÛr pr¹du, ktÛry w†zaleønoúci od modelu klawiatury
- moøe dochodziÊ do 300 mA.
Jeøeli chodzi o†sposÛb komunikacji klawiatury z†otoczeniem, to g³Ûwn¹ jej cech¹ jest to, øe w†zaleønoúci
Rys. 30
Elektronika Praktyczna 11/2003
od†kierunku transmisji (z
czy do klawiatury) przebiega
ona w†nieco inny sposÛb, choÊ
zawsze jest to transmisja synchroniczna w†takt sygna³u zegarowego
generowanego na linii KBD Clock
przez klawiaturÍ. Prostszym przypadkiem jest transmisja danych z†klawiatury do mikroprocesora (przebiegi na rys. 32): nastÍpuje tutaj przes³anie s³owa sk³adaj¹cego siÍ z†11
bitÛw: bitu startu (zawsze ì0î), oúmiu bitÛw danych (pocz¹wszy od
najmniej znacz¹cego), nastÍpnie bitu
parzystoúci (typu Odd - dope³nienie
do parzystej liczby jedynek w†transmitowanym bajcie danych) oraz bit
stopu, zawsze rÛwny ì1î. Zboczem
taktuj¹cym jest opadaj¹ce zbocze
sygna³u zegarowego. PrÍdkoúÊ transmisji nie jest zbyt duøa i†nie podlega øadnej dok³adnej standaryzacji czÍstotliwoúÊ przebiegu zegarowego
zazwyczaj zawiera siÍ w†przedziale
20 do 30†kHz. WspÛ³pracuj¹cy mikrokontroler moøe sterowaÊ transmisj¹ z†klawiatury przez wymuszanie
stanu niskiego na linii KBD Clock stan niski oznacza blokadÍ transmisji i†klawiatura rozpocznie transmitowanie ewentualnej danej dopiero
po pojawieniu siÍ na tej linii stanu
wysokiego (podczas braku aktywnoúci obydwie linie: KBD Clock i†KBD
Data znajduj¹ si͆w†stanie wysokim).
Nieco bardziej skomplikowana
jest transmisja danych do klawiatury. Na rys. 33 przedstawiono przebiegi czasowe sygna³Ûw†podczas takiej transmisji. Inicjacja transmisji
do klawiatury nastÍpuje przez wyzerowanie linii KBD Clock przez
mikrokontroler (dok³adnie chodzi
o†zbocze opadaj¹ce na tej linii).
W†czasie trwania stanu niskiego generowanego na linii Clock (powinno to trwaÊ nie krÛcej niø 60 ms,
co gwarantuje potraktowanie tego
sygna³u jako blokadÍ transmisji klawiatura nie zacznie transmitowaÊ
do mikrokontrolera w†tym samym
czasie) mikrokontroler zeruje liniÍ
KBD Data, a†nastÍpnie ustawia stan
wysoki na KBD Clock, co jest sygna³em rozpoczÍcia transmisji do
klawiatury. Wtedy kontrolÍ nad lini¹ KBD Clock przejmuje klawiatura (w czasie do 10 ms) i†rozpoczyna generacjÍ sygna³u zegarowego.
Transmisja danych przebiega podobnie jak wczeúniej, z†tym øe liniÍ
KBD Data kontroluje mikrokontroler
i†to on wystawia kolejno bity przeznaczone do transmisji oraz bit parzystoúci. Po przes³aniu bitu parzystoúci mikrokontroler zwalnia liniÍ
KBD Data (stan wysoki), co jest interpretowane jako bit stopu - jeúli
tego nie zrobi, to sygna³ na linii
KBD Clock bÍdzie generowany tak
d³ugo, jak d³ugo KBD Data bÍdzie
pozostawaÊ w†stanie niskim. Po
przes³aniu bitu stopu klawiatura generuje dodatkowy takt sygna³u zegarowego po³¹czony z†wyzerowaniem
linii KBD Data, potwierdzaj¹c w†ten
sposÛb zakoÒczenie transmisji.
Dok³adny opis rozkazÛw steruj¹cych klawiatur¹ oraz sposoby wykorzystania wszystkich jej funkcji Czytelnik znajdzie w†literaturze poúwiÍconej komputerom PC (np. w†ksi¹øce
Piotra Metzgera ìAnatomia PCî).
Rys. 31
97
K U R S
Rys. 32
Z†punktu widzenia konstruktora
systemÛw mikroprocesorowych warto
natomiast wspomnieÊ o†podstawowych cechach uøytkowych klawiatury PC. Jeøeli chodzi o†transmisjÍ
z†klawiatury do mikrokontrolera z†ni¹
wspÛ³pracuj¹cego (najczÍúciej wykorzystywany przypadek), to nastÍpuje
ona po kaødym zdarzeniu zwi¹zanym
ze zmian¹ stanu klawiszy.
Klawiatura przesy³a 8-bitowy kod
naciúniÍtego klawisza w†momencie jego wciúniÍcia oraz ten sam kod powiÍkszony o†liczbÍ 128 (80H) w†momencie puszczenia tego klawisza. Istniej¹ takøe grupy klawiszy, ktÛrych
naciskanie czy zwalnianie powoduje
przes³anie wiÍkszej liczby bajtÛw informacji (np. klawisze funkcyjne
F1...F12 i†inne) - dok³adny ich opis
Czytelnik znajdzie we wspomnianej
literaturze. Jeøeli chodzi o†transmisjÍ
danych do klawiatury (nie zawsze istnieje potrzeba jej wykorzystywania),
to mikrokontroler steruj¹cy przesy³a
klawiaturze rozkazy steruj¹ce jej prac¹. Jest moøliwe m.in. sterowanie
diodami úwiec¹cymi na klawiaturze,
w³¹czanie i†wy³¹czanie klawiatury,
zmiana prÍdkoúci autorepetycji oraz
rÛøne funkcje kontrolne.
NajczÍúciej chodzi nam o†moøliwoúÊ odczytywania stanu klawiatury
(naciskanie klawiszy) - umoøliwia
nam to poniøszy program (odpowiadaj¹cy po³¹czeniu klawiatury i†mikrokontrolera wed³ug rys. 31) - list. 12.
Przedstawiony program w†bardzo
prosty sposÛb odczytuje kolejne bity
pojawiaj¹ce siÍ na linii P3.3 w†takt
sygna³u zegarowego doprowadzonego
do linii P3.2. Zosta³ on tak napisany, aby ³atwo moøna by³o zauwaøyÊ, ktÛre czÍúci procedury odbieraj¹cej dane s¹ wykonywane zgodnie
z†kolejnoúci¹ odbieranych bitÛw.
Opadaj¹ce zbocze sygna³u zegarowego wywo³uje procedurÍ obs³ugi
przerwania odczytuj¹c¹ kolejno
wszystkie bity transmitowane przez
klawiaturÍ. Do zabezpieczenia programu przed ìutkniÍciemî na odbiorze
ktÛregoú z†bitÛw (wskutek zak³ÛceÒ
lub od³¹czenia klawiatury) wykorzystano licznik T1 zliczaj¹cy czas, w†ktÛ-
98
rym musi zmieúciÊ siÍ ca³a†transmisja. Jeøeli czas ten zostanie przekroczony, to zostaje wyzerowany licznik
odbieranych bitÛw i†program oczekuje
na rozpoczÍcie kolejnej transmisji.
Procedura obs³ugi przerwania
INT0 po zakoÒczeniu transmisji
ustawia bit NOWY oznajmiaj¹cy odebranie nowego kodu, ktÛry jest do-
stÍpny w†zmiennej KOD, a†kontrolny
bit parzystoúci jest zwracany
w†zmiennej PAR - najczÍúciej nie istnieje potrzeba sprawdzania poprawnoúci (przek³amania zdarzaj¹ siÍ
bardzo rzadko), jeúli zasz³aby jednak
taka potrzeba, to naleøy pamiÍtaÊ,
øe†bit parzystoúci transmitowany
przez klawiaturÍ jest negacj¹ bitu
parzystoúci dostÍpnego w†rejestrze
PSW mikrokontrolera (po wpisaniu
otrzymanej danej do akumulatora).
Przystosowanie programu do
transmisji w†stronÍ klawiatury jest
stosunkowo proste: naleøy zadbaÊ
o†wygenerowanie sygna³Ûw inicjuj¹cych na liniach zegara i†danych,
a†nastÍpnie zamiast odczytywaÊ stan
linii KBD Data, naleøy po kaødym
zboczu opadaj¹cym sygna³u zegaro-
List. 12
;KOD - zmienna bajtowa przechowująca odebrany kod klawisza
;PAR - zmienna bitowa przechowująca odebrany bit parzystości
;NR_BIT - zmienna bajtowa przechowująca numer odebranego bitu
;NOWY - zmienna bitowa przechowująca informację o odebraniu nowego kodu
INCJALIZACJA:
CLR NOWY
CLR PAR
MOV NR_BIT,#0
SETB P3.2
SETB P3.3
SETB
SETB
SETB
SETB
;zerowanie zmiennych
EA
ET1
EX0
IT0
;przerwanie od opadającego zbocza na INT0
MOV TMOD,#010H
;licznik 1 w trybie 1 (licznik 16-bitowy)
...
...
...
;(program główny)
PRZERWANIE_INT0:
;INT0 (P3.2)
PUSH ACC
PUSH PSW
MOV A,NR_BIT
JZ BIT_STARTU
CJNE A,#1,NIE_1
CLR A
MOV C,P3.3
MOV ACC.0,C
SJMP ZAPAMIETAJ
NIE_1:
CJNE A,#2,NIE_2
MOV A,KOD
MOV C,P3.3
MOV ACC.1,C
SJMP ZAPAMIETAJ
NIE_2:
CJNE A,#3,NIE_3
MOV A,KOD
MOV C,P3.3
MOV ACC.2,C
SJMP ZAPAMIETAJ
NIE_3:
CJNE A,#4,NIE_4
MOV A,KOD
MOV C,P3.3
MOV ACC.3,C
SJMP ZAPAMIETAJ
NIE_4:
CJNE A,#5,NIE_5
MOV A,KOD
MOV C,P3.3
MOV ACC.4,C
SJMP ZAPAMIETAJ
;zaprogramowanie układu przerwań
;procedura obsługi przerwania zewnętrznego z linii
;zapamiętanie
;rejestrów na stosie
;jeżeli bit startu (nr 0), to zignoruj go
;odbiór pierwszego bitu
;zerowanie
;odczytanie bitu
;i wpisanie na najmłodszą pozycję akumulatora
;odbiór drugiego bitu
;odczytanie zapamiętanych już informacji
;odczytanie bitu
;i wpisanie na odpowiednią pozycję akumulatora
;odbiór trzeciego bitu
;odbiór czwartego bitu
:odbiór piątego bitu
Elektronika Praktyczna 11/2003
K U R S
Rys. 33
wego ustawiaÊ na niej stan nastÍpnego bitu przeznaczonego do
transmisji. Naleøy rÛwnieø zwiÍkszyÊ
o†1†liczbÍ moøliwych stanÛw licznika bitÛw w†zwi¹zku z†koniecznoúci¹
odebrania bitu potwierdzenia (nawet
jeúli bit potwierdzenia bÍdzie ignorowany przez program).
Pawe³ Hadam, AVT
[email protected]
List. 12 − cd.
NIE_5:
CJNE A,#6,NIE_6
MOV A,KOD
MOV C,P3.3
MOV ACC.5,C
SJMP ZAPAMIETAJ
NIE_6:
CJNE A,#7,NIE_7
MOV A,KOD
MOV C,P3.3
MOV ACC.6,C
SJMP ZAPAMIETAJ
NIE_7:
CJNE A,#8,NIE_8
MOV A,KOD
MOV C,P3.3
MOV ACC.7,C
SJMP ZAPAMIETAJ
NIE_8:
CJNE A,#9,NIE_9
MOV C,P3.3
MOV PAR,C
SJMP KONIEC
NIE_9:
SETB NOWY
MOV NR_BIT,#0
CLR TR1
SJMP KONIEC
ZAPAMIETAJ:
MOV KOD,A
INC NR_BIT
SJMP KONIEC
BIT_STARTU:
INC NR_BIT
CLR NOWY
MOV TH1,#0
MOV TL1,#0
SETB TR1
KONIEC:
POP PSW
POP ACC
RETI
PRZERWANIE_T1:
CLR TR1
MOV NR_BIT,#0
RETI
;odbiór szóstego bitu
;odbiór siódmego bitu
;odbiór ósmego bitu
;odbiór bitu parzystości
;odczytanie bitu
;i zapamiętanie
;odebranie bitu stopu - ustawienie
;informacji o nowym kodzie
;wyzerowanie licznika bitów
;zatrzymanie licznika
;zapamiętanie kodu
;zwiększenie licznika bitów
;zwiększ nr bitu
;zeruj bit (bo nadchodzi nowy kod i informacja
;o starym zostanie zamazana)
;włączenie licznika zabezpieczającego (timeout)
;dla kwarcu 12MHz daje to czas opóźnienia
;około 65ms
;pobranie rejestrów
;ze stosu
;obsługa przerwania od licznika T1
;zatrzymanie licznika
;wyzerowanie licznika bitów
Elektronika Praktyczna 11/2003
99
B A S C O M O W E
P O R A D Y
W bascomowym „kąciku” będziemy się starać w miarę przystępnie przedstawiać rozwiązania problemów
napotykanych przez naszych Czytelników podczas pisania programów w Bascomie. Rubryka ta powstała
z myślą o rozwiązywaniu problemów, jakie najczęściej napotykają programiści, zatem zachęcamy wszystkich
Czytelników do zgłaszania problemów, na jakie się natknęli podczas tworzenia własnych programów.
Obsługa interfejsu RS232
Na pocz¹tek parÍ s³Ûw wstÍpu na
temat interfejsu RS232, ktÛry jest
spotykany w†wiÍkszoúci typowych
aplikacji mikrokontrolerowych. NajczÍúciej w†praktyce problemy wynikaj¹ z†b³Ídnego za³oøenia, øe mikrokontroler naleøy ìwprostî po³¹czyÊ
trzema przewodami z†RS-em komputera i†to wystarczy do wymiany danych. Trzeba jednak wzi¹Ê pod uwagÍ, øe w†liniach interfejsu RS232
wystÍpuj¹ inne napiÍcia niø†typowe
dla standardu TTL - mikrokontroler
jako logiczne ì0î traktuje napiÍcie
0...0,8 V, natomiast logiczn¹ ì1î jest
napiÍcie +2,0...5 V. Zgodnie z†zaleceniami normy opisuj¹cej RS232 napiÍcia dla logicznych ì0î i†ì1î wynosz¹ odpowiednio >+3 V oraz <-3
V. Øeby uruchomiÊ komunikacjÍ miÍdzy procesorem a†komputerem, niezbÍdny jest konwerter napiÍÊ ze
standardu TTL na RS232. Najbardziej
popularnym scalonym konwerterem
jest uk³ad MAX232 i†jego odpowiedniki, ktÛre maj¹ wbudowan¹ ³adunkow¹ przetwornicÍ napiÍcia. Czasami
moøna sobie takøe poradziÊ, stosuj¹c
rÛøne sztuczki np. robi¹c interfejs na
tranzystorach. Na rys. 1 przedstawiono schemat typowego uk³adu konwertera TTL<->RS232.
Tu ma³a uwaga - na przedstawionym schemacie, jak i†w†notach aplikacyjnych uk³adÛw, podawane s¹
rÛøne wartoúci kondensatorÛw wymaganych do poprawnej pracy uk³adu
(od 0,1 µF do 10 µF). Przed zmon-
towaniem uk³adu naleøy sprawdziÊ
w†nocie katalogowej stosowanego
uk³adu, kondensatory o†jakiej pojemnoúci naleøy zastosowaÊ.
Jeszcze jedna uwaga na temat
po³¹czenia mikrokontrolera z†interfejsem RS znajduj¹cym siÍ w†komputerze: masy ³¹czy siÍ razem, ale
styki oznaczone TxD (Transmit Data - nadawanie danych) oraz RxD
(Receive Data - odbiÛr danych) ³¹czymy ìna krzyøî: TxD mikrokontrolera ³¹czymy ze stykiem RxD
komputera i†na odwrÛt.
Aby skorzystaÊ z†transmisji RS232,
na pocz¹tek naleøy skonfigurowaÊ
UART/USART mikrokontrolera (wymaga to napisania odpowiedniego programu) oraz w†komputerze - naleøy ustawiÊ jednakowe parametry transmisji
(jednakow¹ prÍdkoúÊ oraz pozosta³e
parametry, np.: 8†bitÛw danych, 1†bit
stopu, bez parzystoúci - co czÍsto jest
zapisywane jako 8n1). W†Bascomie do
deklaracji prÍdkoúci pracy interfejsu
jest uøywana nastÍpuj¹ca instrukcja
dyrektywy kompilatora:
n¹ prÍdkoúÊ transmisji oraz czÍstotliwoúÊ kwarcu i w†dolnej czÍúci okna
(ramka ERROR) bÍdziemy mieli podan¹ úredni¹ stopÍ b³ÍdÛw lup napis
Not Possible, czyli niemoøliwe do
ustawienia - tak jest np. dla 1200
bodÛw i†kwarcu powyøej 4†MHz. Z³e
dopasowanie czÍstotliwoúci kwarcu do
wymaganej prÍdkoúci transmisji jest
jedn¹ z†czÍstych przyczyn b³ÍdÛw lub
wrÍcz braku transmisji.
W†tab. 1 przedstawiono niektÛre
zaleønoúci b³ÍdÛw dla danych czÍstotliwoúci kwarcÛw przy rÛønych
prÍdkoúciach.
Podstawowym poleceniem w†Bascomie s³uø¹cym do wys³ania danych
z†mikrokontrolera przez RS232 jest
instrukcja print. Uøywa siÍ jej
w†najprostszy z†moøliwych sposobÛw, czyli:
$baud = 9600
Jak widaÊ, wysy³any tekst zawarto w†cudzys³owach. Tu ma³a dygresja - jeúli mamy zadeklarowan¹
zmienn¹ typu byte, a†jej wartoúÊ wyniesie 255, to polecenie:
Naleøy j¹ uøyÊ na pocz¹tku programu (prÍdkoúÊ moøna takøe ustawiÊ
w†menu Options>Compiler>Communication, ale lepiej zadeklarowaÊ w†programie). Bardzo waøn¹ rzecz¹ jest
takøe poznanie zaleønoúci szybkoúci
RS-a od czÍstotliwoúci uøytego kwarcu. Naj³atwiej sprawdziÊ to w†Bascomie, ustawiaj¹c w†menu Options>Compiler>Communication ø¹da-
Print zmienna
gdzie zmienna to dowolna zmienna
(lub sta³a) zadeklarowana w†programie. Moøna podawaÊ wartoúci sta³e
bezpoúrednio w†instrukcji print. Np.:
Print “To jest tekst testowy”
Print zmienna
ìwydrukujeî nam 255 (czyli wartoúÊ
dziesiÍtn¹). Czasem potrzebne s¹ dane w†formacie szesnastkowym - tu
Bascom pomaga nam poleceniem:
Print Hex(zmienna)
i†takie polecenie zamiast 255 ìwydrukujeî nam FF. Czasem potrzebujemy takøe wydrukowaÊ znak ASCII,
znaj¹c kod danej liczby np. 66, czyli ìbî - do tego celu moøemy uøyÊ
instrukcji:
Print Chr(66)
ktÛra to instrukcja ìwydrukujeî znak
b. Polecenie print zakoÒczone úrednikiem nie wyúle domyúlnie znaku
koÒca wiersza i†przejúcia do nastÍpnej linii (odpowiednik ENTER ìCRî - #13î), natomiast bez úrednika terminal zawsze przejdzie do nastÍpnej linii.
Do odbierania danych przez
RS232 Bascom ma dedykowanych
kilka instrukcji. Pierwsza z†nich to
instrukcja input. Sk³adnia instrukcji
input jest nastÍpuj¹ca:
Rys. 1. Schemat typowego konwertera z wykorzystaniem MAX232
Elektronika Praktyczna 11/2003
INPUT “tekst”,zmienna1,zmienna2....
93
B A S C O M O W E
P O R A D Y
Tab. 1. Przykłady wartości błędów przy różnych wartościach prędkości
transmisji i oscylatorów kwarcowych
Czêstotliwoœæ
kwarcu/prêdkoœæ
transmisji
1200
2400
4800
9600
19200
57600
115200
1,000000
0,16%
0,16%
1,843200
0,00%
0,00%
2,457600
0,00%
0,00%
3,276000
0,37%
0,37%
3,686000
4,000000
0,16%
0,16%
4,096300
4,194000
4,433618
4,433618
4,915200
0,00%
0,00%
6,144000
x
0,00%
6,553600
x
0,39%
7,372800
0,00%
0,00%
7,680000
0,00%
0,00%
8,000000
x
8,860000
x
0,16%
x - wartoœæ niemo¿liwa do otrzymania
0,16%
0,00%
0,00%
1,54%
7,84%
0,00%
0,00%
6,23%
7,84%
0,00%
25,00%
45,75%
0,00%
25,00%
0,16%
7,84%
7,84%
0,00%
0,00%
0,39%
0,00%
0,00%
7,84%
0,00%
0,00%
1,54%
4,16%
0,16%
2,51%
1,12%
3,00%
3,00%
0,00%
0,00%
1,56%
0,00%
0,00%
0,00%
0,00%
1,56%
0,00%
0,00%
6,25%
10,00%
1,56%
0,00%
4,00%
6,26%
10,00%
15,63%
0,00%
4,00%
0,16%
0,16%
0,16%
7,84%
7,84%
Jako ìtekstî†podajemy
tekst, ktÛry ma siÍ ukazaÊ
munikat o†oczekiwaniu na
danych (moøe go nie byÊ)
0,16%
dowolny
jako kopodanie
np.:
Dim A As Byte
Dim Ciag As String * 36
INPUT “Podaj A:”, a
'oczekiwać będzie na wpisanie
'liczby typu byte (0-255)
INPUT “A teraz wpisz tekst (max. 36
znaków):”, ciag
'oczekiwać będzie na wpisanie
'tekstu o długości max. 36 ‘znaków
Oczywiúcie moøna stosowaÊ kilka
zmiennych naraz np.:
INPUT “Podaj A oraz tekst:”, a
,ciąg
'oczekiwać będzie na wpisanie
'liczby typu byte (0-255) oraz
'na wpisanie tekstu o długości 36
'znaków
Aby zakoÒczyÊ odbiÛr danych poprzez polecenie input, naleøy na zakoÒczenie zawsze wys³aÊ znak CR
(#13 - ENTER) - co w†przypadku podawania danych rÍcznie np. z†klawiatury PC poprzez terminal nie jest
z†regu³y problemem i†jest wygodne,
natomiast moøe siÍ zdarzyÊ, øe chcemy odbieraÊ dane z†jakiegoú pod³¹czonego urz¹dzenia, ktÛre np. nie
wysy³a znakÛw koÒca wiersza. Tutaj
twÛrca Bascoma przyszed³ z†pomoc¹
i†stworzy³ wiele instrukcji. Jedn¹
z†nich jest polecenie inputbin, ktÛre
odbiera kaødy znak niezaleønie od
tego, czy jest to litera, czy kod steruj¹cy (np. #13, ktÛrego nie interpretuje w†øaden sposÛb, czyli po
prostu zapisuje go do zmiennej).
94
Sk³adnia tego polecenia jest nastÍpuj¹ca:
INPUTBIN zmienna1,zmienna2....
Polecenie to nie posiada ìtekstu
zachÍtyî i†oczekuje na tyle znakÛw,
ile jest w†definicji zmiennych. Na
przyk³ad:
Dim Ciag As String * 36
INPUTBIN ciag
W†tym przypadku instrukcja inputbin bÍdzie czekaÊ na odebranie
36 znakÛw i†zakoÒczy odbiÛr dopiero po odebraniu wszystkich znakÛw.
Jest to bardzo pomocne, jeúli zawsze
odbieramy z†urz¹dzenia zewnÍtrznego
dane o†takim samym rozmiarze.
W†przypadku gdy liczba ta jest
zmienna, to lepiej uøyÊ innej konstrukcji procedury odbioru. Polecenie
inputbin moøe takøe s³uøyÊ do odbioru znakÛw bezpoúrednio do tablicy - naleøy wÛwczas z†gÛry okreúliÊ,
ile bajtÛw naleøy odebraÊ oraz od
ktÛrego miejsca w†tablicy naleøy zacz¹Ê zapisywaÊ dane:
Inputbin tablica(3), 6
'do tablicy trafi 6 bajtów, jako
'pierwsza zostanie zapisana komórka
'nr 3
Kolejn¹ instrukcj¹ z†rodziny input
godn¹ wspomnienia jest instrukcja
inputhex. Nie rÛøni siÍ ona sk³adni¹
od polecenia input, rÛøni siÍ natomiast jedn¹ zasadnicz¹ cech¹: odbiera znaki w†formacie szesnastkowym
wprowadzanym jako zwyk³y tekst,
czyli jeúli podamy jako odpowiedü
na poniøszy przyk³ad:
Dim A As Byte
INPUTHEX “Podaj wartość szesnastkowa”,a
znaki ìFUî, to wtedy w†zmiennej a
znajdzie siÍ wartoúÊ 255, czyli ìFUî
szesnastkowo. Polecenie to umoøliwia
wprowadzanie znakÛw w†formie szesnastkowej. Jedna uwaga: kaødy spoúrÛd dot¹d†wymienionych rozkazÛw
z†rodziny input zatrzymuje dzia³anie
programu i†oczekuje na podanie znaku. W³aúnie ta cecha powoduje, øe
polecenia te nie nadaj¹ siÍ do wykorzystania przy odbiorze danych
gdzieú np. w†g³Ûwnej pÍtli programu,
ktÛry nie moøe byÊ wstrzymywany.
Natomiast znakomicie nadaj¹ siÍ do
konkretnych zastosowaÒ takich jak
np.: programowanie pamiÍci danych
programu za pomoc¹ dedykowanej
aplikacji, odbioru danych wywo³ywanych zewnÍtrznym impulsem (np.
int0 lub int1, czy podanym na jakiekolwiek wejúcie).
Poniøej przedstawiono przyk³ad
odbioru danych przez RS232, ktÛre
s¹ przeznaczone do zapisania z†pamiÍci EEPROM pod przes³any wczeúniej adres:
$regfile = “m8def.dat”
'powiadomienie o wykorzystywanym
'procesorze atmega8
$crystal = 8000000
'częstotliwość oscylatora
$baud = 9600
'prędkość transmisji
dim dana as byte
dim adres as byte
Do
Input “Adres:”, Adres
'czeka na adres
INPUTHEX “Dana:”, Dana
'czeka na dana
Print Adres; “:”; Dana
'wysyła odebrany adres oraz dana
'do komputera
Writeeeprom Dana, Adres
'zapisuje do eeprom otrzymana
'dana pod otrzymanym ‘adresem
Loop
End
W†przedstawionym przyk³adzie
mikrokontroler czeka na odebranie
adresu, pod ktÛrym ma byÊ zapisana dana, oraz na zapisywan¹ dan¹.
Odebrana dana nastÍpnie zostaje zapisana w†pamiÍci EEPROM pod
otrzymanym wczeúniej adresem.
W†przedstawionym przyk³adzie do
odbioru danych zosta³a wykorzystana
instrukcja inputhex, ktÛra odbiera
dane szesnastkowo - moøna je od
razu zapisaÊ do pamiÍci EEPROM.
W†tym przyk³adzie do kontroli poprawnoúci odebranych danych wysy³any jest adres oraz odebrana dana
poprzez instrukcjÍ print. Bascom
udostÍpnia takøe funkcje umoøliwia-
Elektronika Praktyczna 11/2003
B A S C O M O W E
j¹ce odbieranie pojedynczych znakÛw
przez RS232. Do tych funkcji moøna
zaliczyÊ waitkey(), ktÛra czeka na
odebranie znaku (wstrzymuje dzia³anie programu do czasu pojawienia
siÍ w†buforze transmisji szeregowej
odebranego znaku), oraz funkcje inkey(), ktÛra zwraca kod ASCII pierwszego znaku znajduj¹cego siÍ w†buforze transmisji szeregowej bez
wstrzymywania dzia³ania programu.
Na list. 1 przedstawiono przyk³ad
programu ilustruj¹cego rÛønice
w†dzia³aniu wymienionych funkcji.
Jeøeli zostanie przez mikrokontroler odebrana ìjedynkaî potwierdzona
enterem, wykonana zostanie funkcja
waitkey(), ktÛra czeka na znak, czyli
wstrzymuje dzia³anie programu. Po
odebraniu znaku przez funkcje waitkey() odebrany znak jest wysy³any
z†powrotem do PC (w kodzie ASCII).
Jeúli zostanie odebrana z†portu RS232
wartoúÊ 2, to zostanie zaprezentowane dzia³anie funkcji inkey(). Jest ona
wykonywana, aø odebrany zostanie
znak o†kodzie 27 (ESC). Jeøeli odebrany znak ma kod wiÍkszy od 0,
to do PC zostaje wys³any kod ASCII
odebranego znaku oraz sam znak.
Tak wiÍc do PC bÍd¹ wysy³ane odebrane znaki ASCII od 1†do 255. Poniewaø funkcja inkey() pobiera znak
z†bufora sprzÍtowego uk³adu UART,
moøe ona zwrÛciÊ 0, gdy odebranym
znakiem bÍdzie znak o†kodzie ì0î.
Powoduje to, øe†nie nadaje siÍ ona
do odbierania danych binarnych, ktÛre mog¹ przecieø zawieraÊ bajty zerowe. Moøna temu zaradziÊ, stosuj¹c
dodatkowo funkcjÍ ischarwaiting, ktÛra sprawdzi, czy znak rzeczywiúcie
zosta³ odebrany. Jeúli funkcja ta
zwrÛci ì1î, moøna odebraÊ znak
przez inkey() lub waitkey(), ktÛry mo-
øe mieÊ takøe wartoúÊ 0. Bascom
prÛcz transmisji typowej umoøliwia
transmisjÍ buforow¹ z†wykorzystaniem
przerwaÒ od wbudowanego UART-u/
USART-u w†mikrokontrolerze.
Poniewaø transmisja buforowa
uøywa przerwaÒ od UART-u/USARTu, wiÍc nie jest moøliwe jej wykorzystanie przy programowej realizacji
interfejsu RS232 tylko sprzÍtowej.
Transmisja buforowa z†wykorzystaniem przerwaÒ ma wiele zalet. Odbieranie oraz nadawanie danych moøe
przebiegaÊ w†obs³udze przerwania,
czyli w†tle programu g³Ûwnego. Moøe
byÊ wykonywany program g³Ûwny,
ktÛrego kolejne instrukcje nie musz¹
czekaÊ, aø dany ci¹g znakÛw zostanie odebrany lub wys³any. DziÍki buforowi odbieranie danych czy nadawanie moøe byÊ przeprowadzone
w†programie g³Ûwnym, kiedy bÍdzie
do tego sposobnoúÊ. Jeøeli nie zostanie przekroczona zadana pojemnoúÊ
bufora, øaden odebrany czy nadany
ci¹g znakÛw nie zostanie zgubiony,
co mia³oby miejsce przy wykonywaniu jakichú d³ugoczasowych instrukcji
w†programie g³Ûwnym. W†przypadku
transmisji buforowej odbierane czy
nadawane znaki s¹ ³adowane i†brane
z†bufora w†przerwaniu, czyli niezaleønie od dzia³ania programu g³Ûwnego.
Po prostu transmisji buforowej moøna
uøywaÊ, gdy potrzebne bÍdzie wysy³anie oraz odbieranie znakÛw w†tle
dzia³ania programu g³Ûwnego (ktÛra
wykorzystuje przerwanie od UART-u/
USART-u). BÍdzie uøywana zw³aszcza
wtedy, gdy zadania wykonywane
w†programie g³Ûwnym bÍd¹ czasoch³onne, a†nie bÍdzie moøna przeoczyÊ øadnych odebranych przez
RS232†znakÛw. Do konfiguracji sprzÍtowego uk³adu UART/USART, by
List. 1. Przykład programu pokazującego działanie funkcji waitkey() oraz
inkey()
$regfile = „m8def.dat”
$crystal = 8000000
$baud = 9600
'predkosc transmisji
Dim A As Byte
'definicje zmiennych
Do
'petla glowna programu
Print „Program testowy”
Print „1. Instrukcja waitkey()”
Print „2. Instrukcja inkey()”
Input „Wybierz opcje i nacisnij enter:”, A
If A = 1 Then
'jesli odebrano 1 to
A = Waitkey()
'czekaj na znak
Print A; „ - „; Chr(a) 'wyslij do terminala odebrany znak oraz jego kod ascii
End If
If A = 2 Then
'jesli odebrano 2 to
Do
'poczatek warunkowej petli do-loop
A = Inkey()
'odebranie znaku
If A > 0 Then
'jesli odebrany znak wiekszy od 0 (kod ascii) to
Print „Nacisniete (kod ASCII):”; A; „ czyli znak „; Chr(a)
'wysli do terminala kod ascii odebranego znaku oraz znak
End If
Loop Until A = 27
'jesli odebrany znak ma kod 27 (esc) to zakoncz petle do-loop
End If
Loop
End
Elektronika Praktyczna 11/2003
P O R A D Y
uøywa³ bufora wejúciowego, s³uøy†polecenie konfiguracyjne config serialin.
Gdy uøyte zostanie to polecenie, automatycznie zostan¹ stworzone trzy
zmienne, ktÛrych znaczenie jest nastÍpuj¹ce:
- _RS_HEAD_PTR0 bajt - wskaünik
okreúlaj¹cy, gdzie znajduje siÍ
pierwszy jeszcze nieodebrany bajt,
- _RS_TAIL_PTR0 bajt - wskaünik
okreúlaj¹cy, gdzie znajduje siÍ
ostatni jeszcze nieodebrany bajt,
- _RS232INBUF0
tablica bajtÛw
pe³ni¹ca rolÍ wejúciowego bufora
ko³owego.
Przy transmisji buforowej (odbiorczej) po kaødym odebranym znaku
wywo³ywana jest procedura przerwania, w†ktÛrej ³adowany jest odebrany
znak do bufora. Gdy nie ma miejsca
w†buforze, odebrany znak nie jest
umieszczony w†buforze. Dlatego bufor musi byÊ oprÛøniany cyklicznie,
podczas odczytywania instrukcjami
inkey() lub input. Poniewaø transmisja odbiorcza - buforowa wykorzystuje przerwanie URXC, nie jest moøliwe uøywanie tego ürÛd³a przerwania
w†programie uøytkownika. Aby pokazaÊ dzia³anie transmisji buforowej,
przedstawiony zostanie przyk³ad programu, ktÛry odbiera znaki z†portu
RS232 oraz wyúwietla je na LCD. Jeøeli przekroczona zostanie pojemnoúÊ
pierwszej linii wyúwietlacza LCD,
wyúwietlacz jest czyszczony i†kolejne
odebrane znaki s¹ wyúwietlane od
pocz¹tku linii. Na rys. 2 przedstawiono schemat ideowy systemu,
w†ktÛrym zastosowano wyúwietlacz
LCD oraz konwerter poziomÛw napiÍʆTTL<->RS232. Wykorzystany zosta³ mikrokontroler ATmega8.
Przyk³adowy program (list. 2) odbiera znaki przez RS232 oraz wyúwietla je na wyúwietlaczu z†opÛünieniem 1†sekundy. Wprowadzone
opÛünienie 1†sekundy ma na celu
pokazanie poprawnoúci dzia³ania
transmisji buforowej.
Jak widaÊ na list. 2, sprzÍtowy
UART/USART jest konfigurowany
w†taki sposÛb, aby uøywa³ bufora
wejúciowego (odbiorczego). Wykorzystano do tego celu instrukcjÍ config
serialin ustalaj¹c¹ rozmiar bufora odbiorczego o†wielkoúci 50 bajtÛw. Aby
by³o moøliwe poprawne dzia³anie
transmisji buforowej, koniecznie naleøy odblokowaÊ globalny system przerwaÒ, co w†przyk³adowym programie
zosta³o uczynione. Naleøy o†tym pamiÍtaÊ, bo w†przeciwnym wypadku
transmisja buforowa nie bÍdzie dzia³aÊ. W†nieskoÒczonej pÍtli do-loop
odbierany jest znak z†bufora transmi-
95
B A S C O M O W E
P O R A D Y
Rys. 2. Schemat przykładowego układu testowego
sji funkcj¹ inkey() i†jeøeli kod ASCII
odebranego znaku jest wiÍkszy od 31,
to odebrany znak zostaje wyúwietlony na LCD oraz zwiÍkszona zostanie
o†jeden wartoúÊ zmiennej poz. Jeøeli
zmienna poz osi¹gnie wartoúÊ 17,
czyli zape³niony zostanie znakami ca³y wiersz wyúwietlacza 2*16 znakÛw,
to nastÍpuje czyszczenie LCD oraz
wpisanie do zmiennej poz wartoúci
pocz¹tkowej 1. OpÛünienie 1†sekundy
zosta³o wprowadzone w†celu spowolnienia dzia³ania programu g³Ûwnego,
co ma na celu pokazanie zalet transmisji buforowej - odbiorczej. Po uruchomieniu tego programu wysy³ane
poprzez terminal znaki, np. przez ten
w†jaki zosta³ wyposaøony Bascom,
wszystkie odebrane (øaden nie zosta-
nie zgubiony) i†wyúwietlone na LCD,
oczywiúcie jeúli nie zostanie przekroczona pojemnoúÊ zadeklarowanego bufora. Aby zobaczyÊ dzia³anie tego
programu bez uøycia transmisji buforowej, naleøy wykasowaÊ z†programu
instrukcjÍ konfiguracyjn¹ config serialin. Po tym zabiegu i†po za³adowaniu programu wysy³ane znaki przez
terminal czÍúciej niø co sekundÍ bÍd¹ po prostu tracone i†nie do odzyskania. Aby mÛc np. odbieraÊ znaki
ASCII od 0†do 255 (oczywiúcie
w†przypadku buforowego odbierania
znakÛw), moøna pos³uøyÊ siÍ dodatkowymi zmiennymi _RS_HEAD_PTR0
oraz _RS_TAIL_PTR0, ktÛre s¹ tworzone automatycznie podczas uøywania odbiorczej transmisji buforowej.
List. 2. Realizacja odbierania znaków przez RS232 z wykorzystaniem
transmisji buforowej
'Przykład buforowego odbioru danych przez RS232 (w przerwaniu)
'predkosc transmisji 9600 bodow
$regfile = „m8def.dat”
$crystal = 8000000
$baud = 9600
'informuje kompilator o pliku dyrektyw
'wykorzystywanego mikrontrolera
'informuje kompilator o czestotliwosci rezonatora
'kwarcowego
'informuje kompilator o predkosci transmisji
Config Lcd = 16 * 2
'konfiguracja organizacji znakow wyswietlacza LCD
Config Lcdpin = Pin, Db4 = Portc.3, Db5 = Portc.2, Db6 = Portc.1, Db7 = Portc.0, E
= Portc.4, Rs = Portc.5
'konfiguracja pinow mikrokontrolara do ktorych dolaczone zostaly linie wyswietlacza
Config Serialin = Buffered, Size = 50
'konfiguracja bufora wejsciowego
Dim Znak As String * 1
Dim Poz As Byte
'definicja zmiennej znak typu string
'definicja zmiennej poz typu byte
Enable Interrupts
'odblokowanie przerwan globalnych
Cls
Poz = 1
'czysc lcd
'wartosc poczatkowa zmiennej poz
Do
Znak = Inkey()
If Asc(znak) > 31 Then
If Poz = 17 Then
Cls
Poz = 1
End If
Lcd Znak
Incr Poz
End If
Wait 1
Loop
End
96
'nieskonczona petla do-loop
'odbierz znak z bufora wejsciowego
'jezeli wartosc ascii odebranego znaku wieksza niz 0 to
'jesli zmienna poz=17 to
'czysc lcd
'zapisz do poz wartosc 1
'wyswietl na lcd odczytany z bufora znak
'zwieksz o jeden wartosc zmiennej poz
'czekaj 1 sekunde
'koniec nieskonczonej petli
'koniec programu
Jeøeli wartoúci tych zmiennych s¹
rÛøne, to wiadomo, øe w†buforze odbiorczym znajduje siÍ nieodebrany
znak/i. Natomiast gdy s¹ rÛwne, znaczy, øe w†buforze odbiorczym nie ma
øadnych nieodebranych znakÛw. Realizacja nadawania przez UART/
USART z†wykorzystaniem bufora
przebiega podobnie jak odbiÛr buforowy, tylko zamiast instrukcji config
serialin naleøy wykorzystaÊ instrukcjÍ
config serialout. W†przypadku bufora
nadawczego takøe naleøy obowi¹zkowo odblokowaÊ globalny system
przerwaÒ. Oczywiúcie jest moøliwe
jednoczesne uøywanie bufora wejúciowego, jak i†wyjúciowego. Bascom
prÛcz obs³ugi sprzÍtowej RS232
umoøliwia takøe realizacjÍ programow¹ interfejsu RS232. Programowy
UART bÍdzie wykorzystywany
zw³aszcza gdy mikrokontroler nie bÍdzie zawiera³ sprzÍtowego UART-u/
USART-u, a†bÍdzie potrzebny, lub
gdy bÍdzie potrzebny drugi port
RS232. Bascom posiada takøe instrukcje realizuj¹ce dynamiczny programowy UART, dziÍki czemu moøliwe jest dowolne wykorzystanie
w†kaødej chwili koÒcÛwek mikrokontrolera do nadawania lub odbioru
danych przez RS232. Dynamicznie
moøna zmieniaÊ uøywane do transmisji koÒcÛwki mikrokontrolera oraz
parametry transmisji. Jeúli bÍdzie zainteresowanie, zostanie poúwiÍcona
czÍúÊ miejsca w†tej rubryce na zagadnienia zwi¹zane z†programowym
UART-em. Oczywiúcie RS232 moøna
nie tylko wykorzystywaÊ do komunikacji z†komputerem, ale takøe z†innymi mikrokontrolerami czy urz¹dzeniami wyposaøonymi w†taki port.
Marcin Wi¹zania
[email protected]
Artur Starz
[email protected]
Elektronika Praktyczna 11/2003
K U R S
Pamięci nieulotne w systemach
mikroprocesorowych, część 2
Przechowywanie danych
w†wewnÍtrznej pamiÍci
EEPROM mikrokontrolera
(AT89S8252, AT90S2313)
Konstruuj¹c urz¹dzenia z†mikrokontrolerami, czÍsto stajemy
Do przechowywania danych nastaw,
napisÛw, zmiennych definiowanych przez
uøytkownika i†tym podobnych doskonale
nadaje siÍ wbudowana w†strukturÍ mikrokontrolera AT89S8252 pamiÍÊ EEPROM.
Ma ona duø¹ jak na úwiat mikrokontrolerÛw pojemnoúci - ìaøî 2†kB. Podobnie
jak w†przypadku wbudowanej w†strukturÍ
pamiÍci RAM, nie wymaga øadnych dodatkowych uk³adÛw dekodera adresu, dodatkowego napiÍcia zasilaj¹cego itp. Producent gwarantuje co najmniej 100 tysiÍcy cykli zapisu/odczytu, co przy przeciÍtnym uøytkowaniu wystarcza na co najmniej kilka lat.
WewnÍtrzna pamiÍÊ EEPROM umieszczona zosta³a przez producenta w†obszarze XDATA. DostÍp do niej odbywa siÍ
za pomoc¹ rozkazu MOVX z†adresem komÛrki w†rejestrze DPTR. Oczywiúcie rozkaz MOVX s³uøy rÛwnieø do dostÍpu do
urz¹dzeÒ pod³¹czonych na zewn¹trz mikrokontrolera i†dlatego teø producent
wprowadzi³ dodatkowy bit o†nazwie EEMEN umoøliwiaj¹cy wybÛr zgodnego z†intencj¹ programisty sposobu dzia³ania
MOVX. Ustawienie bitu powoduje, øe
rozkaz ten zapisuje/odczytuje dane do/z
wewnÍtrznego EEPROM.
Odczyt danych jest bardzo szybki, gorzej jest z†zapisem. WewnÍtrzny uk³ad
kontrolera EEPROM umoøliwia dostÍp do
pojedynczego bajtu danych. Kaøda operacja zapisu zwi¹zana jest prawdopodobnie
z†koniecznoúci¹ ustawienia wszystkich bi-
po wy³¹czeniu lub zaniku zasilania. £atwo jest, jeúli s¹ to
przed koniecznoúci¹ zapewnienia przechowywania danych takøe
takie sta³e jak: napisy menu (dla przyk³adu w†rÛønych
jÍzykach), obrazy, sta³e parametry nastaw. Gorzej, jeúli musimy
przechowaÊ zmienne. Jeszcze trudniej, gdy musz¹ one byÊ
zapamiÍtane rÛwnieø w†przypadku awarii napiÍcia zasilania.
Rys. 5. Przykład połączenia TC58128−AFT z mikrokontrolerem AVR
Tab. 1. Zestawienie pamięci Flash−NAND produkcji firmy Toshiba
Nazwa
TC58V64BFT
TC58V64BFTI
TC58DVM72F1FT00
TC58128AFT
TC58128AFTI
TC581282AXB
TC58DVM72A1FT00
TC58DVM82F1FT00
TC58256AFT
TC58256AFTI
TC582562AXB
TC58DVM82A1FT00
TC58DVM82A1XBJ1
TC58512FT
TC58512FTI
TC58DVM92A1FT00
TH58100FT
TC58DVG02A1FT00
TC58NVG0S3AFT05
TH58100FTI
TH58NVG1S3AFT05
Org.
Obudowa
Zasilanie
8M X 8
8M X 8
8M X 16
16M X 8
16M X 8
16M X 8
16M X 8
16M X 16
32M X 8
32M X 8
32M X 8
32M X 8
32M X 8
64M X 8
64M X 8
64M X 8
128M X 8
128M X 8
128M X 8
128M X 8
256M x 8
TSOP-II 44 wypr.
TSOP-II 44 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TFBGA-56
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TFBGA-56
TSOP-I 48 wypr.
TFBGA-56
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
TSOP-I 48 wypr.
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
2,7V do 3,6V
Elektronika Praktyczna 11/2003
Rozmiar
strony
[B]
528
528
264
528
528
528
528
264
528
528
528
528
528
528
528
528
528
528
2112
528
2112
Rozmiar
bloku
[kB]
8
8
8
16
16
16
16
8
16
16
16
16
16
16
16
16
16
16
128
16
128k
tÛw w†s³owie. PiszÍ prawdopodobnie, poniewaø nie posiadam informacji na temat
szczegÛ³Ûw funkcjonowania operacji zapisu i†nie wiem, czy ustawiane s¹ wszystkie bity s³owa (przed zapisem komÛrka
musi zawieraÊ ì1î na pozycjach ì1î zapisywanego s³owa danych), czy tylko te,
dla ktÛrych operacja ta jest niezbÍdna.
Tak czy inaczej, operacja zapisu pojedynczego bajtu trwa oko³o 1†ms. Jej zakoÒczenie sygnalizowane jest przez wyzerowanie bitu BSY/RDY umieszczonego
w†rejestrze WMCON. Na list. 2 (EP10/
2003) przedstawiono fragment programu
odpowiedzialny za zapis i†odczyt danych
w†pamiÍci EEPROM mikrokontrolera
AT89S8252, a†na list. 3 (EP10/2003)
przyk³ady ich uøycia.
W†podobny sposÛb moøna uzyskaÊ
dostÍp do pamiÍci EEPROM wbudowanej
w†strukturÍ mikrokontrolera AT90S2313.
Bity kontrolne, sposÛb ich funkcjonowania oraz nazwy s¹ takie same, jak dla
AT89. Zupe³nie inne s¹ jednak nazwy rejestrÛw specjalnych. Na list. 3 pokazano
przyk³adowe funkcje zapisuj¹ce i†odczytuj¹ce bajt do/z pamiÍci EEPROM. Niestety
- ten typ mikrokontrolera posiada wbudowane tylko 128 bajtÛw EEPROM.
89
K U R S
Podobnie jak w†przypadku pamiÍci
RAM, rÛwnieø i†EEPROM moøe przechowywaÊ zmienne i†nastawy waøne dla funkcjonowania aplikacji. Ze wzglÍdu jednak
na ograniczon¹ liczbÍ cykli zapisu/odczytu, wszelkich zmian powinno siÍ dokonywaÊ na zmiennej znajduj¹cej siÍ w†pamiÍci RAM a†jedynie w†przypadku zaniku napiÍcia zasilania czy teø jego za³¹czenia,
operacje zmienne powinny zostaÊ zapamiÍtane czy odtworzone z†pamiÍci EEPROM. Dla wyd³uøenia øywotnoúci urz¹dzenia, pamiÍci tej powinno siÍ uøywaÊ tak
rzadko, jak to tylko jest moøliwe.
Wykorzystanie zewnÍtrznej
pamiÍci Flash do
przechowywania danych
List. 5. Przykład realizacji programowego interfejsu do obsługi pamięci Flash
TC58128
#define PAGE_SIZE 528
#define PAGES_PER_BLOCK
32
#define BLOCK_PER_FLASH 1024;
// rozmiar strony
// liczba stron w bloku dla danego typu NAND
// liczba bloków na pamięć
at 0x00 pdata FLASH_BASE;
// adres bazowy pamięci FLASH
#define
#define
#define
#define
#define
#define
#define
#define
Wprowadzanie danych
(Serial Data Input)
Tryb odczytu numer 1
(Read Mode 1)
Tryb odczytu numer 2
(Read Mode 2)
Tryb odczytu numer 3
(Read Mode 3)
Zerowanie kontrolera
(Reset)
Programowanie strony
(Auto Program)
Kasowanie bloku danych
(Auto Block Erase)
Odczyt statusu
(Status Read)
Odczyt sygnatury
(ID Read)
90
wyprowadzenie BUSY pamięci FLASH
ustawienie sygnału CLE pamięci FLASH
zerowanie sygnału CLE pamięci FLASH
ustawienie sygnału ALE pamięci FLASH
zerowanie sygnału CLE pamięci FLASH
pętla - oczekiwanie na gotowość FLASH
ustawienie sygnału CE pamięci FLASH
zerowanie sygnału CE pamięci FLASH
/* odczyt kodu wytwórcy i kodu pamięci FLASH (odczyt sygnatury, PDF file str.14);
starszy bajt zawiera kod wytwórcy, młodszy kod urzšdzenia (rodzaju FLASH) */
WORD F_ReadStatus(void)
{
int temp;
FLASH_ALE_CLR;
// wyzerowanie sygnału ALE
FLASH_CLE_SET;
// ustawienie sygnału CLE
FLASH_CE_CLR;
// zerowanie sygnału CS pamięci FLASH, wybór pamięci
FLASH_BASE = 0x90;
// zapis bajtu 0x90 do pamięci FLASH-1
FLASH_CLE_CLR;
// wyzerowanie sygnału CLE
FLASH_ALE_SET;
// ustawienie sygnału ALE
FLASH_BASE = 0;
// zapis bajtu o wartości 0x00 do FLASH
FLASH_ALE_CLR;
// wyzerowanie sygnału ALE
temp = (int)FLASH_BASE; // zapis do zmiennej temp wartości bajtu pobranego z FLASH
temp <<= 8;
// kod wytwórcy
temp |= (int)FLASH_BASE;
// dodanie do słowa sygnatury
FLASH_CE_SET;
// wyłączenie pamięci FLASH poprzez ustawienie sygnału CE
return (temp);
// funkcja zwraca bajt sygnatury FLASH
}
// odczyt strony o rozmiarze PAGE_SIZE z pamięci FLASH (sequential read (1), str.11 w PDF)
short FLASH_ReadPage(WORD wPageNum, char *pBuff)
{
int temp;
if (!FLASH_READY) return (-1); // jeśli pamięć nie gotowa funkcja kończy prace i zwraca -1
FLASH_ALE_CLR;
// zerowanie sygnału ALE
FLASH_CE_CLR;
// załączenie wyboru pamięci FLASH-1 (zerowanie sygnału CE)
FLASH_CLE_SET;
// ustawienie sygnału CLE
FLASH_BASE = 0;
// zapis bajtu o wartości 0x00 do FLASH, wybór trybu 1
FLASH_CLE_CLR;
// wyzerowanie sygnału CLE
FLASH_ALE_SET;
// ustawienie sygnału ALE
FLASH_BASE = 0;
// ustawienie adresu kolumny w pamięci FLASH na 0x00
FLASH_BASE = (unsigned char)wPageNum;
// zapis młodszego bajtu adresu strony
FLASH_BASE = (unsigned char)(wPageNum>>8);
// zapis starszego bajtu adresu strony
FLASH_ALE_CLR;
// zerowanie sygnału ALE
WAIT_4_READY;
// oczekiwanie na zakończenie operacji przez FLASH
for (temp = 0; temp < PAGE_SIZE; temp++) *pBuff++ = FLASH_BASE;
// pobranie kolejnych bajtów
FLASH_CE_SET;
// wyłączenie pamięci poprzez ustawienie sygnału wyboru
return (0);
// jeśli wykonanie zakończyło się sukcesem f.zwraca 0x00
Tab. 2. Wykaz poleceń akceptowa−
nych przez kontroler pamięci TC58
1-szy 2-gi
bajt bajt
//
//
//
//
//
//
//
//
#define WORD unsigned int
#define BYTE unsigned char
O†ile opisywane wczeúniej rozwi¹zania
mog¹ pos³uøyÊ do zapamiÍtywania danych
w†sytuacji awaryjnej, o†tyle uøycie pamiÍci Flash o†duøej pojemnoúci wi¹øe siÍ
najczÍúciej z†koniecznoúci¹ budowy czegoú
w†rodzaju ìdysku krzemowegoî do przechowywania: obrazÛw, przetworzonego na
postaÊ cyfrow¹ düwiÍku i†innych. Gwa³towny rozwÛj pamiÍci Flash w†ostatnich
latach zosta³ zapocz¹tkowany g³Ûwnie
przez aplikacje zwi¹zane z†telekomunikacj¹, a†úciúlej z†telefonami GSM. WspÛ³czesny telefon wyposaøony jest bardzo czÍsto
w†kilka lub kilkadziesi¹t MB pamiÍci
Flash s³uø¹cej do przechowywania komunikatÛw SMS, nagraÒ, plikÛw†zawieraj¹cych muzykÍ czy obrazy. Jako przyk³ad
uk³adÛw przeznaczonych do takich w³aúnie zastosowaÒ, chcÍ zaprezentowaÊ rodzinÍ uk³adÛw firmy Toshiba (TAEC) oznaczonych symbolem TC58. Wykaz pamiÍci
Flash-NAND produkowanych przez tÍ firmÍ znajduje siÍ w†tab. 1.
Wbrew pozorom, wykonanie interfejsu do obs³ugi pamiÍci Flash nie jest
trudne. Innym zagadnieniem jest ewentualne wykonanie systemu plikÛw na
wzÛr†tego stosowanego przy zapisie dyskÛw (czy dyskietek) w†systemach operacyjnych ìduøychî komputerÛw, jak na
Opis polecenia
FLASH_READY
(PINC & 0x80)
FLASH_CLE_SET PORTC = PORTC | 0x40
FLASH_CLE_CLR PORTC = PINC & (~0x20)
FLASH_ALE_SET PORTC = PORTC | 0x20
FLASH_ALE_CLR PORTC = PINC & (~0x20)
WAIT_4_READY while (!FLASH_READY)
FLASH_CE_SET
PORTC = PORTC | 0x10
FLASE_CE_CLR PORTC = PINC & (~0x10)
Akceptowane
w stanie
zajêtoœci?
0x80
-
nie
0x00
-
nie
0x01
-
nie
0x50
-
nie
0xFF
-
tak
0x10
-
nie
0x60 0xD0
nie
0x70
-
tak
0x90
-
nie
}
/* odczyt części strony pamięci FLASH w trybie 1,2 lub 3; tryb wybierany jest w zależności
od rozmiaru parametru OFFSET (PDF strony 11 i 12) */
short FLASH_ReadPartialPage(WORD wPageNum, void *pBuff, WORD offset, WORD length)
{
short temp;
// zmienna tymczasowa; wykorzystana do inkrementacji adresu
BYTE command;
// zmienna zawierająca komendę
*pBuffer = (BYTE*)pBuff;
// wskaźnik do bufora w pamięci RAM
if (offset + length > PAGE_SIZE) return (-1); // jeśli offset i liczba bajtów do
// odczytu są większe od rozmiaru strony, funkcja kończy prace
// zwracając kod błędu
if (offset < 256)
// jeśli offset jest mniejszy od 256, wybierany jest tryb 1
command = 0;
// (command = 0)
else if (offset < 512)
// jeśli offset jest większy od 256 ale mniejszy od 512,
command = 1;
// wybierany jest tryb 2 (command = 1)
else
// w innych przypadkach wybierany jest tryb 3 (command = 50H)
command = 0x50;
if (!FLASH_READY) return (-1); // pamięć jest zajęta, f.kończy pracę zwracając kod błędu
// poniższa część kodu jest wspólna dla wszystkich trybów pracy - różnią się one tylko
// 1-szym bajtem komendy
FLASH_ALE_CLR;
// wyzerowanie sygnału ALE
FLASH_CE_CLR;
// wybór (załączenie) pamięci FLASH
Elektronika Praktyczna 11/2003
K U R S
List. 5 − cd.
FLASH_CLE_SET;
// ustawienie sygnału CLE
FLASH_BASE = command; // wysłanie do pamięci FLASH bajtu komendy wybranego na
// podstawie wartości argumentu OFFSET
FLASH_CLE_CLR;
// zerowanie sygnału CLE
FLASH_ALE_SET;
// ustawienie sygnału ALE
FLASH_BASE = offset;
// zapis bajtu adresu kolumny do pamięci FLASH
FLASH_BASE = (unsigned char)wPageNum;
// zapis młodszego bajtu numeru strony FLASH
FLASH_BASE = (unsigned char)(wPageNum>>8); // zapis starszego bajtu numeru strony FLASH
FLASH_ALE_CLR;
// wyzerowanie sygnału ALE
WAIT_4_READY;
// oczekiwanie na ustawienie sygnału BUSY
length += offset; // dodanie do wartości LENGHT wartości OFFSET, to będzie
// adres liniowy w pamięci FLASH
for (temp = offset; temp < length; temp++)
{
// odczyt LENGTH bajtów z pamięci FLASH
*pBuffer++ = FLASH_BASE;
WAIT_4_READY;
// po odczycie każdego bajtu czekamy na ustawienie READY
}
FLASH_CE_SET;
// wyłączenie pamięci
return(0);
}
/* zapis danych o rozmiarze pojedynczej strony do pamięci FLASH */
short FLASH_WritePage(WORD wPageNum, char *pBuff)
{
int temp;
BYTE status;
if (!FLASH_READY) return (-1); // pamiec nie gotowa, f.kończy prace i zwraca kod błędu
FLASH_ALE_CLR;
// zerowanie sygnału ALE
FLASH_CLE_SET;
// ustawienie sygnału CLE
FLASH_CE_CLR;
// załączenie układu pamięci FLASH
FLASH_BASE = 0x80; // zapis komendy 80H do FLASH-1 (serial input)
FLASH_ALE_SET;
// ustawienie sygnału ALE
FLASH_CLE_CLR;
// wyzerowanie sygnału CLE
FLASH_BASE = 0;
// ustawienie adresu kolumny na wartość 0
FLASH_BASE = (unsigned char)wPageNum;
// zapis młodszego bajtu numeru strony do FLASH
FLASH_BASE = (unsigned char)(wPageNum>>8); // zapis starszego bajtu numeru strony do FLASH
FLASH_ALE_CLR;
// wyzerowanie sygnału ALE
WAIT_4_READY;
// oczekiwanie na zgłoszenie gotowości przez FLASH
// zapis PAGE_SIZE bajtów do pamięci FLASH
for (temp = 0; temp < PAGE_SIZE; temp++) FLASH_BASE = *pBuff++;
FLASH_CLE_SET;
// ustawienie sygnału CLE
FLASH_BASE = 0x10; // zapis komendy "koniec programowania"
WAIT_4_READY;
// oczekiwanie na gotowość FLASH
FLASH_BASE = 0x70; // zapis komendy "status read", ustawienie FLASH w
// "status read mode"
FLASH_CLE_CLR;
// zerowanie sygnału CLE
status = FLASH_BASE;
// pobranie bajtu statusu
FLASH_CE_SET;
// wyłączenie FLASH poprzez ustawienie jej sygnału wyboru
if (status&1) return (-2); // jeśli ustawiony jest bit FAIL (strona 20 PDF),
// funkcja zwraca kod bledu
return (0);
// w przeciwnym wypadku zwracane jest 0x00
}
/* kasowanie bloku o numerze wBlockNum w pamięci FLASH (auto block erase, PDF str. 13) */
short FLASH_EraseBlock(WORD wBlockNum)
{
BYTE status;
/* adresy bloków dla pamięci TC58128 podawane sa na liniach od A14 do A23; wymaga to
przesunięcia argumentu wBlockNum o 5 miejsc w lewo; inaczej jest dla pamięci TC5832 i 64; tu
adres podawany jest na liniach A13 do A21 - wymaga to przesunięcia adresu w lewo o 4 miejsca
(PDF strona 16); w tej sytuacji opisywany w PDF "NAND address in block" jest równy 0x00 */
wBlockNum<<=5;
// przesuniecie dla TC58128
FLASH_ALE_CLR;
// zerowanie sygnału ALE
FLASH_CLE_SET;
// zerowanie sygnału CLE
FLASH_CE_CLR;
// wybór (załączenie) pamięci FLASH
FLASH_BASE = 0x60; // zapis instrukcji "erase setup"
FLASH_ALE_SET;
// ustawienie sygnału ALE
FLASH_CLE_CLR;
// zerowanie sygnału CLE
FLASH_BASE = (unsigned char)wBlockNum;
// zapis młodszego bajtu numeru bloku
FLASH_BASE = (unsigned char)(wBlockNum>>8);
// zapis starszego bajtu numeru bloku
FLASH_ALE_CLR;
// zerowanie sygnału ALE
FLASH_CLE_SET;
// zerowanie sygnału CLE
FLASH_BASE = 0xD0; // zapis polecenia "erase start"
FLASH_CLE_CLR;
// zerowanie sygnału CLE
WAIT_4_READY;
// oczekiwanie na gotowość pamięci NAND
FLASH_CLE_SET;
// ustawienie sygnału CLE
FLASH_BASE = 0x70; // zapis polecenia "status read"
FLASH_CLE_CLR;
// zerowanie sygnału CLE
status = FLASH_BASE;
// odczyt bajtu statusu
FLASH_CE_SET;
// wyłączenie pamięci FLASH poprzez ustawienie sygnału wyboru
if (status & 1) return (-2);
// jeśli ustawiony jest bit FAIL w słowie statusu, to
// funkcja zwraca błąd
return (0);
// w przeciwnym wypadku zwracane jest 0x00
}
Elektronika Praktyczna 11/2003
przyk³ad antyczne juø dziú CP/M czy DOS.
To moøe byÊ dosyÊ skomplikowane. Jeúli
jednak chcemy przechowywaÊ dane w†postaci rekordÛw adresowanych liniowo,
czy wreszcie duøych bitmap przechowywanych pod okreúlonym adresem - moøna to zrobiÊ szybko i†efektywnie.
PamiÍci - jak ³atwo zorientowaÊ siÍ
z†tab. 1†- zasilane s¹ napiÍciem od 2,7
do 3,6V. Taki wybÛr zakresu napiÍÊ zasilania podyktowany by³ przede wszystkim
przeznaczeniem pamiÍci do urz¹dzeÒ przenoúnych zasilanych z†baterii. W†przesz³oúci firma Toshiba produkowa³a rÛwnieø pamiÍci zasilane napiÍciem 5†V, jednak ich
produkcja zosta³a zaniechana. Detekcja poziomÛw logicznych jest zgodna ze standardem CMOS - tak wiÍc stan wysoki na
wejúciu czy wyjúciu pamiÍci to oko³o
95% wartoúci napiÍcia zasilaj¹cego (przeciÍtnie oko³o†3,1 V†dla Ucc=3,3 V), a†stan
niski to napiÍcie mniejsze niø 0,4 V.
Czasami pod³¹czaj¹c TC58 do systemu z†mikrokontrolerem naleøy zbudowaÊ
dekoder adresÛw i†umieúciÊ j¹ w†obszarze adresowym XDATA przydzielaj¹c jej
pewien, zaleøny od rozmiaru pamiÍci, zakres adresÛw. NiektÛre uk³ady mikrokontrolerÛw maj¹ dekoder adresowy wbudowany w†strukturÍ, dla innych trzeba go
wykonaÊ na uk³adach dyskretnych. Popularny mikrokontroler z†rodziny 8051/8052
moøe rÛwnieø wymagaÊ zastosowania dodatkowego rejestru zapamiÍtuj¹cego m³odsz¹ czÍúÊ adresu. Dodatkowego sterowania wymagaj¹ rÛwnieø wyprowadzenia pamiÍci takie jak: RE (Read Enable), WE
(Write Enable), CLE (Command Latch
Enable), ALE (Address Latch Enable)
i†RY/BY (Ready/Busy). Naleøy rÛwnieø
pamiÍtaÊ o†tym, øe pamiÍÊ nie moøe byÊ
zasilana napiÍciem wyøszym niø 3,6 V,
a†optymaln¹ wartoúci¹ jest 3,3 V. O†ile
w†przypadku mikrokontrolerÛw AVR nie
jest to problem, o†tyle dla uk³adÛw z†serii 8051 moøe nim byÊ. Uøywany we
wczeúniejszych przyk³adach programowania AT89S8252 ma minimalne dopuszczalne napiÍcie zasilaj¹ce 4†V, w†zwi¹zku
z†czym konieczny jest uk³ad translacji
poziomÛw napiÍÊ.
Na rys. 5 przedstawiono propozycjÍ
pod³¹czenia pamiÍci Flash TC58128-AFT
do mikrokontrolera Atmega8535. Jak widzimy, sprzÍtowy interfejs pamiÍci
TC58128 (128 Mb) nie nastrÍcza zbyt
wielu k³opotÛw przy wykonaniu. Szyna
danych pamiÍci jest multipleksowana
z†szyn¹ adresow¹. S³owo adresowe, wprowadzane jest w†3†ìporcjachî po 8†bitÛw.
S³owo danych ma d³ugoúÊ 8†bitÛw, toteø
8-bitowy AVR nie ma øadnego k³opotu
z†jego odczytem. Oba uk³ady (mikrokontroler i†pamiÍÊ Flash) zasilane s¹ z†napiÍcia 3,3 V. DziÍki temu nie jest konieczne wykonywanie translacji poziomÛw napiÍÊ logicznych.
W†projektowaniu i†implementacji interfejsu programowego pomaga uwaøna
lektura kart katalogowych. Struktura pamiÍci uøywanej w†przyk³adzie to 528 bajtÛw x†32 strony x†1024 bloki. PamiÍÊ posiada wewnÍtrzny rejestr statyczny
o†d³ugoúci 528 bajtÛw s³uø¹cy jako bufor
do wymiany danych podczas operacji zapisu/odczytu. Funkcja kasowania zosta³a
91
K U R S
Tab. 3. Wybrane pamięci Flash produkcji AMD (obecnie Spansion)
PojemnoϾ
Nazwa
Opis
Obudowa
16Mb
Am29LV160MT/B
48 FBGA, 64 Fortified BGA
16Mb
16Mb
Am29LV017M
Am29LV116M
32Mb
32Mb
Am29LV320MH/L
Am29LV320MT/B
32Mb
64Mb
64Mb
Am29LV033MU
Am29LV640MH/L
Am29LV640MT/B
64Mb
64Mb
64Mb
128Mb
256Mb
512Mb
Am29LV640MU
Am29LV641MH/L
Am29LV065MU
Am29LV128MH/L
Am29LV256MH/L
Am29LV512NH/L
z czêœci¹ Boot; magistrala danych x8 lub x16; organizacja 1x16kB, 2x8kB,
1x32kB, 15x64kB; 70, 90 i 120ns
16Mb, magistrala danych x8; jednolity blok; 70, 90 i 120ns
z czêœci¹ Boot; magistrala danych x8 lub x16; organizacja 1x16kB, 2x8kB,
1x32kB, 15x64kB; 70, 90 i 120ns
64kB, magistrala danych x8 lub x16; jednolity blok; 90, 100, 110 i 120ns
z czêœci¹ Boot; magistrala danych x8 lub x16; organizacja 64kB (boot 2x8kB
na "górze" i "dole" przestrzeni adresowej); 90, 100, 110 i 120ns
64kB, magistrala danych x8 lub x16; jednolity blok; 90, 100, 110 i 120ns
64kB, magistrala danych x8 lub x16; jednolity blok; 90, 100, 110 i 120ns
z czêœci¹ Boot; magistrala danych x8 lub x16; organizacja 64kB (boot 2x8kB
na "górze" i "dole" przestrzeni adresowej); 90, 100, 110 i 120ns
32kWord, x16; jednolity blok; 90, 100, 110 i 120ns
32kWord, x16; jednolity blok; 90, 100, 110 i 120ns
64kB, x8; jednolity blok; 90, 100, 110 i 120ns
64kB, magistrala danych x8 lub x16; jednolity blok; 90, 100, 110 i 120ns
64kB, magistrala danych x8 lub x16; jednolity blok; 90, 100, 110 i 120ns
128kB, magistrala danych x8 lub x16; jednolity blok; 90, 100, 110 i 120ns
zaimplementowana dla pojedynczego bloku (528 bajtÛw x†32 strony). Tutaj s³owo
wyjaúnienia. KomÛrka pamiÍci Flash
przed zapisem wymaga, aby wszystkie bity s³owa lub co najmniej te, ktÛre maj¹
mieÊ po zapisie wartoúÊ logiczn¹ ì1î,
by³y ustawione. W†tym celu kaøda z†pamiÍci Flash ma zaimplementowan¹ funkcjÍ sprzÍtowego kasowania, najczÍúciej
bloku lub strony, powoduj¹c¹ ustawienie
wszystkich bitÛw w†zadanym obszarze na
wartoúÊ ì1î. PamiÍtajmy - operacja zapisu musi byÊ poprzedzona kasowaniem!
Kaøda z†pamiÍci TC58 posiada wbudowany w†strukturÍ kontroler zdolny do
interpretacji i†wykonywania prostych rozkazÛw. On jest odpowiedzialny za kasowanie bloku oraz za w³aúciw¹ interpretacjÍ wprowadzanego bloku danych. Lista
realizowanych poleceÒ nie jest zbyt obszerna, jednak do pe³nego zrozumienia
wymaga lektury sekwencji czasowych.
Nie umieszczÍ ich w†tym artykule ze
wzglÍdu na szczup³oúÊ miejsca - proponujÍ siÍgn¹Ê do karty katalogowej.
W†tab. 2 znajduje siÍ uproszczony
wykaz dostÍpnych rozkazÛw. Przyk³adow¹
implementacjÍ interfejsu programowego
do obs³ugi pamiÍci Flash typu TC58128
w†jÍzyku C†zawiera list. 5.
Perspektywy
Znaj¹c tempo rozwoju pamiÍci Flash
s¹dzÍ, øe od momentu napisania do ukazania siÍ tego artyku³u, pojawi¹ siÍ na
rynku nowe produkty, a†pewne informacje stan¹ siÍ nieaktualne. Moim zdaniem,
pamiÍci Flash zast¹pi¹ dyski twarde
w†komputerach PC. Pierwsze produkty tego typu moøna juø kupiÊ w†sklepach,
jednak dyski Flash o†duøej pojemnoúci s¹
ci¹gle zbyt drogie w†porÛwnaniu z†ich
Tab. 4. Wybrane pamięci Flash produkcji firmy STM
PojemnoϾ
Nazwa
Opis
Obudowa
16Mb
32Mb
64Mb
M29KW016E
M29KW032E
M29KW064E
16Mb (x16), 90ns, jednolity blok
32Mb (x16), 90ns, jednolity blok
32Mb (x16), 90ns, jednolity blok
TSOP48, SO44, TFBGA48
TSOP48, TFBGA48
TSOP48, TFBGA48
92
48 FBGA, 40 TSOP/RTSOP
40 TSOP/RTSOP 26008
64 Fortified BGA, 56 TSOP/RTSOP
48 FBGA, 64 Fortified BGA, 48 TSOP
48 FBGA, 40 TSOP/RTSOP
Fortified BGA, 56 TSOP/RTSOP
48 FBGA, 64 Fortified BGA,48 TSOP
63 FBGA, 64 Fortified BGA
48 TSOP/RTSOP
63 FBGA, 48 TSOP/RTSOP
64 Fortified BGA, 56 TSOP/RTSOP
64 Fortified BGA, 56 TSOP/RTSOP
64 Fortified BGA, 56 TSOP/RTSOP
tradycyjnymi odpowiednikami. S¹dzÍ, øe
to jednak tylko kwestia czasu i†opracowania odpowiednio tanich technologii.
Ogromne zapotrzebowanie na pamiÍci typu Flash jest powodem, dla†ktÛrego stale
s¹ one udoskonalane. Nie mam tu na
myúli bynajmniej tylko komputerÛw PC,
ale rÛwnieø rÛøne nowoczesne ìzabawkiî:
telefony komÛrkowe, komputery typu PalmTop, kamery wideo i†cyfrowe aparaty
fotograficzne oraz wiele, wiele innych.
Wystarczy przejrzeÊ strony internetowe
czy katalogi producentÛw podzespo³Ûw.
Na przyk³ad firma AMD (obecnie Spansion) wprowadzi³a†ofertÍ podzespo³Ûw
pod wspÛln¹ nazw¹ MirrorBit. Moøna
w†niej znaleüÊ pamiÍci Flash zasilane napiÍciem od 1,8 do 5†V†o†pojemnoúciach
od 16†do 256 Mb (tab. 3).
Firma STM wprowadzi³a liniÍ produktÛw pod wspÛln¹ nazw¹ LightFlash
(tab. 4). Podobne dzia³ania prowadz¹
rÛwnieø inni producenci, jak na przyk³ad
Winbond, Atmel czy Renesas - przeúcigaj¹c siÍ w†miniaturyzacji cel oraz liczbie
cykli zapisu/odczytu. Przysz³oúÊ pamiÍci
Flash zapowiada siÍ bardzo ciekawie.
Jacek Bogusz, AVT
[email protected]
Elektronika Praktyczna 11/2003
K U R S
Logika odwracalna
Przełom w technice cyfrowej?
Efektem ubocznym dzia³ania
wszystkich urz¹dzeÒ elektronicznych jest zamiana zasilaj¹cej je
energii elektrycznej na ciep³o.
Musi byÊ ono nieustannie odprowadzane, aby nie dopuúciÊ do
przekroczenia maksymalnej dozwolonej temperatury pracy uk³adu i†- w†konsekwencji - jego
uszkodzenia. IloúÊ ciep³a wytwarzanego przez uk³ad zaleøy od
liczby elementÛw wchodz¹cych
w†jego sk³ad oraz od czÍstotliwoúci zegara ustalaj¹cego rytm
pracy uk³adu. Fakt ten jest dobrze znany wszystkim w³aúcicielom
szybkich procesorÛw oraz zaawansowanych kart graficznych - do
poprawnego dzia³ania zazwyczaj
wymagaj¹ one bardzo wydajnych
systemÛw ch³odzenia.
W†latach szeúÊdziesi¹tych
ubieg³ego wieku Gordon Moore zauwaøy³, øe wraz z†rozwojem technologii wytwarzania uk³adÛw scalonych liczba tranzystorÛw moøliwych do wykonania na ustalonej
powierzchni kryszta³u pÛ³przewodnika podwaja siÍ úrednio co 18
miesiÍcy. Obserwacja ta nie ma
oczywiúcie rangi prawa fizyki,
lecz duøa zgodnoúÊ jej przewidywaÒ z†rzeczywistym stopniem zaawansowania technologii pÛ³przewodnikÛw uczyni³a†z†niej bardzo
wygodne narzÍdzie do szacowania
Elektronika Praktyczna 11/2003
z³oøonoúci przysz³ych uk³adÛw
scalonych. Na czeúÊ odkrywcy zaleønoúÊ tÍ nazwano prawem Moore'a.
Nieustanne d¹øenie do zwiÍkszania czÍstotliwoúci taktowania
oraz prawo Moore'a
prowadz¹ do wniosku,
øe iloúÊ ciep³a wytwarzanego przez przysz³e uk³ady scalone bÍdzie ros³a
wraz z†rozwojem
techniki.
Naukowcy i†inøynierowie rozpoczÍli
wiÍc intensywne badania maj¹ce na celu opracowanie nowych sposobÛw
odprowadzania ciep³a. Na podstawie znacz¹cych osi¹gniÍÊ na tym
polu oraz ci¹g³ego spadku zapotrzebowania na energiÍ wymagan¹
do dzia³ania pojedynczego
tranzystora, bÍd¹cego efektem postÍpuj¹cej miniaturyzacji, s¹dzono,
øe w†przysz³oúci produkcja ciep³a
bÍdzie mog³a zostaÊ ograniczona
w†dowolnym stopniu, co pozwoli
unikn¹Ê powaønych problemÛw
z†ch³odzeniem struktury uk³adu
scalonego.
Ograniczenia termodynamiczne
Przekonanie to uleg³o zmianie
po opublikowaniu przez Rolfa
Landauera z†centrum badawczego
IBM im. Watsona wynikÛw badaÒ
nad fizyczn¹ stron¹ procesu przetwarzania informacji. Sta³o siÍ jasne, øe straty spowodowane niedoskona³oúci¹ budowy uk³adu scalonego nie s¹ jedynym ürÛd³em
ciep³a. Drugim jego ürÛd³em okaza³ siÍ byÊ proces kasowania informacji. Entropia informacyjna
Shannona:
uk³adu mog¹cego znajdowaÊ siÍ
rozrÛønialnych
w†jednym
stanÛw, gdzie pi jest prawdopodobieÒstwem znalezienia uk³adu
w†stanie o†numerze i, jest zwi¹za-
Prezentowany artyku³, jak
na dotychczasow¹ praktykÍ
EP, jest nietypowy: autor
porusza w†nim bowiem
wy³¹cznie zagadnienia
teoretyczne (ach te wzory).
Nie da siÍ jednak inaczej,
poniewaø uk³ady, o†ktÛrych
piszemy, poza kilkoma
akademickimi opracowaniami,
jeszcze nie istniej¹...
W†artykule przedstawiono
ograniczenia fizyczne
zwi¹zane z†wykonywaniem
obliczeÒ maszynowych oraz
wprowadzenie do obliczeÒ
odwracalnych - metody
umoøliwiaj¹cej rozwi¹zanie
problemu produkcji ciep³a
przez uk³ady elektroniczne.
Przedstawiono rÛwnieø
praktyczn¹ realizacjÍ tej
techniki na przyk³adzie
doúwiadczalnego procesora
Pendulum.
na z†entropi¹ termodynamiczn¹
Gibbsa wzorem:
gdzie kB=1,380*10-23 [J/K] jest sta³¹ Boltzmanna.
Definicja temperatury bezwzglÍdnej T†wi¹øe zmiany entropii uk³adu ∆G ze zmianami zawartej w†nim energii cieplnej ∆Q
wzorem:
St¹d w†procesach izotermicznych dostarczenie ciep³a do uk³adu powoduje zwiÍkszenie jego entropii. Istotnie, rozwaømy urz¹dze-
85
K U R S
nie s³uø¹ce do przechowywania
jednego bitu, a†wiÍc uk³ad mog¹cy znajdowaÊ siÍ tylko w†jednym
z†dwÛch rozrÛønialnych stanÛw
w†danym momencie. Poniewaø nie
wiemy niczego o†pocz¹tkowym stanie uk³adu, to prawdopodobieÒstwo p0, øe znajduje siÍ on w†pierwszym stanie, jest rÛwne prawdopodobieÒstwu p1, øe znajduje siÍ
on w†stanie drugim, a†wiÍc
p0 =p1 =0,5. Entropia informacyjna
tego uk³adu wynosi:
Przeniesienie systemu do nowego stanu oznacza, øe prawdopodobieÒstwo znalezienia go w†ø¹danym stanie wynosi 1, a†prawdopodobieÒstwo zajmowania przez
uk³ad stanu przeciwnego jest rÛwne 0. Entropia uk³adu wynosi
wÛwczas:
Zmiana entropii termodynamicznej wynosi wiÍc:
wiÍcej, niø teoretyczne minimum
wynikaj¹ce z†zasady Landauera.
WartoúÊ ta jest duøa, lecz bÍdzie
ona szybko maleÊ wraz z†rozwojem technologii pÛ³przewodnikÛw.
Oszacowania wynikaj¹ce z†analizy
szybkoúci spadku zuøycia energii
przez bramki na przestrzeni ostatnich lat wskazuj¹, øe granica Landauera zostanie osi¹gniÍta w†czasie krÛtszym niø 35 lat. Z†tego
powodu w†wielu oúrodkach akademickich i†przemys³owych rozpoczÍto badania zmierzaj¹ce do opracowania technik umoøliwiaj¹cych
pokonanie ograniczeÒ termodynamicznych.
Obliczenia odwracalne
Fundamentalna natura nowo
odkrytych ograniczeÒ uniemoøliwi³a ich bezpoúrednie pokonanie za
pomoc¹ udoskonalenia technologii
wytwarzania uk³adÛw scalonych.
Ewentualny prze³om mÛg³ nast¹piÊ
jedynie na drodze zmian w†samym sposobie prowadzenia obliczeÒ.
Jedn¹ z†takich alternatyw bada³
w†1973 roku Charles Bennett, rÛwnieø pracuj¹cy w†IBM. Na podstawie zasady Landauera doszed³ on
do wniosku, øe†skoro emisja ciep³a jest nieod³¹cznym skutkiem
procesu kasowania informacji, to
obliczenia naleøy prowadziÊ tak,
by ca³a przetwarzana informacja
zosta³a zachowana. Pomys³ ten zaowocowa³ powstaniem nowego
sposobu przetwarzania informacji,
nazwanego obliczeniami odwracalnymi.
Zgodnie z†jej definicj¹ argumentem moøe byÊ dowolny element zbioru {(0,0),(0,1),(1,0),(1,1)}.
Nie zak³adamy niczego na temat
roli pe³nionej przez tÍ bramkÍ
w†uk³adzie, a†wiÍc musimy przyj¹Ê, øe kaødy z†argumentÛw funkcji jest jednakowo prawdopodobny:
Przed wykonaniem
uk³ad ma entropiÍ:
operacji
Przeciwdziedzin¹ funkcji jest
zbiÛr {0,1}, przy czym wartoúÊ
1†jest osi¹gana tylko dla argumentu (1,1), wiÍc prawdopodobieÒstwa
przyjÍcia okreúlonego wyniku wynosz¹ odpowiednio p0= 3/4 i†p1=1/4.
Entropia uk³adu po wykonaniu
operacji to:
a†wiÍc straciliúmy Sprzed-Spo bitÛw informacji. Zgodnie z†zasad¹
Landauera oznacza to, øe podczas
obliczania funkcji musia³o dojúÊ
do rozproszenia energii w†postaci
Z†definicji temperatury wyznaciep³a. NierÛønowartoúciowoúÊ nczamy ciep³o poch³oniÍte przez
argumentowych (dla n†> 1) funuk³ad:
wykcji logicznych
nika wprost ze zbyt ma³ej liczby
elementÛw przeciwdziedziny jest oczywiste, øe nie moøna
czyli kB*T*ln 2 døuli energii zoprzyporz¹dkowaÊ kaødemu elesta³o wydzielone do otoczenia
mentowi zbioru 2 n -elementowego
w†postaci ciep³a. Obserwacja ta
innego elementu zbioru dwuelenosi nazwÍ zasady Landauera
mentowego.
i†okreúla dolne ograniWynika st¹d wniosek,
Entropia...
czenie iloúci ciep³a,
øe wynik odwracalnych
ktÛre naleøy rozproszyÊ
funkcji odtwarzaj¹cych n...informacyjna − nieokreśloność źródła,
podczas kasowania jed- z którego są dostarczane (wysyłane) wiadomości.
argumentowe operacje lonego bitu informacji.
giczne bÍdzie krotk¹
...termodynamiczna − funkcja stanu oznaczająca
W†powszechnie sposk³adaj¹c¹ siÍ nie z†jedmiarę stopnia nieuporządkowania określonego
tykanych zakresach temnego, lecz co najmniej n
układu fizycznego, wynikająca z drugiej zasady
peratur pracy uk³adÛw
bitÛw. W†ogÛlnym przytermodynamiki.
scalonych jest to niepadku bÍd¹ to wiÍc funzwykle ma³a energia,
kcje wektorowe.
np. w†temperaturze T=333 [K]
Praktyczna przydatnoúÊ funkcji
Dwuargumentowe operacje lo(60o†Celsjusza) wynosi ona:
odwracalnych zaleøy bezpoúrednio
giczne maj¹ce kluczowe znaczenie
od liczby uk³adÛw cyfrowych, ktÛdla techniki cyfrowej nie s¹ niere moøna zrealizowaÊ w†oparciu
stety funkcjami rÛønowartoúciowyo†nie. Sprawdümy wiÍc jak wiele
mi, przez co nie mog¹ byÊ one
Dla porÛwnania [3], uk³ady rodaje siÍ policzyÊ w†sposÛb odwraodwracalne - podczas wykonywadziny G12 firmy LSI Logic, wykocalny.
nia obliczeÒ wystÍpuje utrata
nane w†technologii CMOS 0,13µm
Z†logiki matematycznej wiadoprzetwarzanej informacji. Dla przyw†wersji zasilanej napiÍciem
mo, øe wszystkie jedno- i†dwuark³adu rozwaømy funkcjÍ:
1†V†zuøywaj¹ úrednio 7,1*10-15 [J]
gumentowe funkcje logiczne moøna zmianÍ stanu pojedynczej
na wyraziÊ za pomoc¹ operacji
bramki. Jest to oko³o 2,3*106 raza
NAND albo NOR (w przyk³adzie
86
Elektronika Praktyczna 11/2003
K U R S
Rys. 1. Bramka CN
pokazano rekonstrukcjÍ funkcji
maj¹cych najwaøniejsze znaczenie
dla techniki cyfrowej):
nych. Toffoli zmodyfikowa³ wiÍc
bramkÍ CN dodaj¹c do niej kolejn¹ liniÍ steruj¹c¹, uzyskuj¹c pokazan¹ na rys. 2. bramkÍ CCN
(od controlled controlled NOT).
Stany wejúÊ steruj¹cych C 1
oraz C 2 s¹ przenoszone przez
bramkÍ bez zmian na odpowiadaj¹ce im wyjúcia C1' i†C2', a†wzÛr
opisuj¹cy dzia³anie inwertera ma
postaÊ:
Rys. 3. Realizacja funkcji NAND
za pomocą bramki CCN
Bramka CCN umoøliwia wykonanie operacji NAND (rys. 3),
a†wiÍc moøna za jej pomoc¹ obliczyÊ dowoln¹ jedno- albo dwuargumentow¹ funkcjÍ logiczn¹. Wynika st¹d, øe za pomoc¹ bramek
odwracalnych da siÍ odtworzyÊ
dowolny uk³ad kombinacyjny.
Rys. 4. Bramka Fredkina
W†roku 1925 E. ØyliÒski udowodni³, øe NAND oraz NOR to
jedyne funkcje maj¹ce tÍ w³asw†sposÛb odwracalny, a†wiÍc teonoúÊ. Wynika st¹d, øe dowolny
retycznie bez rozpraszania ciep³a
cyfrowy uk³ad kombinacyjny moødo otoczenia. W†przypadku barna zbudowaÊ za pomoc¹ jakichdziej z³oøonych obliczeÒ, np. zakolwiek bramek odwrawieraj¹cych pÍtle o†ciele
Funkcja f jest odwracalna, jeśli dla każdego
calnych wtedy i†tylko
wykonywanym nieznan¹
można jednoznacznie odtworzyć
wtedy, gdy da siÍ
w†momencie kompilacji
z†nich zbudowaÊ bramkÍ odpowiadającą mu wartość argumentu . Dzięki
liczbÍ razy, z³oøenie bratej własności informacja zawarta w argumencie
NAND (albo NOR).
mek odwracalnych nie
może zostać odzyskana, a więc podczas
Historycznie najstardaje siÍ niestety bezpoobliczania funkcji f nie zachodzi utrata
szym i†najprostszym rozúrednio zastosowaÊ. Koinformacji i związana z tym emisja ciepła −
wi¹zaniem umoøliwiaj¹nieczne staje siÍ wiÍc
obliczenia takie mogą być więc wykonywane
cym zbudowanie odwrawprowadzenie odwracalprzy dowolnie małym zużyciu energii. Łatwo
calnego urz¹dzenia licz¹noúci rÛwnieø na poziosprawdzić, że warunkiem koniecznym i dosta−
cego jest pokazana na
mie samego algorytmu
tecznym odwracalności funkcji f jest jej
rys. 1 bramka Toffolies³uø¹cego do obliczania
różnowartościowość [1].
go. Sk³ada siÍ ona z†liinteresuj¹cej nas funkcji.
nii steruj¹cej stanem inOdwracalnoúÊ dowolnego
jest różnowartościowa, jeśli dla
Funkcja
wertera C-C', wejúcia x
elementarnego kroku alróżnych argumentów przyjmuje różne wartości.
oraz wyjúcia x'. Stan
gorytmu nazywa siÍ odKolejnym rozwi¹zaniem umoølipanuj¹cy na wyprowadzeniu C
wracalnoúci¹ lokaln¹, w†odrÛøniewiaj¹cym przeprowadzenie dowoljest przekazywany bez zmian na
niu od globalnej odwracalnoúci canych obliczeÒ w†sposÛb odwracalwyprowadzenie C'. Stan wyjúcia
³ego algorytmu. Pos³uguj¹c siÍ inny jest bramka Fredkina (rys. 4).
jest dany nastÍpuj¹cym wzorem:
dukcj¹ matematyczn¹ moøna udoMa ona dwa wejúcia: x i†y, wyjwodniÊ, øe algorytm jest globalnie
úcia x' i†y' oraz liniÍ steruj¹c¹ Codwracalny wtedy i†tylko wtedy,
C'. Podobnie jak w†przypadku bragdy kaødy jego krok ma w³asnoúÊ
Uk³ad ten pe³ni wiÍc rolÍ stemek Toffoliego, stan wejúcia steodwracalnoúci lokalnej.
rowanego inwertera i†z†tego poworuj¹cego C jest przekazywany bez
G³Ûwnymi cechami odrÛøniaj¹du nosi nazwÍ bramki CN (od
zmian na wyjúcie C'. Stany wyjúÊ
cymi algorytmy odwracalne od
controlled NOT). Pod wzglÍdem
s¹ okreúlone zaleønoúci¹:
nieodwracalnych jest sposÛb profunkcjonalnym odpowiada on
wadzenia obliczeÒ oraz zapotrzebramce XOR. Zgodnie z†dowodem
bowanie na pamiÍÊ operacyjn¹.
ØyliÒskiego bramka CN nie wyPierwszy etap dzia³ania algoryta†wiÍc bramka Fredkina pe³ni rostarcza do odtworzenia wszystkich
mu odwracalnego jest taki sam, jak
lÍ prze³¹cznika sterowanego stadwuargumentowych funkcji logiczw†przypadku metod klasycznych:
nem linii C.
dane dostarczone przez uøytkowniBramka Fredkina rÛwnieø
ka s¹ w†odpowiedni sposÛb przeumoøliwia obliczenie funkcji
NAND, lecz realizuj¹cy j¹ uk³ad
(rys. 5) jest bardziej skomplikowany, niø w†przypadku implementacji wykorzystuj¹cej bramkÍ CCN.
Powyøsze przyk³ady pokaza³y,
øe jest moøliwe obliczenie prosRys. 5. Realizacja funkcji NAND
tych funkcji nieodwracalnych
Rys. 2. Bramka CCN
za pomocą bramek Fredkina
Elektronika Praktyczna 11/2003
87
K U R S
przez zaprojektowanie odwracalnego zbioru instrukcji, wykonywanych przez odwracalny uk³ad
sprzÍtowy. DziÍki temu kierunek
przep³ywu sterowania moøe zostaÊ
zmieniony na dowolnym etapie
dzia³ania programu - wÛwczas
procesor rozpocznie proces przekszta³cania wyniku na dane wejúciowe.
Korzystnym efektem ubocznym
moøliwoúci cofania biegu programu o†dowoln¹ liczbÍ krokÛw jest
znaczne u³atwienie wyszukiwania
b³ÍdÛw†w†jego kodzie, co jest barFot. 6. Pendulum − pierwszy
dzo istotne dla twÛrcÛw oprograprocesor wykonany na bazie
mowania.
logiki odwracalnej
OprÛcz wykorzystania obliczeÒ
odwracalnych w†klasyczPendulum − fakty
kszta³cane na wynik. Po
nych technikach przetwaMikroprocesor Pendulum składa się z 200000
jego uzyskaniu procedurzania informacji pe³ni¹
ra nieodwracalna nie- tranzystorów, ma 180 wyprowadzeń (w tym 32
one kluczow¹ rolÍ w†obsłużą do doprowadzenia zasilania do struktury)
zw³ocznie koÒczy dzia³aliczeniach kwantowych.
i może być programowany za pomocą 18
nie. Dzia³anie algorytmu
Ewolucja uk³adu bitÛw
instrukcji. Jednostka sterująca Pendulum
odwracalnego jest inne.
kwantowych jest okreúloobsługuje 74−stopniowy potok przyspieszający
Uzyskany wynik jest kona przez operatory uniobliczenia.
piowany do úrodowiska
tarne maj¹ce w³asnoúÊ
zewnÍtrznego i†przekazylokalnej odwracalnoúci,
wany uøytkownikowi, po czym nadziÍki czemu jest ona odwracalna
oznacza jednak wyk³adnicze
stÍpuje odwrÛcenie kierunku przeglobalnie.
(w†najgorszym przypadku) wyd³up³ywu sterowania i†algorytm jest
Piotr Wyderski
øenie czasu obliczeÒ, co zwykle
wykonywany wstecz, przekszta³cajest nieakceptowalne. Znaczenie
j¹c wynik z†powrotem na dane
Bibliografia:
praktyczne tego wyniku jest wiÍc
1. Rasiowa H., WstÍp do matematyki
wejúciowe.
niewielkie.
wspÛ³czesnej, PWN, Warszawa, 1998
Po zakoÒczeniu tego procesu
Zastosowania praktyczne
2. Smith W. D., Fundamental physiprogram oraz maszyna znajduj¹
Pierwsze prÛby zbudowania
cal limits on computation, http://
siÍ w†tym samym stanie, w†ktÛciteseer.nj.nec.com/smith95fundadoúwiadczalnych uk³adÛw scalorym by³y one przed rozpoczÍmental.html
nych realizuj¹cych obliczenia odciem obliczeÒ. PrzywrÛcenie sta3. Smith W. D., Notes on reversible
wracalne podjÍto w†latach 1995nu pocz¹tkowego oznacza, øe cacomputation, http://citeseer.nj.nec.1999 w†Massachusetts Institute of
³a przekszta³cana informacja zocom/smith98notes.html
Technology. ZespÛ³ naukowcÛw
sta³a zachowana, a†wiÍc oblicze4. Li M., Vitanyi P., Reversibility and
pracuj¹cy pod kierunkiem Minia mog³y zostaÊ przeprowadzoadiabatic computation: trading time
chaela P. Franka zaprojektowa³
ne bez wydzielenia ciep³a do
and space for energy, http://citem.in. pierwszy odwracalny mikrootoczenia.
seer.nj.nec.com/li96reversibility.html
procesor RISC, ktÛremu nadano
PowtÛrne wykorzystanie zaso5. Lange K., McKenzie P., Tapp A.,
nazwÍ Pendulum (wahad³o).
bÛw sprzÍtowych procesora odwraReversible space equals determiUk³ad ten wykonano w†technolocalnego, bÍd¹ce niezbÍdnym wanistic space, http://citeseer.nj.nec.gii SCRL (Split-level Charge Rerunkiem moøliwoúci jego praktyczcom/lange98reversible.html
covery Logic - przedstawimy j¹
nego zastosowania, wymusza zapa6. Abramsky S., A†structural apw†jednym z†najbliøszych numerÛw
miÍtanie informacji potrzebnej do
proach to reversible computation,
- Red.).
odwrÛcenia obliczeÒ. Z†tego powohttp://citeseer.nj.nec.com/abramsWymaganie pe³nej odwracalnoúdu algorytmy odwracalne wymagaky01structural.html
ci obliczeÒ zosta³o spe³nione poj¹ dodatkowej porcji pamiÍci operacyjnej na przechowywanie wynikÛw poúrednich. Rozmiar tej pamiÍci zaleøy od liczby t wykonanych krokÛw elementarnych. Intuicja podpowiada, øe zaleønoúÊ ta
powinna byÊ ograniczona od do³u
przez funkcjÍ liniow¹ wzglÍdem t,
lecz szczegÛ³owe badania teoretyczne [4, 5] obniøy³y†to oszacowanie do Ω(log t). Zachodzi przy
tym ciekawy zwi¹zek miÍdzy czasem potrzebnym na wykonanie obliczeÒ oraz zuøyciem pamiÍci im mniej dodatkowej pamiÍci jesteúmy sk³onni przeznaczyÊ, tym
d³uøej musz¹ potrwaʆobliczenia.
Osi¹gniÍcie teoretycznego minimum zapotrzebowania na pamiÍÊ
88
Elektronika Praktyczna 11/2003
M I N I P R O J E K T Y
Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość ich praktycznej realizacji.
Zmontowanie układu nie zabiera zwykle więcej niż dwa, trzy kwadranse, a można go uruchomić w ciągu
kilkunastu minut. Układy z “Miniprojektów” mogą być skomplikowane funkcjonalnie, lecz łatwe w montażu
i uruchamianiu, gdyż ich złożoność i inteligencja jest zawarta w układach scalonych. Wszystkie układy
opisywane w tym dziale są wykonywane i badane w laboratorium AVT. Większość z nich znajduje się
w ofercie kitów AVT, w wyodrębnionej serii “Miniprojekty” o numeracji zaczynającej się od 1000.
Czujnik zatarcia wentylatora
Wiele urz¹dzeÒ ma
wbudowane wentylatory,
ktÛre zapewniaj¹
wymuszony obieg
powietrza. DziÍki temu
moøna w†urz¹dzeniu
zastosowaÊ niewielki
radiator, ktÛry
wspomagany
wentylatorem moøe mieÊ
znacznie mniejsze
wymiary w†porÛwnaniu
z potrzebnym
odpowiednikiem bez
wentylatora.
Rekomendacje: ³atwe
w†wykonaniu
urz¹dzenie
umoøliwiaj¹ce wykrycie
zatarcia silnika
wentylatora, ³atwe do
zastosowania m.in.
w†komputerach PC czy
teø sprzÍcie audio.
Proponowany uk³ad czujnika zatarcia wentylatora jest
idealnym monitorem poprawnej pracy wentylatora. Jako
czujnik zastosowany zosta³
specjalizowany uk³ad TC670
firmy Microchip. Jedn¹ z†zalet tego uk³adu jest to, øe nie
mierzy on wartoúci pr¹du pobieranego przez wentylator,
jak jest to w†prostych uk³adach, lecz prÍdkoúÊ obrotow¹
wentylatora - dok³adniej: czÍstotliwoúÊ impulsÛw pr¹dowych. Badanie wartoúci impulsÛw pr¹dowych, jak jest
w†prostych uk³adach, nie daje
prawid³owej informacji o†pracy wentylatora, gdyø wzrost
natÍøenia pobieranego pr¹du
nie zawsze úwiadczy o†spadku wydajnoúÊ wentylatora.
Impulsy pr¹dowe (powsta³e w†wyniku obracania siÍ
wirnika) s¹ przetwarzane na
napiÍcie i†nastÍpnie podawane na wewnÍtrzny komparator uk³adu TC670, ktÛrego
stan wyjúcia zmienia siÍ na
wysoki, jeøeli napiÍcie na wejúciu nieodwracaj¹cym przekroczy 124 mV. Impulsy na
wyjúciu komparatora, propor-
cjonalne do prÍdkoúci obrotowej wentylatora, s¹ przetwarzane na napiÍcie i†porÛwnywane z†napiÍciem na wejúciu
THRESHOLD. Spadek napiÍcia poniøej zadanego progu
powoduje ustawienie linii /
ALERT w†stan niski, ktÛry
úwiadczy o†spadku wydajnoúci wentylatora. Linia CLEAR
umoøliwia zerowanie powsta³ego alarmu. Schemat elektryczny czujnika zatarcia pokazano na rys. 1. Uk³ad zosta³
dodatkowo
wyposaøony
w†elementy zeruj¹ce i†sygnalizuj¹ce zaistnienie alarmu.
Aby po w³¹czeniu wentylatora, kiedy impulsy pr¹dowe
maj¹ ma³¹ czÍstotliwoúÊ na
wyprowadzeniu 5†U1 nie po-
Rys. 1. Schemat elektryczny
Rys. 2. Rozmieszczenie elementów na płytce
drukowanej
Elektronika Praktyczna 11/2003
jawia³ siÍ stan niski powoduj¹cy alarm, wprowadzone zosta³o opÛünienie, ktÛre przed³uøa stan zerowania uk³adu
U1. Za przed³uøenie impulsu
zeruj¹cego s¹ odpowiedzialne
elementy R6, C7 oraz U2D.
Dodatkowy przycisk S1 umoøliwia rÍczne wyzerowanie
alarmu. Rezystor R9 jest konwerterem pr¹du na napiÍcie.
Impulsy napiÍciowe na tym
elemencie s¹ proporcjonalne
do impulsÛw pr¹du. Pr¹d pobierany przez wentylator nie
ma charakteru sta³ego, lecz
impulsowy. NapiÍcie z†R9
przez C8 podawane jest na
wewnÍtrzny komparator U1.
Jeøeli napiÍcie z†przetwornika f/U stadnie poniøej napiÍcia zadanego przez P1, na wyprowadzeniu 5†pojawi siÍ stan
niski úwiadcz¹cy o†z³ej (niewystarczaj¹cej) wydajnoúci
wentylatora. Alarm pojawi siÍ
takøe przy zatrzymaniu (zatarciu) wentylatora, kiedy to
impulsy pr¹dowe nie bÍd¹ po-
WYKAZ ELEMENTÓW
Rezystory
R1, R2: 10kΩ
R3: 470Ω
R4: 6,8MΩ
R5: 1MΩ
R6...R8: 47kΩ
R9(*): 2,7Ω 0,5...1W
P1: heltrim 47kΩ
Kondensatory
C1, C4, C8: 100nF
C2, C3, C7: 47µF/16V
C5: 1µF stały
C6: 330nF
Półprzewodniki
U1: TC670
U2: 4093
U3: 78L05
T1, T2: BC558
D1: LED 5mm czerwona
Różne
Z1, Z2: złącza ARK2
S1: przycisk typu “RESET”
Q1: piezo z generatorem
P³ytka drukowana jest dostÍpna
w AVT - oznaczenie AVT-1384.
Wzory p³ytek drukowanych
w formacie PDF s¹ dostÍpne
w Internecie pod adresem:
pcb.ep.com.pl oraz na p³ycie CDEP11/2003B w katalogu PCB.
79
M I N I P R O J E K T Y
dawane na wejúcie U1. Pojawienie siÍ alarmu (stanu niskiego na U1) w³¹cza generator
U2B, ktÛry sterujÍ przez T1
diod¹ sygnalizacyjn¹ LED,
oraz przez U2A i†T2 brzÍczykiem piezo.
Na rys. 2 przedstawiono
schemat montaøowy p³ytki
drukowanej. Naleøy zachowaÊ
duø¹ ostroønoúÊ podczas montaøu uk³adu U1, ktÛry jest dostarczany w†obudowie SMD.
Uk³ad ten naleøy jako jedyny
zamontowaÊ od strony úcieøek. Po zmontowaniu czujnik
wymaga prostej regulacji, ktÛr¹ naleøy dokonaÊ potencjometrem P1. RegulacjÍ czujnika najlepiej jest wykonaÊ
dwuetapowo. W†pierwszej kolejnoúci potencjometrem P1
naleøy znaleüÊ prÛg, kiedy
w³¹cza siÍ alarm. Mierz¹c napiÍcie na wyprowadzeniu
1†U1 otrzymamy napiÍcie, ja-
kie wystÍpuje przy pe³nej
prÍdkoúci obrotowej wentylatora. NastÍpnie na wyprowadzeniu 1†U1 naleøy ustawiÊ
30% napiÍcia poprzednio
zmierzonego. Czyli, jeøeli
zmierzone napiÍcie dla maksymalnej prÍdkoúci obrotowej wentylatora wyniesie 1,5
V, to naleøy ustawiÊ napiÍcie rÛwne 0,45 V. Wspomnienia wymaga jeszcze dobÛr rezystora pomiarowego R9. Po-
winien on byÊ dobrany wed³ug pr¹du nominalnego zastosowanego wentylatora.
Rezystor ma mieÊ tak¹ wartoúÊ, by dla danego pr¹du nominalnego wentylatora spadek napiÍcia na nim mia³
wartoúÊ 500 mV. Dla pr¹du
nominalnego wentylatora 200
mA wartoúÊ rezystora R9 powinna wynosiÊ 2,4 Ω.
Marcin Wi¹zania, EP
[email protected]
Programator kartridży do drukarek Epson
Miesi¹c temu
w†Miniprojektach
przedstawiliúmy program,
za pomoc¹ ktÛrego moøna
modyfikowaÊ zawartoúci
licznikÛw w†kartridøach
drukarkowych. Korzystanie
z†tego programu jest
moøliwe w†przypadku
wiÍkszoúci obecnie
produkowanych drukarek
firmy Epson.
Rekomendacje: dla
uøytkownikÛw nowszych
i†starszych drukarek
firmy Epson, a†takøe
tych, ktÛrzy z†rÛønych
przyczyn chc¹ unikn¹Ê
manipulacji na
ìorganizmieî drukarki.
Rys. 1. Schemat elektryczny interfejsu
Rys. 2. Okno programu Cartridge Tools
Prezentowane urz¹dzenie
sk³ada siÍ z†prostego interfejsu sprzÍtowego (schemat
elektryczny pokazano na rys.
1) oraz dostÍpnego bezp³atnie oprogramowania dla Windows. Interfejs jest do³¹czany
do portu drukarkowego komputera, a†jego podstawowym
zadaniem jest umoøliwienie
wymiany danych pomiÍdzy
WYKAZ ELEMENTÓW
Rezystory
R1...R7: 1kΩ
Półprzewodniki
D1...D4: diody Zenera 3,3V
80
go programu wykracza poza
artyku³, dlatego na CDEP11/2003B oraz na naszej
stronie internetowej w†dziale Download zamieúciliúmy
oryginaln¹ dokumentacjÍ
w†jÍzyku angielskim.
Program Cartridge Tools
wyposaøono takøe w†funkcjÍ serwisow¹ (rys. 3), ktÛra umoøliwia ìrÍczneî przetestowanie dzia³ania portu
drukarkowego - w†lewej
czÍúci okna moøna modyfikowaÊ stany wyjúÊ D0...D7,
nieco bliøej úrodka (Status
line) znajduje siÍ pole,
z†ktÛrego moøna odczytaÊ
zawartoúÊ rejestru statusu.
Andrzej Gawryluk, AVT
Rys. 3. Sekcja serwisowa programu Cartridge
Tools
5-woltowym interfejsem Centronics i†kartridøami zasilanymi napiÍciem 3,3 V. Wymian¹ danych zarz¹dza ca³kowicie program, st¹d budowa interfejsu jest nad wyraz
prosta (dlatego teø nie projektowano do niego p³ytki
drukowanej).
Oprogramowanie Cartridge Tools (widok okna
dzia³aj¹cego programu pokazano na rys. 2) nie wymaga
instalacji i†pracuje poprawnie z†Windows 98 i†XP
(byÊ moøe takøe z†innymi,
ale tego nie sprawdzono).
SzczegÛ³owy opis obs³ugi te-
Artyku³ powsta³ na bazie
materia³Ûw dostÍpnych na
stronie www.eddiem.com.
Rys. 4. Rozmieszczenie wypro−
wadzeń komunikacyjnych ty−
powego kartridża drukarko−
wego
Elektronika Praktyczna 11/2003
P R O G R A M Y
CAM dla projektantów obwodów drukowanych
WspÛ³czesny projektant PCB powinien wiedzieÊ, jak
wielkie znaczenie ma technologiczna weryfikacja
projektu oraz zidentyfikowanie jego s³abych
punktÛw†przed przekazaniem plikÛw do wytwÛrni
p³ytek. Maj¹c kontrolÍ nad procesem produkcji,
projektant p³yty drukowanej moøe podnieúÊ jej jakoúÊ,
skrÛciÊ czas opracowania i†mieÊ pewnoúÊ, øe projekt
bÍdzie pozbawiony b³ÍdÛw.
Analiza i†weryfikacja
projektu
W³aúnie tym celom s³uøy CAMtastic - najnowszej generacji system
CAM firmy Altium. Program CAMtastic DXP to kompletny system,
ktÛry pomaga projektantowi PCB
szybko i†³atwo zweryfikowaÊ parametry p³yty istotne dla procesu
produkcyjnego. DziÍki temu projektant jest w†stanie zminimalizowaÊ
liczbÍ kosztownych b³ÍdÛw, dostarczaj¹c projekt sprawdzony i†gotowy
do natychmiastowej produkcji
i†montaøu. CAMtastic DXP zawiera
komplet narzÍdzi potrzebnych do
podgl¹du, edycji i†konwersji rÛønego rodzaju plikÛw CAD/CAM, ich
analizy oraz generowania wydrukÛw i†plikÛw wyjúciowych niezbÍdnych do wyprodukowania p³yty
drukowanej.
CAMtastic DXP zbudowano na
bazie platformy Design Explorer
(DXP) firmy Altium (widok g³Ûwnego okna programu pokazano na rys.
1), znanej m.in. z†Protela DXP. Program zoptymalizowano do pracy
w†najnowszych systemach operacyjnych Windows XP oraz 2000.
CAMtastic DXP obs³uguje import/eksport wielu formatÛw plikÛw, zawiera zestaw narzÍdzi do
analizy i†weryfikacji PCB oraz
wszystkie graficzne i†geometryczne
narzÍdzia niezbÍdne do edycji
i†modyfikacji projektu p³yty przed
wykonaniem.
Elektronika Praktyczna 11/2003
CAMtastic DXP przeprowadza 18
rodzajÛw analiz PCB, daj¹cych
moøliwoúÊ pe³nej weryfikacji przygotowanego projektu obwodu drukowanego. Jednym klikniÍciem
myszki moøemy uruchomiÊ kompleksowe sprawdzenie projektu pod
k¹tem naruszenia ktÛrejkolwiek
z†18 wspomnianych regu³. Pozwala
to na wykrycie problemÛw, ktÛre
mog¹ wyst¹piÊ podczas produkcji
oraz poprawÍ jakoúci obwodu jeszcze przed wysy³k¹ do wytwÛrni.
Program znajduje m.in. zwarcia pomiÍdzy úcieøkami, przerwane po³¹czenia, zbÍdne wiercenia, odstÍpy
mniejsze od za³oøonego minimum
i†wiele innych parametrÛw. Okno
ich konfiguracji pokazano na rys. 2.
Aby weryfikacja projektu (DRC)
mog³a zostaÊ przeprowadzona,
CAMtastic DXP musi odtworzyÊ
listÍ po³¹czeÒ (netlist) na podstawie danych z†plikÛw CAM. Trzeba zaznaczyÊ, øe program radzi
sobie doskonale takøe ze skomplikowanymi projektami wielowarstwowymi z†dzielonymi warstwami
zasilania oraz úlepymi i†zagrzebanymi przelotkami. Funkcja DRC
potrafi rÛwnieø automatycznie naprawiÊ wiÍkszoúÊ znalezionych
b³ÍdÛw. S³uøy to tego opcja Auto
Fix (rys. 2).
Rys. 1
75
P R O G R A M Y
³aduje jednoczeúnie: pliki Gerber,
pliki z†aperturami, wiercenia NC
Drill, HPGL i†listy po³¹czeÒ IPC365-D. Inn¹, wart¹ podkreúlenia cech¹ programu jest obs³uga formatu
ODB++, ktÛry niesie wiÍkszoúÊ informacji potrzebnych do produkcji
p³yty drukowanej. Uøycie standardu
ODB++ pozwala wyeliminowaÊ pliki Gerber, Excellon, listy po³¹czeÒ
oraz pliki rozk³adu elementÛw.
Ograniczaj¹c liczbÍ plikÛw, zyskujemy na czasie i†kosztach oraz podnosimy jakoúÊ na etapie produkcji.
Rys. 2
Edycja i†modyfikacja
projektu
Jedn¹ z†interesuj¹cych cech programu CAMtastic DXP jest moøliwoúÊ konwersji dowolnych plikÛw
Gerber na format Protel PCB. DziÍki temu, dysponuj¹c tylko plikami
Gerber pochodz¹cymi z†dowolnego
programu, jesteúmy w†stanie prawie
automatycznie wygenerowaÊ plik
PCB, ktÛry moøna obrabiaÊ w†edytorze PCB programu Protel DXP.
CAMtastic DXP oferuje†wszechstronne narzÍdzia edycyjne, potrzebne podczas koÒcowej obrÛbki
projektu PCB. WúrÛd podstawowych
operacji edycyjnych znajdujemy
m.in. przenoszenie i†kopiowanie
pojedynczych oraz wielu obiektÛw,
obracanie o†dowolny k¹t, odbicie
lustrzane, skalowanie obiektÛw,
rÛønorodne operacje na warstwach
oraz wiele innych (rys. 5).
RÛwnie bogaty jest zestaw narzÍdzi rysunkowych (rys. 6), ulokowanych w†menu Place. DostÍpne opcje s³uø¹ do rysowania ³ukÛw,
Import/eksport
Rys. 4
Rys. 5
dukcji druku. Wyniki prostych operacji wyúwietlane s¹ bezpoúrednio
w†panelu CAMtastic, jak w†przypadku pomiaru odleg³oúci pomiÍdzy dwoma obiektami, b¹dü w†formie raportÛw tekstowych, ktÛre otwieraj¹ si͆w†osobnym oknie edytora tekstowego DXP.
CAMtastic DXP importuje oraz
Drukowanie
eksportuje pliki w†wielu popularRÛwnieø w†zakresie drukowania,
nych formatach CAM, daj¹c moøliCAMtastic DXP oferuje wszystko,
woúÊ ³atwej konwersji poco moøe byÊ potrzebne promiÍdzy rÛønymi formatami.
jektantowi. Program korzysCAM, czyli...
Program importuje pliki zata w†pe³nym zakresie z†dru...Computer Aided Manufacturing −
pisane w†formatach: ODB++,
karek
zainstalowanych
wytwarzanie wspomagane komputerowo.
Gerber, HPGL/2, Drill, Mill/
w†systemie Windows. Do
Takim akronimem jest określane oprogra−
Route, DWG/DXF (AutoCAD
wydruku moøemy wybraÊ
mowanie służące do przygotowywania
12-2000, LT) oraz IPC-356-D
okreúlony zakres projektu
dokumentacji oraz sterowania urządzeniami
(rys. 3). Natomiast wyekslub fragment widoczny na
wytwórczymi.
portowaÊ dane moøna w†forekranie, wybraÊ druk w†komatach: ODB++, Gerber
lorze lub czarno-bia³y oraz
(274D, 274X, Fire9000), Drill data,
okrÍgÛw, prostok¹tÛw, wielolinii,
okreúliÊ skalÍ z†moøliwoúci¹ wyboMill/Route, DXF (AutoCAD 12wielobokÛw, tekstu, wstawiania wyru opcji dopasowania do strony.
2000, LT) oraz IPC-365-D (rys. 4).
miarÛw i†wiele innych.
Wydruk moøe byÊ wycentrowany
Warto zwrÛciÊ uwagÍ na funkcjÍ
Ponadto mamy do dyspozycji zana kartce oraz zawieraÊ nag³Ûwek
QuickLoad, widoczn¹ w†menu Fiawansowane narzÍdzia edycyjne,
z†informacjami o†stronie. Moøemy
le>Import, ktÛra pozwala na autozgromadzone w†menu Tools (rys.
matyczne wczytanie wielu plikÛw
7). WúrÛd nich znajdziemy m.in.
rÛwnoczeúnie do jednego dokumenkreatora pomagaj¹cego przygotowaÊ
tu roboczego. Funkcja QuickLoad
kliszÍ do naúwietlania (Film Wizard), narzÍdzie do panelizacji (Panelize PCB) wspomagaj¹ce projektanta podczas powielania druku na
wiÍkszym arkuszu laminatu, kalkulator powierzchni miedzi (Calc.
Copper Area) i†wiele innych.
Raporty
Rys. 3
76
Warto wspomnieÊ rÛwnieø o†narzÍdziach do inspekcji i†raportowania, pozwalaj¹cych uzyskaÊ istotne
informacje dotycz¹ce projektu
w†kontekúcie przygotowania pro-
Rys. 6
Rys. 7
Elektronika Praktyczna 11/2003
P R O G R A M Y
P R O G R A M Y
Rys. 8
drukowaÊ poszczegÛlne warstwy na
osobnych kartkach, a†takøe zgrupowaÊ kilka rysunkÛw na jednej stronie. W†kaødej chwili mamy dostÍp
do podgl¹du wydruku na ekranie.
Na rys. 8 pokazano okienko ustawieÒ wydruku oraz przyk³adowy
widok z†podgl¹dem wydruku strony, zawieraj¹cej cztery warstwy.
Dla kogo CAMtastic DXP?
Ze wzglÍdu na mnogoúÊ funkcji
i†wszechstronnoúÊ, CAMtastic jest
narzÍdziem rÛwnie wpasowanym
w†potrzeby producentÛw obwodÛw
drukowanych, jak i projektantÛw
PCB, ktÛrzy chc¹ swoje dzie³o zweryfikowaÊ i przekazaÊ do wytwÛrni
wolne od wad i gotowe do natychmiastowej produkcji.
CAMtastic DXP jest jednym
z†integralnych sk³adnikÛw pakietu
Protel DXP, tworz¹c spÛjn¹ ca³oúÊ
z†pozosta³ymi narzÍdziami w†ramach úrodowiska Design Explorer.
Integracja z†edytorem PCB systemu Protel pozwala na automatyczn¹ wymianÍ danych pomiÍdzy
programem CAMtastic i†PCB. Pliki
CAM generowane przez edytor
PCB mog¹ byÊ automatycznie otwierane w†okienku CAMtastic.
W†praktyce, podczas pracy w†Protelu, jest to p³ynne przejúcie od
projektowania PCB do zadaÒ
z†dziedziny CAM, bez ømudnego
i†czasoch³onnego eksportowania
danych na zewn¹trz i†wczytywania ich do innego programu.
CAMtastic DXP jest dostÍpny
rÛwnieø jako osobny program. Ta
czÍúÊ oferty firmy Altium jest
skierowana pod adresem producentÛw obwodÛw drukowanych,
ktÛrzy potrzebuj¹ tylko sprawnego
narzÍdzia CAM.
Jest jeszcze trzecia opcja - CAMtastic DXP Viewer - przegl¹darka
plikÛw CAM, w†stosunku do pe³nej
wersji pozbawiona opcji edycyjnych
oraz wiÍkszoúci narzÍdzi do analizy i†raportowania, ale za to dostÍpna bezp³atnie. DXP Viewer czyta
wszystkie formaty obs³ugiwane
przez CAMtastic, w†tym m.in. Gerber, ODB++ oraz DWG/DXF. Przegl¹darkÍ moøna úci¹gn¹Ê ze strony
www.camtastic.com. Takøe szczegÛ³owe informacje, pe³na dokumentacja oraz 30-dniowa wersja testowa programu CAMtastic DXP s¹
dostÍpne na wspomnianej stronie
internetowej.
Grzegorz Witek, Evatronix
Rys. 9
78
Elektronika Praktyczna 11/2003
S P R Z Ę T
Takie urz¹dzenia
pomiarowe, jak
opisywany w†artykule
analizator widma, nie
trafiaj¹ czÍsto do naszej
redakcji. Nic dziwnego.
Jest to sprzÍt, ktÛry nie
pojawia siÍ na sto³ach
amatorÛw chyba
w†ogÛle
a†i†profesjonaliúci
musz¹ byÊ mocno
zmotywowani do zakupu
podobnej aparatury.
Czasami jednak nie ma
wyjúcia, problemem staje
siÍ wÛwczas jedynie
wybÛr odpowiedniej
marki i†modelu.
70
Analizator widma
GSP−827
O†wyrobach firmy Instek mia³em juø
przyjemnoúÊ pisaÊ kilkukrotnie. W†tym
miejscu powinienem w³aúciwie uøyÊ
pisowni s³owa ìprzyjemnoúÊî pisanego
z†wielkiej litery, gdyø za kaødym razem wyroby tej firmy robi¹ na mnie
ogromne wraøenie. I†w†tym przypadku
juø na wstÍpie artyku³u nie mog³em
powstrzymaÊ siÍ przed wyraøeniem
swojego zachwytu, mimo øe†emocje
powinienem powstrzymywaÊ na wodzy. Mam nadziejÍ, øe zostanie mi to
wybaczone.
Do rzeczy wiÍc: GSP-827, to profesjonalny analizator widma pracuj¹cy
w†zakresie czÍstotliwoúci od 9†kHz do
2,7 GHz. Moøe byÊ wykorzystywany
zarÛwno na stole laboratoryjnym, jak
i†w†terenie. Specjalnie do zastosowaÒ
terenowych zosta³ wyposaøony w†zestaw 2†akumulatorÛw LiIon, kaødy
o†napiÍciu 10,8 V. No cÛø, nie moøna
powiedzieÊ, øeby masa - 4,5 kg oraz
wymiary - 330x170x340 mm by³y niezauwaøalne, ale do takich gabarytÛw
zapewne przyzwyczajeni s¹ uøytkowni-
cy podobnej aparatury. Mog¹ nimi byÊ
pracownicy obs³ugi technicznej sieci
GSM, czy serwisÛw†telewizji kablowej.
Dla nich waøniejsze s¹ cechy funkcjonalne aparatury, a†te w†przypadku
GSP-827 s¹ godne uznania. Oczywiúcie
wspomniane wyøej grupy uøytkownikÛw nie jest jedynymi. Z†podobnych
analizatorÛw korzystaj¹ na co dzieÒ
wszyscy ci, ktÛrzy maj¹ do czynienia
z†jakimkolwiek sprzÍtem radiokomunikacyjnym. Dla niektÛrych grup uøytkownikÛw dostÍpne s¹ nawet specjalne, opcjonalne zestawy wyposaøenia.
Najwaøniejsze dane techniczne analizatora GSP-827 przedstawiono w†tab. 1.
MÛwi siÍ, øe nie szata zdobi
cz³owieka
W†przypadku GSP-827 moøna powiedzieÊ, øe zarÛwno estetyka obudowy,
jak i†parametry elektryczne nie mog¹
siÍ nie spodobaÊ. Jak zwykle u†Insteka
elementy p³yty czo³owej zosta³y†zaprojektowane z†dobrym smakiem i†z†zachowaniem zasad ergonomii. Wyraünie
Elektronika Praktyczna 11/2003
S P R Z Ę T
Rys. 1. Funkcja Peak−>Center automatycznie wy−
szukuje największą wartość pomiaru i umieszcza
wynik w środkowej części ekranu
rozdzielono klawiatury spe³niaj¹ce odmienne funkcje, dodatkowo wyrÛøniaj¹c je rÛønymi kolorami. Zastosowano
trzy, a†w³aúciwie cztery rodzaje elementÛw regulacyjnych. S¹ to: klawisze
s³uø¹ce do wybierania opcji, specjalne
pokrÍt³o obrotowe, ktÛrym wygodnie
ustala siÍ wartoúci cyfrowe danego parametru poprzez krokowe jego zwiÍkszanie lub zmniejszanie. PokrÍt³o†to jest
wykorzystywane takøe do przesuwania
kursorÛw i†markerÛw ekranowych. Kolejnym elementem regulacyjnym jest
poczwÛrny klawisz kursora o†podobnym przeznaczeniu jak pokrÍt³o obrotowe, a†takøe†6†wydzielonych klawiszy
funkcyjnych wspÛ³pracuj¹cych z†kontekstowo dobieranymi opisami wyúwietlanymi wzd³uø prawego boku ekranu.
Jeúli okreúlenie wartoúci danej nastawy
za pomoc¹ pokrÍt³a obrotowego staje
siÍ uci¹øliwe np. na skutek koniecznoúci przewiniÍcia ca³ego dostÍpnego zakresu wartoúci, w†kaødej chwili moøna
odpowiedni parametr wprowadziÊ za
pomoc¹ klawiatury numerycznej. Do
zmian zakresÛw natomiast najwygodniej bÍdzie uøywaÊ klawiszy kursorÛw.
Zastosowany czarno-bia³y wyúwietlacz
o†rozdzielczoúci 640x480 punktÛw
i†wymiarach pola roboczego ok.
122x92 mm daje czytelny obraz. W†zaleønoúci od warunkÛw i†upodobaÒ
moøna w³¹czyÊ podúwietlanie, ustawiÊ
kontrast, a†nawet prze³¹czyÊ ekran
w†tryb inwersyjny (czarne t³o, bia³e napisy i†przebiegi). Funkcja Split umoøliwia natomiast w³¹czenie dwÛch obszarÛw roboczych. Na panelu czo³owym umieszczono dwa 50 Ω gniazda
typu N. Jedno to wejúcie sygna³u pomiarowego RF, drugie to wyjúcie TG
(Tracking Generator). Z†ty³u natomiast
zosta³y umieszczone pozosta³e gniazda
BNC: zewnÍtrznego sygna³u referencyjnego, wyjúcia referencyjnego czÍstotliwoúci 10 MHz wykorzystywanego np.
72
Rys. 2. Prawidłowe działanie funkcji Pass/Fail Test
wymaga zdefiniowania spodziewanej obwiedni
mierzonego sygnału
do synchronizacji innych urz¹dzeÒ pomiarowych, a†takøe wejúcie zewnÍtrznego sygna³u synchronizuj¹cego dla
GSP-827. Znajduj¹ siÍ tu teø gniazda
interfejsÛw GPIB, RS232 oraz wyjúcie
mikrofonowe. Pokaünych rozmiarÛw
akumulator jest montowany po odkrÍceniu specjalnej przykrywki umieszczonej obok zespo³u wspomnianych
wyøej gniazd. Prawdziwe zalety analizatora ujawniaj¹ siÍ w†trakcie pracy.
Pomiary
ProszÍ nie oczekiwaÊ, øe przedstawiÍ wszystkie moøliwoúci pomiarowe
analizatora GSP-827. W†duøym uproszczeniu postaram siÍ jedynie opisaÊ jak
wygl¹da praca z†tym przyrz¹dem. Pierwszym etapem przez jaki musi przebrn¹Ê kaødy jego uøytkownik, to odpowiednie po³¹czenie mierzonych urz¹dzeÒ z†analizatorem. Nie jest to sztuka
banalna zwaøywszy, øe mamy do czynienia z†czÍstotliwoúciami rzÍdu kilku
GHz. W†zestawie jaki zosta³ dostarczony do redakcyjnego testu znajdowa³
siÍ komplet krÛtkich przewodÛw po³¹czeniowych wraz z†kilkoma rodzajami
przejúciÛwek. S¹ one umieszczone
w†eleganckim etui, ktÛre z†pewnoúci¹
bÍdzie przydatne podczas wypraw na
pomiary w†terenie. Po krÛtszym lub
d³uøszym dopasowywaniu do siebie
poszczegÛlnych wejúÊ i†wyjúÊ, na ekranie udaje siÍ uzyskaÊ pierwsze kszta³ty
widma. Za pomoc¹ opisanych wyøej
przyrz¹dÛw regulacyjnych bÍdziemy
siÍ starali umieúciÊ g³Ûwny pr¹øek
widma np. w†centralnym miejscu ekranu. Jeúli znamy wartoúÊ odpowiadaj¹cej mu czÍstotliwoúci, moøemy j¹
wprowadziÊ bezpoúrednio z†klawiatury
i†skorzystaÊ z†funkcji Frequency Center. Jeúli mierzymy nieznany przebieg
przyda siÍ funkcja Peak->Center, ktÛra
automatycznie wyszuka najwiÍksz¹
wartoúÊ pomiaru i†umieúci j¹ w†úrod-
kowym po³oøeniu ekranu (rys. 1). Zakres obserwowanego widma moøna
ustawiÊ wprowadzaj¹c parametry Frequency Start i†Frequency Stop. Moøna
rÛwnieø skorzystaÊ z†funkcji Span.
W†tym przypadku widmo jest ograniczane do zakresu np. 1†MHz ustawionego funkcj¹ Span wokÛ³†czÍstotliwoúci centralnej. Regulacja przebiega
w†sekwencji
1-2-5
(przyk³adowo
1†MHz, 2†MHz, 5†MHz, 10 MHz... itd.).
Jednym naciúniÍciem klawisza moøemy
rÛwnieø ustawiÊ ca³y moøliwy zakres
(Span full). Podobnie, w†sekwencji 105-2-1 dB, przebiega regulacja czu³oúci
analizatora. Wynik moøe byÊ podawany w†jednostkach dBm, dBµV, dBmV
oraz dBm/Hz. Przed rozpoczÍciem pomiarÛw trzeba pamiÍtaÊ o†odpowiednim ustawieniu impedancji wejúcia,
zjawisko niedopasowania moøe bowiem ca³kowicie zniekszta³ciÊ wyniki.
S³uøy do tego opcja Input Z.
Odczytywanie wartoúci cyfrowych
w†charakterystycznych punktach widma
jest czynnoúci¹ bardzo czÍsto, niemal
rutynowo wykonywan¹ podczas pomiarÛw. W†GSP-827 pomocna jest w†tym
funkcja Marker. Po jej w³¹czeniu na ekranie pojawia siÍ specjalny znaczek,
ktÛry moøe byÊ przesuwany (najwygodniej pokrÍt³em obrotowym) po ca³ym
widmie. Kaødej zmianie po³oøenia towarzyszy odpowiadaj¹ca mu czÍstotliwoúÊ i†poziom sygna³u. Przewidziana
jest takøe praca z†wieloma markerami.
Przydatna w†praktyce bÍdzie teø opcja
przesuniÍcia markera do wartoúci maksymalnej - Markers to Peaks oraz zbliøone z†ni¹ funkcjonalnie Peak Search,
Peak Left i†Peak Right i†Peak Next pozwalaj¹ce analizowaÊ poszczegÛlne
pr¹øki widma. Ich znaczenie jest doúÊ
intuicyjne. Jedn¹ z†opcji funkcji ìPeak
Searchî jest Track. Powoduje ona dynamiczne poszukiwanie piku widma
i†ustawianie go w†po³oøeniu centralnym
Elektronika Praktyczna 11/2003
S P R Z Ę T
S P R Z Ę T
Tab. 1. Wybrane dane techniczne analizatora GSP−827
Zakres czêstotliwoœci
SzerokoϾ okna
Szum fazy
Sta³oœæ pomiaru czasu
Zakres RBW
Dok³adnoœæ RBW
Zakres pasma Video
Czas skanowania zakresu
Zakres pomiarowy
9kHz...2,7GHz
2kHz do 2,5GHz w sekwencjach 1-2-5, “full span”, “zero span”
-85dBc/Hz @1GHz 20kHz typowy offset
+ 10ppm, 0-50°C, 5ppm/rok
3kHz, 30kHz, 300kHz, 4MHz
15%
10Hz do 1MHz w krokach 1-3
100ms do 25,6s
-100dBm do +20dBm: 1M~2,5GHz @ 3k RBW
-95dBm do +20dBm: 2,5GHz~2,7GHz @ 3k RBW
-70dBm do +20dBm: 150k do 1MHz @ 3k RBW
-60dBm do +20dBm: 50k do 150kHz @ 3k RBW
Zakres poziomu odniesienia
-30dBm do +20dBm
Dok³adnoœæ poziomu odniesienia
+ 1,5dB @100MHz
Nierównomiernoœæ czêstotliwoœci
+ 1,5dB
Œredni poziom szumów
-130dBm/Hz: 1MHz do 2,5GHz
-125dBm/Hz: 2,5GHz do 2,7GHz
-105dBm/Hz: 150k~1MHz
-95dBm/Hz: 50k~150kHz
Zniekszta³cenia harmoniczne
< -60dBc @-40dBm We
Zabezpieczenie wejœcia RF
+30dBm, 25VDC
Impedancja wejœcia RF
50Ω (nominalnie)
Czêstotliwoœæ wyjœciowego przebiegu 10MHz
referencyjnego
Typy markerów
“Normal” i “Delta Mode”
Liczba markerów
do 10
Rozdzielczoœæ wyœwietlacza
640x480, LCD mono
Gniazdo RS-232
Sub-D 9 ¿eñskie
Zasilanie
100V... 240VAC, automatyczny wybór, 48...63Hz
Pobór mocy
85W, 95VA max. z wentylatorem
Wymiary
330(W)x170(H)x340(D) mm
Masa
ok. 4,5kg
ekranu. Jest to wiÍc po³¹czenie Peak
Search i†Marker to Center.
Serwisanci pracuj¹cy w†terenie nie
zawsze maj¹ czas i†warunki do dok³adnej analizy zebranych danych w†miejscu dokonania pomiaru. Dla nich moøliwoúÊ zarejestrowania do 100 przebiegÛw bÍdzie jedn¹ z†waøniejszych cech
przyrz¹du. S³uøy do tego polecenie Save/Recall wykorzystuj¹ce do celÛw archiwizacyjnych wbudowany zegar czasu rzeczywistego. Analizator GSP-827
posiada moøliwoúÊ úledzenia trzech
úcieøek: Tr. A, Tr. B oraz tzw. Live,
przy czym dla úcieøki tej dostÍpne s¹
funkcje Peak Hold, Average i†Freezy.
Moøna takøe korzystaÊ z†niektÛrych
operacji matematycznych na úcieøkach.
OcenÍ prawid³owoúci mierzonego widma u³atwi funkcja Pass/Fail Test. Aby
j¹ wykorzystaÊ trzeba wczeúniej zdefiniowaÊ dopuszczaln¹ obwiedniÍ widma, w†ktÛrym powinien zmieúciÊ siÍ
wynik pomiaru. Moøe on mieÊ kszta³t
linii ³amanej zarÛwno dla ograniczenia
z†gÛry, jak i†z†do³u (rys. 2) NastÍpnie
po uaktywnieniu wspomnianej funkcji,
pod przebiegiem jest wyúwietlany komunikat informuj¹cy w†zaleønoúci od
uzyskanego wyniku o†tym, øe widmo
spe³nia lub nie spe³nia zadanych parametrÛw. W†analizatorze GSP-827
74
przewidziano dwa tryby wyzwalania:
wyzwalanie pojedyncze i†ci¹g³e. èrÛd³em sygna³u wyzwalaj¹cego moøe byÊ
sygna³ doprowadzony z†zewn¹trz lub
generowany wewnÍtrznie. Przyrz¹d
GSP-827, choÊ zosta³ nazwany przez
producenta analizatorem widma, ma
wbudowane rÛwnieø funkcje ACPR
(Adjacent Channel Power Radio) oraz
OCBW (Ocupied BandWidth) wykorzystywane do pomiarÛw mocy.
Jak przysta³o na porz¹dn¹, profesjonaln¹ aparaturÍ pomiarow¹, w†GSP-827
wbudowano procedury autotestu i†autokalibracji. ObecnoúÊ interfejsu GPIB,
jak rÛwnieø RS232 predestynuje go do
zastosowaÒ w†rozbudowanych stanowiskach pomiarowych, a†wiÍc nie tylko w†serwisie. Døentelmeni o†pieni¹dzach nie rozmawiaj¹, wiÍc nie bÍdÍ
tu wspomina³ o†cenie analizatora. ChoÊ
w†pierwszym momencie moøe ona spowodowaÊ zak³Ûcenia w†pracy serca, to
w†porÛwnaniu z†inn¹ aparatur¹ tego
typu nie jest wcale szokuj¹ca.
Jaros³aw Doliñski, EP
[email protected]
Dodatkowe informacje
Cena przyrz¹du: 19000 z³ netto.
Przyrz¹d do testów udostêpni³a firma NDN, tel.
(22) 641-15-47, www.ndn.com.pl.
Elektronika Praktyczna 11/2003
P O D Z E S P O Ł Y
Ten, kto nie idzie na przÛd,
ten siÍ cofa. To stare
porzekad³o sprawdza siÍ
w†sposÛb szczegÛlnie
bezwzglÍdny w†elektronice.
Nie dziwi¹ wiÍc bezustanne
zmiany w†ofertach
producentÛw. Klient nie lubi
byÊ zaskakiwany
nieoczekiwanymi zmianami,
tym bardziej jeúli wp³ywaj¹
one na jego plany. Zilog juø
kiedyú sprawi³ tak¹ przykr¹
niespodziankÍ swoim
odbiorcom, tym razem jest
inaczej.
Encore!
S¹dz¹c po liczbie projektÛw wykorzystuj¹cych mikrokontrolery Ziloga,
publikowanych w†Elektronice Praktycznej, mÛg³bym dojúÊ do wniosku, øe od
kilku miesiÍcy prezentuj¹c nowoúci tej
firmy, robiÍ solidn¹, nikomu niepotrzebn¹ robotÍ. Zainteresowanie ìZetamiî pozostaje nadal na poziomie zero.
Do powyøszego wniosku doszed³em,
bior¹c pod uwagÍ fakt, øe autorzy do
swoich konstrukcji dobieraj¹ elementy
wed³ug w³asnych zami³owaÒ, przyzwyczajeÒ, moøliwoúci finansowych, dostÍpnoúci poszczegÛlnych typÛw w†ich
mieúcie i†kilku innych nieznanych mi
Rys. 1
66
Drugie wcielenie Z8
czynnikÛw. Faktem jest, øe obracamy
siÍ wokÛ³ trzech, moøe czterech producentÛw, reszta mieúci siÍ w†tzw. iloúciach úladowych. Tymczasem rozgl¹daj¹c siÍ niekiedy poza ofertÍ Atmela czy
Microchipa, moøna znaleüÊ ca³kiem
przyzwoite podzespo³y. Przyznam, øe
po nag³oúnionej w†EP rewizji programu
produkcji pierwszej z†wymienionych
firm, moja sympatia do niej zosta³a
poddana ostrej, negatywnej weryfikacji.
Popatrzmy zatem po raz kolejny na
mikrokontrolery spod znaku ìZî w†nadziei, øe zwrÛc¹ one jednak uwagÍ
konstruktorÛw. Tym razem zaintereso-
wanie skupimy na rodzinie opatrzonej
przydomkiem Encore!
Z8 na bis
Encore! to mikrokontrolery 8-bitowe,
ktÛrych CPU wykorzystuje zmodyfikowan¹ wersjÍ rdzenia Z8. ByÊ moøe st¹d
wziͳa siÍ mi³o brzmi¹ca nazwa uk³adÛw (encore w†jÍzyku angielskim oznacza bisowanie). Nowy rdzeÒ moøe byÊ
taktowany sygna³em zegarowym o†czÍstotliwoúci 20†MHz. PoszczegÛlne typy
uk³adÛw rÛøni¹ siÍ miÍdzy sob¹ zaimplementowanymi peryferiami. SzczegÛ³y
przedstawiono w†tab. 1. Na uwagÍ zas³uguje spora pojemnoúÊ pamiÍci programu i†danych. Nawet najuboøsze wersje mikrokontrolerÛw maj¹ 4†kB pamiÍci Flash i†1†kB pamiÍci SRAM. Zawsze
mnie zastanawia³o, dlaczego nie jest
norm¹ wyposaøanie mikrokontrolerÛw
w†bloki POR (Power-On-Reset) i†VBO
(Voltage-Brown-out-Protection), tym bardziej, øe z†problemami zwi¹zanymi
z†zerowaniem procesorÛw spotykamy
siÍ bardzo czÍsto. Widocznie to samo
pytanie zadawali sobie inøynierowie Ziloga, gdyø postanowili tym razem te
komponenty uwzglÍdniÊ we wszystkich
typach Encore'Ûw. Podobnie jest z†watchdogami, ktÛre w†omawianej rodzinie
wspÛ³pracuj¹ zawsze z†wewnÍtrznym
oscylatorem RC.
Jak pierwsze wraøenia? Jest ca³kiem
nieüle, w†dodatku - zgodnie z†zapowiedziami producenta - to dopiero pocz¹tek. WiÍkszoúÊ przedstawicieli rodziny
Elektronika Praktyczna 11/2003
P O D Z E S P O Ł Y
Rys. 2
Encore! ma wbudowany 10-bitowy przetwornik analogowo-cyfrowy. W†zaleønoúci od potrzeb moøna dobraÊ uk³ad z†odpowiedni¹ liczb¹ kana³Ûw - od 2†do 12.
To bardzo istotna cecha tych mikrokontrolerÛw. PamiÍtajmy, øe inni producenci oferuj¹ czÍsto jedynie przetworniki 8bitowe. Jeúli dodamy do tego moøliwoúÊ
korzystania z†3-kana³owego uk³adu DMA
zaimplementowanego w†mikrokontrolerze, to uzyskujemy idealne rozwi¹zanie
np. dla aplikacji przetwarzania danych
pomiarowych, ktÛrym wystarczy 10-bitowa rozdzielczoúÊ. W†uk³adach Encore!
zawarto ponadto peryferia niewymienione w†tab. 1. S¹ to interfejs I2C†i†SPI oraz
uk³ad UART wspÛ³pracuj¹cy z†enkoderem/dekoderem IrDA. Trzeba teø wspomnieʆo†rÛønorodnych trybach pracy timerÛw/licznikÛw zaimplementowanych
w†mikrokontrolerze. Mamy wiÍc moøliwoúÊ pracy:
- jednoprzebiegowej (One-Shot), gdy
uk³ad zatrzymuje siÍ po odliczeniu zadanej sekwencji i†generuje przerwanie,
- ci¹g³ej (Continuous) - uk³ad po odliczeniu zadanej sekwencji generuje
przerwanie, po czym automatycznie
prze³adowuje rejestry i†powtarza cykl,
- bramkowanej (Gated) - licznik pracuje
tylko wtedy, gdy na odpowiednim wejúciu steruj¹cym wystÍpuje stan aktywny,
- w†trybie przechwytywania (Capture),
w†ktÛrym wartoúÊ licznikÛw jest zapamiÍtywana w†rejestrach przechwytywania po wyst¹pieniu sygna³u zatrzaskuj¹cego na specjalnym wejúciu,
generowane jest teø w†tym momencie przerwanie;
- w†trybie porÛwnywania (Compare),
w†ktÛrym po zrÛwnaniu siÍ stanu
licznika ze stanami rejestrÛw porÛwnywania zostaje wysterowane spe-
68
cjalne wyprowadzenie zewnÍtrzne
oraz jest generowane przerwanie,
- w†trybie przechwytywania i†porÛwnywania (Capture and Compare), bÍd¹cym
po³¹czeniem odpowiednich trybÛw,
- w†trybie PWM (Pulse Width Modulator) - modulator wspÛ³czynnika wype³nienia fali prostok¹tnej.
Trzeba jednak uczciwie przyznaÊ, øe
podobne tryby pracy wystÍpuj¹ rÛwnieø
w†mikrokontrolerach innych producentÛw. Dzisiaj to w³aúciwie standard.
Konstruktorzy uruchamiaj¹cy aplikacje
wykorzystuj¹ce mikrokontrolery Encore!
bÍd¹ z†pewnoúci¹ intensywnie eksploatowaÊ wyprowadzenie DBG, ktÛre zo-
sta³o zaimplementowane specjalnie dla
nich. Jest to bowiem dwukierunkowy
port OCD (On-Chip Debugger). DziÍki
niemu moøna podgl¹daÊ zasoby mikrokontrolera (rejestry wewnÍtrzne, pamiÍÊ
programu i†danych), moøna ustawiaÊ
pu³apki, a†takøe wykonywaÊ program
w†trybie ci¹g³ym lub krokowym.
PamiÍci by³y zawsze piÍt¹ achillesow¹ Ziloga. Moøna powiedzieÊ, øe k³opoty z†Flashami by³y nawet kiedyú
przyczyn¹ utraty mocnej pozycji rynkowej. Dzisiaj analogiczna sytuacja dotyczy pamiÍci EEPROM. Podczas gdy niemal wszyscy producenci uwzglÍdniaj¹
j¹ w†swoich mikrokontrolerach, w†øadnym z†zilogowych Encore'Ûw jej nie widaÊ. Czyøby znowu na przeszkodzie
sta³y jakieú problemy technologiczne?
Trudno w†to uwierzyÊ. Niewielkim
usprawiedliwieniem jest moøliwoúÊ samoprogramowania pamiÍci Flash (w
programie uøytkowym). PamiÍtajmy jednak, øe aby zaprogramowaÊ jeden bajt
pamiÍci tego typu, konieczne jest skasowanie ca³ej strony, ktÛra w†mikrokontrolerach Encore! ma d³ugoúÊ 512 bajtÛw. Ponadto uøytkownik moøe siÍ spotkaÊ z†jeszcze jednym, niemi³ym problemem. Jeúli bÍdzie chcia³ zabezpieczyÊ
swÛj program przed dostÍpem osÛb postronnych, bÍdzie musia³ zrezygnowaÊ
z†autozapisu pamiÍci Flash. MoøliwoúÊ
modyfikacji tej pamiÍci z†poziomu programu uøytkowego zosta³a zreszt¹ pomyúlana do zupe³nie innych celÛw niø
te, ktÛre zazwyczaj s¹ zwi¹zane z†pamiÍci¹ EEPROM. Brak pamiÍci EEPROM w†strukturze mikrokontrolera to
duøa niedogodnoúÊ. Coraz czÍúciej spotykamy siÍ przecieø z†urz¹dzeniami wymagaj¹cymi np. zachowywania paramet-
Tab. 1. Zestawienie parametrów mikrokontrolerów Z8 Encore!
Typ
uk³adu
Z8F0411
Z8F0412
Z8F0421
Z8F0422
Z8F0811
Z8F0812
Z8F0821
Z8F0822
Z8F1601
Z8F1602
Z8F2401
Z8F2402
Z8F3201
Z8F3202
Z8F4801
Z8F4802
Z8F4803
Z8F6401
Z8F6402
Z8F6403
Wielkoœæ Wspó³praca SRAM Czêstotli- I/O Timery Kana³y
pamiêci z pamiêci¹
woϾ oscy16-bi- ADC
Flash zewnêtrzn¹
latora
towe 10-bit
4
4
4
4
8
8
8
8
16
16
24
24
32
32
48
48
48
64
64
64
+
+
+
+
+
+
+
+
+
+
+
+
1k
1k
1k
1k
1k
1k
1k
1k
2k
2k
2k
2k
2k
2k
4k
4k
4k
4k
4k
4k
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
11
19
11
19
11
19
11
19
31
46
31
46
31
46
31
46
60
31
46
60
2
2
2
2
2
2
2
2
3
4
3
4
3
4
3
4
4
3
4
4
2
5
2
5
8
12
8
12
8
12
8
12
12
8
12
12
Inne
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
PWM, POR, VBO, DMA
Elektronika Praktyczna 11/2003
P O D Z E S P O Ł Y
rÛw konfiguracyjnych czy kalibracyjnych. Niestety, w†przypadku Encore'Ûw
konieczne bÍdzie stosowanie pamiÍci
zewnÍtrznych.
Dla polepszenia humoru warto wspomnieÊ o†ciekawym rozwi¹zaniu, jakie
zastosowano w†mikrokontrolerach Ziloga. Jest w†nich mianowicie zaimplementowany blok Illegal Instructions
Traps, ktÛrego zadaniem jest úledzenie
poprawnoúci pobieranego kodu przez
CPU. Jeúli siÍ okaøe, øe pobrany z†pamiÍci programu bajt nie jest rozkazem
(kody rozkazÛw nie wykorzystuj¹
wszystkich moøliwych kombinacji), to
generowane jest specjalne przerwanie.
Sytuacja taka moøe†wyst¹piÊ np. w†wyniku jakiegoú zak³Ûcenia albo niecelowego zamazania pamiÍci programu.
O†tym, co procesor powinien zrobiÊ
w†takich przypadkach, decyduje programista pisz¹c odpowiedni¹ procedurÍ obs³ugi. Swoj¹ drog¹ niewiele chyba da siÍ tu wymyúliÊ poza wyzerowaniem systemu.
Mikrokontrolery Encore! s¹ wykonywane tylko w†wersji zasilanej napiÍciem 3,3†V†z†moøliwoúci¹ wspÛ³pracy
z†uk³adami zasilanymi napiÍciem 5†V.
Under construction
Zanim system mikroprocesorowy zostanie ìwypuszczonyî w†úwiat, konstruktor musi wiele czasu spÍdziÊ na
pisaniu programu i†jego testowaniu
w†naturalnym úrodowisku - mikrokontrolerze wraz z†otaczaj¹cymi go urz¹dzeniami peryferyjnymi. Tu na szczÍúcie
uøytkownik spotyka siÍ z†dobrym traktowaniem przez firmÍ Zilog. Dla prezentowanych mikrokontrolerÛw z†pamiÍci¹ programu od 4†do 8†kB zosta³†opracowany zestaw ewaluacyjny Z8
Encore! 8K/4K MCU Evaluation Kit (fot.
1). Umoøliwia on zapoznanie siÍ z†mikrokontrolerami, a†nawet testowanie niewielkich w³asnych aplikacji. W†sk³ad
zestawu wchodz¹: p³ytka uruchomieniowa, specjalny interfejs z†kablem szeregowym do po³¹czenia z†komputerem,
zasilacz wtyczkowy, dokumentacja i†oprogramowanie na p³ytce CD-ROM.
W†tym miejscu trzeba brzydko powiedzieÊ: ìa†niech siÍ Atmel schowaî.
Klient Ziloga dostaje w†zestawie bardzo
dobre narzÍdzie, jakim jest ZDS II- Z8
Encore! IDE (ZiLOG Developer Studio).
Jest to zintegrowane úrodowisko programowe przeznaczone dla systemÛw†Win
Elektronika Praktyczna 11/2003
98 Second Edition, Win NT 4.0 z†serwis pack 6, Win2000 z†Serwis Pack
3†oraz WinXP z†Serwis Pack 1. W†jego
sk³ad wchodzi: menedøer projektÛw,
edytor, mikroasembler, kompilator C
(zgodny z†ANSI), linker, librarian i†debuger symboliczny. Menedøer projektu
u³atwia panowanie nad wszystkimi
sk³adnikami projektu. Wyúwietla w†postaci graficznej hierarchiÍ plikÛw, u³atwia ich tworzenie i†kasowanie. Debuger
wykorzystuje podczas pracy port
RS232. Powyøsze narzÍdzia s¹ opracowane bardzo starannie, stwarzaj¹ bardzo duøy komfort pracy programiúcie.
Podczas pracy w†jednym oknie moøliwe jest tworzenie wersji ürÛd³owej programu (nawet wielomodu³owego), jego
kompilacja i†uruchamianie (rys. 2). Program moøe byÊ wykonywany w†trybie
krokowym lub ci¹g³ym, z†uøyciem wielu pu³apek, w†kaødej chwili dostÍpne
s¹ do podgl¹dania lub modyfikacji
wszystkie zasoby mikrokontrolera. System moøe byÊ skonfigurowany jako symulator - wtedy nie jest potrzebny fizyczny uk³ad z†mikrokontrolerem lub
jako debuger pozwalaj¹cy na weryfikacjÍ programu w†uk³adzie rzeczywistym.
W†obydwu przypadkach jest zachowana
dobra wspÛ³praca z†edytorem, co bardzo u³atwia usuwanie b³ÍdÛw. Uøytkownik moøe samodzielnie ustaliÊ zawartoúÊ i†rozk³ad okna roboczego, dziÍki czemu zawsze ma wyúwietlane tylko
te informacje, ktÛrych potrzebuje. Rozpoznawanie s³Ûw kluczowych przez
edytor oraz debuger i†wyúwietlanie ich
w†rÛønych kolorach znacznie usprawnia
etap pisania wersji ürÛd³owej programu,
a†i†pÛüniej podczas debugowania okazuje siÍ bardzo przydatne.
P³ytka uruchomieniowa
P³ytka uruchomieniowa zestawu Z8
Encore! 8K/4K MCU Evaluation Kit zawiera mikrokontroler Z8F0822 w†28-nÛøkowej obudowie SOIC, 3†LED-y, interfejsy: RS232 i†IrDA, klawisz zerowania
i†testowy, gniazdo zasilania (uwaga!)
5†V, interfejs OCD wykorzystywany
przez debuger, gniazdo do pod³¹czania
sygna³Ûw analogowych dla przetwornika
ADC oraz ma³e†pole montaøowe dla
w³asnych uk³adÛw prototypowych (rys.
3). Pole montaøowe jest typowe dla Ziloga. Jest tam niezbyt duøo miejsca:
punkty lutownicze pod dwa 16-nÛøkowe i†dwa 8-noøkowe uk³ady SMD, kilka
Rys. 3
rezystorÛw rÛwnieø SMD i†dos³ownie
kilka niezaleønych punktÛw lutowniczych. PiÍciokana³owy przetwornik analogowo-cyfrowy moøe pos³uøyÊ do wykonania wielu ciekawych eksperymentÛw z†przetwarzaniem sygna³u analogowego. DostÍpny transceiver IrDA u³atwi
natomiast budowÍ toru bezprzewodowej
transmisji danych. W†doúwiadczeniach
moøna ³atwo badaÊ zachowanie siÍ systemu dla rÛønych czÍstotliwoúci rezonatora kwarcowego. ChoÊ w†oryginale jest
za³oøony rezonator 18,432†MHz, to jego
wymiana jest bardzo prosta, gdyø nie
jest on lutowany, tylko wk³adany do
dwÛch gniazd tulipanowych.
Raczej trudno spodziewaÊ siÍ, by
w†najbliøszym czasie powsta³a wersja
Bascoma na mikrokontrolery Encore! Ale
chyba nie jest to powÛd do wiÍkszego
zmartwienia. JÍzyk C†udostÍpniony
w†zestawie jest znakomicie opisany i†pozwoli ìwycisn¹Êî z†procesora chyba
wszystko, co tylko siÍ da. Programiúci
lubi¹cy pisaÊ na ìniøszym poziomieî
bÍd¹ rÛwnieø usatysfakcjonowani, maj¹
przecieø asembler, ktÛry jak zwykle
u†Ziloga jest bardzo przejrzysty i†³atwy
do opanowania. Dla ca³kowicie zagubionych w†nowym, nieznanym úrodowisku
sprzÍtowym, w†dokumentacji zamieszczono dok³adne schematy elektryczne
p³ytki ewaluacyjnej. Moøna siÍ na nich
wzorowaÊ przy projektowaniu w³asnych
aplikacji. Przyda³oby siÍ jedynie trochÍ
wiÍcej przyk³adÛw programÛw. Dodatkowe informacje o†rodzinie Encore! moøna
znaleüÊ na stronie http://www.zilog.com/
products/family.asp?fam=225.
Jaros³aw Doliñski, AVT
[email protected]
Dodatkowe informacje
Artyku³ powsta³ na podstawie materia³ów
udostêpnionych przez firmê WBC Sp. z o.o., tel.
(71) 78-88-011.
69
P O D Z E S P O Ł Y
Systemy RFID (Radio Frequency ID) s¹ coraz powszechniej stosowane zarÛwno
w†przemyúle, jak i†w†wielu aplikacjach domowych. Podobnie jak popularne systemy
znakowania za pomoc¹ kodÛw†kreskowych, takøe†systemy RFID s¹ stosowane do
automatycznego zbierania i†przetwarzania danych. JakoúÊ i†szybkoúÊ pozyskiwania
informacji ma zasadniczy wp³yw na procesy technologiczne i†dzia³alnoúÊ ca³ych
przedsiÍbiorstw.
Systemy identyfikacji
bezprzewodowej (RFID)
firmy Texas Instruments
Jak dzia³a†identyfikacja
radiowa?
Prawdopodobnie kaødy z†CzytelnikÛw†EP spotka³ siÍ z†systemami bezstykowej identyfikacji, nie zawsze
bÍd¹c†w†pe³ni úwiadomym ich obecnoúci. Przyk³adowo, z†dobrodziejstw
RFID korzystamy uruchamiaj¹c†samochÛd†wyposaøony w†immobilizer, kupuj¹c†ubrania w†supermarkecie czy
teø otwieraj¹c†wejúcie do firmy kart¹.
Systemy RFID umoøliwiaj¹ bezprzewodow¹ komunikacjÍ pomiÍdzy transponderem zintegrowanym z†anten¹
(przyk³ady pokazano na fot. 1 i†2)
a†specjalnym czytnikiem, ktÛry poprzez wspÛ³pracuj¹c¹ z†nim antenÍ
dostarcza do†transpondera energiÍ
umoøliwiaj¹c¹
przeprowadzenie
krÛtkiej transmisji danych. DziÍki temu moøna przeprowadziÊ zdaln¹ (i
co waøne, ca³kowicie bezstykow¹)
identyfikacjÍ osÛb†b¹dü obiektÛw.
W†zaleønoúci od konfiguracji systemu,
transmisja danych moøe†byÊ jednolub dwukierunkowa.
Przyk³adem zastosowania systemu
RFID jest sortowanie przesy³ek w†firmach transportowych (fot. 3). Na
podstawie odczytanego bezprzewodo-
wo ID oraz danych zawartych w†bazie, przenoúniki taúmowe s¹ sterowane w†taki sposÛb, by przesy³ka trafi³a†do odpowiedniego samochodu.
Jeøeli konieczna jest zmiana trasy
b¹dü czasu dostarczenia, automatyczna identyfikacja pakunku znacznie
przyspiesza taki proces.
Transpondery RFID z†rodziny TIRIS
(Texas Instruments Radio Identification System) s¹ produkowane przez
firmÍ Texas Instruments. S¹ one dostÍpne w†obudowach o†rÛønych rozmiarach, kszta³tach i†formach (fot. 4).
Czytniki mog¹ byÊ dostarczone w†formie p³ytki drukowanej, modu³u†czy
gotowego, obudowanego urz¹dzenia.
Transpondery s¹ dostÍpne w†wersjach
z†pamiÍci¹ tylko do odczytu, jak
rÛwnieø z†moøliwoúci¹ zapisu danych
przez uøytkownika. S¹ one praktycznie bezobs³ugowe i†maj¹ nieograniczony okres uøytkowania.
Technologia RFID znajduje siÍ
w†ofercie wielu firm - poczynaj¹c†od
producentÛw†pÛ³przewodnikÛw jak
Texas Instruments (TIRIS) czy Philips
(HiTAG), a†takøe†przez mniejsze firmy
produkuj¹ce czytniki i†transpondery
(jak LUX-Ident) aø po niewielkie, nawet jednoosobowe firmy zajmuj¹ce
siÍ integracj¹ systemÛw.
Najpowaøniejsze rÛønice pomiÍdzy
tymi systemami s¹ nastÍpuj¹ce:
- transpondery RFID nie musz¹ byÊ
widoczne,
- mog¹ byÊ one odczytywane mimo
istnienia ìprzeszkÛdî drewnianych,
plastikowych, papierowych,
- maj¹ moøliwoúÊ przeprogramowania
w†czasie uøytkowania,
- mog¹ byÊ dostarczane w†wersjach
do pracy w†trudnych warunkach
(wilgoÊ, zapylenie, wysokie temperatury, úrodki chemiczne).
Stosowanie
kodÛw†paskowych
w†przeci¹gu d³uøszego czasu wykaza³o, øe†maj¹ one dokuczliwe ograniczenia: standardowo mog¹ zawieraÊ
niewielk¹ iloúÊ informacji (ok. 20 znakÛw) i†nie mog¹ zostaÊ przeprogramowane. S¹ takøe†podatne na uszkodzenia i†wymagaj¹ umiejscowienia w†widocznym miejscu. Wszystkich tych
wad pozbawione s¹ systemy RFID.
Zakresy czÍstotliwoúci
wykorzystywane do
celÛw†identyfikacji
bezprzewodowej
Wykorzystanie
poszczegÛlnych
pasm czÍstotliwoúci jest regulowane
przez odpowiednie instytucje w†po-
PodobieÒstwa i†rÛønice
pomiÍdzy systemami†RFID
a†znakowaniem kodami
paskowymi
Fot. 1
Elektronika Praktyczna 11/2003
Obydwie technologie pozwalaj¹ na
automatyzacjÍ procesÛw†technologicznych i†usprawnienie zarz¹dzaniem,
bowiem: zmniejszaj¹ potrzebny
nak³ad pracy, eliminuj¹ b³Ídy pope³niane przez ludzi, a†pojedynczy
odczyt dostarcza ³atwe do przetworzenia dane.
Fot. 2
63
P O D Z E S P O Ł Y
szczegÛlnych krajach, przy czym regulacje obowi¹zuj¹ce we wszystkich
krajach europejskich s¹ praktycznie
takie same, i†tak systemy inteligentnych kart i†naklejek mog¹ pracowaÊ
w†paúmie 13,56 MHz, a†transpondery
pasywne i†immobilizery samochodowe
w†paúmie 125kHz...134 kHz.
Podstaw¹ dzia³ania transponderÛw†pasywnych (pozbawionych w³asnego ürÛd³a†zasiania) jest przesy³anie
energii z†czytnika za pomoc¹ fal
elektromagnetycznych. W†zaleønoúci
od wykorzystywanych czÍstotliwoúci,
transponder posiada antenÍ w†postaci cewki powietrznej (13,56 MHz)
lub nawiniÍtej na rdzeniu ferrytowym (125 kHz, 134,2 kHz). Czytnik
inicjuj¹c†komunikacjÍ z†transponderem, generuje przez okreúlony czas
niemodulowan¹ falÍ noún¹, ktÛrej zadaniem jest zaindukowanie pr¹du
w†cewce transpondera. Uzyskana
w†ten sposÛb†energia jest gromadzona w†kondensatorze i†wykorzystywana do zasilania transpondera†w†czasie transmisji danych do czytnika.
W†zaleønoúci od systemu, dane przesy³ane s¹ przy wykorzystaniu modulacji amplitudy ASK albo czÍstotliwoúci FSK.
Jak moøemy siÍ spodziewaÊ, dystans, na jaki moøliwa jest komunikacja, zaleøy†od rozmiarÛw†zastosowanych†anten oraz czÍstotliwoúci jakie
wykorzystuje system, czasu emitowania fali noúnej (³adowania kondensatora) i†mocy wysy³anej przez czytnik.
Wykorzystuj¹c†produkty firmy TIRIS
moøemy uzyskaÊ poprawn¹ transmisjÍ na odleg³oúci od 15 cm dla najmniejszych czytnikÛw†134,2 kHz
i†transponderÛw o†wielkoúci 12 mm
aø do 1...2 metrÛw†przy uøyciu specjalnych anten i†czytnikÛw†o†wysokiej
mocy i†czu³oúci. W†standardzie 13,56
MHz jest moøliwe wykorzystanie do-
Fot. 3
64
datkowej pasywnej anteny do podwojenia zasiÍgu. Nieobci¹øona antena,
dostrojona do czÍstotliwoúci pracy
czytnika, dzia³a†jak reflektor, co daje
w†efekcie zwiÍkszenie zasiÍgu pomiÍdzy antenami. Takøe†w†przypadku
transponderÛw†z†moøliwoúci¹ zapisu
do ich wewnÍtrznej pamiÍci, energia
potrzebna do tej operacji jest rÛwnieø
przesy³ana za pomoc¹ fal radiowych.
Proces taki trwa d³uøej niø prosty odczyt, poniewaø oprÛcz energii konieczne jest przes³anie odpowiednio
modulowanych i†kodowanych danych
do zapisu. W†zaleønoúci od wymagaÒ
uøytkownika, dostÍpne s¹ transpondery o†pamiÍci†od 80 do 2000 bitÛw.
Przyk³adowe aplikacje
systemÛw†RFID
Linia produkcyjna w†firmie farmaceutycznej
Pierrel-Ospedali jest w³osk¹ firm¹
produkuj¹c¹ úrodki farmaceutyczne
podlegaj¹ce úcis³ej kontroli. Wymagane jest dok³adne dokumentowanie
kaødego etapu produkcji. Produkty
farmaceutyczne wymagaj¹ wysokiej
sterylnoúci, ktÛra osi¹gana jest w†autoklawach w†temperaturze 120oC. Jeúli
istnieje podejrzenie, øe dana partia
nie by³a†sterylizowana przez úciúle
okreúlony czas, musi byÊ zniszczona,
powoduj¹c†- czÍsto niebagatelne straty finansowe. Ze wzglÍdu na wysok¹ temperaturÍ i†ciúnienie panuj¹ce
w†autoklawie, automatyczna identyfikacja partii materia³Ûw†poddawanych
sterylizacji stanowi³a†wyzwanie. Drukowane kody kreskowe nie zdawa³y†egzaminu i†konieczne by³o rÍczne wprowadzanie odpowiednich danych przez cz³owieka.
SytuacjÍ zmieni³o†zastosowanie systemu opartego o†produkty firmy TIRIS
- oddzia³u†Texas Instruments zajmuj¹cego siÍ identyfikacj¹ bezprzewodow¹. Transpondery przymocowano do
koszy, w†ktÛrych ustawiane by³y†pojemniki poddawane sterylizacji.
DziÍki oznaczeniu kaødego kosza unikalnym ID i†zapisywaniu przez czytniki czasu wejúcia i†opuszczenia autoklawu moøliwe sta³o†siÍ zautomatyzowanie rejestracji przebiegu produkcji i†wyeliminowanie b³ÍdÛw†pope³nianych przez personel.
Hurtownia farmaceutyczna
Jedna z†najwiÍkszych hurtowni farmaceutycznych w†Niemczech, Sanacorp, dysponuje sieci¹ 16 centrÛw†dystrybucyjnych, w†ktÛrych znajduje siÍ ok. 80 tys. rÛønorodnych
produktÛw. Firma szczyci siÍ tym,
Fot. 4
øe†od z³oøenia przez klienta zamÛwienia do przygotowania dostawy mija
nie wiÍcej niø 1†godzina. Takie przyspieszenie dzia³ania by³o†moøliwe tylko dziÍki pe³nej automatyzacji linii
pakuj¹cych. Do kaødego z†zamÛwieÒ
przypisany jest plastikowy pojemnik,
identyfikowany dziÍki zatopionemu
w†jego konstrukcji transponderowi.
System rÛwnoczeúnie kontroluje ok.
6000 takich pojemnikÛw†od momentu
wp³yniÍcia zamÛwienia do chwili
wys³ania towarÛw†do klienta. We
wczeúniejszej wersji systemu stosowano kody kreskowe, jednakøe†nie
spe³ni³y†one oczekiwaÒ. Ze wzglÍdu
na b³Ídy odczytu ok. 1% zamÛwieÒ
by³o†realizowanych b³Ídnie. Bior¹c
pod uwagÍ koszty ponownej realizacji zamÛwienia, opÛünienia i†koniecznoúÊ precyzyjnego rejestrowania obiegu úrodkÛw†farmaceutycznych, kody
kreskowe zosta³y†zast¹pione radiowym systemem identyfikacji kaødego
pojemnika (a przez to i†zamÛwienia).
Odsetek b³Ídnie realizowanych zamÛwieÒ zmala³ do 0,01%.
Aby w†pe³ni wykorzystaÊ moøliwoúci jakie daj¹ systemy RFID, konieczne jest stworzenie w†ca³ym
przedsiÍbiorstwie zaawansowanego
systemu przep³ywu i†zarz¹dzania informacj¹. Uk³ad bezprzewodowego
zbierania danych jest czÍúci¹ systemu, umoøliwiaj¹c¹ szybkie i†bezb³Ídne gromadzenie informacji i†budowanie na ich podstawie baz danych usprawniaj¹cych pracÍ przedsiÍbiorstwa. W†systemie TIRIS dostÍpne s¹ wszystkie elementy potrzebne do zautomatyzowania pozyskiwania informacji: transpondery, czytniki
i†rÛønorodne anteny dla systemÛw†niskiej (134,2 kHz) i†wysokiej
(13,56 MHz) czÍstotliwoúci.
Marcin Bawolski
Dodatkowe informacje
Opracowano na podstawie materia³ów TIRIS.
Wiêcej informacji na temat RFID w firmie
Microdis Electronics (71) 301-04-00 e-mail:
[email protected], www.microdis.net.
Elektronika Praktyczna 11/2003
E S E J
Niezbędnik dla amatorów i profesjonalistów
W głośnikowym żywiole, część 1
Moøna, co prawda, prÛbowaÊ systematyzowaÊ temat przewodni tego artyku³u, dziel¹c ca³oúÊ na poszczegÛlne zagadnienia, ale
rÛwnoczeúnie wszystkie
z†nich moøna rozpatrywaÊ
na rÛønych pu³apach zaawansowania. Jak wprowadziÊ do tego úwiata zupe³nych laikÛw, nie zanudzaj¹c starych wyjadaczy? Wyzwanie jest powaøne, bowiem i†apetyty wszystkich
zainteresowanych s¹ bardzo
duøe - od wielu lat nie
ukaza³a siÍ bowiem w†Polsce øadna ksi¹øka poúwiÍcona samodzielnemu konstruowaniu zespo³Ûw g³oúnikowych. Co najwyøej,
w³aúnie na ³amach naszych
i†kilku pism o†podobnym
Elektronika Praktyczna 11/2003
profilu, ukazywa³y siÍ opracowania fragmentaryczne. Tym razem mamy zamiar, w†cyklu tak d³ugim,
jak bÍdzie to potrzebne,
dostarczyÊ Czytelnikom
EP ca³¹ wiedzÍ, jak¹ mamy do dyspozycji w†naszych g³owach. Jednoczeúnie zaryzykujemy zastosowanie zupe³nie innego
sposobu przedstawienia
tego ogromnego tematu,
niø spotykany dotychczas,
i†do jego opisu uøyjemy
innego jÍzyka. PÛjdziemy
na øywio³ - materia³u nie
podzielimy pryncypialnie
na rozdzia³y poúwiÍcone
poszczegÛlnym tematom,
ale pod¹øymy szlakiem
doúwiadczeÒ autorÛw.
Czasami p³ynnie przecho-
Temat samodzielnego konstruowania zespo³Ûw
g³oúnikowych nieustannie interesuje szerokie
rzesze hobbystÛw-elektronikÛw, wszelkiego rodzaju
majsterkowiczÛw, jak teø duø¹ czÍúÊ audiofilÛw,
czyli mi³oúnikÛw dobrego düwiÍku. Wci¹ø nowi
adepci chc¹ wiedzieÊ, jak zabraÊ siÍ do rzeczy,
a†doúwiadczeni juø konstruktorzy z†chÍci¹
przyjm¹ kolejne porcje wiedzy na ten temat. To
bowiem niewyczerpany temat. Temat - døungla.
Przedstawiamy pierwszy odcinek cyklu, w†ktÛrym
omÛwimy techniczne tajniki budowy kolumn
g³oúnikowych. Zaczynamy od eseju, ktÛry - mamy
nadziejÍ - zachÍci CzytelnikÛw do wymiany
listÛw z†autorem.
dz¹c od problemu do
problemu, czasami gwa³townie przeskakuj¹c, mamy
nadziejÍ zaproponowaÊ
Wam lekturÍ tak pasjonuj¹c¹, jak samo konstruowanie.
55
E S E J
Bez obrazy
Nadredaktor miesiÍcznika Audio pozdrawia CzytelnikÛw EP! Poniewaø mam
duøo czasu i†miejsca, wiÍc
zanim przejdÍ do zagadnieÒ úciúle technicznych
i†akustycznych, przedstawiÍ
swoisty klimat, jaki panuje
wokÛ³ budowania kolumn.
Klimat ten zreszt¹ siÍ
zmienia - inny by³ ponad
dwadzieúcia lat temu, kiedy sam rozpoczyna³em
swoj¹ przygodÍ z†g³oúnikami, inny jest dzisiaj. Inne
s¹ warunki, zaopatrzenie,
ale i†inne wymagania.
Drogi do tej pasji s¹
dwie podstawowe. Na wstÍpie z†gÛry przepraszam, nikogo nie chcÍ obraøaÊ.
Ale... Ludzie wychowani
w†úwiecie elektroniki chc¹
poprÛbowaÊ swoich si³ rÛwnieø w†tej dziedzinie,
w†konsekwencji staj¹c siÍ
posiadaczami lepiej lub gorzej graj¹cych kolumn. Jak
te kolumny graj¹, jest spraw¹ drugorzÍdn¹, choÊby
dlatego, øe wymagania
ìelektronikÛwî odnoúnie jakoúci düwiÍku s¹ generalnie
znacznie mniejsze niø audiofilÛw. Z†kolei o†audiofilach, niemaj¹cych dot¹d do
czynienia z†konstruowaniem,
moøna powiedzieÊ, øe ich
ìz³otym uszomî towarzysz¹
dwie lewe rÍce. ìZ³ote
uszyî maj¹ naprawdÍ (pardon, to znaczy w†przenoúni) albo tylko im siÍ tak
56
zdaje. Ale naprawdÍ wystarczy, øe tylko tak im siÍ
zdaje, aby stawiali przed
sprzÍtem audio, w†tym
przed kolumnami, okreúlone
wymagania. Czy s¹†to wymagania wypaczone z³ym
gustem, czy daleko posuniÍta subiektywnoúÊ ocen jest
tu uprawniona, jak duøa
czÍúÊ z†nich rzeczywiúcie
w†swoich wyobraøeniach
o†düwiÍku wysokiej klasy
zbliøa siÍ do prawdy
o†düwiÍku naturalnym - to
juø problemy dla pism audiofilskich, nieraz tam podejmowane. Nam wystarczy
stwierdzenie, øe wielu ludzi, dla ktÛrych muzyka
i†jakoúÊ jej odtwarzania s¹
w†øyciu bardzo waøne, chce
wejúÊ w†posiadanie dobrej
klasy zespo³Ûw g³oúnikowych za cenÍ znacznie niøsz¹ niø w†przypadku gotowych produktÛw ìfirmowychî. I†w†konsekwencji
staj¹ przed koniecznoúci¹
podjÍcia wcale przez nich
nieupragnionego wysi³ku.
Z†czasem jednak ich podejúcie do konstruowania moøe siÍ zmieniÊ - czyli w³aúnie zamieniÊ w†pasjÍ, ktÛra
sk³oni do zdobycia wiedzy
i†umiejÍtnoúci, ktÛre wrÍcz
przeoraj¹ øyciowe plany...
Dobre g³oúniki juø
s¹...
WspÛ³czeúni zapaleÒcy
maj¹ znacznie bardziej
komfortowe warunki do
rozpoczÍcia i†rozwijania tego wspania³ego hobby.
Prawd¹ jest brak úciúle
wyspecjalizowanej polskojÍzycznej literatury, ale
znacznie dostÍpniejsze niø
dawniej s¹ opracowania
zagraniczne, ponadto ukazuj¹ siÍ w†Polsce miesiÍczniki poúwiÍcone tematom
audio, w†ktÛrych testy
i†prezentacje zespo³Ûw
g³oúnikowych zajmuj¹ bardzo duøo miejsca. SzczegÛlnie miesiÍcznik Audio,
z†wnikliwymi opisami konstrukcji i†pomiarami laboratoryjnymi, moøe s³uøyÊ
hobbystom za doskona³e
dodatkowe ürÛd³o wiedzy.
Bardzo dobre jest zaopatrzenie polskiego rynku
w†g³oúniki i†inne niezbÍdne
komponenty do budowy
zespo³Ûw g³oúnikowych,
dzia³a na nim kilku prÍønych dystrybutorÛw dostarczaj¹cych produkty najbardziej renomowanych firm.
Nie brakuje teø taÒszych
g³oúnikÛw, wiÍc kaødy
znajdzie coú†wedle swoich
wymagaÒ i†moøliwoúci finansowych.
...ale stolarze
(trzeüwi)
nadal poszukiwani
Nadal najtrudniejsz¹
spraw¹ pozostaje wykonanie obudowy, chociaø i†tutaj moøliwoúci s¹ nieporÛwnanie wiÍksze niø dawniej. Znalezienie dobrego
zak³adu stolarskiego, ktÛry
przygotuje obudowy o†jakoúci typowej dla wspÛ³czesnych, wysokiej klasy
ìfirmowychî zespo³Ûw
g³oúnikowych, jest z†pewnoúci¹ trudne, ale zamÛwienie dobrze przyciÍtych
elementÛw i†nawet samodzielne z³oøenie obudowy
bez specjalnych kwalifikacji stolarskich jest przecieø
w†zasiÍgu rÍki. WiÍkszoúÊ
obudÛw nie jest wcale
skomplikowana i†- choÊ
ich wymiary nie mog¹ byÊ
wymyúlone przez laika to juø samo z³oøenie do
ìkupyî nie niesie ze sob¹
wielkich wyzwaÒ. Nowym
problemem, a†w†kaødym razie problemem o†znacznie
wiÍkszym znaczeniu niø
dawniej, s¹ wymagania estetyczne. Dwadzieúcia lat
temu zbudowanie jakichkolwiek g³oúnikowych
skrzynek o†choÊby przeciÍtnej urodzie by³o znacznie
trudniejsze niø dzisiaj,
przede wszystkim ze
wzglÍdu na brak dobrych
materia³Ûw. Teraz moøliwoúci s¹ znacznie wiÍksze,
ale i†wymagania teø. Firmowe kolumny demonstruj¹ bowiem nieraz bardzo
wyrafinowane wzornictwo,
a†nawet najtaÒsze modele
maj¹ czÍsto finezyjny projekt i†wykonywane s¹ bardzo starannie. Wreszcie,
podobno, bo osobiúcie na
szczÍúcie tego nie odczu³em, coraz wiÍcej przy
wyborze sprzÍtu graj¹cego
(tak jak kaødego innego)
maj¹ do powiedzenia kobiety. Zazwyczaj podstawowy cel, dla ktÛrego sprzÍt
ten zosta³ stworzony, czyli
muzyka i†wysoka jakoúÊ
düwiÍku, kobiety interesuje
najmniej, natomiast ich
uznanie zdobywa ³adny
wygl¹d, przy - najchÍtniej
- ma³ych wymiarach.
A†ma³e wymiary s¹ dla
dobrych kolumn zawsze
wymaganiem doúÊ bolesnym. Problem wielkoúci
dotyka zarÛwno konstrukcje
hobbystyczne, jak i†firmowe, jednak w†przypadku
tworÛw samodzielnych jest
bardziej draøliwy, bowiem
k³opot
z†nadaniem im
w†warunkach amatorskich
odpowiednio estetycznej
oprawy potÍguje niechÍÊ
p³ci piÍknej.
Audiofilskie marzenia
(úciÍtej g³owy)
W†salonach z†wysokiej
klasy sprzÍtem audio, juø
takøe w†Polsce od kilku
lat, moøna obejrzeÊ i†pos³uchaÊ zestawÛw g³oúnikowych o†najrÛøniejszych
konstrukcjach. Audiofilskie
nauki wrÍcz nakazuj¹ s³uchania wszystkiego przed
zakupem, i†wpajaj¹ zasadÍ
bardzo ograniczonego zaufania do parametrÛw deklarowanych przez producenta. A†tymczasem samo-
Elektronika Praktyczna 11/2003
E S E J
dzielne konstruowanie
opiera siÍ najczÍúciej na
zasadzie
eksperymentÛw†i†ostatecznie akceptacji
tego, co powstanie w†ich
wyniku. Nie moøna oczekiwaÊ, øe wykorzystuj¹c
nawet elementy najwyøszej
klasy, otrzymamy w†rezultacie brzmienie dok³adnie
takie, jakie gdzieú us³yszeliúmy albo sobie wyobraziliúmy. Uwaga ta dotyczy
nie tylko pocz¹tkuj¹cych
amatorÛw, ale rÛwnieø zaawansowanych konstruktorÛw! RÛwnieø dla nich
ostateczne brzmienie jest
zawsze do pewnego stopnia niemoøliwe do przewidzenia. Maj¹c duøe doúwiadczenie, znaj¹c stosowane przetworniki z†innych aplikacji, itd., moøna
minimalizowaÊ obszar niepewnoúci, ale nigdy nie
sprowadzimy go do zera.
Moøna w†ogromnym zakresie kszta³towaÊ brzmienie
projektowanych kolumn,
zmieniaj¹c obudowÍ, przetworniki, filtry, zarazem
czyni¹c to, poszukujemy
brzmienia najlepszego
z†tych, jakie przewijaj¹ siÍ
podczas tych eksperymentÛw, ale nie jesteúmy
w†stanie w†stu procentach
odtworzyÊ wczeúniej okreúlonego wzorca - gdybyúmy
takim siÍ pos³ugiwali.
Moøna to wykazaÊ
w†bardzo ìdrastycznymî
eksperymencie: weümy najlepszego konstruktora, pozwÛlmy mu wybraÊ najlepsze komponenty i†narzÍdzia,
aby mÛg³ zbudowaÊ teoretycznie wszystko, czego dusza zapragnie. Potem postawmy przed nim 10 najrÛøniejszych zespo³Ûw g³oúnikowych, niskiej, úredniej
i†wysokiej klasy. Zadanie
polega na tym, aby maj¹c
moøliwoúÊ ich ods³uchu,
ale nie pomiaru ani wgl¹du w†uk³ad filtrÛw, odtworzy³ brzmienie przynajmniej
jednego, dowolnie wybranego, na tyle dok³adnie, aby
przeciÍtny audiofil nie odrÛøni³ ich od siebie w†úlepym teúcie. Nic z†tego.
BÍdzie siÍ miota³ (Ûw konstruktor, nie audiofil), ìpo
Elektronika Praktyczna 11/2003
drodzeî uzyskiwa³ brzmienia bardzo wysokiej klasy,
czasami zbliøa³ siÍ do wybranego celu, ale nigdy go
nie osi¹gnie.
Wyjaúnienie tej sytuacji
jest o†tyle waøne, iø spore
grono zainteresowanych samodzielnym konstruowaniem motywowanych jest
chÍci¹ skopiowania brzmienia konkretnych, ulubionych kolumn, ktÛre ze
wzglÍdu na wysok¹ cenÍ
pozostaj¹ poza ich moøliwoúciami finansowymi;
tymczasem techniczne
úrodki (bardzo dobre przetworniki, itd.) dla osi¹gniÍcia brzmienia wysokiej klasy drog¹ hobbystyczn¹ wydaj¹ siÍ dostÍpne za niøsz¹ cenÍ. Czemu wiÍc
ìprzep³acaÊî, skoro wystarczy ìtylkoî nauczyÊ siÍ
sk³adaÊ kolumny (w sumie
nie s¹ to bardzo skomplikowane urz¹dzenia), znaleüÊ dobrego stolarza i†juø?
W†takim myúleniu jest
oczywiúcie nie jeden, a†kilka b³ÍdÛw. Ale nawet gdyby dobrzy stolarze byli
pod rÍk¹, nauka konstruowania by³a tak ³atwa, albo
mielibyúmy do czynienia
z†geniuszem, to i†tak nie
uzyska³by on pe³nej satysfakcji, jeøeli jego jedynym
marzeniem by³o úciúle
okreúlone brzmienie. Na
satysfakcjÍ zabÛjczo dzia³aÊ
tu moøe w³aúnie g³Íbokie
przekonanie, øe to wymarzone brzmienie produktu
ìfirmowegoî jest idealne.
Nawet gdy düwiÍk z†w³asnej konstrukcji sta³by siÍ
bardzo dobry, i†dla innych,
nieuprzedzonych s³uchaczy,
w†úlepym teúcie wcale nie
gorszy
od
brzmienia
ìwzorcaî, to dla samego
konstruktora bÍdzie on zawsze wzglÍdem niego upoúledzony. Kaød¹ rÛønicÍ
t³umaczyÊ bÍdzie na swoj¹
niekorzyúÊ, jako odstÍpstwo
od idea³u, podczas gdy
pod pewnymi wzglÍdami
jego konstrukcja moøe byÊ
nawet lepsza - nie zostanie to jednak docenione...
Czarny sceniarusz. Na
szczÍúcie, w†praktyce jest
tak w†sytuacji, gdy audiofil
57
E S E J
wcale niemaj¹cy zamiaru
zostaÊ konstruktorem (bo
juø pracuje np. w†banku),
a†chc¹cy zaoszczÍdziÊ (bo
mu tam ma³o p³ac¹), zwraca siÍ do firm sprzedaj¹cych g³oúniki dla hobbystÛw, szukaj¹c tam konstruktora, ktÛry ìpomoøeî stworzyÊ brzmieniow¹ kopiÍ jakiegoú ìmarkowegoî, bardzo
drogiego produktu. Niezaleønie od niemoønoúci dok³adnego odtworzenia brzmienia
konkretnego projektu, owa
ìpomocî oznacza przecieø
w†takim przypadku faktycznie opracowanie konstrukcji
od pocz¹tku do koÒca. Rzetelne wykonanie takiej pracy nie moøe byÊ szybkie,
a†wiÍc i†tanie, zw³aszcza øe
dotyczy jednostkowego zamÛwienia. Finansowy aspekt
przedsiÍwziÍcia jest wiÍc
znacznie gorszy, niø siÍ pocz¹tkowo wydaje. I†tak¹ odpowiedü Ûw szukaj¹cy okazji audiofil powinien uzyskaÊ
od uczciwego dystrubutora
czy konstruktora. Jeøeli
uzyskuje inn¹ - potwierdzaj¹c¹ nadzieje, wraz z†szybkim terminem i†atrakcyjn¹
cen¹ - to nie dziwmy siÍ
pÛüniejszym rozczarowaniom...
Z³oøyÊ i†pos³uchaÊ
Istnieje jednak dla audiofilÛw spragnionych dobrego düwiÍku za umiarkowan¹ cenÍ bardziej optymistyczna, choÊ rÛwnieø
nieco ryzykowna perspektywa. Musz¹ jednak wyrzec
siÍ prawa do pos³uchania
g³oúnikÛw przed zakupem
i†nie powinni ø¹daÊ spe³nienia úciúle okreúlonych
oczekiwaÒ. WÛwczas mog¹
wybieraÊ w†ofertach zestawÛw do samodzielnego
Dźwięk z „firmowych” kolumn jest w 50
procentach tak dobry, jak jest rzeczywiście
i w 50 procentach tak dobry, jak bardzo
w to wierzymy. Dźwięk z kolumn skonstruo−
wanych samodzielnie jest w 99 procentach
tak dobry, jak bardzo w to wierzy ich
konstruktor i użytkownik.
montaøu, jakie znajduj¹ siÍ
u†kilku dystrybutorÛw.
Techniczna jakoúÊ tych
projektÛw jest bardzo atrakcyjna, ìg³oúnikowa zawartoúÊî moøe byʆporÛwnywana do znacznie droøszych zespo³Ûw g³oúnikowych renomowanych firm
i†o†ile projektanci tych zestawÛw znaj¹ swÛj fach, to
w†rezultacie i†brzmienie
“Głośnikowe Recepty” − w tej
części bardzo gruntowna
prezentacja całej drogi
projektowania i strojenia czterech
“dość prostych” dwudrożnych
zespołów głośnikowych. Zajęło to
ponad sto stron
58
powinno byÊ na odpowiednio wysokim poziomie. Jakie jednak ono bÍdzie dok³adnie, tego nabywca
zwykle nie bÍdzie wiedzia³, dopÛki zestawu nie
kupi i†nie z³oøy - zespo³y
do samodzielnego montaøu
wystÍpuj¹ najczÍúciej w†katalogach, i†nie ma moøliwoúci ich pos³uchania
w†øadnym ìnormalnymî
sklepie. Dlaczego? Po pierwsze dlatego, øe salony
prowadz¹ce sprzedaø sprzÍ-
tu audio nie s¹ zainteresowane rozszerzaniem oferty
o†tak ciekawe, ale k³opotliwe propozycje. Przecieø
sprzedaø mia³aby dotyczyÊ
nie gotowego produktu, ale
zestawu czÍúci, obudÛw,
i†wi¹za³aby siÍ z†koniecznoúci¹ udzielania instruktarzu i†odpowiedzi na nowe
pytania, na ktÛre nie s¹
przygotowani. Po drugie,
“The Loudspeaker Design
Cookbook − “Książka kucharska”
Vance’a Dickasona − jeden
z najpopularniejszych na świecie
podręczników dla głośnikowych
hobbystów. Pierwsza edycja w roku
1977, aktualnie w sprzedaży szósta
albo i siódma
sklepowa cena takich zespo³Ûw znacznie by wzros³a - o†kilkudziesiÍcioprocentow¹ marøÍ detaliczn¹,
zbliøaj¹c siÍ tym samym
do ceny gotowych produktÛw, i†w†ten sposÛb trac¹c
swÛj podstawowy sens
ekonomiczny. Wreszcie,
jednym z†najbardziej kuriozalnych pytaÒ niektÛrych
audiofilÛw jakoby zainteresowanych zakupieniem zestawÛw do samodzielnego
montaøu, jest nie tylko:
gdzie tego moøna pos³uchaÊ, ale takøe: czy moøna
je kupiÊ w†formie z³oøonej.
I†jesteúmy w†domu! Gotowych kolumn, ktÛrych
moøna pos³uchaÊ, jest
przecieø bez liku w†salonach ze sprzÍtem. A†øe s¹
drogie... Takie byÊ musz¹,
bo s¹ z³oøone i†moøna ich
pos³uchaÊ.
Konstruktorzy mimo
woli
Nie†naleøy jednak lekcewaøyÊ audiofilÛw, bo przecieø rÛwnieø, a†moøe†przede wszystkim spoúrÛd nich
ostatecznie rekrutuj¹ siÍ
prawdziwi konstruktorzy.
Zaczyna siÍ zwykle od
prozaicznego zamiaru za-
Wydanie specjalne amerykańskiego
miesięcznika Speaker−Builder, z 19
najlepszymi projektami do
samodzielnego montażu
Elektronika Praktyczna 11/2003
E S E J
oszczÍdzenia paru z³otych,
dziÍki z³oøeniu juø zaprojektowanego zestawu do
samodzielnego montaøu, albo od ambitniejszego planu jednorazowego stworzenia w³asnej niekonwencjonalnej konstrukcji. Niewielu na pocz¹tku myúli
o†tym, aby zostaÊ prawdziwymi
konstruktorami
i†w†d³uøszej perspektywie
projektowaÊ zespo³y g³oúnikowe. ìJednorazowymî
konstruktorom (jednorazowym tylko w†ich pocz¹tkowym mniemaniu) wydaje
siÍ, øe jeøeli zamierzaj¹
zbudowaÊ tylko jedn¹ parÍ
kolumn, to jest do tego
potrzebna wiedza znikoma,
znacznie mniejsza od tej,
ktÛrej wymaga³oby projektowanie ich w†wiÍkszej
liczbie. Deklaracja ìnie zamierzam zostaÊ konstruktorem, chcÍ zbudowaÊ tylko
jedn¹ parÍ dla siebieî jest
czÍsto spotykana i†ma
usprawiedliwiÊ brak wiedzy. Tak, jakby to dobry
BÛg, us³yszawszy o†skromnych potrzebach i†zamiarach, mia³ jednorazowo natchn¹Ê konstruktora-niekonstruktora i†pomÛc mu
w†osi¹gniÍciu dobrego rezultatu. Czy bowiem chc¹c
daÊ tylko jeden koncert
skrzypcowy, moglibyúmy
nie umieÊ graÊ na skrzypcach, podczas gdy musz¹
to umieÊ wirtuozi graj¹cy
koncerty przez ca³e øycie?
Takie myúlenie jest
przecieø z†gruntu fa³szywe.
Zespo³y g³oúnikowe s¹
w†uk³adach elektrycznych
dziesiÍÊ razy prostsze niø
wzmacniacze, wydaj¹ siÍ
wiÍc idealnym polem do
popisu. Tak jak skrzypce,
ktÛre maj¹ tylko drewniane pude³ko, cztery struny
i†smyczek. Nic, tylko graÊ.
Ale paradoks polega na
tym, øe dziÍki takiemu
naiwnemu myúleniu, tak
wielu ludzi w†to ìwdeptujeî. Ca³e szczÍúcie, øe na
pocz¹tku nie zdaj¹ sobie
sprawy, jakie to trudne
(po co wiÍc to ujawniam?), bo gdyby wiedzieli, zostawiliby to w†spokoju. Stopniowo odkrywaj¹
Elektronika Praktyczna 11/2003
prawdÍ o†bardzo skomplikowanej naturze z†pozoru
prostych zespo³Ûw g³oúnikowych, stopniowo ucz¹
siÍ rozwi¹zywaÊ problemy.
I†to wci¹ga, bo zespo³y
g³oúnikowe wynagradzaj¹
wysi³ek w†najpiÍkniejszy
sposÛb. To przecieø prosto
z†nich wyp³ynie muzyka.
I†nawet nieudolnie zbudowane kolumny, ale zbudowane samodzielnie i†wedle
w³asnego projektu, brzmi¹c
koszmarnie, brzmi¹ cudownie - to jest w³asne, pierworodne dziecko konstruktora, ktÛre od razu kocha
ca³ym sercem takie, jakie
jest... Aø siÍ wzruszy³em...
Ale powiem Wam coú
wiÍcej. Oto bowiem doskona³a pora, abym przedstawi³ swoje w³asne pocz¹tki.
PozwÛlcie mi na ten przywilej.
Dwie deski i†4,7
mikro
W†roku 1978, po kilkuletnim terminowaniu na
monofonicznych kaseciakach, za wszystkie zgromadzone oszczÍdnoúci kupi³em pierwszy magnetofon
stereofoniczny - szpulowy
MK2405. Mia³ on wbudowane po bokach g³oúniki
szerokopasmowe, umoøliwiaj¹ce odtwarzanie stereofoniczne. Taki system nag³oúnienia musia³ mi wystarczyÊ, poniewaø na zakup pary zespo³Ûw g³oúnikowych - jakichkolwiek nie mog³em liczyÊ w†bliskiej perspektywie. Zrodzi³
siÍ pomys³ zbudowania ich
samemu, choÊby najprostszych, bo przecieø bÍdzie
taniej. Zasugerowa³em siÍ
popularn¹ wÛwczas konstrukcj¹ Tonsilu, typu
ZWG-15C, czyli dwudroønymi ìpiÍtnastkamiî (15W)
w†ma³ej obudowie zamkniÍtej. Kupi³em g³oúniki
GDN16/12 (czyli 12-watowy 16-cm nisko-úredniotonowy, bo wersja 15-watowa - GDN16/15 - stosowana w†oryginalnych zespo³ach ZWG15, akurat nie
by³a dostÍpna) i†wysokotonowy GDW9/15, czyli stoøkowy ìpapierzakî. Nie
59
E S E J
mia³em øadnego przygotowania elektroakustycznego,
by³em uczniem pierwszej
klasy liceum w†klasie matematyczno-fizycznej, ale
oceny z†fizyki Wam nie
zdradzÍ. Wpadlibyúcie
w†kompleksy, ale tylko
dlatego, øe wtedy by³ odwrotny system punktowania. Nie ba³em siÍ jednak
prostego majsterkowania
i†mia³em kolegÍ kombinuj¹cego z†elektronik¹. Od niego dowiedzia³em siÍ, øe
w†zespole g³oúnikowym jest
coú zwanego zwrotnic¹
i†on teø obieca³ mi ow¹
zwrotnicÍ przygotowaÊ.
Czekaj¹c na wyniki jego
prac, przygotowywa³em
obudowÍ. Wyci¹³em z†p³yty wiÛrowej potrzebne
úcianki, wykona³em otwory
pod g³oúniki, i†w†pierwszym ruchu montowania
po³¹czy³em front i†spÛd.
Tymczasem kolega, juø
wielokrotnie ponaglany,
ujawni³ mi wreszcie schemat tajemniczej zwrotnicy.
PamiÍtam jak dzisiaj,
w†szkolnej szatni Gonzo
ciÍøko westchn¹³, spojrza³
w†sufit i†powiedzia³: ìKup
kondensator MKSE 4,7
mikro i†po³¹cz szeregowo
z†wysokotonowymî. By³em
zawiedziony i†zszokowany.
Zapyta³em: ìTylko to?
I†dlaczego taka dziwna
wartoúÊ?î Tyle dni obliczania, i†w†ich wyniku wziÍty
z†sufitu jeden kondensator?
Odpowiedü
musia³a
brzmieÊ: ìWystarczy 4,7
mikro, bo taka wartoúÊ
wystÍpuje.î Zdziwienie by³o coraz wiÍksze. ìTo nie
uøyjemy takiej wartoúci, jaka jest potrzebna, tylko takiej, jaka wystÍpuje w†pojedynczym elemencie?î
W†koÒcu jako uczeÒ klasy
o†profilu úcis³ym by³em
ukierunkowany na szanowanie wynikÛw obliczeÒ.
Pewnie us³ysza³em: ìTo
nie ma duøego znaczeniaî
- i†musia³em siÍ z†tym pogodziÊ, bo Gonzo juø znikn¹³, znudzony rozmow¹
z†dyletantem. Gdzieú wiÍc
kupi³em 4,7 mikro (co nie
by³o takie ³atwe) i†przyst¹pi³em do montaøu koÒcowego. Do tej pory z³oøone
zosta³y ze sob¹ tylko dwie
úcianki, moøe zreszt¹ z³oøy³em je dopiero teraz,
w†kaødym razie spiesz¹c
siÍ do przykrÍcania i†pod³¹czania g³oúnikÛw uzna³em, øe to ìna razieî wystarczy - s¹dzi³em bowiem,
øe obudowa pe³ni rolÍ
platformy do zamocowania
g³oúnikÛw i†os³ony dla
nich, jak i†zwrotnicy, wystÍpuj¹cej u†mnie przecieø
w†formie szcz¹tkowej.
A†poniewaø nie zaleøa³o
mi w†ogÛle na sprawach
estetycznych, dodanie
wszystkich pozosta³ych
úcianek od³oøy³em na pÛüniej. Nie mia³em pojÍcia,
jak¹ rzeczywiúcie funkcjÍ
pe³ni obudowa. G³oúniki
siÍ trzyma³y i†gra³y†- i†czego chcieÊ wiÍcej? I†do dzisiaj
pamiÍtam
tamto
brzmienie. Wcale go nie
idealizujÍ, w†ogÛle nie
mia³o basu, a†mimo to bardzo mnie cieszy³o. I†teraz
zdajÍ sobie sprawÍ, øe to
by³ ten prze³omowy moment, kiedy, wtedy o†tym
nie wiedz¹c, rozpocz¹³em
d³ug¹ wÍdrÛwkÍ i†pasjonuj¹c¹ przygodÍ. Ca³e szczÍúcie bowiem, øe moja pierwsza ìkonstrukcjaî mi siÍ
spodoba³a. Gdybym uzna³,
øe†nic z†tego nie wysz³o,
kupi³bym po pewnym czasie gotowe kolumny, jako
jedyny pewny sposÛb zdobycia dobrego düwiÍku.
A†poniewaø przedsiÍwziÍcie
siÍ uda³o (wed³ug mnie),
warto je by³o kontynuowaÊ. Nikt mnie tak nie
straszy³, jak ja teraz straszÍ innych. I†tu jest problem. ZdajÍ sobie bowiem
sprawÍ z†tego, øe gwa³towne uúwiadomienie ochotnikom, na co siÍ porywaj¹,
wielu z†nich moøe zniechÍciÊ, podczas gdy ostroøniejsze dawkowanie tej
wiedzy moøe ich podpuúciÊ, zachÍciÊ i†ostatecznie...
uszczÍúliwiÊ.
Podejrzewam, øe wiÍkszoúÊ konstruktorÛw zespo³Ûw g³oúnikowych, czy to
pozostaj¹cych amatorami,
czyli przygotowuj¹cych kolejne projekty na potrzeby
swoje i†swoich znajomych,
czy zajmuj¹cych siÍ tym
juø zawodowo, ma w†g³Íbokich korzeniach w³aúnie
tego rodzaju pocz¹tki.
Gdzie samodzielne skonstruowanie kolumn mia³o
tylko s³uøyÊ zaspokojeniu
potrzeby ich posiadania za
moøliwie najniøsz¹ cenÍ
lub w†najlepszym razie
powodowane by³o wizj¹
posiadania jakichú oryginalnych, trudnych do kupienia konstrukcji. Ten
drugi motyw jest jednak
najczÍúciej drugim etapem.
S¹ teø moøe tacy, ktÛrzy
doznali olúnienia i†po
prostu ktÛregoú dnia postanowili zostaÊ konstruktorami kolumn, a†inni
kszta³cili siÍ w†kierunku
ogÛlnoelektronicznym, aby
na koÒcu tej drogi wybraÊ
g³oúnikow¹ specjalizacjÍ.
S¹dzÍ jednak, øe g³Íboko
zakorzeniona pasja, wyrastaj¹ca z†pierwotnej potrzeby - czy koniecznoúci zbudowania sobie pierwszej pary zespo³Ûw g³oúnikowych, jest najlepszym
pocz¹tkiem drogi.
PiÍkno i†szczeroúÊ
zespo³u g³oúnikowego
Klang + Ton − bardzo zasłużony
niemiecki dwumiesięcznik dla
konstruktorów−hobbystów
60
Hobby HiFi − dwumiesięcznik założony
przez wieloletniego redaktora Klang + Ton
A†konstruowanie kolumn wci¹ga, bo kolumny
graj¹ i†do tego wygl¹daj¹!
S¹ najwdziÍczniejszym
urz¹dzeniem elektroakustycznym do kszta³towania,
po czÍúci urz¹dzeniem, po
czÍúci instrumentem, po
czÍúci rzeüb¹. Ich projektant staje siÍ wiÍc nie tylko inøynierem, ale i†artys-
Elektronika Praktyczna 11/2003
E S E J
t¹ (chociaø niekoniecznie
z†odpowiednimi dyplomami). Zbudowanie ³adnej
i†dobrze graj¹cej kolumny
napawa wiÍc dum¹ podwÛjn¹ czy nawet potrÛjn¹. Moøna popuúciÊ wodze
fantazji, kombinuj¹c z†rÛønymi uk³adami g³oúnikÛw,
a†wszystko jest widoczne
i†odzywa siÍ do nas øywym g³osem. Zespo³y g³oúnikowe s¹ z†jednej strony
ustrojami bardzo skomplikowanymi, gdy weümie siÍ
pod uwagÍ wszystkie zjawiska, jakie w†nich i†bezpoúrednio wokÛ³ nich zachodz¹, z†drugiej strony,
przynajmniej pozornie, bardzo czytelnymi. Uk³ady
wzmacniacza schowane s¹
pod pokryw¹ obudowy,
ktÛrej kszta³t w†zasadzie
nie ma znaczenia dla funkcjonowania, a†to co w†kolumnie najwaøniejsze g³oúniki - widaÊ jak na
d³oni, a†obudowa jest integraln¹ czÍúci¹ akustycznej
koncepcji.
Wzmacniacz rÛwnieø
moøe wygl¹daÊ piÍknie,
ale to, czy ma srebrne,
czy z³ote ga³ki, nic nam
nie mÛwi o†jego jakoúci
i†zasadach, jakie przyúwieca³y konstruktorowi. No,
chyba øe†jest to wzmacniacz lampowy z†lampami
na wierzchu. Natomiast
liczba i†uk³ad g³oúnikÛw
w†kolumnie, jej wielkoúÊ
i†kszta³t, mÛwi¹ juø bardzo wiele o†zamiarach
konstruktora. Czy chcia³
stworzyÊ coú klasycznego,
czy niekonwencjonalnego.
Do ma³ego pomieszczenia,
czy do remizy straøackiej.
Øaden uk³ad g³oúnikÛw
sam w†sobie nie gwarantuje niczego (moøe poza
k³opotami, jakie gwarantuj¹ zespo³y bardzo rozwiniÍte), samo uøycie najlepszych przetwornikÛw rÛwnieø - ìmÛzgiemî kolumny jest bowiem schowana
zwrotnica - ale i†tak, tylko widz¹c kolumnÍ, dowiadujemy siÍ o†niej bardzo wiele.
Konstruowanie kolumn
jest zajÍciem dla ludzi
Elektronika Praktyczna 11/2003
E S E J
o†szerokich horyzontach.
Zabrzmia³o to nieskromnie,
ale mam na myúli innych
konstruktorÛw (sam nie
potrafiÍ wysy³aÊ SMS-Ûw,
chociaø od niedawna potrafiÍ korzystaÊ z†bankomatu). Tak jak poøartowaliúmy sobie z†kapryúnych audiofilÛw, bÍd¹cych czÍsto
ignorantami w†sprawach
elektrotechnicznych, tak teø
elektronikom warto zwrÛciÊ
uwagÍ, øe ich wiedza
ìuk³adowaî bÍdzie dalece
niewystarczaj¹ca dla szybkiego osi¹gniÍcia wysokich
umiejÍtnoúci w†konstruowaniu kolumn. Audiofile musz¹ pokornie przyj¹Ê spor¹
dawkÍ nauk technicznych o†elektronice i†akustyce,
elektronicy musz¹ dowiedzieÊ siÍ o†akustyce i†zacz¹Ê krytycznie s³uchaÊ, bo
jest to podstawowe narzÍdzie oceny jakoúci zespo³u
g³oúnikowego. Ani podejúcie abstrahuj¹ce od techniki, ani podejúcie stricte
techniczne, nie wrÛøy nic
dobrego.
Jeøeli chce siÍ zbudowaÊ kolumny oryginalne,
trzeba siÍ teø wykazaÊ talentami architektonicznymi,
i†wreszcie podczas montaøu
pos³ugiwaÊ siÍ wieloma
narzÍdziami. I†ca³y czas
kombinowaÊ.
Tak wykombinowa³em
juø prawie piÍÊ stron, ale
ostatecznie jednak jestem
tutaj nie tylko po to, aby
filozofowaÊ, ale aby przedstawiÊ rzeteln¹ wiedzÍ.
I†pierwsza lekcja za miesi¹c, a†na koniec myúl
godna Seneki: düwiÍk
z†ìfirmowychî kolumn jest
w†50 procentach tak dobry, jak jest rzeczywiúcie,
i†w†50 procentach tak
dobry, jak bardzo w†to
wierzymy. DüwiÍk†z†kolumn skonstruowanych samodzielnie jest w†99 procentach tak dobry, jak bardzo w†to wierzy ich konstruktor i†uøytkownik. Ale
dopiero kolumny dobre na
100 procent s¹ naprawdÍ
dobrymi kolumnami.
Brzmi dobrze.
Andrzej Kisiel, Audio
61
Zegar ze 100−letnim kalendarzem i dwukanałowym
P R O termometrem
J E K T Y
Zegar ze 100−letnim
kalendarzem
i dwukanałowym
termometrem, część 2
AVT−513
Prezentowany w†artykule
zegar jest kolejnym naszym
pomys³em ìdla domuî,
u³atwiaj¹cym nasze
ìcodzienne" øycie. Jest ono
bowiem zaleøne od
biegn¹cego czasu, ktÛry
naleøy nieustannie
kontrolowaÊ. Waøna teø jest
temperatura, ktÛra moøe
negatywnie wp³ywaÊ na
samopoczucie wiÍkszoúci
z†nas?
Rekomendacje: ze wzglÍdu
na duø¹ funkcjonalnoúÊ
i†przydatnoúÊ, zegar polecamy
wszystkim Czytelnikom.
Dobrych przyrz¹dÛw do
kontroli up³ywaj¹cego czasu i
zmian temperatury nigdy nie
jest za duøo.
Elektronika Praktyczna 11/2003
Montaø i†uruchomienie
Zegar zmontowano na dwustronnej p³ytce drukowanej, rozmiarem dopasowanej do wielkoúci
wyúwietlacza. Widok rozmieszczenia elementÛw na p³ytce przedstawiony na rys. 4. Montaø naleøy
rozpocz¹Ê od wlutowania rezystorÛw, nastÍpnie diod D1 i†D2 oraz
podstawki pod mikrokontroler.
NastÍpnie naleøy zamontowaÊ
kondensatory, stabilizator napiÍcia i†z³¹cza oraz tranzystor. Przyciski S1...S4 oraz wyúwietlacz
naleøy†zamontowaÊ od strony elementÛw. Otwory do mocowania
p³ytki oraz umieszczenia z³¹cza
wyúwietlacza (wykonane w†p³ytce) umoøliwiaj¹ bezpoúrednie
przymocowanie wyúwietlacza do
p³ytki zegara.
Po prawid³owym zmontowaniu
uk³adu naleøy do³¹czyÊ czujniki
temperatury. Czujniki naleøy do³¹czyÊ odpowiednio do z³¹cza
CON3 dla czujnika pierwszego
i†do z³¹cza CON4 dla drugiego
czujnika. Chociaø czujniki typu
DS1820 mog¹ pracowaÊ bez
zewnÍtrznego zasilania (zasilane
s¹ z†linii transmisyjnej), to
w†przypadku znacznego oddalenia
czujnika od p³ytki zaleca siÍ
do³¹czenie plusa napiÍcia zasilania do czujnika. NapiÍcie 5V jest
dostÍpne na z³¹czach CON3
i†CON4.
Czujniki mog¹ byÊ oddalone
od p³ytki zegara na odleg³oúÊ
oko³o 30 metrÛw. Jako linia transmisyjna moøe byÊ wykorzystana
skrÍtka telefoniczna.
Jeúli czujniki zostan¹ pod³¹czone, to moøna rozpocz¹Ê uruchamianie zegara. W†tym celu do
z³¹cza CON1 naleøy do³¹czyÊ
ürÛd³o napiÍcia o†wartoúci 11...12
V†i†wydajnoúci pr¹dowej minimum 200 mA. NapiÍcie zasilaj¹ce
nie moøe mieʆwiÍkszej wartoúci,
gdyø moøe to spowodowaÊ uszkodzenie diod podúwietlaj¹cych wyúwietlacz. Najlepiej zastosowaÊ zasilacz AC o†napiÍciu znamionowym 9†V. W†wyniku prostowania
i†filtrowania na wyjúciu otrzymuje
siÍ napiÍcie o†wartoúci oko³o 11,5
V. NapiÍcie zasilania nie moøe
byÊ niøsze od napiÍcia baterii
podtrzymuj¹ce pracÍ, gdyø†powodowa³oby to jej roz³adowania.
Jako ürÛd³o napiÍcia rezerwowego
51
Zegar ze 100−letnim kalendarzem i dwukanałowym termometrem
zywany czas bÍdzie znacz¹co odbiega³ od czasu wzorcowego, naleøy doúwiadczalnie skorygowaÊ
czÍstotliwoúÊ generatora poprzez
regulacjÍ kondensatorem C5, aø
do uzyskania jak najwiÍkszej stabilnoúci odmierzanego czasu. Zastosowany trymer umoøliwia
znaczn¹ zmianÍ czÍstotliwoúci generatora, co pozwala na dok³adne
jego dostrojenie do wymaganej
czÍstotliwoúci.
Ustawianie czasu
Regulacji wszelkich parametrÛw dokonuje siÍ za pomoc¹
czteroprzyciskowej, wielofunkcyjnej klawiatury. Jedynym parametrem wymagaj¹cym prze³¹czenie
procesora w†tryb programowania
jest ustawianie aktualnego czasu
i†daty. Aby przejúÊ w†tryb programowania naleøy nacisn¹Ê przycisk
S2 (OK) i†przytrzymaÊ przez
oko³o†4†sekundy. Po tym czasie
zostanie uruchomiony tryb ustawiania czasu, a†na wyúwietlaczu
pojawi siÍ nastÍpuj¹cy napis:
Ustawianie czasu
gg:mm:00 DD-MM-2000
Rys. 4. Rozmieszczenie elementów
na płytce zegara
naleøy zastosowaÊ bateriÍ typu
6F22 (9 V). BateriÍ naleøy do³¹czyÊ do z³¹cza CON2.
Po pod³¹czeniu napiÍcia zasilania naleøy ustawiÊ kontrast wyúwietlacza potencjometrem PR1.
Po ustawieniu kontrastu na wyúwietlaczu powinien pojawiÊ siÍ
czas i†temperatura w†formacie:
0:00:01
23.4°C
01-01-2000
23.6°C
Wartoúci temperatury bÍd¹ zapewne inne, ale wyúwietlenie jakiejkolwiek wartoúci bÍdzie úwiadczy³o o†prawid³owej pracy uk³adu. Zostanie takøe w³¹czone podúwietlanie o jasnoúci 50% wartoúci maksymalnej.
Po uruchomieniu zegara moøna
rozpocz¹Ê programowanie czasu
i†obs³ugi. Zegar ma moøliwoúÊ
korygowania dok³adnoúci odmierzanego czasu, dlatego jeúli wska-
52
Jednoczeúnie zostan¹ podkreúlone jednostki roku, co sygnalizuje, øe ten parametr moøe byÊ
zmieniony. Po wprowadzeniu zegara w†tryb programowania odliczanie czasu jest nadal wykonywane, a†zmiana ustawieÒ jest dokonywana na pomocniczych komÛrkach pamiÍci, dlatego na†kaødym etapie ustawiania czasu programowanie moøna przerwaÊ naciskaj¹c przycisk S4 (ESC).
WÛwczas, bez wprowadzenia
zmian†nast¹pi powrÛt do wyúwietlania czasu i†temperatury.
Wprowadzanie czasu i†daty
rozpoczyna siÍ od roku, nastÍpnie
wprowadza siÍ miesiÍce, dni, godziny i†minuty. WartoúÊ sekund
jest automatycznie zerowana przy
wychodzeniu z†procedury programowania. Ustawianie daty rozpoczyna siÍ od roku, aby ustaliÊ
maksymaln¹ liczbÍ dni w†miesi¹cu. Przy ustawianiu roku moøna
zmieniaÊ tylko dwie ostatnie cyfry, co pozwala na ustawienie roku
w†zakresie 2000...2099. ZmianÍ
wartoúci roku wykonuje siÍ klawiszem S1 (UP) lub S3 (DOWN).
Po ustawieniu odpowiedniego roku naleøy nacisn¹Ê klawisz S2
(OK). Po jego naciúniÍciu nast¹pi
przejúcie do ustawiania miesi¹ca.
Numer miesi¹ca ustawia siÍ tak
samo jak w†przypadku roku. Po
ustawieniu w³aúciwego miesi¹ca
naleøy nacisn¹Ê klawisz S2 (OK)
i†nast¹pi przejúcie do ustawiania
dni miesi¹ca. O†ile zakres moøliwych zmian dla lat i†miesiÍcy
jest zawsze taki sam, to w†przypadku dni zakres zmian†zaleøy od
bieø¹cego roku i†miesi¹ca. Procedura ustawiania dnia miesi¹ca
zosta³a tak skonstruowana, øe†nie
ma moøliwoúci ustawienia wiÍkszego numeru dnia niø wynika to
z†maksymalnej liczby dni w†danym miesi¹cu i†roku. Dlatego nie
jest moøliwe ustawienia daty 31
lutego. Moøliwe jest natomiast
ustawienia daty 29 lutego, ale
tylko w†latach przestÍpnych. W
pozosta³ych latach luty moøe mieÊ
tylko 28 dni. Ustawienie odpowiedniego dnia miesi¹ca wykonuje
siÍ tak jak w†poprzednich przypadkach i zatwierdza klawiszem S2
(OK). NastÍpuje przejúcie do ustawiania godzin. Ustawianie godzin
wykonuje siÍ tak samo jak we
wczeúniejszych regulacjach, a klawiszem S2 przechodzi siÍ do ustawiania minut. Po ustawieniu minut
naciúniÍcie klawisza S2 (OK) spowoduje wprowadzenie nowych wartoúci czasu i†daty do w³aúciwego
licznika czasu i†nast¹pi powrÛt do
wyúwietlania czasu i†temperatury.
Od tej pory zegar bÍdzie pracowa³
z†nowymi nastawami.
Obs³uga zegara
Obs³uga zegara sprowadza siÍ
do wyboru parametrÛw, ktÛre maj¹ byÊ wyúwietlone. Funkcja pomiaru temperatury umoøliwia pomiar i†wyúwietlanie temperatury
w†dwÛch miejscach. Dla kaødego
z†czujnikÛw zapamiÍtywana jest
maksymalna i†minimalna wartoúÊ
temperatury. WartoúÊ temperatury
wyúwietlana po lewej stronie wyúwietlacza jest wynikiem pomiaru
z†czujnika do³¹czonego do z³¹cza
CON3 i†jest identyfikowana jako
ìT1î, natomiast wartoúÊ temperatury wyúwietlana z†prawej strony
jest wynikiem pomiaru czujnika
do³¹czonego do z³¹cza CON4 i†jest
identyfikowana jako ìT2î.
Do sprawdzenia maksymalnej
i†minimalnej wartoúci temperatury
zmierzonej przez czujnik ìT1î
naleøy nacisn¹Ê klawisz S1. Po
w³¹czeniu zasilania wyúwietlana
parametry bÍd¹ nastÍpuj¹ce:
Elektronika Praktyczna 11/2003
Zegar ze 100−letnim kalendarzem i dwukanałowym termometrem
T1max=20.0°C
T1min=20.0°C
S¹ to pocz¹tkowe wartoúci
ustawiane przy w³¹czeniu zasilania. Wraz ze zmian¹ mierzonej
temperatury wskazywane wartoúci bÍd¹ ulega³y zmianie. Jednak
pomiar temperatury jest wykonywany tylko wtedy, gdy zegar jest
w†trybie wyúwietlania czasu.
W†celu wyzerowania wartoúci
minimalnej i†maksymalnej naleøy nacisn¹Ê klawisz S2 (OK),
a†jako wartoúÊ minimalna i†maksymalna zostanie wpisana ostatnio zmierzona wartoúÊ temperatury. Aby powrÛciÊ do wyúwietlania czasu naleøy nacisn¹Ê klawisz S4 (ESC).
Wyúwietlanie temperatury minimalnej i maksymalnej dla drugiego czujnika jest uruchamiane
poprzez naciúniÍcie klawisza S3.
Na wyúwietlaczu pojawi siÍ napis
o†przyk³adowych wartoúciach:
T2max=35.7°C
T2min=-4.3°C
Elektronika Praktyczna 11/2003
Kasowanie wartoúci maksymalnej i†minimalnej wykonuje siÍ
tak samo jak dla czujnika pierwszego klawiszem S2 (OK). PowrÛt do wyúwietlania czasu nastÍpuje rÛwnieø po naciúniÍciu
klawisza S4 (ESC).
W³¹czanie i†wy³¹czanie podúwietlania wyúwietlacza wykonuje
siÍ naciskaj¹c krÛtkotrwale klawisz S2 (OK). Kaødorazowe naciúniÍcie powoduje zmianÍ stanu
podúwietlania na przeciwny. Dla
stanu wy³¹czenia podúwietlanie
jest ca³kowicie wy³¹czone, a†dla
stanu w³¹czenia intensywnoúÊ
podúwietlania wynika z zaprogramowanej wczeúniej. Po w³¹czeniu
zasilania intensywnoúÊ jest ustawiana na po³ow͆mocy. ZmianÍ
intensywnoúci podúwietlania wykonuje siÍ klawiszem S4 (ESC).
Regulacja intensywnoúci jest
przeprowadzana w†dziesiÍciu krokach, dlatego kaødorazowe naciúniÍcie klawisza S4 powoduje
zwiÍkszenie intensywnoúci o†10%.
Po dziesiÍciokrotnym naciúniÍciu klawisza S4 diody podúwietlaj¹ce wyúwietlacz zasilane s¹
maksymaln¹ moc¹. Kolejne naciúniÍcie klawisza S4 spowoduje
wy³¹czenie podúwietlania. Naciskaj¹c†ponownie klawisz S4 moc
podúwietlania bÍdzie zwiÍkszana. Jeúli intensywnoúÊ podúwietlania bÍdzie ustawiona na 0%,
to w³¹czanie podúwietlania klawiszem S2 (OK) nie przyniesie
efektu, gdyø podúwietlanie
bÍdzie prze³¹czane pomiÍdzy wy³¹czeniem i†wartoúci¹ 0%. WÛwczas diody podúwietlaj¹ce bÍd¹
wy³¹czone i†jedynym sposobem
w³¹czenia podúwietlania jest
zwiÍkszenie intensywnoúci klawiszem S4 (ESC).
Krzysztof P³awsiuk, AVT
[email protected]
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie
pod adresem: pcb.ep.com.pl oraz na
p³ycie CD-EP11/2003B w katalogu PCB.
53
Cyfrowy oscyloskop/analizator
P Rstanów
O J logicznych
E K T Y
Cyfrowy
oscyloskop/analizator
stanów logicznych,
część 2
AVT−529
Temat oscyloskopÛw
cyfrowych i†podobnych
przyrz¹dÛw by³ juø
wielokrotnie poruszany na
³amach Elektroniki
Praktycznej. Przedstawialiúmy
zarÛwno dopracowane
i†kosztowne przyrz¹dy
dostÍpne komercyjnie, jak
i†tanie - lecz proste pozwalaj¹ce skorzystaÊ z†zalet
techniki cyfrowej nawet
elektronikom-amatorom. Projekt
przedstawiony w†artykule ma
w†zamierzeniu ³¹czyÊ
przynajmniej czÍúÊ zalet tych
pierwszych z†dostÍpnoúci¹
i†niew¹tpliwymi walorami
edukacyjnymi tych drugich.
Rekomendacje:
zaawansowany technicznie
przyrz¹d, pozwalaj¹cy
wszystkim konstruktorom
zbliøyÊ siÍ - znacznie
bardziej niø dotychczas - do
najnowoczeúniejszych
opracowaÒ úwiatowych.
Elektronika Praktyczna 11/2003
Opis uk³adu oscyloskopu
CzÍúÊ cyfrowa
WiÍkszoúÊ blokÛw funkcjonalnych elektroniki cyfrowej zosta³a
zaimplementowana w†uk³adzie
FPGA (schemat czÍúci cyfrowej
pokazano na rys. 7a i†7b). Wykorzystano uk³ad firmy QuickLogic
charakteryzuj¹cy siÍ znacznym nadmiarem wewnÍtrznych po³¹czeÒ.
DziÍki temu moøna by³o
wykorzystaÊ wyprowadzenia uk³adu tak, aby projektowanie p³ytki
by³o ³atwe. Naleøy pamiÍtaÊ o†tej
moøliwoúci przy korzystaniu z†matryc FPGA, poniewaø optymalne
rozmieszczenie wyprowadzeÒ
sygna³Ûw oznacza nie tylko mniej
czasu spÍdzonego przy projektowaniu p³ytki, ale przede wszystkim
ìp³askiî (pozbawiony skrzyøowaÒ)
rozk³ad úcieøek pozwala na poprowadzenie wszystkich úcieøek sygna³owych po stronie elementÛw, a
strona przeciwna jest wolna.
W†uk³adach w.cz., takich jak kaødy
uk³ad cyfrowy pracuj¹cy przy 100
MHz, istotne znaczenie maj¹ kondensatory odsprzÍgaj¹ce. Te elementy umieszcza siÍ wiÍc bezpoúrednio pod wyprowadzeniami zasilania, aby zminimalizowaÊ indukcyjnoúÊ ich doprowadzeÒ. Dodatkowo, p³aszczyzna masy po stronie
lutowania moøe byÊ duøa i†nieprzerywana liniami sygna³owymi.
Naleøy pamiÍtaÊ o†umieszczeniu na pocz¹tku d³uøszych linii
sygna³owych, a†szczegÛlnie przenosz¹cych sygna³ zegara, rezystorÛw w³¹czonych szeregowo niedaleko nadajnika (rys. 8). DziÍki
temu odbicia od koÒca linii nie
odbijaj¹ siÍ ponownie od wyjúcia
nadajnika, co znacznie zmniejszy
jitter na tych liniach. Naleøy†unikaÊ duøych rÛønic w†d³ugoúci
úcieøek sygna³owych, poniewaø
powoduje to, øe sygna³ zegarowy
i†dane przybywaj¹ do danego uk³adu przesuniÍte w fazach. Moøe to
powodowaÊ b³Ídy.
Oczywiúcie, naleøy teø pamiÍtaÊ o†bardzo skutecznym odsprzÍganiu zasilania, poniewaø uk³ad
zawiera takøe bardzo wraøliwe na
wahania napiÍÊ zasilaj¹cych elementy analogowe. Zaleca siÍ wiÍc
stosowanie kondensatorÛw ceramicznych wlutowanych blisko
uk³adÛw scalonych oraz elektrolitycznych lub tantalowych przy
ürÛdle zasilania.
CzÍúÊ analogowa
Uk³ady analogowe nie poddaj¹
siÍ integracji tak ³atwo jak cyfrowe.
CzÍúÊ analogowa (schemat pokazano na rys. 9) jest wiÍc z³oøona
z†kilku uk³adÛw, w†wiÍkszoúci
wzmacniaczy. Oznacza to, øe odpowiedzialnoúÊ za prawid³owe
poprowadzenie linii po³¹czeniowych miÍdzy czÍúciami spada na
projektanta. Nie jest to zadanie
³atwe, poniewaø przyjÍto, øe po-
43
Cyfrowy oscyloskop/analizator stanów logicznych
Rys. 7a. Schemat elektryczny cyfrowej części oscyloskopu (cześć 1)
44
Elektronika Praktyczna 11/2003
Cyfrowy oscyloskop/analizator stanów logicznych
Rys. 7b. Schemat elektryczny cyfrowej części oscyloskopu (cześć 2)
ziom szumÛw w†paúmie do 30 MHz
nie powinien byÊ wyøszy niø 1†mV.
Przy czÍstotliwoúciach rzÍdu
1†MHz takie napiÍcie moøe bardzo ³atwo powstaÊ w†wyniku
przeprowadzenia zaszumionej
úcieøki zasilaj¹cej czy sygna³u†cyfrowego rÛwnolegle do úcieøki sygna³u analogowego. Najskuteczniejszym rozwi¹zaniem jest zastoso-
Elektronika Praktyczna 11/2003
wanie transmisji rÛønicowej. Czasami jest to moøliwe (naleøy
wtedy pamiÍtaÊ o†prowadzeniu
úcieøek rÛwnolegle i†blisko siebie), jednak w wiÍkszoúci przypadkÛw dla sygna³Ûw analogowych uøywa masy jako poziomu
odniesienia. Poø¹dane jest zatem
wykonanie na p³ytce rozleg³ej
i†ci¹g³ej p³aszczyzny masy.
Rys. 8. Nieprawidłowe i prawidłowe
dopasowanie sygnału przy źródle
45
Cyfrowy oscyloskop/analizator stanów logicznych
Rys. 9. Schemat elektryczny części analogowej
46
Elektronika Praktyczna 11/2003
Cyfrowy oscyloskop/analizator stanów logicznych
Rys. 10. Dopasowanie wyjścia
wzmacniacza
Niestety, takøe i†od tej regu³y
istniej¹ wyj¹tki. Przede wszystkim
wokÛ³ uk³adÛw pobieraj¹cych duøe
impulsy pr¹du z†p³aszczyzny masy
(typowe dla przetwornic impulsowych) jej potencja³ jest silnie zaburzony. Prowadzi to do nieprawid³owego dzia³ania czu³ych wzmacniaczy. Najprostszym rozwi¹zaniem
jest usuniÍcie p³aszczyzny masy
spod takiego uk³adu. To pozbawia
jednak uk³ad ekranowania od spodu, ktÛre zwykle wp³ywa korzystnie
na szumy w†uk³adzie. Okaza³o siÍ,
øe duøo lepsz¹ metod¹ jest zaprojektowanie szczelin w†p³aszczyünie
masy umieszczonych tak, øe uniemoøliwiaj¹ one rozp³yw pr¹du szumÛw†pod uk³adami analogowymi,
albo podzia³ p³aszczyzny masy na
dwie czÍúci po³¹czone drutem z
pere³k¹ ferrytow¹.
Drugim wyj¹tkiem od regu³y
ìduøej ci¹g³ej p³aszczyzny masyî
jest przypadek, kiedy zastosowany
jest uk³ad wzmacniacza o†duøym
wzmocnieniu. Okazuje siÍ bowiem,
øe jeøeli impedancja obwodu
sprzÍøenia zwrotnego jest zbyt ma³a, to uk³ad ten ma w¹skie pasmo.
Z†kolei zwiÍkszanie impedancji obwodu sprzÍøenia zwrotnego stanowi powaøne zagroøenie nie tylko
dla funkcjonalnoúci, ale nawet dla
integralnoúci uk³adu. OtÛø†duøa impedancja w†po³¹czeniu z†pojemnoúciami pasoøytniczymi stanowi przesuwnik fazowy. Jeøeli przesuniÍcie
fazy stanie bÍdzie 180o przy wzmocnieniu przekraczaj¹cym 1, to
wzmacniacz stanie siÍ generatorem.
Moøe wÛwczas nast¹piÊ nawet
przegrzanie wzmacniacza wskutek
prze³adowywania pojemnoúci pasoøytniczych na wyjúciu. Przy ma³ych impedancjach lub ma³ych pojemnoúciach zapobiega temu ograniczone pasmo wzmacniacza.
Jeøeli impedancja pÍtli sprzÍøenia zwrotnego nie powinna byÊ
ma³a (ze wzglÍdu na wymagania
dotycz¹ce pasma), to naleøy zmniej-
Elektronika Praktyczna 11/2003
szyÊ pojemnoúci pasoøytnicze. Ich
g³Ûwnymi sk³adnikami s¹: pojemnoúci miÍdzy úcieøkami oraz miÍdzy úcieøk¹ a†p³aszczyzn¹ masy.
Najprostszym rozwi¹zaniem
jest wiÍc prowadzenie moøliwie
krÛtkich úcieøek sprzÍøenia zwrotnego jak najdalej od innych
úcieøek. Poza tym moøna usun¹Ê†p³aszczyznÍ masy spod obwodu sprzÍøenia zwrotnego, pogarszaj¹c w†ten sposÛb nieco wspÛ³czynnik szumÛw, ale zapewniaj¹c
stabilnoúÊ wzmacniacza.
Wiele wzmacniaczy, w†tym
THS7002, ma pewn¹ optymaln¹
wartoúÊ impedancji sprzÍøenia
zwrotnego, zapewniaj¹c¹ minimalne szumy. Dla tego uk³adu wynosi
ona ok. 1†kΩ. Jest to wartoúÊ, przy
ktÛrej stosunkowo ³atwo osi¹gn¹Ê
stabilnoúÊ, wiÍc nie by³o potrzeby
usuwania p³aszczyzny masy.
Oczywiúcie naleøy pamiÍtaÊ
o†nieobci¹øaniu wyjúcia wzmacniacza elementami o†charakterze
pojemnoúciowym. Zgodnie z regu³ami dobrego projektowania naleøy umieúciÊ niewielk¹ rezystancjÍ (ok. 50 Ω) na wyjúciu wzmacniacza (oczywiúcie za obwodem
sprzÍøenia zwrotnego) - rys. 10.
Ta rezystancja zapobiega wtÛrnym
odbiciom sygna³u od ürÛd³a.
Zasilanie
Powszechne jest przekonanie, øe
w†uk³adach analogowych nie wolno stosowaÊ przetwornic impulsowych. To nieprawda. Przetwornice
impulsowe s¹ elementami, bez
ktÛrych trudno wyobraziÊ sobie
urz¹dzenia przenoúne. Czasami nie
ma zreszt¹ wyboru. Zwyczajny zasilacz dla przedstawianego oscyloskopu by³by od niego wiÍkszy
i†wytwarza³by duøo ciep³a.
W†uk³adach analogowych moøna, i†niekiedy naleøy, stosowaÊ
przetwornice impulsowe. Trzeba
tylko zadbaÊ o odfiltrowanie
szumÛw.
CzÍúÊ zwi¹zanych z tym problemÛw moøna rozwi¹zaÊ juø na
etapie projektowania uk³adu. Przede wszystkim naleøy wprowadziÊ
filtry przed i†za przetwornic¹ impulsow¹. Najlepsze s¹ filtry typu
π (rys. 11), sk³adaj¹ce siÍ z†dwÛch
kondensatorÛw, cewki i†- ewentualnie - d³awika w postaci pere³ki
ferrytowej, bardzo efektywnie eliminuj¹cego zak³Ûcenia w.cz. Elementy powinny byÊ w†obudowach
SMD, aby zminimalizowaÊ wartoúci
indukcyjnoúci pasoøytniczych
(szczegÛlnie dotyczy to kondensatorÛw). Kaødy z†kondensatorÛw powinien byÊ ceramiczny, o†moøliwie
ma³ej stratnoúci. Bardzo dobre rezultaty przynosi takøe zastosowanie
kondensatorÛw ceramicznych 100
nF w†po³¹czeniu z†kondensatorami
tantalowymi 22 µF. Nie zaleca siÍ
stosowania wy³¹cznie kondensatorÛw tantalowych, poniewaø maj¹
one zbyt duø¹ stratnoúÊ.
Podczas projektowania p³ytki
rozwi¹zuje siÍ pozosta³e problemy
dotycz¹ce szumu pochodz¹cego od
przetwornicy impulsowej. Przede
wszystkim, im dalej przetwornica
znajduje siÍ od elektroniki analogowej, tym lepiej. Po drugie, przetwornica powinna mieÊ w³asn¹,
wydzielon¹ sekcjÍ p³aszczyzny masy (dwa rozwi¹zania omÛwiono
powyøej). Elementy indukcyjne filtru π powinny znajdowaÊ siÍ bezpoúrednio nad szczelin¹ oddzielaj¹c¹ sekcje p³aszczyzny masy. Jak
najmniej przewodÛw powinno przekraczaÊ granicÍ tych p³aszczyzn.
Blisko kaødego uk³adu warto
umieúciÊ ceramiczne kondensatory 100 nF, w³¹czone miÍdzy szyny zasilaj¹ce a†masÍ. Naleøy teø
rozwaøyÊ zamkniÍcie czÍúci analogowej w†ekranie metalowym,
chociaø skutki zak³ÛceÒ elektromagnetycznych moøna zminimalizowaÊ poprzez przestrzeganie regu³ dotycz¹cych p³aszczyzny masy i†transmisji rÛønicowej.
Odprowadzanie ciep³a
Chociaø uk³ady cyfrowe pracuj¹ce przy 100 MHz nie wydzielaj¹
wiele ciep³a, o†tyle uk³ady analogowe o†szerokim paúmie zuøywaj¹ sporo mocy i†musz¹ rozproszyÊ j¹ do otoczenia.
Uk³ady analogowe wykorzystane w†projekcie s¹ umieszczone
w†specjalnych obudowach, ktÛre
pozwalaj¹ na bezpoúredni dostÍp
do metalowej podstawy, na ktÛrej
osadzony jest uk³ad scalony. Przylutowanie tej podstawy do masy
powoduje, øe ciep³o wytwarzane
Rys. 11. Filtr zasilania typu π
47
Cyfrowy oscyloskop/analizator stanów logicznych
Tab. 1. Rejestry zaimplementowane w układzie FPGA
Adres
Blok rejestrów
Rejestr
Opis
00w
kana³ 1
val1
wartoϾ progowa (tryb analogowy)
szablon bitów (tryb cyfrowy)
maska bitów (tryb cyfrowy)
5 0: globalnie zablokuj wyzwalanie
4 0: wejœcie 1; 1: wejœcie 2
3 1: ignoruj kana³ przy wyzwalaniu
2 1: tryb cyfrowy; 0: analogowy
1 0: negacja warunku
0 0: zbocze rosn¹ce; 1: opadaj¹ce
jw.
jw.
jw.
bardziej znacz¹cy bajt d³ugoœci próby
mniej znacz¹cy bajt d³ugoœci próby
bardziej znacz¹cy bajt adresu odczytu
mniej znacz¹cy bajt adresu odczytu
3 0: zegar 1; 1: zegar 2
2 0: w³¹cz podzia³ przez 10
1 0: w³¹cz podzia³ przez 5
0 0: w³¹cz podzia³ przez 2
bardziej znacz¹cy bajt wskaŸnika zapisu danych
mniej znacz¹cy bajt wskaŸnika zapisu danych
dane pochodz¹ce z pamiêci kana³u 1
dane pochodz¹ce z pamiêci kana³u 2
dane pochodz¹ce z pamiêci kana³u 3
dane pochodz¹ce z pamiêci kana³u 4
01w
02w
mask1
cfg1
04w
08w
0Cw
10w
11w
12w
13w
18w
kana³ 2
kana³ 3
kana³ 4
pompa danych
dzielnik sygna³u
zegarowego
00r
01r
04r
05r
06r
07r
pompa danych
kana³
kana³
kana³
kana³
1
2
3
4
jw.
jw.
jw.
rlhi
rllo
rahi
ralo
div
dphi
dplo
ch1
ch2
ch3
ch4
Tab. 2. Rozkazy sterujące pracą oscyloskopu
Kod
Nazwa
Opis
Dane zwrotne (bajty)
0
1
2
3
ARQ
RST
RGW
WRB
2:
1:
1:
1:
4
5
RDB
RDS
6
7
I2C
SSS
¿¹danie potwierdzenia
reset œcie¿ki danych
odczyt flagi ukoñczenia
zapis bajtu do FPGA;
dana w drugim bajcie
odczyt bajtu z FPGA
odczyt bloku próbek;
segment w drugim bajcie
zapis na szynie I2C
adres: krok próbkowania
dane: przesuniêcie
wewn¹trz segmentu
1: odczytany bajt
1024: odczytany blok próbek
1: potwierdzenie
1: potwierdzenie
przez uk³ad jest rozpraszane przez
duø¹ metalow¹ powierzchniÍ, jak¹
powinna stanowiÊ poprawnie zaprojektowana p³aszczyzna masy.
Jest to jedna z†jej funkcji.
Jedynym mankamentem tej dosyÊ nowej - technologii jest
trudnoúÊ w†rÍcznym lutowaniu
obudÛw tego typu.
Projekt w FPGA
Opis budowy uk³adu w strukturze FPGA przygotowano w postaci
schematu. Nie skorzystano z†jÍzykÛw HDL, poniewaø schemat czasami pozwala na wiÍksz¹ kontrolÍ
nad projektem.
W†tab. 1 umieszczono listÍ
rejestrÛw udostÍpnianych przez
uk³ad FPGA.
48
negacja logiczna bajtów rozkazu
potwierdzenia
niezerowa wartoœæ oznacza ukoñczenie pomiaru
potwierdzenia
Mikrokontroler
Kontroler transmisji jest uk³adem typu RISC. Producent - firma
Texas Instruments - wraz z†akcj¹
promocyjn¹ kontrolerÛw skierowan¹ do profesjonalistÛw zdecydowa³a siÍ wspieraÊ takøe projekty
niewielkie i hobbystyczne. DziÍki
udostÍpnieniu pe³nej informacji
oraz pojedynczych sztuk amatorom, powsta³ jeden z†doskonalszych kompilatorÛw dla mikrokontrolerÛw. Istnieje mianowicie wersja GCC dla tych uk³adÛw, a†dziÍki przemyúlanemu zestawowi instrukcji kod ³atwo poddaje siÍ
optymalizacjom podobnym do stosowanych w†klasycznych procesorach (czego nie da siÍ powiedzieÊ
np. o†nieúmiertelnym MCS-51).
Kontroler odbiera pakiety danych po 2†bajty z†portu szeregowego (115200 bodÛw, 8†bitÛw danych, bez parzystoúci). Trzy najbardziej znacz¹ce bity pierwszego
bajtu to rozkaz, pozosta³ych piÍÊ
stanowi adres. Drugi bajt zawiera
dane. Zdefiniowano osiem rozkazÛw, ktÛre zestawiono w†tab. 2.
Kontroler moøe prÛbkowaÊ sygna³ pochodz¹cy z†FPGA, tak øe
moøliwe jest osi¹gniÍcie czÍstotliwoúci prÛbkowania niøszych niø
1†MHz.
Komputer PC
Duøa czÍúÊ funkcjonalnoúci oscyloskopu jest realizowana przez
oprogramowanie napisane w†ca³oúci w†jÍzyku Ell pracuj¹ce na
komputerze PC pod kontrol¹ systemu Linux. Kontroler dostarcza
komputerowi ìsurowychî danych
pomiarowych. S¹ one odbierane
przez komputer, przetwarzane
i†wyúwietlane.
Oprogramowanie zapewnia nie
tylko moøliwoúÊ sterowania funkcjami takimi jak: zmiana szybkoúci
prÛbkowania, przesuniÍcie na ekranie punktu wyzwalania czy zmiana wzmocnienia wzmacniaczy
wejúciowych. Program realizuje
takøe transformatÍ FFT (rys. 12),
zmieniaj¹c oscyloskop w†prosty
analizator czÍstotliwoúci oraz rÛøne
funkcje matematyczne. Okazuj¹ siÍ
one byÊ przydatne np. podczas
pomiaru sygna³Ûw rÛønicowych,
kiedy warto wyúwietliÊ oddzielnie
sumÍ (szum) i†rÛønicÍ (wartoúÊ
uøyteczn¹) sygna³Ûw. Innym przyk³adem jest obserwowanie sygna³Ûw†komunikacyjnych, kiedy do
dyspozycji mamy sygna³y kwadraturowe I/Q, a†potrzebna jest obserwacja modu³u i†fazy. Moøna teø
realizowaÊ proste filtry FIR (do 16
punktÛw odpowiedzi impulsowej rys. 13).
Ponadto program umoøliwia
korzystanie z†kursorÛw pomiarowych, podaj¹c ich wartoúci oraz
odleg³oúÊ miÍdzy nimi. W†przypadku pomiaru czasu wyúwietlana
jest takøe czÍstotliwoúÊ odpowiadaj¹ca zaznaczonemu okresowi
(rys. 14). Standardowym trybem
pracy wiÍkszoúci oscyloskopÛw
wielokana³owych jest tryb X-Y.
Jedyn¹ nietypow¹ cech¹ przedstawianego oprogramowania jest
moøliwoúÊ korzystania z†funkcji
matematycznych na obu osiach
Elektronika Praktyczna 11/2003
Cyfrowy oscyloskop/analizator stanów logicznych
Rys. 12. Transformata FFT sygnału
pochodzącego z oscyloskopu
jednoczeúnie. Ustawienia oscyloskopu mog¹ byÊ zapisywane i†odczytywane z†plikÛw.
Moøliwoúci rozbudowy
Duø¹ zalet¹ oscyloskopu jest
jego modu³owa budowa. ZarÛwno od strony wejúÊ jak i†od
strony komputera dostÍpne s¹ rozmaite z³¹cza, ktÛrych celem jest
umoøliwienie rozbudowy przyrz¹du o†nowe
funkcje.
Moøna stosowaÊ
analogowe wyzwalanie
takøe dla wejúÊ cyfrowych, co oznacza, øe
do wejúÊ cyfrowych
moøna pod³¹czyÊ inne
przetworniki A/C (np.
12-bitowe albo o†szybkoúci prÛbkowania 200
MSPS). Sterowanie takimi przetwornikami
mog³oby siÍ odbywaÊ
poprzez wyprowadzon¹ na z³¹cze rozszerzenia magistralÍ zgodn¹ z†I 2C.
Zamiast wejúÊ analogowych
moøna by w³¹czyÊ np. tuner TV,
sterowany zwykle takøe przez szynÍ I2C, i†obserwowaÊ przebiegi
wizyjne.
Rys. 13. Filtr FIR zrealizowany w postaci funkcji
matematycznej
Elektronika Praktyczna 11/2003
NajwiÍksze jednak moøliwoúci
rozbudowy daje z³¹cze magistrali
procesor - FPGA. PrzejÍcie kontroli nad t¹ magistral¹ pozwala na
transfer danych z†FPGA z†szybkoúci¹ przekraczaj¹c¹ 20 MB/s, co
oznacza, øe praca z†oscyloskopem
upodobni³aby siÍ do pracy z†oscyloskopem analogowym.
To samo z³¹cze moøe rÛwnieø
pos³uøyÊ do rozszerzenia karty
oscyloskopowej o†ekran, p³ytÍ czo³ow¹ i†procesor systemowy. Autor
planuje skonstruowanie takiego
modu³u, opartego na uk³adzie IDT
79RC32355. Jest to wersja procesora MIPS (znanego m.in. z†systemÛw Silicon Graphics) dostosowana do pracy w†ma³ych systemach.
Stanis³aw Skwronek
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie
pod adresem: pcb.ep.com.pl oraz na
p³ycie CD-EP11/2003B w katalogu PCB.
Rys. 14. Kursory pomiarowe
49
Wyłącznik
P Rsterowany
O J E pilotem
K T Y
Wyłącznik sterowany
pilotem
AVT−554
Zapewne nie jest to
nowatorski pomys³, poniewaø
nie raz juø widywa³em
projekty podobnych uk³adÛw.
Lecz ten projekt wyrÛønia siÍ
spoúrÛd innych kilkoma
szczegÛlnymi cechami.
Przedstawiamy je w†artykule.
Rekomendacje: jako
wy³¹cznik ìstandbyî dla
stacjonarnego yamppa oraz do
zdalnego
sterowania dowolnymi
urz¹dzeniami domowymi
zasilanymi z†sieci.
Po pierwsze, Ûw wy³¹cznik
moøemy nauczyÊ kodu tylko jednego wybranego klawisza z†danego pilota i†tylko na jego przyciúniÍcie bÍdzie on reagowa³. Po
drugie, posiada on wyjúcie, na
ktÛre przekazywany jest sygna³
z†pilota w†celu przes³ania go dalej, do podrzÍdnego urz¹dzenia ktÛre bÍdziemy wy³¹czaÊ. Po trzecie, mamy rÛwnieø do dyspozycji
lokalny przycisk ON/OFF. Pierwotnym przeznaczeniem owego
wy³¹cznika by³o†zastosowanie go
jako uk³adu standby dla stacjonarnej wersji odtwarzacza MP3
yampp3, lecz oczywiúcie nic nie
stoi na przeszkodzie, aby uøyÊ go
do za³¹czania zasilania sieciowego
dla innych urz¹dzeÒ. Posiada on
jeszcze jedn¹ unikaln¹ cechÍ. Jeúli
w†stanie za³¹czenia zostanie, na
czas oko³o 5†sekund, zwarte do
masy wyjúcie przekazuj¹ce sygna³
pilota do podrzÍdnego urz¹dzenia, to uk³ad przejdzie w†stan
wy³¹czenia. Umoøliwia to realizacjÍ funkcji sleep, czyli automatycznego przejúcia w†stan czuwania po spe³nieniu okreúlonego
warunku, a†zainicjowane przez
podrzÍdne urz¹dzenie.
Budowa uk³adu
Schemat elektryczny wy³¹cznika pokazano na rys. 1. NapiÍcie
sieciowe podane na zaciski z³¹cza
J1 przechodzi przez bezpiecznik
Elektronika Praktyczna 11/2003
na pierwotne uzwojenie transformatora T1 oraz jednoczeúnie doprowadzone jest do stykÛw przekaünika REL1 bÍd¹cego w³aúciwym wy³¹cznikiem. Zastosowany
przekaünik posiada dwa styki
zwierne, dziÍki czemu w†stanie
wy³¹czonym uzyskujemy pe³n¹ separacjÍ urz¹dzenia sterowanego
od sieci zasilaj¹cej.
Po wyprostowaniu przez mostek D1 oraz odfiltrowaniu przez
kondensator C1, napiÍcie z†wtÛrnego uzwojenia transformatora zasila cewkÍ przekaünika, oraz poprzez stabilizator 5†V†wykonany
na uk³adzie U2 - zasila mikrokontroler U1 wraz z†do³¹czonym do
niego zintegrowanym odbiornikiem podczerwieni U3. ìSercemî
urz¹dzenia jest jeden z†najmniejszych mikrokontrolerÛw AVR ATtiny12. Ma on tylko 8 wyprowadzeÒ, wiÍc aby nie marnowaÊ
i†tak skromnej ich liczby, posiada
wbudowany generator sygna³u zegarowego i†nie potrzebuje do pracy zewnÍtrznego rezonatora kwarcowego.
OprÛcz dekodowania sygna³Ûw
zdalnego sterowania, uk³ad U1
obs³uguje rÛwnieø przycisk ON/
OFF, steruje poprzez tranzystor
Q1 przekaünikiem, diod¹ elektroluminescencyjn¹ D3 - sygnalizuj¹c¹ stan czuwania, oraz przekazuje impulsy z†odbiornika U3 na
z³¹cze wyjúciowe J4. Na styku
39
Wyłącznik sterowany pilotem
Rys. 1. Schemat elektryczny wyłącznika
3†z³¹cza J4 otrzymujemy dok³adniej numer standardu transmisji z†trybu idle by³o przepe³nienie
nie taki sam sygna³, jaki wchodzi
oraz kod klawisza, uruchamia licznika timera, to nastÍpuje
do uk³adu z†odbiornika podczerwatchdoga i†wchodzi do pÍtli sprawdzenie stanu klawisza. Jeúli
wieni, z†tym øe jest to wyjúcie g³Ûwnej programu. W†pÍtli g³Ûw- jest on naciúniÍty, to program po
typu ìotwartyî dren. Dla tego teø
nej zostaje uruchomiony sprzÍto- chwili sprawdza go ponownie,
zastosowano rezystor R2 umoøliwy timer generuj¹cy przerwanie aby wyeliminowaÊ ewentualne zawiaj¹cy podci¹gniÍcie tego wyj- oko³o 18 razy na sekundÍ. Po k³Ûcenia mog¹ce spowodowaÊ fa³úcia do zewnÍtrznego napiÍcia +5 uruchomieniu timera procesor zo- szyw¹ zmianÍ stanu uk³adu. Po
V zasilaj¹cego podrzÍdny uk³ad.
staje prze³¹czony w†tryb obniøo- upewnieniu siÍ, øe klawisz jest
Po prostu zamiast pod³¹czaÊ do
nego poboru pr¹du, z†ktÛrego wy- dalej naciúniÍty, podobnie jak po
tego uk³adu drugi odbiornik podbudziʆmoøe go dowolne przerwa- odebraniu prawid³owego kodu
z†pilota, zostaje zmieczerwieni, moøemy go
niony stan wyjúÊ do
bezpoúrednio pod³¹czyÊ
Wykorzystane w projekcie procedury odbioru
diody LED i†przekaünido z³¹cza J4 w†prezentosygnału pilota oparte są na zasadach opisanych ka, i†odczekanie do mowanym uk³adzie.
w artykule o programowym dekodowaniu
mentu puszczenia klasygnałów zdalnego sterowania. Czytelników
Zasada dzia³ania
wisza. NastÍpnie prozainteresowanych tym tematem zapraszamy do
Ca³a ìinteligencjaî
gram znÛw powraca na
działu “Kurs” w EP12/2002.
uk³adu zawarta jest
pocz¹tek pÍtli g³Ûwnej.
w†programie zapisanym
Jeúli nie wykryto naciúw†pamiÍci Flash mikrokontrolera.
nie - czyli z†timera, lub pojawie- niÍcia klawisza, to pozostaje jeszAlgorytm pracy programu pokazanie siÍ stanu niskiego na wyjúciu cze do sprawdzenia ostatni
no na rys. 2. Po za³¹czeniu
odbiornika podczerwieni. Jeúli wy- z†moøliwych warunkÛw - czyli
zasilania uk³adu mikrokontroler
budzenie powsta³o na skutek ak- zg³oszenie chÍci wy³¹czenia powykonuje inicjalizacjÍ zmiennych
tywnoúci na wejúciu IR, to pro- przez urz¹dzenie podrzÍdne. Jei†portÛw, po czym sprawdza, czy
gram prÛbuje odebraÊ trans- øeli uk³ad jest w†stanie za³¹czonaciúniÍty jest klawisz ON/OFF.
misj͆z†pilota w†zapamiÍtanym nym oraz na wyprowadzeniu porJeúli tak, to przechodzi on do
tu PB0 jest stan niski, zostaje
wczeúniej standardzie.
trybu uczenia i†zapamiÍtywania
Jeúli odbiÛr bÍdzie prawid³o- uruchomiony dodatkowy licznik,
standardu transmisji i†kodu klawiwy oraz odebrany rozkaz zgadza ktÛry odlicza czas pocz¹wszy od
sza z†pilota. W†tym trybie mrugasiÍ z†zapamiÍtanym wczeúniej oko³o 5†sekund do 0. Zmiana
nie diody D3 potwierdza odbiÛr
wzorcem, to nastÍpuje zmiana stanu na PB0 powoduje zatrzysygna³u z†pilota. Jeúli sygna³ z†odstanu logicznego na wyjúciach manie i†przywrÛcenie pocz¹tkobiornika podczerwieni zostanie
dla diody LED i†przekaünika, wej wartoúci tego licznika. Jeúli
zinterpretowany jako prawid³owy
a†nastÍpnie oczekiwanie na ko- jednak w†przeci¹gu 5†sekund nie
kod klawisza - zostaje on zapaniec transmisji, aby nie powodo- zmieni siÍ stan linii PB0 i†licznik
miÍtany w†pamiÍci EEPROM mikwaÊ prze³¹czania wyjúÊ tam dojdzie do wartoúci 0, to podobrokontrolera, a†program rozpoczyi†z†powrotem w†przypadku d³uø- nie jak w†przypadku odebrania
na pracÍ od pocz¹tku, czyli w†tryszego przytrzymania klawisza na w³aúciwego kodu pilota czy nabie normalnej pracy.
pilocie. Jeúli nie odebrano pra- ciúniÍcia klawisza, nast¹pi zmiaJeúli podczas za³¹czania zasiwid³owego kodu lub nie zgadza na stanu logicznego na wyjúciach
lania klawisz nie by³ naciúniÍty,
siÍ on ze wzorcem, program dla diody LED i†przekaünika,
to procesor odczytuje ze swojej
powraca do pÍtli g³Ûwnej. Jeúli a†wiÍc wy³¹czenie napiÍcia 220V
pamiÍci EEPROM zapisany wczeúpowodem wybudzenia procesora na z³¹czu wyjúciowym J2.
40
Elektronika Praktyczna 11/2003
Wyłącznik sterowany pilotem
t¹, nie pod³¹czamy rÛwnieø odbiornika podczerwieni. Po pod³¹czeniu do stykÛw z³¹cza J1
zasilania, sprawdzamy napiÍcie
panuj¹ce na kondensatorze C1.
W†zaleønoúci od zastosowanego
transformatora powinno ono zawieraÊ siÍ w†granicach od 14 do
17 V. NastÍpnie poprzez pomiar
napiÍcia pomiÍdzy nÛøkami
4†i†8†podstawki pod U1 sprawdzamy uk³ad stabilizatora U2. NapiÍcie to powinno wynosiÊ 5†V. Jeúli
wszystko jest w†porz¹dku, moøemy sprawdziÊ przekaünik poprzez
po³¹czenie na chwilÍ odcinkiem
przewodu nÛøek 3†i†8†podstawki
pod U1. Przekaünik powinien siÍ
za³¹czyÊ. Jeúli wszystko jest OK,
to wy³¹czamy zasilanie i†po odczekaniu kilkunastu sekund w†celu roz³adowania kondensatorÛw
zasilacza wk³adamy w†podstawkÍ
zaprogramowany mikrokontroler,
do z³¹cza J3 pod³¹czamy odbiornik podczerwieni, a†do z³¹cza J5
kabelek z†przyciskiem i†diod¹
úwiec¹c¹ na koÒcu. Po za³¹czeniu
zasilania dioda powinna siÍ
zaúwieciÊ, przekaünik pozostaÊ
wy³¹czony, a†naciskanie przycisku
powinno powodowaÊ za³¹czanie
i†wy³¹czanie przekaünika oraz naprzemiennie gaszenie i†zaúwiecanie diody.
Podczas montaøu uk³adu
w†obudowie naleøy pamiÍtaÊ o†panuj¹cym na czÍúci p³ytki napiÍciu
Rys. 2. Algorytm pracy programu sterującego
Montaø i†uruchomienie
Ca³oúÊ uk³adu zmontowano na
jednostronnej p³ytce drukowanej
o†wymiarach 40x86 mm. Na rys.
3 przedstawiono rozmieszczenie
elementÛw na niej. Ze wzglÍdu na
prostotÍ konstrukcji, zmontowanie
uk³adu nie powinno stanowiʆøadnego problemu, a†wiÍc moøna od
razu zamontowaÊ wszystkie elementy, a†w†miejsce przeznaczone
dla mikrokontrolera zamontowaÊ
odpowiedni¹ podstawkÍ. Ze
wzglÍdu na wymagan¹ izolacjÍ
pomiÍdzy elementami znajduj¹cymi siÍ pod napiÍciem sieci a†reszt¹ uk³adu zdecydowano siÍ na
brak otworÛw w†p³ytce drukowanej na dwa niewykorzystane wyprowadzenia przekaünika, ktÛre
Elektronika Praktyczna 11/2003
przed jego zamontowaniem naleøy
obci¹Ê tuø przy samej obudowie
przekaünika. Sprawa wygl¹da podobnie, jeúli chodzi o†transformator sieciowy T1. Transformator
o†oznaczeniu 4511-3120 wpasowuje siÍ dok³adnie w†istniej¹ce
otwory. W†przypadku zastosowania transformatora TSZZ 1,2/
005M, przed jego zamontowaniem
naleøy usun¹Ê jego wyprowadzenia o†numerach 2, 4†i†8, a†nastÍpnie zamontowaÊ go tak, aby wyprowadzenia 1 i†5 by³y pod³¹czone do napiÍcia 220V.
Po zmontowaniu ca³oúci przechodzimy do uruchomienia uk³adu. Najpierw naleøy sprawdziÊ
zasilacz, wiÍc podstawkÍ pod mikrokontroler U1 pozostawiamy pus-
Rys. 3. Rozmieszczenie elementów
na płytce drukowanej
41
Wyłącznik sterowany pilotem
sieciowym 220 V, wiÍc do przykrÍcenia p³ytki do metalowej obudowy naleøy uøyÊ tulejek dystansowych o†d³ugoúci co najmniej
10 mm.
Obs³uga urz¹dzenia
Na koniec przyszed³ czas, aby
nauczyÊ nasz wy³¹cznik reagowania na rozkazy wydawane za
pomoc¹ pilota. W†tym celu wy³¹czamy zasilanie sieciowe, naciskamy przycisk i, trzymaj¹c go,
w³¹czamy zasilanie. Potwierdzeniem wejúcia w†tryb programowania jest zgaszona dioda, wy³¹czony przekaünik i†brak reakcji na
naciskanie przycisku. Teraz bierzemy pilota i†kilkukrotnie naciskamy wybrany przez nas przycisk.
Potwierdzeniem odbioru sygna³u†z†pilota jest mruganie diody
w†momencie naciskania przycisku
na pilocie.
Po kilkukrotnym naciúniÍciu
przycisku na pilocie uk³ad powinien rozpocz¹Ê normaln¹ pracÍ,
czyli zacz¹Ê ìprztykaÊî przekaü-
42
nikiem. W†tym momencie procedura uczenia zostaje zakoÒczona,
a†odpowiedni kod klawisza zapamiÍtany w†nieulotnej pamiÍci
EEPROM mikrokontrolera. Niezaleønie od wy³¹czania zasilania
bÍdzie on waøny aø do chwili
jego zmiany poprzez powtÛrzenie
ww. procedury.
Na koniec moøemy jeszcze
sprawdziÊ moøliwoúÊ wy³¹czania
uk³adu przez urz¹dzenie podrzÍdne. W†tym celu za³¹czamy nasz
wy³¹cznik do stanu w³¹czenia,
a†nastÍpnie zwieramy wyprowadzenia 2†i†3†z³¹cza J4. Po oko³o 5
sekundach przekaünik powinien
zostaÊ wy³¹czony, a†dioda LED
powinna si͆zaúwieciÊ. Uk³ad pozostanie w†stanie wy³¹czenia aø
do ponownego za³¹czenia go za
pomoc¹ przycisku lub pilota.
Romuald Bia³y
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie
pod adresem: pcb.ep.com.pl oraz na
p³ycie CD-EP11/2003B w katalogu PCB.
WYKAZ ELEMENTÓW
Rezystory
R1: 4,7kΩ
R2, R3: 10kΩ
R4: 2,2kΩ
Kondensatory
C1: 470µF/25V
C2, C3: 100nF
Połprzewodniki
D1: mostek prostowniczy RB155
lub podobny
D2: 1N4148
Q1: BC337
D3: dowolna dioda LED
U1: ATtiny12 (zaprogramowany)
U2: LM78L05
U3: zintegrowany odbiornik
podczerwieni ELRIM 8601, SFH 506
lub podobny
Różne
F1: bezpiecznik typu TR5 − 0,1A
szybki, do druku.
J1, J2: listwy przykręcane, rozstaw
5mm
J3...J5: 3Pin goldpiny, raster 2,54mm
REL1: przekaźnik RM82, cewka 12V
T1: transformator zalewany do druku
typ TSZZ1,2/005M lub 4511_3120
S1: przycisk chwilowy ON/OFF
Elektronika Praktyczna 11/2003
Moduły interfejsów
P R O szeregowych
J E K T Y
Moduły interfejsów
szeregowych
AVT−553/USB232
AVT−553/USB245
AVT−553/RS232
Dzia³anie wielu urz¹dzeÒ
polega na wymianie danych,
najczÍúciej z†komputerami.
Popularnym i†prostym
sposobem jest wykorzystanie
w†tym celu portu
szeregowego, ktÛry jest
dostÍpny we wszystkich
komputerach stacjonarnych
lub przenoúnych. Do
niedawna niepodzielnie
panowa³ RS232, teraz coraz
czÍúciej jest stosowany
interfejs USB.
Od strony mikrokontrolera
do obs³ugi takiego po³¹czenia
potrzebna jest zarÛwno czÍúÊ
sprzÍtowa, jak i†trochÍ
oprogramowania realizuj¹cego
transmisjÍ. W†artykule
pokaøemy, jak moøna to
zrobiÊ w†urz¹dzeniach
opartych na mikrokontrolerach
z†rodziny '51 i†AVR.
Rekomendacje: informacje
przedstawione w†artykule
przydadz¹ siÍ konstruktorom
samodzielnie buduj¹cym
urz¹dzenia cyfrowe, ktÛre
komunikuj¹ siÍ z†otoczeniem
za pomoc¹ po³¹czeÒ
przewodowych.
Elektronika Praktyczna 11/2003
Jaki standard wybraÊ?
Przez d³ugie lata urz¹dzenia
zewnÍtrzne moøna by³o pod³¹czyÊ
do komputera na dwa sposoby:
albo poprzez rÛwnoleg³y port drukarkowy (Centronics), albo poprzez port szeregowy RS232. Wiele mikrokontrolerÛw jednouk³adowych, w†tym prawie wszystkie
z†rodzin '51 i†AVR, posiada mechanizmy u³atwiaj¹ce wymianÍ
danych w†uproszczonym formacie
RS232. Oznacza to, øe nie ma
potrzeby pisania specjalnego oprogramowania przeznaczonego do
obs³ugi transmisji i†odbioru ramki
pojedynczego znaku. Wystarczy
jedynie wpisaÊ w³aúciwe dane do
kilku rejestrÛw i†zainicjowaÊ odpowiednie przerwania, dalej ca³a
transmisja przebiega w†sposÛb prawie niewidoczny dla g³Ûwnego
programu mikrokontrolera. NiezbÍdny jest jeszcze konwerter poziomÛw najczÍúciej wykorzystuj¹cy uk³ad MAX232 lub jego odpowiednik. Ostatnimi laty pojawi³a siÍ jednak nowa moøliwoúÊ port USB.
Coraz wiÍcej komputerÛw PC
jest wyposaøanych w†ten w³aúnie
rodzaj interfejsu. Coraz czÍúciej
jest to jedyny, dostÍpny w†komputerze port. USB ma kilka istotnych zalet, np.: doúÊ duø¹ prÍdkoúÊ transmisji, moøliwoúÊ pod³¹czania wielu urz¹dzeÒ peryferyj-
nych, dostÍp do stabilizowanego
napiÍcia +5 V†oraz moøliwoúÊ
bezpiecznego do³¹czania i†od³¹czania urz¹dzenia do/od w³¹czonego komputera.
Bardzo wygodne dla konstruktorÛw rozwi¹zanie zaproponowa³a
firma FTDI, wprowadzaj¹c na rynek uk³ady interfejsowe FT8U232
i†FT8U245. S¹ to scalone konwertery USB2.0 na doskonale znany
RS232 lub wyjúcie rÛwnoleg³e.
Oba te uk³ady by³y juø opisywane
w†EP i†nie ma teraz potrzeby
dok³adnego omawiania sposobu
ich dzia³ania. Zajmiemy siÍ natomiast moøliwoúci¹ ich zastosowania jako interfejsÛw uk³adÛw†z†mikrokontrolerami oraz sposobem ich oprogramowania.
Trzy modu³y interfejsÛw
Na rys. 1, 2 i†3 pokazano
schematy trzech modu³Ûw†interfejsowych, w†ktÛrych zastosowano
uk³ady: FT8U232 (modu³ USB232),
FT8U245 (modu³ USB245) oraz
konwerter poziomÛw MAX232
(modu³ RS232). Wszystkie modu³y†maj¹ wymiary nie wiÍksze
niø standardowy uk³ad scalony
w†obudowie DIP32 i†moøna je
umieúciÊ w†podstawce o†takim
rozmiarze.
Kaødy modu³ jest kompletnym
interfejsem sprzÍtowym pomiÍdzy
mikrokontrolerem a†portem USB lub
31
Moduły interfejsów szeregowych
czonych symbolem V+ moøna
czerpaÊ niewielki pr¹d o†wartoúci
kilkunastu miliamperÛw z†gniazda
USB poprzez opornik zabezpieczaj¹cy 4,7Ω montowany na p³ytkach uk³adÛw USB245 i†USB232.
Z†kolei modu³ RS232 zasilany jest
z†urz¹dzenia, w†ktÛrym pracuje.
Poniewaø jest to tylko konwerter
poziomÛw TTL/RS232, do jego
dzia³ania nie jest potrzebna inicjalizacja ani po³¹czenie z†komputerem.
Wyprowadzenia uk³adÛw
USB232 i†RS232
Rys. 1. Schemat elektryczny modułu USB232
RS232. Modu³y by³y opracowane
z†myúl¹ o†wzajemnej kompatybilnoúci i†przyk³adowo modu³ USB232
moøna stosowaÊ wymiennie z†uk³adem RS232 i†w†prosty sposÛb osi¹gn¹Ê moøliwoúÊ wspÛ³pracy mikrokontrolera zarÛwno z†portem USB,
jak i†RS232 bez koniecznoúci zmian
na p³ytce drukowanej uk³adu mikrokontrolera.
Wszystkie modu³y s¹ standardowymi aplikacjami zastosowanych
uk³adÛw scalonych. Do prawid³owej pracy uk³adÛw FT8U232/245
konieczne jest ich po³¹czenie kablem USB z†komputerem, na ktÛrym zainstalowane s¹ odpowiednie sterowniki. Modu³y zasilane
s¹ z†portu USB i†do ich inicjalizacji nie jest potrzebne w³¹czenie urz¹dzenia, w†ktÛrym pracuj¹.
Co wiÍcej, z†wyprowadzeÒ ozna-
Wszystkie uk³ady zosta³y zaprojektowane tak, aby mog³y byÊ
umieszczone w†typowej podstawce DIP32, co u³atwia ich szybk¹
wymianÍ. Jednak liczba wyprowadzeÒ p³ytki modu³u jest mniejsza
niø 32. W†module USB232 nie s¹
wyprowadzone styki 13...16 oraz
17...20, natomiast†w†RS232 styki
13, 16, 17 i†20.
Modu³y USB232 i†RS232 s¹ ze
sob¹ kompatybilne jeúli chodzi
o†wyprowadzenia najwaøniejszych
sygna³Ûw. Oznacza to, øe moøna
je stosowaÊ wymiennie i†zaleønie
od potrzeb wyposaøaÊ uk³ad mikrokontrolera w†interfejs USB lub
RS232. W†przypadku modu³u
Rys. 2. Schemat elektryczny modułu USB245
32
Elektronika Praktyczna 11/2003
Moduły interfejsów szeregowych
Tab. 1. Funkcje wyprowadzeń
modułu USB245
Nr Nazwa Kierunek Opis
Rys. 3. Schemat elektryczny modułu RS232
USB232 funkcje poszczegÛlnych
wyprowadzeÒ s¹ w†zasadzie kopi¹
wyprowadzeÒ uk³adu FT8U232BM,
ktÛry stanowi interfejs pomiÍdzy
lini¹ USB a†sygna³ami interfejsu
RS232. Dok³adny opis poszczegÛlnych sygna³Ûw moøna znaleüÊ
w†dostÍpnych opisach standardu
RS lub w†dokumentacji technicznej uk³adu scalonego do pobrania
ze strony producenta www.ftdichip.com (materia³y tej firmy publikujemy na CD-EP11/2003B).
KompatybilnoúÊ obydwu modu³Ûw istnieje na poziomie najprostszej i†najpopularniejszej
transmisji portem RS z†wykorzystaniem jedynie linii TxD, RxD
i†masy. Modu³ USB232 posiada
wyprowadzenia wszystkich sygna³Ûw†RS232 dla z³¹cza DB9. W†module USB232 moøna wykorzystaÊ
dwie linie steruj¹ce (sygna³y /DSR
i†/DTR), co umoøliwia sterowanie
przep³ywem danych pomiÍdzy
mikrokontrolerem i†komputerem.
Na rys. 4 i†5 pokazano najprostsze warianty po³¹czenia modu³Ûw M1 i†M3 z†mikrokontrolerem
typu '51.
RXF
OUT
2
TXE
OUT
3
WR
IN
4
RD
IN
5
6
7
8
9
10
11
12
21
22
23
D7
I/O
D6
I/O
D5
I/O
D4
I/O
D3
I/O
D2
I/O
D1
I/O
D0
I/O
GND masa
n.c.
EECS I/O
24 EECLK OUT
Wyprowadzenia uk³adu
USB245
Modu³ USB245 jest interfejsem
pomiÍdzy portem USB a†dowolnym 8-bitowym portem mikrokontrolera. Kilka dodatkowych linii
steruje przep³ywem danych pomiÍdzy modu³em a†mikrokontrolerem. Funkcje wyprowadzeÒ modu³u przedstawiono w†tab. 1.
Przyk³adowe po³¹czenie modu³u
USB245 z†mikrokontrolerem pokazano na rys. 6.
Rys. 4. Sposób dołączenia modułu USB232 do
mikrokontrolera
Elektronika Praktyczna 11/2003
1
25 EEDAT I/O
26 V+
OUT
27 RSTOUT OUT
28 PWREN OUT
29
30
31
32
stan niski oznacza, ¿e
bajt danych do odczytu z modu³u jest dostêpny
stan niski oznacza, ¿e
modu³ jest gotów do
przyjêcia kolejnego
bajtu danych
zapis do modu³u bajtu
danych zboczem opadaj¹cym
odczyt z modu³u bajtu
danej zboczem narastaj¹cym
b.7 bajtu danych
b.6 bajtu danych
b.5 bajtu danych
b.4 bajtu danych
b.3 bajtu danych
b.2 bajtu danych
b.1 bajtu danych
b.0 bajtu danych
sygna³ selekcji, jeœli
stosowany jest zewnêtrzny EEPROM
zegar transmisji danych, jeœli stosowany
jest zewnêtrzny EEPROM
sygna³ danych, jeœli
stosowany jest zewnêtrzny EEPROM
zasilanie z gniazda USB
wyjœcie wewnêtrznego
generatora resetu
stan niski w czasie
konfiguracji modu³u
n.c.
n.c.
n.c.
GND masa
Rys. 5. Sposób dołączenia modułu RS232 do
mikrokontrolera
33
Moduły interfejsów szeregowych
takøe pe³niÊ funkcjÍ wyprowadzeÒ
sprzÍtowego interfejsu szeregowego. Linie te oznaczone s¹ symbolami TxD i†RxD (lub podobnymi).
Pierwsza przeznaczona jest do wysy³ania danych w†trybie szeregowym, a†druga do odbioru danych.
Aby je uaktywniÊ, naleøy wpisaÊ
odpowiednie wartoúci do kilku
rejestrÛw mikrokontrolera oraz napisaÊ trochÍ oprogramowania do
obs³ugi transmisji szeregowej przez
mikrokontroler.
Waøn¹ decyzj¹ jest okreúlenie
sposobu obs³ugi transmisji. Moøna
zaprogramowaÊ mikrokontroler
tak, aby sygnalizowa³ jedynie odczyt bajtu lub gotowoúÊ do wyRys. 6. Sposób dołączenia modułu USB245 do mikrokontrolera
s³ania kolejnego, a†program g³Ûwny bÍdzie musia³ sam zadbaÊ
Sterowniki
WspÛ³praca
o†w³aúciw¹ reakcjÍ na zasygnalimikrokontrolerÛw
Uk³ady interfejsowe FT8U232BM
zowane w†ten sposÛb zdarzenia.
z†modu³ami
i†FT8U245BM, aby mÛc prawid³oNie jest to najwygodniejsze rozwo pracowaÊ, wymagaj¹ zainstaloModu³y USB232 i†USB245 wi¹zanie, gdyø zmusza g³Ûwny
wania specjalnych sterownikÛw na
umoøliwiaj¹ korzystanie z†portu program do ci¹g³ego sprawdzania,
komputerze PC, do ktÛrego s¹
USB na nieco odmienne sposoby. czy nowe dane juø siÍ pojawi³y
pod³¹czane. Sterownik zostaje uakPierwszy - w†przypadku zastoso- lub czy moøna juø wys³aÊ resztÍ.
tywniony w†momencie do³¹czenia
wania modu³u USB245
- jest W†dodatku jeøeli przegapi siÍ oddo gniazda USB modu³u z†wymieprostszy. Sprowadza siÍ do ba- powiedni moment, kolejny przynionymi uk³adami. Dzia³anie stedania stanu linii RXF i†TXE chodz¹cy bajt moøe byÊ wpisany
rownika powoduje, øe†port USB
sygnalizuj¹cych stan gotowoúci na miejsce poprzedniego jeszcze
widziany jest w†systemie komputemodu³u†do transmisji lub ko- nieodebranego przez program
rowym jako kolejny port COM
niecznoúÊ odczytu z†modu³u ko- g³Ûwny zajÍty np. d³ugotrwa³ymi
obs³ugiwany w†taki sam sposÛb jak
lejnego bajtu. Niski stan obydwu obliczeniami. Znacznie wygodniej
wszystkie inne porty RS232. DziÍki
linii sygnalizuje gotowoúÊ do ko- zdaÊ siÍ na obs³ugÍ transmisji
temu programy potrafi¹ce obs³ugilejnej transmisji lub zakoÒczenie przez przerwania -ma³e podprowaÊ porty COM bÍd¹ mog³y korzysodbioru bajtu. W†przypadku gramy dzia³aj¹ce niezaleønie od
taÊ z†USB bez koniecznoúci jakiejtransmisji mikrokontroler powi- programu g³Ûwnego w†tych mokolwiek przerÛbki.
nien wys³aÊ na linie D0...7 po- mentach, gdy trzeba coú zrobiÊ
Sterowniki dla rÛønych systeziomy odpowiadaj¹ce wysy³ane- z†transmisj¹ szeregow¹. Takie opmÛw operacyjnych nieodp³atnie
mu bajtowi i†wygenerowaÊ ujem- rogramowanie mikrokontrolera nie
udostÍpnia firma FTDI na stronie
ny impuls na linii WR. W†przy- jest wcale trudne i†pokaøemy, jak
internetowej www.ftdichip.com/
padku odczytu dana pojawi siÍ moøna to zrobiÊ.
FTDriver.htm. Ich instalacja jest na liniach D0...7 po podaniu
W†przyk³adach zostan¹ uøyte
bardzo prosta. Po úci¹gniÍciu plistanu niskiego na liniÍ RD.
dwa bufory: nadawczy i†odbiorczy
ku sterownika odpoo†rozmiarze 8†bajtÛw kaøwiedniego do wersji sysdy. Poza tym bÍd¹ wykoWszystko na CD−EP11/2003B
temu operacyjnego,
rzystywane 3†rejestry mikw†ktÛrym bÍdzie praco- Najnowsze wersje sterowników, noty katalogowe
rokontrolera dla licznikÛw
oraz oprogramowanie narzędziowe dla układów
bajtÛw w†buforze nadawwa³, naleøy plik rozpaprodukowanych przez firmę FTDI publikujemy
czym i†odbiorczym,
kowaÊ do tymczasowego
na CD−EP11/2003B.
wskaünika aktualnej pozykatalogu na dysku. Nacji w†rejestrze nadawczym
stÍpnie za pomoc¹ kabla
naleøy po³¹czyÊ modu³ z†kompuTaka prostota okupiona jest jed- oraz dwa bity flag sygnalizuj¹cych
terem. Po wykryciu do³¹czonego
nak koniecznoúci¹ zaangaøowania fakt oprÛønienia bufora nadawczemodu³u system operacyjny autoaø 12 linii portÛw. Jeøeli w†mik- go i†umieszczenia w†buforze odmatycznie przeprowadza instalarokontrolerze brakuje wolnych lini- biorczym†kolejnego bajtu odebranecjÍ sterownika, naleøy tylko poi, ktÛre moøna przeznaczyʆdo tego go portem szeregowym.
daÊ katalog, w†ktÛrym znajduj¹
celu, trzeba zastosowaÊ szeregow¹
siÍ rozpakowane pliki. Kaøde kotransmisjÍ i†modu³ USB232. W†mik- Jak to zrobiÊ
lejne do³¹czanie modu³u do komrokontrolerach z†rodzin '51 lub AVR w†programie dla '51?
Przyk³ad oprogramowania nadputera bÍdzie juø automatycznie
wydzielono dwie linie steruj¹ce,
uaktywnia³o odpowiedni sterowktÛre oprÛcz uniwersalnych zasto- zoruj¹cego transmisjÍ w†mikrokonnik, ktÛry juø bÍdzie w†systemie.
sowaÒ jako wejúcia/wyjúcia mog¹ trolerze z†grupy '51 zaczniemy
34
Elektronika Praktyczna 11/2003
Moduły interfejsów szeregowych
List. 1. Program obsługi przerwania od portu szeregowego
;przerwanie portu szeregowego
;------------------Rs_przerwanie:
push acc
;zachowanie zawartości rejestrów
push r0
;użytych w procedurze przerwania
jb scon.1,rs_t ;przerwanie zostało spowodowane wysłaniem poprzedniego bajtu
;obsługa odczytu kolejnego bajtu
clr scon.0
;zerowanie flagi odbioru bajtu w rejestrze SCON
mov a,#bufor_odbiorczy
add a,licznik_odebranych_bajtów
mov r0, a
;obliczenie adresu do zapisu w buforze odbiorczym
mov @r0,sbuf
;odebrany bajt z rejestru SBUF do buforu odbiorczego
inc licznik_odebranych_bajtów
;zwiększenie licznika bajtów w buforze
setb rs_rec_flag
;ustawienie flagi odbioru bajtu
jmp rs_t1
rs_t:
;obsługa wysłania kolejnego bajtu
clr scon.1
;w rejestrze SCON zerowanie flagi zakończenia transmisji bajtu
mov a,licznik_wysylanych_bajtow
jnz rs_t2
;wszystkie bajty zostały wysłane
setb rs_trans_flag
;ustawienie flagi sygnalizującej wysłanie wszystkich znaków
jmp rs_t1
rs_t2:
mov a,wskaznik_pozycji_w_buforze
add a,#bufor_nadawczy
;pozycja w buforze kolejnego bajtu do wysłania
mov r0,a
mov a,@r0
;pobranie kolejnego znaku do wysłania
mov sbuf,a
;znak do rejestru wyjściowego SBUF
inc wskaznik_pozycji_w_buforze
dec licznik_wysylanych_bajtow
rs_t1:
pop r0
;odtworzenie stanu rejestrów
pop acc
;używanych w procedurze przerwania
reti
List. 2. Program konfigurujący UART
;podprogram inicjacji transmisji szeregowej
;9600 bodów, 8 bitów danych, 1 bit stopu
;dla kwarcu mikrokontrolera 11,059MHz
;--------------------Inicjacja:
mov SCON, #50h
;ustawienie w rejestrze SCON trybu1: 8 bitów danych 1 bit stopu
mov TMOD, #20h
;transmisja będzie taktowana zegarem T1
mov TH1, #0FDh
;wartości początkowe wpisywane do rejestrów
mov TL1, #0FDh
;zegara T1 dla szybkości transmisji 9600 bodów
anl PCON, #07Fh
;zerowanie bitu SMOD w rejestrze PCON
setb TR1
;włączenie zegara T1
setb ES
;zezwolenie na przerwanie portu szeregowego
setb EA
;globalne zezwolenie na przerwania
clr rs_rec_flag
;kasowanie flagi sygnalizującej odbiór bajtu
mov licznik_odebranych_bajtów, #0
;zerowanie licznika odebranych bajtów
ret
omawiaÊ od koÒca, czyli od podprogramu obs³ugi przerwania.
W†'51 istnieje tylko jedno przerwanie zwi¹zane z†transmisj¹ szeregow¹. Na pocz¹tku trzeba wiÍc
ustaliÊ, czy przerwanie zosta³o
wywo³ane odbiorem kolejnego
znaku, czy zakoÒczeniem wysy³ania poprzedniego. I†zaleønie od
tego albo odczytany bajt ìwyl¹dujeî w†buforze odbiorczym, albo
kolejny bajt zostanie pobrany z†bufora nadawczego i†wys³any
w†úwiat. Przyk³adowy program realizuj¹cy to zadanie pokazano na
list. 1.
Zanim przerwanie zacznie
funkcjonowaÊ, naleøy najpierw
ustawiÊ parametry transmisji szeTab. 2. Wartości wpisywane do T1
dla różnych prędkości transmisji dla
częstotliwości kwarcu 11,059 MHz
SzybkoϾ SMOD WartoϾ wpisywana do T1
19200
9600
4800
2400
1200
1
0
0
0
0
#FDh
#FDh
#Fah
#F4h
#E8h
Elektronika Praktyczna 11/2003
regowej: szybkoúÊ, liczbÍ bitÛw
startu i†stopu, zainicjalizowaÊ rejestry i†flagi zwi¹zane z†transmisj¹ oraz w³¹czyÊ obs³ugÍ prze-
rwaÒ. Dla wygody najlepiej to
zrobiÊ w†osobnym podprogramie,
na przyk³ad takim jak pokazano
na list. 2.
SzybkoúÊ transmisji portu szeregowego zaleøy od 3†czynnikÛw:
czÍstotliwoúci kwarcu uøytego
w†oscylatorze mikrokontrolera,
wartoúci pocz¹tkowej wpisanej do
licznika T1 i†ustawienia bitu
SMOD w†rejestrze PCON. W†praktyce oznacza to, øe niektÛrych
szybkoúci transmisji nie moøna
osi¹gn¹Ê, jeúli czÍstotliwoúÊ kwarcu bÍdzie zbyt ma³a. Standardowe
szybkoúci transmisji w†zakresie
1200...19200 bodÛw moøna osi¹gn¹Ê stosuj¹c kwarc o†czÍstotliwoúci 11,059 MHz. W†tab. 2 zestawiono wartoúci pocz¹tkowe wpisywane do zegara T1 i†ustawienie
bitu SMOD dla poszczegÛlnych
szybkoúci.
W†przypadku zastosowania innego kwarcu skazani jesteúmy na
eksperymentalne dobieranie wartoúci pocz¹tkowej wpisywanej do
zegara T1. Program naleøy†jeszcze
uzupe³niÊ o†deklaracjÍ uøytych rejestrÛw przeznaczonych do obs³ugi transmisji, a†takøe wpisaÊ pod
odpowiednim adresem wektor
przerwania portu szeregowego, co
pokazano na list. 3.
Na list. 4 pokazano kilka linii
kodu, ktÛre powinny znaleüÊ siÍ
w†programie g³Ûwnym, aby mieÊ
dostÍp do danych odebranych
List. 3. Deklaracja rejestrów przeznaczonych do obsługi transmisji oraz
ustalenie wektora przerwania portu szeregowego
licznik_odebranych_bajtów
EQU 30H
licznik_wysylanych_bajtow
EQU 31H
wskaznik_pozycji_w_buforze
EQU 32H
flagi
EQU 20h
rs_rec_flag
BIT flagi.0
rs_trans_flag
BIT flagi.1
ROZMIAR_BUFOROW
EQU 8
bufor_odbiorczy:
DS ROZMIAR_BUFOROW
bufor_nadawczy:
DS ROZMIAR_BUFOROW
ORG 23H
jmp Rs_przerwanie
;licznik bajtów w buforze odbiorczym
;licznik bajtów w buforze nadawczym
;wskaźnik pozycji w buforze nadawczym
;adres bajtu flag
;flaga sygnalizacji odbioru bajtu
;flaga zakończenia transmisji bajtów z buforu nadawczego
;deklaracja rozmiaru buforów
;wektor przerwania portu szeregowego
List. 4.
mov c, rs_rec_flag
jnc bufor_pusty
;w buforze odbiorczym nie ma nowych bajtów
clr ES
;zablokowanie przerwania portu szeregowego
mov r0,# bufor_odbiorczy
petla_odczytu:
mov a, @r0
;w rejestrze akumulatora bajt odczytany z bufora
...
;tutaj kod programu związany z wykorzystaniem bajtów
...
;przesłanych portem szeregowym z PC-ta
inc r0
djnz licznik_odebranych_bajtów, petla_odczytu
clr rs_rec_flag
;kasowanie flagi sygnalizującej odbiór danych
setb ES
;ponowne włączenie przerwania
bufor_pusty:
Inicjacja transmisji portem szeregowym może wyglądać następująco:
...
;kod programu zapisujący do buforu nadawczego bajty danych
...
;do wysłania portem szeregowym
mov licznik_wysylanych_bajtow, #ile_bajtów
;wpisanie do licznika ilości
;wysyłanych bajtów
mov wskaznik_pozycji_w_buforze, #0
mov r0,#bufor_nadawczy
mov a,@r0
;w akumulatorze pierwszy bajt do wysłania
inc wskaznik_pozycji_w_buforze
dec licznik_wysylanych_bajtow
mov SBUF, a
;zapis do SBUF pierwszego bajtu inicjuje transmisję
;zawartości bufora nadawczego
clr rs_trans_flag
35
Moduły interfejsów szeregowych
List. 5. Program odpowiadający za obsługę przerwania
;przerwanie odebrania kolejnego znaku z portu RS
;-----------------------UART_RXC:
push temp
;zachowanie zawartości rejestrów
push ZH
;użytych w procedurze przerwania
push ZL
in temp, SREG
push temp
Rys. 7. Schemat montażowy
modułu USB232
ldi ZH,HIGH(bufor_odbiorczy)
ldi ZL,LOW(bufor_odbiorczy)
add ZL, licznik_odebranych_bajtów
clr temp
;obliczenie pozycji w buforze odbiorczym
adc ZH,temp
;do zapisu odebranego bajtu
in temp, UDR
;w rejestrze temp odebrany bajt
st Z,temp
;zapis bajtu w buforze odbiorczym
inc licznik_odebranych_bajtów
;zwiększenie licznika bajtów w buforze
sbr flagi, 1<< rs_rec_flag
;ustawianie flagi sygnalizującej odbiór bajtu
pop temp
;odtworzenie stanu rejestrów
out SREG, temp
;używanych w procedurze przerwania
pop ZL
pop ZH
pop temp
reti
;przerwanie zakończenia transmisji kolejnego znaku
;------------------------UART_TXC:
push temp
;zachowanie zawartości rejestrów
push ZH
push ZL
in temp, SREG
push temp
Rys. 8. Schemat montażowy
modułu USB245
cpi licznik_wysylanych_bajtow, 0
brne uat1
;wszystkie znaki zostały wysłane
sbr flagi, 1<< rs_trans_flag
;ustawienie flagi sygnalizującej wysłanie
;wszystkich znaków
rjmp uat2
uat1:
;transmisja kolejnego znaku
ldi ZH, HIGH(bufor_nadawczy)
ldi ZL, LOW(bufor_nadawczy)
add ZL, wskaznik_pozycji_w_buforze
clr temp
adc ZH, temp
;pozycja w buforze kolejnego bajtu do wysłania
ld temp, Z
out UDR, temp
;wysyłany znak do rejestru transmisji UART
inc wskaznik_pozycji_w_buforze
dec licznik_wysylanych_bajtow
uat2:
pop temp
out SREG, temp
pop ZL
pop ZH
pop temp
reti
Rys. 9. Schemat montażowy
modułu RS232
List. 6. Podprogram inicjacji parametrów transmisji szeregowej
;podprogram inicjacji transmisji szeregowej
;19200 bodów, 8 bitów danych, 1 bit stopu
;dla kwarcu mikrokontrolera 10MHz
;--------------------Inicjacja:
ldi
out
sbi
sbi
sbi
sbi
cbr
sei
ret
temp, 32
UBRR, temp
UCR, TXEN
UCR, RXEN
UCR, RXCIE
UCR, TXCIE
flagi, 1<< rs_rec_flag
;wartość podzielnika dla szybkości 19200
;włączenie części nadawczej
;włączenie części odbiorczej
;zezwolenie na przerwanie po odbiorze znaku
;zezwolenie na przerwanie po zakończeniu nadawania znaku
;kasowanie flagi sygnalizującej odbiór znaku
;ogólne zezwolenie na przerwania
portem szeregowym oraz instrukcje inicjuj¹ce transmisjÍ portem
szeregowym.
Ustawienie w†stanie wysokim
flagi rs_trans_flag bÍdzie sygnalizowa³o zakoÒczenie transmisji zawartoúci bufora nadawczego.
Jak to zrobiÊ
w†programie dla
mikrokontrolera AVR?
Podobny program dla mikrokontrolera z†grupy AVR bÍdzie
wygl¹da³ trochÍ inaczej. Powodem
jest zarÛwno inna sk³adnia asemblera, jak i†rÛønice konstrukcyjne
obydwu mikrokontrolerÛw. Na
przyk³ad mikrokontrolery AVR ofe-
36
ruj¹ wiÍcej przerwaÒ, w†tym osobne dla odczytu bajtu i†osobne dla
zakoÒczenia transmisji bajtu. Tak
jak w†przypadku '51 zacznijmy od
obs³ugi przerwania (list. 5).
Ustawienie parametrÛw transmisji, tak jak i†w†poprzednim
przyk³adzie, odbywa siÍ za pomoc¹ podprogramu inicjalizacji, ktÛrego listing pokazano na list. 6.
Ze wzglÍdu na wiÍksz¹ szybkoúÊ dzia³ania mikrokontrolerÛw
AVR, ³atwiej jest osi¹gn¹Ê standardowe szybkoúci transmisji bez
wzglÍdu na rodzaj zastosowanego
kwarcu w†generatorze. WzÛr pozwalaj¹cy wyliczyÊ szybkoúÊ
transmisji w†zaleønoúci od czÍstotliwoúci kwarcu i†wartoúci wpisanej do rejestru UBRR ma postaÊ:
BAUD =fclk/16*(UBRR-1),
gdzie:
BAUD - szybkoúÊ transmisji w†bitach/sekundÍ,
fclk - czÍstotliwoúÊ oscylatora
mikrokontrolera,
UBRR - wartoúÊ wpisana do rejestru.
List. 7. Deklaracja zastosowanych rejestrów AVR i ustawienie wektorów
skoków
.DEF licznik_odebranych_bajtów
=r16
;licznik bajtów w buforze odbiorczym
.DEF licznik_wysylanych_bajtow
=r17
;licznik bajtów w buforze nadawczym
.DEF wskaznik_pozycji_w_buforze =r18
;wskaźnik pozycji w buforze nadawczym
.DEF flagi
=r19
;adres bajtu flag
.DEF temp
=r20
;rejestr pomocniczy
.EQU rs_rec_flag
=0
;flaga sygnalizacji odbioru bajtu
.EQU rs_trans_flag
=1
;flaga zakończenia transmisji bajtów z buforu nadawczego
.EQU ROZMIAR_BUFOROW
=8
;deklaracja rozmiaru buforów
.DSEG
bufor_odbiorczy:
.BYTE ROZMIAR_BUFOROW
bufor_nadawczy:
.BYTE ROZMIAR_BUFOROW
.ORG 0x09
rjmp UART_RXC
.ORG 0x0b
rjmp UART_TXC
;wektor przerwania odbioru kolejnego znaku z RS-a
;wektor przerwania ukończenia transmisji kolejnego znaku
Elektronika Praktyczna 11/2003
Moduły interfejsów szeregowych
List. 8. Program odpowiadający za dostęp do przesłanych danych
sbrs flagi, rs_rec_flag
rjmp bufor_pusty
;w buforze odbiorczym nie ma nowych bajtów
ldi ZH,HIGH(bufor_odbiorczy)
ldi ZL,LOW(bufor_odbiorczy)
cbi UCR, RXCIE
;wyłączenie zezwolenia na przerwanie po odbiorze znaku
petla_odczytu:
ld temp,Z+
;w temp bajt odczytany z buforu odbiorczego
...
;tutaj kod programu związany z wykorzystaniem bajtów
...
;przesłanych portem szeregowym z PC-ta
dec licznik_odebranych_bajtów
brne petla_odczytu
cbr flagi, 1<< rs_rec_flag ;kasowanie flagi sygnalizującej odbiór bajtu
sbi UCR, RXCIE
;włączenie zezwolenia na przerwanie po odbiorze znaku
bufor_pusty:
Inicjacja transmisji:
...
;kod programu zapisujący do buforu nadawczego bajty danych
...
;do wysłania portem szeregowym
ldi licznik_wysylanych_bajtow, #ile_bajtów
;wpisanie do licznika ilości
;wysyłanych bajtów
clr wskaznik_pozycji_w_buforze
ldi ZH,HIGH(bufor_nadawczy)
ldi ZL,LOW(bufor_nadawczy)
ld temp,Z
;w temp pierwszy wysyłany bajt z bufora nadawczego
dec licznik_wysylanych_bajtow
inc wskaznik_pozycji_w_buforze
cbr flagi, 1<< rs_trans_flag
;kasowanie flagi sygnalizującej wysłanie
;wszystkich znaków
out UDR, temp
;zapis do SBUF pierwszego bajtu inicjuje transmisję
;zawartości bufora nadawczego
DeklaracjÍ zastosowanych rejestrÛw i†ustawienie wektorÛw
skokÛw pokazano na list. 7.
Z†kolei dostÍp do przes³anych
poprzez RS danych i†inicjacja
transmisji w†programie g³Ûwnym
mog¹ wygl¹daÊ tak, jak pokazano
na list. 8. Ustawienie w†stanie
wysokim flagi rs_trans_flag bÍdzie sygnalizowa³o zakoÒczenie
transmisji zawartoúci bufora nadawczego.
Montaø modu³Ûw
Schematy montaøowe modu³Ûw pokazano na rys. 7, 8 i†9.Uøyte do budowy modu³Ûw rezystory
i†kondensatory unipolarne maj¹
obudowy przeznaczone do montaøu powierzchniowego typu 1206.
W†module USB232 rezystor R7
ma wartoúÊ 0Ω. Oczywiúcie zamiast niego moøna zastosowaÊ
zwyk³¹ zworÍ. PojemnoúÊ elektro-
Elektronika Praktyczna 11/2003
litÛw w†module RS232 nie jest
krytyczna i†moøe byÊ zmniejszona
nawet do 1µF. Moøe to tylko
skutkowaÊ nieco mniejsz¹ maksymaln¹ d³ugoúci¹ kabla, jakiego
moøna bÍdzie uøyÊ do po³¹czenia
modu³u z†portem COM komputera. W†modu³ach USB232 i†USB245
najlepiej zastosowaÊ kwarce w†niskich obudowach. Jeøeli modu³y
nie bÍd¹ przewidziane do mocowania w†podstawkach, moøna zrezygnowaÊ ze stosowania specjalnych pinÛw, uøywaj¹c†w†to miejsce srebrzanki do wlutowania na
sta³e modu³u do g³Ûwnej p³ytki
uk³adu, w†ktÛrym bÍd¹ pracowaÊ.
Ryszard Szymaniak, EP
[email protected]
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie
pod adresem: pcb.ep.com.pl oraz na
p³ycie CD-EP11/2003B w katalogu PCB.
WYKAZ ELEMENTÓW
Elementy modułu USB232
Rezystory
R2, R3: 27Ω
R4: 4,7Ω
R5: 470Ω
R6: 1,5kΩ
R7: 0
Kondensatory
C1...C3: 100nF
C4: 33nF
C5, C6: 22pF
Półprzewodniki
U1: FT232BM
Różne
CON_USB: gniazdo USB−A
X1: 6MHz
Elementy modułu USB235
Rezystory
R2, R3: 27Ω
R4: 4,7Ω
R5: 470Ω
R6: 1,5kΩ
Kondensatory
C1...C3: 100nF
C4: 33nF
C5, C6: 27pF
Półprzewodniki
U1: FT245BM
Różne
CON_USB: gniazdo USB−A
X1: 6MHz
Elementy modułu RS232
Kondensatory
C1...C4: 47µF/16V
C6: 100nF
Półprzewodniki
U5: MAX232
37
Lampowy kompresor dynamiki
P R O sygnału
J E K audio
T Y
Lampowy kompresor
dynamiki sygnału audio
Przegl¹daj¹c moje zapasy
lamp prÛøniowych
stwierdzi³em, øe z†wielu nie
bÍdÍ mia³ wiÍkszego poøytku
- nie nadaj¹ siÍ do budowy
wzmacniacza napiÍciowego.
Tak jest na przyk³ad
z†pentodami regulacyjnymi:
EF83, EF 183 i†EF 89,
ktÛrych sporo zalega jeszcze
w†niejednej piwnicy. Co
moøna zrobiÊ z†tymi
lampami? WyrzuciÊ do
úmieci? Zdecydowanie nie!
Rekomendacje: smakowity
k¹sek dla prawdziwych
koneserÛw lampowej techniki
audio, przeøywaj¹cej niezwyk³y
renesans.
Pentody regulacyjne by³y stosowane w†uk³adach ARW (automatycznej regulacji wzmocnienia)
odbiornikÛw radiowych i†telewizyjnych. W†EP3/2003 opisaliúmy
dzia³anie ARW przy okazji omawiania wskaünikÛw dostrojenia
(magicznych ìoczekî). Przypomnijmy tylko, øe zadaniem ARW jest
regulowanie wzmocnienia wzmacniacza poúredniej czÍstotliwoúci
w odbiorniku w†zaleønoúci od
wartoúci sygna³u docieraj¹cego do
odbiornika: silny sygna³ - mniejsze wzmocnienie, s³aby sygna³ duøe wzmocnienie.
Jak realizowano lampowy uk³ad
ARW? Aby to wyjaúniÊ, naleøy
poznaÊ w³aúciwoúci pentody regulacyjnej.
Pentoda regulacyjna
RÛønice miÍdzy dzia³aniem
ìzwyk³ejî pentody napiÍciowej
i†pentody regulacyjnej ilustruj¹
(rys. 1) charakterystyki przejúciowe (charakterystyk¹ przejúciow¹
pentody jest zaleønoúÊ pr¹du anodowego napiÍcia siatki przy okreúlonych napiÍciach na pozosta³ych
elektrodach: anodzie, siatce ekranuj¹cej i†siatce hamuj¹cej) obu
tych lamp. WidaÊ na nich wyraünie, øe lampa EF89 ma charakterystykÍ przejúciow¹ o znacznie mniejszym nachyleniu (wyd³uøon¹). Jest to cecha wszystkich
pentod regulacyjnych (zwanych
takøe selektodami albo pentodami
z†d³ug¹ charakterystyk¹).
Elektronika Praktyczna 11/2003
Wzmocnienie napiÍciowe pentodowego wzmacniacza oporowego oblicza siÍ z†zaleønoúci:
K u = Sa ⋅ Ra ,
gdzie:
Ku - wzmocnienie napiÍciowe
w†[V/V],
Sa - nachylenie charakterystyki
przejúciowej (konduktancja wzajemna) w†[mA/V],
Ra - opornoúÊ obci¹øenia w†[kΩ].
Nachylenie charakterystyki
przejúciowej jest definiowane jako
stosunek zmiany pr¹du anodowego
do zmiany napiÍcia na siatce
steruj¹cego przy ustalonych napiÍciach na pozosta³ych elektrodach.
Jak widaÊ na rys. 1, dla przyk³adowej pentody zwyk³ej (EF80) parametr Sa nie zmienia si͆znacznie
w†zaleønoúci od napiÍcia siatki
pierwszej (wiÍksze zmiany nastÍpuj¹†tylko w†okolicy napiÍcia odciÍcia) z†racji duøej liniowoúci tej
charakterystyki. Dla lampy regulacyjnej EF89 nachylenie zmienia
siÍ w†szerokim przedziale wartoúci
wraz ze zmianami napiÍcia siatki
pierwszej, co úwiadczy o tym, øe
charakterystyka tej lampy cechuje
siÍ duø¹ nieliniowoúci¹. Z†podanego wzoru wynika, øe wzmocnienie
napiÍciowe wzmacniacza ze zwyk³¹ pentod¹ bardzo ma³o zaleøa³o
od napiÍcia polaryzacji siatki steruj¹cej. Wzmacniacz z†pentod¹ regulacyjn¹ wykazuje natomiast siln¹ zaleønoúÊ wzmocnienia napiÍciowego w†zaleønoúci od napiÍcia polaryzacji siatki (a wiÍc pun-
25
Lampowy kompresor dynamiki sygnału audio
Rys. 1. Charakterystyki przejściowe pentod: regulacyjnej i standardowej
przy Ua=Us2=200 V i Us3=0 V
ktu pracy na charakterystyce przejúciowej). Zatem pentoda regulacyjna umoøliwia skonstruowanie
wzmacniacza, ktÛrego wzmocnienie napiÍciowe jest zaleøne od
spoczynkowej wartoúci w punkcie
pracy napiÍcia polaryzacji siatki
steruj¹cej.
Na rys. 2a przedstawiono
uproszczony schemat takiego
wzmacniacza, zaú†na rys. 2b
zilustrowano, w oparciu o charakterystykÍ przejúciow¹ lampy, przebiegi pr¹du anodowego (a wiÍc
i†napiÍcia na obci¹øeniu) dla
rÛønych spoczynkowych punktÛw
pracy A i B. Przy takiej samej
amplitudzie napiÍcia wejúciowego
i tym samym obci¹øeniu, wzmocnienie dla punktu B jest zacznie
wiÍksze niø dla A.
Przy duøym ujemnym napiÍciu
regulacyjnym Ureg1 spoczynkowy
punkt pracy lampy znajduje
si͆w†punkcie A. W†otoczeniu tego punktu nachylenie charakterystyki jest ma³e, wiÍc wzmocnienie
teø jest ma³e. Przy ma³ym ujemnym napiÍciu regulacyjnym Ureg2
punkt pracy przesuwa si͆do punktu B. Nachylenie charakterystyki
w†jego otoczeniu jest duøe, wiÍc
wzmocnienie teø jest duøe.
Jak wspomniano wczeúniej, lampy regulacyjne stosowano w†uk³adach ARW w†odbiornikach AM.
Regulowanym wzmacniaczem by³
najczÍúciej jeden stopieÒ (pierwszy)
wzmacniacza poúredniej czÍstotliwoúci. Czasami ARW obejmowa³o
26
takøe wzmacniacz wielkiej czÍstotliwoúci i†inne stopnie wzmocnienia. Regulacyjne napiÍcie polaryzacji siatki takiego stopnia wzmocnienia uzyskiwano bezpoúrednio
z†detektora albo z†bardziej rozbudowanych uk³adÛw, ktÛre umoøliwia³y uzyskanie ARW np. z†progiem
zadzia³ania. Tego rodzaju ARW,
gdy ürÛd³o napiÍcia reguluj¹cego
znajduje siÍ za wzmacniaczami
w.cz. i†p.cz. jest regulacj¹ wstecz.
Detektor musia³ byÊ w³¹czony tak,
øe uzyskiwano ujemne wzglÍdem
masy napiÍcie regulacyjne. Ponadto, napiÍcie to by³o odfiltrowywane
tak, by sk³adowa m.cz. nie powodowa³a zmian wzmocnienia.
W†przeciwnym przypadku nastÍpowa³aby niepoø¹dana kompresja dynamiki sygna³u, polegaj¹ca na tym,
øe g³oúne fragmenty audycji by³yby
nienaturalnie úciszane.
W nielicznych uk³adach ARW
obejmowa³a wzmacniacz ma³ej
czÍstotliwoúci-by³a to regulacja
w†przÛd, gdyø napiÍcie regulacyjne by³o uzyskiwane przed wzmacniaczem m.cz.
Pozostaje jeszcze wyjaúniÊ, dlaczego pentody regulacyjne nie
nadaj¹†siÍ do zwyk³ych uk³adÛw
wzmacniaczy napiÍciowych. OtÛø
w†takich uk³adach mamy jeden
spoczynkowy punkt pracy, ktÛry
jest úciúle ustalony, a†zmienia siÍ
jedynie amplituda napiÍcia steruj¹cego (regulacja potencjometrem
si³y g³osu). Z rys.2b†wynika, øe
we wzmacniaczu z†pentod¹ regulacyjn¹ wyst¹pi³yby znaczne zniekszta³cenia nieliniowe, gdyby amplituda napiÍcia steruj¹cego mia³a
duø¹ wartoúÊ. Takie pentody
mog¹†ewentualnie pracowaÊ przy
ma³ych amplitudach sygna³u steruj¹cego, a†wiÍc we wzmacniaczach wstÍpnych. Jednak ze
wzglÍdu na znaczne szumy pentod nie jest to dobre rozwi¹zanie.
Do stopni wstÍpnych moøna
stosowaÊ pentody niskoszumne.
Jednak do uk³adÛw wzmacniaczy
wstÍpnych lepiej uøywaÊ uk³adÛw
triod.
Kompresor
Pentody regulacyjne by³y
stosowane we wzmacniaczach do
automatycznej regulacji wzmocnienia. Postanowi³em je zastosowaÊ w uk³adzie regulacji wzmocnienia - w†lampowym kompresorze dynamiki sygna³u akustycznego. Kompresor naleøy do tzw.
procesorÛw düwiÍku. Wzmocnienie kompresora maleje po przekroczeniu pewnej wartoúci sygna³u steruj¹cego. WartoúÊ spadku
wzmocnienia moøna regulowaÊzmieniaj¹c stopieÒ kompresji.
Moøna takøe regulowaÊ prÛg
zadzia³ania (poziom sygna³u, przy
ktÛrym zaczyna siÍ kompresja),
a†ponadto czasu opÛünienia zadzia³ania i†odpuszczenia. Chodzi
Rys. 2. Schemat wzmacniacza o regulowanym wzmocnieniu z pentodą regu−
lacyjną (a) i przebiegi prądu anodowego dla różnych punktów pracy (b)
Elektronika Praktyczna 11/2003
Lampowy kompresor dynamiki sygnału audio
Opis dzia³ania uk³adu
Rys. 3. Charakterystyki Uwy=f(Uwe)
wzmacniacza i ograniczników
różnego typu
o†to, by kompresja nie nastÍpowa³a za szybko po przekroczeniu
poziomu progu zadzia³ania i†nie
zanika³a†zbyt szybko, bo wÛwczas
s³ychaÊ wyraüne ìpompowanieî
düwiÍku, objawiaj¹ce siÍ chwilowym úciszaniem muzyki w†takt
np. uderzeÒ perkusji.
Kompresory s¹ uøywane miÍdzy
innymi przy montaøu audycji (stopniowo wychodz¹ z†uøycia, gdyø
montaø audycji przeprowadza siÍ
obecnie komputerowo), a†takøe
przez niektÛrych gitarzystÛw.
Pewn¹†odmian¹ kompresora
jest limiter. Tego rodzaju uk³ady
pracuj¹ w†magnetofonach, gdzie
przekroczenie dopuszczalnego poziomu zapisu powoduje wzrost
zniekszta³ceÒ. Charakterystyki
kompresora dynamiki przedstawiono na rys. 3.
Na rys. 4 przedstawiono†schemat blokowy prezentowanego
kompresora dynamiki. Dzia³a on
nastÍpuj¹co: sygna³ wejúciowy
jest doprowadzony jednoczeúnie
do wtÛrnika katodowego I. Przewidziano regulacj͆poziomu sygna³u doprowadzanego do wtÛrnika I. Sygna³ z†wtÛrnika I jest
doprowadzony do wzmacniacza
o†wzmocnieniu regulowanym napiÍciem -U reg, a†st¹d do wtÛrnika
II i†wyjúcia. Opisan¹ wyøej
úcieøka sygna³u steruj¹cego jest
w³aúciwie g³Ûwn¹ úcieøk¹ kompresora. NapiÍcie reguluj¹ce -Ureg
jest otrzymywane w innym obwodzie. Sygna³ wejúciowy jest doprowadzony do wzmacniacza pomocniczego. Po wzmocnieniu sygna³ jest doprowadzony do elektronowego wskaünika wysterowania (magicznego oka) i†do prostownika. Moøliwa jest regulacja
poziomu napiÍcia, przy ktÛrym
zaczyna siÍ prostowanie. Oznacza
to, øe napiÍcie reguluj¹ce pojawia siÍ na wyjúciu prostownika
dopiero po przekroczeniu pewnego poziomu sygna³u wejúciowego.
W ten sposÛb jest moøliwa regulacja progu zadzia³ania kompresji. Wyprostowany sygna³ zostaje uúredniony w†uk³adzie ca³kuj¹cym i†przechodzi przez uk³ad
rÛøniczkuj¹cy. Poprzez zmianÍ
parametrÛw tych obwodÛw jest
moøliwa regulacja czasu opÛünienia zadzia³ania (obwÛd ca³ku-
j¹cy) i†odpuszczenia kompresji.
Przewidziano regulacjÍ skokow¹
(2-stopniow¹) i†ci¹g³¹ sta³ych czasowych tych obwodÛw. Tak otrzymane napiÍcie regulacyjne jest
poddawane ograniczeniu, przy
czym przewidziano 10 nastaw
ograniczania. Prze³¹cznik nastaw
ograniczania jest dwusekcyjny.
Druga sekcja jest wykorzystana
do sterowania prac¹ jarzeniowego
wskaünika nastaw (Nixie). OprÛcz tego istnieje moøliwoúÊ regulacji ìtwardoúciî ograniczaniastabilizacji. NapiÍcie regulacyjne
-Ureg moøe byÊ p³ynnie regulowane. Poziom napiÍcia -Ureg jest
wskazywany przez elektronowy
wskaünik poziomu kompresji (magiczne ìokoî).
Moøe dziwiÊ liczba zastosowanych elementÛw regulacyjnych do
regulacji ci¹g³ej i†skokowej. Zaleøa³o mi jednak na tym, aby moøna
by³o uzyskiwaÊ rÛøne charakterystyki kompresora - przedstawiono
je na rys. 5. WidaÊ, øe prezentowany kompresor moøe pracowaÊ
jako limiter (charakterystyki 2,
3†i†11) albo wrÍcz jako uk³ad
wyciszania (6, 7). Natomiast charakterystyki 8, 9†i†10 s¹ zbliøone
do charakterystyk typowego kompresora. W†tab. 1 zamieszczono
"nastawy" niektÛrych parametrÛw
przy wyznaczaniu charakterystyk
z†rys. 5. Potencjometr czasu opÛünienia zadzia³ania by³ ustawiony
we wszystkich przypadkach na
minimaln¹ wartoúÊ rezystancji
Rys. 4. Schemat blokowy lampowego kompresora sygnału audio
Elektronika Praktyczna 11/2003
27
Lampowy kompresor dynamiki sygnału audio
WYKAZ ELEMENTÓW
Rys. 5. Wybrane charakterystyki Uwy=f(Uwe) kompresora (sygnał testowy
o częstotliwości 1 kHz)
(a†wiÍc i sta³ej czasu), potencjometr
czasu odpuszczenia na maksymaln¹
wartoúÊ, a prze³¹cznik sta³ej czasowej (W1) na maksymaln¹ wartoúÊ
(kondensator C15).
Schemat elektryczny kompresora pokazano na rys. 6. Pierwsza
czÍúÊ lampy V1 pracuje w†uk³adzie
i†wtÛrnika katodowego (Ku†≈†1V/V).
Potencjometr P1 umoøliwia regulacjÍ poziomu sygna³u doprowadzonego do wtÛrnika, a†tym samym do
wzmacniacza. DziÍki temu moøna
dobraÊ poziom sygna³u tak, aby nie
wystÍpowa³y w kompresorze duøe
zniekszta³cenia nieliniowe przy
duøej amplitudzie napiÍcia steruj¹cego. Zastosowanie wtÛrnika I jest
niezbÍdne, gdyø nie moøna potencjometru poziomu sygna³u (si³y
g³osu) P1 w³¹czyÊ w obwodzie
siatki pierwszej lampy V2. Takie
w³¹czenie powodowa³oby niepoø¹dan¹ zmianÍ barwy düwiÍku pod-
czas regulacji wzmocnienia. Lampa
V2 jest pentod¹ regulacyjn¹, pracuj¹c¹ w†uk³adzie wzmacniacza o
wzmocnieniu regulowanym napiÍciem. Poprzez rezystor R4 jest
podawane na siatkÍ tej lampy
napiÍcie reguluj¹ce. Lampa V2 pracuje przy niskim napiÍciu anodowym i†niskim napiÍciu siatki os³onnej (drugiej). DziÍki temu lampa
pracuje z†nieco ìkrÛtsz¹î charakterystyk¹ przejúciow¹ niø pokazano
na rys. 1. Jest to istotne, poniewaø
uzyskanie napiÍcia reguluj¹cego rzÍdu 20...30 V†sprawia³oby duøe trudnoúci. Druga po³owa lampy V1
pracuje we wtÛrniku II, ktÛry zapewnia ma³¹ rezystancjÍ wyjúciow¹
uk³adu. Lampa V3 stanowi dwustopniowy wzmacniacz pomocniczy. Sygna³ z†tego wzmacniacza
jest podawany na dwa prostowniki:
pierwszy z†diod¹ D2, zasilaj¹cy
lampÍ V5 (wskaünik wysterowania-
Tab. 1. Nastawy parametrów regulatorów kompresora przy wyznaczaniu
charakterystyk pokazanych na rys. 5
Nr
charakterystyki
Wskazanie
lampy Nixie
Próg
kompresji
TwardoϾ
ograniczania
Ustawienie
poziomu kompresji
1
2
3
4
5
6
7
8
9
10
11
0
0
0
0
9
9
9
9
9
6
9
0 mV
50 mV
100 mV
400 mV
0 mV
100 mV
200 mV
200mV
200mV
200mV
200mV
minimalna
minimalna
minimalna
minimalna
minimalna
minimalna
minimalna
maksymalna
maksymalna
maksymalna
maksymalna
maksymalne
maksymalne
maksymalne
maksymalne
maksymalne
maksymalne
maksymalne
maksymalne
1/2
3/8
3/8
28
Rezystory
R1, R8: 22kΩ/0,6W 1%
R2, R6, R9, R16, R19: 510Ω/0,6W 1%
R3: 10 kΩ/0,6W 1%
R4, R5, R12, R13, R29: 470kΩ/0,6W 1%
R7, R14, R17, R27: 1MΩ/0,6W 1%
R10: 5,1kΩ/0,6W 1%
R11, R20: 15 kΩ/0,6W 1%
R15: 100kΩ/0,6W 1%
R18, R22, R30: 47 kΩ/0,6W 1%
R21: 560 kΩ/0,6W 1%
R23, R24: 220 kΩ/0,6W 1%
R25: 5,6 kΩ/0,6W 1%
R26: 2,4 kΩ/0,6W 1%
R28: 330 kΩ/0,6W 1%
P1: 1MΩ potencjometr
logarytmiczny
P2, P3, P4: 1MΩ potencjometr
liniowy
P5: 47 kΩ potencjometr liniowy
P6: 220 kΩ potencjometr liniowy
P7: 1MΩ potencjometr montażowy
Kondensatory
C1, C2, C4, C10: 47 nF/400V
C3, C9, C11: 47µF/25V
C5: 10µF/350V
C6: 1µF/400V
C7, C8: 22µF/400V
C12, C18, C21: 100nF/400V
C13: 150nF/400V
C14: 1µF/100V
C15: 4,7µF/100V
C16, C17: 100µF/400V
C19: 220µF/400V
C20: 10nF/400V
Półprzewodniki
D1, D2: 1N4007
D3: C1V2
D4: C2V4
D5: C2V7
D6: C3V9
D7: C4V7
D8: C5V6
D9: C6V8
D10: C8V2
D11: C10
D12: C12
Pr1: mostek prostowniczy 1A/800V
Lampy
V1, V3: ECC88
V2: EF89
V4: EM800 lub EM 87
V5: EM84, EM800 lub EM 87
V6: Z566M lub LC−631
Różne
2 gniazda chinch
B1: bezpiecznik 400 mAT
W1: przełącznik 2−pozycyjny 1−
sekcyjny
W2: przełącznik 12−pozycyjny 2−
sekcyjny
W3: 2−pozycyjny
Transformator wg opisu
Elektronika Praktyczna 11/2003
Lampowy kompresor dynamiki sygnału audio
Rys. 6. Schemat elektryczny lampowego kompresora dynamiki sygnału audio
Elektronika Praktyczna 11/2003
29
Lampowy kompresor dynamiki sygnału audio
Rys. 7. Rozkład wyprowadzeń
lamp próżniowych zastosowanych
w urządzeniu
poziomu sygna³u na wejúciu), drugi
z†diod¹ D1, wytwarzaj¹cy napiÍcie
reguluj¹ce. Listki lampy V5 reaguj¹
stosunkowo wolno na zmiany sygna³u steruj¹cego, co jest spowodowane znaczn¹ pojemnoúci¹ kondensatora C21 i†duø¹ opornoúci¹ potencjometru P7.
Z†potencjometru P6 jest uzyskiwane napiÍcie polaryzacji diody
D1 (w kierunku zaporowym). To
napiÍcie powoduje, øe prostownik
zaczyna przewodziÊ, gdy poziom
sygna³u przekroczy wartoúÊ napiÍcia polaryzacji. Innymi s³owy,
potencjometr P6 jest regulatorem
progu zadzia³ania. Uzyskane napiÍcie reguluj¹ce jest filtrowane
przez kondensator C13. Rezystor
R23, potencjometr P3 i†kondensator C14 (lub C15) tworz¹ obwÛd
ca³kuj¹cy. Sta³a czasowa tego obwodu zawiera siÍ od 0,22 s†do
1,22 s (lub od oko³o 1†s†do oko³o
5,7 s). ObwÛd odpuszczenia okreú-
30
laj¹cy czas (zaleøny od jego sta³ej
czasowej) tworz¹ elementy: C14
(C15), R24, P4 i†P2. Sta³a czasowa
tego obwodu od ok. 0,18 s do
0,55 s (lub 0,84 s†do 4†s).
NapiÍcie reguluj¹ce jest ograniczane za pomoc¹ jednej z†dziewiÍciu diod stabilizacyjnych. Przy
ostatnim po³oøeniu prze³¹cznika
W2 nie jest w³¹czana øadna dioda.
Uzyskuje siÍ wtedy najwiÍksz¹
wartoúÊ napiÍcia reguluj¹cego (najwiÍksza kompresja). DziÍki ograniczaniu napiÍcia reguluj¹cego uzyskuje siÍ quasi-prostoliniow¹ charakterystykÍ za kolanem (rys. 5).
Szeregowo z†diod¹ stabilizacyjn¹
jest w³¹czony potencjometr P5.
Umoøliwia on ìos³abienieî wp³ywu stabilizacji napiÍcia reguluj¹cego, przez co uzyskuje siÍ wiÍksz¹ lub mniejsz¹ nierÛwnomiernoúÊ charakterystyki za kolanem.
Potencjometr P2 umoøliwia p³ynn¹
regulacjÍ napiÍcia Ureg.
Lampa V4 jest w†istocie wskaünikiem napiÍcia reguluj¹cego. Poø¹dana jest duøa czu³oúÊ tej lampy. Z†tego wzglÍdu odpowiednie
s¹ lampy typu EM800 i†EM87.
Lampa Nixie V6 jest wskaünikiem
nastawy ogranicznika.
Uk³ad jest zasilany z†transformatora sieciowego. Wyprostowane przez mostek Graetz'a†napiÍcie
anodowe jest wyg³adzane w†wieloogniwowym filtrze RC, z³oøonym z†elementÛw C7, C8, C16,
C17, C18, C19, R11, R25 i†R26.
Montaø†i†uruchomienie
Uk³ad modelowy zbudowano
na podstawie z blachy ocynkowanej, wygiÍtej w†ìUî gruboúci 1,5
mm. SzerokoúÊ podstawy 200 mm,
d³ugoúÊ 400 mm, wysokoúÊ 60
mm. Lampy V1, V2 i†V3 powinny
byÊ ekranowane metalowymi kubkami. Przewody do³¹czone do†siatek tych lamp takøe powinny byÊ
ekranowane.
Transformator sieciowy powinien dostarczaÊ napiÍcie 6,3 VAC
do øarzenia lamp (natÍøenie 2†A),
napiÍcie anodowe 190 VAC (natÍøenie 60 mA). Rozk³ad wyprowadzeÒ lamp znajduje siÍ na rys. 7.
Uk³ad powinien dzia³aÊ po
prawid³owym montaøu. Naleøy jedynie potencjometr P7 ustawiÊ
tak, aby przy sygnale wejúciowym
1†V (wartoúÊ skuteczna) i czÍstotliwoúci 1000 Hz úwiec¹ce listki
lampy V5 prawie zesz³y siÍ. Po
przekroczeniu napiÍcia steruj¹cego 1†V†i†ustawieniu potencjometru
P1 na maksimum, mog¹ wyst¹piÊ
zniekszta³cenia nieliniowe. To niebezpieczeÒstwo bÍd¹ sygnalizowa³y schodz¹ce siÍ listki lampy V5,
dlatego warto przeprowadziÊ regulacj͆P7 poziomu sygna³u na
siatce V5.
Jeúli ktoú nie chce ìúwiec¹cych
bajerÛwî moøe znacznie uproúciÊ
uk³ad kompresora usuwaj¹c
z†niego elementy: V4, V5, V6,
R12, R13, R27, R28, R29, R30, D2,
P7, C20 i†C21. Prze³¹cznik W2
moøe byÊ wtedy jednosekcyjny.
Dzia³anie kompresora moøemy
wyprÛbowaÊ w³¹czaj¹c go miÍdzy
ürÛd³o sygna³u a†wzmacniacz. Najlepiej, jeúli sygna³ bÍdzie siÍ
charakteryzowa³ duøymi zmianami dynamiki. Wtedy bÍdzie moøna ³atwo zauwaøyÊ przy pewnych
ustawieniach elementÛw regulacyjnych, øe nastÍpuje wyrÛwnanie
dynamiki.
Aleksander Zawada, AVT
[email protected]
Elektronika Praktyczna 11/2003
P
R7−portowy
O J E hub
K TUSB
Y
7−portowy hub USB
AVT−551
W†starszych p³ytach liczba
portÛw USB nie przekracza³a
dwÛch. WiÍkszoúÊ
wspÛ³czesnych komputerÛw
jest juø wyposaøona w†kilka
portÛw. Ponadto zauwaøa siÍ
znaczny przyrost liczby
urz¹dzeÒ przeznaczonych do
pod³¹czenia do portÛw USB.
Z pewnoúci¹ trend ten bÍdzie
utrzymany, gdyø duø¹ zalet¹
USB jest zastosowanie w tym
interfejsie mechanizmu PnP
oraz doúÊ duøa szybkoúÊ
transmisji danych. W†artykule
przedstawiamy uk³ad, za
pomoc¹ ktÛrego moøna ³atwo
zwiÍkszyÊ liczbÍ dostÍpnych
portÛw - hub USB.
Rekomendacje: hub
opracowany z†myúl¹
o†uøytkownikach komputerÛw
wyposaøonych w†niewielk¹
liczbÍ portÛw USB oraz
uøytkownikÛw komputerÛw
korzystaj¹cych z wielu
urz¹dzeÒ zewnÍtrznych.
Tab. 1. Wybrane cechy huba USB
opisanego w artykule
✗ interfejs USB kompatybilny z USB 1.1,
✗ 7 portów USB,
✗ zasilanie z zewnêtrznego lub komputerowego
zasilacza,
✗ wszystkie porty mog¹ pracowaæ w trybach
full-speed oraz low-speed,
✗ automatyczne wykrywanie zwarcia obwodów
zasilaj¹cych portu,
✗ mo¿liwoœæ pracy jako urz¹dzenie wbudowane
w miejsce napêdu 5,25 cali lub jako oddzielne
urz¹dzenie,
✗ zasilanie 10...16 VDC,
✗ optyczna sygnalizacja na ka¿dym z portów
USB,
✗ trzy diody informuj¹ o pracy huba,
✗ brak potrzeby instalacji sterowników.
Elektronika Praktyczna 11/2003
Najprostsz¹ moøliwoúci¹ zwiÍkszenia liczby portÛw USB
jest
zastosowanie huba. DostÍpne na
rynku huby USB moøna podzieliÊ
na pasywne (zasilane z†portu
USB), ktÛre mog¹ mieÊ do 4†portÛw oraz aktywne (zasilane z†zewnÍtrznego zasilacza), w†ktÛrych
liczba portÛw moøe byÊ wiÍksza
od czterech. Aby sprostaÊ problemowi braku portÛw†USB, zbudowany zosta³ aktywny hub USB,
udostÍpniaj¹cy uøytkownikowi
7†portÛw zgodnych z†USB 1.1.
Niew¹tpliwie duø¹ zalet¹ prezentowanego huba jest moøliwoúÊ
wbudowania go w†miejsce napÍdu
5,25 cali. Jeøeli hub bÍdzie zamontowany w†komputerze, do jego zasilania jest wykorzystywany
zasilacz komputerowy. Wybrane
parametry huba przedstawione zosta³y w†tab. 1.
Opis dzia³ania uk³adu
Schemat elektryczny uk³adu
pokazano na rys. 1. Jego ìsercemî
jest uk³ad U1 firmy Texas Instruments. BudowÍ tego interesuj¹cego uk³adu przedstawia schemat
blokowy na rys. 2. W†sk³ad
TUSB2077A wchodz¹: jeden port
upstream do pod³¹czenia huba
z†komputerem, siedem portÛw
downstream s³uø¹cych do pod³¹czenia dowolnych urz¹dzeÒ USB,
pÍtla PLL, jednostka zarz¹dzaj¹ca
zasilaniem portÛw, steruj¹ca oraz
inne bloki widoczne na schemacie
blokowym. Budowa uk³adu U1
umoøliwia wybÛr ürÛd³a zasilania:
hub moøe byÊ zasilany z†portu
nadrzÍdnego lub dodatkowego zasilacza. Przy zasilaniu huba z†portu USB nie da³oby siÍ uzyskaÊ
wiÍcej niø 4†portÛw, przy czym
obci¹øalnoúÊ kaødego takiego portu wynosi maksymalnie 100 mA.
Dla†uk³adu wybrano zasilanie zewnÍtrzne, dziÍki czemu moøna
by³o uzyskaÊ siedem dodatkowych portÛw o†wydajnoúci pr¹dowej do 500 mA na port. WydajnoúÊ pr¹dowa portÛw bÍdzie zaleøa³a z†duøej mierze od wydajnoúci pr¹dowej zastosowanego zasilacza. KoÒcÛwka !EXTMEM informuje hub o†do³¹czonej pamiÍci
EEPROM, w†ktÛrej zawarte bÍd¹
informacje dotycz¹ce urz¹dzenia.
Do prawid³owego dzia³ania huba
pamiÍÊ nie jest wymagana, dlatego koÒcÛwka !EXTMEM pod³¹czona zosta³a do dodatniego na-
19
7−portowy hub USB
Rys. 1. Schemat elektryczny układu
piÍcia. KoÒcÛwka EED\GANGED,
gdy jest do³¹czony EEPROM, jest
lini¹ danych dla pamiÍci. Natomiast gdy brak jest tej pamiÍci,
linia ta okreúla sposÛb zarz¹dzania zasilaniem zwielokrotnionych
portÛw†USB. Przy poziomie niskim na tej koÒcÛwce hub bÍdzie
20
sterowa³ wspÛlnie zasilaniem
wszystkich portÛw. W†tym przypadku awaria (np. przeci¹øenie
lub zwarcie) zasilania jednego
portu bÍdzie skutkowaÊ wy³¹czeniem zasilania wszystkim portom.
Przy poziomie wysokim na koÒcÛwce EED\GANGED, hub bÍdzie
sterowa³ indywidualnie zasilaniem
kaødego portu. Awaria zasilania
jednego z†portÛw nie bÍdzie wp³ywaÊ na zasilanie pozosta³ych portÛw. Hub bÍdzie dalej dzia³a³
poprawnie z†portami, ktÛre nie
maj¹ awarii. W†hubie wybrane
zosta³o indywidualne sterowanie
Elektronika Praktyczna 11/2003
7−portowy hub USB
Rys. 2. Schemat blokowy układu TUSB2077A
zasilaniem kaødego z†portÛw.
O†zaletach takiego sterowania nie
trzeba chyba przekonywaÊ. Uk³ad
U1 jest taktowany sygna³em
zegarowym o czÍstotliwoúci
stabilizowanej rezonatorem kwarcowym X1, jego czÍstotliwoúÊ
jest powielana do 48 MHz. Powielacz czÍstotliwoúci jest uaktywniany poziomem niskim na
wejúciu MODE. Wyjúcia uk³adu
steruj¹ce tranzystorami T1...T3
sygnalizuj¹, poprzez diody
D8...D10, pracÍ huba. Rezystory
R42...R44 ograniczaj¹ pr¹d baz
tranzystorÛw, natomiast R39...R41
ograniczaj¹ pr¹d p³yn¹cy przez
diody LED. Poziom wysoki na
wyjúciu HUBCFG (za³¹czona LED
D8) wskazywaÊ bÍdzie, øe hub
zosta³ skonfigurowany. Dioda D9
sterowana sygna³em z wyjúcia
PORTPWR wskazuje swym úwieceniem czy wszystkie porty s¹
zasilane. Przy braku zasilania na
jakimkolwiek z†portÛw, dioda jest
wygaszona. Sygna³ z wyjúcia
PORTDIS steruj¹cy diod¹ D10
zapali j¹, gdy wszystkie porty s¹
sprawne. Jeøeli ktÛrykolwiek port
jest niesprawny, dioda D10 zostaje wy³¹czona. Uk³ad U4 jest
specjalistycznym uk³adem zeruj¹cym dostosowanym do zasilania
Elektronika Praktyczna 11/2003
na wejúciu poniøej 2†V†powoduje
wy³¹czenie danego klucza. DziÍki
blokowi UVLO gwarantowana jest
poprawna praca do³¹czonych do
portÛw USB urz¹dzeÒ. NapiÍcie
wyjúciowe za³¹czane jest poprzez
N-kana³owy MOSFET, ktÛrego rezystancja w†stanie w³¹czenie nie
przekracza 135 mΩ. Elementy CS
(current sense) s¹ czujnikami pr¹dowymi wspÛ³pracuj¹cymi z†ogranicznikami pr¹dowymi. Kaødy
z†czterech kluczy pr¹dowych zawartych w†TPS2044 moøe dostarczyÊ pr¹d o†natÍøeniu do 500 mA.
Przeci¹øenie danego klucza sygnalizowane jest poziomem niskim
na wyjúciach !OCx, ktÛre zosta³y
do³¹czone do wejúÊ !OVRCURx
uk³adu U1. Zaistnienie przeci¹øenia jest sygnalizowane uk³adowi
U1, dziÍki czemu moøe wy³¹czyÊ
przeci¹øony klucz. O†przeci¹øeniu
danego portu informowany jest
takøe system operacyjny, co ma
dla jego poprawnej pracy duøe
znaczenie. Poniewaø wyjúcia !OCx
s¹ typu otwarty dren, potrzebne
okaza³y siÍ dodatkowe rezystory
podci¹gaj¹ce R46...R52. Wyprowadzenia wszystkich transceiverÛw
DMx oraz DPx zosta³y poprzez
rezystory do³¹czone bezpoúrednio
do z³¹cz J1...J9. Dodatkowe rezystory (ograniczaj¹ce pr¹d) zabezpieczaj¹ transceivery przed uszkodzeniami spowodowanymi przepiÍciami. Zabezpieczenie transceiverÛw huba ma duøe znaczenie,
napiÍciem 3,3 V, z†ktÛrego zasilany jest takøe uk³ad U1. Wyjúcia
steruj¹ce w³¹czaniem zasilania
w†poszczegÛlnych portach USB
!PWRONx zosta³y do³¹czone do
wejúÊ !ENx uk³adÛw U2 oraz U3.
Uk³ady U2, U3 s¹ kluczami
pr¹dowymi (takøe produkcji TI).
Uk³ady te s¹ poczwÛrnymi kluczami pr¹dowymi,†ktÛre zawieraj¹ dodatkowe zabezpieczenia
przeci¹øeniowe oraz
termiczne.
Na rys. 3. przedstawiono schemat blokowy dwÛch z†czterech
kluczy zawartych
w†TPS2044. W†kluczach pr¹dowych U2
i†U3, oprÛcz wspomnianych blokÛw zabezpieczeÒ, wyrÛøniÊ
moøna blok sterowania
tranzystorami wyjúciowymi, pompy ³adunkowe wytwarzaj¹ce podwyøszone napiÍcie, ktÛre jest przeznaczone do
zasilania bramek tranzystorÛw wyjúciowych,
blok monitoruj¹cy napiÍcie wejúciowe UV- Rys. 3. Schemat blokowy dwóch z czterech
LO. Spadek napiÍcia kluczy zawartych w układzie TPS2044
21
7−portowy hub USB
pod³¹czenia "úledzia" z gniazdami
portÛw USB w†przypadku montaøu huba w†komputerze.
Montaø i†uruchomienie
Rys. 4. Schemat półprzewodnikowe−
go ogranicznika napięcia
gdyø awaria choÊ jednego portu
USB bÍdzie wymagaÊ wymiany
kosztownego uk³adu U1. Uszkodzenia transceiverÛw mog¹ byÊ
spowodowane przepiÍciami czy
³adunkami statycznymi. Bardzo
³atwo moøe dojúÊ do uszkodzenia
portu USB podczas pod³¹czania
urz¹dzeÒ. Moøe okazaÊ siÍ, øe
same rezystory s¹ niewystarczaj¹ce do zab ezpieczenia, zastosowane zosta³y dodatkowo ograniczniki napiÍcia U7...U11. Schemat
takiego uk³adu pokazano na rys.
4. Jeøeli napiÍcie wzroúnie powyøej napiÍcia przebicia diody Zenera w³¹czany jest tranzystor, ktÛry zwiera liniÍ do masy. W†sk³ad
uk³adÛw U7...U9 wchodz¹ cztery
ograniczniki, natomiast U10 i†U11
posiadaj¹ po dwa takie
ograniczniki. Do linii zasilaj¹cych
porty USB do³¹czono diody LED
poprzez rezystory ograniczaj¹ce
R32...R38. Diody te spe³niaj¹ rolÍ
wskaünikÛw napiÍʆna wyjúciach
portÛw. W†przypadku zwarcia lub
przeci¹øenia wiadomo, ktÛry port
USB przesta³ dzia³aÊ. Wskutek
do³¹czenia rezystora R1 do³¹czony
do linii DP0 komputer jest informowany, øe hub jest w†stanie
obs³ugiwaÊ szybkie transmisje
USB. Hub moøe byÊ zasilany
z†zasilacza komputerowego poprzez z³¹cze Z2 (5 V) lub z†zasilacza zewnÍtrznego przez z³¹cze
Z3. NapiÍcie zasilacza zewnÍtrznego jest prostowane przez mostek M1 oraz stabilizowane przez
U6. NapiÍcie 5†V†s³uøy g³Ûwnie
do zasilania portÛw wyjúciowych.
Stabilizator U5 ma napiÍcie
wyjúciowe 3,3 V, ktÛre jest niezbÍdne do zasilania uk³adÛw U1
oraz U4. Dodatkowe z³¹cze Z1
(do³¹czone bezpoúrednio do z³¹cz
USB J2, J3) moøe s³uøyÊ do
22
Urz¹dzenie naleøy zmontowaÊ
na p³ytce drukowanej, ktÛrej schemat montaøowy pokazano na rys.
5. Przed montaøem elementÛw
trzeba zdecydowaÊ, czy hub bÍdzie pracowa³ jako zewnÍtrzny
czy wewnÍtrzny umieszczony
w†komputerze. Jeøeli bÍdzie montowany w†obudowie zewnÍtrznej,
p³ytkÍ moøna przyci¹Ê w†oznaczonych miejscach. Montaø naleøy
rozpocz¹Ê od wlutowania uk³adÛw scalonych, przy czym najwiÍksze k³opoty mog¹†byÊ z†wlutowaniem uk³adu U1, ktÛry na
bardzo ma³y rozstaw wyprowadzeÒ. Aby prawid³owo wlutowaÊ
U1 proponujÍ sprawdzony sposÛb,
ktÛry polega na wczeúniejszym
delikatnym ocynowaniu punktÛw
lutowniczych p³ytki, do ktÛrych
bÍdzie lutowany uk³ad. NastÍpnie
naleøy przykleiÊ U1 zwracaj¹c
uwagÍ
na
prawid³owe
zorientowanie uk³adu oraz dopasowanie nÛøek do punktÛw lutowniczych. Oczyszczonym z†cyny grotem lutownicy naleøy przygnieúÊ kolejno koÒcÛwki uk³adu
do punktÛw lutowniczych. Z†wlutowaniem pozosta³ych elementÛw
SMD nie powinno byÊ problemu,
przy czym rezystory R46...R52
naleøy zamontowaÊ od strony ìlutowaniaî. Montaø naleøy zakoÒczyÊ wlutowaniem elementÛw
przewlekanych.
Po zakoÒczeniu montaøu, naleøy sprawdziÊ czy nie powsta³y
jakieú zwarcia, ktÛre mog¹ byÊ
pÛüniej trudne do odszukania.
Diody LED (jeøeli bÍd¹ montowane) moøna wmontowaÊ tak, aby
znajdowa³y siÍ bezpoúrednio nad
z³¹czami USB. Z³¹cze Z1 najlepiej
Rys. 5. Rozmieszczenie elementów na płytce drukowanej
Elektronika Praktyczna 11/2003
7−portowy hub USB
WYKAZ ELEMENTÓW
Rys. 6. Po dołączeniu huba do PC
system operacyjny automatycznie
wykrywa jego obecność jako
Rodzajowy koncentrator USB
zamontowaÊ z†wyjÍtym stykiem 9.
NiektÛre gniazda dostÍpnych úledzi maj¹ zaúlepiony otwÛr 9,†aby
zabezpieczyÊ przed odwrotnym
w³oøeniem wtyku. Jeøeli hub bÍdzie pracowa³ jako zewnÍtrzny,
nie naleøy montowaÊ z³¹cza Z2.
Poniewaø do³¹czone do huba
urz¹dzenia mog¹ pobieraÊ znaczny pr¹d, potrzebne bÍdzie wyposaøenie stabilizatora U6 w†niewielki radiator. Jeøeli hub bÍdzie
montowany wewn¹trz obudowy
komputera, to naleøy zamontowaÊ
gniazdo Z2, natomiast nie naleøy
montowaÊ elementÛw†Z3, M1,
C21, C22 oraz U6. Wtyk zasilacza
komputerowego bÍdzie do³¹czany
bezpoúrednio do gniazda Z2. Aby
umoøliwiÊ montaø p³ytki w†miejscu na napÍd 5,25 cali, zaprojektowane zosta³y dodatkowe úcianki
boczne, ktÛre powinny byÊ przylutowane do nieobciÍtych bokÛw
p³ytki huba. Na CD-EP11/2003B
przedstawiono wygl¹d p³ytek
bocznych: lewej i†prawej. Do p³ytek bocznych naleøy†dodatkowo
przykleiÊ lub przylutowaÊ nakrÍtki, dziÍki czemu hub moøna przykrÍciÊ w†obudowie komputera.
P³ytÍ czo³ow¹ do huba moøna
wykonaÊ z†zaúlepki otworu 5,25
cali, wyjÍtej z†obudowy. W†zaúlepce naleøy wykonaÊ piÍÊ prostok¹tnych otworÛw na gniazda
USB oraz otwory na diody LED.
Diody D8...D10 moøna doprowadziÊ do p³yty czo³owej kilkunastocentymetrowymi przewodami.
Tak wykonan¹ p³ytÍ czo³ow¹ naleøy przykleiÊ do przylutowanych
Tab. 2. Układ wyprowadzeń złącza Z1
Pin
Sygna³
Pin
Sygna³
1
3
5
7
9
+5V
DM2
DP2
GND
NC
2
4
6
8
10
+5V
DM1
DP1
GND
NC
Elektronika Praktyczna 11/2003
Rys. 7. Okno właściwości huba
w systemie Windows
wczeúniej bocznych úcianek.
W†przypadku montaøu huba
w†komputerze dwa dodatkowe
porty bÍd¹ znajdowaÊ siÍ wewn¹trz obudowy komputera.
Gniazda te moøna wyprowadziÊ
na zewn¹trz obudowy odpowiednim przewodem lub stosuj¹c z³¹cza USB montowane na úledziu.
Poniewaø dostÍpne w†handlu úledzie USB s¹ zakoÒczone rÛønymi
gniazdami, to przy pod³¹czaniu
do huba naleøy zadbaÊ o†prawid³owe po³oøenie wtyku úledzia
w†z³¹czu Z1. Styki 1, 3, 5,
7†z³¹cza Z1 dotycz¹ gniazda J2,
natomiast styki 2, 4, 6, 8†dotycz¹
gniazda J1.
Jeøeli hub bÍdzie pracowa³
jako zewnÍtrzny, potrzebny bÍdzie zasilacz o†odpowiedniej wydajnoúci pr¹dowej. Dobrym rozwi¹zaniem bÍdzie zastosowanie
zasilacza wtyczkowego o†napiÍciu
12...16 VDC lub 8...12 VAC oraz
wydajnoúci pr¹dowej nie mniejszej niø 1†A.
Po do³¹czeniu huba do komputera oraz do³¹czeniu zasilania,
jest on wykrywany w†systemie.
System WIN-XP wykrywa go jako
Rodzajowy koncentrator USB (rys.
6). W†przypadku nieprawid³owej
pracy huba naleøy sprawdziÊ jakoúÊ przylutowania uk³adu U1.
W³aúciwoúci zainstalowanego huba
(rys. 7) potwierdzaj¹, øe pracuje
on w†trybie z†w³asnym zasilaniem, a maksymalna obci¹øalnoúÊ
pr¹dowa wynosi 500 mA.
Po skonfigurowaniu huba
przez system powinny zaúwieciÊ
wszystkie diody do³¹czone do
linii zasilaj¹cych portÛw USB.
Do³¹czaj¹c urz¹dzenie z interfejsem USB kolejno do kaødego
z†siedmiu portÛw moøna spraw-
Rezystory
R1, R45: 1,5kΩ
R2...R17: 22Ω
R18...R31: 15kΩ
R32...R38: 560Ω
R39...R41: 470Ω
R42...R44: 4,7kΩ
R46...R52: 10kΩ
Kondensatory
C1...C7, C20, C25: 100µF/16V
C8...C16, C19, C22, C24: 100nF
C17, C18: 27pF
C21: 47µF/16V
C23: 4,7µF
Półprzewodniki
D1...D10: LED 3mm zielone
M1: mostek okrągły 1,5A
T1, T2, T3: BC848
U1: TUSB2077A
U2, U3: TPS2044
U3, U8: TLC272
U4: DS1818
U5: TC55RP330
U6: 78S05 TO−220 lub 78T05 TO−
220
U7, U8, U9: SN65240
U10, U11: SN65220
Różne
X1: kwarc 6MHz (przewlekany)
Z1: goldpin 2x10
Z2(*): komputerowe złącze
zasilające (męskie) lutowane do
druku
Z3: złącze zasilające do druku
J1: gniazdo USB typu B
J2...J8: gniazdo USB typu A
Radiator
Elementów oznaczonych (*) nie
należy montować w przypadku
zasilania układu zewnętrznym
zasilaczem.
Elementy U4, U6, X1 oraz złącza są
elementami przeznaczonymi do
montażu przewlekanego.
dziÊ czy dzia³aj¹ one prawid³owo.
Hub nie musi byÊ pod³¹czany
jedynie do USB 1.1. PrÛby wykaza³y, øe pracuje on prawid³owo
takøe wtedy, gdy jest do³¹czany
do USB 2.0.
Marcin Wi¹zania, AVT
[email protected]
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie
pod adresem: pcb.ep.com.pl oraz na
p³ycie CD-EP11/2003B w katalogu PCB.
23
semi−MatrixOrbital
P
R O J E K T LCD
Y do PC
semi−MatrixOrbital LCD
do PC, część 1
AVT−552
Moda na fantazyjn¹
stylizacjÍ PC-ta szybko dotar³a
do naszego kraju, w†zwi¹zku
z†czym ogromnym
powodzeniem ciesz¹ siÍ
wszelkie gadøety, ktÛre mog¹
spowodowaÊ, øe nasz
komputer staje siÍ trendy.
W†artykule przedstawiamy
projekt uk³adu, ktÛry chociaø
jest ìgadøeciarskiî, to
zwiÍksza moøliwoúci nadzoru
pracy PC przez uøytkownika.
Rekomendacje: polecamy
wszystkim uøytkownikom PC,
ktÛrzy pragn¹ poprawiÊ
komfort jego uøytkowania,
zwiÍkszyÊ funkcjonalnoúÊ
i†uatrakcyjniÊ wygl¹d.
14
Jedn¹ z†moøliwoúci prezentowanego uk³adu jest monitorowanie parametrÛw pracy komputera,
jak np. wartoúci napiÍÊ zasilaj¹cych, temperatury i†obci¹øenia
procesora, iloúÊ wolnego miejsca
na dysku itp. Za wyúwietlanie
wszelkich informacji jest odpowiedzialny inteligentny sterownik†wyúwietlacza LCD, ktÛry komunikuje siÍ z†komputerem przez
interfejs RS232. Poniewaø w†module zaimplementowano rozkazy
typowe dla wyúwietlaczy typu
Matrix Orbital (choÊ nie wszystkie) moøliwa jest wspÛ³praca modu³u z†wieloma programami zarz¹dzaj¹cymi wyúwietlaniem, jak na
przyk³ad rewelacyjnym Smarnie
czy Girderem. Programy te umoøliwiaj¹ wspÛ³pracÍ z rÛønymi innymi aplikacjami. Mog¹ odczytywaÊ i†wyúwietlaÊ na LCD dane
z†Winampa, liczbÍ przychodz¹cych
listÛw e-mail itp. Moøliwoúci tych
programÛw s¹ ogromne i†nie sposÛb ich wszystkich wymieniÊ.
W†dalszej czÍúci artyku³u skupiÍ
siÍ na pobieønym przedstawieniu
programu Smarnie.
Modu³ sterownika LCD umoøliwia sterowanie do 5-ciu urz¹dzeÒ zewnÍtrznych, ktÛre mog¹
reagowaÊ na okreúlone przez uøytkownika, a monitorowane przez
uk³ad parametry i†ich wartoúci.
Przyk³adowo, moøna tak zmodyfikowaÊ program sterownika, øe
jeøeli np. temperatura procesora
przekroczy ustalon¹ wartoúÊ, w³¹czy siÍ brzÍczyk lub inne urz¹dzenie do³¹czone do wyjúÊ uniwersalnych. Moøliwoúci konfiguracji wyjúʆs¹ co najmniej tak
duøe, jak liczba moøliwych do
wyúwietlenia na LCD rÛønych parametrÛw. Modu³ wyposaøono
w†6†przyciskÛw, za pomoc¹ ktÛrych moøna sterowaÊ aplikacjami,
jak np. Winampem. Poniewaø
w†niektÛrych aplikacjach 6†przyciskÛw moøe nie wystarczyÊ do
realizacji wszystkich funkcji, modu³ umoøliwia odbieranie kodÛw
pilota pracuj¹cego w†standardzie
RC5. MoøliwoúÊ wspÛ³pracy z†pilotem podczerwieni znacznie podnosi walory uøytkowe modu³u
LCD-PC.
Duø¹ zalet¹ modu³u sterownika
jest moøliwoúÊ wspÛ³pracy z†rÛønymi wyúwietlaczami LCD. W†zaleønoúci od zastosowanego wyúwietlacza LCD, prÍdkoúci komunikacji oraz adresu pilota,
sterownik LCD-PC posiada proste
menu konfiguracyjne tych parametrÛw, do ktÛrego moøna wejúÊ
z†poziomu dowolnego terminala.
Wybierane parametry modu³u s¹
zapamiÍtywane w†wewnÍtrznej pamiÍci EEPROM.
LCD-PC moøe byÊ zamontowany na zewn¹trz obudowy komputera lub w†jego wnÍtrzu (np.
w†miejscu na napÍd 5,25 cali).
Co prawda moøna ³atwo do³¹czyÊ LCD po portu rÛwnoleg³ego
Elektronika Praktyczna 11/2003
fsemi−MatrixOrbital LCD do PC
Rys. 1. Schemat elektryczny układu
komputera, ale takie rozwi¹zanie
nie udostÍpni uøytkownikowi takich moøliwoúci jakie daje prezentowany sterownik. Po zastosowaniu dodatkowego konwertera
USB<->RS232, jest moøliwe do³¹czenie modu³u sterownika do portu USB.
Opis dzia³ania uk³adu
Schemat elektryczny uk³adu
pokazano na rys. 1. Zastosowano
w nim mikrokontroler ATmega8.
Tranzystor T3, sterowany przebiegiem PWM z†wyjúcia OC1A,
reguluje jasnoúÊ podúwietlenia wyúwietlacza LCD. Regulacja jasnoúci podúwietlacza przebiegiem
PWM jest jednym z†najprostszych.
Rezystor R5 ogranicza pr¹d p³yn¹cy przez diody podúwietlacza.
Potencjometr montaøowy P1
umoøliwia regulacjÍ kontrastu
LCD. Klawiatura z³oøona z†przyciskÛw S1...S6 jest do³¹czona bezpoúrednio do wejúÊ mikrokontrolera. Wyjúcie odbiornika podczerwieni U2 do³¹czono do wejúcia
Elektronika Praktyczna 11/2003
wyzwalaj¹cego przerwanie INT0.
Elementy R4 oraz C1 filtruj¹
napiÍcie zasilaj¹ce odbiornik podczerwieni, ktÛry odbiera sygna³y
z fal¹ noún¹ 36 kHz. Elementy T1,
T2, R1, R2 i†R3 tworz¹ najprostszy konwerter poziomÛw napiÍÊ
dla interfejsu RS232. Pozosta³e
linie portÛw mikrokontrolera s¹
poprzez rezystory R7...R11
do³¹czone do baz tranzystorÛw
T4...T8. Tranzystory te steruj¹
zewnÍtrznymi obci¹øeniami, ktÛrymi mog¹ byÊ diody úwiec¹ce,
buzzery, przekaüniki lub optotriaki wykorzystywane do za³¹czania
urz¹dzeÒ duøej mocy. Przy do³¹czaniu elementÛw wykonawczych
do Z2 naleøy pamiÍtaÊ, øe bÍd¹
one za³¹czane dodatnim napiÍciem zasilaj¹cym. Modu³ sterownika LCD-PC jest zasilany poprzez
z³¹cze Z3. NapiÍcie zasilania 5†V
jest stabilizowane przez U3. Jak
widaÊ na schemacie elektrycznym, w†sterowniku wykorzystano
wszystkie porty uk³adu U1 (dotyczy to takøe linii zeruj¹cej mik-
rokontroler). Program steruj¹cy
prac¹ mikrokontrolera napisano w
jÍzyku†BASCOM-AVR.
Obs³uga wyúwietlacza
Wys³anie jakiegokolwiek znaku
przez port RS232 do wyúwietlacza
powoduje jego natychmiastowe
Parametry modułu sterownika
LCD−PC (RS232)
✦ ³atwa komunikacja przez RS232,
✦ prêdkoœæ transmisji 4800, 9600 oraz
19200 bodów,
✦ obs³ugiwane wyœwietlacze LCD: 2*16,
4*16, 2*20 oraz 4*20 z kontrolerem
HD44780,
✦ zapis w pamiêci EEPROM adresu pilota
RC5, wybranego typu wyœwietlacza LCD
oraz prêdkoœci transmisji,
✦ ³atwe okreœlanie parametrów poprzez
dowolny terminal oraz proste menu
(³¹czenie z terminalem odbywa siê
z prêdkoœci¹ 9600 bodów),
✦ wbudowanych szeœæ lokalnych przycisków,
✦ wspó³praca z wieloma dostêpnymi
programami jak: Smarnie, Girder itp.
✦ sterowanie do piêciu zewnêtrznych uk³adów
wykonawczych (przekaŸniki, triaki itp.),
✦ mo¿liwoœæ utworzenia do oœmiu w³asnych
znaków.
15
semi−MatrixOrbital LCD do PC
wyúwietlenie. DostÍpne s¹ znaki
w³asne z†zakresu 0†do 7†oraz znaki
juø zaimplementowane w†wyúwietlaczu z†zakresu od 32 do 126 kodu
ASCII. Tak wiÍc wys³anie s³Ûw
kodu 69, 80 spowoduje wyúwietlenie napisu ìEPî. Modu³
sterownika akceptuje ponadto
wiele instrukcji steruj¹cych, ktÛre
s¹ poprzedzone s³owem steruj¹cym kodu o†wartoúci 254. Akceptowane instrukcje przedstawiono
w†tab. 1. Przyk³adowo, gdy chcemy wyczyúciÊ wyúwietlacz naleøy
wys³aÊ przez RS232 s³owa kodu:
254, 88. Natomiast gdy chcemy
ustawiÊ kursor w†drugim wierszu
oraz w†5†kolumnie naleøy wys³aÊ:
254, 71, 5, 2. Instrukcja ìSprawdü
czy naciúniÍty by³ przyciskî jest
dostÍpna tylko wÛwczas gdy wy³¹czono natychmiastow¹ transmisjÍ
kodu naciúniÍtego przycisku. Instrukcja ta odczytuje znaki naciúniÍtych przyciskÛw†z†bufora mikrokontrolera oraz wysy³a je przez
RS232. Jeøeli bufor jest pusty, jest
wysy³ana wartoúÊ zero. Gdy bufor
zawiera wiÍcej kodÛw naciúniÍtego przycisku niø jeden, to najstarszy bit kodu znaku naciúniÍtego
przycisku zostaje ustawiony, co
úwiadczy o†istnieniu jeszcze nie
odczytanych znakÛw przyciskÛw
w†buforze. Podczas w³¹czonej
opcji ìnatychmiastowej transmisji
kodu naciúniÍtego przyciskuî, naciúniÍcie przycisku powoduje, øe
jego kod jest natychmiast wysy³any przez RS232 do sterownika.
Przyciski S1...S6 maj¹ przypisane
kody znakÛw od A...F, natomiast
pozosta³e znaki zosta³y przypisane przyciskom pilota podczerwieni. Rozwi¹zanie takie jest bardzo
elastyczne i†uniezaleønia przyciski
w†module wyúwietlacza od przyciskÛw pilota podczerwieni.
Wyúwietlacze Matrix Orbital
umoøliwiaj¹ programow¹ regulacjÍ kontrastu LCD, ale ja uzna³em,
øe bardziej funkcjonalna jest regulacja jasnoúci podúwietlenia.
Dlatego teø instrukcja regulacji
kontrastu steruje w†module
sterownika LCD-PC jasnoúci¹ podúwietlenia, a†kontrast jest ustawiany rÍcznie potencjometrem P1.
Instrukcja ìW³¹cz podúwietlenieî umoøliwia w³¹czenie podúwietlenia na czas okreúlony
w†minutach, przy czym przy wartoúci minut 0, podúwietlenie jest
w³¹czane na sta³e.
16
Tab. 1. Instrukcje sterujące pracą wyświetlacza
Instrukcja
Ustaw kursor
na zadanej pozycji
Ustaw kursor na pocz¹tek
W³¹cz kursor
Wy³¹cz kursor (D)
W³¹cz migaj¹cy kursor
Wy³¹cz migaj¹cy kursor
(D)
Przesuñ kursor w lewo
Przesuñ kursor w prawo
W³¹cz natychmiastow¹
transmisje naciœniêtego
przycisku (D)
Wy³¹cz natychmiastow¹
transmisje naciœniêtego
przycisku
Wyczyœæ bufor przycisków
SprawdŸ czy naciœniêty by³
przycisk (odczytuje bufor
przycisków)
Wyczyœæ wyœwietlacz
Ustaw podœwietlanie
W³¹cz podœwietlanie
Wy³¹cz podœwietlanie (D)
Wy³¹cz wyjœcia zewnêtrzne
(D)
W³¹cz wyjœcia zewnêtrzne
Definiuj w³asny znak
(D) (1)
(2)
(3)
-
Sk³adnia
(1)
FE 47 [kol] [wier]
254 71 [kol] [wier]
(3)
254 'G' [kol] [wier]
FE 48
254 72
254 'H'
FE 4A
254 74
254 'J'
FE 4B
254 75
254 'K'
FE 53
254 83
254 'S'
FE 54
254 84
254 'T'
FE 4C
254 76
254 'L'
FE 4D
254 77
254 'M'
FE 41
254 65
254 'A'
FE 42
254 79
254 'O'
FE 45
254 69
254 'E'
FE 26
254 38
254 '&'
(2)
FE 58
254 88
254 'X'
FE 50 [poziom]
254 80 [poziom]
254 'P' [poziom]
FE 42 [minuty]
254 66 [minuty]
254 'B' [minuty]
FE 46
254 70
254 'F'
FE 56 [nr wyjœcia]
254 86 [nr wyjœcia]
254 'V' [nr wyjœcia]
FE 57 [nr wyjœcia]
254 87 [nr wyjœcia]
254 'W' [nr wyjœcia]
FE 4E [nr] [8 bajtów]
254 78 [nr] [8 bajtów]
254 'N' [nr] [8 bajtów]
Opis
Ustawia kursor na pozycji zadanej
wartoœciami [kol] (kolumna) oraz [wier]
(wiersz).
Ustawia kursor na pocz¹tku
wyœwietlacza.
Wyœwietla kursor.
Gasi kursor.
Wyœwietla migaj¹cy kursor.
Wygasza migaj¹cy kursor.
Przesuwa kursor o jedn¹ pozycjê
w lewo.
Przesuwa kursor o jedn¹ pozycjê
w prawo.
Kody naciœniêtych przycisków s¹
natychmiast wysy³ane przez RS232.
Kody naciœniêtych przycisków s¹
³adowane do bufora o wielkoœci
5 znaków.
Zeruje bufor przycisków
Sprawdza czy by³ naciœniêty przycisk
odczytuj¹c bufor. Je¿eli bufor jest pusty
zwracana jest wartoϾ 0.
W przeciwnym przypadku zwracany jest
kod przycisku z ustawionym najstarszym
bitem, gdy w buforze znajduj¹ siê kody
wiêcej ni¿ jednego naciœniêtego
przycisku.
Czyœci oraz ustawia kursor na pocz¹tku
wyœwietlacza.
Ustawia jasnoœæ podœwietlania. Wartoœæ
poziomu mo¿e wynosiæ od 0 do 255.
W³¹cza podœwietlanie na czas okreœlony
w minutach. Je¿eli wartoœæ [minut]=0,
to podœwietlenie w³¹czane jest na sta³e.
Wy³¹cza podœwietlanie wyœwietlacza.
Wy³¹cza wyjœcia zewnêtrzne.
[nr wyjœcia] mo¿e byæ od 1 do 5
W³¹cza wyjœcia zewnêtrzne.
[nr wyjœcia] mo¿e byæ od 1 do 5
Definiuje 1 z 8 dowolnych znaków u¿ytkownika. [nr] okreœla numer znaku z
zakresu 1 do 8, natomiast [8 bajtów]
opisuje budowê znaku zgodnie z tab. 2
wartoœæ domyœlna po w³¹czeniu zasilania
wartoϾ szesnastkowa kodu ASCII danego znaku
wartoœæ dziesiêtna kodu ASCII danego znaku
znak odpowiadaj¹cy wartoœci kodu ASCII
Elektronika Praktyczna 11/2003
fsemi−MatrixOrbital LCD do PC
Rys. 2. Schemat montażowy płytki drukowanej
Ostatnia instrukcja pokazana
w†tab. 1 umoøliwia uøytkownikowi
zdefiniowanie do 8-miu†w³asnych
znakÛw. Na przyk³ad wys³anie wartoúci: 254, 78, 1, 255, 255, 255,
255, 255, 255, 255, 255 wyúwietli
wszystkie piksele znaku. Aby wyúwietliÊ pierwszy zdefiniowany
znak naleøy wys³aÊ przez RS232
wartoúÊ kodu ASCII 0. Dla drugiego zdefiniowanego znaku wartoúÊ
1†itd. W†tab. 2 przedstawiono
przyporz¹dkowanie bitÛw poszczegÛlnych bajtÛw (1...8) definiowanego znaku pikselom matrycy 5x8
znaku na wyúwietlaczu LCD.
Instrukcje ìWy³¹cz/W³¹cz wyjúcia zewnÍtrzneî umoøliwiaj¹ sterowaniem wyjúciami, do ktÛrych
moøna do³¹czyÊ obci¹øenie zewnÍtrzne. Poniewaø w†module jest
ich 5, wartoúÊ ìnr wyjúciaî powinna zawieraÊ siÍ w†przedziale
1...5. Aby za³¹czyÊ wyjúcie
1†naleøy wys³aÊ wartoúci: 254, 87,
1, a†gdy chcemy wy³¹czyÊ - wartoúci: 254, 86, 1.
Montaø i†uruchomienie
Modu³ sterownika LCD PC jest
montowany na dwustronnej p³ytce drukowanej, ktÛrej schemat
montaøowy pokazano na rys. 2.
Elementy Z1, Z2, Z3 oraz C7
Tab. 2. Znaczenie bitów w bajtach
1...8
MSB
X
X
X
X
X
X
X
X
naleøy przylutowaÊ od strony lutowania, aby moøna by³o w³oøyÊ
wyúwietlacz LCD 2*16 znakÛw.
Stabilizator U3, rezonator kwarcowy X1 oraz kondensator C2
naleøy przylutowaÊ w†pozycji leø¹cej. Poniewaø modu³ moøe
wspÛ³pracowaÊ z†wieloma typami
wyúwietlaczy LCD, ktÛre maj¹
rÛøne wymiary, p³ytka sterownika
moøe nie pasowaÊ do kaødego
z†nich. Naleøy wtedy wyúwietlacz
LCD zamontowaÊ za poúrednictwem wi¹zki przewodÛw. WÛwczas
wszystkie elementy moøna zamontowaÊ z†jednej strony p³ytki.
Przy montaøu†wyúwietlacza LCD
na przewodach istnieje takøe moøliwoúÊ odciÍcia p³ytki z†przyciskami oraz odbiornikiem podczerwieni. Miejsce odciÍcia p³ytki
zosta³o zaznaczone na p³ytce drukowanej. P³ytkÍ przyciskÛw, jeøeli
zosta³a odciÍta, trzeba po³¹czyÊ
z†p³ytk¹ g³Ûwn¹ wi¹zk¹ dziewiÍciu przewodÛw. Po takim zabiegu
bÍdzie moøna przymocowaÊ wyúwietlacz LCD oraz klawiaturÍ po
p³yty czo³owej obudowy z†dala od
modu³u steruj¹cego.
Jak wspomniano na pocz¹tku
artyku³u, g³Ûwnym przeznaczeniem tego uk³adu jest monitorowanie oraz ustalanie parametrÛw
wybranych aplikacji, chociaø moøna zastosowaÊ go w†dowolnym
urz¹dzeniu elektronicznym.
Rys. 3. Schemat kabla połączenio−
wego do złącza RS232
Jeøeli modu³ bÍdzie montowany wewn¹trz komputera moøna go
zasiliÊ z†zasilacza komputera wykorzystuj¹c przewÛd przeznaczony do pod³¹czenia stacji dyskietek, do³¹czony do z³¹cza Z3.
Podczas uøytkowania modu³u na
zewn¹trz komputera, napiÍcie zasilaj¹ce moøna pobraÊ z†Game
Portu. Nie trzeba wtedy montowaÊ stabilizatora napiÍcia. Moøna
takøe wykorzystaÊ zewnÍtrzny zasilacz sieciowy.
Do po³¹czenia modu³u z†komputerem naleøy gniazdo DB9
do³¹czyÊ do modu³u zgodnie
z†rys. 3.
Na rys. 4 pokazano sposÛb
do³¹czenia do uniwersalnych
wyjúÊ optotriaka, ktÛry moøe
za³¹czaÊ øarÛwki lub inne odbiorniki. DziÍki zastosowaniu Q1
optotriaka steruj¹cy obwÛd jest
odizolowany od sieci 220 V.
Jeøeli zajdzie potrzeba do³¹czenia przekaünika do uniwersalnych
wyjúÊ modu³u LCD-PC, to moøna
to zrobiÊ w†sposÛb pokazany na
rys. 5. Dioda D1 t³umi przepiÍcia
podczas wy³¹czania przekaünika,
ktÛre mog³yby uszkodziÊ tranzystor steruj¹cy.
Sprawdzenie dzia³ania modu³u moøna wykonaÊ dowolnym
terminalem. Po ustawieniu parametrÛw transmisji na 9600/8/n/
1, wysy³ane znaki z†klawiatury
LSB
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
1
6
11
16
21
26
31
36
2
7
12
17
22
27
32
37
3
8
13
18
23
28
33
38
4
9
14
19
24
29
34
39
5
10
15
20
25
30
35
40
Gdzie:
“1” w³¹cza piksel
“0” gasi piksel
“X” wartoœæ dowolna
Elektronika Praktyczna 11/2003
Bajt
Bajt
Bajt
Bajt
Bajt
Bajt
Bajt
Bajt
1
2
3
4
5
6
7
8
Rys. 4. Sposób dołączenia optotriaka do uniwersalnych wyjść
sterownika
17
semi−MatrixOrbital LCD do PC
Rys. 5. Z wyjść uniwersalnych można
bezpośrednio m.in. przekaźnikami
komputera powinny byÊ wyúwietlone na wyúwietlaczu LCD.
Jeøeli brak jest objawÛw ìøyciaî
modu³u LCD-PC, naleøy sprawdziÊ starannie montaø oraz po³¹czenie z†komputerem. Podobnie moøna sprawdziÊ dzia³anie
przyciskÛw, ktÛrych kody powinny byÊ wyúwietlane w†oknie
terminala.
Poniewaø zastosowany mikrokontroler ATmega8 ma aø 8†kB
pamiÍci Flash, zosta³o†w†niej sporo miejsca na implementacjÍ w³asnych instrukcji. Na przyk³ad, po
18
niewielkich modyfikacjach programu,
moøliwa bÍdzie
wspÛ³praca modu³u
z†wyúwietlaczami
VFD. Podczas programowania mikrokontrolera ATmega8
naleøy†pamiÍtaÊ
o†w³aúciwym ustawieniu wewnÍtrzsterować
nych bezpiecznikÛw, gdyø ich konfiguracja ma ogromne znaczenie
dla prawid³owego dzia³ania mikrokontrolera. Opis w³aúciwego
ustawienia bezpiecznikÛw opisano w†nag³Ûwku programu (jego
postaÊ ürÛd³ow¹ udostÍpniliúmy
na stronie www.ep.com.pl oraz na
CD-EP11/2003B).
Marcin Wi¹zania, AVT
[email protected]
Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie
pod adresem: pcb.ep.com.pl oraz na
p³ycie CD-EP11/2003B w katalogu PCB.
WYKAZ ELEMENTÓW
Rezystory
R1...R3: 10kΩ
R4: 220Ω
R5: 10Ω
R6...R11: 1kΩ
R12: 4,7kΩ
P1: potencjometr montażowy
leżący 10kΩ
Kondensatory
C1, C2: 47µF/25V
C3, C4: 27pF
C5, C6: 100nF
C7: 100µF/25V
Półprzewodniki
T1: BC558
T2: BC548
T3...T8: BC328
U1: ATmega8−16PI
U3: TFMS5360
U2: 7805
Różne
X1: kwarc 8MHz
Z1: goldpin 1x3
Z2: goldpin 2x5
Z3: goldpin 1x4
Z4: gniazdo DB9 żeńskie
z obudową
Elektronika Praktyczna 11/2003
▲
Pokojowy regulator
temperatury ze zdalnym
sterowaniem
Proste w wykonaniu, wygodne
w obsłudze i dobrze opisane.
Jeden z najlepszych Projektów
Czytelników roku 2003
przedstawiamy na str. 101.
7−portowy hub USB ▲
Lampowy kompresor dynamiki
Popularność urządzeń z USB jest tak
duża, że 7−portowy hub przyda się pod
każdą „strzechą”. Str. 19.
Na chwilę wracamy znowu do lamp: na str. 25
przedstawiamy opis lampowego kompresora
dynamiki sygnału audio o programowanych
parametrach.
▲
Funkcje realizowane przez urządzenie
opisane w artykule na str. 51 powodują, że
może się ono stać domowym „przyjacielem”.
CAMtastic DXP − CAM dla
projektantów obwodów
drukowanych
▲
Zegar ze 100−letnim kalendarzem ▲
i dwukanałowym termometrem
Kolejny program z rodziny DXP
prezentujemy w artykule na str. 75.
Czujnik zatarcia wentylatora
▲
Kolejny projekt opracowany z myślą
o użytkownikach PC. Str. 80.
▲
Moduły bezpieczeństwa
firmy Schleicher
O tym, jakie urządzenia
zastosować, aby się
zabezpieczyć przed awarią
maszyny piszemy na str. 138.
Cyfrowy oscyloskop/analizator
stanów logicznych
Jednych ten projekt zachwyca, inni go
wyraźnie lekceważą. Na pewno jednak nie
można przejść nad nim obojętnie. Str. 43.
▲
W głośnikowym żywiole ▲
Jeden z największych w naszym kraju
„głośnikowych” guru przygotował dla Czytelników
EP cykl artykułów z poradami jak budować
zestawy głośnikowe. Zaczynamy esejem, który
znajdziecie na str. 55.
6
Elektronika Praktyczna 11/2003
Nr 11 (131)
listopad 2003
Projekty
semi−MatrixOrbital LCD do PC, część 1 .................................... 14
7−portowy hub USB ...................................................................... 19
Lampowy kompresor dynamiki sygnału audio ....................... 25
Moduły interfejsów szeregowych .............................................. 31
Wyłącznik sterowany pilotem .................................................... 39
Cyfrowy oscyloskop/analizator stanów logicznych,
część 2 .......................................................................................... 43
Zegar ze 100−letnim kalendarzem i dwukanałowym
termometrem, część 2 ................................................................ 51
Miniprojekty
Czujnik zatarcia wentylatora ..................................................... 79
Programator kartridży do drukarek Epson ............................... 80
Przekaźniki uniwersalne ▲
i styczniki mocy
O przekaźnikowych nowoś−
ciach firmy Omron piszemy
na str. 135.
Esej
W głośnikowym żywiole, część 1 ............................................... 55
Podzespoły
Systemy identyfikacji bezprzewodowej (RFID)
firmy Texas Instruments ............................................................... 63
Encore! − drugie wcielenie Z8 .................................................... 66
Moduły bezpieczeństwa firmy Schleicher .............................. 138
Sprzęt
Analizator widma GSP−827 ......................................................... 70
Programy
CAMtastic DXP − CAM dla projektantów obwodów
drukowanych ............................................................................... 75
▲
Systemy identyfikacji
bezprzewodowej (RFID)
firmy Texas Instruments
Kurs
Po raz kolejny w EP przedsta−
wiamy możliwości systemu RFID −
Tiris. Str. 63.
Automatyka
Przekaźniki uniwersalne i styczniki mocy ................................. 135
Działanie sterowników S7−200 − podstawy ............................. 142
Encore! − drugie
wcielenie Z8
Projekty Czytelników
▲
Zilog się nie poddaje! Str. 66.
Logika odwracalna ..................................................................... 85
Pamięci nieulotne w systemach
mikroprocesorowych, część 2 ................................................... 89
Podstawy projektowania systemów
mikroprocesorowych, część 9 ................................................... 97
Pokojowy regulator temperatury ze zdalnym sterowaniem,
część 2 ........................................................................................ 101
Z kraju i ze świata ........................................................ 123
Biblioteka EP ................................................................. 131
Kramik+Rynek .............................................................. 105
Bascomowe Porady ...................................................... 93
Listy ................................................................................. 111
Ekspresowy Informator Elektroniczny ..................... 119
Wykaz reklamodawców ............................................ 122
Elektronika Praktyczna 11/2003
7

Podobne dokumenty