6/2003 czerwiec 15 zł 50 gr
Transkrypt
6/2003 czerwiec 15 zł 50 gr
w w w. e p . c o m . p l ELEKTRONIKA PRAKTYCZNA • NA CD: RENESANS (ex-HITACHI), OPROGRAMOWANIE CIMPLICITY DLA PLC Miêdzynarodowy magazyn elektroników konstruktorów 6/2003 ● czerwiec ● 15 zł 50 gr (w tym 7% VAT) 6/2003 • czerwiec A U T O M A T Y K A Nowoczesne sterowniki PLC Urz¹dzeniom produkowanym przez firmÍ GE Fanuc poúwiÍcaliúmy dotychczas niezbyt wiele miejsca w†EP, ale teraz nadrabiamy to zaniedbanie, zaczynaj¹c od prezentacji rodziny sterownikÛw PLC VersaMax. VersaMax System VersaMax jest systemem modu³owym, w†sk³ad ktÛrego wchodzi - oprÛcz jednostek centralnych - szereg dodatkowych modu³Ûw†funkcjonalnych (rozszerzenia I/O w†tym analogowe, interfejsy komunikacyjne - m.in. DeviceNet, Genius, Profibus/Profibus DP, ASi (Master), Ethernet, zasilacze itp.). na do³¹czyÊ j¹ do dowolnej sieci pracuj¹cej z†prÍdkoúci¹ 10 lub 100 Mb/s z†zapewnion¹ obs³ug¹ protoko³u SRTP lub EGD (Ethernet Global Data). Jednostki centralne umoøliwiaj¹ wykonywanie operacji zmiennoprzecinkowych oraz wykorzystanie procedur i†regulatorÛw PID o†konfigurowanych parametrach w†programach steruj¹cych ich prac¹. Zestawienie najwaøniejszych parametrÛw sterownikÛw VersaMax znajduje siÍ w†tab. 1. lub b³Ídne zakoÒczenie procedury autodiagnostycznej, pracÍ lub zatrzymanie sterownika. Co nieco o†peryferiach W†sk³ad systemu VersaMax wchodz¹ m.in. modu³y rozszerzaj¹ce, ktÛrych s¹ dwa rodzaje: nadawcze i†odbiorcze. Modu³ IC200ETM001 jest modu³em nadawczym pozwalaj¹cym na do³¹czenie do jednostki centralnej Jednostki centralne VersaMax VersaMax do 7†kaset rozszerzaj¹cych. Jednostki centralne VersaMax Modu³ wyposaøony jest w†port umoøliwiaj¹ obs³ugÍ do 8†modudo pod³¹czania kaset rozszerzaj¹³Ûw i†7†kaset rozszerzaj¹cych, Co to jest VersaMax? cych na odleg³oúÊ do 750 m. z†kolei do kaødej z†kaset moøna Sterowniki VersaMax to nowa rodzina Maksymalna d³ugoúÊ kabla do do³¹czyÊ rÛwnieø do 8†modu³Ûw kaset rozszerzaj¹cych uzaleøniona (maksymalna odleg³oúÊ, na jak¹ uniwersalnych, modułowych sterowników PLC, które mogą pracować jako jest od uøytego modu³u odbiormoøna oddaliÊ kasety rozszerzaj¹czego oraz wymaganej prÍdkoúci ce od jednostki centralnej, wynosterowniki niezależne, a także jako transmisji i†wynosi: si 750 m). Kaøda jednostka CPU część większego, rozproszonego - do 15 m†- dla IC200ERM002, jest standardowo wyposaøona systemu sterowania. - do 250 m†- dla IC200ERM001 w†zegar czasu rzeczywistego oraz i†prÍdkoúci transmisji 1†Mb/s, dwa porty komunikacyjne: RS232 - od 250...750 m†- 250 kb/s dla i†RS485 (z zaimplementowan¹ obs³ug¹ Sterowniki VersaMax wyposaøono IC200ERM001. protoko³Ûw†SNP/SNP-X, Modbus RTU w†moøliwoúÊ wymiany programu steruModu³ oznaczony symbolem (Master/Slave) i†Custom ASCII Read/ j¹cego podczas pracy (np. za poprzez IC200ERM001 jest z†kolei galwanicznie Write). JednostkÍ centraln¹ CPUE05 interfejs sieciowy). Standardowo steizolowanym odbiornikiem dla kaset (tab. 1) wyposaøono w†interfejs sieciorowniki VersaMax s¹ wyposaøone rozszerzaj¹cych sterownika lub moduwy Ethernet, za pomoc¹ ktÛrego moøw†pamiÍÊ typu Flash, a opcjonalnie w ³Ûw wejúÊ/wyjúÊ. Moøna zastosowaÊ podtrzymywan¹ bateryjnie pamiÍÊ maksymalnie 7†kaset rozszerzaj¹cych, RAM umoøliwiaj¹c¹ przechowanie prozawieraj¹cych po 8†modu³Ûw wejúÊ/ gramu steruj¹cego, danych oraz wyjúÊ lub modu³Ûw specjalnych. Ostatpredefiniowanych stanÛw rejestrÛw. nim modu³em rozszerzaj¹cym jest OprÛcz typowych wejúÊ i†wyjúÊ (cyfroIC200ERM002, ktÛry zapewnia komuniwych i†analogowych), jednostki centralkacjÍ na odleg³oúÊ do 15 metrÛw. Moøne obs³uguj¹ liczniki impulsÛw wysona zastosowaÊ maksymalnie 7†kaset kiej czÍstotliwoúci oraz wyjúcia impulrozszerzaj¹cych, zawieraj¹cych po sowe PTO i†PWM. 8†modu³Ûw wejúÊ/wyjúÊ lub modu³Ûw RolÍ interfejsu uøytkownika w†stespecjalnych. Modu³ ERM200 moøe byÊ rownikach VersaMax spe³nia 7†diod pod³¹czany bezpoúrednio do jednostki LED, sygnalizuj¹cych m.in. obecnoúÊ centralnej (interfejsu komunikacyjnego) napiÍcia zasilaj¹cego 5†V, poprawne Elektronika Praktyczna 6/2003 135 A U T O M A T Y K A danych wejúciowych i†128 bajtÛw†danych wyjúciowych (w†tym maksymalnie 64 kana³y analogowe). Z†kolei IC200BEM002 spe³nia rolÍ modu³u komunikacyjnego do sieci Profibus DP. Pozwala on na wys³anie 384 bajtÛw danych w†tym maksymalnie 244 bajtÛw danych wejúciowych i†tyleø samo wyjúciowych. IC200BEM104 jest to modu³ komunikacyjny AS-i Master. Moøe on spe³niaÊ rolÍ interfejsu pomiÍdzy jednostk¹ centraln¹ VersaMax lub modu³em NIU a†sieci¹ AS-i. Umoøliwia wymianÍ danych dyskretnych (20 bajtÛw z†wejúÊ i†20 bajtÛw z†wyjúÊ dyskretnych) z†31 urz¹dzeniami podrzÍdnymi (Slave). W†przypadku Dodatkowe informacje Zestaw uruchomieniowy VersaMax udostêpni³a redakcji firma Astor, tel. (12) 428-63-00, fax: (12) 428-63-09, www.astor.com.pl. Dodatkowe informacje i oprogramowanie dla sterowników VersaMax s¹ dostêpne w Internecie pod adresami: - http://www.astor.com.pl/Gefanuc/ VersaMax.htm. - http://www.astor.com.pl/Gefanuc/Serwis/ software.asp. w†wypadku, gdy do³¹czana jest tylko jedna kaseta rozszerzaj¹ca i†jej odlegcowaÊ z†praktycznie dowolnymi inny³oúÊ od modu³u nie przekracza 1†m. mi sterownikami w†ramach jednego W†ramach systemu VersaMax oferosystemu sterowania. wane s¹ rÛønorodne modu³y wejúciowowyjúciowe, ktÛrych nie bÍdziemy Podsumowanie Przemyślana konstrukcja szczegÛ³owo omawiaÊ ze wzglÍZ†tej krÛtkiej prezentacji widaÊ, du na ich duø¹ liczbÍ i†relatywøe VersaMax jest uniwersalnym Moduły VersaMax montowane są nie prost¹ funkcjÍ spe³nian¹ systemem steruj¹cym, w†ktÛrym w podstawkach, spełniających rolę w†systemie. Dla orientacji warto sterownik PLC moøe spe³niaÊ rolÍ części magistrali i wyposażonych wiedzieÊ, øe dostÍpnych jest 22 lokalnej ìcentraliî zarz¹dzaj¹cej w terminale przyłączeniowe. Podstawki wersji wejúÊ-wyjúÊ dyskretnych prac¹ wielu modu³Ûw†interfejsomontowane są na szynie DIN i łączone oraz 18 wersji wejúÊ-wyjúÊ anawych. Modu³owoúÊ konstrukcji ze sobą zatrzaskowo. logowych i†mieszanych. jest zalet¹ systemu VersaMax, poAtutem systemu VersaMax niewaø dziÍki niej ³atwo jest dowspÛ³pracy z†sieci¹ DeviceNet niejest rÛønorodnoúÊ dostÍpnych w†nim stosowaÊ budowÍ systemu steruj¹cego zbÍdny bÍdzie modu³ IC200BEM103. sieciowych interfejsÛw komunikacyjdo wymagaÒ aplikacji, co wi¹øe siÍ Moøe on pracowaÊ w†sieci jako Masnych. Na przyk³ad modu³ z†optymalizacj¹ kosztÛw†jego wykonater lub Slave, a†takøe spe³niaÊ obie te IC200DBI001 jest interfejsem komuninia. MoøliwoúÊ zintegrowania w†rakacyjnym sieci DeviceNet, umoøliwiamach systemu praktycznie dowolnego role jednoczeúnie. Za jego poúrednicj¹cym pod³¹czenie do systemu grupy interfejsu sieciowego znakomicie u³attwem moøna nadawaÊ 512 bajtÛw dalokalnych modu³Ûw wejúÊ/wyjúÊ. Wywia wspÛ³pracÍ systemu VersaMax nych (przesy³ane jako bity lub jako miana danych z†jednostk¹ centraln¹ z†urz¹dzeniami dostarczanymi przez s³owa) i†tyle samo odbieraÊ. W†sumie moøe obejmowaÊ maksymalnie 128 innych producentÛw, znacznie w†ramach systemu VersaMax oferowabajtÛw danych wejúciowych i†128 bajzwiÍksza to elastycznoúÊ budowanych nych jest siedem rÛønych modu³Ûw tÛw danych wyjúciowych oraz 2-bajtosystemÛw. komunikacji sieciowej, dziÍki czemu we s³owo stanu i†2-bajtowe s³owo steAndrzej Gawryluk, AVT urz¹dzenia VersaMax mog¹ wspÛ³praruj¹ce. Takøe modu³ IC200PBI001 jest Tab. 1. Zestawienie podstawowych parametrów modułów CPU VersaMax interfejsem komunikacyjnym - tym raParametryjednostekcentralnych CPU001 CPU002 CPU005 CPUE05 zem sieci Profibus-DP - umoøliwiaj¹cym pod³¹czenie lokalnych modu³Ûw Prze³¹cznik trybu pracy Run/Stop + + + + wejúÊ/wyjúÊ. Pracuje on jako urz¹dzePodtrzymywanie pamiêci RAM/pamiêæ Flash +/+ +/+ +/+ +/+ nie podrzÍdne (Slave). Z†urz¹dzeniem Diody statusowe LED + + + + nadrzÍdnym (Master) moøe wymieniaÊ Programowanie z u¿yciem listy instrukcji oraz + + + + kaødorazowo 375 bajtÛw danych wejw logice drabinkowej úciowych i†wyjúciowych. Interesuj¹Liczba procedur 64 64 64 64 cym modu³em komunikacyjnym jest Instrukcje zmiennoprzecinkowe + + + + IC200EBI001, spe³niaj¹cy rolÍ interfejZegar czasu rzeczywistego + + + + su Ethernet. Umoøliwia on pod³¹czePrêdkoæ wykonywania 1 kB prostego 1,8 ms 1,8 ms 0,5 ms 0,5 ms nie modu³Ûw systemu VersaMax do programu logicznego sieci Ethernet i†wymianÍ 1024 bajtÛw Wielkoæ pamiêci przeznaczonej konfiguro- konfiguro- konfiguro- konfigurodanych (na ktÛre sk³ada siÍ po 256 na program steruj¹cy walna 34 kB walna 42 kB walna 64 kB walna 64 kB bajtÛw na kaødy z†typÛw danych: wejPamiêæ rejestrowa (%R) 2048 s³ów 2048 s³ów 2048 s³ów 2048 s³ów úciowych dyskretnych, wyjúciowych konfiguro- konfiguro- konfiguro- konfigurodyskretnych, wejúciowych analogowalna walna walna walna wych, wyjúciowych analogowych). Wejcia dyskretne (%I) 2048 2048 2048 2048 Czwartym interfejsem komunikacyjWyjcia dyskretne (%Q) 2048 2048 2048 2048 nym jest IC200GBI001, za pomoc¹ Wejcia analogowe (%AI) 256 bajtów 256 bajtów 256 bajtów 256 bajtów ktÛrego moøna pod³¹czyÊ do systemu Wyjcia analogowe (%AQ) 256 bajtów 256 bajtów 256 bajtów 256 bajtów sieciowego Genius (natywny system Wewnêtrzne zmienne dyskretne z pamiêci¹ (%M) 1024 1024 1024 1024 sterownikÛw VersaMax) grupÍ lokalWewnêtrzne zmienne dyskretne bez pamiêci (%T) 256 256 256 256 nych modu³Ûw wejúÊ/wyjúÊ. Wymiana Wymiary [mm] 66,8x128 66,8x128 106,7x128 126x128 danych z†jednostk¹ centraln¹ moøe Pobór pr¹du 100 mA 100 mA 290 mA 650 mA obejmowaÊ maksymalnie 128 bajtÛw 136 Elektronika Praktyczna 6/2003 A U T O M A T Y K A Kameleon - to okreúlenie najlepiej oddaje filozofiÍ karty APCI-1710 produkowanej przez niemieck¹ firmÍ Addi-Data. Raz zainstalowana w†komputerze, moøe zmieniaÊ funkcjÍ zaleønie od bieø¹cych potrzeb uøytkownika. Moøe odczytywaÊ stany enkoderÛw, zliczaÊ sygna³y impulsowe, mierzyÊ czÍstotliwoúÊ impulsÛw lub komunikowaÊ siÍ z†innym komputerem. Funkcje karty nie s¹ zdeterminowane sprzÍtowo, lecz przez uøytkownika, ktÛry decyduje o†tym, jak karta ma pracowaÊ w†okreúlonej aplikacji. Wielofunkcyjna programowalna karta licznikowa APCI-1710 Karta APCI-1710 sk³ada siÍ z†czterech programowalnych licznikowych modu³Ûw funkcyjnych, ktÛrych prac¹ zarz¹dza program SET1710 (rys. 1). DziÍki temu oprogramowaniu uøytkownik jednym poci¹gniÍciem myszki moøe za³adowaÊ wybrane przez siebie funkcje do modu³Ûw karty. Kaødy z†4†modu³Ûw karty moøna skonfigurowaÊ jako: - licznik/uk³ad czasowy, - 32- lub 2x 16-bitowy licznik enkodera przyrostowego, - interfejsy enkoderÛw bezwzglÍdnych/SSI, - miernik czÍstotliwoúci, - generator sygna³Ûw PWM, - miernik czasu trwania impulsu, - 8†we/we cyfrowych, 24V, TTL, RS422. KartÍ moøna zaprogramowaÊ jednoczeúnie dowoln¹ kombinacj¹ Rys. 1 132 czterech funkcji. Moøna teø jedn¹ funkcj¹ zaprogramowaÊ wszystkie 4†modu³y. Jednym z†moøliwych zastosowaÒ karty APCI-1710 jest odczyt enkoderÛw przyrostowych lub bezwzglÍdnych (SSI). Enkodery SSI zamieniaj¹ informacjÍ o†po³oøeniu na dane szeregowe i†przesy³aj¹ je za pomoc¹ interfejsu synchronicznego do odbiornika. Enkodery przyrostowe generuj¹ z†kolei pewn¹ liczbÍ impulsÛw na obrÛt. Dwa sygna³y wyjúciowe, przesuniÍte w†fazie o†90 stopni, daj¹ informacje o†szybkoúci i†kierunku obrotÛw. Oba typy enkoderÛw mog¹ byÊ obs³ugiwane przez APCI1710, przy rÛønych pod³¹czeniach sygna³Ûw, zaprogramowanych odpowiednio dla wybranej funkcji modu³u. Kaødy z†4†modu³Ûw ma 12 izolowanych optycznie linii sygna³owych, wyprowadzonych na z³¹cze D-SUB50. Do obs³ugi enkodera przyrostowego w†trybie licznika 32-bitowego jest wykorzystywane 8†sygna³Ûw (w tym sygna³ indeksu i†b³Ídu). Alternatyw¹ jest pod³¹czenie dwÛch enkoderÛw do modu³u w†trybie dwÛch licznikÛw 16-bitowych, jednak bez sygna³u indeksu i†b³Ídu. Dla enkodera SSI potrzebne s¹ tylko 2†sygna³y. Do jednego modu³u moøna wiÍc pod- ³¹czyÊ jednoczeúnie 3†takie enkodery. W†przypadku pracy z†dwoma enkoderami pod³¹czonymi do modu³u w†trybie licznikÛw 16-bitowych, prowadzona jest analiza zboczy dla sygna³Ûw A†i†B†oraz C†i†D. Te cztery sygna³y s¹ odczytywane w†takt wspÛlnego zegara CLKX i†buforowane. CzÍstotliwoúÊ zegara musi byÊ co najmniej czterokrotnie wyøsza od czÍstotliwoúci sygna³Ûw A, B, C†i†D. Kierunek obrotu poszczegÛlnych osi jest okreúlany przez uk³ad analizy zboczy na podstawie przesuniÍÊ w†fazie sygna³Ûw A†i†B†oraz C†i†D. Karta APCI-1710 jest dostarczana ze sterownikami czasu rzeczywistego dla Windows NT oraz standardowymi dla Windows 95/ 98 i†LabVIEW, a†takøe z†przyk³adami programowania w†C, C++, Visual Basic, Delphi. Karta do- Rys. 2 Elektronika Praktyczna 6/2003 A U T O M A T Y K A Elektronika Praktyczna 6/2003 133 A U T O M A T Y K A Rys. 3 Rys. 4 Rys. 5 stÍpna jest teø w†wersji dla magistrali CompactPCI - CPCI-1710. tuje, licznik enkodera jest ustawiony na ì0î. WartoúÊ licznika jest zapamiÍtywana, gdy uk³ad czasowy zostaje wyzerowany. PrÍdkoúÊ obrotow¹ otrzymuje siÍ przez podzielenie wartoúci licznika przez czÍstotliwoúÊ. KartÍ moøna skonfigurowaÊ takøe do jednoczesnego zliczania i†rozpoznawania kierunku obrotÛw. Tak d³ugo, jak enkoder obraca siÍ do przodu (sygna³ A†ìwyprzedzaî sygna³ B), licznik zlicza w†gÛrÍ. Gdy zmienia kierunek obrotÛw, licznik zlicza w†dÛ³. Takie automatyczne rozpoznawanie kierunku jest stosowane w†pozycjonowaniu, kiedy trzeba okreúlaÊ zmiany kierunku np. przy uk³adaniu elementÛw przez ramiÍ robota. W†trybie bezpoúrednim licznik moøna zaprogramowaÊ takøe do pracy jako prze³¹cznik zegar/bramka do pomiarÛw czÍstotliwoúci lub okresÛw (rys. 4). Sygna³ na wejúciu bramki uruchamia (zboczem opadaj¹cym) i†zatrzymuje (zboczem narastaj¹cym) zliczania impulsÛw na wejúciu zegara - sygna³ bramki decyduje o†czasie zliczania. Pomiar d³ugoúci impulsu lub czÍstotliwoúci jest moøliwy tylko wtedy, gdy na wejúcie bramki (pomiar d³ugoúci impulsu) lub zegara (pomiar czÍstotliwoúci) podawany jest refe- rencyjny sygna³ zegarowy ze zdefiniowan¹ i†stabiln¹ czÍstotliwoúci¹. Jeúli bramka otwarta jest przez 1†sekundÍ, liczba zliczonych impulsÛw odpowiada zmierzonej czÍstotliwoúci. Przy pomiarze czasu trwania impulsu, bramka jest otwierana i†zamykana przez mierzony sygna³, tak wiÍc okres moøna okreúliÊ przez zliczone na wejúciu zegarowym impulsy. Za pomoc¹ prezentowanej karty moøna mierzyÊ takøe d³ugoúÊ impulsÛw i†ich czÍstotliwoúÊ (rys. 5). Przed rozpoczÍciem pomiarÛw kierunek zliczania (w gÛrÍ lub w†dÛ³) moøna okreúliÊ programowo. Akwizycja i†analiza d³ugoúci impulsu jest uøywana zw³aszcza do pomiarÛw d³ugoúci elementÛw metalowych za pomoc¹ indukcyjnych czujnikÛw zbliøeniowych. Pomiar czÍstotliwoúci jest odpowiedni dla pomiarÛw prÍdkoúci za pomoc¹ enkoderÛw, poniewaø sygna³ indeksu generuje typowo jeden impuls na obrÛt. EG APCI-1710 w†praktyce Moøliwoúci karty zilustrujemy kilkoma przyk³adami. Jako pierwszy omÛwimy pomiar d³ugoúci drogi (rys. 2) i†wp³yw przyjÍtej zasady pomiaru na jego dok³adnoúÊ. W†prostym trybie pomiarowym moøna zmierzyÊ drogÍ czterokrotnie d³uøsz¹ niø w†trybie poczwÛrnym, przy takiej samej d³ugoúci licznika. Dlatego tryb prosty jest bardziej odpowiedni dla duøej liczby obrotÛw lub szczegÛlnie d³ugich drÛg. W†trybie poczwÛrnym pozycjÍ przy obrotach moøna okreúliÊ z†czterokrotnie wyøsz¹ dok³adnoúci¹, dlatego ten tryb nadaje siÍ bardziej do dok³adnych pomiarÛw. Tryb podwÛjny jest rozwi¹zaniem kompromisowym. W†ten sposÛb liczniki moøna dostosowaÊ do rÛønych aplikacji w†zaleønoúci od tego, czy wymagaj¹ one maksymalnej d³ugoúci drogi, czy maksymalnej dok³adnoúci odczytu. Innym przyk³adem jest pomiar prÍdkoúci (rys. 3). Programowalny uk³ad czasowy (timer) z†okreúlon¹ czÍstotliwoúci¹ odniesienia wyznacza czas, podczas ktÛrego enkoder przyrostowy musi okreúliÊ przebyt¹ drogÍ. Gdy uk³ad czasowy star- 134 Dodatkowe informacje Opracowano na podstawie materia³ów firmy Addi-Data. Dystybutorem tej firmy w Polsce jest Egmont Instruments, tel. (22) 6686975, 8233017, fax: (22) 6592611, http://www.egmont.com.pl, [email protected]. Elektronika Praktyczna 6/2003 A U T O M A T Y K A Czujniki zbli¿eniowe firmy Omron Typowym zadaniem stawianym wielu systemom W†takich w³aúnie aplikacjach s¹ stosowane zbliøeniowe czujniki indukcyjne, ktÛre doskonale nadaj¹ siÍ do wykrywania elementÛw (np. fragmentÛw maszyn) wykonanych z†materia³Ûw ferromagnetycznych. Jednym z†producentÛw czujnikÛw tego typu jest japoÒska firma Omron, w†ofercie ktÛrej znajduje siÍ wiele ich wariantÛw o†charakterystykach przystosowanych do aplikacji rÛønego typu. Ze wzglÍdu na zasadÍ dzia³ania czujniki indukcyjne charakteryzu- j¹ siÍ rÛøn¹ czu³oúci¹ dla rÛønych metali, czego przyk³ady pokazano na rys. 1 i†2. DoúÊ interesuj¹c¹ rodzin¹ czujnikÛw w†ofercie Omrona s¹ czujniki z†rodziny E2A, ktÛre dziÍki wykorzystaniu wieloletnich doúwiadczeÒ i†nowoczesnych technologii - maj¹ mniejsze wymiary od wiÍkszoúci czujnikÛw produkowanych dotychczas, charakteryzuj¹c siÍ przy tym dwukrotnie wiÍkszym zasiÍgiem nominalnym. Rys. 1. Charakterystyka czułości czujnika E2A o średnicy 8 mm dla różnych metali Rys. 2. Charakterystyka czułości czujnika E2A o średnicy 30 mm dla różnych metali Elektronika Praktyczna 6/2003 automatyki jest nadzÛr pracy maszyn i†urz¹dzeÒ, w†ktÛrych z†natury rzeczy jest wiele elementÛw ruchomych, ktÛrych po³oøenie trzeba kontrolowaÊ. Czujniki E2A s¹ produkowane w†szerokiej gamie obudÛw (o standardowych úrednicach gwintu: M8, M12, M18 oraz M30), w†wersjach z†wyprowadzonym kablem lub ze specjalnym, 3- lub 4-stykowym z³¹czem. Przy wyprowadzeniu kabla (lub przy z³¹czu) znajduje siÍ optyczny wskaünik zadzia³ania czujnika wykonany na diodzie LED (øÛ³tej). W†zaleønoúci od zastosowania, czujniki mog¹ mieÊ ekranowane lub nieco wysuniÍte z†metalowej obudowy g³owice pomiarowe, co ma wp³yw na zasiÍg ich dzia³ania i†stromoúÊ charakterystyki czu³oúci (rys. 3 i†4). 129 A U T O M A T Y K A a) b) Rys. 3. Charakterystyki czułości czujników o różnych średnicach z głowicą ekranowaną Rys. 4. Charakterystyki czułości czujników o różnych średnicach z głowicą nieekranowaną W†zaleønoúci od wymagaÒ docelowej aplikacji moøna stosowaÊ czujniki z†wyjúciami typu NC (Normal Close) lub NO (Normal Open) z†tranzystorami NPN lub PNP (rys. 5). Niezaleønie od typu wyjúcia, czujnik jest do³¹czany do systemu za pomoc¹ trzech przewodÛw, z†ktÛrych dwa s³uø¹ do doprowadzenia zasilania (10...32 VDC/10 mA), natomiast trzeci przekazuje sygna³ z†wyjúcia czujnika. Maksymalne natÍøenie pr¹du wp³ywaj¹cego/wyp³ywaj¹cego z†wyjúcia czujnika nie moøe przekraczaÊ 200 mA. Naleøy pamiÍtaÊ, øe w†obwodach wyjúciowych czuj- nikÛw znajduj¹ siÍ zabezpieczenia antyprzepiÍciowe oraz diody zabezpieczaj¹ce przed odwrÛcon¹ polaryzacj¹ napiÍcia (za wyj¹tkiem czujnikÛw o†úrednicy obudowy 8†mm), a rolÍ bezpiecznika przetÍøeniowego spe³nia szeregowo po³¹czone: wyjúciowa rezystancja tranzystora oraz dioda zabezpieczaj¹ca. Przed nieprawid³ow¹ polaryzacj¹ napiÍcia zasilania chroni wewnÍtrzne obwody czujnika specjalne zabezpieczenie, dziÍki czemu zminimalizowano ryzyko jego elektrycznego uszkodzenia. Wszystkie czujniki z†rodziny E2A spe³niaj¹ rozszerzone (zamiast 30-minutowego testu w†temperaturze 30oC†jest przeprowadza- Rys. 5. Budowa obwodów wyjściowych i zasilania czujni− ków z wyjściem z tranzystorem pnp (a) i npn (b) ny test w†20 cyklach: 1†godzina w†temperaturze 80 o C/1 godzina w†temperaturze 0o C, przy czasie zmiany cyklu zaledwie 2†minuty) wymagania szczelnoúciowe IP67 (opisane w†EP12/2002). Dodatkowo producent przeprowadza szokowy test termiczny, ktÛrym poddawane s¹ wszystkie produkowane czujniki. 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. 130 130 Elektronika Elektronika Praktyczna Praktyczna 6/2003 6/2003 A U T O M A T Y K A Kamera termograficzna V-20 Jak wiadomo wszystkie cia³a o†temperaturze powyøej 0†K†emituj¹ promieniowanie podczerwone. Czy moøna ten fakt wykorzystaÊ w†jakiú sposÛb? Odpowiedü wydaje siÍ oczywista - do budowy termometrÛw. Musimy tylko wymyúliÊ odpowiedni¹ metodÍ pomiaru temperatury. £atwo powiedzieÊ ìtylkoî. Zagadnienie bynajmniej nie jest takie trywialne. Jeszcze w latach 70. niemal ca³y úwiat naukowy twierdzi³, øe nie jest moøliwy szybki pomiar d³ugofalowego promieniowania podczerwonego bez specjalnych detektorÛw ch³odzonych kriogenicznie (ciek³ym azotem). Powyøsze stanowisko wp³ywa³o doúÊ istotnie na przebieg prac konstrukcyjnych nad kamerami termograficznymi. Kamery wyposaøone w†detektory ch³odzone kriogenicznie s¹ uci¹øliwe i drogie w†eksploatacji. Jednak cz³owiek wielokrotnie prze³amywa³ bariery, ktÛre wydawa³y siÍ nie do pokonania. Tak by³o i†tym razem, a†sprawa moøe byÊ szczegÛlnie bliska nam Polakom, bo to w³aúnie polscy inøynierowie og³osili, øe wykonaj¹ detektor podczerwieni pracuj¹cy w†duøo mniej drastycznych warunkach, zdecydowanie bardziej zbliøonych do ìpokojowychî. Oznacza to koniecznoúÊ sch³odzenia detektora do temperatury ok. minus trzydziestu kilku stopni Celsjusza. Jest to niew¹tpliwie duøo ³atwiejsze do osi¹gniÍcia, niø utrzymywanie detektora w†temperaturze minus stu kilkudziesiÍciu stopni, jak w†przypadku detektorÛw ch³odzonych kriogenicznie. Wystarcz¹ do tego choÊby doúÊ powszechnie juø stosowane ogniwa Peltiera. Dziú kamera termowizyjna V-20 produkowana przez firmÍ VIGO System SA, pracuj¹ca na tej zasadzie, jest juø normalnym produktem handlowym, zdobywaj¹cym rynki nie tylko krajowe. Doczeka³a siÍ nawet juø drugiej generacji. Jest przy tym tania (jak na aparaturÍ tego typu) i†niezawodna. Alternatywnymi przyrz¹dami dla kamer termowizyjnych s¹ pirometry. Ze wzglÍdu jednak na punktow¹ metodÍ pomiaru przegrywaj¹ z†kamerami wszÍdzie tam, gdzie istotny jest pomiar rozk³adu temperatur. Znajduj¹ wiÍc zastoso- 126 wanie w†grupie pomiarÛw procesÛw technologicznych. Kamera termograficzna tymczasem moøe byÊ wykorzystywana w†diagnostyce przemys³owej, w†warunkach utrudnionego dostÍpu do obiektu lub w†miejscach nienadaj¹cych siÍ do pod³¹czenia na sta³e detektorÛw temperatury (wysokie napiÍcie, agresywne úrodowisko itp.). DziÍki niej moøna prowadziÊ zarÛwno pomiary jednorazowe, jak i†ci¹g³e. W†pierwszym przypadku zainteresowana instytucja nie musi nawet kupowaÊ kamery, moøe zleciÊ jedynie wykonanie odpowiednich pomiarÛw producentowi, ktÛry prowadzi rÛwnieø takie us³ugi. W†drugim przypadku uøytkownik uzyskuje bardzo atrakcyjn¹ formÍ monitorowania swoich obiektÛw. Kamera V-20 po³¹czona z†Internetem umoøliwia ci¹g³y nadzÛr obiektÛw, prowadzony w†sposÛb ca³kowicie bezobs³ugowy. Dodatkow¹ korzyúci¹ jest przy tym rÛwnieø moøliwoúÊ jej zdalnego diagnozowania. Kamera oprÛcz danych ter- Rys. 1. Główne okno programu Therm V−20 Elektronika Praktyczna 6/2003 A U T O M A T Y K A a) b) c) Rys. 2. Wykres liniowy rozkładu temperatur wzdłuż prostej (a), histogram rozkładu temperatur zdjęty z całej powierzchni termogramu (b), histogram rozkładu temperatur wzdłuż wybranej prostej (c) mometrycznych moøe bowiem wysy³aÊ niezbÍdne informacje o†swoim stanie (napiÍcie baterii, stan ³adowania, temperatura detektora, minimalna i†maksymalna temperatura pracy, liczba wykonanych skanÛw, numer seryjny itd.). W†razie koniecznoúci moøna wykonaÊ uaktualnienie oprogramowania wewnÍtrznego mikroprocesora, a†takøe przeprowadziÊ autokalibracjÍ. Wszystkie dane konfiguracyjne s¹ przechowywane w†wewnÍtrznej pamiÍci Flash. Kamera V-20 jest oryginalnym produktem firmy VIGO System SA, pocz¹wszy od opracowania konstrukcji skoÒczywszy na jej produkcji (w³¹cznie z†wytwarzaniem samego detektora). Zastosowano w†niej 16-bitowe przetwarzanie danych, zapewniaj¹ce tym samym uzyskanie bardzo wysokich rozdzielczoúci pomiarÛw (8, 12 lub 16 bitÛw). Kamera moøe pracowaÊ w†trybie dok³adnym lub szybkim. Czas tworzenia obrazu za pomoc¹ kamery V-20 typowo wynosi 25s. Znajduje ona zastosowanie we wszelk iego ro dzaju b adaniach procesÛw wolnozmiennych. Uøycie wbudowanego skanera liniowego (10Hz), jak rÛwnieø zawÍøenie obszaru skanowania pozwala na badanie niektÛrych procesÛw o wiÍkszej prÍdkoúci zmian. W†doúÊ oryginalny sposÛb przewidziano wizualizacjÍ wynikÛw. Jedn¹ z†metod jest do³¹czenie komputera poprzez interfejs USB i†wyúwietlanie wynikÛw na jego monitorze, ale w†warunkach terenowych mog³oby to byʆniewygodne, nawet w†przypadku wykorzystania notebookÛw. Z†tego wzglÍdu kamera moøe byÊ sprzedawana wraz z†komputerem klasy palmtop. Ma nawet specjalnie przewidziany dla niego a) b) c) Tab. 1. Parametry techniczne kamery V−20 dostosowywane indywidualnie do potrzeb i możliwości klienta Seria V-20E Typ kamery obudowa standardowa skaner dwuwymiarowy Rozdzielczoæ przestrzenna sygna³owa Zakres mierzonych temperatur 5 lub 10 mrad uzgodniony podzakres z przedzia³u: -10...1500oC Zakres spektralny Rozdzielczoæ termiczna NETD w 30°C Dok³adnoæ pomiaru 3...5 µm lub 8...12 µm 0,05oC...10oC w zale¿noci od modelu 5% (10% dla modelu E10) K¹t skanowania w poziomie K¹t skanowania w pionie 30 o 30 o Zakres odleg³oci dla pe³nej ostroci (opcja makro: pomiar z odleg³oci 45 mm) Liczba linii 0,3 m do ∝ regulowany elektronicznie maks. 240 Liczba punktów w linii Czas tworzenia obrazu maks. 240 4...25 s Opcja skanera liniowego - czas skanowania wybranej linii Czas miêdzy kolejnymi skanami 2,3...7,2 ms 33...104 ms Detektor Temperatura otoczenia Wymiary HgCdTe ch³odzony termoelektrycznie -10...30oC (zale¿nie od zakresu) 280x112x162 mm Waga Zasilanie 4,5 kg 220 VAC lub 24/12 VDC lub akumulatorowe Elektronika Praktyczna 6/2003 Rys. 3. Przykładowe palety barw używane w termogramach uchwyt. Na ekranie palmtopa jest wyúwietlany obraz widziany przez kamerÍ, a†zainstalowane oprogramowanie umoøliwia natychmiastow¹ obrÛbkÍ wynikÛw. Trzeba pamiÍtaÊ, øe†obraz z†kamery termograficznej nie powstaje tak szybko, jak w†tradycyjnej kamerze wideo. Nie zawsze ³atwe jest wiÍc wycelowanie obiektywu w†odpowiedni punkt. Aby u³atwiÊ tÍ czynnoúÊ, zastosowano wbudowany na sta³e wskaünik laserowy. Jego plamka wyznacza punkt leø¹cy na osi optycznej kamery. DoúÊ oczywista wydaje siÍ rÛwnieø koniecznoúÊ umieszczenia kamery na statywie i†to doúÊ masywnym. Jeúli powierzch- 127 A U T O M A T Y K A Rys. 4. Rozkład temperatury sporządzony w Excelu na podstawie danych z programu Therm V−20 nia mierzona jest znacznie mniejsza od ca³ego pola widzenia, moøna zaznaczyÊ myszk¹ interesuj¹cy nas obszar. Podczas tworzenia obrazu skanowany bÍdzie tylko zaznaczony fragment, skracaj¹c†tym samym czas pomiaru. Opracowane termogramy mog¹ byÊ zapisywane na karcie pamiÍciowej MMC o†pojemnoúci do 256†MB. Umoøliwia ona zachowanie ponad 3500 termogramÛw, a†zastosowanie portu USB zapewnia w†razie koniecznoúci szybki transfer danych. Powyøsze cechy kamery V-20 s¹ bardzo przydatne podczas prac w†warunkach terenowych. Detektory podczerwieni stosowane w†kamerach termograficznych moøna podzieliÊ na jednoelementowe i†wieloelementowe. W†V-20 zastosowano detektor jednoelementowy. Rozwi¹zanie takie przyczynia siÍ do obniøenia kosztu ca³ego urz¹dzenia i†jednoczeúnie zapewnia, øe kaødy z†57600 punktÛw sk³adaj¹cych siÍ na obraz powstaje w†identycznych warunkach. Zastosowanie pojedynczego detektora niesie ze 128 sob¹ zalety metrologiczne wynikaj¹ce z†faktu, øe kaødy elementarny obszar obiektu mierzony jest tym samym detektorem i dok³adnoúÊ pomiaru jest duøo wiÍksza niø w przypadku detektorÛw wieloelementowych. Kamera to nie wszystko Moøna powiedzieÊ, øe bezpoúrednia praca z†kamer¹ to tylko wstÍp do pÛüniejszego opracowania wynikÛw pomiarowych. Dalsze czynnoúci bÍd¹ prowadzone juø w†warunkach biurowych, przy wykorzystaniu komputera i†programu Therm V-20 (rys. 1). Program ten jest dostarczany razem z†kamer¹. Uøytkownik nie ponosi dodatkowych kosztÛw zwi¹zanych z†jego nabyciem. Za pomoc¹ programu Therm V-20 moøe byÊ przygotowana niemal automatycznie dokumentacja prac pomiarowych, obejmuj¹ca opracowanie graficzne i†tabelaryczne wynikÛw. W†jej sk³ad wchodz¹: pliki tekstowe z†opisami pomiarÛw, zdjÍcia mierzonych obiektÛw (tradycyjne - wykonane np. aparatem cyfrowym), zestaw termogramÛw, wykresy liniowe (rys. 2a) i†histogramy rozk³adu temperatur (rys. 2b i†2c). Te ostatnie odnosz¹ si͆do ca³ej powierzchni obrazu lub tylko do ustalonej krzywej ³amanej, przebiegaj¹cej przez wybrane punkty mierzonego obiektu. Gdyby proponowane w†programie typy wykresÛw nie odpowiada³y wymaganiom uøytkownika, moøe on skorzystaÊ np. z†programu Excel po wczeúniejszym wyeksportowaniu do niego danych. Program Therm V-20 potrafi teø eksportowaÊ dane w†formacie *.bmp. Do tworzenia termogramÛw moøna wybraÊ najbardziej odpowiedni¹ paletÍ barw, wspomagan¹ filtrem temperatur i†filtrem wyúwietlania - przyk³ady przedstawiono na rys. 3a, 3b i†3c. Podczas przesuwania kursora w†obrÍbie okna roboczego widaÊ natychmiastowe wyúwietlenie uaktualnionych wspÛ³rzÍdnych ekranowych, a†takøe temperatury wskazywanego punktu. RozdzielczoúÊ termiczna wynosi 0,05oC. Moøna powiedzieÊ, øe kamera V-20 jest produktem unikatowym. SprzÍt tego typu jest produkowany przez niewielu wytwÛrcÛw úwiatowych. Cieszy wiÍc fakt, øe wúrÛd nich jest nasza rodzima firma. Kamera V-20 zdoby³a wiele nagrÛd na rÛønego rodzaju targach i wystawach. Kamera V-20 jest jedn¹ z wielu aplikacji detektorÛw podczerwieni bÍd¹cych podstawowym elementem w ofercie firmy VIGO System. WiÍcej informacji moøna znaleüÊ na stronie internetowej www.vigo.com.pl. Jaros³aw Doliñski [email protected] Dodatkowe informacje Wiêcej informacji mo¿na uzyskaæ w firmie VIGO System S.A., tel. (22) 666-01-45, http:// www.vigo.com.pl Elektronika Praktyczna 6/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. Uwaga! Większość prezentowanych książek można zamówić w Dziale Handlowym AVT (patrz str. 125). Chcemy w ten sposób udostępnić je Czytelnikom EP. Tomasz Starecki, „Mikrokontrolery 8051 w praktyce”, BTC 2002 Nazwisko autora ksi¹øki jest z†pewnoúci¹ doskonale znane Czytelnikom EP, napisa³ on bowiem promowan¹ przez nas kilka lat temu ksi¹økÍ ìMikrokontrolery jednouk³adowe rodziny 51î, ktÛra z†rozrzewnieniem jest wspominana do dziú. By³a to bowiem pierwsza na rynku wydawniczym ksi¹øka kompleksowo prezentuj¹ca ca³¹ Ûwczesn¹ rodzinÍ mikrokontrolerÛw '51, ze szczegÛ³owym opisem ich peryferii, rejestrÛw specjalnych i†wszelkich innych szczegÛlnych cech, ktÛre s¹ istotne dla konstruktorÛw urz¹dzeÒ i†programistÛw. Bior¹c pod uwagÍ dobr¹ opiniÍ tamtej ksi¹øki, przed autorem stanͳo trudne zadanie przygotowania publikacji o†rÛwnie wysokim poziomie, lecz inaczej traktuj¹cej tematykÍ '51. Powaøn¹ zmianÍ juø na pierwszy rzut oka sugeruje tytu³ nowej ksi¹øki, a†bior¹c pod uwagÍ dotychczasowe publikacje Wydawnictwa BTC z†cyklu ìW praktyceî, mog³em siÍ spodziewaÊ sporych atrakcji. I†tak jest w†rzeczywistoúci: oprÛcz ìklasycznychnieúmiertelnychî informacji o†budowie rdzenia '51, organizacji pamiÍci danych i†programu, dzia³aniu uk³adu obs³ugi przerwaÒ czy rejestrach SFR (bÍd¹cych zreszt¹ czÍúciowym powtÛrzeniem informacji z†poprzedniej ksi¹øki), autor zawar³ w†prezentowanej ksi¹øce takøe wiele zupe³nie nowych informacji. I†tak, szczegÛln¹ uwagÍ praktykÛw przyci¹gnie z†pewnoúci¹ dziesi¹ty rozdzia³ ksi¹øki, w†ktÛrym znajduj¹ siÍ przyk³ady wyko- Elektronika Praktyczna 6/2003 rzystania mikrokontrolera w†aplikacjach rÛønego typu. SzczegÛlnie interesuj¹ce s¹: obs³uga klawiatur rÛønego typu, sterowanie wielocyfrowych wyúwietlaczy LED oraz alfanumerycznych LCD, omÛwienie sposobu korzystania z†interfejsu UART oraz jego programowa implementacja, przyk³ady zastosowania interfejsÛw SPI, I2C oraz 1Wire, a†takøe sposoby sterowania przez mikrokontroler obci¹øeÒ zasilanych napiÍciem sieciowym 220V. Wszystkie przyk³ady zilustrowano programami napisanymi w†asemblerze '51 (s¹ one dostÍpne takøe na stronie Wydawnictwa). Ponadto autor pokaza³ sposoby do³¹czenia do mikrokontrolerÛw '51 zewnÍtrznej pamiÍci danych i†zewnÍtrznych peryferii (dziÍki czemu pocz¹tkuj¹cy projektanci mog¹ siÍ zorientowaÊ, jak siÍ buduje prawdziwe systemy mikroprocesorowe). RÛwnie interesuj¹cy jest rozdzia³ 9, w†ktÛrym znajduj¹ siÍ opisy (sprzÍtowych i†programowych) narzÍdzi uruchomieniowych, ze szczegÛlnym uwzglÍdnieniem tych, ktÛre s¹ dostÍpne bezp³atnie (podano wiele adresÛw internetowych). Autor powaønie podszed³ do projektÛw przyk³adowych, poniewaø specjalnie na potrzeby ksi¹øki przygotowa³ zestaw sprzÍtowy z†mikrokontrolerem AT89S8252 (z pamiÍci¹ programu typu Flash ISP), ktÛry jest otoczony podstawowymi peryferiami. Na tym w³aúnie zestawie by³y testowane wszystkie programy, co dobrze wrÛøy tym czytelnikom ksi¹øki, ktÛrzy bÍd¹ chcieli z†nich skorzystaÊ. Jest to tym ³atwiejsze, øe w†ksi¹øce opisano takøe bardzo prosty programator ISP, za pomoc¹ ktÛrego moøna modyfikowaÊ zawartoúÊ pamiÍci mirkokontrolera zastosowanego w†zestawie. Uzupe³nieniem treúci ksi¹øki jest indeks hase³ oraz 6 dodatkÛw, w†ktÛrych znajduj¹ siÍ informacje przydatne podczas poznawania i†- pÛüniej - pos³ugiwania siÍ mikrokontrolerami. SzczegÛlnie interesuj¹ce wydaj¹ mi siÍ dodatki, w†ktÛrych znajduj¹ siÍ tablice kodÛw ASCII oraz kodÛw znakÛw wykorzystywanych przez sterownik wyúwietlacza LCD, schematy blokowe wielu nietypowych mikrokontrolerÛw '51, wyprowadzenia mikrokontrolerÛw w†rÛønych obudowach, a†takøe skrÛcony przegl¹d wybranych wersji '51. Reasumuj¹c: kompetentna ksi¹øka o†silnej orientacji na konstruktorÛw, ktÛrzy chc¹ szybko i†bezboleúnie - od strony praktycznej - poznaÊ moøliwoúci i†tajniki mikrokontrolerÛw z†rodziny '51, ktÛrej øywotnoúÊ dorÛwnuje popularnoúci. Miko³aj Andrus 123 B I B L I O T E K A E P Legenda: ksi¹øka wybitna, polecamy! ksi¹øka o†duøych walorach praktycznych, polecamy! moøe siÍ przydaÊ daleka od doskona³oúci Andrzej MaczyÒski, ìSterowniki programowalne PLC. Budowa systemu i†podstawy programowaniaî, Astor 2002 Jest to specyficzna ksi¹øka, spe³niaj¹ca jednoczeúnie role: podrÍcznika i†przewodnika dla pocz¹tkuj¹cych po úwiecie: automatyki (od podstaw), sterownikÛw PLC, ich peryferii i†programowaniu (jÍzyk drabinkowy), a†takøe oprogramowaniu wspomagaj¹cemu projektowanie kompletnych systemÛw regulacji, sterowania i†wizualizacji przebiegu nadzorowanych procesÛw. Autor przygotowa³ bardzo przystÍpny kurs, dziÍki ktÛremu moøna doúÊ szybko poznaÊ podstawowe zagadnienia zwi¹zane z†automatyzacj¹ procesÛw sterowania i†to praktycznie z†kaødej ìstronyî. Istotne dla uøytkownikÛw - choÊ z†pewnoúci¹ czÍúÊ CzytelnikÛw uzna to za wadÍ ksi¹øki - jest doúÊ szczegÛ³owe przywi¹zanie jej treúci do urz¹dzeÒ firmy GE Fanuc, ktÛrej dystrybutorem jest wydawca ksi¹øki - firma Astor. Z†jednej strony doúÊ ³atwo moøna odnieúÊ swoje pomys³y do konkretnych urz¹dzeÒ, zaú z†drugiej reklama wciska siÍ drzwiami i†oknami. Takie czasy! Andrzej Gawryluk Janusz Biernat, ìMetody i†uk³ady arytmetyki komputerowejî, Oficyna Wydawnicza Politechniki Wroc³awskiej 2001 Ksi¹øka o†niezwyk³ej wartoúci uøytkowej, zw³aszcza dla bardziej ambitnych programistÛw. Autor zawar³ w†niej niemaløe kompletn¹ wiedzÍ zwi¹zan¹ z†realizacj¹ obliczeÒ sta³o- 124 i†zmiennoprzecinkowych za pomoc¹ uk³adÛw cyfrowych, w†tym przede wszystkim mikroprocesorÛw. Tak wiÍc, czytelnik moøe dowiedzieÊ siÍ z†prezentowanej ksi¹øki, w†jaki sposÛb realizowane s¹ dzia³ania arytmetyczne (dodawanie, odejmowanie oraz mnoøenie liczb kodowanych na rÛøne sposoby), jakich zabiegÛw naleøy dokonaÊ, aby operacje trudne obliczeniowo (przede wszystkim czasoch³onne) wykonywaÊ w†jak najkrÛtszym czasie, a†takøe z†czego wynikaj¹ granice wydajnoúci cyfrowych systemÛw obliczeniowych. W†dodatku znalaz³y siÍ opisy standardÛw IEEE754/854, a†takøe polsko-angielski s³ownik terminÛw. Ksi¹øka zdecydowanie nie naleøy do pozycji ³atwych, ale poruszana w†niej tematyka nie jest zbyt wdziÍczna. Niestety, implementacja algorytmÛw obliczeniowych wymaga odpowiedniego przygotowania teoretycznego. Andrzej Gawryluk £ukasz Komsta, ìKrÛtkofalarstwo i†radiokomunikacja - poradnikî, WKi£ 2001 nie warto kupowaÊ zdobywania uprawnieÒ radiooperatorskich, prezentuje stowarzyszenia i†organizacje dzia³aj¹ce ìwokÛ³î radiokomunikacji, omawia regu³y rz¹dz¹ce propagacj¹ fal radiowych, sporo miejsca przeznaczy³ takøe na pokazanie moøliwoúci popularnych, fabrycznych urz¹dzeÒ radiowych. Przedstawione zosta³y kody stosowane podczas ³¹cznoúci rÛønego typu (w tym profesjonalnych), rÛønego typu anteny i†systemy antenowe, nieco miejsca poúwiÍcono takøe przybliøeniu zagadnieÒ zwi¹zanych z†radiow¹ sieci¹ pakietow¹. Przydatnym dodatkiem do ksi¹øki jest mapa (w postaci wk³adki) ilustruj¹ca podzia³ úwiata na strefy WAZ z†zaznaczonymi prefiksami poszczegÛlnych krajÛw. Ksi¹øka z†pewnoúci¹ zainteresuje tych naszych CzytelnikÛw, ktÛrzy zajmuj¹ siÍ ³¹cznoúci¹ radiow¹. W†ksi¹øce zawarto podstawowe wiadomoúci o†krÛtkofalarstwie i†radiokomunikacji, wúrÛd ktÛrych szczegÛlnie przydatne jest przybliøenie funkcjonowania s³uøb radiokomunikacyjnych oraz CB, a†takøe stosowane wspÛ³czeúnie rodzaje emisji radiowej. Czytelnicy nieznaj¹cy historii radiokomunikacji mog¹ siÍ - dziÍki tej ksi¹øce - z†ni¹ zapoznaÊ, z†kolei czytelnicy zainteresowani podstawami prawnymi dzia³ania stacji radiowych znajd¹ w†niej wykaz odpowiednich aktÛw prawnych. S³owo ìporadnikî w†tytule sugeruje kompletnoúÊ zawartej w†ksi¹øce wiedzy elementarnej i†tak jest w†rzeczywistoúci autor przedstawia w†niej takøe zasady Elektronika Praktyczna 6/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. Inteligentna ładowarka akumulatorów NiCd/NiMH Rosn¹ca liczba urz¹dzeÒ przenoúnych stawia przed elektronikami nowe wyzwania. Jedno z†nich podj¹³ Czytelnik, w†wyniku czego powsta³ projekt prezentowany w†artykule. Rekomendacje: ³atwy w†wykonaniu projekt szybkiej ³adowarki do popularnych akumulatorÛw stosowanych m.in. w†przenoúnym sprzÍcie audio. Rys. 1 Elektronika Praktyczna 6/2003 Z†pewnoúci¹ kaødy uøytkownik przenoúnych urz¹dzeÒ zasilanych bateryjnie zosta³ kiedyú zaskoczony, gdy prÛbuj¹c w³¹czyÊ swoje elektroniczne cacko, dowiedzia³ siÍ, øe... akumulatory siÍ wy³adowa³y. Nie ma z†tym wiÍkszego problemu, gdy jest to telefon komÛrkowy wyposaøony w†specjaln¹ ³adowarkÍ. Po godzinie czy dwÛch moøemy na nowo korzystaÊ z†urz¹dzenia. W†duøo gorszej sytuacji s¹ ci, ktÛrzy s³uchali muzyki z†kasety czy p³yty, lub w†úrodku nocy odmÛwi³a pracy klasyczna latarka na dwa ìpaluszkiî. Zaopatrzeni w†sklepow¹ ³adowarkÍ musz¹ oni odstawiÊ baterie na kilka godzin w†celach regeneracyjnych. No i†niestety walkman, ma³e rÍczne radio, discman i†latarka sta³y siÍ bezuøyteczne. Ale - g³owa do gÛry - nadchodzi odsiecz... Uk³ad, ktÛry chcia³bym zaprezentowaÊ, nie jest øadn¹ rewelacj¹, aczkolwiek posiada kilka przydatnych funkcji, ktÛre w†kilku s³owach postaram siÍ przybliøyÊ. DostÍpne na rynku popularne akumulatorki NiCd charakteryzuj¹ siÍ znamionowym napiÍciem rÛwnym 1,25 V. Jest to teoretyczne napiÍcie ogniwa roz³adowanego do po³owy pojemnoúci. Reakcje elektrochemiczne zachodz¹ce w†ogniwie podczas roz³adowywania s¹ odwracalne pod warunkiem, øe nie nast¹pi utrata gazu (tlenu w†ogniwach NiCd, wodoru w†NiMH). Przyczyn¹ ìwyciekuî moøe byÊ nadmierne roz³ado- wanie ogniwa (szeregowe po³¹czenie kilku ogniw w†bateriÍ) - gdy jego napiÍcie spadnie do zera, p³yn¹cy wÛwczas wsteczny pr¹d powoduje nagrzewanie, ulatnianie siÍ gazu i†w†efekcie zniszczenie lub nawet eksplozjÍ akumulatora. RÛwnieø podczas ³adowania duøym pr¹dem istnieje niebezpieczeÒstwo prze³adowania ogniwa, co niesie podobne skutki. Dla unikniÍcia tego typu sytuacji uniwersalne ³adowarki regeneruj¹ ogniwa pr¹dem niegroø¹cym prze³adowaniem, niestety jest on tak ma³y (zwykle C/10 lub C/15, C†- pojemnoúÊ ogniwa), øe ³adowanie trwa nawet 12 godzin. Przy tak odnawianych ogniwach istnieje niebezpieczeÒstwo do³adowywania ogniw nieroz³adowanych. WystÍpuj¹cy tzw. efekt pamiÍciowy powoduje redukcjÍ pojemnoúci w†kolejnych cyklach do³adowywania. Szybka regeneracja polega na przep³ywie duøego (rzÍdu C) pr¹du przez ogniwa, dziÍki czemu czas regeneracji skraca siÍ radykalnie. Stosowane s¹ dwie metody szybkiego ³adowania: sta³ym pr¹dem lub sta³ym napiÍciem. Kilka s³Ûw na temat tej pierwszej, ktÛr¹ zastosowa³em w†moim projekcie. Dla na³adowania baterii wymusza siÍ przep³yw sta³ego pr¹du przez po³¹czone szeregowo ogniwa. W†miarÍ up³ywu czasu napiÍcie na akumulatorach wzrasta. Moment pe³nego na³adowania jest wykrywany dziÍki ujemnemu przyrostowi jego wartoúci. W†ostatniej fazie procesu odnotowujemy takøe Projekt 110 spadek temperatury ogniwa, co rÛwnieø moøe zagwarantowaÊ wykrycie chwili na³adowania. Ta metoda jest jednak mniej skuteczna ze wzglÍdu na trudnoúci zwi¹zane z†pomiarem temperatury - wewnÍtrzny jest niemoøliwy, a†zewnÍtrzny ma³o dok³adny. ìKsi¹økowyî przebieg napiÍcia ³adowanych ogniw widaÊ na rys. 1. Z†kolei na rys. 2 pokazano charakterystykÍ roz³adowywania ogniw NiCd i†NiMH. Opis projektu Przejdümy teraz do omÛwienia dzia³ania prostego uk³adu, ktÛry pozwoli w†stosunkowo krÛtkim czasie na bezpieczne zregenerowanie roz³adowanych akumulatorÛw. Sk³ada siÍ on z†dwÛch uk³adÛw scalonych i†kilku elementÛw dyskretnych, a†koszt jego budowy na pewno nie przekroczy ceny, za jak¹ s¹ oferowane zwyk³e 12-godzinne ³adowarki. ìMÛzgiemî uk³adu jest popularny mikrokontroler AT89C2051 wspÛ³pracuj¹cy z†uk³adem firmy Philips PCF8591. Jest to poczwÛrny przetwornik analogowo-cyfrowy sterowany interfejsem I2C. Uk³ad ten w†swojej strukturze zawiera rÛwnieø przetwornik C/A. Dane wejúciowe mikroprocesora stanowi¹ trzy jednobajtowe liczby bÍd¹ce rezulta- Rys. 2 89 PROJEKTY CZYTELNIKÓW Rys. 3 tem pomiarÛw wykonanych przez uk³ad PCF8591. S¹ to napiÍcia odpowiednio na jednym ogniwie, na ca³ej baterii i†napiÍcie informuj¹ce o†pr¹dzie ³adowania, powstaj¹ce na rezystorze w³¹czonym w†szereg z†ogniwami. Przetwornik pracuje w†standardowej konfiguracji z†diodowym zabezpieczeniem wejúÊ analogowych. Do sterowania czÍúci¹ mocy uk³adu wykorzystano analogowe wyjúcie przetwornika C/A, ktÛry okreúla wartoúÊ pr¹du ³adowania (schemat elektryczny na rys. 3). Do komunikacji z†uøytkownikiem s³uøy wyúwietlacz LCD pracuj¹cy z†czterobitow¹ magistral¹ danych oraz dioda LED sygnalizuj¹ca stan ³adowarki. Wprowadzeniu nastaw s³uø¹ dwa Rys. 4 90 przyciski chwilowe oznaczone jako WYB”R (zmiana parametrÛw) i†OK (zatwierdzenie). Bezpoúrednie pod³¹czenie wyprowadzenia 14 (Vref ) przetwornika PCF8591 wprost do szyny zasilania nie jest dobrym rozwi¹zaniem ze wzglÍdu na niewielk¹ stabilnoúÊ napiÍcia. Alternatywnie, do stabilizacji napiÍcia referencyjnego moøna zastosowaÊ uk³ad LM385. Tranzystor mocy BD244 przy napiÍciu zasilania 5†V†i†pr¹dzie ³adowania 500 mA praktycznie nie wymaga radiatora, ale naleøy pamiÍtaÊ, øe przy wzroúcie wartoúci pr¹du czy napiÍcia niewielki kawa³ek aluminium zredukuje jego temperaturÍ do bezpiecznego poziomu. Wartoúci wszystkich elementÛw dyskretnych nie s¹ krytyczne i†mog¹ byÊ dobierane indywidualnie przez kaødego uøytkownika-elektronika. Waøne jest jedynie, aby tranzystory dysponowa³y odpowiedni¹ moc¹ strat i†maksymalnymi pr¹dami kolektorÛw przekraczaj¹cymi wartoúÊ przewidywanego pr¹du przy pracy uk³adu. Dla wykorzystania pe³nej skali pr¹dowej ³adowarki, przy wysterowaniu tranzystora BC211 (ok. 5†V†na bazie) przez tranzystor ³aduj¹cy BD244 przy potencjale jego kolektora ok. 3†V†powinien p³yn¹Ê pr¹d o†natÍøeniu ok. 1†A. ZespÛ³ roz³adowuj¹cy powinien umoøliwiÊ przep³yw pr¹du o†wartoúci ok. 150 mA przy napiÍciu na ogniwach ok. 2†V. To chyba wszystko, jeúli chodzi o†fizyczn¹ stronÍ uk³adu, a†teraz jego dzia³anie. Uproszczony diagram stanÛw uk³adu przedstawiono na rys. 4. Zosta³ on zapisany w†Basicu i†skompilowany za pomoc¹ Bascoma (kody ürÛd³owe s¹ dostÍpne w†dziale Download na stronie www.ep.com.pl, znajd¹ siÍ takøe na CD-EP7/2003B). Po w³¹czeniu zasilania ³adowarka sprawdza obecnoúÊ ogniw. W†przypadku ich nieznalezienia na wyúwietlaczu pojawia siÍ komunikat: BRAK OGNIW. Po w³oøeniu baterii uk³ad przystÍpuje do sprawdzenia ich stanu. W†tym celu na 3†minuty zostaje za³¹czony tranzystor roz³adowuj¹cy, a†procesor mierzy w†tym czasie napiÍcie na obu ogniwach, aby nie dopuúciÊ do nadmiernego roz³adowania ktÛregokolwiek z†nich. Moøliwe s¹ trzy przypadki: 1. Na obydwu ogniwach napiÍcie spadnie poniøej ok. 0,8 V. 2. KtÛreú z†ogniw bÍdzie nieroz³adowane. 3. Ogniwa nie wymagaj¹ ³adowania. W†drugiej sytuacji uk³ad poprosi o†wymianÍ zestawu, w†trzecim poinformuje, øe ogniwa s¹ na³adowane. W†obu przy- padkach moøliwe jest kontynuowanie ³adowania przez przytrzymanie klawisza OK na 2†sekundy, lecz jest to sytuacja niezbyt zdrowa dla baterii, co jest sygnalizowane pojawieniem siÍ symbolu wykrzyknika na wyúwietlaczu podczas ³adowania. Pierwszy przypadek to sytuacja podrÍcznikowa - ogniwa wymagaj¹ ³adowania przechodzimy do menu, gdzie moøemy wybraÊ pr¹d ³adowania w†zakresie 100...1000 mA z†rozdzielczoúci¹ 100 mA. Oczywiste jest, øe wiÍkszy pr¹d to krÛtszy czas, jednak nie wszystkie ogniwa znosz¹ trudne warunki narzucone przez uøytkownika. Na uwadze naleøy mieÊ ich pojem- WYKAZ ELEMENTÓW Rezystory: 10Ω/5W; 3 x 3,3kΩ; 10kΩ; 1kΩ; 500Ω; 1Ω/5W; 3Ω/1W Kondensatory: 2 x 33pF; 2 x 100nF; 220µF/16V; 470µF/ 25V; 10µF/16V; 1µF/16V. Półprzewodniki: − układy scalone: AT89C2051 (zaprogramo− wany); PCF8591; LM7805, − diody: 6 x 1N4148; LED (np. zielona), − tranzystory: 2 x BD244/ BC313, BC211(lub podobne) Różne: rezonator kwarcowy 4MHz; 2 x mikroprzełączniki; LCD 16*1; goldpiny; ARK2 Elektronika Elektronika Praktyczna Praktyczna 6/2003 2/98 PROJEKTY CZYTELNIKÓW noúÊ i†zalecenia producenta co do maksymalnego dopuszczalnego pr¹du ³adowania. Po wybraniu stosownej opcji potwierdzamy j¹ za pomoc¹ OK i†uk³ad rozpoczyna ³adowanie. Okazuje siÍ, øe ogniwa nie lubi¹ nag³ych zmian pr¹du jak rÛwnieø temperatury, dlatego ³adowarka stopniowo przez okres 3†minut zwiÍksza wartoúÊ pr¹du. Po osi¹gniÍciu zadanej wartoúci uk³ad - dziÍki Elektronika Praktyczna 6/2003 sprzÍøeniu zwrotnemu - utrzymuje sta³¹ jego wartoúÊ, monitoruj¹c jednoczeúnie napiÍcie na ogniwach w†celu wykrycia stanu pe³nego na³adowania. W†przypadku wyjÍcia ogniw podczas regeneracji uk³ad informuje o†ich braku i†przerwaniu ³adowania. Proces ³adowania moøna oczywiúcie zatrzymaÊ, choÊ nie jest to wskazane, naciskaj¹c oba przyciski na 2†sekundy. Po wykry- ciu stanu na³adowania uk³ad stopniowo zmniejsza pr¹d do zera, po czym informuje o†zatrzymaniu ³adowania zapalon¹ diod¹ i†informacj¹ na LCD. Moøna teraz bezpiecznie wyj¹Ê jeszcze ciep³e nowe ogniwa, a†uk³ad bÍdzie gotÛw do za³adowania nowego zestawu do regeneracji. Uk³ad by³ testowany na ogniwach AA firmy Panasonic o†pojemnoúci 800 mAh. Przy pr¹dzie regeneracji 1000 mA ³adowarka pracowa³a niewiele ponad godzinÍ. Wszelkie uwagi, spostrzeøenia, wykryte b³Ídy w†programie i†sprzÍcie proszÍ kierowaÊ na adres: [email protected]. Mariusz ¯¹d³o Uwaga! Program ürÛd³owy do projektu opublikujemy na CD-EP7/2003B. 91 K U R S Pisz¹c program w†jÍzyku C,†czasami zadajemy sobie część 13 pytanie: czy naprawdÍ muszÍ tworzyÊ funkcjÍ dokonuj¹c¹ konwersji wartoúci dziesiÍtnej na szesnastkow¹? Przecieø chociaøby biblioteka o†nazwie STDIO zawiera w†sobie moøliwoúÊ formatowania zarÛwno danych wejúciowych, jak i†wyjúciowych. Czy nie ma moøliwoúci skorzystania z†czyjejú pracy i†zaoszczÍdzenia w³asnego czasu? printf() − jak korzystać z tej funkcji? Kilka s³Ûw o†STDIO.H Biblioteka o†nazwie STDIO.H (STanDard Input-Output) zawiera szereg funkcji umoøliwiaj¹cych odczyt i†wyprowadzanie znakÛw do (z) standardowego urz¹dzenia wejúcia/wyjúcia. W†ìduøymî komputerze role tych urz¹dzeÒ spe³niaj¹ klawiatura i†monitor. W†przypadku mikrokontrolera przyjÍto, øe funkcje STDIO wykorzystuj¹ interfejs szeregowy UART (po konwersji poziomÛw napiÍÊ wyjúciowych - RS232), traktuj¹c go jako standardowe urz¹dzenie do komunikacji z†uøytkownikiem. W†przypadku kompilatora RC-51 (www.raisonance.com) nastawy UART dokonywane s¹ tuø po uruchomieniu napisanej dla mikrokontrolera aplikacji. Zajmuje siÍ tym funkcja _C_INIT_IO. Ustawia ona TIMER1 w†mikrokontrolerze ë51 jako generator steruj¹cy transmisj¹, nadaj¹c jego rejestrowi TH1 predefiniowan¹ wartoúÊ pocz¹tkow¹. Domyúlnie jest to 0xE8, co odpowiada prÍdkoúci transmisji 1200 bps przy czÍstotliwoúci zegara 11,0592 MHz. WartoúÊ tÍ moøna zmieniÊ, uøywaj¹c polecenia #pragma (na przyk³ad polecenie #pragma DEFJ(TIM1_INIT=0xFD) przy tej samej czÍstotliwoúci generatora zegarowego, ustawi prÍdkoúÊ transmisji na wartoúÊ 19200 bps). Ale jeúli by³yby to tylko i†wy- Funkcje STDIO.H predefiniowane przez Raisonance, producenta pakietu RC-51 extern extern extern extern extern extern extern extern extern extern int _getkey(void); int getchar (void); char ungetchar (char c) reentrant; char *gets (char *s) reentrant; int putchar (const int c ); int puts (const char *s ) reentrant; int printf(const char *format,...) reentrant; int sprintf(char *buffer, const char *format,...) reentrant; int scanf(const char *format,...) reentrant; int sscanf(const char *buffer, const char *format,...) reentrant; ³¹cznie instrukcje wysy³ania oraz odbioru znakÛw, nie warto by by³o poruszaÊ tego tematu. Istnieje bowiem mnÛstwo dobrych opracowaÒ na temat bibliotek wykorzystywanych przy programowaniu w†jÍzyku C. printf() = formatowane wyjúcie Kaødy, kto kiedykolwiek wykorzystywa³ funkcje predefiniowane w†STDIO.H wie, øe umoøliwiaj¹ one formatowanie danych. Zgodnie ze specyfikacj¹ standardu ANSI, szereg z†nich dokonuje przekszta³ceÒ wewnÍtrznych wartoúci na zna- Tab. 1. Podstawowe przekształcenia funkcji printf() Znak formatuj¹cy d lub i o x lub X Typ przekszta³canego argumentu int int int u c s int int char* f double e lub E double g lub G double p n void* int* % 86 Opis przekszta³cenia Przekszta³cenie do postaci: liczba dziesiêtna ze znakiem liczba ósemkowa bez znaku i bez wiod¹cego zera liczba szesnastkowa bez znaku i bez wiod¹cego zera z u¿yciem ma³ych liter dla wzorca 0x i du¿ych dla 0X liczba dziesiêtna bez znaku pojedynczy znak po przekszta³ceniu do typu unsigned char tekst wypisywany do napotkania znaku koñca ³añcucha /0 lub osi¹gniêcia zadanej precyzji liczba dziesiêtna ze znakiem w postaci [-]xxx.yyy, gdzie liczba cyfr po kropce (yyy) okrelona jest przez precyzjê liczba dziesiêtna ze znakiem w tzw. notacji in¿ynierskiej (na przyk³ad 3.45234e-10); podobnie jak wy¿ej, liczba cyfr po kropce okrelana jest przez precyzjê jeli wyk³adnik potêgi jest mniejszy od -4 lub >= precyzji, to przyjmuje siê specyfikacjê identyczn¹ z wzorcem e (E); inaczej stosowana jest specyfikacja f wskanik reprezentacja zale¿y od konkretnej implementacji liczbê znaków wypisanych w TYM wywo³aniu printf zapisuje siê do odpowiedniego argumentu; nie s¹ wykonywane ¿adne przekszta³cenia nie ma przekszta³cenia (%%); zostanie wypisany znak % ki lub odwrotnie. W†tym odcinku kursu szczegÛln¹ uwagÍ poúwiÍcimy funkcji printf() daj¹cej programiúcie nie tylko szereg moøliwoúci wykorzystania, lecz rÛwnieø pozwalaj¹cej na redukcjÍ czasu koniecznego do stworzenia aplikacji. Wyjúciowa funkcja printf() t³umaczy wewnÍtrzne wartoúci na znaki. Jednym s³owem - bajty danych zamieniane s¹ na postaÊ zrozumia³¹ przez cz³owieka: int printf(char *wzorzec, argument_1, argument_2... ) Przekszta³cenie odbywa siÍ wed³ug i†pod nadzorem wzorca zapisanego we ìwzorzecî. Funkcja przekszta³ca, formatuje i†wypisuje swoje argumenty do standardowego wyjúcia. Jak wspomnia³em wczeúniej, w†przypadku mikrokontrolera 8051 jest to interfejs UART. Wzorzec zawiera obiekty dwojakiego rodzaju: zwyk³e znaki, ktÛre s¹ przesy³ane do wyjúcia oraz specyfikacje przekszta³ceÒ. Kaøda z†nich wskazuje na sposÛb, w†jaki zostanie przekszta³cony i†wypisany dany argument. SpecyfikacjÍ przekszta³cenia rozpoczyna znak %, a†koÒczy znak dla niego charakterystyczny. MiÍdzy znakiem % i†znakiem przekszta³cenia mog¹ - wed³ug nastÍpuj¹cej kolejnoúci - wyst¹piÊ: - znak ì-î (minus) polecaj¹cy dosuniÍcie przekszta³conego argumentu do lewego kraÒca jego pola, - liczba okreúlaj¹ca rozmiar pola (argument zostanie wypisany w†postaci o†rozmiarze co najmniej pola, a†jeúli bÍdzie taka potrzeba, zostanie uzupe³niony znakami odstÍpu z†prawej lub lewej strony w†zaleønoúci od ø¹dania dosuniÍcia znakÛw w†lewo), - znak ì.î (kropka) oddzielaj¹cy rozmiar pola argumentu od jego precyzji, - liczba okreúlaj¹ca precyzjÍ, to jest Elektronika Praktyczna 6/2003 K U R S List. 1. Przykłady użycia funkcji printf() const char* TEKST = „Tekst przykladowy”; printf(“:%s:”,TEKST); :Tekst przykladowy: printf(“:%10s:”,TEKST); :Tekst przykladowy: printf(“:%.10s:”,TEKST); :Tekst przy: printf(“:%25.s:”,TEKST); : Tekst przykladowy: printf(“:%-25.s:”,TEKST); :Tekst przykladowy : printf(“:%025.10s:”,TEKST); :Tekst przy : int X = 123; printf(“%s %04X %s”, “123 Dec. =”, X, “Hex”); printf(“%s %o %s”, “123 Dec. =”, X, “Oct”); maksymaln¹ liczbÍ znakÛw dla tekstu, liczbÍ cyfr po kropce dziesiÍtnej dla liczb zmiennopozycyjnych, minimaln¹ liczbÍ cyfr dla wartoúci ca³kowitych, - litera ìhî, jeúli argument ca³kowity naleøy wyprowadziÊ w†postaci short, lub ìlî (litera ìlî) jeúli argument naleøy wyprowadziÊ jako long. W†tab. 1 zestawiono podstawowe znaki przekszta³cenia dla funkcji printf(). SzerokoúÊ pola lub precyzjÍ moøna w†specyfikacji zast¹piÊ znakiem ì*î (gwiazdki), co oznacza, øe ø¹dany argument naleøy wyprowadziÊ i†przekszta³ciÊ, korzystaj¹c z†kolejnego argumentu funkcji (uwaga musi on byÊ typu int!). Na przyk³ad, wypisanie co najwyøej max znakÛw z†S wygl¹da nastÍpuj¹co: printf(ì%.*sî, max, S); Stosuj¹c funkcjÍ printf(), naleøy pamiÍtaÊ, øe wykorzystuje ona swÛj pierwszy argument do okreúlenia typu, rozmiarÛw i†liczby pozosta³ych argumentÛw. Jeúli programista poda z³y wzorzec przekszta³ceÒ, to mimo opisywanej wczeúniej filozofii jÍzyka C (zaufaj programiúcie, on wie co robi), funkcja bÍdzie ìzdezorientowanaî i†na wyjúciu wyprowadzone zostan¹ b³Ídne rezultaty jej pracy. Programista powinien mieÊ úwiadomoúÊ, øe efekt wywo³aÒ funkcji printf() w†postaci printf(s) oraz printf(ì%sî,s) moøe byÊ zupe³nie odmienList. 2. Przykład programu zmieniającego definicję funkcji putchar() // // // // // // // // zamiana funkcji putchar() oryginalnie funkcja PUTCHAR wykorzystuje tylko rejestr R7 i akumulator jesli ponizsza uzywa czegos wiecej - moze nie funkcjonowac nalezy uwaznie przygladac sie rejestrom #include <reg51.h> #include <stdio.h> #include <lcd4b.h> // zmiana definicji putchar(), // metoda 1, mniej bezpieczna int putchar (const int c) { LcdWrite(c); return (0); } void main (void) { int x = 241; // inicjalizacja LCD w trybie 4 bity LcdInitialize(); LcdClrScr(); // zamiana liczby x na wartosc // szesnastkowa printf(„%d %s %02x %s”, x, „dec =”, x, „hex”); // koniec programu while (1); } Elektronika Praktyczna 6/2003 123 Dec. = 007B Hex 123 Dec. = 173 Oct ny, aczkolwiek kompilator jÍzyka C dopuszcza stosowanie jednej i†drugiej postaci. Jeúli jednak nie podamy wzorca wyprowadzanego ³aÒcucha, to moøe siÍ okazaÊ, øe gdy w†zmiennej s wyst¹pi¹ znaki specjalne (%, *), ³aÒcuch, ktÛry zamierzamy wyprowadziÊ, zostanie potraktowany jako wzorzec. Na koniec tej krÛtkiej prezentacji warto rÛwnieø wspomnieÊ o†funkcji sprintf(), bÍd¹cej odmian¹ printf(), lecz z†t¹ rÛønic¹, øe nie wyprowadza ona danych, tylko zapisuje je w†pamiÍci. Dla praktykÛw - obs³uga wyúwietlacza LCD z†wykorzystaniem funkcji printf() Teraz dotarliúmy wreszcie do meritum tego artyku³u. Oczywiúcie, chcia³em w†krÛtki sposÛb zaprezentowaÊ funkcje STDIO.H, jednak celem tego artyku³u jest nie tyle ich prezentacja, ile wyt³umaczenie metody, dziÍki ktÛrej moøna zaprz¹c je do pracy. Z†doúwiadczenia wiem, øe 80% tworzonych przeze mnie aplikacji nie korzysta z†interfejsu UART i†nic nie stoi na przeszkodzie w†wykorzystaniu STDIO.H dla innych potrzeb. Funkcja printf() jest zaimplementowana od szczegÛ³u do ogÛ³u. Co to oznacza? U†podstaw jej dzia³ania leøy funkcja putchar() wysy³aj¹ca pojedynczy znak przez UART. Funkcja printf() nie wie, gdzie i†za pomoc¹ jakiego interfejsu wyprowadzane s¹ dane. Zajmuje siÍ tym putchar() i†to j¹ w³aúnie naleøy zmieniÊ, aby znaki wysy³ane by³y nie przez UART, ale na przyk³ad na wyúwietlacz LCD. Oczywiúcie, o†ile UART i†jego obs³uga s¹ pewnym standardem w†obrÍbie rodziny mikrokontrolerÛw 8051, o†tyle implementacja obs³ugi wyúwietlacza zaleøy od konkretnego úrodowiska, w†ktÛrym pracuje mikrokontroler. W†przyk³adzie programu pokazanym na list. 2 dokona³em zmiany definicji putchar() w†taki sposÛb, øe znaki wysy³ane s¹ na wyúwietlacz LCD, a†nie przez UART. Wykorzysta³em tu bibliotekÍ funkcji obs³ugi LCD z†jednego z†poprzednich odcinkÛw kursu. Jak widaÊ na podstawie przyk³adu programu, redefinicja putchar() nie jest zbyt trudna do wykonania. Nag³Ûwek funkcji musi byÊ zgodny ze zdefiniowanym wczeúniej przez producenta pakietu. Moøna zobaczyÊ jego poø¹dany wygl¹d, otwieraj¹c w³aúciwy zbiÛr nag³Ûwkowy o†rozszerzeniu ìHî (np. STDIO.H). Cia³o moøe byÊ zestawem dowolnych instrukcji. Tworz¹c redefinicje, naleøy zwrÛciÊ szczegÛln¹ uwagÍ na to, jakie rejestry bÍd¹ modyfikowane przez now¹ funkcjÍ. Zgodnie z†dokumentacj¹ producenta (a do niej naleøy kaødorazowo odwo³ywaÊ siÍ tworz¹c redefinicjÍ) funkcja printf() spodziewa siÍ, øe putchar() modyfikuje wy³¹cznie zawartoúÊ rejestrÛw UART, R7 i†ACC mikrokontrolera oraz przydzielonego na zmienne obszaru pamiÍci. Jeúli nowo napisana funkcja zmienia zawartoúÊ rÛwnieø innych rejestrÛw, musi byÊ zastosowana inna metoda redefinicji, zaprezentowana w†przyk³adzie na list. 3. Przed uøyciem putchar_c() wewn¹trz putchar(), wszystkie øywotne rejestry mikrokontrolera s¹ zapamiÍtywane na stosie i†odtwarzane po powrocie z†wywo³ania funkcji. Na listingu pokazano rÛwnieø fragment kodu w†asemblerze 8051 wykonywany podczas wywo³ania putchar(). List. 3. Bezpieczna redefinicja putchar() oraz odpowiadający jej listing programu po kompilacji − zauważyć można, że wszystkie ważne rejestry zapamiętywane są na stosie przed wywołaniem putchar (PUSH) i odtwarzane po powrocie (POP) #include <reg51.h> #include <stdio.h> #include <lcd4b.h> // zamiana funkcji putchar(), // metoda 2, bezpieczna void putchar_c (const int c) reentrant { LcdWrite(c); } int putchar (const int c) { putchar_c(c); return(0); } void main (void) { int x = 134; // inicjalizacja LCD w trybie 4 bity LcdInitialize(); LcdClrScr(); // zamiana liczby x na wartosc // szesnastkowa printf(„%d %s %02x %s”,x,”dec.to”, x,”hex”); //koniec programu while (1); } ; FUNCTION _putchar (BEGIN) ; SOURCE LINE # 15 0000 C0F0 PUSH B 0002 C083 PUSH DPH 0004 C082 PUSH DPL 0006 C0D0 PUSH PSW 0008 C000 PUSH AR0 000A C001 PUSH AR1 000C C002 PUSH AR2 000E C003 PUSH AR3 0010 C004 PUSH AR4 0012 C005 PUSH AR5 0014 C006 PUSH AR6 ; Register R4R5 is ; assigned to parameter c 0016 120000 R LCALL ?putchar_c 0019 D006 POP AR6 001B D005 POP AR5 001D D004 POP AR4 001F D003 POP AR3 0021 D002 POP AR2 0023 D001 POP AR1 0025 D000 POP AR0 0027 D0D0 POP PSW 0029 D082 POP DPL 002B D083 POP DPH 002D D0F0 POP B 002F 22 RET 87 K U R S S³owo kluczowe reentrant jÍzyka RC-51 informuje kompilator o†tym, øe funkcja moøe byÊ wywo³ywana przez wiele procesÛw jednoczeúnie. Inny przyk³ad redefinicji putchar (tu wykorzystano rÛwnieø metodÍ mniej bezpieczn¹) pokazano na list. 4. Oryginalnie (i zgodnie ze specyfikacj¹ standardu ANSI C) putchar wysy³a po kaødym argumencie o†wartoúci 0x0A znak o†kodzie 0x0D. Tworz¹ one w†sumie sekwencjÍ sk³adaj¹c¹ siÍ na znak nowej linii (powrÛt karetki - CR=0x0D oraz znak nowej linii - LF=0x0A). W†niektÛrych aplikacjach 88 jest to jednak cecha niepoø¹dana, a†wrÍcz przeszkadzaj¹ca. Nowa definicja funkcji putchar nie posiada juø tej w³aúciwoúci. Przedstawione tu przyk³ady tworzenia w³asnych funkcji zamieniaj¹cych oryginalne definicje to wierzcho³ek gÛry. Istnieje bowiem ca³y szereg rÛønych moøliwoúci pocz¹wszy od bibliotek obs³ugi standardowego wejúcia - wyjúcia aø po bibliotekÍ MATH (operacje matematyczne na liczbach zmiennopozycyjnych). Wszystko zaleøy od inwencji programisty i†od faktycznych potrzeb aplikacji. Wykorzystuj¹c biblioteki, naleøy jednak pamiÍtaÊ o†tym, øe oferuj¹ List. 4. Przykład własnej definicji putchar() //nowa definicja funkcji putchar //wysylajaca dane przez UART int putchar (const int c) { SBUF = c; TI = 0; while (!TI); } one szereg rÛønych moøliwoúci kosztem zajÍtej pamiÍci programu mikrokontrolera. Jacek Bogusz, AVT [email protected] Elektronika Praktyczna 6/2003 K U R S Sterowanie graficznych wyświetlaczy z telefonów komórkowych firmy Nokia, część 2 W†drugiej czÍúci artyku³u przedstawiamy protokÛ³ komunikacyjny sterownika PCD8544, polecenia nim steruj¹ce oraz napisan¹ w†asemblerze procedurÍ inicjuj¹c¹ sterownik po w³¹czeniu zasilania. ProtokÛ³ transmisji Komendy steruj¹ce Kontroler moøe interpretowaÊ wysy³ane do niego informacje na dwa sposoby. Jeúli linia D/C jest w†stanie wysokim, to przyjmowane dane s¹ wpisywane do pamiÍci RAM kontrolera. Jeúli linia D/C jest w†stanie niskim, to wys³any bajt interpretowany jest jako komenda steruj¹ca. Kolejne bajty danych wysy³ane s¹ do wyúwietlacza poprzez liniÍ SDIN w†takt sygna³u zegarowego podanego na liniÍ SCLK (rys. 8). PoszczegÛlne bity wysy³ane s¹ w†kolejnoúci od najstarszego do najm³odszego. Stan linii SDIN jest sprawdzany podczas narastaj¹cego zbocza sygna³u SCLK, a†stan linii D/C jest sprawdzany podczas odbioru ostatniego bitu naleø¹cego do jednego bajtu danych. Jeúli linia SCE jest w†stanie wysokim, to wyúwietlacz ignoruje wszelkie dane pojawiaj¹ce siÍ na wejúciu SDIN, a†interfejs szeregowy kontrolera pozostaje w†trybie obniøonego poboru mocy. Opadaj¹ce zbocze na linii SCE inicjuje pracÍ interfejsu wejúciowego i†jest zarazem wyznacznikiem pocz¹tku transmisji bloku danych. W†jednym bloku mog¹ byÊ transmitowane zarÛwno komendy, jak i†dane, w†dowolnej kolejnoúci (rys. 9). W†tab. 4 pokazano pe³ny zestaw komend steruj¹cych prac¹ wyúwietlacza opartego na kontrolerze PCD8544. Istniej¹ dwa zestawy komend: standardowy i†rozszerzony. Aby skorzystaÊ z†rozszerzonego zestawu komend, naleøy najpierw wys³aÊ do wyúwietlacza komendÍ Function set z†ustawionym bitem H†czyli DB0, a†nastÍpnie wys³aÊ dowoln¹ iloúÊ komend trybu rozszerzonego. Øeby powrÛciÊ do standardowego zestawu, naleøy wys³aÊ komendÍ Function set, lecz z†wyzerowanym bitem H. Zapis danych do pamiÍci RAM wyúwietlacza (D/C = 1) jest moøliwy zawsze, niezaleønie od wybranego zestawu komend. NiektÛre wersje wyúwietlaczy (np. LPH-7779 ze stykami w†postaci z³oconych padÛw, a†nie sprÍøystych blaszek) wykorzystuj¹ jako kontroler uk³ady firmy Seiko-Epson, ktÛre s¹ bardzo zbliøone do kontrolerÛw Rys. 8. Sposób transmisji do wyświetlacza jednego bajtu danych PCD8544. WiÍkszoúÊ komend steruj¹cych jest identyczna, lecz niektÛre komendy nie dzia³aj¹ na kontrolerach Epsona. Przyk³adem jest tryb negatywowy lub brak moøliwoúci regulacji kontrastu wyúwietlacze z†kontrolerami Epsona maj¹ optymalnie ustawiony kontrast w†fazie ich produkcji. Ustawienie kontrastu i†kompensacji temperaturowej Aby treúÊ wyúwietlana na matrycy LCD by³a widoczna, naleøy ustawiÊ odpowiedni¹ wartoúÊ napiÍcia zasilaj¹cego matrycÍ, co jest rÛwnoznaczne z†ustawieniem optymalnego kontrastu wyúwietlacza. Prze- widziano do tego komendÍ Set Vop dostÍpn¹ w†rozszerzonym zestawie komend. Teoretycznie moøna wybraÊ jedn¹ ze 128 moøliwych wartoúci, lecz praktycznie uøyteczny zakres regulacji kontrastu wynosi od 32 do 88, czyli heksadecymalnie od 0x20 do 0x58. Naleøy pamiÍtaÊ, øe komenda Set Vop ma ustawiony bit DB7, wiÍc do podanych wartoúci naleøy przed wys³aniem do wyúwietlacza dodaÊ 128 oraz wczeúniej prze³¹czyÊ siÍ na rozszerzony zestaw komend. Nie naleøy rÛwnieø przekraczaÊ podanego gÛrnego zakre- Rys. 9. W ten sposób można wysłać do kontrolera wyświetlacza kilka bajtów danych Elektronika Praktyczna 6/2003 83 K U R S Tab. 4. Wykaz poleceń sterujących pracą kontrolera PCD8544 Instrukcja D/C Bajt komendy Opis DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 H = 0 lub 1 - oba zestawy komend NOP 0 0 0 0 0 0 0 0 0 Brak akcji Function set 0 0 0 1 0 0 PD V H Kontrola trybu Power Down Tryb adresowania (V) Rozszerzone komendy (H) Write data 1 D7 D6 D5 D4 D3 D2 D1 D0 Zapis danych do pamiêci RAM H = 0 - podstawowy zestaw komend Zarezerwowana 0 0 0 0 0 0 1 X X Nie u¿ywaæ Display Control 0 0 0 0 0 1 D 0 E Konfiguracja wywietlacza Zarezerwowana 0 0 0 0 1 X X X X Nie u¿ywaæ Set Y address 0 0 1 0 0 0 Y2 Y1 Y0 Ustawienie licznika wierszy (Y = 0...5) Set X address 0 1 X6 X5 X4 X3 X2 X1 X0 Ustawienie licznika kolumn (X = 0...83) H = 1 - rozszerzony zestaw komend Zarezerwowana 0 0 0 0 0 0 0 0 1 Nie u¿ywaæ Zarezerwowana 0 0 0 0 0 0 0 1 X Nie u¿ywaæ Temperature 0 0 0 0 0 0 1 TC1 TC0 Ustawienie wspó³czynnika control korekcji temperaturowej (Tc = 0...3) Zarezerwowana 0 0 0 0 0 1 X X X Nie u¿ywaæ Bias system 0 0 0 0 1 0 BS2 BS1 BS0 Ustawienie trybu multipleksowania Zarezerwowana 0 0 1 X X X X X X Nie u¿ywaæ Set Vop 0 1 Vop6 Vop5 Vop4 Vop3 Vop2 Vop1 Vop0 Ustawienie napiêcia zasilania matrycy, czyli kontrastu Legenda: X - bit nieistotny PD - 1 = tryb Power Down, 0 = kontroler aktywny V - 1 = adresowanie w trybie pionowym, 0 = adresowanie w trybie poziomym H - 1 = wybór rozszerzonego zestawu komend, 0 = wybór podstawowego zestawu komend D, E - 00 = wywietlacz wygaszony, 10 = tryb standardowy, 01 = test za³¹czaj¹cy wszystkie piksele, 11 = tryb negatywowy TC1, TC0 - Wartoæ korekcji temperaturowej - standardowa wartoæ 2 (ca³a komenda to 0x06) BS2...BS0 - Dla opisywanych wywietlaczy powinno byæ 3 (ca³a komenda to 0x13) Vop6...Vop0 - Standardowa wartoæ to 0x48 (ca³a komenda to 0xC8) su wartoúci, poniewaø przy niskich temperaturach otoczenia moøemy przekroczyÊ maksymalne napiÍcie zasilania matrycy i†uszkodziÊ matrycÍ lub kontroler - czyli ca³y wyúwietlacz. KoniecznoúÊ wprowadzenia dodatkowej automatycznej korekcji napiÍcia VLCD w†funkcji temperatury podyktowana jest zmienn¹ czu³oúci¹ ciek³ego kryszta³u w†zaleønoúci od temperatury oraz niezerowym wspÛ³czynnikiem temperaturowym samego uk³adu kontrolera. Uk³ad PCD8544 posiada moøliwoúÊ wyboru jednej z†4†predefiniowanych charakterystyk kompensacji o†nachyleniu charakterystyki od 1†mV/K do 24 mV/K. W†wiÍkszoúci zastosowaÒ wystarcza ustawienie trzeciej charakterystyki (17 mV/K) poprzez ustawienie bitÛw TC1 i†TC0 na 1,0, co wymaga wys³ania w†trybie komend rozszerzonych bajtu o†wartoúci 0x06. Oczywiúcie jeúli siÍ zdarzy, øe nasz wyúwietlacz bÍdzie wykazywa³ tendencje do zmiany kontrastu spowodowanej zmianami temperatury otoczenia, moøemy sprÛbowaÊ zminimalizowaÊ ten efekt poprzez ustawienie jednej z†3†pozosta³ych charakterystyk kompensacji. 84 Procedura inicjalizacji wyúwietlacza Bezpoúrednio po za³¹czeniu zasilania wyúwietlacza zawartoúÊ rejestrÛw wewnÍtrznych kontrolera oraz jego pamiÍci graficznej RAM jest nieokreúlona. Dlatego teø bardzo waøn¹ czynnoúci¹ jest doprowadzenie do wyúwietlacza prawid³owego sygna³u RESET w†czasie maksimum 30 ms po za³¹czeniu zasilania, o†poziomie niskim i†czasie jego trwania minimum 100 ns. Wed³ug materia³Ûw firmy Philips brak poprawnego zerowania moøe nawet doprowadziÊ do uszkodzenia wyúwietlacza. Po wyzerowaniu kontrolera znajduje siÍ on w†trybie Power Down, ma ustawione adresowanie poziome, wyúwietlacz jest wygaszony (D=E = 0), a†przetwornica generuj¹ca VLCD jest wy³¹czona. ZawartoúÊ pamiÍci RAM nie jest zerowana. Øeby poprawnie zainicjowaÊ wyúwietlacz, naleøy wykonaÊ nastÍpuj¹c¹ sekwencjÍ: - ustawiÊ linie SCE oraz D/C w†stan niski, - wys³aÊ bajt 0x21 - prze³¹czenie na komendy rozszerzone, - wys³aÊ bajt 0xC8 - ustawienie Vop, czyli kontrastu (moøe wymagaÊ zmiany wartoúci kontrastu), - wys³aÊ bajt 0x06 - ustawienie wspÛ³czynnika korekcji temperaturowej, - wys³aÊ bajt 0x13 - ustawienie wspÛ³czynnika multipleksowania 1:48, - wys³aÊ bajt 0x20 - prze³¹czenie na komendy standardowe, adresowanie poziome (0x22 dla adresowania pionowego), - wys³aÊ bajt 0x0C - Display Control tryb standardowy, - wys³aÊ bajt 0x40 - zerowanie licznika wierszy, - wys³aÊ bajt 0x80 - zerowanie licznika kolumn, - ustawiÊ linie D/C w†stan wysoki, List. 1. Procedura inicjująca interfejs SPI mikrokontrolera AVR oraz podłączony do niego wyświetlacz lcd_init: sbi sbi sbi call CS_PORT,CS_PIN CS_PORT-1,CS_PIN DC_PORT-1,DC_PIN SPI_init ;CS = H ;CS port jako wyjście ;C/D jako wyjście ;inicjalizacja interfejsu SPI cbi ldi rcall ldi rcall ldi rcall ldi rcall ldi rcall ldi rcall DC_PORT,DC_PIN r24,0x21 lcd_wr r24,0xC8 lcd_wr r24,0x06 lcd_wr r24,0x13 lcd_wr r24,0x20 lcd_wr r24,0x0C lcd_wr ;CD = L ;przełącz na rozszerzone komendy lcd_clrscr: cbi ldi rcall ldi rcall DC_PORT,DC_PIN r24,0x40 lcd_wr r24,0x80 lcd_wr sbi ldi LCD_CLEAR_1: clr rcall clr rcall DC_PORT,DC_PIN r21, 252 r24 lcd_wr r24 lcd_wr ;ustaw Vop (kontrast) ;ustaw współczynnik temperaturowy ;ustaw multipleks na 1:48 ;przełącz na standardowe komendy, ;oraz włącz adresowanie poziome ;włącz tryb standardowy ;zeruj licznik kolumn ;zeruj licznik wierszy ;504 bajty / 2 = 252 obroty pętli ;petla kasowania zawartości RAMu wyśw. ;wyślij bajt 0 do RAMu ;wyślij bajt 0 do RAMu Elektronika Praktyczna 6/2003 K U R S List. 1. − cd. SPI_init: lcd_wr: dec brne ret r21 LCD_CLEAR_1 sbi sbi cbi sbi ldi out in ret DDRB, PB5 ;ustawienie MOSI jako wyjście DDRB, PB4 ;SS musi być wyjściem dla trybu master PORTB, PB7 ;ustawienie SCK na L DDRB, PB7 ;ustawienie SCK jako wyjście r24,(1<<MSTR) | (1<<SPE); ;Tryb Master, fCPU/4 SPCR,r24 r24,SPSR ;czyść status SPI ;koniec inicjalizacji SPI cbi out SPI_SEND_0: sbis rjmp in sbi ret ;zmniejsz licznik ;koniec inicjalizacji CS_PORT,CS_PIN SPDR,r24 SPSR,SPIF SPI_SEND_0 r24,SPDR CS_PORT,CS_PIN Elektronika Praktyczna 6/2003 ;SCE = L ;załaduj bajt do rejestru danych SPI ;zaczekaj na wysłanie bajtu ;porzuć odebrany bajt ;SCE = H - wys³aÊ 504 bajty o†wartoúci 0x00, co spowoduje wyzerowanie pamiÍci RAM kontrolera, - zakoÒczyÊ inicjalizacjÍ poprzez ustawienie linii SCE w†stan wysoki. Oczywiúcie moøna rÛwnieø ustawiaÊ linie SCE w†stan niski przed wys³aniem kaødego jednego bajtu i†prze³¹czaÊ w†stan wysoki po jego wys³aniu, co zmniejsza moøliwoúÊ rozsynchronizowania siÍ transmisji, a†co za tym idzie zapisania b³Ídnych informacji do rejestrÛw kontrolera. Na list. 1 przedstawiono przyk³adow¹, napisan¹ w†asemblerze, sekwencjÍ inicjuj¹c¹ interfejs SPI mikrokontrolera AVR oraz pod³¹czony do niego wyúwietlacz. Romuald Bia³y 85 K U R S Podstawy projektowania systemów mikroprocesorowych, część 4 W†tej czÍúci kursu przedstawiamy sposoby statycznego sterowania diodami i†wyúwietlaczami LED za pomoc¹ portÛw mikrokontrolera. Zagadnienie niby doúÊ proste, ale - jak pokazuje praktyka - nie do koÒca poznane. Najbardziej rozpowszechnionym sposobem obrazowania pracy niewielkich systemÛw z†mikrokontrolerami jednouk³adowymi s¹ diody LED i†oparte na nich wyúwietlacze siedmiosegmentowe. Umoøliwiaj¹ one szybki, bezpoúredni odczyt parametrÛw pracy urz¹dzenia, a†ich zalet¹ jest czytelnoúÊ, nawet w†ca³kowitych ciemnoúciach. Jednym z†podstawowych parametrÛw charakteryzuj¹cych wyúwiet- st¹pienia emisji úwiat³a, dlatego podczas projektowania zespo³u wyúwietlacza trzeba uwzglÍdniÊ ten parametr i†porÛwnaÊ go z†maksymalnym pr¹dem obci¹øenia linii portu mikrokontrolera. Jeøeli obci¹øalnoúÊ pr¹dowa portu bÍdzie niewystarczaj¹ca, to naleøy zastosowaÊ uk³ady poúrednicz¹ce - tranzystory Urz¹dzenia wyjúciowe lub uk³ady scalone (drivery) o†odstatyczne sterowanie powiedniej wydajnoúci pr¹dowej. wyúwietlaczy i†diod LED Warto przypomnieÊ, øe w†wiÍkSystem mikroprocesorowy zaszoúci mikrokontrolerÛw bezpozwyczaj realizuje zadania, úrednie do³¹czenie diody w†wyniku ktÛrych otrzymyLED (wraz z†rezystorem Parametry zawsze z noty katalogowej wany jest jakiú wynik. Wyograniczaj¹cym pr¹d p³yn¹Podczas dobierania wartości rezystorów nik ten jest bezuøyteczny cy przez diodÍ) jest moøliograniczających prąd płynący przez tak d³ugo, dopÛki nie znajwe tylko w†konfiguracji, segment wyświetlacza lub diodę, należy dziemy sposobu aby przew†ktÛrej pr¹d wp³ywa do zawsze sprawdzać w notach katalogowych s³aÊ go na zewn¹trz syste- wartości parametrów takich jak: maksymal− portu mikrokontrolera (LED mu. Do realizacji tego zadaw³¹czony miÍdzy ì+î zasiny prąd wyjściowy portu i napięcie nia s³uø¹ w†systemach miklania a†liniÍ portu - rys. przewodzenia diody LED. Dobieranie roprocesorowych urz¹dzenia 15a). W†tym przypadku wartości rezystora ograniczającego prąd wyjúciowe. W†zaleønoúci od ustawienie stanu niskiego “na oko” nie jest zgodne ze sztuką formy w†jakiej ma byÊ Ûw na wyprowadzeniu powoduprojektowania i może doprowadzić do wynik przekazany, mog¹ to je zaúwiecenie siÍ diody. uszkodzenia elementów. byÊ rÛønego rodzaju wskaüRezystor ograniczaj¹cy pr¹d niki i†wyúwietlacze, uk³ady diody w†tym uk³adzie naletransmisji cyfrowej w†okreúlonym lacze LED (zarÛwno wyúwietlacze øy dobraÊ z†zaleønoúci: protokole, czy inne systemy przesiedmiosegmentowe jak i†pojedyncze Rogr = (5 - 0,5 - Uf)/If, gdzie: kazywania danych. diody) jest pr¹d konieczny do wyUf - napiÍcie przewodzenia diody (zaleøy od koloru úwiecenia), If - pr¹d przewodzenia diody, jego wartoúÊ maksymalna nie moøe przekraczaÊ 20 mA. Rys. 15. Różne sposoby sterowanie diod LED z wyjścia mikrokontrolera: najczęściej stosowany w mikrokontrolerach z rodziny '51 (a), możliwy do zastosowania w niektórych mikrokontrolerach '51 (b), niezalecany (c) Elektronika Praktyczna 6/2003 Rys. 16. Budowa typowego portu I/O w mikrokontrolerach '51 81 K U R S Rys. 17. Tranzystor NPN jako wzmacniacz prądowy do sterowania diodą LED Uk³ad w†ktÛrym dioda by³aby w³¹czona miÍdzy liniÍ portu a†masÍ jest nieprawid³owy - dioda nie bÍdzie siÍ úwieciÊ lub bÍdzie siÍ úwieciÊ bardzo s³abo z†powodu zbyt ma³ej obci¹øalnoúci portu w†stanie ì1î (rys. 15b). Moøna co prawda zrezygnowaÊ z†szeregowego rezystora ograniczaj¹cego wbudowanego wewn¹trz mikrokontrolera '51 (rys. 16) i†do³¹czyÊ do linii portu dodatkowy rezystor podci¹gaj¹cy o†podobnej rezystancji (rys. 15b). Jednak uk³ad ten nie jest stosowany ze wzglÍdu na duøy pobÛr pr¹du - w†chwili gdy dioda nie úwieci jest on wiÍkszy niø podczas jej úwiecenia! W†sytuacji, gdy wykorzystujemy liniÍ portu mikrokontrolera niezdoln¹ samodzielnie do prawid³owego wysterowania diody LED, naleøy zastosowaÊ uk³ad poúrednicz¹cy, zapewniaj¹cy odpowiedni¹ wydajnoúÊ pr¹dow¹. W†zaleønoúci od liczby do³¹czanych diod moøemy zastosowaÊ uk³ad z†tranzystorem (rys. 16) 82 lub wykorzystuj¹cy scalony driver, np. ULN2803A w†uk³adzie przedstawionym na rys. 18. Ten drugi wariant nadaje siÍ szczegÛlnie dobrze do sterowania diod o†duøej mocy (kilku...kilkunastu W), poniewaø wydajnoúÊ pr¹dowa driverÛw zintegrowanych w†uk³adzie ULN2803 jest wiÍksza niø wymagana przez klasyczne LED-y. OmÛwione powyøej sposoby sterowania wyúwietlaczy i†diod LED naleø¹ do grupy statycznych - úwiecenie lub nie do³¹czonej do uk³adu diody zaleøy tylko od stanu wyprowadzenia portu mikrokontrolera. Takie sterowanie powoduje, øe obs³uga programowa jest bardzo prosta. Wystarczy tylko wykorzystaÊ rozkazy ustawiania lub zerowania linii mikrokontrolera (SETB Px.y, CLR Px.y), a†w†przypadku wykorzystywania ca³ego portu mikrokontrolera do sterowania diodami LED do ich obs³ugi moøna wykorzystaÊ takøe rozkaz przes³ania bajtu danych do portu (MOV Px,#{wartoúÊ}). W†uk³adach mikroprocesorowych bardzo czÍsto zachodzi koniecznoúÊ pod³¹czenia wiÍkszej liczby wyúwietlaczy 7-segmentowych czy diod LED, niø pozwala na to liczba wyprowadzeÒ zastosowanego mikrokontrolera. Wyjúciem z†sytuacji s¹ uk³ady wyúwietlaczy dynamicznych (wyúwietlacze multipleksowane). Zasada ich dzia³ania polega na wspÛ³dzieleniu wyprowadzeÒ mikrokontrolera przez po³¹czone w†grupy diody LED (np. jedna grupa - jeden wyúwietlacz siedmiosegmentowy) i†do³¹czeniu dodatkowych uk³adÛw steruj¹cych zasilaniem poszczegÛlnych grup odpowiednio szybkie zapalanie i†gaszenie poszczegÛlnych grup (wraz z†wymuszeniem ø¹danych stanÛw úwiecenia) oraz bezw³adnoúÊ ludzkiego wzroku daje w†efekcie z³udzenie úwiecenia ca³ego wyúwietlacza. SzczegÛ³y takich rozwi¹zaÒ przedstawimy za miesi¹c. Pawe³ Hadam Rys. 18. Jeżeli mikrokontroler steruje większą ilością diod lub segmentów wyświetlaczy można pokusić się o zastosowanie scalonego drivera np. ULN2803 Elektronika Praktyczna 6/2003 P R O G R A M Y ìWynalazkiî Dallasa czÍsto stawa³y siÍ przebojami w†úwiecie elektroniki. Sw¹ popularnoúÊ zawdziÍczaj¹ niezwykle oryginalnym konstrukcjom i†³atwoúci stosowania w†najrozmaitszych aplikacjach. Jednym ze sztandarowych produktÛw obecnego Maxima-Dallasa s¹ czujniki temperatury DS1820, ktÛre - moøna powiedzieÊ - ustali³y standard pomiaru tej wielkoúci fizycznej. Od pewnego czasu zadziwia mnie niezwyk³e wrÍcz zainteresowanie pomiarami temperatury przejawiaj¹ce siÍ obfit¹ wymian¹ doúwiadczeÒ na w†uk³adzie Master dba o†porz¹dek dobrego programu nie jest sztuk¹ ³atinternetowych listach dyskusyjnych. w†tak stworzonej sieci. A†porz¹dek w¹, a†zrobienie tego za zupe³n¹ No tak, zbudowanie elektronicznego jak wiadomo musi byÊ. Uk³ad nadìdarmochÍî w†dzisiejszym skomercjatermometru w†dzisiejszych czasach to zorczy master po sprawdzeniu obeclizowanym úwiecie budzi w¹tpliwoúÊ: tyle, co usi¹úÊ, otworzyÊ szufladÍ, noúci w†sieci kolejno odpytuje czy z†autorem na pewno wszystko wyci¹gn¹Ê parÍ elementÛw, wykonaÊ wszystkie uk³ady Slave (kaødy do³¹jest w†porz¹dku? kilka po³¹czeÒ lutowanych i†w³aúciczony DS1820), wykorzystuj¹c wie gotowe. przydzielone im na etapie Jeszcze kilka lat temu co Interfejs do Lämpömittari produkcyjnym niepowtarzalne druga praca dyplomowa Opis budowy interfejsu do układów numery seryjne. DziÍki spew†szko³ach technicznych nosiDS18x20 przedstawiliśmy w kwietniowych cjalnemu protoko³owi Master ³a tytu³ ìTermometr elektroMiniprojektach. zawsze wie, ile uk³adÛw niczny z†wyúwietlaczem cyfz†nim wspÛ³pracuje i†zna ich rowymî. Wtedy jednak przedidentyfikatory. Uk³ady Slave odzywaOd czasu do czasu moøna na siÍwziÍcie takie faktycznie zas³ugij¹ siÍ tylko na wyraüne ø¹danie nadszczÍúcie natrafiÊ na taki przypadek. wa³o na tak powaøne traktowanie. zorcy. JednoprzewodowoúÊ sieci naNiew¹tpliwie jest nim Timo Sara-aho Naleøa³o przecieø zdobyÊ czujnik, rzuca w†sposÛb naturalny zastosowaautor úwietnego programu wykonaÊ wzmacniacz pomiarowy, nie szeregowego rodzaju transmisji. Lämpömittari, obs³uguj¹cego czujniki w†jakiú sposÛb przekszta³ciÊ analogoRozpoznawanie uk³adÛw oraz wysytemperatury DS1820. Program znakowe wskazania na postaÊ cyfrow¹, no ³anie poszczegÛlnych bitÛw danych micie wykorzystuje moøliwoúÊ ³¹czei†wreszcie wyúwietliÊ wyniki na wyodbywa siÍ poprzez tzw. szczeliny nia tych uk³adÛw w†sieÊ opart¹ na úwietlaczu cyfrowym. W†roli czujniczasowe (sloty). Bitowi o†wartoúci jednoprzewodowej magistrali 1-Wire. kÛw czÍsto wystÍpowa³y zwyk³e dioì0î odpowiada utrzymanie linii dy pÛ³przewodnikowe, ktÛre zachow†stanie niskim przez czas trwania wuj¹c doúÊ dobr¹ liniowoúÊ, by³y KrÛtko o†sieci 1-Wire slotu - 60 do 120 µs. Bit o†wartoúci ³atwo dostÍpne. Niestety taki uk³ad i†uk³adach DS1820 ì1î to krÛtkie, 1†µs zwarcie linii, po wymaga³ doúÊ k³opotliwej kalibracji, SieÊ 1-Wire zosta³a opracowana czym do koÒca slotu musi ona pozoa†z†zachowaniem dobrych parametprzez firmÍ Dallas Semiconductor staÊ w†stanie wysokim (rys. 1). BezrÛw w†czasie bywa³o rÛønie. CzÍúÊ w†czasach, gdy firma ta istnia³a jeszpieczeÒstwo wymiany danych jest zacyfrowa wykonywana w†technice cze samodzielnie. To, øe magistrala pewnione dziÍki kontroli CRC. ZastoTTL (nieúmiertelne 7490) powodojest jednoprzewodowa, nie oznacza sowany tu wielomian generuj¹cy ma wa³a, øe praktycznie odpada³a praca oczywiúcie, øe do do³¹czenia uk³apostaÊ x8+x5+x4+1. Dwukierunkoz†zasilaniem bateryjnym. dÛw do sieci, np. czujnikÛw DS1820, woúÊ sieci jest moøliwa dziÍki wyjJak jest dzisiaj? Dzisiaj bez trudu potrzebny bÍdzie tylko jeden przeúciom typu open-drain po obu stromoøna znaleüÊ na rynku gotowe wÛd. Aø tak dobrze niestety jeszcze nach po³¹czenia. Parametry interfejsu uk³ady, ktÛre wystarczy tylko do³¹nie jest. Oznacza natomiast, øe do 1-Wire pozwalaj¹ na budowÍ po³¹czyÊ np. do komputera za pomoc¹ obs³ugi wielu uk³adÛw wystarczy zaczeÒ o†d³ugoúci dochodz¹cej do 300 prostego interfejsu. Ca³¹ resztÍ wykoledwie np. jeden port mikrokontrolem. Ze szczegÛ³ami dotycz¹cymi zasad na odpowiedni program, a†te pisuj¹ ra albo komputera. Interfejs 1-Wire budowy i†wykorzystywania sieci 1przecieø juø niemal przedszkolaki. zapewnia przy tym dwukierunkow¹ Wire moøna zapoznaÊ siÍ w†nocie No dobrze, moøe trochÍ przejaskratransmisjÍ danych, odpowiednie zaú aplikacyjnej AN148, dostÍpnej pod wiam sprawÍ. Napisanie naprawdÍ oprogramowanie zaimplementowane Elektronika Praktyczna 6/2003 77 P R O G R A M Y chÍ w†Lämpömittari brakuje. Do dyspozycji mamy jedynie ikony. Na szczÍúcie po przytrzymaniu kursora na kaødej z†nich jest wyúwietlana s³owna podpowiedü t³umacz¹ca akcjÍ, jaka bÍdzie wykonana po klikniÍciu myszk¹. Z†drugiej strony trzeba przyznaÊ, øe zastosowane symbole graficzne s¹ bardzo sugestywne i†zrozumia³e. Jedn¹ z†waøniejszych cech programu jest rÛønorodny i†ciekawy sposÛb prezentowania wynikÛw. Skazani na wszechobecne aktualnie wyúwietlacze cyfrowe na pewno bÍdziemy zadowoleni z†moøliwoúci prezentowania wynikÛw na tradycyjnym wskaüniku analogowym. Jego wygl¹d moøemy ponadto zaprojektowaÊ w³asnorÍcznie. S³uøy do tego celu specjalny program narzÍdziowy Analog Configurator (rys. 2). Za jego pomoc¹ moøna utworzyÊ ca³kowicie dowolny wygl¹d tarczy miernika. PrzedstawioRys. 1. Zasada działania interfejsu 1−Wire na na rys. 2 zosta³a wykonana w†Corelu i†przekonwertowana do formatu.bmp. W†konfiguratorze deklaruje gl¹d okna g³Ûwnego, a†pracuj¹c adresem: http://pdfserv.maximz†nim d³uøej, moøna rÛwnieø doic.com/arpdf/AppNotes/app148.pdf. siÍ dopuszczalny k¹t obrotu wskastrzec kilka niedoci¹gniÍÊ. MoøliUk³ad DS18B20 umoøliwia standarzÛwki, punkt zaczepienia jej osi, d³uwoúci, jakimi dysponuje, mog¹ byÊ dowo dokonywanie pomiaru temperagoúÊ, gruboúÊ i†kolor. Podaje siÍ zajednak porÛwnywalne - jak mi siÍ tury z†9-bitow¹ rozdzielczoúci¹ w†zakres pomiarowy termometru. Zadewydaje - z†niejednym produktem kresie od -55 do +125oC, przy czym klarowane ustawienia moøna - przyprofesjonalnym. W†sk³ad programu dok³adnoúÊ ±0,5oC jest gwarantowana najmniej teoretycznie - zapisaÊ na wchodz¹ trzy modu³y: dysku, do ewentualnego pÛüniejszego dla zakresu -10 do +85oC. Wykorzys- edytor znakÛw wyúwietlanych na tanie specjalnych procedur pozwala wykorzystania. Niestety, podczas wirtualnym, matrycowym wskaünizwiÍkszyÊ rozdzielczoúÊ odczytu naprÛb sztuka ta nie uda³a mi siÍ. Proku alfanumerycznym, wet do 12 bitÛw (0,04oC - Uwaga! gram jest zreszt¹ pod tym wzglÍdem - Analog Configurator s³uø¹cy do Dok³adnoúÊ pozostaje bez zmian: trochÍ u³omny, gdyø operacje dyskoprojektowania w³asnych wskaüni±0,5oC), co moøe byÊ wykorzystywawe nie s¹ wspierane typowymi okkÛw analogowych, nami dialogowymi, w†ktÛrych w†spone tam, gdzie istotne s¹ wyniki - g³Ûwny modu³ akwizycji i†wizualisÛb przejrzysty i†wygodny moøna zowzglÍdne, np. przy pomiarach wilzacji danych pomiarowych. baczyÊ zawartoúÊ katalogu, a†w†razie gotnoúci metod¹ termometru suchego potrzeby nawet go zmieniÊ. Tu i†wilgotnego. Czas konwersji przydaj¹ siÍ umiejÍtnoúci z†zauk³adu nie jest niestety zbyt Jest taka strona... pomnianego juø pewnie przez krÛtki, wynosi ok. 750 ms. Najnowsze wersje oprogramowania są wiÍkszoúÊ uøytkownikÛw PCW†wewnÍtrznej pamiÍci niedostępne na stronie autora: tÛw DOS-a, gdzie wpisywa³o ulotnej moøna zachowywaÊ http://www.sunpoint.net/~thermometer/ siÍ mozolnie ca³¹ úcieøkÍ doustawienia dotycz¹ce alarmÛw stÍpu wraz z†nazw¹ pliku i†je(np. przekroczenie zadanej Po uruchomieniu modu³u g³Ûwnego rozszerzeniem. Program jest jedtemperatury). Jedn¹ z†ciekawszych go (pomiarowego) uwagÍ zwraca doúÊ nak windowsowy i†naleøa³oby wymacech tego uk³adu jest to, øe do pranietypowy pasek narzÍdziowy bez gaÊ od niego zachowania pewnych cy nie wymaga dodatkowych linii zatradycyjnego menu. T³o okna stanostandardÛw. Na zakoÒczenie projektosilaj¹cych, moøe byÊ zasilany bezpowi delikatna faktura, a†nie jak to wania wskaünika warto sprawdziÊ, jak úrednio z†linii interfejsu 1-Wire. zwykle bywa g³adka powierzchnia. bÍdzie on dzia³a³. W†tym celu w†polu Brak menu tekstowego jest doúÊ Test value naleøy podaÊ dowoln¹ Lämpömittari znaczy uci¹øliwy, gdyø wieloletnie doúwiadwartoúÊ temperatury, mieszcz¹c¹ siÍ termometr czenia z†rÛønymi programami spraw†zakresie pomiarowym i†po naciúniÍProgram Lämpömittari zbiera barwiaj¹, øe uøytkownik czuje siÍ bezciu klawisza o†takiej samej nazwie dzo pozytywne oceny od jego uøytpieczniej, gdy ma moøliwoúÊ wyboru Test value - obejrzeÊ, jak ustawi siÍ kownikÛw i†rzeczywiúcie, dysponuje poleceÒ w†taki w³aúnie sposÛb. MewskazÛwka. Klawisz Range pozwala sporymi moøliwoúciami i†bardzo atnu tekstowe pozwala ponadto na wyzaobserwowaÊ przemieszczenie wskarakcyjn¹ form¹ prezentacji wynikÛw. bÛr opcji poprzez naciúniÍcie klawizÛwki w†sposÛb ci¹g³y w†ca³ym zaPo pierwszym uruchomieniu moøe sza Alt z†wybran¹ liter¹, ktÛrego trokresie pomiarowym. nieco raziÊ ma³o profesjonalny wy- 78 Elektronika Praktyczna 6/2003 P R O G R A M Y pola powoduje utratÍ zdefiniowanych wczeúniej punktÛw. FazÍ projektowania koÒczy, jak to zwykle bywa w†takich przypadkach, zapisanie zestawu na dysku. Pomiary Rys. 2. Projektowanie własnego wskaźnika analogowego za pomo− cą programu Analog Configurator Drugi modu³ pomocniczy - FontEd - jak juø wiemy, s³uøy do projektowania w³asnych znakÛw wyúwietlanych pÛüniej na wirtualnym wyúwietlaczu LCD programu Lämpö− mittari. Tym razem zosta³ napisany przez Szweda o†czeskobrzmi¹cym nazwisku - Peter Czidlina. Nie jest to pierwszy przypadek, w†ktÛrym mamy do czynienia z†wielonarodowym zespo³em autorÛw. Jak dot¹d rezultaty by³y zawsze zadawalaj¹ce. Okno programu FontEd wygl¹da podobnie jak modu³u g³Ûwnego, przy czym dodano tradycyjne menu (rys. 3). PrzystÍpuj¹c do pracy, naleøy zadeklarowaÊ wielkoúÊ matrycy. Maksymalny rozmiar to 50 x†50, ale najczÍúciej bÍdziemy zapewne korzystaÊ z†typowego 5†x†7, przybliøaj¹cego nas do rzeczywistego wyúwietlacza. Wybieranie danego znaku do edycji polega na przewijaniu zestawu za pomoc¹ ekranowych klawiszy strza³ek, umieszczonych na pasku narzÍdziowym. Towarzyszy temu wyúwietlanie kolejnych znakÛw ASCII wraz z†ich kodami. Po wybraniu odpowiedniego moøna przyst¹piÊ do edycji. Projektowanie prowadzi siÍ przy duøym powiÍkszeniu. KlikniÍcie na wybrany piksel powoduje zmianÍ jego stanu (zapalenie lub zgaszenie). Efekt koÒcowy - w†naturalnych rozmiarach moøe byÊ natychmiast obserwowany w†specjalnym oknie podgl¹du - Character Preview. Znak moøe byÊ teø przesuwany zarÛwno w†pionie, jak i†w†poziomie w†obrÍbie pola roboczego. Trzeba jednak przy tym uwaøaÊ, gdyø wysuniÍcie go poza obrÍb tego Elektronika Praktyczna 6/2003 Czas najwyøszy zapoznaÊ siÍ z†podstawowym modu³em, za pomoc¹ ktÛrego bÍdziemy mierzyÊ temperaturÍ. W†trakcie instalacji, w†menu startowym jest umieszczany odpowiedni skrÛt u³atwiaj¹cy uruchomienie programu. Przed przyst¹pieniem do pomiarÛw naleøy prawid³owo skonfigurowaÊ program. Wczeúniej do portu szeregowego komputera powinny byÊ do³¹czone czujniki temperatury DS1820. Odpowiedni interfejs by³ przedstawiony w†numerze EP4/ 2003. Czujniki stanowi¹ sieÊ rozpoznawan¹ przez program jako DS9097E. NaciúniÍcie na ikonÍ Ustawienia powoduje otwarcie okna, w†ktÛrym wprowadza siÍ dane konfiguracyjne. S¹ to m.in.: definicje pocz¹tku i†koÒca nocy, okreúlenie histerezy, odstÍpu czasu pomiÍdzy pomiarami, katalogu roboczego i†jÍzyka. Tu mi³a niespodzianka, bo wúrÛd dostÍpnych wersji jÍzykowych jest teø polska. Po prawid³owym wyborze sieci i†podaniu portu, do ktÛrego do³¹czono czujniki, powinny byÊ one rozpoznane po numerach seryjnych. Ze wzglÍdÛw praktycznych warto nadaÊ im nazwy najlepiej kojarz¹ce siÍ z†miejscem umieszczenia. Dla kaødego czujnika indywidualnie moøna rÛwnieø podaÊ wartoúci temperatur alarmowych. Kaødorazowo po przekroczeniu zadanej wartoúci (z†uwzglÍdnieniem histerezy) wszczynany bÍdzie alarm, ktÛrym moøe byÊ dowolnie wybrany sygna³ düwiÍkowy w†formacie.wav. Ale to nie koniec alarm moøe spowodowaÊ takøe uruchomienie wybranego programu. Podobne reakcje moøe wywo³aÊ rÛwnieø wykrycie zmiany trendu temperatury. Program Lämpömittari potrafi wykorzystaÊ DS-y do granic moøliwoúci. W†zaleønoúci od potrzeb deklaruje siÍ ich rozdzielczoúÊ 9-, 10-, 11- lub 12-bitow¹. Zaskoczeniem, jak na b¹dü co b¹dü amatorski program, jest nawet uwzglÍdnienie parametrÛw kompensuj¹cych nieliniowoúÊ czujnikÛw. ZaleønoúÊ b³Ídu pomiaru temperatury jest dla czujnikÛw DS1820 zaleønoúci¹ kwadratow¹ o†doúÊ ³atwych do obliczenia parametrach. Wyznaczaj¹ one po³oøenie minimum funkcji b³Ídu oraz okreúlaj¹ kszta³t krzywej. SzczegÛ³y s¹ zawarte w†nocie AN208, ktÛr¹ moøna znaleüÊ na stronie internetowej Maxima-Dallasa. Wprowadzenie parametrÛw koryguj¹cych moøe 10-krotnie zmniejszyÊ b³¹d pomiarowy w†ca³ym zakresie. WszÍdzie tam, gdzie moøe to mieÊ znaczenie, warto je wiÍc wprowadziÊ. Jeúli natomiast nie zaleøy nam na takiej dok³adnoúci, moøna pozostawiÊ wartoúci zerowe. Musimy sobie zadaÊ pytanie, do czego w³aúciwie ma s³uøyÊ program Lämpömittari? Odpowiedü jest prosta: do monitorowania temperatury w†wielu punktach, nawet doúÊ znacznie oddalonych od siebie. W†rezultacie otrzymujemy wyniki podawane na kilka sposobÛw. Wybieramy formÍ, ktÛra bÍdzie najodpowiedniejsza w†konkretnym przypadku. Moøe to byÊ analogowy miernik wskazÛwkowy, matrycowy wyúwietlacz alfanumeryczny, wykres trendu obejmuj¹cy okreúlony okres pomiaru, wykres historii. Jedn¹ z†ciekawszych form wizualizacji pomiarÛw bÍdzie np. pod³oøenie fotografii monitorowanego pomieszczenia pod wirtualne wskaüniki umieszczone na ekranie w†odpowiednich miejscach. Taka metoda bardzo sugestywnie pokazuje rozk³ad temperatur w†obiekcie. PoszczegÛlne czujniki sieci mog¹ byÊ przydzielone do specjalnych grup. Dla nich definiuje siÍ np. grupowy wyúwietlacz alfanumeryczny pokazuj¹cy temperatury na zespolonym polu odczytowym. Takøe zbiorczy wykres bÍdzie úwietnie oddawa³ relacje pomiÍdzy poszczegÛlnymi punktami pomiarowymi. Dla szybkiego okreúlenia, w†jakim przedziale temperatur pracuj¹ Rys. 3. Okno robocze programu FontEd 79 P R O G R A M Y Rys. 4. Przykładowa sesja pomiarowa poszczegÛlne czujniki, ich wskazania mog¹ byÊ wyúwietlane trzema kolorami oznaczaj¹cymi temperaturÍ w†normie, temperaturÍ poniøej minimalnej lub powyøej maksymalnej. Ponadto na bieø¹co jest generowany raport, w†ktÛrym jest podawana informacja o†zmierzonych temperaturach ze wszystkich czujnikÛw, ich wartoúciach úrednich, wykrytych maksimach i†minimach. Odpowiedni log jest zapisywany w†formacie tekstowym na dysku. Dodatkow¹ atrakcj¹ mog¹ byÊ obrazki uøywanych wskaünikÛw, ktÛre s¹ rÛwnieø zapisywane w†zadanych interwa³ach czasowych na dysku. Przyk³adow¹ sesjÍ pomiarow¹ przedstawiono na rys. 4. Nie trzeba dodawaÊ, øe wyniki rejestracji jak w†wiÍkszoúci programÛw okienko- 80 wych s¹ ³atwe do bezpoúredniego wydrukowania, a†zapisane na dysku widoki poszczegÛlnych wskaünikÛw w†prosty sposÛb mog¹ byÊ umieszczane w†dokumentacji technicznej. Lepsze jest wrogiem dobrego Po zapoznaniu siÍ z†moøliwoúciami programu Lämpömittari trzeba wyraziÊ uznanie dla autora, ktÛry musia³ w³oøyÊ sporo wysi³ku w†jego przygotowanie. Na uwagÍ zas³uguje ciekawy pomys³ wykorzystania popularnych czujnikÛw temperatury i†bardzo atrakcyjna forma prezentacji wynikÛw pomiarowych. Autor nie spoczywa na laurach i†rozwija swoje dzie³o juø od trzech lat. Moøemy wiÍc mieÊ nadziejÍ, øe zaskoczy nas jeszcze niejednym. ChoÊ z†kaød¹ no- w¹ wersj¹ programu rosn¹ jego walory uøytkowe, to niestety jak to czÍsto w†takich przypadkach bywa, poprawiaj¹c jeden element, ³atwo zepsuÊ inny. Mam wraøenie, øe tak by³o w†przypadku najnowszej wersji 1.12.7. NajwiÍksze w¹tpliwoúci wzbudzaj¹ niemal wszystkie operacje dyskowe. Przyk³adowo zapisywanie zaprojektowanego wskaünika analogowego na dysku nie koÒczy siÍ bynajmniej utworzeniem jakiegokolwiek pliku. Nie jest przy tym wyúwietlany øaden komunikat. Najwyraüniej autor zapomnia³ wstawiÊ w†programie stosown¹ instrukcjÍ albo, co bardziej prawdopodobne, wstawi³ j¹, tylko pÛüniej usun¹³. Zauwaøy³em teø pewne problemy w†rozpoznawaniu sieci w†wersji 1.12.7. Jeúli czynnoúÊ ta by³a wykonana we wczeúniejszej wersji programu, to pÛüniej wersja najnowsza dzia³a³a juø bez zarzutu. Ponadto program zupe³nie nie chcia³ dzia³aÊ na komputerze z†systemem Windows 95, a†w†Windows Me zdarza³o siÍ, øe siÍ zawiesza³. Pozostaje wiÍc mieÊ tylko nadziejÍ, øe wszystkie niedoci¹gniÍcia zostan¹ dopracowane, co z†duøym prawdopodobieÒstwem nast¹pi. Przymykaj¹c oko na drobne niedoci¹gniÍcia Lämpömittari, naleøy uznaÊ ten program za bardzo udany. Po kilku godzinach testÛw zrozumia³em chyba, dlaczego ludzie siÍ tak pasjonuj¹ pomiarami temperatury. Trzeba jednak sprawiedliwie dodaÊ, øe wspÛ³twÛrc¹ sukcesu jest firma Dallas, ktÛra opracowa³a naprawdÍ rewelacyjny do takich zastosowaÒ uk³ad DS1820. Jaros³aw Doliñski, AVT [email protected] Elektronika Praktyczna 6/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. Regulator temperatury w akwarium Timer 555 ca³y czas zadziwia swoimi moøliwoúciami. W†artykule przedstawiono opis prostego regulatora temperatury, sk³adaj¹cego siÍ z†kilku ³atwo dostÍpnych i†tanich czÍúci. Moøe on byÊ z†powodzeniem stosowany np. do regulacji temperatury wody w†akwarium, sterowania wentylatorem czy nagrzewnic¹. Rekomendacje: ze wzglÍdu na prostotÍ wykonania i†duøe walory praktyczne wykonanie tego uk³adu polecamy szczegÛlnie pocz¹tkuj¹cym elektronikom, ktÛrzy chc¹ sobie lub znajomym nieco zautomatyzowaÊ akwarium. Rys. 1 Elektronika Praktyczna 6/2003 Schemat elektryczny uk³adu znajduje siÍ na rys. 1. Uk³ad NE555 pracuje jako komparator z†histerez¹. Wejúcie THRESHOLD do³¹czono do plusa zasilania poprzez rezystor R1. HisterezÍ uzyskujemy ³¹cz¹c rezystorem R2 wejúcie CONTROL VOLTAGE z†wejúciem DISCHARGE. Dodatkowo, aby przeciwdzia³aÊ wzbudzaniu siÍ uk³adu na wielkich czÍstotliwoúciach, pomiÍdzy wyprowadzenia 5 i†7 w³¹czono rezystor R3 i†kondensator C1 spe³niaj¹ce rolÍ filtru. Do wejúcia TRIGGER do³¹czono dzielnik napiÍcia z†termistorem pomiarowym. Cewka przekaünika PK1 jest sterowana bezpoúrednio z†wyjúcia uk³adu NE555. W†kierunku zaporowym rÛwnolegle z†przekaünikiem w³¹czono diodÍ zabezpieczaj¹c¹ wyjúcie przed przepiÍciami indukuj¹cymi siÍ w†cewce przekaünika. Potencjometr POT1 s³uøy do ustalenia zakresu regulacji, a†POT2 do ustawiania temperatury za³¹czenia. Termistor naleøy umieúciÊ w†miedzianej rurce o†przekroju zaleønym od úrednicy uøytego termistora i†d³ugoúci wed³ug w³asnego uznania. Jeden koniec rurki naleøy zlutowaÊ bardzo dok³adnie, tak aby nie przedostawa³a siÍ do úrodka woda. Do koÒcÛwek termistora przylutowujemy przewody i†naci¹gamy koszulki izolacyjne. Tak przygotowany termistor smarujemy past¹ silikonow¹ i†umieszczamy we wczeúniej przygotowanej rurce. Na koÒcÛwkÍ naci¹gamy koszulkÍ termokurczliw¹, ktÛr¹ ostroønie zgrzewamy palnikiem lub zapa³k¹. Tak przygotowany czujnik doúÊ dobrze zabezpiecza przed wilgoci¹ umieszczony w†úrodku termistor. Uk³ad zmontowano na jednostronnej p³ytce drukowanej, ktÛrej schemat montaøowy pokazano na rys. 2. Urz¹dzenie wraz z†transformatorem sieciowym najlepiej umieúciÊ w†obudowie plastikowej. Naleøy pamiÍtaÊ o†tym, øe przekaünik PK1 za³¹cza obwÛd bÍd¹cy pod napiÍciem 220 V, w†zwi¹zku z†tym zalecam zachowanie szczegÛlnej ostroønoúci. Zmontowany uk³ad po w³¹czeniu zasilania wymaga tylko przeprowadzenia skalowania, tak øeby by³a moøliwoúÊ regulacji w†zakresie od 20 do 30 stopni Celsjusza. årodek zakresu naleøy wyznaczyÊ doúwiadczalnie za pomoc¹ POT2. Krzysztof Górski, AVT [email protected] WYKAZ ELEMENTÓW Rezystory R1: 4,7kΩ R2: 390kΩ R3: 2,2kΩ R4: 20kΩ POT1, POT2: 5kΩ Termistor NTC: 10kΩ Kondensatory C1: 4,7nF C2: 1000µF/16V C3, C4: 100nF C5: 220µF/16V Półprzewodniki US1: NE555 US2: 7805 D1: 1N4148 M1: 1,5A Różne PK1: MH4−5V ARK 1x2 500V 2 szt. Włącznik sieciowy 1 szt. TR1 TS2/14 P³ytka drukowana jest dostÍpna w AVT - oznaczenie AVT-1367. Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/ czerwiec03.htm oraz na p³ycie CD-EP7/2003 w katalogu PCB. Rys. 2 71 M I N I P R O J E K T Y Krokowy sterownik silnika DC Prezentowany uk³ad s³uøy do sterowania prÍdkoúci¹ obrotow¹ silnika pr¹du sta³ego. Moc sterowanego silnika zaleøy od uøytych elementÛw wykonawczych oraz ürÛd³a zasilania. Uk³ad modelowy zosta³ dostosowany do sterowania silniczkami ma³ej mocy. Rekomendacje: doskona³y regulator do wszelkiego typu silnikÛw sta³opr¹dowych, ktÛry moøna wykorzystaÊ np. do regulacji obrotÛw wentylatora nagrzewnicy w†samochodzie lub jako regulator obrotÛw úmig³a wentylatora. Na rys. 1 przedstawiono schemat elektryczny regulatora. Urz¹dzenie sk³ada siÍ z†nastÍpuj¹cych blokÛw funkcjonalnych: generatora monostabilnego (s³uøy do likwidacji drgaÒ stykÛw P1), licznika dekadowego, generatora astabilnego oraz bloku wykonawczego. Dzia³anie uk³adu jest bardzo proste: kaøde naciúniÍcie przycisku P1 powoduje zmianÍ stanu na wyjúciach licznika IC2 i†w†konsekewncji zmianÍ czÍstotliwoúci pracy multiwibratora IC3, od ktÛrej zaleøy szybkoúÊ obrotowa do³¹czonego silnika. Licznik dekadowy IC2 zlicza impulsy pochodz¹ce z†timera IC1, ktÛre wystÍpuj¹ kaødorazowo po naciúniÍciu przycisku P1. W†szereg z†kaødym wyjúciem licznika w³¹czono rezystor (o dobieranych rezystancjach) oraz diodÍ, ktÛrej zadaniem jest wzajemne odseparowanie rezystorÛw. Przy zmianach stanÛw na wyjúciach licznika IC2, w†zaleønoúci od wartoúci ìaktywnegoî jednego z†rezystorÛw R9...R18, zmienia siÍ napiÍcie podawane na wy- WYKAZ ELEMENTÓW Rezystory R1: 220kΩ R2, R3: 10kΩ R4: 470kΩ R5: 56kΩ R6: 1kΩ R7: 330Ω R8: 120Ω R9...R18: dobrać (4,7kΩ...1MΩ) Kondensatory C1: 4,7µF/16V C2, C4: 10nF C3: 22µF/16V C5: 680nF Półprzewodniki IC1, IC3: NE555 IC2: CD4017 T1: BD136 T2: BD254 lub podobny D1...D10: 1N4148 D11, D12: 1N4007 Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/?pdf/czerwiec03.htm oraz na p³ycie CD-EP7/2003 w katalogu PCB. prowadzenie 7†uk³adu IC3. Uk³ad ten pracuje jako generator astabilny, na wyjúciu ktÛrego pojawia siÍ ci¹g impulsÛw steruj¹cych silnikiem. Blok wykonawczy z³oøony z†tranzystorÛw T1 i†T2 steruje prac¹ silnika. Uk³ad zasi- lany jest z†zewnÍtrznego ürÛd³a zasilania o†napiÍciu 12 VDC i†wydajnoúci pr¹dowej zaleønej od uøytego silnika. Sterownik zosta³ wykonany na jednostronnej p³ytce drukowanej, ktÛrej mozaikÍ Rys. 1 Rys. 2 72 przedstawiono na rys. 2. Niewielka liczba zastosowanych elementÛw powoduje, øe uk³ad jest tani w†wykonaniu, a†czas poúwiÍcony na montaø nie przekracza kilkunastu minut. Stosownie do potrzeb naleøy dobraÊ wartoúci rezystorÛw R9...R18 lub zastosowaÊ w†ich miejsce potencjometry i†rÍcznie dokonaÊ regulacji. Krzysztof Górski, AVT [email protected] Elektronika Praktyczna 6/2003 P R O G R A M Y część 5 W†tym odcinku koÒczymy prezentacjÍ zagadnieÒ zwi¹zanych z†trybem rozmieszczania elementÛw PrezentacjÍ oprzemy na jednym z†plikÛw przyk³adowych (rys. 7). Przyjmuj¹c, øe dokonaliúmy ustawieÒ dotycz¹cych wymaganego rastra, jaki chcemy stosowaÊ w†naszym projekcie oraz narzuciliúmy ø¹dane regu³y projektowe zwi¹zane z†rozmieszczeniem elementÛw (patrz poprzedni odcinek), moøemy przyst¹piÊ do rozmieszczania z³¹cz i†innych elementÛw, ktÛrych po³oøenie na p³ytce musi byÊ z†takich czy innych wzglÍdÛw úciúle okreúlone. Ten etap projektowania najlepiej wykonaÊ rÍcznie. Pozosta³e elementy moøemy rÛwnieø uk³adaÊ manualnie (na rÛøne sposoby, o†ktÛrych powiemy za chwilÍ), moøna takøe wykorzystaÊ do tego celu funkcjÍ autoplace. Najprostsz¹ metod¹ rÍcznego rozmieszczania elementÛw jest rozmieszczanie za pomoc¹ myszki. Kaødy element po wskazaniu go kursorem i†klikniÍciu lewym klawiszem myszy moøe zostaÊ przeniesiony przez projektanta w†ø¹dane miejsce na projektowanym druku. Poniewaø widoki obudÛw (footprints) mog¹ byÊ wspÛlne dla rÛønych elementÛw, warto w†tym wypadku w³¹czyÊ etykiety (labels), ktÛre pomog¹ nam jednoznacznie zidentyfikowaÊ dany komponent (wystarczy wybraÊ polecenie Labels z†menu View i†w†wywo³anym oknie View Labels zaznaczyÊ opcjÍ Ref Des). W†ten sposÛb moøemy rÛwnieø wyúwietlaÊ zestawy innych informacji zwi¹zanych z†kaødym z†elementÛw np.: nazwÍ obudowy, numeracjÍ wyprowadzeÒ itd. CzÍsto zdarza siÍ, øe obrys niektÛrych elementÛw - np. z³¹cza krawÍdziowego - wykracza poza przyjÍty obszar p³ytki, warto wiÍc przed Rys. 7. Przykładowy projekt wczytany do edytora Specctry Elektronika Praktyczna 6/2003 przyst¹pieniem do rozmieszczania specyficznych elementÛw wy³¹czyÊ funkcjÍ Checking kontroluj¹c¹ nasze posuniÍcia. Najdok³adniejsz¹ metod¹ rozmieszczania rÍcznego jest u³oøenie komponentu na podstawie zadanej lokalizacji X, Y. Funkcja ta jest szczegÛlnie wygodna, jeúli druk i†znajduj¹ce siÍ na nim specyficzne elementy typu gniazda, z³¹cza itp. musz¹ byÊ precyzyjnie dopasowane do istniej¹cej juø obudowy lub innej p³ytki stanowi¹cej jeden z†elementÛw tworzonego czy teø modernizowanego urz¹dzenia. Po rozmieszczeniu elementÛw, ktÛrych lokalizacja jest krytyczna dla dzia³ania uk³adu, warto je zablokowaÊ (lock), czyli zabezpieczyÊ przed przypadkowym przemieszczeniem podczas dalszych prac projektowych. BlokowaÊ w†ten sposÛb moøemy ca³e grupy elementÛw. Zablokowane elementy s¹ zaznaczane na rÛøowo (rys. 8). Jeøeli w†trakcie prac projektowych konieczne bÍdzie odblokowanie ktÛregoú z†komponentÛw, wystarczy klikn¹Ê w†ikonÍ Lock Component, a†nastÍpnie wskazaÊ ten element kursorem. Po rozmieszczeniu elementÛw krytycznych, edycji poddajemy zwykle elementy o†duøych gabarytach. Przypominamy, øe Specctra dzieli elementy na duøe (4 lub wiÍcej koÒcÛwek) i†ma³e (3 lub mniej koÒcÛwek). W†przypadku rozmieszczania rÍcznego procedura jest taka sama jak dla elementÛw krytycznych. Na tym etapie moøemy juø jednak skorzystaÊ z†funkcji autoplace. Dobieraj¹c odpowiednio ustawienia poszczegÛlnych parametrÛw tej funkcji, moøemy np.: RozmieúciÊ w†sposÛb automatyczny wszystkie ìduøeî elementy projektu lub tylko te, ktÛre wczeúniej zaznaczyliúmy (podúwietliliúmy). Ewentualnie stawiaj¹c znacznik wyboru przy #Most Highly Connected, moøemy ustaliÊ liczbÍ elementÛw, ktÛre poddane zostan¹ edycji. OkreúliÊ preferowane odstÍpy pomiÍdzy elementami (Placement Spacing), przy czym podane tu odstÍpy bÍd¹ zastosowane podczas rozmieszczania jedynie wtedy, jeúli s¹ wiÍksze od tych, ktÛre ustawiliúmy z†poziomu Rules>Pcb>Spacing. autoroutera Specctra. Poniewaø nic tak nie przemawia do wyobraüni jak konkretny przyk³ad, przedstawimy je na przyk³adzie prostej p³ytki drukowanej. NakazaÊ automatyczne wyrÛwnywanie wzajemnego po³oøenia elementÛw (Align Components). PozostawiÊ miejsce na tej stronie p³ytki na ktÛrej uk³adane s¹ elementy duøe dla powi¹zanych z†nimi elementÛw ma³ych (Small Components On Same Side). KontrolowaÊ podczas rozmieszczania wtÛrne po³¹czenia sygna³owe elementÛw (np. w†przypadku, jeúli dwa elementy duøe powi¹zane s¹ poprzez inny ma³y element, autorouter bÍdzie prÛbowa³ rozmieúciÊ je obok siebie nawet wtedy, gdy bezpoúrednio po³¹czone s¹ one tylko jedn¹ úcieøk¹ sygna³ow¹). UstaliÊ orientacjÍ elementÛw (poziom¹, pionow¹ lub specyfikowan¹ przez k¹t obrotu) osobno dla elementÛw przewlekanych oraz typu SMD niezaleønie dla kaødej ze stron p³ytki. Zatwierdzenie ustawieÒ dokonanych w†oknie Initplace Large Components za pomoc¹ przycisku OK skutkuje automatycznym rozmieszczeniem elementÛw duøych. Rozmieszczanie elementÛw ma³ych przy wykorzystaniu funkcji autoplace w†najprostszym przypadku odbywa siÍ na podobnej zasadzie. Jedn¹ z†funkcji przydatnych podczas rozmieszczania kondensatorÛw odsprzÍgaj¹cych (naleø¹cych do grupy elementÛw ma³ych) jest Small Comp Pattern. Funkcja ta umoøliwia ìnauczenieî autoroutera, w†jaki sposÛb Rys. 8. Po rozmieszczeniu położenia wybranych elementów można zablokować 69 P R O G R A M Y P R O G R A M Y Rys. 9. Wynikiem działania funkcji Align Components jest regularne rozmieszczenie elementów ma automatycznie rozmieúciÊ kondensatory w†odniesieniu do powi¹zanych z†nimi elementÛw duøych. Poniewaø zasada dzia³ania opisywanej funkcji polega na powieleniu regu³y/zasady rozmieszczania zastosowanej przez uøytkownika, pierwszym krokiem, jaki naleøy w†tym przypadku wykonaÊ, jest rÍczne umieszczenie jednego z†kondensatorÛw w†pobliøu powi¹zanego z†nim elementu duøego. Jeøeli automatyczna obrÛbka tworzonego druku pod k¹tem rozmieszczania elementÛw jest z†okreúlonych powodÛw niezadowalaj¹ca, zawsze moøemy dokonaÊ rÍcznych korekt. W†trybie rozmieszczania rÍcznego moøemy wesprzeÊ siÍ funkcj¹ Push Component, ktÛrej dzia³anie polega na odsuwaniu (przepychaniu) rozmieszczonych elementÛw, jeúli dla aktualnie uk³adanego brakuje miejsca. Inn¹ funkcj¹ u³atwiaj¹c¹ øycie projektantowi jest Align Components. Pozwala ona na automatyczne wyrÛwnywanie elementÛw wzglÍdem wybranego elementu odniesienia. Rezultat jej dzia³ania pokazano na rys. 9. Po rozmieszczeniu elementÛw warto dokonaÊ oceny gÍstoúci po³¹czeÒ wystÍpuj¹cych przy przyjÍtym rozk³adzie elementÛw. Analiza gÍstoúci po- 70 ³¹czeÒ dokonywana jest przez edytor automatycznie, a†wynik analizy prezentowany (w postaci bargrafu, polecenie Autoplace>Crossing Histogram) i/lub z†podzia³em p³ytki na cele (Autoplace>Density Analysis). Opisane funkcje Specctry zwi¹zane z†rozmieszczaniem elementÛw to tylko niektÛre z†funkcji dostÍpnych na tym etapie projektowania. Aplikacja udostÍpnia bowiem kilka ìbardziej zaawansowanychî opcji pozwalaj¹cych m.in. na: - okreúlenie priorytetÛw poszczegÛlnych úcieøek, a†w³aúciwie elementÛw, ktÛre s¹ z†nimi powi¹zane tak, øe w†toku rozmieszczania w†trybie auto elementy te traktowane bÍd¹ jako priorytetowe i†poddawane rozmieszczaniu w†pierwszej kolejnoúci, - okreúlenie powi¹zania elementu(-Ûw) ma³ego z†elementem duøym. Podczas automatycznego rozmieszczania elementÛw ma³ych elementy powi¹zane z†jednym z†duøych komponentÛw zostan¹ usytuowane w†jego najbliøszym otoczeniu, - automatyczne dopasowanie po³oøenia elementÛw juø rozmieszczonych w†celu zoptymalizowania projektowanego druku (Specctra udostÍpnia kilka funkcji optymalizuj¹cych rozmieszczenie), - okreúlenie w³aúciwoúci elementu lub grup elementÛw np.: ich typu, wymiarÛw (wysokoúci), parametrÛw termicznych. W³aúciwoúci te mog¹ byÊ pÛüniej wykorzystywane podczas autoplacementu tak, øe komponenty o†okreúlonej wysokoúci mog¹ byÊ na przyk³ad lokalizowane tylko i†wy³¹cznie w†wybranym miejscu p³ytki czy na jej wybranej stronie. RK Dodatkowe informacje Wiêcej informacji mo¿na uzyskaæ w firmie RKSystem, www.rk-system.com.pl. Elektronika Praktyczna 6/2003 S P R Z Ę T Sound Blaster Audigy 2 Platinum eX Jeszcze piÍÊ lat temu posiadanie w†domu pe³nowartoúciowego studia nagraniowego pozwalaj¹cego nagrywaÊ i†odtwarzaÊ düwiÍk dookÛlny pozostawa³o w†sferze marzeÒ. DziÍki najnowszej propozycji potentata na rynku muzycznych kart düwiÍkowych Nieco historii A†na pocz¹tku by³ Chaos. Zaraz po nim, w†komputerowych kartach düwiÍkowych pojawi³ siÍ SoundBlaster. I†tak juø zosta³o: SoundBlaster = Standard DüwiÍku w†komputerach PC. Istotnym zjawiskiem jest to, øe karty Sound Blaster od czasu pojawienia siÍ modelu AWE32, s¹ rÛwnieø najpopularniejszymi kartami düwiÍkowymi wúrÛd muzykÛw w†koÒcu osÛb o†znacznie wiÍkszych wymaganiach jakoúciowych, niø przeciÍtny uøytkownik PC. Fundamentalna w†tym zas³uga specjalistÛw z†firmy E-mu Systems -prekursorÛw nowoczesnych technologii düwiÍku cyfrowego, w†tym zaawansowanego samplingu. Wystarczy powiedzieÊ, øe stworzony przez zespÛ³ Dave a Rossum a chipset düwiÍkowy EMU8000 jest powszechnie wykorzystywany od prawie 10 lat! Stworzenie chipsetu EMU10K1 to kolejny duøy krok technologiczny w†historii düwiÍkowych uk³adÛw do komputerÛw PC. Seria kart Live! udostÍpniaj¹c jako pierwsza zaawansowane technologie tworzenia düwiÍku dookÛlnego oraz düwiÍku úrodowiskowego EAX z†32-bitowym, 5-kana³owym, 5-torowym multiprocesorem efektÛw sta³a siÍ liderem rynku. Jej nastÍpc¹ jest seria kart Audigy z†procesorem sygna³owym EMU10K2 o†dwukrotnie wiÍkszej mocy obliczeniowej niø poprzedni. Coraz wiÍkszego znaczenia nabieraj¹ standardy düwiÍku dookÛlnego, w†ktÛrym sygna³ jest rejestrowany i†replikowany z†rozdzielczoúci¹ 24-bitow¹ przy czÍstotliwoúci prÛbkowania 192 kHz. Producenci sprzÍtu audio wprowadzili normÍ techniczno-jakoúciow¹ THX Lucas Film, ktÛrej spe³nienie gwarantuje najwyøszej klasy düwiÍk dookÛlny dla DVD Audio. Sound Blaster Audigy2 Platinum jest pierwsz¹ kart¹, ktÛra spe³ni³a wysokie wymagania jakoúciowe i†otrzyma³a certyfikat THX. System düwiÍkowy Audigy 2 Platinum eX umoøliwia rÛwnieø nagrywanie düwiÍku w†6kana³owym (5.1) standardzie 24-bit/96 kHz. Przetworniki A/C i C/A Na kompletny system audio sk³ada siÍ karta PCI oraz zewnÍtrzny insterfejs audio/MIDI. Dlaczego zewnÍtrzny? WnÍtrze komputera to bardzo nieprzyjazne dla systemÛw düwiÍkowych úrodowisko - zak³Ûcenia powodowane s¹ przez pracuj¹ce dyski, pola elektromagnetyczne, zasilacze i†wentylatory. Wyprowadzenie na zewn¹trz PC najbardziej wraøliwych na zak³Ûcenia elementÛw - przetwornikÛw analogowo-cyfrowych - owocuje znakomitymi parametrami audio. SzczegÛlnie, øe w syste- 68 mie zastosowano najwyøszej klasy 24-bitowe przetworniki analogowo-cyfrowe i†cyfrowoanalogowe z 8-krotnym nadprÛbkowaniem (oversampling). do komputerÛw - firmy Creative Labs - problem ten zosta³ rozwi¹zany. Dekodery düwiÍku przestrzennego Niezwykle istotn¹ zalet¹ systemu düwiÍkowego Audigy 2 Platinum eX jest wyposaøenie we wspomagane sprzÍtowo algorytmy dekodowania düwiÍku cyfrowego standardÛw Dolby Digital (AC-3), Dolby Pro Logic i†Dolby Digital eX. Duøe moøliwoúci konfiguracji karty umoøliwiaj¹ skierowanie drog¹ cyfrow¹ zakodowanego sygna³u z†noúnika ürÛd³owego tak na z³¹cza optyczne, jak elektryczne. Oprogramowanie steruj¹ce Nawet najdoskonalszy technicznie düwiÍkowy system komputerowy jest tylko kawa³kiem ìøelastwaî bez odpowiedniego oprogramowania steruj¹cego. Poziom komplikacji i†z³oøonoúÊ konstrukcji takiej konstrukcji, jak Audigy 2 Platinum eX sprawia, øe nie wystarcz¹ jedynie proste sterowniki, by system operacyjny mÛg³ ìwidzieÊî kartÍ. NiezbÍdne jest zaawansowane oprogramowanie kontroluj¹ce pracÍ wszystkich podsystemÛw karty. A†jest czym zarz¹dzaÊ! Sound Blaster Audigy 2 Platinum eX to z³oøony system sk³adaj¹ cysiÍ m.in. z: - 24-bitowego, 6-kana³owego interfejsu wejúcia-wyjúcia z†przetwornikami analogowocyfrowymi i†cyfrowo-analogowymi o†duøej rozdzielczoúci, - procesor düwiÍku przestrzennego wraz z†dekoderem Dolby Digital pracuj¹cy w†trybie 5.1 (w domenie cyfrowej i†analogowej) oraz 6.1 (w domenie analogowej), - sprzÍtowo realizowany system düwiÍku úrodowiskowego EAX i†EAX Advanced HD, - modu³ zarz¹dzania wielokana³owym systemem g³oúnikowym CMSS 3D, - zaawansowane algorytmy skalowania czasowego plikÛw düwiÍkowych i†zmiany wysokoúci düwiÍku, - procesor renowacji düwiÍku z†takimi elementami, jak declicker (eliminator trzaskÛw p³yt winylowych) czy denoiser (eliminator szumu), - profesjonalny 64-g³osowy sprzÍtowy sampler oparty na technologii E-mu System z†moøliwoúci¹ wspÛ³pracy z†bogat¹ bibliotek¹ barw i†sampli standardu Sound-Font 2.1 z†opatentowan¹ przez Creative Labs technologi¹ 8-punktowej interpolacji düwiÍku, - programowy syntezator o†nieograniczonej polifonii. Sercem systemu zarz¹dzania düwiÍkiem úrodowiskowym jest konsola miksera, z†poziomu ktÛrego mamy dostÍp do wszelkich elementÛw konfiguracyjnych steruj¹cych systemem EAX Advanced HD i†konfiguracj¹ wielokana³owego systemu g³oúnikowego. Pod³¹czamy Cech¹ charakterystyczn¹ systemu düwiÍkowego kart Sound Blaster Audigy 2 Platinum eX jest duøa liczba z³¹czy audio. Na karcie PCI dostÍpne s¹ trzy z³¹cza stereofoniczne do pod³¹czenia analogowych zestawÛw g³oúnikowych düwiÍku dookÛlnego 5.1 wyposaøony w†24-bitowe przetworniki analogowo-cyfrowe. DostÍpne s¹ w³aúciwie wszelkie typy przy³¹czeÒ zarÛwno cyfrowych jak i†analogowych. Cyfrowe s¹ reprezentowane przez elektryczne wejúcie i†wyjúcie S/PDIF (cinch), optyczne wejúcie i†wyjúcie (TOS-Link) oraz wyjúciowe z³¹cze cyfrowe s³uø¹ce do pod³¹czenia cyfrowego zestawu g³oúnikowego düwiÍku dookÛlnego 5.1. Z³¹cza cyfrowe pracuj¹ niezaleønie od siebie, czyli moøna jednoczeúnie uøywaÊ pod³¹czeÒ elektrycznych, jak i†optycznych. Zastosowania muzyczne Potencja³ testowanej karty znacz¹co wykracza poza zastosowania domowe - producent przygotowa³ Audigy 2 Platinum eX rÛwnieø do tworzenia i†nagrywania muzyki. Wyposaøenie karty w†nowoczesne sterowniki ASIO 2†oferuj¹ce minimalne opÛünienie sygna³u na poziomie 2†ms (!) czyni z†niej idealne narzÍdzie dla muzyka pracuj¹cego na komputerze. Do karty jest do³¹czane bardzo wartoúciowe oprogramowanie muzyczne obejmuj¹ce wielokana³owy system rejestracji i†miksowania muzyki audio/MIDI (Steinberg Cubasis VST 4.0) z†do³¹czonymi wirtualnymi instrumentami VSTi i†procesorami efektÛw VST, zaawansowany edytor plikÛw düwiÍkowych (Steinberg WaveLab Lite), program miksuj¹cy dla DjÛw (NI Tractor2) oraz zaawansowany multi instrument FruityLoops 3. Najistotniejsze jednak w†tym wszystkim jest to, øe wszystkie te programy s¹ bardzo intuicyjne i†proste w†obs³udze. Z†takim ìuzbrojeniemî nietrudno pokusiÊ siÍ o†komponowanie. CL Elektronika Praktyczna 6/2003 R E K L A M A Przetwornice DC/DC o mocy 20 W do monta¿u SMD W ofercie firmy Traco Power pojawi³a siê nowa \ rodzina przetwornic DC/DC o mocy wyjœciowej 20 W - TES-20. Ich najwa¿niejsze cechy i w³aœciwoœci przedstawiamy w artykule. TES-20 to nowoczeœnie zaprojektowane i wykonane przetwornice DC/DC przystosowane do monta¿u powierzchniowego. S¹ to przetwornice nale¿¹ce do rodziny TESxx, której cech¹ charakterystyczn¹ jest przysto-sowanie do monta¿u powerzchniowego (fot. 1). Przetwornice TES-20 s¹ dostarczane w obudowach o wymiarach zbli¿onych do DIP18 (fot. 2), przy czym koñcówki wyprowadzeñ s¹ podgiête w taki sposób, ¿e „k³ad¹” siê na punktach lutowniczych. Na spodzie obudowy znajduj¹ siê dwa ko³eczki pozycjonuj¹ce, dziêki którym przetwornica po umieszczeniu na p³ytce (przed lutowaniem) nie zmienia swojego po³o¿enia. Ciê¿ar kompletnej przetwornicy wynosi 32 gramy. Przetwornice TES-20 charakteryzuj¹ siê du¿¹ sprawnoœci¹ energetyczn¹ (81...87 %, w zale¿noœci od modelu), mog¹ pracowaæ w szerokim zakresie temperatur: -25...+71oC (zw³aszcza, ¿e nie wymagaj¹ zewnêtrznego radiatora), a gwarantowane przez producenta napiêcie przebicia izolacji pomiêdzy wejœciem i wyjœciem wynosi 1,6 kV. Gwarantowany œredni czas bezawaryjnej pracy prezentowanych przetwornic wynosi 340000 godzin (ponad 38 lat), który uwiarygadnia 2-letnia gwarancja udzielana na wyrób przez producenta. Wszystkie oferowane wersje przetwornic TES-20 s¹ przystosowane do zasilania napiêciem 48 VDC, ale jest dopuszczalne zasilanie napiêciem z przedzia³u 36...75 VDC. Dostêpnych jest piêæ wariantów przetwornic o napiêciach wyjœciowych: 2, 3,3, 5, 12 i 15 V (najwy¿sz¹ sprawnoœæ energetyczn¹ osi¹gaj¹ przetwornice o napiêciach wyjœciowych 5, 12 i 15 V). Obwody wyjœciowe zabezpieczono za pomoc¹ bezpiecznika przeciwzwarciowego, który zapewnia bezpieczeñstwo obwodom elektronicznym podczas zwarcia trwaj¹cego nieskoñczenie d³ugo. Stabilnoœæ temperaturowa napiêcia wyjœciowego we wszystkich przetwornicach wynosi ok. ±0,02%/K, a stabilnoœæ w funkcji obci¹¿enia nie jest gorsza ni¿ ±1% przy zmianie pr¹du wyjœciowego od 0 do 100%. Wed³ug specyfikacji producenta, napiêcie têtnieñ wystêpuj¹cych na wyjœciu przetwornicy mo¿e osi¹gaæ wartoœæ 50 mVpp w przypadku wersji o napiêciach wyjœciowych 2 i 3,3 V i ok. 75 mVpp w przypadku przetwornic o wy¿szych napiêciach wyjœciowych. Dziêki wyposa¿eniu przetwornic w wejœcie zdalnego sterowania, mo¿na je w³¹czaæ i wy³¹czaæ przez podanie na nie napiêcia steruj¹cego o odpowiedniej wartoœci. W stanie „uœpienia” przetwornice pobieraj¹ pr¹d o maksymalnym natê¿eniu 16 mA (i ok. 35 mA podczas pracy bez obci¹¿enia). Standardowym wyposa¿eniem przetwornic TES-20 jest tak¿e wejœcie s³u¿¹ce do korekcji wartoœci napiêcia wyjœciowego. W tym celu niezbêdne jest do³¹czenie do przetwornicy zewnêtrznego potencjometru lub dwóch rezystorów o du¿ej dok³adnoœci i stabilnoœci temperaturowej. Fot. 2. Wygląd przetwornicy TES−20 Niezale¿nie od modelu, pracuj¹ one ze sta³¹ czêstotliwoœci¹ taktowania wynosz¹c¹ 300 kHz, a napiêcie wyjœciowe jest regulowane za pomoc¹ modulacji PWM. W przetwornice wbudowano filtry przeciwzak³óceniowe, dziêki którym spe³niaj¹ one ostre wymagania norm EN55022, Class A oraz FCC, Class A. Producent zadba³ tak¿e o bezpieczeñstwo ich u¿ytkowania, co zosta³o potwierdzone certyfikatami UL1950 i EN60950/IEC60950. Nowe przetwornice firmy Traco Power, ze wzglêdu na „przemys³ow¹” wartoœæ napiêcia zasilaj¹cego, s¹ przeznaczone przede wszystkim dla aplikacji telekomunikacyjnych i przemys³owych. Ich du¿a trwa³oœæ i niezawodnoœæ z pewnoœci¹ otworz¹ drogê tak¿e do szeregu innych wysublimowanych aplikacji. Dystrybutorem firmy Traco jest Amtek spol. s r.o., tel. (22) 874-02-34, [email protected], www.amtek.cz. Fot. 1. Wygląd przetwornic z rodziny TES−xx 66 Dodatkowe informacje techniczne s¹ dostêpne w Internecie pod adresem http://www.tracopower.com/products/tes20.htm. Elektronika Praktyczna 6/2003 P R O G R A M Y Przełom na rynku narzędzi EDA dla elektroników, część 4 W tej czÍúci artyku³u przedstawiamy zagadnienia dotycz¹ce bibliotek elementÛw w DXP oraz mechanizmy wykorzystywane przez Protela, ktÛre zapewniaj¹ synchronizacjÍ danych wykorzystywanych w†projekcie. To w³aúnie te mechanizmy dbaj¹ o†to, aby po³¹czenia na p³ytce drukowanej úciúle odpowiada³y schematowi. W†programach nVisage i†Protel DXP symbol schematowy jest ìcentrumî zawieraj¹cym kompletn¹ definicjÍ elementu. Podstawow¹ reprezentacj¹ elementu jest symbol graficzny, wykorzystywany do umieszczania na schemacie. Poza symbolem schematowym, uøytkownik moøe korzystaÊ takøe z†do³¹czanych do niego modeli, ktÛre opisuj¹ m.in. obudowÍ elementu, jego parametry elektryczne (wykorzystywane podczas symulacji) itp. nVisage obs³uguje kilka rodzajÛw modeli, w³¹czaj¹c w†to: footprint (uøywany na PCB), symulacyjny (uøywany podczas symulacji obwodu), VHDL, EDIF oraz model analizy sygna³owej. £¹cze do kaødego wymaganego pliku modelu jest dodane do elementu, b¹dü na poziomie biblioteki elementÛw lub bezpoúrednio na schemacie. Tak samo, jak informacje wizualne i†elektryczne s¹ reprezentowane przez symbol schematowy i†zwi¹zane z†nim pliki modeli, rÛwnieø wiele innych atrybutÛw lub parametrÛw moøe byÊ zawartych w†opisie elementu. Mog¹ to byÊ np. parametry elektryczne waøne dla projektu (jak moc lub tolerancja parametrÛw elementu), jak rÛwnieø informacje potrzebne przy produkcji (takie jak numer magazynowy lub numer referencyjny w†katalogu dostawcy). Do opisu elementu moøemy dodaÊ dowoln¹ liczbÍ parametrÛw, zarÛwno w†bibliotece, jak i bezpoúrednio na schemacie. Parametry mog¹ byÊ rÛwnieø powi¹zane z†baz¹ danych, obs³uguj¹c¹ przyk³adowo firmowy system magazynowy. W³aúciwoúci elementu, w³¹cznie z†modelami i†parametrami, dostÍpne s¹ z†poziomu okienka dialogowego Component Properties (rys. 1). Zintegrowane biblioteki elementÛw Zazwyczaj kaødy rodzaj modelu jest zdefiniowany w†osobnym pliku zawieraj¹cym opis modelu lub bibliotece, z†ktÛrych kaødy ma inny format. Potrzeba obs³ugi wielu zrÛønicowanych formatÛw modeli powoduje, øe nie s¹ one przechowywane w†symbolu schematu, tylko po³¹czone z†nim. DziÍki temu, jeden model moøe byÊ powi¹zany z†wieloma elementami - np. ten sam model symulacyjny wzmacniacza operacyjnego moøe dotyczyÊ wielu elementÛw rÛønych producentÛw, podobnie jak ten sam model obudowy (PCB footprint) moøe byÊ identyczny dla wielu elementÛw na schemacie. Takie podejúcie powoduje niedogodnoúÊ, polegaj¹c¹ na tym, øe musimy zarz¹dzaÊ wieloma plikami. W†bibliotece zawieraj¹cej duøo elementÛw, z†ktÛrych kaødy wykorzystuje wiele modeli, liczba plikÛw moøe byÊ ogromna. Aby rozwi¹zaÊ ten problem, úrodowisko DXP wspomaga tworzenie oraz obs³ugÍ tzw. zintegrowanych bibliotek elementÛw. Zintegrowana biblioteka elementÛw to kompletny i†przenoúny pakiet symbolÛw schematowych, obudÛw, modeli Spice, VHDL, EDIF i†modeli analizy sygna³owej. BibliotekÍ zintegrowan¹ budujemy, tworz¹c tzw. library package. Jest to specjalny typ projektu, ktÛry okreúla, jakie elementy wchodz¹ w†sk³ad biblioteki zintegrowanej. Po skompilowaniu tworzy pojedynczy, przenoúny plik biblioteki zintegrowanej (*.IntLib). Taka skompilowana forma biblioteki nie moøe byÊ edytowana, ale moøe byÊ dodana i†uøywana w†úrodowisku DXP podobnie jak inne rodzaje bibliotek. szereg dodatkowych informacji, przydatnych podczas projektowania, zamawiania elementÛw lub montaøu urz¹dzenia. Definiujemy je w†postaci parametrÛw, ktÛre moøemy dodawaÊ do elementu na poziomie biblioteki lub wprost na schemacie. Edytor schematÛw DXP zawiera potÍøny edytor parametrÛw, u³atwiaj¹cy zarz¹dzanie parametrami elementÛw. DostÍpny jest z†poziomu menu Tools>Parametr Manager. Po uruchomieniu, w†pierwszej kolejnoúci okreúlamy zakres obiektÛw, ktÛrych parametry chcemy przegl¹daÊ lub modyfikowaÊ. NastÍpnie pojawia siÍ tabela Parametr Table Editor (rys. 2), ktÛra pozwala na dodawanie i†usuwanie parametrÛw oraz edycjÍ jednego lub wielu parametrÛw jednoczeúnie. £¹czenie elementÛw z†baz¹ danych Projektowanie w†programie nVisage lub Protel jest jednym z†etapÛw opracowania produktu. Aby sprawnie zarz¹dzaÊ ca³ym procesem projektowania (zw³aszcza w†warunkach firmowych), wskazane jest zapewnienie przep³ywu danych pomiÍdzy úrodowiskiem DXP oraz innymi systemami funkcjonuj¹cymi w†przedsiÍbiorstwie, jak np. Rys. 2. Tabela Parametr Table Editor pozwalająca na dodawanie, usuwanie i edycję parametrów Zarz¹dzanie parametrami elementÛw Rys. 1. Właściwości elementów są dostępne z poziomu okienka dialogowe− 62 Jak wielu nych wym, wspomnieliúmy wczeúniej, oprÛcz informacji elektrycznych i†graficzdostÍpnych w†symbolu schematoopis elementu moøe zawieraÊ ca³y Rys. 3. Widok okna Database Link Elektronika Praktyczna 6/2003 P R O G R A M Y Rys. 4. Pierwszy krok działania kreatora Update From Library pozwala m.in. wybrać arkusze schematowe do zaktu− baz¹ danych elementÛw. Moøemy to osi¹gn¹Ê tworz¹c ³¹cza pomiÍdzy elementami na schemacie i†zewnÍtrzn¹ baz¹ danych. £¹czenie elementu z†baz¹ danych pozwala na wprowadzenie dowolnych danych z†bazy do elementu. Dane te mog¹ byÊ nastÍpnie wykorzystane podczas projektowania lub w³¹czone do zestawieÒ elementÛw tworzonych na zakoÒczenie projektu. £¹cza s¹ tworzone pomiÍdzy parametrami elementÛw na schemacie i†zewnÍtrzn¹ baz¹ danych za poúrednictwem tzw. Database Link (plik *.DBLink) dodanego do projektu. Program do realizacji ³¹cza z†baz¹ danych wykorzystuje standardowy interfejs ODBC systemu Windows lub wbudowany interfejs do obs³ugi baz MS Access i†MS SQL Server. Oparcie na standardzie ODBC daje w†praktyce moøliwoúÊ sprzÍgniÍcia z†dowoln¹ baz¹ danych. Zestawiaj¹c po³¹czenie, w†pierwszej kolejnoúci wybieramy bazÍ danych, nastÍpnie wskazujemy pola tabeli, ktÛre bÍd¹ odwzorowane w†postaci parametrÛw projektowych oraz okreúlamy sposÛb aktualizowania zmian. Wszystkie ustawienia moøemy okreúliÊ za pomoc¹ narzÍdzia Database Link (rys. 3). Zarz¹dzanie aktualizacj¹ elementÛw Istotny problem z†zakresu zarz¹dzania elementami stanowi kontrola propagowania zmian wprowadzonych w†elementach bib- liotecznych do projektÛw, ktÛre ich uøywaj¹. Kreator Update From Library (rys. 4) daje pe³n¹ kontrolÍ nad procesem aktualizacji elementÛw, pozwalaj¹c na aktualizacjÍ na jednym lub wiÍcej arkuszach schematÛw aktywnego projektu, z†wykorzystaniem wybranej biblioteki. Aktualizacja danego typu elementu moøe byÊ przeprowadzona dla jego wszystkich wyst¹pieÒ w†projekcie lub indywidualnie dla pojedynczych instancji. Kreatora aktualizacji uruchamiamy z†menu Tools>Update from Libraries. Jeúli jego ustawienia nam odpowiadaj¹, wystarczy klikn¹Ê przycisk Finish, øeby uruchomiÊ aktualizacjÍ. Pojawi siÍ typowe okienko funkcji ECO (Engineering Change Order), widoczne na rys. 4, ktÛre pokazuje szczegÛ³owo wszystkie zmiany, jakie zostan¹ naniesione. Klikaj¹c przycisk Execute Changes, ostatecznie uruchamiamy proces aktualizacji. Jeúli zaleøy nam na indywidualnej aktualizacji poszczegÛlnych wyst¹pieÒ tego samego elementu na schemacie, przechodzimy do drugiej strony kreatora, naciskaj¹c przycisk Next. Na rys. 5 widaÊ, øe mamy indywidualny dostÍp do kaødego elementu i†moøemy indywidualnie konfigurowaÊ parametry aktualizacji. NastÍpnie przyciskiem Finish uruchamiamy nanoszenie zmian, co powoduje start funkcji ECO i†w†efekcie dokonanie odpowiednich zmian w†projekcie. Definiowanie regu³ projektowych PCB na schemacie Protel DXP pozwala na definiowanie, juø na poziomie schematu, regu³ projektowych PCB, ktÛre okreúlaj¹ szczegÛ³owe parametry obwodu drukowanego, jak np. szerokoúÊ úcieøki lub wielkoúÊ odstÍpu pomiÍdzy elementami na p³ycie. Regu³y te dodajemy na schemacie w†postaci parametrÛw, wykorzystuj¹c przycisk Add as Rule. ZasiÍg dzia³ania regu³y jest uzaleøniony od miejsca na schemacie, w†ktÛrym umieúcimy okreúlaj¹cy j¹ parametr. Przyk³adowo, regu³a zdefiniowana dla elementu na schemacie bÍdzie siÍ odnosiÊ do jego odpowiednika na PCB, regu³a okreúlona dla po³¹czenia na PCB ma nVisage vs Protel DXP nVisage DXP to nowy program firmy Altium, przeznaczony dla projektantów elektroników. Wykorzystuje on rodowisko DXP - to samo, co Protel DXP. nVisage jest kompatybilny z programem Protel DXP projekty stworzone w nVisage mog¹ byæ otwierane i przetwarzane w Protelu. nVisage jest okrelany mianem multi-dimensional design capture tool, poniewa¿ integruje kilka ró¿nych narzêdzi potrzebnych do tworzenia i analizy projektów na wiele sposobów, zarówno pod k¹tem ich implementacji na p³ycie PCB, jak i w dowolnym uk³adzie FPGA. Ca³oæ jest doskonale zintegrowana za spraw¹ rodowiska Design Explorer (DXP). nVisage zawiera m.in. edytor schematów, wspomagaj¹cy tworzenie projektów hierarchicznych i wielokana³owych, za pomoc¹ którego mo¿emy budowaæ projekty przeznaczone zarówno do implementacji w uk³adach programowalnych FPGA, jak i na p³ycie drukowanej, np. z wykorzystaniem edytora PCB programu Protel. Wbudowany kompilator kodu VHDL pozwala na projektowanie uk³adów logicznych w jêzyku VHDL, lub u¿ywaj¹c obu technik jednoczenie schematów i kodu VHDL. nVisage oferuje równie¿ kilka narzêdzi do analizy i weryfikacji, m.in. analogowo-cyfrowy symulator obwodów klasy Spice 3f5/ XSpice, symulator VHDL oraz modu³ Signal Integrity, za pomoc¹ którego mo¿emy przeprowadziæ przybli¿on¹ analizê sygna³ow¹ obwodu na podstawie schematu. 64 Rys. 5. W drugim kroku działania kreato− ra Update From Library mamy dostęp do każdego elementu i możemy indywi− zasiÍg sieci (net) zwi¹zanej z†danym po³¹czeniem. MoøliwoúÊ definiowania regu³ PCB na schemacie nie przeszkadza ani nie wyklucza moøliwoúci ich okreúlania wprost w†edytorze PCB. Jednak w†pewnych warunkach jest to wygodniejsze, poniewaø schemat ideowy pozwala proúciej wyodrÍbniÊ fragmenty, dla ktÛrych parametry obwodu drukowanego powinny byÊ úciúle okreúlone. Interfejs do Systemu Zarz¹dzania Wersjami Kolejn¹ cech¹ Protela DXP, o†niebagatelnym znaczeniu dla wiÍkszych biur projektowych, jest moøliwoúÊ wspÛ³pracy z†systemem zarz¹dzania wersjami. Systemy takie pozwalaj¹ na synchronizacjÍ pracy kilkuosobowego zespo³u nad jednym projektem, u³atwiaj¹c utrzymanie spÛjnoúci projektu i†dostÍpnoúÊ najbardziej aktualnych wersji dokumentÛw dla wszystkich cz³onkÛw zespo³u. Protel DXP posiada interfejs kompatybilny ze standardem Visual SourceSafe. DostÍp do wszystkich funkcji systemu zarz¹dzania wersjami odbywa siÍ wprost ze úrodowiska DXP. Synchronizacja projektu Jednym z†zasadniczych wyzwaÒ stoj¹cych podczas projektowania PCB jest utrzymanie zgodnoúci pomiÍdzy schematem i†PCB. W†czasie pracy wprowadzamy ci¹g³e zmiany - na schematach, na PCB lub rÛwnoczeúnie w†kilku miejscach i†zmiany te musz¹ byÊ przenoszone do innych dokumentÛw projektowych. Tradycyjnie (m.in. w†Protelu 99SE) jest to robione za pomoc¹ rÛønego rodzaju plikÛw, na przyk³ad za pomoc¹ listy po³¹czeÒ (netlist) lub pliku ECO. Inaczej jest w†úrodowisku DXP, gdzie synchronizacja jest wykonywana bezpoúrednio pomiÍdzy schematem Rys. 6. W tym oknie dialogowym jest pokazywany stan wzajemnych powiązań elementów Elektronika Praktyczna 6/2003 P R O G R A M Y i†PCB. Synchronizacja w†DXP jest rÛwnieø dwukierunkowa, to znaczy, øe zmiany mog¹ byÊ przenoszone w†obu kierunkach podczas jednego procesu synchronizacji. U†podstaw synchronizacji projektu w†programach nVisage i†Protel DXP leøy potÍøny mechanizm porÛwnuj¹cy, tzw. comparison engine. Mechanizm ten jest wykorzystywana do porÛwnywania dokumentÛw ürÛd³owych (schematÛw) projektu z†PCB. Mechanizm porÛwnuj¹cy dokonuje kompletnego porÛwnania wszystkich istotnych aspektÛw kaødego projektu, w³¹czaj¹c w†to dane elementÛw, takie jak oznaczenie, wartoúÊ, model PCB i†zwi¹zane z†nimi parametry, jak rÛwnieø informacje o†po³¹czeniach, w³¹czaj¹c w†to nazwy sieci i†ich wÍz³y. Kluczem do synchronizacji pomiÍdzy schematem i†PCB jest powi¹zanie kaødego elementu na schemacie z†odpowiadaj¹cym mu elementem na PCB. W†programie Protel DXP moøe to byÊ zrobione na dwa sposoby - poprzez oznaczenie elementu lub unikalny identyfikator. Stan powi¹zaÒ elementÛw moøemy sprawdziÊ, wybieraj¹c polecenie Component Links z†menu Project w†edytorze PCB. W†oknie dialogowym widocznym na rys. 6 jest widoczny stan powi¹zaÒ elementÛw. Elementy, ktÛre s¹ powi¹zane za pomoc¹ unikalnego ID, s¹ pokazane w†czÍúci Matched Components po prawej stronie okna, zaú elementy, ktÛre nie s¹ dopasowane przez unikalny ID, s¹ pokazane w†dwÛch polach po lewej stronie. Pos³uguj¹c siÍ kontrolkami u†do³u okna dialogowego, moøemy szybko dopasowaÊ elementy wed³ug okreúlonych kryteriÛw, takich jak oznaczenie, komentarz czy footprint. Moøemy rÛwnieø wybraÊ z†listy niedopasowane elementy schematu i†PCB i†powi¹zaÊ je rÍcznie. Wspomnieliúmy wczeúniej, øe podczas synchronizacji program bazuje na powi¹zaniach elementÛw za pomoc¹ unikalnych ID lub oznaczeÒ, ale nie na podstawie innych parametrÛw jak np. footprint czy komentarz. Najlepiej jest dopasowywaÊ elementy, uøywaj¹c unikalnych ID, poniewaø pozwala to na wiÍksz¹ swobodÍ przy zmianie oznaczeÒ na schemacie lub PCB, bez obawy o†utratÍ synchronizacji po renumeracji elementÛw. Program automatycznie generuje unikalne identyfikatory podczas rozmieszczania elementÛw na PCB. KoniecznoúÊ rÍcznego powi¹zania wystÍpuje rzadko, w†nietypowych sytuacjach, kiedy np. rÍcznie umieúcimy jakiú element wprost z†biblioteki na PCB. Wtedy powi¹zania musimy utworzyÊ rÍcznie, pos³uguj¹c siÍ opisanym wczeúniej narzÍdziem Component Linking. SynchronizacjÍ projektu, czyli przenoszenie zmian pomiÍdzy schematem i†PCB uruchamiamy za pomoc¹ funkcji Update z†menu Design. W†wyniku tego pojawia siÍ okno dialogowe Engineering Change Order widoczne na rys. 7, w†ktÛrym s¹ pokazywane wszystkie zmiany, jakie musz¹ byÊ wprowadzone w†dokumentach docelowych, aby je zsynchronizowaÊ. Nie wszystkie rÛønice mog¹ byÊ automatycznie skorygowane - przyk³adowo zmiany po³¹czeÒ nie mog¹ zostaÊ przeniesione wstecz z†PCB do schematu. W†takim przypadku pojawia siÍ szczegÛ³owa informacja o†liczbie i†przyczynach niemoøliwoúci przeniesienia pewnych zmian. Wspomnieliúmy wczeúniej, øe podstaw¹ synchronizacji jest zaimplementowany w†programie rozbudowany mechanizm porÛwnuj¹cy, ktÛry w†ogÛlnym przypadku moøe s³uøyÊ do porÛwnywania dowolnych dokumentÛw projektu np. PCB z†list¹ po³¹czeÒ, dwÛch list po³¹czeÒ pomiÍdzy sob¹, arkusza schematu lub ca³ego projektu z†innym arkuszem schematu lub projektem itp. Warto przyjrzeÊ siÍ bliøej, jak pracuje mechanizm porÛwnuj¹cy. Proces wykrywa- a) b) Rys. 7. Widok okna dialogowego Engi− neering Change Order Rys. 8. W tym oknie jest wyświetlana lista rozbieżności wygenerowana w efek− Rys. 10. Widok okna dialogowego Variant Management, w którym są nia i†rozwi¹zywania rÛønic przebiega w†kilku etapach: - PorÛwnanie widokÛw projektu: typowo jest to schemat i†PCB. Proces porÛwnywania uruchamiamy, wybieraj¹c Update z†menu Design lub wybieraj¹c Show Differences z†menu Project. - Generowanie listy rÛønic: jeúli wybraliúmy polecenie Update, to Protel DXP wie, w†ktÛr¹ stronÍ chcemy przenieúÊ zmiany, wiÍc okno dialogowe Differences siÍ nie pojawia. Jeúli wybraliúmy Show Differences, to wszystkie rÛønice pokazuj¹ siÍ w†okienku Differences. - Ustawienie kierunku zmian: moøemy ustaliÊ kierunek przenoszenia zmian np. ze schematu do PCB lub odwrotnie, identyczny dla wszystkich wykrytych rÛønic lub dla kaødej indywidualnie. - Generowanie listy rÛønic: po ustawieniu kierunku zmian, generujemy tzw. ECO jest to lista czynnoúci, ktÛre zostan¹ wykonane, aby usun¹Ê rÛønice. - Zastosowanie zmian: uruchamiamy ECO, aby wprowadziÊ wszystkie zmiany. Okno pokazane na rys. 8 pokazuje przyk³adow¹ listÍ rozbieønoúci wygenerowan¹ w†efekcie uruchomienia mechanizmu porÛwnuj¹cego z†poziomu menu Project>Show Differences. Warianty z³oøeniowe nVisage i†Protel DXP obs³uguj¹ warianty z³oøeniowe. Tworzymy je, kiedy chcemy zaprojektowaÊ jeden obwÛd PCB, ale obsadzony elementami w†rÛønych konfiguracjach - kaøda konfiguracja to jeden wariant z³oøeniowy. Warianty definiujemy po uprzednim zaprojektowaniu kompletnej p³yty PCB. Po wybraniu z†menu Project>Variants, pojawia siÍ okno dialogowe Variant Management (rys. 10), ktÛre pokazuje zestaw elementÛw wystÍpuj¹cych w†ca³ym projekcie. Moøemy usun¹Ê wybrane elementy z†danego wariantu, ustawiaj¹c opcj¹ Not Fitted w†odpowiednim miejscu tabeli widocznej na rys. 10. Dla kaødego wariantu moøemy wygenerowaÊ w³aúciwe dla niego zestawienia elementÛw, pliki steruj¹ce do maszyny montuj¹cej elementy oraz rysunki montaøowe. Grzegorz Witek, Evatronix Dodatkowe informacje Rys. 9. Przykładowe dwa warianty tej samej płyty drukowanej: pozbawiona części Elektronika Praktyczna 6/2003 Dodatkowe informacje mo¿na uzyskaæ w firmie Evatronix, www.evatronix.com.pl. 65 N O T A T N I K P R A K T Y K A Prototyp w godzinę − precyzja niemal przemysłowa Płytki drukowane w domu, część 1 WstÍp Potrzeba ³atwego dostÍpu do p³ytek drukowanych towarzyszy elektronikom niemal od pocz¹tku obecnoúci technologii PCB na rynku. Jeszcze we wczesnych latach 90. moøliwoúci wyboru zawiera³y†siÍ pomiÍdzy ømudnym malowaniem úcieøek lakierem do paznokci b¹dü alchemi¹ ciemni fotograficznej a wydaniem okr¹g³ej sumki na p³ytkÍ wykonan¹ profesjonalnie lub poúwiÍceniem naleønej liczby godzin na zabaw͆z†kynarem i†p³ytk¹ uniwersaln¹. Na przestrzeni ostatnich kilku lat problem amatorskich PCB zacz¹³ jednak nabieraÊ nowego wymiaru. OtÛø coraz wiÍksza liczba interesuj¹cych uk³adÛw Elektronika Praktyczna 6/2003 scalonych opuszcza fabryki wy³¹cznie w†obudowach SMD o†gÍstoúci wyprowadzeÒ przekraczaj¹cej moøliwoúci jakichkolwiek p³ytek uniwersalnych. Z†drugiej strony oferta zak³adÛw zajmuj¹cych siÍ profesjonaln¹ technologi¹ PCB staje siÍ coraz ³atwiej dostÍpna (przede wszystkim finansowo) dla zwyk³ych úmiertelnikÛw. Do przesz³oúci naleø¹ k³opotliwe pytania o†listy apertur oraz w³asnorÍczne przygotowywanie plikÛw Gerbera i†listy wierceÒ. WiÍkszoúÊ zak³adÛw bez oporÛw przyjmuje pliki zapisane w†formacie popularnych narzÍdzi projektowych. W†zasadzie nie stanowi juø w†tej chwili wiÍkszego problemu W†artykule omÛwiono popularne, domowe metody wykonywania p³ytek drukowanych, ze szczegÛlnym uwzglÍdnieniem czynnikÛw warunkuj¹cych powtarzalnoúÊ procesu i†przyczyn najczÍúciej pope³nianych b³ÍdÛw. W†pierwszej czÍúci artyku³u przedstawiamy przegl¹d najbardziej popularnych metod wykonywania p³ytek drukowanych, za miesi¹c opublikujemy opis metody pozwalaj¹cej w†warunkach domowych uzyskaÊ powtarzalne úcieøki 6-milsowe. 51 N O T A T N I K P R A K T Y K A z³oøenie zamÛwienia na wykonanie precyzyjnych, jednostkowych p³ytek przeznaczonych do prototypu urz¹dzenia. Jednak wci¹ø pozostaje kilka istotnych ìaleî... Rozmiary jednostkowego zamÛwienia s¹ zazwyczaj znacznie mniejsze od rozmiarÛw typowych formatek stosowanych w†procesie technologicznym. Dlatego wykonawcy czekaj¹, aø zbierze siÍ odpowiednia liczba ìdetalistÛwî potrzebna do wype³nienia formatki produkcyjnej lub odpowiednio podnosz¹ ceny obowi¹zuj¹ce przy ma³ych zamÛwieniach. RÛwnieø koszt przygotowania dokumentacji produkcyjnej wnosi swÛj niebagatelny udzia³ do finalnej kwoty widniej¹cej na fakturze. Oczywiúcie moøna powiedzieÊ, øe ìprototyp musi kosztowaÊî. Jednak niezaleønie od posiadanego budøetu nie da siÍ zniwelowaÊ czasu, jaki musi up³yn¹Ê od zapisania na dysku projektu PCB do chwili wziÍcia do rÍki upragnionego kawa³ka laminatu. Nawet zamawiaj¹c us³ugÍ 24-godzinn¹ wed³ug specjalnych superekspresowych stawek, nie uniknie siÍ koniecznoúci fizycznego dostarczenia p³ytki do zleceniodawcy. Dlatego amatorskie metody wytwarzania PCB wci¹ø budz¹ øywe zainteresowanie. Uúciúlijmy przy tym, øe pojÍcie ìamatorskieî nie odnosi siÍ do rangi i†stopnia komplikacji samych projektÛw, a†raczej oznacza brak dostÍpu do rozbudowanego zaplecza technologicznego. Z†punktu widzenia hobbysty, techniki te stwarzaj¹ moøliwoúÊ ominiÍcia kosztÛw stawiaj¹cych pod znakiem zapytania sens realizacji wielu zamierzeÒ. Dla projektanta-profesjonalisty kryje siÍ w†nich ³atwoúÊ szybkiego prototypowania i†wprowadzania zmian do projektowanych uk³adÛw. Dysponuj¹c technologi¹ amatorsk¹, nawet o†gorszej jakoúci niø technologie profesjonalne, ale za to dostÍpn¹ na zawo³anie, moøna j¹ efektywnie wykorzystaÊ przy uruchamianiu niekrytycznych fragmentÛw uk³adu. Jak zreszt¹ zobaczymy w†drugiej czÍúci artyku³u, rezultaty osi¹galne po nabraniu pewnego doúwiadczenia s¹ co najmniej godne uwagi. Najefektowniejsza, a†zarazem precyzyjna metoda szybkiego wytwarzania jednostkowych p³ytek prototypowych polega na bezpoúrednim grawerowaniu mozaiki na powierzchni laminatu. M.in. w†EP8/2001 52 opisywaliúmy marzenie projektanta - specjalizowane plottery graweruj¹ce firmy LPKF. Niestety urz¹dzenia te, z†racji ceny, leø¹ w†zasiÍgu moøliwoúci jedynie nielicznych zespo³Ûw projektowych, a†dla wiÍkszoúci z†nas pozostan¹ w³aúnie marzeniem. Tajniki technologii Zdecydowana wiÍkszoúÊ wspÛ³czesnych technologii PCB opiera siÍ na metodach fotochemicznych, przy czym rozrÛøniamy tu dwie zasadnicze grupy: - metody subtraktywne polegaj¹ce na selektywnym usuwaniu zbÍdnych obszarÛw miedzi z†powierzchni laminatu, - metody addytywne (lub pÛ³addytywne) wykorzystuj¹ce selektywne osadzanie miedzi tworz¹cej mozaikÍ úcieøek. ³oúci w¹skich úcieøek i†niepowodowanie zwarÊ blisko po³oøonych elementÛw mozaiki. Od minimalnych osi¹galnych rozmiarÛw úcieøek i†dziel¹cych je separacji zaleøy m.in. jakich typÛw obudÛw elementÛw bÍdziemy mogli uøywaÊ w†swoich projektach. - dok³adne zachowanie rozmiarÛw ca³ego projektu, umoøliwiaj¹ce m.in. dopasowanie precyzyjnych elementÛw o†duøych rozmiarach, takich jak np. wielostykowe z³¹cza lub gniazda pamiÍci DIMM. - ze wzglÍdu na warunki warsztatowe dodajmy jeszcze brak wymagaÒ dotycz¹cych kosztownego wyposaøenia, trudno dostÍpnych b¹dü toksycznych odczynnikÛw itp. Obecnie moøemy w†zasadzie mÛwiÊ o†trzech ìdomowychî Termotransferową metodę wykonywania płytek polecamy w szczególności: Amatorom − jako tani sposób wytwarzania jednostkowych płytek do własnych projektów nie wymagający korzystania z ciemni i czystego laboratorium. Zawodowcom − jako sposób na szybkie wykonywanie płytek prototypowych. W ramach zachęty zasygnalizujemy, że wykonanie jednostronnej płytki drukowanej dobrej jakości zajmuje mniej niż 1 h i daje się przeprowadzić niemalże na biurku obok komputera. Metody addytywne, a†do nich naleø¹ niestety prawie wszystkie sposoby metalizacji otworÛw, do chwili obecnej leø¹ poza zasiÍgiem dzia³aÒ amatorskich. Wynika to zarÛwno z†koniecznoúci korzystania ze skomplikowanych procesÛw chemicznych (aktywacja powierzchni nieprzewodz¹cych, chemiczne i†elektrochemiczne osadzanie miedzi), jak rÛwnieø z†koniecznoúci uøycia precyzyjnych wysokoobrotowych wiertarek niezbÍdnych do wykonania otworÛw o†rÛwnych, g³adkich úciankach. Tak wiÍc, w†domenie amatorÛw pozostaj¹ wy³¹cznie jedno- lub dwuwarstwowe p³ytki drukowane wykonywane metod¹ subtraktywn¹, czyli wykonywane przez selektywne maskowanie i†trawienie nieos³oniÍtej miedzi. Uúciúlijmy zatem, jakie wymagania powinna spe³niaÊ zadowalaj¹ca technologia wytwarzania PCB: - wierne odwzorowanie szczegÛ³Ûw projektu, a†w†szczegÛlnoúci zachowanie ci¹g- sposobach maskowania powierzchni miedzi: - malowanie úcieøek pisakiem odpornym na trawienie, - zastosowanie emulsji úwiat³oczu³ej (fotolitografia), - nanoszenie maski ochronnej metod¹ termotransferu. O†malowaniu pisakiem chemoodpornym wspominam jedynie z†kronikarskiego obowi¹zku, gdyø nadaje siÍ wy³¹cznie do bardzo prostych urz¹dzeÒ. RÍczne naniesienie punktÛw lutowniczych pod uk³ad w†obudowie DIP wymaga pewnej rÍki i†nie zawsze udaje siÍ bez b³ÍdÛw. Posiadanie odpornego na trawienie pisaka z†bardzo cienk¹ koÒcÛwk¹ (np. 0,3 mm) moøe jednak okazaÊ siÍ przydatne do ew. retuszu masek wykonanych innymi metodami. Kolejne dwie techniki s¹ przedmiotem niekoÒcz¹cej siÍ rywalizacji pomiÍdzy zwolennikami emulsji úwiat³oczu³ej Positiv 20 a†uøytkownikami folii TES-200 oraz - od niedawna - fanami obiecuj¹cej metody termotransferowej wy- korzystuj¹cej papier kredowy w†roli noúnika. Pierwsze dwie metody, tzn. Positiv i†TES-200 s¹ powszechnie znane, a†ich opisy ³atwo dostÍpne w†Internecie. Artyku³ poúwiÍcony fotochemicznemu wytwarzaniu p³ytek PCB znalaz³ siÍ teø kiedyú na ³amach EP (listopad 1994) i†jest rÛwnieø dostÍpny na internetowej stronie EP (http://www.ep.com.pl/?ftp/makepcb/index.html). Jednak urok kaødej technologii tkwi w†szczegÛ³ach, a†posiadanie jej opisu nie oznacza jeszcze prostej drogi do sukcesu. Nieprzypadkowo najcenniejszym tomem dokumentacji technologicznej w†wielu zak³adach jest zeszyt z†odrÍcznymi notatkami g³Ûwnego technologa. Dlatego, zamiast powtarzaÊ ogÛlnie znane wyjaúnienia, skoncentrujÍ siÍ przede wszystkim na omÛwieniu czynnikÛw decyduj¹cych o†jakoúci wykonania oraz na mechanizmach najczÍúciej pope³nianych b³ÍdÛw. Pewn¹ nowoúci¹, znan¹ dotychczas g³Ûwnie uczestnikom internetowych grup dyskusyjnych, jest zmodyfikowana metoda termotransferowa wykorzystuj¹ca papier kredowy. Opieraj¹c siÍ na bardzo prostym pomyúle, pozwala ona na osi¹gniÍcie zaskakuj¹co dobrych i†powtarzalnych wynikÛw. Nie bÍdÍ ukrywa³, øe technika ta najbardziej przypad³a mi do gustu, dlatego poúwiÍcÍ jej drug¹ czÍúÊ artyku³u, prÛbuj¹c zarazem okreúliÊ, gdzie leø¹ granice jej moøliwoúci. Fotolitografia z†wykorzystaniem Positivu Starsi staøem Czytelnicy pamiÍtaj¹ zapewne skomplikowane przepisy przygotowania i†stosowania negatywowych emulsji úwiat³oczu³ych sporz¹dzonych na bazie albuminy, kleju stolarskiego lub szelaku i†uczulanych dwuchromianem potasu lub amonu. Moøna zaryzykowaÊ stwierdzenie, øe dopiero upowszechnienie preparatu Positiv 20 otworzy³o drogÍ do wytwarzania dobrych jakoúciowo p³ytek drukowanych w†warunkach domowego warsztatu. £atwoúÊ nanoszenia emulsji, doskona³a rozdzielczoúÊ, dobra úwiat³oczu³oúÊ i†prosty sposÛb wywo³ywania niezmiernie uproúci³y i†skrÛci³y†proces technologiczny. Fotolitografia oferuje rÛwnieø potencjalnie najwyøsz¹ precyzjÍ odwzorowania. Jednak, z†drugiej strony, metoda fotoche- Elektronika Praktyczna 6/2003 N O T A T N I K miczna to wci¹ø czasoch³onny, kilkuetapowy proces o†wielu stopniach swobody, a†b³Ídy pope³nione na ktÛrymkolwiek z†etapÛw powoduj¹, øe pracÍ trzeba zacz¹Ê od pocz¹tku. Uzyskanie powtarzalnych wynikÛw wymaga úcis³ego przestrzegania reøimu technologicznego. WymieÒmy zatem najwaøniejsze etapy decyduj¹ce o†jakoúci finalnego produktu: - przygotowanie powierzchni laminatu, - nanoszenie warstwy úwiat³oczu³ej (fotorezystu), - suszenie fotorezystu, - naúwietlanie, - wywo³ywanie, - trawienie miedzi, - usuwanie rezystu. Przygotowanie powierzchni p³ytki W†odniesieniu do Positiv 20, producent (firma CRC Kontakt Chemie) czÍsto w†swoich materia³ach uøywa okreúlenia ìlakierî. Faktycznie, opakowanie aerozolowe i†stosowane rozpuszczalniki (m.in. aceton, eter dwumetylowy) blisko kojarz¹ siÍ z†malowaniem, a†zamierzaj¹c uzyskaÊ pow³okÍ o†dobrej przyczepnoúci, rÛwnieø powinniúmy stosowaÊ siÍ do zasad panuj¹cych w†tej dziedzinie. Do wykonania p³ytek drukowanych naleøy wybieraÊ laminat pozbawiony wgnieceÒ, g³Íbokich rys i†úladÛw korozji. Przygotowanie powierzchni polega na delikatnym, rÛwnomiernym zmatowieniu miedzi (rozwiniÍcie powierzchni poprawia adhezjÍ lakieru) oraz bardzo dok³adnym odt³uszczeniu. W†praktyce dosyÊ dobrze zdaj¹ egzamin detergentowe, ìnierysuj¹ceî mleczka do czyszczenia urz¹dzeÒ sanitarnych (np. CIF, Skrzat itp.) lub p³yny do mycia naczyÒ. Moøna rÛwnieø pos³uøyÊ siÍ bardzo drobnym, wodoodpornym papierem úciernym o†gradacji >1000, szlifuj¹c p³ytkÍ na mokro najlepiej pod strumieniem bieø¹cej wody. O†dobrym odt³uszczeniu úwiadczy rÛwnomierne zwiløanie przez wodÍ Tab. 1. Grubość powłoki emulsji Positiv 20 można ocenić po kolorze pokrycia Barwa Jasna szaroniebieska Ciemna szaroniebieska Niebieska Ciemnoniebieska Gruboœæ pow³oki [µm] 1...3 3...6 6...8 >8 Elektronika Praktyczna 6/2003 P R A K T Y K A N O T A T N I K P R A K T Y K A ca³ej powierzchni. Nie muszÍ chyba dodawaÊ, øe od tego momentu nie wolno juø dotykaÊ miedzi palcami. Poniewaø†czysta powierzchnia miedzi ulega stopniowemu utlenianiu i†zabrudzeniom, nie naleøy teø niepotrzebnie zwlekaÊ z†lakierowaniem. Nanoszenie fotorezystu Podobnie jak w†przypadku pow³ok lakierniczych, przy nak³adaniu fotorezystu zaleøy nam na rÛwnomiernym, szczelnym pokryciu ca³ej powierzchni pod³oøa. Dodatkowo jednak, szczegÛlnego znaczenia nabiera gruboúÊ naniesionej warstwy przek³adaj¹ca siÍ bezpoúrednio na wartoúÊ energii promieniowania potrzebnej do jej prawid³owego naúwietlenia. NierÛwnomiernoúÊ warstwy moøe spowodowaÊ problemy z†doborem czasu ekspozycji, a†w†skrajnym przypadku uniemoøliwiÊ poprawne naúwietlenie ca³ego pola roboczego. GruboúÊ warstwy úwiat³oczu³ej decyduje rÛwnieø o†osi¹galnej rozdzielczoúci odwzorowania aczkolwiek zalecana pow³oka Positivu jest stosunkowo cienka (ok. 6...8 µm), dziÍki czemu w†zastosowaniach PCB jej gruboúÊ nie wywiera znacz¹cego wp³ywu na rozdzielczoúÊ metody. Do oszacowania gruboúci moøna pos³uøyʆsiÍ ocen¹ barwy - zgodnie z†tab. 1. Podane barwy odnosz¹ siÍ do emulsji naniesionej na pod³oøe bezbarwne - np. aluminium. Na skutek mieszania barw, lakier naniesiony na powierzchniÍ miedzi zyskuje odcieÒ fioletowy. Nak³adanie pow³oki najlepiej wykonywaÊ przy øÛ³tym úwietle, aczkolwiek w†stanie mokrym emulsja jest s³abo wraøliwa i†toleruje krÛtkotrwa³e oúwietlenie przyt³umionym úwiat³em dziennym. W†miarÍ schniÍcia jej úwiat³oczu³oúÊ istotnie wzrasta, dlatego suszenie powinno odbywaÊ siÍ juø w†ciemnoúci. P³ytka przeznaczona do lakierowania musi byÊ dok³adnie wysuszona po myciu. Do malowania natryskiem uk³adamy laminat poziomo lub nachylony pod niewielkim k¹tem. Malowanie prowadzi siÍ jednym nieprzerwanym ruchem, rozpoczynaj¹c†natrysk poza p³ytk¹, a†nastÍpnie wodz¹c dyszÍ wzd³uø linii zygzakowatej, pocz¹wszy od gÛrnego naroønika. Przed skierowaniem strumienia na p³ytkÍ warto poúwiÍciÊ kilka kropel preparatu na przedmuchanie dyszy i†uwolnienie ewentual- 53 N O T A T N I K P R A K T Y K A nych skrzepniÍtych ìk³aczkÛwî. Przy malowaniu naleøy uwaøaÊ, aby trzymaÊ opakowanie moøliwie blisko pionu. Przechylenie do poziomu powoduje niepotrzebn¹ ucieczkÍ gazu noúnego i†wystÍpowanie przerw w†strumieniu, co odbija siÍ na jednorodnoúci pow³oki. Nanoszony lakier w†pierwszym momencie osiada na p³ytce w†postaci ìpomaraÒczowej skÛrkiî, a†dopiero po chwili rozp³ywa siÍ w†jednolit¹, g³adk¹ warstwÍ. Ponadto rozp³ywaj¹ca siÍ emulsja wykazuje tendencjÍ do tworzenia zgrubieÒ na krawÍdziach laminatu, dlatego naleøy pamiÍtaÊ o†zachowaniu odpowiednich marginesÛw wokÛ³ pola roboczego. Nak³adaniu cienkich pow³ok sprzyja bardzo niska lepkoúÊ preparatu, jednak natryúniÍcie pokrycia o†sta³ej, powtarzalnej gruboúci wymaga sporej wprawy. Dlatego, szczegÛlnie przy precyzyjnych projektach, rozprowadzanie lakieru powinno byÊ wspomagane wirowaniem p³ytki. DziÍki ma³ej lepkoúci wystarczaj¹ stosunkowo niewielkie prÍdkoúci wirowania rzÍdu 100 obr./min. W†warunkach amatorskich moøna wykonaÊ prost¹ wirÛwkÍ, adaptuj¹c np. typowy wentylator z†silnikiem sta³opr¹dowym 12 V zasilany obniøonym napiÍciem. Emulsja Positiv 20 ma ograniczon¹ trwa³oúÊ (w temperaturze max. 25 o C†nominalnie 1,5 roku od daty konfekcjonowania), a†przekroczenie daty waønoúci objawia siÍ np. w†postaci nierÛwnomiernoúci na³oøonej warstwy (powstawanie ìk³aczkÛwî). Znacznie krÛtszy czas przydatnoúci charakteryzuje such¹ emulsjÍ naniesion¹ na powierzchniÍ laminatu. Wed³ug danych producenta, okres przechowywania w†temperaturze pokojowej nie moøe przekraczaÊ 4†tygodni. ZwrÛÊmy uwagÍ, øe okres ten dotyczy rÛwnieø gotowych lakierowanych p³ytek oferowanych przez niektÛrych dystrybutorÛw. Przed³uøeniu trwa³oúci sprzyja sk³adowanie w†temperaturze obniøonej do +8...+12 oC. Trzeba jednak pamiÍtaÊ, øeby (z†uwagi na kondensacjÍ pary wodnej) przed uøyciem ogrzaÊ p³ytki do temperatury pokojowej. Suszenie Naniesiona warstwa musi byÊ dok³adnie wysuszona przed naúwietlaniem. JakoúÊ wysuszenia decyduje o†przyczepnoúci rezystu do pod³oøa, 54 a†takøe, o†czym juø wspomnia³em, o†jego efektywnej czu³oúci na úwiat³o. Na ca³kowite wyschniÍcie lakieru w†temperaturze pokojowej potrzeba co najmniej 24 h. Z†jednej strony czas ten powinien byÊ jak najkrÛtszy, gdyø lepka powierzchnia lakieru jest szczegÛlnie podatna na chwytanie zanieczyszczeÒ z†powietrza. Z†drugiej - zbyt intensywne suszenie moøe spowodowaÊ wytworzenie ìskÛrkiî i†pomarszczenie pow³oki. t³o projektu staj¹ siÍ rozpuszczalne i†zostaj¹ usuniÍte podczas wywo³ywania ods³aniaj¹c powierzchniÍ miedzi. Dla porÛwnania przypomnijmy, øe tradycyjne, amatorskie emulsje chromianowe naleøa³y do grupy negatywowej, tzn. pod wp³ywem úwiat³a nastÍpowa³o w†nich garbowanie bia³ek i†utrata rozpuszczalnoúci. Dlatego teø wymaga³y naúwietlania rysunkiem w†negatywie w†miejscach przezroczystych úcieøek nastÍpowa³o utrwalenie Błędy, których przyczyn nie widać Wydaje się, że 5 mils to niewiele, ale tylko błąd naświetlania może udaremnić próbę wykonania ścieżek o szerokości mniejszej od 10...12 mils. UwzglÍdniaj¹c oba wymagania, producent zaleca suszenie przyspieszone w†temperaturze 70 oC†w†suszarce z†promiennikiem IR lub obiegiem ciep³ego powietrza. Po umieszczeniu p³ytki w†komorze, naleøy†powoli podnosiÊ temperaturÍ, a†po osi¹gnieciu maksimum odczekaÊ jeszcze 15...20 minut do ca³kowitego wyschniÍcia. Przypomnijmy, øe suszenie powinno odbywaÊ siÍ w†ciemnoúci, w†otoczeniu wolnym od kurzu. Przekroczenie temperatury 80oC†powoduje, øe fotorezyst ulega nieodwracalnym przemianom, stopniowo trac¹c rozpuszczalnoúÊ. Naúwietlanie Naúwietlanie emulsji jest najbardziej krytycznym etapem fotolitografii, a†ze wzglÍdu na duø¹ liczbÍ parametrÛw rÛwnieø najtrudniejszym z†punktu widzenia powtarzalnoúci procesu. WymieÒmy zasadnicze czynniki decyduj¹ce o†powodzeniu procesu: - dobÛr diapozytywu (rysunek w†pozytywie, w³aúciwa gÍstoúÊ optyczna), - dobÛr ürÛd³a úwiat³a (charakterystyka widmowa, gÍstoúÊ mocy, kolimacja), - rÛwnomierny docisk kliszy do laminatu, - dobÛr czasu naúwietlania, - zachowanie czystoúci. Diapozytyw Positiv 20 naleøy do grupy emulsji pozytywowych, tzn. uzyskuj¹cych rozpuszczalnoúÊ w†wyniku naúwietlenia. Dlatego na diapozytywie uøytym do naúwietlania musi siÍ znajdowaÊ pozytywowy rysunek mozaiki - tzn. czarne úcieøki na przezroczystym tle. Naúwietlone obszary fotorezystu, czyli emulsji chroni¹cej pÛüniej miedü przed trawieniem. Niedoúwietlenie skutkuje s³ab¹ rozpuszczalnoúci¹ fotorezystu utrudniaj¹c¹ ods³oniÍcie t³a i†powoduj¹c¹ powstawanie zwarÊ pomiÍdzy úcieøkami. Natomiast przeúwietlenie powoduje m.in. podmywanie úcieøek, a†w†skrajnym przypadku sp³yniÍcie ca³ej emulsji podczas wywo³ywania. Zakres swobody w†doborze czasu naúwietlania jest ograniczony przez kontrast posiadanego diapozytywu, a†w†praktyce przede wszystkim przez jego gÍstoúÊ optyczn¹ (D) w†obszarach zaczernionych (czyli logarytm dziesiÍtny ze stosunku iloúci úwiat³a padaj¹cego do przechodz¹cego). Zbyt ma³a gÍstoúÊ optyczna objawia siÍ naruszeniem powierzchni miedzi na p³aszczyznach, ktÛre powinny pozostaÊ nietkniÍte. Najlepsz¹ gÍstoúÊ optyczn¹ (D>3,5) maj¹ klisze wykonane na fotoploterze lub naúwietlarce rastrowej. Natomiast gÍstoúÊ pokrycia uzyskanego na wydruku z†drukarki laserowej lub atramentowej czÍsto okazuje siÍ niewystarczaj¹ca. Ponadto na wydrukach z†niektÛrych drukarek laserowych wystÍpuje rÛwnieø tendencja do niejednolitego krycia duøych obszarÛw. W†przypadku drukarki laserowej lub ksero moøna uzyskaÊ znacz¹c¹ poprawÍ, umieszczaj¹c wydruk na kilkadziesi¹t†minut w†parach acetonu lub rozpuszczalnika nitro, powoduj¹cych spÍcznienie tonera i†w†efekcie jego optyczne uszczelnienie. èrÛd³o úwiat³a Maksimum czu³oúci widmowej Positivu przypada w†zakresie bliskiego ultrafioletu UVA - czyli w†przedziale 340...420 nm. GÍstoúÊ energii wymagana do naúwietlenia warstwy fotorezystu o†gruboúci 8†µm wynosi orientacyjnie 100 mJ/cm 2 . Najlepszym dostÍpnym ürÛd³em úwiat³a o†odpowiedniej charakterystyce widmowej s¹ wy³adowcze lampy rtÍciowe (np. przezroczysta úwietlÛwka UV lub jarznik pozyskany z†wysokoprÍønej lampy rtÍciowej). Aczkolwiek wystarczaj¹co dobre rezultaty daje rÛwnieø zastosowanie øarowej lampy halogenowej, a†nawet bezpoúredniego úwiat³a s³onecznego. Ze wzglÍdu na trudnoúÊ obiektywnego pomiaru natÍøenia ultrafioletu w†warunkach amatorskich, naj³atwiej ustaliÊ w³aúciwy czas ekspozycji eksperymentalnie, wykonuj¹c seriÍ prÛbek o†rÛønym stopniu naúwietlenia. Zamiast stosowanego profesjonalnie klina szaroúci, wystarczy wielokrotne naúwietlanie prÛbki ze stopniowym ods³anianiem kolejnych partii fotorezystu. Spodziewane czasy naúwietlania przy uøyciu typowych ürÛde³ (lampa kwarcowa, halogen 500 W) i†odleg³oúci rzÍdu 0,3...0,5 m†plasuj¹ siÍ zazwyczaj w†przedziale kilku...kilkunastu minut. DobÛr ürÛd³a úwiat³a powinien uwzglÍdniaÊ jeszcze dwa aspekty - jednorodnoúÊ oúwietlenia ca³ej powierzchni pola roboczego oraz kolimacjÍ úwiat³a. RÛwnomiernoúÊ oúwietlenia nie wymaga, jak s¹dzÍ, szczegÛ³owego uzasadnienia. Moøna j¹ uzyskaÊ, stosuj¹c jednorodne ürÛd³o úwiat³a o†powierzchni porÛwnywalnej z†powierzchni¹ sto³u roboczego (np. zespÛ³ rÛwnoleg³ych úwietlÛwek UV z†reflektorami parabolicznymi) lub ürÛd³o punktowe znacznie oddalone od p³aszczyzny roboczej. Drugie zagadnienie wymaga jednak kilku s³Ûw wyjaúnienia. OtÛø rozmiary obiektu odwzorowanego w†fotorezyúcie nigdy nie bÍd¹ identyczne z†rozmiarami tego samego obiektu na kliszy. Zjawisko to, zwane podciÍciem krawÍdzi jest skutkiem podúwietlania fotorezystu po³oøonego pod zaczernionym fragmentem kliszy (rys. 1). Przyjmuj¹c, øe stosujemy fotorezyst pozytywowy (czyli np. Positiv), ktÛrego naúwietlenie powoduje rozpuszczalnoúÊ emulsji, zaobserwujemy efekt polegaj¹cy na zwÍøeniu úcieøek w†stosunku do wymiarÛw za³oøonych w†projekcie. ZwrÛÊmy uwagÍ, øe skutki podciÍcia krawÍdzi fotorezystu kumuluj¹ siÍ ze zwÍøeniem úcieøek po- Elektronika Praktyczna 6/2003 N O T A T N I K P R A K T Y K A Rys. 1. Jedną z przyczyn podświetlania krawędzi podczas naświetlania jest niedokładne dociśnięcie kliszy do powierzchni fotorezystu wstaj¹cym na skutek podtrawiania miedzi. Jednym ze sposobÛw kolimacji, przydatnym szczegÛlnie w†przypadku naúwietlania za pomoc¹ p³askiego zespo³u úwietlÛwek UV, moøe byÊ zastosowanie kolimatora kratownicowego, czyli grubej przes³ony w†postaci kratownicy o†niewielkim przekroju otworÛw i†cienkich úciankach poch³aniaj¹cych úwiat³o. W†warunkach amatorskich za wystarczaj¹ce moøna jednak uznaÊ zastosowanie ürÛd³a punktowego (o niewielkich rozmiarach) oddalonego od powierzchni p³ytki. W†swojej praktyce uøywa³em, z†dobrym skutkiem, archaicznej lampy kwarcowej do opalania, z†krÛtkim jarznikiem rtÍciowym o†mocy 125 W†umieszczonej na wysokoúci ok. 50 cm nad kopioramk¹. Docisk kliszy Niedok³adne przy³oøenie i†docisk kliszy, w†po³¹czeniu z†brakiem kolimacji oúwietlenia jest istotnym, chociaø czÍsto niedocenianym ürÛd³em b³ÍdÛw. Jestem sk³onny zaryzykowaÊ stwierdzenie, øe w³aúnie w†tym miejscu kryje siÍ praktyczne ograniczenie rozdzielczoúci domowej fotolitografii. Jak juø wspomnia³em oúwietlenie p³ytki pod k¹tem rÛønym od 90 o (deklinacja) w†po³¹czeniu z†nierÛwnoleg³oúci¹ wi¹zki úwiat³a (brak kolimacji) skutkuje podcinaniem krawÍdzi i†zwÍøaniem úcieøek (rys. 1) SprÛbujmy przeprowadziÊ szybkie oszacowanie. Za³Ûømy, øe dysponujemy oúwietleniem o†maksymalnym k¹cie deklinacji α=15 o, a†jednoczeúnie pomiÍdzy fotorezystem a†niedok³adnie dociúniÍt¹ klisz¹ powsta³a szczelina 56 ∆Y=0,5 mm. PrzyjÍty maksymalny k¹t padania úwiat³a odpowiada mniej wiÍcej zastosowaniu typowej oprawy oúwietleniowej z†liniowym øarnikiem halogenowym 500 W†umieszczonej na wysokoúci 40 cm nad p³ytk¹. Z†prostego uk³adu geometrycznego moøemy wyliczyÊ, øe krawÍdzie úcieøek na fotorezyúcie zostan¹ podúwietlone na g³ÍbokoúÊ: ∆X†=†∆Y† .†tg(15 o)†≈†0,13†mm, czyli ok. 5†mils (mils = 0,001 cala jest jednostk¹ powszechnie stosowan¹ w†projektowaniu PCB) Oczywiúcie w†obliczeniu pominÍliúmy wszelkie subtelnoúci, takie jak: rÛøne wspÛ³czynniki za³amania úwiat³a w†materiale kliszy i†warstwie úwiat³oczu³ej, ugiÍcie úwiat³a na krawÍdzi maski, wsteczne odbicie úwiat³a od miedzi, a†takøe charakterystykÍ czu³oúci fotorezystu. Jakie to ma znaczenie praktyczne? Wydaje siÍ, øe 5†mils to niewiele, ale tylko ten jeden b³¹d naúwietlania moøe udaremniÊ prÛbÍ wykonania úcieøek o†szerokoúci mniejszej od 10...12 mils. WystÍpowanie szczelin pomiÍdzy mask¹ optyczn¹ a†fotorezystem zaleøy przede wszystkim od zastosowanej metody docisku - ale nie tylko. Przede wszystkim klisza musi leøeÊ na p³ytce emulsj¹ (lub tonerem) do do³u! GruboúÊ kliszy wynosz¹ca 0,1...0,2 mm jest juø wystarczaj¹ca aby, przy niew³aúciwym u³oøeniu, spowodowaÊ zauwaøalne podúwietlenie krawÍdzi. CzÍsto stosowany docisk za pomoc¹ szyby (szklanej lub PMMA) niestety nie zawsze zdaje egzamin. Nawet niewielkie zwichrowanie p³ytki laminatu zazwyczaj uniemoøliwia rÛwnomierne przyciúniÍcie maski na ca³ej powierzchni. Ponadto szk³o poch³ania czÍúÊ ultrafioletu, natomiast miÍkkie plexi ³atwo ulega zarysowaniom. Jedynym skutecznym sposobem wydaje siÍ zastosowanie kopioramy z†dociskiem prÛøniowym. Mimo powaønie brzmi¹cej nazwy jest to urz¹dzenie ³atwe do wykonania, a†doraünie daj¹ce siÍ zast¹piÊ nawet torebk¹ z†przezroczystej folii PE. Na swoje potrzeby wykona³em prost¹ kopioramkÍ z³oøon¹ z†kwadratowej, drewnianej ramki z†zag³Íbion¹ p³yt¹ szklan¹ (rys. 2, fot. 3). Uøycie szk³a wynika³o z†potrzeby zastosowania p³askiej g³adkiej p³yty, ale przy okazji u³atwia optyczne centrowanie masek podczas wykonywania p³ytek dwustronnych. KrawÍdzie ramki zosta³y pokryte warstw¹ silikonu sanitarnego i†wyg³adzone na mokro. Powierzchnia gumy silikonowej przez d³uøszy czas zachowuje pewn¹ lepkoúÊ, dziÍki czemu doskonale zdaje egzamin jako uszczelnienie. Zaznaczona na rysunku i†widoczna na zdjÍciu rurka z†otworami, biegn¹ca wzd³uø krawÍdzi ramki s³uøy jako doprowadzenie podciúnienia. Ze wzglÍdu na niewielkie wymagania odnoúnie wydaj- noúci i†ciúnienia koÒcowego, w†roli pompy prÛøniowej moøe wyst¹piʆprosta, inøektorowa pompa wodna, a†nawet agregat sprÍøarkowy wymontowany ze z³omowanej lodÛwki. Naúwietlan¹ p³ytkÍ wraz z†mask¹ naleøy po³oøyÊ na kopioramie, fotorezystem do gÛry, a†nastÍpnie ca³¹ ramkÍ nakryÊ cienk¹, przezroczyst¹ foli¹ polietylenow¹ (stretch) stosowan¹ do pakowania øywnoúci (fot. 4). Folia PE o†gruboúci ok. 10 µm praktycznie nie poch³ania ultrafioletu a†wprowadzane przez ni¹ ewentualne za³amania úwiat³a nie odwzorowuj¹ siÍ na fotorezyúcie. NaprÍøona, czysta folia bardzo ³atwo przylega szczelnie do powierzchni silikonu. Po w³¹czeniu podciúnienia, ulega ugiÍciu o†2...3 mm, praktycznie nie przemieszczaj¹c siÍ w†p³aszczyünie poziomej. DziÍki temu ca³a powierzchnia maski zostaje rÛwnomiernie dociúniÍta do laminatu, bez ryzyka przesuniÍcia wzglÍdem otworÛw centruj¹cych. WrÛg numer 1†- kurz WymÛg sterylnej niemaløe czystoúci - od pocz¹tku nanoszenia emulsji do chwili wyjÍcia p³ytki z†kopioramy, jest wspÛln¹ cech¹ wszystkich fotolitografii. Jakkolwiek wymogi czystoúci niezbÍdnej przy wykonywaniu PCB s¹ nieporÛwnywalne z†rygorami panuj¹cymi w†cleanroomach laboratoriÛw pÛ³przewodnikowych, to jednak przyjmuje siÍ, øe przy fotolitografii wysokoprecyzyjnych PCB pomieszczenia laboratoryjne musz¹ byÊ utrzymywane w†klasie czystoúci ì10000î, co znaczy, øe liczba cz¹stek sta³ych o†úrednicy >0,5 µm nie moøe przekraczaÊ (po przeliczeniu na jednostki metryczne) 350 szt./dm 3 powietrza, natomiast cz¹stek o†úrednicy >5 µm juø tylko 2,3 szt./dm 3. Rys. 2. Rysunek przekrojowy ilustrujący budowę kopioramy podciśnieniowej Elektronika Praktyczna 6/2003 N O T A T N I K P R A K T Y K A Fot. 3. Podciśnienie dociskające folię można uzyskać dzięki wprowadzeniu pod folię polietylenowej rurki z otworami Drobiny kurzu przyklejone w†czasie natryskiwania emulsji powoduj¹ powstawanie widocznych zgrubieÒ. Z†drugiej strony, wysoka rozdzielczoúÊ fotorezystu paradoksalnie skutkuje zwiÍkszon¹ wraøliwoúci¹ na zanieczyszczenia obecne w†czasie naúwietlania. Niewidoczne go³ym okiem w³Ûkienko pomiÍdzy klisz¹ a†warstw¹ úwiat³oczu³¹ moøe zostaÊ odwzorowane jako cieniutka ìszpilkaî zwieraj¹ca dwie s¹siednie úcieøki. W†moim odczuciu, k³opoty z†utrzymaniem czystoúci stanowi¹ jedn¹ z†najwaøniejszych przyczyn niepowodzeÒ domowej fotolitografii. Oczywiúcie nie chcÍ nikogo przekonywaÊ o†celowoúci budowy amatorskiego cleanroomu ze úluz¹ oddzielaj¹c¹ strefy: szar¹ i†bia³¹, filtracj¹ powietrza i†przep³ywem laminarnym. Jednak warto zdawaÊ sobie sprawÍ z†obowi¹zuj¹cych zasad postÍpowania. Na laboratorium najlepiej wybieraÊ pomieszczenia pozbawione ì³apaczy kurzuî w†postaci zas³on, wyk³adzin itp., wyposaøone w†wentylacjÍ, ale nie wywo³uj¹c¹ przeci¹gÛw. Uporawszy siÍ ze sprz¹taniem, warto przed przyst¹pieniem do pracy, zwiløyÊ spryskiwaczem najbliøsze otoczenie, co skutecznie ograniczy iloúÊ kurzu unosz¹cego siÍ w†powietrzu. Najbardziej úmiec¹cym obiektem w†laboratorium jest jednak sam cz³owiek. Dlatego naleøy zadbaÊ o†niepyl¹ce ubranie obejmuj¹ce w†szczegÛlnoúci czepek na w³osy (sic!) i†fartuch ze úci¹ganymi mankietami, nie nachylaÊ siÍ bezpoúrednio nad p³ytk¹, a†przede wszystkim unikaÊ wykonywania gwa³townych ru- 58 chÛw. Opanowanie emocji przydaje siÍ nie tylko ze wzglÍdu na unosz¹cy siÍ kurz. P³ytka laminatu od momentu naniesienia emulsji do chwili wyjÍcia z†k¹pieli trawi¹cej podlega wielu operacjom, w†czasie ktÛrych bardzo ³atwo o†zarysowanie warstwy fotorezystu. RÛwnie k³opotliwa moøe okazaÊ siÍ drobna, s³abo widoczna rysa na kliszy fotograficznej. DziÍki duøej rozdzielczoúci zostanie odwzorowana np. jako s³abo widoczna, cienka przerwa naruszaj¹ca ci¹g³oúÊ úcieøki. Wywo³ywanie Pod wp³ywem úwiat³a fotorezyst staje siÍ rozpuszczalny i†poddaje siÍ wymywaniu w†k¹pieli wywo³uj¹cej. Natomiast obszary ciemne pozostaj¹ nienaruszone, chroni¹c†powierzchniÍ miedzi w†czasie pÛüniejszego trawienia. Wywo³ywacz zalecany przez producenta powinien sk³adaÊ siÍ z†0,7% roztworu wodorotlenku sodowego (7 g†NaOH w†1†dm3 wody) o†temperaturze pokojowej. W warunkach domowych moøna siÍgn¹Ê po preparat do udraøniania rur (np. "Kret"), sk³adaj¹cy siÍ g³Ûwnie z NaOH. Poprawnie naúwietlony rysunek powinien ulec ca³kowitemu wywo³aniu w†czasie ok. 1†min. Zbyt wysokie stÍøenie wywo³ywacza powoduje natychmiastowe sp³yniÍcie ca³ej warstwy úwiat³oczu³ej. Z†drugiej strony stÍøenie zbyt ma³e lub zuøycie NaOH stwarza trudnoúci z†wymyciem naúwietlonej emulsji, interpretowane jako niedoúwietlenie i†mylnie korygowane wyd³uøaniem czasu naúwietlania. ZwrÛÊmy uwagÍ, øe†wodorotlenek sodowy, stoj¹c w†otwartym naczyniu, zuøywa siÍ, wi¹ø¹c Fot. 4. Niezbędnym elementem wyposażenia kopioramy jest folia kuchenna stosowana do pakowania żywności obecny w†powietrzu dwutlenek wÍgla. Mimo øe wywo³ywanie to czynnoúÊ stosunkowo prosta do wykonania, to jednak wydaje siÍ, øe b³Ídy na tym etapie s¹ pope³niane wyj¹tkowo czÍsto i†niestety wymagaj¹ powtÛrzenia ca³ego procesu od pocz¹tku. Trawienie Positiv wykazuje odpornoúÊ wobec wiÍkszoúci k¹pieli trawi¹cych stosowanych w†technologii PCB pocz¹wszy od ³agodnie alkalicznych k¹pieli amoniakalnych, przez roztwÛr†chlorku øelazowego (FeCl 3), roztwÛr nadsiarczanu amonu ((NH 4)2S2O8), aø do k¹pieli kwaúnych (HCl lub H2SO4) z†dodatkiem perhydrolu (H 2 O 2 ). Natomiast mniej znany jest fakt, øe w†wyniku utrwalania termicznego (przeciÍtnie 10...30 minut w†temperaturze 120oC, a†przy szczegÛlnych wymaganiach 160...190oC) moøna uodporniÊ pow³okÍ rezystu na dzia³anie tak agresywnych czynnikÛw jak np. stÍøony kwas azotowy (65% HNO 3 ) lub fluorowodorowy (40% HF). PodajÍ tÍ informacjÍ jako ciekawostkÍ, sygnalizuj¹c zarazem, øe potencjalny zakres zastosowaÒ rozci¹ga siÍ znacznie poza wytwarzanie PCB, pozwalaj¹c rÛwnieø na fotolitografiÍ np. stali, srebra, szk³a, aluminium itp. Usuwanie maski ochronnej Niewielkie powierzchnie nienaúwietlonego Positivu moøna ³atwo usun¹Ê za pomoc¹ popularnych rozpuszczalnikÛw organicznych (aceton, estry - np. rozpuszczalnik ìnitroî). W†przypadku zmywania duøych powierzchni lub usuwania emulsji poddanej ³agodnemu utrwalaniu termicznemu wygodniej bÍdzie pos³uøyÊ siÍ roztworem wodorotlenku sodowego (NaOH) o†stÍøeniu 5..30% (uwaga - ør¹ce!). Emulsja poddana utrwalaniu wysokotemperaturowemu jest praktycznie nierozpuszczalna i†nadaje siÍ wy³¹cznie do usuniÍcia mechanicznego. Podsumowuj¹c wyniki amatorskiej fotolitografii, okreúli³bym je jako úwietny przyk³ad niewykorzystanych moøliwoúci. Jedynie nielicznym osobom uda³o siÍ uzyskaÊ wymiary úcieøek/separacji rzÍdu 5/5 mils. WiÍkszoúʆuøytkownikÛw uznaje za sukces powtarzalne wykonywanie p³ytek ze úcieøkami o†szerokoúci 10...12 mils. Fotolitografia z†natury rzeczy wymaga duøej starannoúci i†powtarzalnoúci parametrÛw, trudnych do uzyskania ad hoc poza laboratorium. Dodajmy przy tym, øe ca³y proces zajmuje kilka godzin, a†b³¹d pope³niony nawet na koÒcowym etapie wymaga powtÛrzenia ca³ej úcieøki od pocz¹tku. Wysokie wymagania i†pracoch³onnoúÊ metody fotochemicznej t³umacz¹ w†pewnym stopniu zainteresowanie, jakim ciesz¹ siÍ inne, konkurencyjne i†jednoczeúnie mniej wymagaj¹ce sposoby wytwarzania PCB. Termotransfer - folia TES-200 Ma³¹ rewolucjÍ w†dziedzinie amatorskich PCB wywo³a³o spostrzeøenie, øe polimerowy toner stosowany w†wiÍkszoúci drukarek laserowych wykazuje zadowalaj¹c¹ odpornoúÊ na dzia³anie popularnych k¹pieli trawi¹cych. Wykonanie maski ochronnej na laminacie polega na wydrukowaniu mozaiki úcieøek na specjalnej folii transferowej, a†nastÍpnie przeniesieniu na gor¹co (naprasowaniu - st¹d Elektronika Praktyczna 6/2003 N O T A T N I K P R A K T Y K A teø†pochodzi øartobliwa nazwa ìmetoda øelazkowaî) tonera z†wydruku na powierzchniÍ laminatu. Prasowanie moøe odbywaÊ siÍ rÛønymi metodami: np. przez przyk³adanie øelazka od gÛry do folii albo potraktowanie øelazka jako stolika podgrzewaj¹cego laminat i†wprasowywanie tonera od strony folii z†uøyciem tamponu lub gumowego wa³ka. Po ostudzeniu i†oderwaniu folii warstwa tonera powinna pozostaÊ na laminacie. Stosowany noúnik transferowy musi jednak spe³niaÊ dwa zasadnicze wymagania: - Folia nie moøe ulegaÊ deformacji w†temperaturze miÍkniÍcia tonera tzn. w†podczas utrwalania termicznego w†drukarce oraz przy przenoszeniu wydruku na p³ytkÍ. 60 - Toner musi wykazywaÊ wiÍksz¹ adhezjÍ do miedzi niø do folii, dziÍki czemu przy zrywaniu noúnika polimerowy nadruk pozostaje na powierzchni p³ytki. Folia transferowa dostÍpna w†Polsce nosi oznaczenie TES200. Uøytkownicy metody termotransferowej sugeruj¹ rÛwnieø wyprÛbowanie konkurencyjnych noúnikÛw - zwyk³ej folii do wydrukÛw laserowych oferowanej przez rÛønych producentÛw, a†takøe np. woskowanego papieru podk³adowego z†etykiet samoprzylepnych. Niestety w†praktyce, z†kilku powodÛw, trudno o†uzyskanie zadowalaj¹cych wynikÛw: - JakoúÊ wydruku laserowego na folii rÛøni siÍ niestety od jakoúci wydruku moøli- wego do uzyskania na papierze. W†niektÛrych typach drukarek toner ma tendencjÍ do niedok³adnego krycia p³aszczyzn i†gromadzenia siÍ na krawÍdziach úcieøek. - Punkt miÍkniÍcia folii leøy niewiele powyøej temperatury transferu tonera (wynosz¹cej ok. 150..160 oC). Nawet niewielkie przegrzanie moøe spowodowaÊ pop³yniÍcie folii i†zmianÍ wymiarÛw wydruku. Ponadto folia wykazuje sk³onnoúÊ do úlizgania siÍ na wa³kach prowadz¹cych w†drukarce, co moøe powodowaÊ skrÛcenie wydruku wzd³uø osi rÛwnoleg³ej do kierunku ruchu arkusza. - Krytycznym punktem tej metody jest sposÛb odrywa- nia folii. Wed³ug powszechnych zaleceÒ gor¹c¹ p³ytkÍ naleøy - przed oderwaniem folii - szybko sch³odziÊ przez w³oøenie do zamraøalnika. Niestety, jak wynika z†moich doúwiadczeÒ, na powierzchni zerwanej folii zawsze pozostaje czÍúÊ toneru - zazwyczaj w†postaci obrysu úcieøek, ale czasem takøe oddzielonych wiÍkszych fragmentÛw mozaiki. - Cena folii, plasuj¹ca siÍ w†okolicach 3†z³ za arkusz A4, nie sprzyja eksperymentom. Zw³aszcza øe niedok³adne wykonanie transferu oznacza zazwyczaj koniecznoúÊ siÍgniÍcia po nastÍpny arkusz. Marek Dzwonnik, AVT [email protected] Elektronika Praktyczna 6/2003 Girder − współpraca z nadajnikiem P R O RC5 J EAVT−5104 K T Y Girder − współpraca z nadajnikiem RC5 AVT−5104 W†EP3/2003 przedstawiliúmy projekt uniwersalnego nadajnika zdalnego sterowania pracuj¹cego w†systemach RC5 i†SIRC. O†tym, jak moøna go ìsprz¹cî z†popularnym Girderem, piszemy na ø¹danie CzytelnikÛw, ktÛrzy dostrzegli nowe pola aplikacyjne dla AVT-5104. Rekomendacje: artyku³ polecamy elektronikom-fanom PC, ktÛrzy chc¹ zwiÍkszyÊ moøliwoúci wspÛ³pracy komputera z†domowymi urz¹dzeniami multimedialnymi i†sprzÍtem AV. Elektronika Praktyczna 6/2003 Nadajnik AVT-5104 (fot. 1) wspÛ³pracuje z†komputerem poprzez port szeregowy. Do sterowania nim moøna wykorzystaÊ dowolny program terminalowy na przyk³ad HyperTerminal, bÍd¹cy standardowym wyposaøeniem Windows. Sterowanie nadajnikiem za pomoc¹ tego programu jest utrudnione, gdyø w†celu wys³ania jednego kodu naleøy wpisaÊ z†klawiatury w†zaleønoúci od systemu od piÍciu do siedmiu znakÛw. Dlatego taki sposÛb sterowania ogranicza siÍ do testowania urz¹dzeÒ pracuj¹cych w†tych systemach niø sterowania nimi za pomoc¹ klawiatury komputera. Moøna wprawdzie stworzyÊ w³asn¹ aplikacjÍ steruj¹c¹ nadajnikiem, lecz wymaga to umiejÍtnoúci tworzenia oprogramowania. Na szczÍúcie moøna znaleüÊ rozwi¹zanie tego problemu i†uzyskaÊ swobodÍ sterowania bez umiejÍtnoúci programowania. Rozwi¹zaniem jest wykorzystanie gotowych programÛw, g³Ûwnie umoøliwiaj¹cych zdaln¹ kontrolÍ nad komputerem. Przyk³adem takiego programu jest program Girder. Program ten w†podstawowej konfiguracji s³uøy do zdalnego sterowania komputerem. Za pomoc¹ tego programu moøna, na przyk³ad dowolnym pilotem, uruchomiÊ kaød¹ aplikacjÍ systemu Windows. Dodatkowo po uruchomieniu danego programu moøna zdalnie zmieniaÊ jego parametry. Funkcje te s¹ przydatne szczegÛlnie przy sterowaniu programami s³uø¹cymi do odtwarzania plikÛw audio. Moøna wtedy uøywaÊ komputera jako odtwarzacza CD lub MP3, kontroluj¹c si³Í g³osu czy wybieraj¹c numer piosenki za pomoc¹ pilota. Przedstawione powyøej funkcje to tylko niewielka czÍúÊ moøliwoúci programu Girder. Moøliwoúci programu mog¹ byÊ zwiÍk- szane poprzez instalowanie plikÛw plug-in, dziÍki ktÛrym moøliwe jest sterowanie programem poprzez klawiaturÍ czy port szeregowy. ChoÊ Girder s³uøy g³Ûwnie do zdalnej obs³ugi komputera, to dziÍki wspomnianym ìwtyczkomî programowym moøliwe jest takøe sterowanie komputerem do³¹czonych do niego urz¹dzeÒ. DziÍki temu za jego pomoc¹ moøna w†prosty sposÛb wysy³aÊ odpowiednie komendy do nadajnika RC5/SIRC. Dodatkowo program moøna tak skonfigurowaÊ, øe po wys³aniu komendy na monitorze pojawi siÍ wpisany wczeúniej komunikat, odpowiadaj¹cy wys³anej komendzie. Jak widaÊ, moøliwoúci tego programu s¹ ogromne i†mog¹ byÊ dowolnie powiÍkszane poprzez stosowanie odpowiednich ìwtyczekî, a†liczba i†rodzaj pe³nionych funkcji zaleøy od stworzonych algorytmÛw. W†zaleønoúci od wymaganego sposobu dzia³ania wpisywanie w³asnych funkcji moøe byÊ czasoch³onne, gdyø kaøde polecenie trzeba niezaleønie skonfigurowaÊ. To jednak jest zalet¹ tego programu, gdyø kaøde polecenie moøna dostosowaÊ do indywidualnych potrzeb. Najwaøniejsz¹ cech¹ Girdera jest fakt, øe jest on udostÍpniany bezp³atnie. Konfiguracja ìwtyczekî Poniewaø sam program nie umoøliwia wykonywania øadnych funkcji steruj¹cych, dlatego Fot. 1. Wygląd nadajnika AVT−5104 45 Girder − współpraca z nadajnikiem RC5 AVT−5104 Rys. 2. Wygląd okna Settings wszystkich reakcji na naciskane klawisze trzeba go nauczyÊ. Wczeúniej jednak do katalogu, w†ktÛrym znajduj¹ siÍ wszystkie pluginy naleøy skopiowaÊ dodatkowe ìwtyczkiî potrzebne do sterowania nadajnikiem zdalnego sterowania. Domyúlnie katalog ten znajduje siÍ na dysku - C:\Program files\girder32\plugins. NiezbÍdne ìwtyczkiî znajduj¹ siÍ na stronie domowej Girdera: http:// www.girder.nl/plugins.php. Do wspÛ³pracy z†nadajnikiem bÍd¹ potrzebne nastÍpuj¹ce ìwtyczkiî: - XP_OSD - umoøliwia wyúwietlanie komunikatÛw tekstowych na ekranie monitora, - Serial port - odpowiada za wysy³anie danych poprzez port szeregowy, dodatkowo za jej pomoc¹ moøna odczytywaÊ dane z†portu szeregowego, lecz w†tym zastosowaniu funkcja ta nie jest wykorzystywana, - Keyboard Ex - s³uøy do odczytywania komend wydawanych z†klawiatury komputera. Tab. 1. Przyporządkowanie klawiszy klawiatury do wykonywanych poleceń Klawisze Kod RC5 Kod SIRC Dzia³anie Alt+1 Alt+2 Alt+3 Alt+4 Alt+5 Alt+6 Alt+7 Alt+8 Alt+9 Alt+0 Alt++ Alt+Alt+* Alt+/ Alt+, R1001 R1002 R1003 R1004 R1005 R1006 R1007 R1008 R1009 R1000 R1032 R1033 R1016 R1017 R1012 S01000 S01001 S01002 S01003 S01004 S01005 S01006 S01007 S01008 S01009 S01016 S01017 S01018 S01019 S01047 Kana³ 1 Kana³ 2 Kana³ 3 Kana³ 4 Kana³ 5 Kana³ 6 Kana³ 7 Kana³ 8 Kana³ 9 Kana³ 0 Program+ ProgramG³os+ G³osW³¹cz/Wy³¹cz 46 Po skopiowaniu potrzebnych ìwtyczekî moøna przejúÊ do konfiguracji programu. W†tym celu naleøy wybraÊ menu ustawienia: File->Settings (wygl¹d okna przedstawiono na rys. 2), a†nastÍpnie User interface. W†pozycji Language wybieramy jÍzyk polski i†zatwierdzamy Apply. Od tej chwili wszystkie teksty bÍd¹ wyúwietlane po polsku, co u³atwi dalsz¹ zmianÍ parametrÛw. Teraz przechodzimy do instalowania potrzebnych ìwtyczekî, wybieraj¹c menu Wtyczki. Ze wszystkich dostÍpnych wtyczek naleøy wybraÊ trzy: XP_OSD, Keyboard driver oraz Generic Serial Support i†zaznaczyÊ opcjÍ Automatycznie w³¹cz urz¹dzenie wejúciowe (rys. 3). Pierwsze dwie ìwtyczkiî nie wymagaj¹ øadnych dodatkowych ustawieÒ, dlatego naleøy je tylko zaznaczyÊ. ìWtyczkaî obs³uguj¹ca port szeregowy wymaga ustawienia dodatkowych parametrÛw, dlatego po jej zaznaczeniu naleøy wybraÊ opcjÍ Ustawienia. W†nowo otwartym oknie naleøy wybraÊ New i†wtedy zostanie otwarte okno s³uø¹ce do konfiguracji portu szeregowego. Wszystkie parametry naleøy ustawiÊ tak, jak pokazano na rys. 4. Po ustawieniu odpowiednich wartoúci naleøy jeszcze wybraÊ w†menu Message Definitions opcjÍ Transmitt. Wtedy zostanie otwarte kolejne okno umoøliwiaj¹ce ustawienie dodatkowych parametrÛw transmisji szeregowej (rys. 5). W†oknie tym trzeba wybraÊ tylko opcjÍ Terminator, a†jako parametr wpisaÊ wartoúÊ 0d. Wpis ten spowoduje, øe na zakoÒczenie kaødej transmisji poprzez port szeregowy oprÛcz zadeklarowanych danych dodatkowo zostanie wys³ana wartoúÊ 0x0D, co odpowiada naciúniÍciu klawisza Enter. WartoúÊ ta jest interpretowana przez nadajnik zdalnego sterowania jako zatwierdzenie wczeúniej podanych wartoúci komendy, dlatego u³atwi to pÛüniejszy etap programowania komend. Powyøsze ustawienia moøna wyeksportowaÊ do pliku, w†ktÛrym zostan¹ zapisane wszystkie parametry transmisji i†w†przypadku dokonania zmian bÍdzie moøna przywrÛciÊ ustawione parametry, wczytuj¹c ten plik. Po ustawieniu parametrÛw naleøy zamkn¹Ê okna usta- Rys. 3. Wygląd okna instalowania wtyczek Rys. 4. Okno konfiguracji parametrów transmisji szeregowej wieÒ poprzez zatwierdzanie wszystkich ustawieÒ i†moøna przejúÊ do trybu programowania poleceÒ. Programowanie w³asnych poleceÒ Jako przyk³ad zostanie przedstawiona budowa aplikacji umoøliwiaj¹cej sterowanie odbiornikiem telewizyjnym firmy Sony, ktÛrego adres w†systemie zdalnego sterowania SIRC jest rÛwny 01, oraz tunerem satelitarnym pracuj¹cym w†systemie RC5 o†adresie urz¹dzenia rÛwnym 10. Budowana aplikacja bÍdzie umoøliwia³a wysy³anie kodÛw klawiszy numerycznych 0...9, Program+, Program-, G³os+, G³os- oraz w³¹czanie. W†tab. 1 przedstawiono spis klawiszy klawiatury komputera przyporz¹dkowanych pe³nionej funkcji, kody wysy³ane do nadajnika zdalnego sterowania RC5/ SIRC oraz odpowiedü urz¹dzenia na wys³any kod. Do realizacji wszystkich funkcji zosta³a wykorzystana czÍúÊ numeryczna klawiatury komputera, jednak konfiguracja klawiszy moøe byÊ dowolnie zmieniana wed³ug w³asnych potrzeb. Jako klawisze steruj¹ce mog¹ byÊ rÛwnieø uøyte klawisze Elektronika Praktyczna 6/2003 Girder − współpraca z nadajnikiem RC5 AVT−5104 Rys. 5. Wygląd okna dodatkowych opcji transmisji szeregowej funkcyjne F1...F12 oraz inne klawisze dostÍpne w†przypadku klawiatur multimedialnych. Aby rozpocz¹Ê budowÍ oprogramowania, naleøy przejúÊ do g³Ûwnego okienka programu i†w†menu Plik wybraÊ opcjÍ Nowy, a†nastÍpnie Zapisz jako..., podaj¹c nazwÍ pliku, w†ktÛrym zostan¹ zapisane wszystkie parametry programowanych funkcji (na przyk³ad Nadajnik RC5_SIRC) i†moøna przejúÊ do sk³adania ìklockÛwî. Na rys. 6 przedstawiono przyporz¹dkowanie wszystkich poleceÒ. Menu dodawania funkcji otwiera siÍ po klikniÍciu prawym klawiszem myszki na bia³ym polu. W†menu tym znajduje siÍ kilkanaúcie dzia³aÒ do wykonania, jednak na tym etapie tworzenia wykorzystywana bÍdzie tylko druga grupa. Na pocz¹tku naleøy utworzyÊ trzy nowe aplikacje funkcj¹ Dodaj aplikacjÍ i†odpowiednio je nazwaÊ (np. tak jak na rysunku). W†kaødej aplikacji naleøy utworzyÊ makro poleceniem Dodaj makro. Liczba makr jest uzaleøniona od liczby wykonywanych funkcji przez nadajnik zdalnego sterowania. W†kaødym makro zawieraj¹ siÍ juø konkretne dzia³ania, ktÛre bÍd¹ wykonane, jeúli zostanie odebrany kod zdarzenia zgodny z†wczeúniej zaprogramowanym. Proces ustawiania parametrÛw rozpoczniemy od aplikacji Tuner_RC5. W†aplikacji tej naleøy utworzyÊ odpowiedni¹ liczbÍ makr, nazywaj¹c je tak jak na rys. 6. W†pierwszym makro - Prog1 tworzymy dwa polecenia (Dodaj polecenie) oraz jeden kod zdarzenia. NastÍpnie zaznaczamy kod zdarzenia i†naciskamy polecenie Elektronika Praktyczna 6/2003 Wczytaj kod. Po tym dzia³aniu program oczekuje na naciúniÍcie klawisza klawiatury, ktÛrego pÛüniejsze naciúniÍcie spowoduje wys³anie nadajnikiem zdalnego sterowania kodu o†wartoúci ì1î, zgodnie z†tab. 1. W†tym przyk³adzie s¹ to klawisze Alt+1. Teraz naleøy ustawiÊ parametry poleceÒ. Zaczynamy od polecenia o†nazwie ì1î, ktÛre s³uøy do wys³ania poprzez port szeregowy odpowiedniej sekwencji danych, aby tuner odebra³ je jako naciúniÍcie klawisza o†numerze ì1î na klawiaturze standardowego pilota. Po zaznaczeniu tego polecenia bÍdzie moøliwy wybÛr rodzaju dzia³ania. Dla tego polecenia wybieramy menu Wtyczki, nastÍpnie zaznaczamy ìwtyczkÍî Generic Serial Suport i†wybieramy opcje ustawieÒ. Wtedy zostanie otwarte okno przedstawione na rys. 7, w†ktÛrym naleøy wybraÊ opcjÍ Send data, a†jako parametr wpisaÊ kod, jaki ma byÊ wys³any do nadajnika RC5/SIRC poprzez port szeregowy. Dla ustawienia kana³u numer 1, naleøy wpisaÊ sekwencjÍ r1001 (zgodnie z†tab. 1). Nadajnik zdalnego sterowania wymaga potwierdzenia klawiszem Enter podanej sekwencji, ale potwierdzenie jest wykonywane automatycznie, gdyø zosta³o wczeúniej wpisane przy ustawianiu parametrÛw portu szeregowego. Teraz moøna zamkn¹Ê to okno, zatwierdzaj¹c dane przyciskiem OK. Na tym etapie zosta³o stworzone polecenie, ktÛre po naciúniÍciu przyciskÛw Alt+1 wysy³a poprzez port szeregowy sekwencjÍ danych r1001+enter. Aby wyúwietliÊ na ekranie komputera informacjÍ o†wys³anej komendzie, naleøy przejúÊ do w³aúciwoúci polecenia Wyúwietl 1. Ustawianie parametrÛw tego polecenia wykonuje siÍ w†analogiczny sposÛb, wybieraj¹c w†opcjach ìwtyczkÍî XP OSD i†wchodz¹c w†opcjÍ Ustawienia. Widok okna konfiguracyjnego wyúwietlanych komunikatÛw przedstawiono na rys. 8. W†oknie OSD Text naleøy wpisaÊ tekst, ktÛry ma byÊ wyúwietlony po wys³aniu komendy przez nadajnik zdalnego sterowania, w†tym przypadku jest to cyfra ì1î. SposÛb prezentowania komunikatÛw jest ustalany indywidualnie i†moøna ustawiÊ czas wyúwietlania komunikatu, rodzaj oraz wielkoúÊ czcionki, napis moøe byÊ wyúwietlany na wybranym kolorze t³a lub bez t³a. Dodatkowo moøna ustawiÊ przezroczystoúÊ wyúwietlanego komunikatu. W†oknie Size&Position (rys. 9) moøna ustaliÊ rozmiar okna wyúwietlanych komunikatÛw oraz ich pozycjÍ na ekranie. PozycjÍ moøna ustaliÊ na trzy sposoby: - wybieraj¹c z†menu jedn¹ ze skrajnych pozycji ekranu lub úrodek, - poprzez podanie wspÛ³rzÍdnych na osi X†i†Y, - poprzez przeci¹gniÍcie myszk¹ okna komunikatu w†ø¹dane miejsce ekranu. W†okienku Background Image moøna wczytaÊ plik obrazu, ktÛry bÍdzie t³em wyúwietlanych komunikatÛw. Okno Animation umoøliwia ustalenie efektÛw przy otwieraniu i†zamykaniu okna wyúwietlanych komunikatÛw. Po ustawieniu wszystkich parametrÛw zosta³o stworzone makro, ktÛre w†wyniku naciúniÍcia klawiszy Alt+1 spowoduje wys³anie danych przez port szeregowy do nadajnika RC5/SIRC, ktÛry z†kolei wyúle odpowiedni¹ komendÍ úwietln¹ do tunera, aby Rys. 6. Struktura tworzonych poleceń Rys. 7. Okno wpisywania komendy wysyłanej przez port szeregowy 47 Girder − współpraca z nadajnikiem RC5 AVT−5104 Rys. 8. Okno ustawiania parametrów wyświetlanych komunikatów ten ustawi³ kana³ o†numerze ì1î. RÛwnoczeúnie na ekranie monitora zostanie wyúwietlony komunikat w†postaci cyfry ì1î informuj¹cy o†tym fakcie (rys. 10). Dla pozosta³ych programÛw i†funkcji trzeba powtÛrzyÊ powyøsze kroki, wpisuj¹c dane odczytywane z†tab. 1. W†celu sterowania odbiornikiem telewizyjnym w†systemie SIRC rÛwnieø naleøy wprowadziÊ wszystkie komendy, zmieniaj¹c parametry wysy³anych danych przez port szeregowy, zgodnie z†tab. 1. W†ten sposÛb zastan¹ stworzone dwie grupy s³uø¹ce do sterowania tunerem w†systemie RC5 i†telewizorem w†systemie SIRC. W†obu grupach uøyto tych samych klawiszy klawiatury, przez co po naciúniÍciu Rys. 9. Okno konfiguracji pozycji wyświetlanych komunikatów 48 klawisza dane bÍd¹ wysy³ane najpierw w†systemie RC5, a†nastÍpnie SIRC. Aby zapobiec takiej sytuacji, poszczegÛlne grupy moøna aktywowaÊ lub dezaktywowaÊ. Aktywowanie grupy odbywa siÍ poprzez jej zaznaczenie myszk¹ w†g³Ûwnym oknie programu (rys. 6) i†zaznaczenie opcji W³¹czony. Wy³¹czanie danej grupy wykonuje siÍ w†analogiczny sposÛb. Prze³¹czaj¹c grupy, moøna wysy³aÊ dane niezaleønie do tunera lub telewizora za pomoc¹ tych samych klawiszy. Taki sposÛb prze³¹czania jest niewygodny, gdyø przy kaødej zmianie systemu nadawania trzeba uruchamiaÊ okno programu Girder. Aby zautomatyzowaÊ prze³¹czanie pomiÍdzy grupami, naleøy stworzyÊ dodatkow¹ aplikacjÍ zarz¹dzaj¹c¹ grupami. Zarz¹dzanie grupami Rys. 10. Przykład wyświetlania na ekranie monitora tekstu przypisanego poleceniu Ostatni¹ komend¹ jest komenda wy³¹czaj¹ca obydwie grupy, przez co niezaleønie od stanu klawiatury komputera øadne dane nie zostan¹ wys³ane do nadajnika RC5/SIRC. W†sk³ad tej komendy wchodz¹ polecenia: 3_Wyúwietl_OFF, 3_SIRC_OFF, 3_RC5_OFF. PoszczegÛlne komendy s¹ konfigurowane w†analogiczny sposÛb, jak to mia³o miejsce w†przypadku komend dla grupy Tuner_RC5. Odpowiednio dla komendy 1_Wyúwietl_RC5 naleøy wybraÊ ìwtyczkÍî XP OSD i†wpisaÊ komunikat, jaki ma byÊ wyúwietlony. W†tym przypadku bÍdzie to tekst RC5. Dla komendy 2_Wyswietl_SIRC tekst bÍdzie mia³ postaÊ SIRC, a†dla komendy 3_Wyúwietl_OFF - OFF. Polecenie 1_SIRC_OFF s³uøy do dezaktywacji grupy Telewizor_SIRC, dlatego po jego zaznaczeniu zamiast okna Wtyczki naleøy wybraÊ okno Girder (rys. 12). Z†menu okna Girder naleøy wybraÊ opcjÍ Wy³¹cz grupÍ, a†nastÍpnie Przegl¹daj. Wtedy zostanie wyúwietlone nowe okno, w†ktÛrym moøna wybraÊ grupÍ, ktÛra bÍdzie wy³¹czana tym poleceniem - w†tym przypadku jest to grupa Telewizor_SIRC. NastÍpnie naleøy zatwierdziÊ wybÛr poleceniem Zastosuj. Dla kolejnego polecenia - 1_RC5_ON procedurÍ naleøy wykonaÊ w†taki sam spo- Do zarz¹dzanie grupami zosta³a stworzona aplikacja o†nazwie Sterowanie_IR. Aplikacja ta umoøliwia za pomoc¹ jednego klawisza wykonaÊ nastÍpuj¹ce dzia³ania: uaktywniÊ nadawanie w†systemie RC5 (Tuner_RC5), uaktywniÊ nadawanie w†systemie SIRC (Telewizor_SIRC) oraz ca³kowicie wy³¹czyÊ jakiekolwiek nadawanie. Komendy zawarte w†tej aplikacji przedstawiono na rys. 11. Wszystkie polecenia podzielone s¹ na trzy g³Ûwne komendy, w†kaødej z†nich zgrupowane s¹ po trzy podstawowe polecenia. Pierwsza komenda g³Ûwna s³uøy do uaktywnienia grupy Tuner_RC5 umoøliwiaj¹cej sterowanie tunerem satelitarnym i†jednoczesn¹ dezaktywacjÍ grupy Telewizor_SIRC, aby w†danym czasie by³a aktywna tylko jedna grupa. Dodatkowo na ekranie zostanie wyúwietlony komunikat, øe system pracuje jako nadajnik RC5. W†sk³ad tej komendy wchodz¹ polecenia: 1_Wyúwietl_RC5, 1_SIRC_OFF , 1_RC5_ON. Druga g³Ûwna komenda s³uøy do wy³¹czenia grupy Tuner_RC5, w³¹czenia grupy Telewizor_SIRC i†wyúwietlenia informacji o†nadawaniu w†systemie SIRC. W†sk³ad tej komendy wchodz¹ polecenia: 2_Wyswietl_SIRC , Rys. 11. Aplikacja służąca do zarządzania 2_RC5_OFF, 2_SIRC_ON. grupami Elektronika Praktyczna 6/2003 Girder − współpraca z nadajnikiem RC5 AVT−5104 Rys. 12. Wygląd głównego okna Girdera z przeglądarką poleceń sÛb, z†t¹ rÛønic¹, øe w†oknie Girder naleøy wybraÊ opcjÍ W³¹cz grupÍ i†wskazaÊ grupÍ Tuner_RC5. Dla pozosta³ych poleceÒ naleøy wykonaÊ takie same operacje, w³¹czaj¹c lub wy³¹czaj¹c wskazan¹ w†nazwie polecenia grupÍ. Po wskazaniu dzia³aÒ wykonywanych przez poszczegÛlne polecenia naleøy wczytaÊ kod zdarzenia. Kod ten jest taki sam dla wszystkich poleceÒ ca³ej aplikacji, dla tego przyk³adu jest to klawisz klawiatury o†nazwie Pause/Break. W†podstawowej konfiguracji naciúniÍcie tego klawisza spowoduje wykonanie wszystkich poleceÒ zawartych w†makro ON_OFF, ale w†przedstawionym przyk³adzie polecenia maj¹ byÊ wykonywane kolejno, po kaødym naciúniÍciu klawisza. Po pierwszym naciúniÍciu powinny byÊ wykonane pierwsze trzy polecenia (w³¹czenie grupy Tuner_RC5), po drugim naciúniÍciu nastÍpne trzy (w³¹czenie grupy Telewizor_SIRC), a†po trzecim naciúniÍciu ostatnie trzy (wy³¹czenie obydwu grup). Do realizacji kilku rÛønych poleceÒ za pomoc¹ jednego klawisza trzeba wykorzystaÊ funkcjÍ Ustawienia stanÛw. Funkcja ta umoøliwia uruchomienie licznika, ktÛry bÍdzie zlicza³ iloúÊ naciúniÍÊ tego klawisza i†w†zaleønoúci od jego wartoúci bÍd¹ wykonywane odpowiednie polecenia. Ustawienia stanÛw trzeba wykonaÊ dla wszystkich poleceÒ tego makra. Menu ustawiania stanÛw otwiera siÍ poprzez klikniÍcie prawym klawiszem myszki na wybranym poleceniu, jest to to samo menu, ktÛre by³o uøywane do tworzenia nowych poleceÒ, lecz tym razem naleøy wybraÊ opcjÍ Ustawiania stanÛw. Nowo otwarte okno pozwoli na ustalenie wartoúci licznika stanÛw odpowiednio dla kaødego polecenia, widok tego okienka przedstawiono na rys. 13. Dla wszystkich poleceÒ licznik stanÛw naleøy ustawiÊ na wartoúÊ rÛwn¹ trzy, poniewaø maj¹ byÊ rozrÛøniane trzy stany w†zaleønoúci od liczby naciúniÍÊ klawisza Pause/Break. O†tym, ktÛre polecenie bÍdzie wykonane, decyduje wartoúÊ stanu pocz¹tkowego. Dla poleceÒ: 1_Wyúwietl_RC5, 1_SIRC_OFF i†1_RC5_ON wartoúÊ pocz¹tkow¹ naleøy ustawiÊ na ì1î. Dla poleceÒ: 2_Wyúwietl_SIRC, 2_RC5_OFF, 2_SIRC_ON stan pocz¹tkowy wynosi ì2î. Dla poleceÒ: 3_Wyúwietl_OFF, 3_SIRC_OFF, 3_RC5_OFF stan ten naleøy ustawiÊ na ì3î. Rys. 13. Okno konfiguracji licznika stanów Elektronika Praktyczna 6/2003 W†ten sposÛb zosta³a stworzona funkcja, ktÛra po pierwszym naciúniÍciu klawisza Pause/Break uaktywni grupÍ Tuner_RC5 i†wyúwietli komunikat RC5, po drugim naciúniÍciu klawisza zostanie uaktywniona grupa Telewizor_SIRC i†wyúwietli komunikat SIRC. NaciúniÍcie klawisza po raz trzeci spowoduje wy³¹czenie obydwu grup i†nie bÍdzie moøna wys³aÊ øadnego kodu. Ponowne naciúniÍcie klawisza rozpocznie procedurÍ od pocz¹tku, aktywuj¹c grupÍ Tuner_RC5. Po zaprogramowaniu parametrÛw wszystkich komend naleøy jeszcze przeprowadziÊ koÒcow¹ konfiguracjÍ programu, aby po uruchomieniu systemu Windows by³ gotowy do pracy. W†tym celu naleøy otworzyÊ okno: Plik->Ustawienia->OgÛlny (rys. 14). W†okienku tym naleøy zaznaczyÊ opcjÍ Wczytaj przy starcie i†podaÊ úcieøkÍ dostÍpu do stworzonego pliku Nadajnik_RC5_SIRC.GML spowoduje to, øe podczas uruchamiania program Girder bÍdzie automatycznie wczytywa³ plik z†zapisanymi parametrami umoøliwiaj¹cymi sterowanie nadajnikiem zdalnego sterowania. NastÍpnie naleøy zaznaczyÊ opcjÍ Ukryj przy starcie. Powoduje to zamykanie okna programu po jego starcie i†pojawienie siÍ ikony na pasku zadaÒ. Dodatkowo moøna zaznaczyÊ opcjÍ Pokaø logo programu przy starcie, co bÍdzie powodowa³o wyúwietlenie okienka informacyjnego przy uruchamianiu systemu Windows. Wprowadzenie tych ustawieÒ koÒczy proces tworzenia aplikacji steruj¹cej nadajnikiem zdalnego sterowania. Procedura tworzenia poleceÒ na pierwszy rzut oka wydaje siÍ Rys. 14. Okno konfiguracji parametrów startowych Girdera 49 Girder − współpraca z nadajnikiem RC5 AVT−5104 Uwaga! Działanie programu było testowane w systemie operacyjnym Windows XP i prawidłowa praca w innych systemach nie jest gwarantowana. Przystosowa− nie programu do pracy w innych wersjach systemu Windows może wymagać zastosowania innych plików− wtyczek. doúÊ skomplikowana, jednak po stworzeniu kilku poleceÒ i†zapoznaniu siÍ z†moøliwoúciami programu okazuje siÍ, øe mozolne deklarowanie kaødego polecenia moøna zautomatyzowaÊ, dziÍki moøliwoúci swobodnego kopiowania i†przemieszczania poleceÒ. W†przypadku stworzonej w†przyk³adzie aplikacji wszystkie makropolecenia i†polecenia moøna wykonaÊ tylko dla pierwszej grupy, a†nastÍpnie skopiowaÊ je do dru- 50 giej i†zmieniÊ jedynie wysy³ane komendy poprzez port szeregowy. Dodatkowo dla kaødego polecenia moøna ustawiÊ parametry wyúwietlania komunikatu, jego wielkoúci czy pozycji na ekranie. Jak widaÊ, program daje niemal nieskoÒczone moøliwoúci tworzenia poleceÒ, ktÛrych dzia³anie jest ograniczone jedynie wyobraüni¹ uøytkownika. Dodatkow¹ zalet¹ programu jest fakt, øe pracuje ìw†tleî, przez co nie trzeba otwieraÊ okna w†celu wys³ania ø¹danej komendy, poniewaø jest ona wysy³ana po wykryciu wczeúniej zapisanej sekwencji klawiszy niezaleønie od aktualnie uruchomionej aplikacji systemu Windows. Daje to moøliwoúÊ szybkiego wykonania ø¹danej komendy, w†przedstawionym zastosowaniu moøna bardzo sprawnie sterowaÊ urz¹dzeniami, bez koniecznoúci odrywania oczu od monitora, a†informacja tekstowa wyúwietlona na ekranie monitora znacznie zwiÍksza komfort uøytkowania nadajnika RC/SIRC. Krzysztof P³awsiuk [email protected] W†przedstawionym opisie zosta³y uøyte nastÍpuj¹ce aplikacje: 1. Program: Girder wersja 3.2.9 (http://www.girder.nl/downloadn.php)- autor Ron Bessems 2. Wtyczka: ìKeyboard_Exî wersja 2.2 (http://www.girder.nl/ plugins.php) - autor Mario Ivankovits 3. Wtyczka ìXP_OSDî wersja 1.3 (http://www.girder.nl/plugins.php) - autor Steven Vibert 4. Wtyczka ìSerial portî wersja 3.0.10 (http://www.girder.nl/ plugins.php) - autor Mark Fiechtner Pliki stworzone w†przyk³adzie Nadajnik_RC5_SIRC.GML i†Nadajnik_RC5_SIRC.ini s¹ dostÍpne na stronie internetowej EP. Elektronika Praktyczna 6/2003 P R O„Klocki” J E K RS485 T Y „Klocki” RS485, część 1 Magistrala i†interfejs RS485 ciesz¹ siÍ nies³abn¹c¹ popularnoúci¹, a†jak wykazuj¹ czÍste pytania docieraj¹ce do redakcji, jest ci¹gle zbyt ma³o informacji na ich temat. W†zwi¹zku z†tym przedstawiamy ìklockiî RS485, dziÍki ktÛrym - na interesuj¹cych przyk³adach ³atwo bÍdzie poznaÊ i†zrozumieÊ prawa rz¹dz¹ce RS485. Rekomendacje: zabawÍ w†ìklockiî RS485 polecamy szczegÛlnie tym Czytelnikom, ktÛrzy zajmuj¹ siÍ przesy³aniem danych na duøe odleg³oúci z†relatywnie duø¹ prÍdkoúci¹. „Klocki” RS485 to: - AVT-530 - konwerter RS232<->RS485, AVT-531 - karta przekaników, AVT-532 - karta triaków, AVT-533 - karta wyjæ cyfrowych (aktywne GND), AVT-534 - karta wyjæ cyfrowych (aktywne VCC), AVT-535 - karta wejæ cyfrowych, AVT-536 - 8-wejciowa karta wejæ analogowych, AVT-537 - 4-cyfrowy wywietlacz LED, AVT-538 - 32-znakowy wywietlacz LCD. Tab. 1. Adresy przyjęte dla modułów z interfejsem RS485 L.p. Rodzaj modu³u wykonawczego Przypisany adres (znak ASCII) 1 2 3 1 2 3 4 5 6 7 8 Karta przekaników Karta triaków Karta wyjæ cyfrowych - stan aktywny GND(0,5A) Karta wyjæ cyfrowych - stan aktywny VCC(0,5A) Karta wejæ cyfrowych Karta wejæ analogowych Wywietlacz LED (czterocyfrowy) Wywietlacz LCD (2x16 znaków) 4 5 6 7 8 Elektronika Praktyczna 6/2003 W†artykule przedstawiamy system wymiany danych pomiÍdzy rÛønorodnymi urz¹dzeniami (m.in. karta przekaünikÛw, modu³y wyúwietlaczy, karty wejúÊ analogowych i†cyfrowych itp.) wyposaøonymi w†interfejs RS485. Ca³y†system w†podstawowej wersji sk³ada siÍ z†jednego modu³u steruj¹cego i†oúmiu modu³Ûw wykonawczych (schemat blokowy przedstawiono na rys. 1). System przeznaczony jest g³Ûwnie do sterowania za pomoc¹ komputera wyposaøonego w†port szeregowy, ale moøna rÛwnieø zastosowaÊ mikrokontroler. Komunikacja pomiÍdzy modu³ami odbywa siÍ w†systemie RS485, co umoøliwia zbudowanie sieci o†maksymalnej d³ugoúci do 1200 m. Zmiana systemu transmisji jest konieczna, gdyø przesy³ danych w†standardzie RS232 jest moøliwy na odleg³oúÊ zaledwie kilkunastu metrÛw, co ogranicza³oby rozmieszczenie modu³Ûw tylko do jednego pomieszczenia. Komunikacja pomiÍdzy komputerem nadrzÍdnym odbywa siÍ z†prÍdkoúci¹ 1200 b†w†trybie halfduplex, co oznacza, øe w†tym samym czasie komunikacja moøe byÊ przeprowadzana tylko w†jedn¹ stronÍ. W†przestawionym systemie taki sposÛb komunikacji jest zupe³nie wystarczaj¹cy, gdyø wszystkie modu³y w†czasie spoczynku znajduj¹ siÍ w†trybie odbioru danych i†dopiero podanie poprawnej komendy dla konkretnego modu³u wykonawczego przez modu³ steruj¹cy moøe uaktywniÊ wybrany modu³ do nadawania, co eliminuje moøliwoúÊ powstania konfliktÛw w†przypadku jednoczesnego wysy³ania danych przez kilka modu³Ûw. Wszystkie modu³y s¹ pod³¹czone do wspÛlnej magistrali dwuprzewodowej, a†sterowanie odbywa siÍ poprzez podanie przez modu³ nadrzÍdny znaku pocz¹tku transmisji oraz adresu modu³u, do ktÛrego bÍd¹ wysy³ane dane. Kaødy modu³ posiada inny adres i†jego podanie powoduje, øe pozosta³e modu³y ignoruj¹ pojawiaj¹ce siÍ dane na linii transmisyjnej. System zdalnego sterowania w†podstawowej konfiguracji sk³ada siÍ z oúmiu modu³Ûw wykonawczych: oúmiobitowej karty przekaünikÛw, oúmiobitowej karty triakÛw, oúmiobitowej karty wyjúÊ cyfrowych (aktywne GND), oúmiobitowej karty wyjúÊ cyfrowych (aktywne VCC), oúmiobitowej karty wejúÊ cyfrowych, oúmiowejúciowej karty wejúÊ analogowych, czterocyfrowego wyúwietlacza LED, 32-znakowego wyúwietlacza LCD. WybÛr konkretnego modu³u wykonawczego dokonuje siÍ przez podanie jego adresu. W†zaprogramowanych modu³ach s¹ to adresy odpowiadaj¹ce cyfrom 1...8. W†tab. 1 s¹ przedstawione numery przypisane do odpowiednich modu³Ûw. System sterowania moøe zawieraÊ od jednego do 31 modu³Ûw wykonawczych. W†przypadku do³¹czenia kilku takich samych modu³Ûw powsta³by konflikt, gdyø wszystkie reagowa³yby jednoczeúnie (maj¹ jednakowy adres). Aby unikn¹Ê takiej sytuacji i†uzyskaÊ 41 „Klocki” RS485 Rys. 1. Schemat blokowy systemu zdalnego sterowania moøliwoúÊ do³¹czenia dowolnej liczby takich samych modu³Ûw, wszystkie modu³y maj¹ moøliwoúÊ zmiany adresu. Zmiany adresu dokonuje siÍ poprzez komputer steruj¹cy, a†adres ten moøe byÊ dowolnym znakiem ASCII. TransmisjÍ danych oparto na standardowych znakach ASCII, przez co do obs³ugi systemu nie trzeba stosowaÊ dodatkowego oprogramowania. Do komunikacji wystarczy dowolny komputer wyposaøony w†port szeregowy, jako aplikacjÍ steruj¹c¹ moøna zastosowaÊ dowolny program terminalowy (Terminal dla DOS, HyperTerminal pod Windows lub inny). Przedstawiony opis sposobu komunikacji moøe byÊ wykorzystany do stworzenia w³asnej aplikacji steruj¹cej modu³ami. Transmisja nie jest zabezpieczona przed b³Ídami, gdyø iloúÊ transmitowanych danych nie jest wielka, co przy wolnej transmisji dodatkowo ogranicza moøliwoúÊ powstania b³ÍdÛw. Aby mieÊ pewnoúÊ, øe wys³ane dane dotar³y odpowiednio do uk³adÛw wykonawczych, kaødy z†nich umoøliwia odczyt wczeúniej zapisanych danych, dziÍki czemu jest moøliwa ich weryfikacja przez komputer steruj¹cy. Ponadto w†kaødej chwili moøna sprawdziÊ stan wejúÊ lub wyjúÊ dowolnego modu³u i†upewniÊ siÍ, øe wydana komenda zosta³a wykonana. Konwerter RS232<->RS485 AVT-530 Konwerter RS232<->RS485 s³uøy do zamiany poziomÛw napiÍÊ odpowiadaj¹cych odpowiednim standardom. W†konwerterze tym napiÍcia charakterystyczne dla RS232 (-3...-15V dla zera logicznego i†+3...+15V dla jedynki logicznej) s¹ zamieniane na poziomy mieszcz¹ce siÍ w†standardzie TTL (0...0,8V dla zera logicznego i†2,4...5V dla jedynki logicznej). NastÍpnie poziomy TTL s¹ zamieniane na poziomy akceptowane przez RS485. W†systemie tym stan logiczny jest okreúlany na podstawie napiÍcia rÛønicowego pomiÍdzy liniami A†i†B. Jeúli napiÍcie na linii A†jest wiÍksze od napiÍcia na linii B†o†co najmniej 0,2 V, to jest to stan logicznej jedynki, jeúli natomiast na linii B†jest napiÍcie wiÍksze o†co najmniej 0,2 V†niø na linii A, to jest to stan zera logicznego. Konwerter dodatkowo posiada automatyczny prze³¹cznik pomiÍdzy nadawaniem i†odbiorem, ktÛry prze³¹cza konwerter w†tryb nadawania tylko na czas nadawania znaku przez komputer, a†nastÍpnie prze³¹cza go w†tryb odbioru, aby nie zajmowa³ niepotrzebnie linii komunikacyjnych. Opis uk³adu Schemat elektryczny konwertera RS232<->RS485 przedstawiono na rys. 2. Ze wzglÍdu na sposÛb transmisji zgodnej czasowo z†interfejsem RS232, przedstawiony konwerter stanowi uk³ad dopasowuj¹cy poziomy napiÍÊ odpowiadaj¹ce odpowiednim rodzajom transmisji. Do zamiany poziomÛw Rys. 2. Schemat elektryczny 42 Elektronika Praktyczna 6/2003 „Klocki” RS485 Rys. 3. Budowa wewnętrzna układu MAX485 napiÍÊ od strony portu szeregowego RS232 zastosowano uk³ad US1. Zawiera on przetwornicÍ napiÍcia, zamieniaj¹c¹ wejúciowe poziomy napiÍcia w†standardzie TTL (0...5 V) na napiÍcia wymagane przez port szeregowy: -10 V i†+10 V. Dodatkowo sygna³y podawane ze z³¹cza komputera (-15 V, +15 V†s¹ przetwarzane na poziomy TTL (0/5 V). Po przetworzeniu napiÍÊ, na wyjúciu uk³adu US1 otrzymuje siÍ poziomy TTL, ktÛre nastÍpnie naleøy przetworzyÊ na poziomy standardu RS485 (UA+UB>0,2 V, UAUB>0,2 V). Do tego celu zastosowano specjalizowany uk³ad MAX485. Jego budowÍ wewnÍtrzn¹ przedstawiono na rys. 3. Uk³ad ten jest przystosowany do pracy w†trybie half-duplex. Zawiera on w†swojej strukturze odbiornik i†nadajnik linii. Wyjúcie nadajnika jest po³¹czone z†wypro- Rys. 4. Rozmieszczenie elementów na płytce konwertera RS232<−>RS485 Elektronika Praktyczna 6/2003 wadzeniami uk³adu scalonego i†jednoczeúnie z†wejúciem odbiornika linii, przez co kierunek transmisji jest okreúlany przez stan wejúÊ DE - dla nadajnika i†!RE - dla odbiornika. W†przedstawionym uk³adzie wejúcia te s¹ po³¹czone ze sob¹, co powoduje, øe†podanie stanu niskiego prze³¹cza uk³ad MAX485 w†tryb odbioru, a†podanie stanu wysokiego umoøliwia nadawanie. Aby nie ìblokowaÊî linii, w†czasie spoczynku, gdy wszystkie uk³ady do³¹czone do linii s¹ w†trybie odbioru - panuj¹ na niej stany nieustalone, ktÛre mog¹ byÊ b³Ídnie interpretowane przez odbiorniki. Aby zapobiec takiej sytuacji, linia przesy³owa jest wstÍpnie ustawiana w†stan jedynki logicznej przez rezystory R2...R4. Aby nie by³o potrzebne oprogramowanie steruj¹ce trybem pracy uk³adu MAX485, zastosowano automatyczny prze³¹cznik trybu pracy. Prze³¹cznik ten zosta³ zrealizowany na uk³adzie NE555 (US4). Pracuje on w†trybie przerzutnika monostabilnego, wyzwalanego sygna³em danych odbieranych z†portu szeregowego. Pojawienie siÍ stanu niskiego na wyjúciu R1OUT uk³adu US1 (np. bit startu) powoduje wyzwolenie monowibratora. Dioda D2 powoduje szybsze roz³adowanie pojemnoúci kondensatora C5 i†natychmiastow¹ reakcjÍ uk³adu NE555 na sygna³ wejúciowy. W†momencie wykrycia bitu startu, na wyjúciu OUT uk³adu US4 pojawia siÍ stan wysoki, ktÛry prze³¹cza uk³ad MAX485 w†tryb nadawania i†umoøliwia wys³anie danych. Po wys³aniu odpowiedniego bitu nastÍpuje automatyczne prze³¹czenie uk³adu MAX485 w†tryb odbioru. Takie sterowanie trybem pracy umoøliwia zwolnienie linii juø w†oko³o 40 µs po zakoÒczeniu wysy³ania danych, co jest istotne w†przypadku odczytu danych z†do³¹czonych modu³Ûw. Po wydaniu komendy odczytu do modu³u wykonawczego odpowiedü jest wysy³ana przez niego juø po oko³o 100 µs. Do zasilania zastosowano monolityczny stabilizator typu LM7805. Kondensatory C1...C4 filtruj¹ napiÍcie zasilania, a†dioda D1 zapobiega uszkodzeniu US3 w†przypadku pod³¹czenia napiÍcia o†odwrotnej polaryzacji. WYKAZ ELEMENTÓW Rezystory R1: 3,9kΩ R2, R4: 510Ω R3: 120Ω Kondensatory C1, C3: 100µF/16V C2, C4, C12: 100nF C5, C6: 10nF C7...C10: 10mF/16V C11: 47mF/16V Półprzewodniki D1: 1N4007 D2: BAT43 US1: MAX232 US2: MAX485 US3: LM7805 US4: NE555 Różne CON1: ARK2(5mm) CON2: DB9 żeńskie do druku kątowe CON3: ARK2(5mm) Podstawki DIP8−2 szt., DIP16−1 szt. Montaø Montaø naleøy rozpocz¹Ê od elementÛw o†najmniejszych gabarytach, czyli od rezystorÛw, nastÍpnie diod. W†kolejnej fazie naleøy wlutowaÊ podstawki pod uk³ady scalone, nastÍpnie kondensatory, stabilizator napiÍcia i†z³¹cza CON1...CON3. P³ytka konwertera nie wymaga uruchamiania, a†prawid³owoúÊ jej dzia³ania bÍdzie moøna sprawdziÊ dopiero po do³¹czeniu modu³u wykonawczego. Naleøy†jedynie przygotowaÊ zasilacz o†napiÍciu wyjúciowym rÛwnym oko³o 9†V†i†kabel zakoÒczony z³¹czami typu DB9. Kabel musi byÊ zakoÒczony z†jednej strony z³¹czem øeÒskim, ktÛre naleøy po³¹czyÊ ze z³¹czem portu szeregowego w†komputerze, drugi koniec kabla ze z³¹czem typu mÍskiego naleøy po³¹czyÊ ze z³¹czem CON2 na p³ytce konwertera. Do z³¹cza CON1 moøna pod³¹czyÊ napiÍcie zasilania lub wykonaÊ to po po³¹czeniu konwertera z†modu³em wykonawczym. Krzysztof P³awsiuk, AVT [email protected] Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/czerwiec03.htm oraz na p³ycie CD-EP7/2003B w katalogu PCB. 43 „Przedłużacz” do Pcyfrowego R O J toru E K audio T Y „Przedłużacz” do cyfrowego toru audio AVT−514R AVT−514OC AVT−514CO Do zalet transmisji sygna³u audio w postaci cyfrowej nie trzeba przekonywaÊ. W†ten sposÛb moøna przesy³aÊ sygna³ bez ryzyka zwiÍkszenia poziomu szumÛw lub wyst¹pienia przydüwiÍku, ale zazwyczaj na niewielkie odleg³oúci. Rekomendacje: przystawka dla wszystkich audiofilÛw umoøliwiaj¹ca przesy³anie na wiÍksze odleg³oúci sygna³Ûw pomiÍdzy urz¹dzeniami tworz¹cymi zestaw audio. W†urz¹dzeniach audio do przesy³ania cyfrowych danych wykorzystywany jest przewÛd koncentryczny lub úwiat³owÛd, ktÛry zapewnia duø¹ odpornoúÊ sygna³u na zak³Ûcenia zewnÍtrzne. Wiele dostÍpnych urz¹dzeÒ audio umoøliwia przes³anie danych úwiat³owodem na odleg³oúÊ nieprzekraczaj¹c¹ 10 m. Niekiedy potrzebne jest przes³anie sygna³u audio na wiÍksz¹ odleg³oúÊ, np. z†oddalonego komputera do pomieszczenia, w†ktÛrym znajduje siÍ zestaw audio. Po³¹czenie zwyk³ym przewodem ekranowanym na pewno nie zapewni jakoúci düwiÍku, jak¹ otrzymuje siÍ przesy³aj¹c düwiÍk cyfrowo. Dystans przesy³anego úwiat³owodem sygna³u†moøna w†prosty sposÛb zwiÍkszyÊ, stosuj¹c dodatkowy regenerator. Jego dzia³anie polega na odbieraniu sygna³u ze úwiat³owodu, wzmacnianiu go oraz przes³aniu dalej. Zastosowanie regeneratora powoduje radykalne zwiÍkszenie odleg³oúci, na jak¹ mog¹ byÊ przesy³ane úwiat³owodem cyfrowe sygna³y audio. Regenerator (AVT-514R) Schemat elektryczny regeneratora przedstawiono na rys. 1. Sygna³ ze úwiat³owodu odbierany Elektronika Praktyczna 6/2003 jest przez odbiornik optyczny U2 i†przechodzi dalej przez inwertery U3A, U3B. Dodatkowe inwertery poprawiaj¹ zbocza odbieranego sygna³u. Sygna³ po przejúciu przez inwertery podawany jest do nadajnika optycznego U4. Rezystor R1 ogranicza pr¹d p³yn¹cy przez diodÍ zawart¹ w†nadajniku U4. Elementy U2 oraz U4 zastosowane w†regeneratorze umoøliwiaj¹ przes³anie sygna³u na odleg³oúÊ nieprzekraczaj¹c¹ 10 metrÛw. Prostownik B1 zapewnia odpowiedni¹ polaryzacjÍ napiÍcia zasilaj¹cego, natomiast stabilizator U1 zapewnia jego odpowiedni¹ wartoúÊ (5 V). Rezystor R2 ogranicza pr¹d diody D1, ktÛra jest wskaünikiem napiÍcia zasilania. Pozosta³e elementy filtruj¹ napiÍcie zasilaj¹ce regenerator. Na rys. 2 przedstawiono schemat montaøowy p³ytki drukowanej. Z†montaøem regeneratora nie powinno byÊ øadnych problemÛw. Po zmontowaniu uk³ad jest od razu gotowy do pracy. Do zasilania regeneratora moøna uøyÊ dowolnego z†dostÍpnych na rynku zasilaczy wtyczkowych o†napiÍciu wyjúciowym 12...16 VDC lub 8...12 VAC oraz o†wydajnoúci pr¹dowej nie mniejszej niø 100 mA. P³ytka 37 „Przedłużacz” do cyfrowego toru audio Rys. 1. Schemat elektryczny regeneratora regeneratora zosta³a zwymiarowana pod obudowÍ Z24A. Przed umieszczeniem uk³adu w†obudowanie naleøy úci¹Ê rogi p³ytki w†miejscach zaznaczonych kreskowan¹ lini¹. Po takim zabiegu p³ytka powinna bez problemu mieúciÊ siÍ w†obudowie (fot. 3), w†ktÛrej naleøy jeszcze wyci¹Ê otwory na z³¹cza oraz diodÍ LED. ObudowÍ regeneratora moøna odpowiednio oznaczyÊ naklejkami informuj¹cych o†wyjúciach oraz wejúciach úwiat³owodu. Konwerter S/PDIF Optical->Coaxial (AVT-514OC) Wiele urz¹dzeÒ audio jest wyposaøonych w†cyfrowe wejúcia oraz wyjúcia, przy czym wystÍpuj¹ zazwyczaj dwa rodzaje po³¹czeÒ: optyczne oraz koaksjalne, przy ktÛrym wykorzystywany jest przewÛd koncentryczny 75 Ω. NiektÛre urz¹dzenia audio umoøli- Rys. 2. Rozmieszczenie elementów na płytce regeneratora 38 wiaj¹ stosowanie po³¹czenia zarÛwno poprzez przewÛd koncentryczny, jak i†úwiat³owÛd, ale istniej¹ teø takie, ktÛre pozwalaj¹ na stosowanie tylko jednego z†nich. Problem powstaje, gdy posiadamy jedno urz¹dzenie przystosowane do po³¹czeÒ koaksjalnych, a†drugie optycznych. Rozwi¹zaniem tego problemu bÍdzie prosty konwerter Optical->Coaxial. Prezentowany konwerter Optical>Coaxial wraz z†opisanym dalej konwerterem Coaxial->Optical, moøe s³uøyÊ do zamiany po³¹czeÒ z†koncentrycznych na optyczne oraz odwrotnie. Jeøeli urz¹dzenia bÍd¹ oferowa³y po³¹czenie typu coaxial, to bez problemu za pomoc¹ konwerterÛw bÍdzie moøna zamieniÊ po³¹czenie na optyczne i†odwrotnie. Gdy sygna³ bÍdzie transmitowany úwiat³owodem na Rys. 3. Widok zmontowanego regeneratora odleg³oúÊ wiÍksz¹ od 10 m, to bÍdzie konieczne zastosowanie dodatkowego regeneratora. Dzia³anie konwertera Optical>Coaxial jest bardzo proste i†polega jedynie na odbieraniu sygna³u, jego wzmacnianiu oraz konwertowaniu do postaci zgodnej z†po³¹czeniem coaxial. W†po³¹czeniu coaxial ìzeroî jest reprezentowane przez napiÍcie -0,5 V, a†ìjedynkaî przez +0,5 V. Zastosowanie konwertera radykalnie zwiÍkszy funkcjonalnoúÊ domowych czy komputerowych urz¹dzeÒ audio. Schemat ideowy konwertera Optical->Coaxial pokazano na rys. 4. Sygna³ ze úwiat³owodu jest odbierany przez odbiornik optyczny U2, z†wyjúcia ktÛrego przechoWYKAZ ELEMENTÓW Regenerator Rezystory R1: 8,2kΩ R2: 470Ω Kondensatory C1: 100µF/16V C2, C3, C4: 100nF C5: 47µF/16V Półprzewodniki U1: 78L05 U2: TORX173 U3: 74HC04 U4: TOTX173 D1: LED 3mm zielona B1: mostek prostowniczy 1A okrągły: Różne L1: dławik 47µH Z1: złącze zasilające do druku Obudowa Z24A Elektronika Praktyczna 6/2003 „Przedłużacz” do cyfrowego toru audio Rys. 4. Schemat elektryczny konwertera, kabel optyczny−koncentryczny dzi przez inwertery U3A - U3F. Poprawiaj¹ one ìkszta³tî odbieranego sygna³u. Po³¹czone rÛwnolegle inwertery U3B...F zwiÍkszaj¹ wydajnoúÊ pr¹dow¹ wyjúcia. W†obwodzie z†elementami C6, R1, R3 zamieniany jest poziom sygna³u do akceptowanego przez po³¹czenie typu coaxial. Mostek B1 prostuje napiÍcie zasilaj¹ce, natomiast stabilizator U1 utrzymuje je na poziomie 5V. Rezystor R2 ogranicza pr¹d diody D1, ktÛra jest wskaünikiem napiÍcia zasilania. Pozosta³e elementy s¹ filtrem napiÍcia zasilaj¹cego konwerter. Na rys. 5 przedstawiono schemat montaøowy p³ytki drukowanej. Po zmontowaniu uk³ad jest gotowy do pracy. Do zasilania konwertera moøna zastosowaÊ zasilacz wtyczkowy o†napiÍciu wyjúciowym 12...16 VDC lub 8...12 VAC oraz wydajnoúci pr¹dowej nie mniejszej niø 100 mA. P³ytka konwertera zosta³a zwymiarowana Rys. 5. Rozmieszczenie elementów na płytce konwertera Elektronika Praktyczna 6/2003 pod obudowÍ Z24A (fot. 6). Przed umieszczeniem uk³adu w†obudowie naleøy úci¹Ê rogi p³ytki w†zaznaczonych miejscach. Po takim zabiegu p³ytka powinna bez problemu mieúciÊ siÍ w†obudowie, w†ktÛrej naleøy jeszcze wyci¹Ê otwory na z³¹cza oraz diodÍ LED. ObudowÍ konwertera moøna odpowiednio oznaczyÊ naklejkami informuj¹cych o†wyjúciach oraz wejúciach do³¹czanych przewodÛw. Konwerter S/PDIF Coaxial->Optical (AVT-514CO) Konwerter Coaxial->Optical nie rÛøni siÍ wiele od przedstawionego wczeúniej konwertera Optical>Coaxial. Przeznaczenie tego konwertera jest takie samo, z†t¹ rÛønic¹, øe zamienia on sygna³ z†kabla koncentrycznego na optyczny. Rys. 6. Widok zmontowanego konwertera Dzia³anie konwertera Coaxial ->Optical polega na przekszta³caniu sygna³Ûw zgodnych z†coaxial na sygna³y akceptowane przez nadajnik optyczny. Schemat elektryczny konwertera Coaxial->Optical zamieszczono na rys. 7. Poziomy sygna³u pochodz¹ce z†wejúcia coaxial (Z2) zamieniane s¹ w†obwodzie z†elementami C4, R4, R5 oraz inwertery U3E i†U3D na akceptowane przez nadajnik optyczny U2. Inwerter U3E wraz z†R3 jest wzmacniaczem, natomiast U3D poprawia parametry wzmocnionego sygna³u podawanego na nadajnik U2. Rezystor R1 ogranicza pr¹d p³yn¹cy WYKAZ ELEMENTÓW Konwerter S/PDIF Optical−>Coaxial Rezystory R1: 360Ω R2: 470Ω R3: 91Ω Kondensatory C1: 100µF/16V C2, C3, C4: 100nF C5: 47µF/16V C6: 150nF Półprzewodniki U1: 78L05 U2: TORX173 U3: 74HC04 D1: LED 3mm zielona B1: mostek prostowniczy 1A okrągły Różne L1: dławik 47µH Z1: złącze zasilające do druku Z2: gniazdo CINCH do druku Obudowa Z24A 39 „Przedłużacz” do cyfrowego toru audio Rys. 7. Schemat elektryczny konwertera kabel koncentryczny−optyczny przez diodÍ zawart¹ w†nadajniku U2. Mostek B1 prostuje napiÍcie zasilaj¹ce, natomiast stabilizator U1 utrzymuje je na poziomie 5†V. Rezystor R2 ogranicza pr¹d diody D1, ktÛra jest wskaünikiem napiÍcia zasilania. Pozosta³e†elementy filtruj¹ napiÍcie zasilaj¹ce konwerter. Na rys. 8 przedstawiono schemat montaøowy p³ytki drukowanej. Montaø bÍdzie przebiega³ podobnie jak konwertera Optical>Coaxial. Zalecany zasilacz oraz Rys. 8. Rozmieszczenie elementów na płytce konwertera 40 przebieg montaøu uk³adu w†obudowie Z24A (fot. 9) jest taki sam jak zalecany dla poprzedniego konwertera. Takøe dla tego konwertera obudowÍ proponujÍ oznaczyÊ naklejkami informuj¹cymi o†wyjúciach oraz wejúciach do³¹czanych przewodÛw. Marcin Wi¹zania Rys. 9. Widok zmontowanego konwertera WYKAZ ELEMENTÓW Konwerter S/PDIF Coaxial−>Optical Rezystory R1: 8,2kΩ R2: 470Ω R3: 22kΩ R4: 75Ω R5: 100Ω Kondensatory C1: 100µF/16V C2, C3: 100nF C4: 10nF C5: 47µF/16V Półprzewodniki U1: 78L05 U2: TOTX173 U3: 74HC04 D1: LED 3mm zielona B1: mostek prostowniczy 1A okrągły Różne Z1: złącze zasilające do druku Z2: gniazdo CINCH do druku Obudowa Z24A Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/czerwiec03.htm oraz na p³ycie CD-EP7/2003B w katalogu PCB. Elektronika Praktyczna 6/2003 Dekoder−sterownik 7−segmentowego wyświetlacza P R O J LCD E w K VHDL T Y Dekoder−sterownik 7−segmentowego wyświetlacza LCD w VHDL Do podjÍcia tego tematu zachÍci³ mnie post na pl.misc.elektronika, w†ktÛrym jeden z†grupowiczÛw zwrÛci³ uwagÍ na pewien problem przy opisie uk³adu w†jÍzyku VHDL - przypisanie jednobitowego sygna³u do wielobitowego wektora. Przy okazji przedstawiamy przydatny, aczkolwiek niezbyt czÍsto stosowany w†praktycznych aplikacjach blok funkcjonalny, ktÛry dziÍki uniwersalnemu jÍzykowi opisu - moøna traktowaÊ jak klasyczny blok IP (Intellectual Property core). Rekomendacje: modu³ IP przydatny we wszelkiego rodzaju aplikacjach, w†ktÛrych zastosowano klasyczne, 7-segmentowe wyúwietlacze LCD. Dekoder-sterownik opisany w†artykule by³ kilkakrotnie sygnalizowany przez CzytelnikÛw, ale ze wzglÍdu na jego podobieÒstwo do scalonego dekodera-sterownika 7-segmentowych wyúwietlaczy LED typu 4543 (uk³ad z†serii CMOS) nie zamierza³em siÍ nim zajmowaÊ. Nies³usznie - w†budowie tego uk³adu tkwi ìkruczekî, ktÛry sprawia sporo k³opotÛw pocz¹tkuj¹cym konstruktorom korzystaj¹cym z†VHDL. Wyúwietlacze LCD-TN LCD to akronim pochodz¹cy od Liquid Crystal Display, co oznacza wyúwietlacz ciek³okrystaliczny. Ciek³e kryszta³y posiadaj¹ Rys. 1. Przekrój ilustrujący budowę klasycznego wyświetlacza LCD Elektronika Praktyczna 6/2003 fizyczne w³asnoúci zarÛwno cia³a sta³ego, jak i†p³ynu. Jedn¹ z†ich w³aúciwoúci jest to, øe zmieniaj¹ one swoje po³oøenie w†zaleønoúci od przy³oøonego napiÍcia (w zasadzie od natÍøenia pola elektrycznego pomiÍdzy ok³adkami ìkondensatoraî, w†ktÛrym dielektrykiem jest ciek³y kryszta³). Ciek³e kryszta³y w†wyúwietalczach stosuje siÍ najczÍúciej w†postaci cienkiej warstwy umieszczonej miÍdzy dwiema szklanymi p³aszczyznami, ktÛre spe³niaj¹ rolÍ elektrod (rys. 1). Oddzia³ywania powierzchniowe miÍdzy cz¹steczkami ciek³ego kryszta³u a†materia³em elektrod powoduj¹ powstanie okreúlonego u³oøenia (tekstury) cz¹steczek w†warstwie ciek³okrystalicznej. SpoúrÛd wielu znanych tekstur molekularnych ciek³ych kryszta³Ûw najwaøniejsze s¹: tekstura planarna, charakteryzuj¹ca siÍ rÛwnoleg³ym u³oøeniem cz¹stek ciek³ego kryszta³u w†stosunku do p³aszczyzny elektrod i†tekstura homeotropowa - o†prostopad³ym uk³adzie cz¹steczek. Bardzo waøn¹ odmian¹ tekstury planarnej jest konfiguracja TN (Twisted Nematics), czyli tzw. skrÍconego nematyka, ktÛra charakteryzuje siÍ skrÍceniem osi 31 Dekoder−sterownik 7−segmentowego wyświetlacza LCD w VHDL Rys. 2. Zasada działania wyświetlaczy LCD−TN Rys. 3. Włączenie segmentu wyświetlacza LCD wymaga wysterowania elektrody backplane sygnałem o przeciwnej fazie niż sygnału sterującego segment cz¹steczek rÛwnolegle u³oøonych przy obu powierzchniach o†k¹t 90 lub 45o (rys. 2). StrukturÍ skrÍconego nematyka moøna uzyskaÊ ze zwyczajnych prÍtopodobnych cz¹steczek. Wymaga to jednak specjalnej obrÛbki powierzchni p³ytek szklanych. Ich powierzchniÍ pokrywa siÍ cienk¹, przezroczyst¹ warstewk¹ polimeru i†poleruje w†jednym kierunku. PrÍtopodobne cz¹steczki ustawiaj¹ siÍ zgodnie z kierunkiem polerowania. Jeøeli drug¹ szklan¹ p³ytkÍ wypolerowan¹ analogicznie przekrÍcimy o†90o i†miÍdzy te p³ytki wprowadzimy ciek³y kryszta³ nematyczny, to przyjmie on strukturÍ skrÍcon¹ o†90o. Taka struktura skrÍca p³aszczyznÍ polaryzacji úwiat³a o 90o. Jeøeli powierzchnie p³ytek szklanych pokryjemy cienk¹, przezroczyst¹ warstw¹ przewodz¹c¹, to mamy moøliwoúÊ wytworzenia pola elektrycznego pomiÍdzy ok³adzinami ìkondensatoraî. PrÍtopodobne cz¹steczki bÍd¹ siÍ ustawia³y zgodnie z†liniami si³ pola elektrycznego, prostopadle do powierzchni szk³a. Jeøeli przygotowane p³ytki z†warstw¹ przewodz¹c¹ (rys. 1), 32 warstw¹ orientuj¹c¹ i†warstw¹ skrÍconego nematyka wstawimy miÍdzy skrzyøowane polaryzatory (rys. 2), to úwiat³o bia³e przejdzie przez gÛrny polaryzator jako spolaryzowane, w†warstwie skrÍconego nematyka kierunek drgaÒ ulegnie skrÍceniu o†90o i†padaj¹c na drugi skrzyøowany polaryzator, bÍdzie mia³o kierunek drgaÒ zgodny z†dolnym polaryzatorem. Zostanie wiÍc przepuszczone. Po przy³oøeniu napiÍcia, cz¹steczki bia³ego kryszta³u ustawi¹ siÍ prostopadle do powierzchni szk³a i†polaryzatorÛw. Nie bÍd¹ skrÍca³y p³aszczyzny polaryzacji úwiat³a. Zostanie wiÍc ono zatrzymane przez drugi, dolny polaryzator. W³aúciwoúci ciek³ych kryszta³Ûw pozostaj¹ w†úcis³ym zwi¹zku z†ich budow¹ chemiczn¹. NajogÛlniej moøna powiedzieÊ, øe s¹ to substancje, ktÛrych cz¹steczki o†wyd³uøonych kszta³tach maj¹ charakter polarny, tzn. w†ich moleku³ach wystÍpuje nierÛwnomierny rozk³ad ³adunku elektrycznego. Cz¹steczki o†takich w³aúciwoúciach bÍd¹ reagowa³y na pole elektryczne. WspÛ³czeúnie produkowane wyúwietlacze LCD, ze wzglÍdu na s³ab¹ odpornoúÊ stosowanych ciek³ych kryszta³Ûw na d³ugotrwa³¹ polaryzacjÍ napiÍciem sta³ym (polem elektrycznym o†sta³ym, doúÊ duøym natÍøeniu i†kierunku), wymagaj¹ sterowania impulsowego. Polega ono na przy³oøeniu do wspÛlnej elektrody wszystkich segmentÛw (backplane) sygna³u prostok¹tnego o†czÍstotliwoúci 30...300 Hz i†napiÍciu o†wartoúci 2...5 V. Maksymalna wartoúÊ napiÍcia sta³ego polaryzuj¹cego segmenty zazwyczaj nie moøe byÊ wiÍksza od 50 mV. Wyúwietlacze LCD-TN s¹ stosunkowo wolne w†temperaturze 25 oC czas w³¹czania segmentu wynosi co najmniej 60 ms, natomiast czas wy³¹czania zazwyczaj nie jest krÛtszy niø 80 ms. Dzieło przypadku Ciekłe kryształy, podobnie do większości wynalazków, odkryto przez przypadek. W 1888 roku austriacki botanik Friedrich Reinitzer badał, jaką rolę odgrywa w roślinach cholesterol. W jednym z eksperymentów wystawił on badany materiał na działanie ciepła, przy czym odkrył, że kryształ w temperaturze 145oC staje się mętnym płynem, zaś przy 179oC przechodzi całkowicie w stan płynny. W dwa lata później, w Karlsruhe, niemiecki fizyk Otto Lehman wprowadza pojęcie: ciekły kryształ, stwierdzając ich specyficzną strukturę fazową. Ponownie do substancji o właściwościach ciekłych kryształów wrócono w latach sześćdziesiątych XX wieku, kiedy Ameryka− nin James L. Ferguson stwierdził, iż ciekłe kryształy można zastosować jako wskaźniki temperatury, zaś George Heilmeier z Princeton odkrył zjawisko tzw. zakłóceń dynamicznych światła przechodzącego przez ciekły kryształ w polu elektrycznym. Jego publikacje z roku 1968 można uznać za początek technicznego zastosowania ciekłych kryształów. Elektronika Praktyczna 6/2003 Dekoder−sterownik 7−segmentowego wyświetlacza LCD w VHDL W†opisie architektury dekodera znajduj¹cym siÍ po deklaracji jednostki entity zastosowano instrukcjÍ selekcjonuj¹c¹ przypisania with...select, dla ktÛrej szablonem wyraøeÒ selekcjonuj¹cych jest 4bitowy wektor din. Wektor segm jest zadeklarowany jako pomocniczy sygna³ wewnÍtrzny (za pomoc¹ deklaracji signal segm: std_logic_vector(6 downto 0)) i†odpowiada on sygna³om a...g_stat, poRys. 4. Schemat blokowy dekodera kazanym na rys. 4†i†5. WykorzysBCD−> 7 segmentów tanie instrukcji with...select wyWidoczne (ìw³¹czoneî) segmaga zdefiniowania odpowiedzi menty wyúwietlacza musz¹ byÊ uk³adu na wszystkie moøliwe warsterowane napiÍciem o†takiej satoúci wyraøenia selekcjonuj¹cego, mej wartoúci, lecz fazie odwrÛw†zwi¹zku z†czym jako ostatni¹ conej o†180 o. Do segmentÛw, ktÛtrzeba zastosowaÊ klauzulÍ re maj¹ byÊ niewidoczne (ìwyì0000000î when others - bez niej ³¹czoneî), naleøy przy³oøyÊ nakompilacja siÍ nie uda. Za³oøono, piÍcie o†takiej samej øe wyúwietlacz bÍdzie wyamplitudzie i†fazie, jak ³¹czony (øaden segment nie Narzędzia za darmo przy³oøone do elektrobÍdzie widoczny) dla koWszyscy liczący się producenci układów dy wspÛlnej. Na rys. 3 dÛw wejúciowych powyøej programowalnych udostępniają do celów pokazano przebiegi ste9 (1001), czyli dekoder jest edukacyjnych bezpłatne narzędzia do ruj¹ce dwoma segmenprzeznaczony wy³¹cznie do projektowania. Pomimo tego, że są tami wyúwietlacza wyúwietlania cyfr z†zakreudostępniane za darmo, ich funkcjonalność LCD: jeden z†nich jest su 0...9. Nic nie stoi na jest porównywalna z narzędziami komercyjny− w³¹czony, drugi wy³¹przeszkodzie, aby w†razie mi i bez trudu można za ich pomocą czony. takiej potrzeby samodzielwykonać także zaawansowane projekty. nie zdefiniowaÊ znaki o†koOpis projektu dach A...Fh (dziesiÍtnie Bior¹c pod uwagÍ wymagania Sterowane inwertery moøna zre10...15), czego przyk³ad pokazano stawiane sterownikom przez wyalizowaÊ na wiele sposobÛw, spona list. 2. Naleøy zwrÛciÊ uwagÍ, úwietlacze LCD-TN, musimy zaúrÛd ktÛrych najodpowiedniejszym øe pomimo jawnego zadeklarowaprojektowaÊ dekoder, na wyjúciach dla celÛw tego projektu s¹ bramki nia wszystkich wartoúci wektora ktÛrego bÍd¹ wystÍpowa³y sygna³y Ex-OR po³¹czone w†sposÛb pokasteruj¹ce poszczegÛlnymi segmenzany na rys. 5. Wejúciowy sygna³ List. 1. Przykładowy opis w języku tami wyúwietlacza i†- oczywiúcie clk po³¹czony bezpoúrednio z†wyjVHDL dekodera−sterownika 7− - elektrod¹ wspÛln¹ (backplane). úciem bp jest podawany na jedno segmentowego wyświetlacza LCD library IEEE; Dla przyk³adu skupimy siÍ na z†wejúÊ kaødej z†bramek Ex-OR, use IEEE.STD_LOGIC_1164.ALL; zaprojektowaniu dekodera dla natomiast na kaøde drugie wejúcie use IEEE.STD_LOGIC_UNSIGNED.ALL; ciek³okrystalicznego wyúwietlacza jest podawany sygna³ z†dekodera entity lcd_dek is port ( din: in std_logic_vector(3 downto 0); BCD->7 segmentÛw (a...g_stat). clk: in std_logic; bp: inout std_logic; W†zaleønoúci od stanÛw na tych segm_o: out std_logic_vector(6 downto 0) ); wejúciach, na wyjúciach bramek end lcd_dek; wyst¹pi¹ przebiegi prostok¹tne bÍarchitecture ar_dyn of lcd_dek is d¹ce w†fazie z†sygna³em clk (jeøeli signal segm: std_logic_vector(6 downto 0); na odpowiednim wejúciu a...g_stat begin with din select jest logiczne ì0î) - wtedy tak -gfedcba segm <= "0111111" when "0000", -- 0 sterowany segment nie jest w³¹"0000110" when "0001", -- 1 "1011011" when "0010", -- 2 czony, lub w†przeciwfazie (jeøeli "1001111" when "0011", -- 3 "1100110" when "0100", -- 4 na odpowiednim wejúciu a...g_stat "1101101" when "0101", -- 5 jest logiczna ì1î), co powoduje "1111101" when "0110", -- 6 "0000111" when "0111", -- 7 w³¹czenie segmentu. "1111111" when "1000", -- 8 7-segmentowego. Jego schemat blokowy pokazano na rys. 4. Jak widaÊ, sk³ada siÍ on z†dwÛch blokÛw: - standardowego transkodera kodu BCD na kod wskaünika 7-segmentowego (z wyjúciami aktywnymi w†stanie ì1î), - zespo³u sterowanych inwerterÛw, ktÛre odwracaj¹ fazÍ sygna³Ûw steruj¹cych segmentami o†180o w†stosunku do sygna³u zasilaj¹cego backplane w†przypadku, gdy wybrane segmenty maj¹ byÊ w³¹czone, lub powtarzaj¹cych sygna³ backplane - w†przypadku, gdy sterowane segmenty maj¹ byÊ wy³¹czone. Jak to zrobiÊ w†VHDL-u? Rys. 5. Jednym z możliwych rozwiązań sterowanego inwertera jest zastosowanie bramek Ex−OR Elektronika Praktyczna 6/2003 Przejdümy do pokazania sposobu zapisania w†jÍzyku VHDL dekodera zbudowanego zgodnie ze schematem blokowym z†rys. 4. Jeden z†moøliwych wariantÛw opisu pokazano na list. 1. "1101111" when "1001", "0000000" when others; segm_o(0) segm_o(1) segm_o(2) segm_o(3) segm_o(4) segm_o(5) segm_o(6) <= <= <= <= <= <= <= segm(0) segm(1) segm(2) segm(3) segm(4) segm(5) segm(6) xor xor xor xor xor xor xor -- 9 -- wygaszenie bp; bp; bp; bp; bp; bp; bp; bp <= clk; end ar_dyn; 33 Dekoder−sterownik 7−segmentowego wyświetlacza LCD w VHDL List. 2. Przykładowa modyfikacja programu z list. 1, dzięki której dekodowane są także wektory wejściowe A...Fh -gfedcba -- ............................ "1111111" when "1000", -- 8 "1101111" when "1001", -- 9 "1110111" when "1010", -- kod "1111100" when "1011", -- kod "0111001" when "1100", -- kod "1011110" when "1101", -- kod "1111001" when "1110", -- kod "1110001" when "1111", -- kod "0000000" when others; 10 11 12 13 14 15 - znak znak znak znak znak znak "A" "b" "C" "d" "E" "F" din nadal jest stosowana klauzula when others. Wynika to z†faktu, øe kompilatory rozpoznaj¹ takøe inne stany niø ì0î i†ì1î (m.in. s³abe zero i†s³ab¹ jedynkÍ, stan wysokiej impedancji itp.) na wejúciach din, dla ktÛrych zadeklarowano typ std_logic_vector. W†dalszej czÍúci list. 1†znajduje siÍ opis sterowanego inwertera, wykonanego na bramkach Ex-OR. W†jego opisie pojawia siÍ w³aúnie problem, o†ktÛrym wspomnia³em na wstÍpie - chodzi o†zapisanie sumy Ex-OR pomiÍdzy 7-bitowym wektorem sk³adaj¹cym siÍ z†sygna³Ûw steruj¹cych segmentami wyúwietlacza a†1-bitowym sygna³em clk. NiektÛre syntezery VHDL (niezgodnie z†obowi¹zuj¹cymi w†VHDL normami) pozwalaj¹ na przeci¹øanie operatorÛw logicznych (w tym xor) w†taki sposÛb, øe moøliwy by³by zapis segm_o <= segm xor bp - domyúlnie jest implementowane siedem sum logicznych dla kaødego sygna³u z†wektora segm z†sygna³em bp. Standardowo operatory logiczne s¹ przeznaczone do wykonywania operacji na wektorach o†jednakowej d³ugoúci, ktÛra moøe byÊ wiÍksza od 1 bitu - przyk³ad pokazano na list. 3. Język VHDL uchodzi za jeden z bardziej skomplikowanych języków opisu sprzętu (HDL − Hardware Description Language). Pomimo dość rygorystycznych reguł formalnych obowiązujących podczas pisania programu, język ten charakteryzuje się znaczną uniwersalnością, co w praktyce oznacza, że dobrze przygotowany opis bloku funkcjonalnego będzie można “wbudować” zarówno w układy PLD, jak i ASIC pochodzące od różnych producentów. Niebagatelne znaczenie dla projektantów systemów cyfrowych ma fakt, że podzbiór języka VHDL, który jest obsługiwany przez programy do syntezy logicznej, jest niewielki i stosunkowo łatwy do nauczenia się. Istotną cechą VHDL−a jest możliwość opisywania projektowa− nego układu na wiele sposobów m.in.: przepływowy (RTL − do którego sprowadzane są inne), behawioralny (opis zachowania się bloku w zależności od sygnałów zewnętrznych i wewnętrznych) czy też strukturalny (zwykle hierarchiczny opisujący budowę układu). Niestety, taki zapis, podobnie do pokazanego na list. 1, nie jest zbyt wygodny, zw³aszcza gdy d³ugoúÊ XOR-owanego wektora jest duøa. Jakakolwiek zmiana w†tej funkcji wymusza koniecz- noúÊ modyfikowania wielu miejsc programu, co jest czasoch³onne i†moøe byÊ przyczyn¹ b³Ídu. Na list. 4 pokazano uproszczony zapis wielobitowej funkcji Ex-OR, w†ktÛrej d³ugoúÊ wektora moøna List. 3. Alternatywny w stosunku do pokazanego na list. 1 sposób zapisu wielobitowej sumy Ex−OR -- ................ bp_int(0) <= bp; bp_int(1) <= bp; bp_int(2) <= bp; bp_int(3) <= bp; bp_int(4) <= bp; bp_int(5) <= bp; bp_int(6) <= bp; segm_o <= segm xor bp_int; -- ................ List. 4. Alternatywny, najbardziej elastyczny, zapis wielobitowej sumy Ex−OR, ścisłego odpowiednika zapisu z list. 1 -- ................ mb_xor: for i in 0 to 6 generate segm_o(i) <= segm(i) xor bp; end generate; -- ................ 34 Rys. 6. Jednym z mniej znanych narzędzi projektowych jest zdalny kompilator WebFitter udostępniony bezpłatnie przez firmę Xilinx Elektronika Praktyczna 6/2003 Dekoder−sterownik 7−segmentowego wyświetlacza LCD w VHDL swobodnie regulowaÊ za pomoc¹ wartoúci parametru i. Utworzono j¹ za pomoc¹ instrukcji powielania generate. Zapis pokazany na list. 4†jest úcis³ym odpowiednikiem opisu zastosowanego na list. 1. Implementacja DziÍki zastosowaniu jako jÍzyka opisu sprzÍtu VHDL-a, z†prezentowanego projektu mog¹ skorzystaÊ uøytkownicy dowolnej rodziny uk³adÛw PLD. Dekoder zajmuje 8†makrokomÛrek w†uk³adach SPLD/CPLD (zmieúci siÍ wiÍc nawet w†uk³adzie GAL22V10 lub GAL16V8 po niewielkiej modyfikacji). Projekt by³ testowany na p³ytce ewaluacyjnej opisanej w†EP9/ 2002, na ktÛrej znajduje siÍ Elektronika Praktyczna 6/2003 uk³ad XC95108 (programowany w†systemie CPLD ze 108 makrokomÛrkami). Dla wszystkich sygna³Ûw jest niezbÍdne 13 wyprowadzeÒ (5 wejúÊ i†8†wyjúÊ). Plik z†opisem projektu (list. 1) skompilowano za pomoc¹ bezp³atnych pakietÛw narzÍdziowych: Max+Plus II Student Edition (obs³uguje VHDL), Quartus II 2.2 Web Edition - obydwa firmy Altera i†WebPack ISE 4.2 firmy Xilinx. Ma³o znanym, lecz rÛwnie skutecznym jak narzÍdzia stacjonarne (instalowane na komputerze uøytkownika), jest zdalny internetowy kompilator firmy Xilinx - WebFitter (dostÍpny po zarejestrowaniu pod adresem: http://www.xilinx.com/xlnx/ xil_prodcat_landingpage.jsp?tit- le=WebFITTER). Za jego pomoc¹ moøna skompilowaÊ prezentowany projekt do postaci *.jed, czyli wynikowej, przeznaczonej do programowania uk³adu docelowego. WebFitter generuje wszystkie niezbÍdne raporty, pozwala takøe kompilowaÊ projekty hierarchiczne. Widoki kilku okien pracuj¹cego WebFittera pokazano na rys. 6. Piotr Zbysiñski, AVT [email protected] Projekty dla systemu WebPack ISE 4.2 wraz z†kodami ürÛd³owym trzech wersji projektu s¹ dostÍpne na stronie internetowej www.ep.com.pl w†dziale Download>Dokumentacje. Publikujemy je takøe na p³ycie CDEP7/2003B. 35 PHANTOM P −R dekoder O J E surround K T Y PHANTOM Dekoder surround, część 1 DüwiÍk dookÛlny jest coraz czÍúciej wykorzystywany w†sprzÍcie audio powszechnego uøytku. Nie oznacza to jednak, øe uøytkownicy wiedz¹, i†maj¹ gdzie siÍ dowiedzieÊ, na czym polega dzia³anie dekoderÛw surround i†jakie posiadaj¹ one moøliwoúci. Mamy nadziejÍ, øe prezentowany projekt pomoøe w†wyjaúnieniu najczÍstszych w¹tpliwoúci. Rekomendacje: projekt polecamy wszystkim audiofilom-mi³oúnikom eksperymentÛw z†düwiÍkiem, ktÛrych wymagaÒ nie spe³niaj¹ standardowe dekodery surround. Elektronika Praktyczna 6/2003 Posiadaj¹c stacjonarny odtwarzacz DVD bez wbudowanego dekodera oraz amplituner stereo, postanowi³em zbudowaÊ analogowy dekoder surround kompatybilny z†analogowym systemem kodowania düwiÍku Dolby Surround. Jest to dekoder niepe³ny, poniewaø nie dekoduje kana³u centralnego. Dekoder surround odtwarzaj¹cy kana³ centralny przez dwa g³oúniki jest nazywany Phantom. Poniewaø zdobycie uk³adu scalonego bÍd¹cego dekoderem Dolby Surround Pro Logic by³o niemoøliwe, do budowy mojego dekodera uøy³em scalonego procesora audio TDA7429S z†matryc¹ surround. Krzemowa moc Uk³ad TDA7429S jest zintegrowanym procesorem audio sterowanym cyfrowo za pomoc¹ magistrali I2C. Ma 3†wejúcia stereofoniczne, 3-pasmowy uk³ad regulacji barwy tonu, wbudowane 4†przesuwniki fazy oraz 2†wyjúcia stereofoniczne (4 kana³y). Schemat blokowy tego uk³adu pokazano na rys. 1. Sam uk³ad TDA7429S nie spe³nia w†pe³ni funkcji dekodera surround, poniewaø nie ma wbudowanej linii opÛüniaj¹cej, a†wbudowana matryca surround zapewnia separacjÍ kana³Ûw na poziomie jedynie 3†dB. Z†tego wzglÍdu uk³ad ten wymaga³ wzbogacenia o†kilka dodatkowych blokÛw: - automatycznego balansu sygna³Ûw L†i†R†(zbudowany na uk³adzie scalonym NE570) - niezbÍdnego do zwiÍkszenia separacji kana³Ûw do†poziomu oko³o 20 dB, - linii opÛüniaj¹cej (oko³o 12 ms) - zbudowanej na uk³adzie MN3207, - bloku sterowania faz¹ sygna³u zasilaj¹cego g³oúniki tylne, - multipleksera dla kana³Ûw tylnych pozwalaj¹cego sterowaÊ kana³y tylne bezpoúrednio z†4†wejúÊ (4 wejúcia -> 4†wyjúcia). Ca³y modu³ spe³nia funkcjÍ przedwzmacniacza z†dodatkow¹ funkcj¹ dekodera. Pod³¹czony do stacjonarnego DVD bez wbudowanych dekoderÛw pozwala zdekodowaÊ düwiÍk na 4†g³oúniki: prawy przedni, lewy przedni, prawy tylny, lewy tylny. W†celu uzyskania pe³nej, ìstacjonarnejî funkcjonalnoúci, modu³ powinien byÊ wyposaøony we wbudowany mikrokontroler, np. AT90S2313 lub podobny, ktÛry sterowa³by (magistral¹ I2C) wszystkimi funkcjami Podstawowe dane układu TDA7429S: ✓ Stosunek sygna³ szum: 106 dB ✓ Separacja kana³ów: 90 dB ✓ Typowy poziom zniekszta³ceñ dla napiêcia 1 VRMS: 0,01 % ✓ Napiêcie wyjciowe (RMS): 2 V ✓ Napiêcie szumów na wyjciu w trybie Stereo: 5 µV ✓ Napiêcie szumów na wyjciu w trybie Movie...Music: 30 µV 25 PHANTOM − dekoder surround oraz 4†koÒcÛwkami mocy. Moc kana³Ûw wzmacniaczy przednich powinna wynosiÊ 50...100 W, a†kana³Ûw tylnych 25...50 W. Dekoder modelowy jest sterowany z†komputera PC za pomoc¹ specjalnego programu. Komunikuje siÍ on z†modu³em dekodera poprzez interfejs RS232. Downmix Wed³ug mojej wiedzy, ponad 90% odtwarzaczy DVD bez dekoderÛw dekoduje w†trybie normalnym úcieøki Dolby Digital 5.1 i†koduje je jako Dolby Surround Compatibile Downmix. W†tym systemie kana³ LFE nie jest wykorzystywany (rys. 2). W†wiÍkszoúci przypadkÛw inne tryby downmiksu podbijaj¹ sygna³y kana³Ûw tylnych, zmniejszaj¹c jednoczeúnie poziom sygna³u w kanale centralnym. Istnieje rÛwnieø system Stereo Compatibile Downmix, ktÛry jest rzadko stosowany. Przy pracy z†naszym dekoderem najlepiej wybraÊ Dolby Surround Compatibile Downmix. W†analogowym dekoderze surround nie moøna uzyskaÊ düwiÍku w†pe³ni wielokana³owego. Dekoder analogowy potrafi natomiast wytworzyÊ pole düwiÍkowe o†okreúlonym w†danej chwili†kierunku dominuj¹cym. Jeúli np. sygna³y w†kana³ach wejúciowych L i†P s¹ w†zgodnej fazie i†o†zbliøonej amplitudzie, to kierunkiem dominuj¹cym bÍdzie przÛd (úrodek miÍdzy kana³ami przednimi). Natomiast w†przypadku, gdy sygna³ wejúciowy pojawia siÍ tylko w†jednym kanale (np. prawym), to kierunkiem dominuj¹cym bÍdzie prawy przedni g³oúnik (ze wzglÍdu na przes³uchy miÍdzy kana³ami st³umiony düwiÍk pojawi siÍ rÛwnieø w†pozosta³ych g³oúnikach). Natomiast w†przypadku jeúli sygna³y w†kana³ach wejúciowych L†i†P†s¹ w†fazie przeciwnej i†o†zbliøonej amplitudzie, to kierunkiem dominuj¹cym bÍdzie ty³ (g³oúniki surround). Do†prawid³owej lokalizacji pozornych ürÛde³ düwiÍku bardzo waøna jest faza wszystkich czterech g³oúnikÛw. Opis uk³adu Schemat blokowy dekodera pokazano na rys. 3. Zastosowany w†dekoderze uk³ad TDA7429S wykorzystano w†sposÛb niestandar- 26 Rys. 1. Schemat blokowy układu TDA7429S Elektronika Praktyczna 6/2003 PHANTOM − dekoder surround rzone sygna³y SURR_L 3. Zmieniono wartoúci kondeni†SURR_R lub sygna³ kana- satorÛw kszta³tuj¹cych charakterys³Ûw tylnych doprowadzony tykÍ regulacji barwy tonu dla z†zewn¹trz. basÛw. Dla C26=C27=C28=C29=100 2. MiÍdzy wyjúcia BASnF charakterystyka czÍstotliwoúSO a†wejúcia VAR w³¹czo- ciowa wykazuje maksimum dla no zamiast kondensatorÛw czÍstotliwoúci 100 Hz. Po zastomultipleksery analogowe sowaniu nastÍpuj¹cych pojemnoú(oraz kondensatory). Wyj- c i : C 2 6 = C 2 7 = 2 2 0 n F o r a z ú c i a m u l t i p l e k s e r Û w C28=C29=470 nF charakterystyka M_V_L i†M_V_R zosta³y ta wykazuje maksimum dla czÍsp o ³ ¹ c z o n e z † w e j ú c i a m i totliwoúci oko³o 35 Hz (rys. 4). VAR_L i†VAR_R. Po†wpro- Daje to lepsze przetwarzanie najRys. 2. Schemat blokowy układu downmix wadzeniu tych zmian moø- niøszych czÍstotliwoúci. Fragment dowy. Do†jego schematu aplikana uzyskaÊ rÛøne sygna³y wyjschematu z elementami kszta³tucyjnego wprowadzono bowiem naúciowe zgodnie z†tab. 1. j¹cymi charakterystykÍ czÍstotlistÍpuj¹ce zmiany: 1. Wykorzystano sygna³y wyjTab. 1. Tryby pracy dekodera i uzyskiwane efekty úciowe pomocnicze (AUXOUT_L, Kana³y przednie Kana³y tylne AUXOUT_R) do sterowania Nazwa Opis Nazwa Opis wzmacniaczami mocy g³oúnikÛw 3BAND Sygna³ kana³ów przednich SURR Sygna³ kana³ów tylnych po przednich, a†sygna³y ìg³Ûwneî z regulatorów barwy tonu przejciu przez uk³ady: DELAY, (L_OUT, R_OUT) do sterowania barwy tonu i korektora fazy wzmacniaczami mocy g³oúnikÛw Surround Sygna³ kana³ów przednich Direct Sygna³ kana³ów tylnych wprost z matrycy surround z wejcia tylnych. Zamiana miejscami sygRear Sygna³ kana³ów tylnych (mono) Direct BT Sygna³ kana³ów tylnych z wejcia na³Ûw wyjúciowych zwi¹zana jest po przejciu przez uk³ad barwy z†tym, øe na g³oúniki tylne nie tonu podaje siÍ sygna³u REAR wystÍFIX Sygna³ kana³ów przednich 3BAND Sygna³ kana³ów przednich puj¹cego wewn¹trz uk³adu scalobezporednio z wejcia z regulatorów barwy tonu nego TDA7429S, lecz przez mulFIX Sygna³ kana³ów przednich tipleksery zewnÍtrzne (M_V_L bezporednio z wejcia i†M_V_R) odpowiednio przetwo- Rys. 3. Schemat blokowy dekodera Phantom Elektronika Praktyczna 6/2003 27 PHANTOM − dekoder surround Rys. 5. Fragment wewnętrznej struktury układu TDA7429S Rys. 4. Zmodyfikowana charakterystyka częstotliwościowa regulatora tonów niskich woúciow¹ dla basÛw i†przebieg tej charakterystyki przedstawiono na rys. 4. 4. Zmieniono wartoúÊ kondensatora w†4†przesuwniku fazy z†22 nF na 10 nF. Uzyskano w†ten sposÛb inny zakres czÍstotliwoúci, dla ktÛrych przesuniÍcie fazy wynosi 90o. Oryginalnie by³y to czÍstotliwoúci 185...600 Hz, po zmianie s¹ to czÍstotliwoúci 400...1300 Hz. Standardowo prze- suwniki 3†i†4†powinny przesun¹Ê fazÍ o†90o dla czÍstotliwoúci 400 Hz. PrzesuniÍcie takie moøna programowo uzyskaÊ nawet po wprowadzonych zmianach - wpisuj¹c do†drugiego rejestru w†TDA7429S EAH (zamiast AAH). 5. W†nietypowy sposÛb wykorzystano wyprowadzenie LP (nÛøka 5†uk³adu TDA7429S). Normalnie powinien byÊ tam pod³¹czony kondensator filtru dolnoprzepustowego o†wartoúci 1,2 nF (miÍdzy nÛøkÍ 5†a†masÍ). Analizuj¹c schemat wewnÍtrznej struktury uk³adu TDA7429S (rys. 5), postanowi³em jednak pod³¹czyÊ w†to miejsce wyjúcie z†multipleksera M_AUTO (rys. 6). Wyjúcie wzmacniacza operacyjnego W1 (wewn¹trz uk³adu TDA7429S) jest po³¹czone przez rezystor o†wartoúci oko³o 10†kΩ z nÛøk¹ 5 tego uk³adu i†jednoczeúnie po³¹czone z wejúciem wzmacniacza operacyjnego W2. Poniewaø impedancja multipleksera (i wyjúcia wzmacniacza operacyjnego LM833) jest duøo mniejsza od 10 kΩ (wynosi oko³o 200 Ω), potraktowa³em nÛøkÍ 5 uk³adu TDA7429S WYKAZ ELEMENTÓW Kondensatory C1: 1,2nF MKT C2, C6...C9, C54...C64: 100nF SMD C3...C5, C48...C51: 100nF MKT C10...C17, C38: 680nF MKT C18...C20: 1µF MKT C21...C24: 22nF MKT C25, C42: 10nF MKT C26, C27, C40, C41: 220nF MKT C28...C31: 470nF MKT C32, C33: 18nF MKT C34...C37: 4,7nF MKT C39, C52, C53: 6,8nF MKT C43: 270pF monolityczne C44: 680pF monolityczne C45, C47: 180pF monolityczne C46: 160pF monolityczne CE1, CE19: 470µF/16V CE2, CE8, CE17: 47u/10V CE3, CE4, CE9...CE12: 47µF/16V CE5, CE25: 10µF /16V CE6, CE7: 22µF/10V CE13, CE15, CE18: 4,7µF/16V CE14, CE16: 1,0µF/16V CE20...CE24: 100µF/16V CE23: 100µF/6V Półprzewodniki U1, U2: CD4053N U3: TDA7429S U4, U5: TL072 28 U6: NE570 U8: MN3207 U9: TL074 U10: LM78L08 lub LM7808T U11: MN3102 U12: LM7908T lub LM79L08 U13: DG409 opcjonalnie U14: LM833 U15: PCF8574A U16: 74HC05 E3: CD4052N T1, T2: BC557 T3, T4: BC237 D1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12: BAVP18 D13, D14: 1N4004 DZ1: Dioda Zenera C5V6 DZ2, DZ3: Dioda Zenera C9V1 DX1: DA4148A drabinka diod DX2: DA4148K drabinka diod Rezystory R1, R3, R5: 100Ω SMD1206 R2, R4, R56...R58: 220Ω SMD1206 R6...R18, R22: 1kΩ SMD1206 R19...R21: 1kΩ/0,125W 1% R23, R24, R27, R29: 4,7kΩ SMD1206 R25, R26, R28, R30, R85: 10kΩ SMD1206 R31...R33, R82...R84: 4,99kΩ/0,125W 1% R34, R44: 24,9kΩ/0,125W 1% R35...R40: 100kΩ/0,125W 1% R41, R42: 22kΩ SMD1206 R43, R60, R70'2: 47kΩ SMD1206 R45...R50: 120kΩ SMD1206 R51, R52: 2,74kΩ/0,125W 1% R53, R68, R70, R71, R86, R87, R71'2: 51,1kΩ/0,125W 1% R54, R88, R89: 2,15kΩ/0,125W 1% R55, R90, R91: 121kΩ/0,125W 1% R59: 10Ω SMD1206 R62, R63: 33,2kΩ/0,125W 1% R64, R65: 10kΩ/0,125W 1% R66, R67, R73: 27,4kΩ/0,125W 1% R69, R69'2: 100kΩ/0,125W 1% R72, R76, R77: 5,6kΩ/0,125W 1% R74: 20,5kΩ/0,125W 1% R75: 21,5kΩ/0,125W 1% R78...R81: 200kΩ SMD1206 R91: 10Ω 0,125W 1% RX1: 8x10kΩ drabinka PR1: 50kΩ montażowy Różne Z1: gold pin 3x1 JP1 JP2: gold pin 4x1 J_IN_1 J_IN_23 J_OUT: gold pin 6x1 J_CTRL J_IN_1F J_IN_1R J_IN_2 J_IN_3 J_OUT_1 J_OUT_2 J_OUT_F J_OUT_M: SIP4 LZ1: 2x3,81 mm LZZ: 3x3,81 mm Elektronika Praktyczna 6/2003 PHANTOM − dekoder surround Rys. 6. Schemat elektryczny dekodera, układ barwy tonu i przesuwnika fazy Elektronika Praktyczna 6/2003 29 PHANTOM − dekoder surround Rys. 7. Schemat elektryczny obwodu zabezpieczenia antyprzepięciowego zastosowanego na wejściach dekodera jako wejúcie sygna³u surround na wewnÍtrzn¹ matrycÍ surround. Multiplekser M_AUTO za³¹cza albo kondensator 1,2 nF, albo wyjúcie z†zewnÍtrznego wzmacniacza operacyjnego - sygna³ rÛønicy kana³Ûw prawego i†lewego (R-L) z†uk³adu autobalansu. Dekoder posiada jedno wejúcie czterokana³owe, ktÛre moøna wykorzystaÊ rÛwnieø jako stereo: - wejúcie 1: sygna³y IN1L, IN1R, LR_Direct, RR_Direct oraz dwa wejúcia stereo: - wejúcie 2: sygna³y IN2L, IN2R, - wejúcie 3: sygna³y IN3L, IN3R. Wejúcie 1†moøe pracowaÊ jako stereo (sygna³y IN1L, IN1R) lub czterokana³owe (kana³y przednie IN1L i†IN1R oraz kana³y tylne LR_Direct i†RR_Direct). èrÛd³em czterech sygna³Ûw wejúciowych moøe byÊ karta düwiÍkowa komputera PC lub odtwarzacz DVD wyposaøony w†dekodery. Wejúcia s¹ prze³¹czane przez multipleksery M_IN_L, M_IN_R oraz M_V_L i†M_V_R. Wyjúcia multiplekserÛw M_IN_L i†M_IN_R daj¹ dwa sygna³y wyjúciowe Rec_L_Out i†Rec_R_Out, ktÛre moøna doprowadziÊ na gniazda cinch i†wykorzystaÊ do nagrywa- 30 nia przez magnetofon, rekorder minidyskÛw lub kartÍ düwiÍkow¹ komputera PC. Sygna³y z†multiplekserÛw M_IN_L i†M_IN_R podawane s¹ na regulatory wzmocnienia ATT_L i†ATT_R. Uk³ad TDA7429S pozwala sterowaÊ ich wzmocnieniem (jednoczeúnie w†kanale lewym i†prawym) w†zakresie 32 dB (0...-31,5dB). RegulacjÍ wzmocnienia naleøy traktowaÊ jako korektÍ wzmocnienia dla rÛønych ürÛde³ - po w³¹czeniu autobalansu naleøy ustawiÊ to wzmocnienie na oko³o 3†dB. Dalej sygna³y kana³u lewego i†prawego trafiaj¹ na sumator i†wzmacniacz rÛønicowy. Wyjúcie sumatora jest wyprowadzone na zewn¹trz i†moøna je wykorzystaÊ (Out_MONO) jako ürÛd³o sygna³u fonii dla telewizora mono. W†zaleønoúci od tego, w†jakim trybie pracuje uk³ad TDA7429S, s¹ aktywne lub nie przesuwniki fazowe FS1...FS4. Kana³y przednie mog¹ mieÊ regulowan¹ barwÍ tonu w†trzech pasmach: bas, úrednie i†wysokie. Wszystkie wejúcia uk³adu scalonego zosta³y zabezpieczone przed zniszczeniem od napiÍÊ przekraczaj¹cych napiÍcie zasilania (rys. 7). Takie napiÍcia mog¹ siÍ pojawiÊ w†chwili ³¹czenia ze sob¹ dwÛch urz¹dzeÒ (np. wzmacniacza z†komputerem). Dzia³anie zabezpieczenia jest nastÍpuj¹ce: jeúli na wejúciu w†punkcie A†pojawi siÍ krÛtkotrwa³e napiÍcie nawet o†wartoúci kilkudziesiÍciu V, to pop³ynie pr¹d o†wartoúci kilkudziesiÍciu miliamperÛw przez rezystor R13 i†jedn¹ z†diod (DX1 lub†DX2). W†punkcie B†napiÍcie zawsze bÍdzie mieúci³o siÍ w†przedziale -0,7...+8,7V. Rezystor R18 ogranicza pr¹d wp³ywaj¹cy/wyp³ywaj¹cy do/z chronionego uk³adu scalonego do†wartoúci kilku miliamperÛw. Zbyszko Przyby³ Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/czerwiec03.htm oraz na p³ycie CD-EP7/2003B w katalogu PCB. Elektronika Praktyczna 6/2003 Korektor P R Osygnału J E Kwideo T Y Korektor sygnału wideo Velleman K8036 Prawdopodobnie niskie ceny magnetowidÛw powoduj¹, øe s¹ one nadal popularne, i†to pomimo anachronicznego (jak na pocz¹tek XXI wieku) sposobu rejestracji sygna³u wideo. Dostrzegaj¹c to, Velleman przygotowa³ ³atwy w†wykonaniu korektor sygna³u wideo, za pomoc¹ ktÛrego moøna przywrÛciÊ pierwotny ìblaskî wielokrotnie kopiowanym filmom. Rekomendacje: uk³ad polecamy kaødemu uøytkownikowi magnetowidu, ktÛry jest przywi¹zany do swojej kolekcji filmÛw i†chcia³by poprawiÊ jakoúÊ ogl¹danych obrazÛw. Zestaw Vellemana K8036 przeznaczony jest do poprawiania jakoúci sygna³u wideo. Uk³ad naleøy w³¹czyÊ w†torze wizji miÍdzy wyjúciem magnetowidu a†odbiornikiem telewizyjnym lub wejúciem innego magnetowidu. Korektor jest zbudowany w†oparciu o†cztery uk³ady scalone. Jego schemat elektryczny przedstawiono na rys. 1. Uk³ad w†zasadzie nie zmienia sygna³u luminancji i†chrominancji, a jego dzia³anie dotyczy tej czÍúci sygna³u wizyjnego, ktÛra jest zwi¹zana z†impulsami wygaszania linii i†ramki. Zapewne wszyscy Czytelnicy wiedz¹, øe w³aúnie w†tym mo- Elektronika Praktyczna 6/2003 mencie do sygna³u wizji nios¹cego informacje o†obrazie s¹ ìwmontowywaneî impulsy synchronizacji pozwalaj¹ce na prawid³owe odtwarzanie obrazu na ekranie telewizora. Pozornie te sygna³y nie maj¹ wp³ywu na to, co widaÊ na ekranie gdyø - jak sama nazwa wskazuje - sygna³ wizji jest wtedy wygaszany. Tym niemniej zachodzi wtedy kilka procesÛw istotnych z†punktu widzenia jakoúci obrazu. Jeøeli w†trakcie trwania wygaszania, oprÛcz impulsÛw synchronizacji pojawi¹ siÍ jeszcze impulsy zak³Ûcaj¹ce o†odpowiedPodstawowe parametry układu: ✓ gniazda wejciowe typu S-Video i Composite, ✓ gniazda wyjciowe typu S-Video i Composite, ✓ przeznaczenie do pracy z sygna³em PAL i NTSC, ✓ zasilanie +9V/100mA, ✓ wymiary p³ytki 100 x 84mm, ✓ maksymalna wysokoæ zamontowanych elementów 25mm. 21 Korektor sygnału wideo nio duøej amplitudzie i†czasie trwania, moøe dojúÊ do zaburzenia synchronizacji lub jej utraty, co uniemoøliwi zobaczenie czegokolwiek na ekranie telewizora. OprÛcz tego, w†czasie wygaszania ma miejsce proces odtwarzania poziomu czerni, czyli ustalenie poziomu odniesienia dla najciemniejszych i†najjaúniejszych fragmentÛw sygna³u wizji. Poziom ten powinien byÊ sta³y i†nie moøe na niego wp³ywaÊ uúredniona wartoúÊ sygna³u w†momencie, gdy ekran úwieci jasno lub jest ciemny. Jeøeli odtwarzanie poziomu czerni dzia³a wadliwie, ekran telewizora bÍdzie pulsowa³. Mog¹ teø pojawiaÊ siÍ na nim ciemne i†jasne pasy, co bardzo przeszkadza w†ogl¹daniu. Na zaburzenie procesu odtwarzania poziomu czerni mog¹ mieÊ wp³yw przypadkowe zak³Ûcenia, odtwarzanie przez magnetowid zuWYKAZ ELEMENTÓW Rys. 1. Schemat elektryczny korektora 22 Rezystory R1: 12kΩ R2, R6: 470Ω R3, R4: 220Ω R5: 430kΩ R7, R14: 560Ω R8, R12: 270Ω R9: 820Ω R10: 100Ω R11: 1,5kΩ R13: 10Ω Kondensatory C1, C2: 560pF C3...C9: 100nF C10: 10µF/6,3V C11...C13: 220µF/25V Półprzewodniki D1: BAT95 D2, D3: 1N4148 D4: 1N4007 LD1: LED czerwony LD2: LED zielony IC1: PIC12C506A IC2: CD4066B IC3: LM1881N IC4: TL072 T1: BC557 T2: BC547 VR1: µA7805 Różne SK1: gniazdo zasilania DC SK2: podwójne gniazdo Chinch do druku SK3: gniazdo miniDIN Elektronika Praktyczna 6/2003 Korektor sygnału wideo øytej kasety lub úwiadomie wprowadzane do sygna³u impulsy zak³Ûcaj¹ce, co jest stosowane w†prostszych systemach zabezpieczaj¹cych przed kopiowaniem. W†korektorze wykorzystano uk³ad LM1881, ktÛry z†ca³kowitego sygna³u wizji odfiltrowuje impulsy synchronizacji linii i†ramki oraz tzw. ìburstî koloru, ktÛrego po³oøenie w†sygnale systemu PAL okreúla koniec wygaszania i†pocz¹tek nowej linii wizji. Te impulsy podawane s¹ na porty wejúciowe QP3 i†QP4 procesora IC1, ktÛry ìwyg³adzaî sygna³ wizji w†czasie trwania okresu wygaszania tak, aby oprÛcz impulsÛw synchronizacji nie pojawia³y siÍ inne impulsy zak³Ûcaj¹ce. W†tym celu procesor wykorzystuje cztery klucze elektroniczne uk³adu IC2 oraz dwa wtÛrniki zbudowane na wzmacniaczach operacyjnych uk³adu IC4, a†takøe napiÍcie odniesienia VREF wytwarzane z†napiÍcia zasilania dzielnikiem rezystancyjnym R3 Elektronika Praktyczna 6/2003 i†R4. Gdy w†linii obrazu transmitowany jest sygna³ luminancji i†chrominancji, uk³ad nie ingeruje w†treúÊ sygna³u. Sygna³ z†wejúcia VIDEO IN jest podawany, poprzez kondensator C11, rezystor R9 i†stopieÒ wyjúciowy zbudowany z tranzystorÛw T1 i†T2, na wyjúcie VIDEO OUT. W†odpowiednich momentach wygaszania, dziÍki za³¹czeniu odpowiednich kluczy, poziom sygna³u ustalany jest na wartoúÊ odpowiadaj¹c¹ poziomowi VREF. OprÛcz sterowania ca³ym procesem, mikrokontroler PIC12C508 sygnalizuje obecnoúÊ lub brak sygna³u wizji poprzez zapalenie lub zgaszenie diody LED D2. Dioda D1 úwieci siÍ, gdy do uk³adu do³¹czone jest zasilanie. Ryszard Szymaniak, AVT [email protected] Zestawy firmy Velleman s¹ dostÍpne w†sieci handlowej AVT, moøna je zamawiaÊ takøe poprzez sklep internetowy www.sklep.avt.com.pl. 23 Akwizycja P R O J danych E K T przez Y Ethernet − zdalny moduł pomiarowy Akwizycja danych przez Ethernet Zdalny moduł pomiarowy, część 1 Jako przyk³ad zastosowania opisywanego niedawno modemu ST7537 wykonano eksperymentalny tor pomiarowy. Wielkoúci¹ mierzon¹ jest temperatura zewnÍtrzna. Moøe byÊ odczytywana na intranetowej (dzia³aj¹cej w†obrÍbie firmy) witrynie WWW, dziÍki czemu jest na bieø¹co dostÍpna w†przegl¹darce kaødego komputera maj¹cego dostÍp do sieci Ethernet. Rekomendacje: prezentujemy urz¹dzenie o†ogromnych walorach poznawczych - autor zintegrowa³ w†nim bowiem zaawansowany system pomiaru temperatury i†jednoczeúnie pokaza³ w†jaki sposÛb wyniki pomiarÛw udostÍpniÊ za pomoc¹ Ethernetu. 14 Schemat blokowy ca³ego toru pomiarowego przedstawiono na rys. 1. Jednym z†elementÛw toru transmisji danych jest para modemÛw wykonanych na uk³adach ST7537 (opis w†EP11/2002), za pomoc¹ ktÛrych moøna przesy³aÊ dane po przewodach domowej instalacji elektrycznej. Opis urz¹dzenia rozpoczniemy od prezentacji jego poszczegÛlnych blokÛw. Termometr Pt1000: czujnik platynowy i†wzmacniacz pomiarowy Czujniki platynowe - pomimo wielkiego postÍpu w†konstrukcji sensorÛw pÛ³przewodnikowych s¹ nadal stosowane w†technicznych pomiarach temperatury. Sk³ada siÍ na to ich niezawodnoúÊ, duøa dok³adnoúÊ, szeroki zakres pomiarowy, a†takøe powtarzalnoúÊ parametrÛw uzyskiwana dziÍki znormalizowanemu wykonaniu. RÛønorodny asortyment obudÛw, wielkoúci, sposÛb montowania (fot. 2) - przy identycz- nych technicznych parametrach pomiarowych (z wyj¹tkiem czasu reakcji wynikaj¹cego z†budowy), pozwala na uøycie takiego czujnika praktycznie w†kaødych warunkach. Czujnik stawia jednakøe pewne wymagania: - konieczna jest dobra kompensacja rezystancji (i jej zmian) linii pod³¹czeniowej, wi¹øe siÍ teø z†tym zalecenie stosowania okablowania o†duøych przekrojach, - potrzebny jest dok³adny, stabilny i†odpowiednio skalibrowany wzmacniacz wejúciowy dla przetworzenia niewielkich zmian rezystancji (dla Pt100 3 o C†to w†przybliøeniu 1†Ω) na sygna³ napiÍciowy lub pr¹dowy ìzrozumia³yî dla urz¹dzeÒ w†dalszej czÍúci toru pomiarowego. Czynniki te - w†po³¹czeniu ze spor¹ cen¹ i†ma³¹ dostÍpnoúci¹ w†handlu detalicznym - wyjaúniaj¹ niewielk¹ popularnoúÊ czujnikÛw platynowych w†konstrukcjach amatorskich. Tym razem jednak zastosowaliúmy do pomiaru temperatury typowe komponenty Elektronika Praktyczna 6/2003 Akwizycja danych przez Ethernet − zdalny moduł pomiarowy Fot. 2. Czujniki platynowe są oferowane w różnych obudowach Rys. 1. Schemat blokowy przykładowego toru pomiarowego z użyciem modemów ST7537 (na szaro zaznaczono bloki opisane już w EP) przemys³owe. Jako sensor pos³uøy³ czujnik temperatury zewnÍtrznej Pt1000 firmy Danfoss (typ ESMP stosowany w†pogodowych regulatorach obiegu centralnego ogrzewania w†wÍz³ach cieplnych). WspÛ³pracuj¹cy z†czujnikiem przetwornik zosta³ zbudowany na bazie specjalizowanego uk³adu ADT70 firmy Analog Devices. Schemat blokowy tego uk³adu pokazano na rys. 3. Znajdziemy na nim wszystkie elementy stosowane zazwyczaj w†uk³adach z†elementÛw dyskretnych: - dwa zrÛwnowaøone ürÛd³a pr¹dowe (o pr¹dzie nominalnym ok. 1†mA) do zasilenia rezystora wzorcowego oraz czujnika Pt, - wzmacniacz pomiarowy o†regulowanym wzmocnieniu i†moøliwoúci wprowadzenia sta³ego offsetu dla sygna³u, - ürÛd³o napiÍcia odniesienia 2,5†V. Scalenie tych zespo³Ûw pozwala na dokonanie w†procesie produkcyjnym dok³adnej kalibracji toru pomiarowego oraz umoøliwia prawid³ow¹ pracÍ w†szerokim zakresie warunkÛw zewnÍtrznych. Uk³ad jest wyposaøony w†tryb obniøonego poboru mocy (shutdown) oraz wzmacniacz operacyjny ogÛlnego stosowania. Wszystko to pozwala na szybkie i†niek³opotliwe zbudowanie precyzyjnego przetwornika dla sensora Pt, czyli eliminuje jedn¹ z†g³Ûwnych przeszkÛd zastosowania tego czujnika w†amatorskiej konstrukcji. Elektronika Praktyczna 6/2003 Zasada dzia³ania nie jest skomplikowana: ürÛd³a pr¹dowe zasilaj¹ jednakowym pr¹dem rezystor wzorcowy 1†kΩ oraz czujnik Pt1000. Rezystancja czujnika przy zmianach temperatury zmienia siÍ zgodnie z†jego charakterystyk¹. OgÛlnie bior¹c, nie jest ona idealnie liniowa w†szerokim zakresie temperatury, co wymaga odpowiedniej uk³adowej albo programowej kompensacji. Przy ograniczeniu zakresu do typowych wartoúci klimatycznych moøna jednak z†powodzeniem przyj¹Ê zaleønoúÊ liniow¹ 3,85 Ω/oC. NapiÍcia z†rezystora wzorcowego oraz czujnika s¹ podane na wejúcia wzmacniacza pomiarowego. Zastosowanie zewnÍtrznego rezystora odniesienia (zamiast wbudowania go w†strukturÍ) umoøliwia uøycie rÛønych odmian czujnika: Pt100, Pt500 albo Pt1000. Wzmocnienie napiÍcia rÛønicowego jest regulowane pojedynczym rezystorem RX - dziÍki temu moøemy dopasowaÊ zakres napiÍcia wyjúciowego uk³adu do rodzaju czujnika oraz do zakresu mierzonej temperatury. W†zaleønoúci od potrzeb moøemy teø ustaliÊ sposÛb pomiaru temperatury ujemnej. Zasilenie wejúcia V- napiÍciem ujemnym pozwala na uzyskanie skali ìnaturalnejî: 0†V na wyjúciu przy 0oC i†ujemne napiÍcie wyjúciowe przy temperaturach poniøej zera. Jeúli chcemy pozostaÊ przy pojedynczym zasilaniu - przesuwamy poziom napiÍcia wyjúciowego dla 0oC za pomoc¹ wejúcia Offset. Takie rozwi¹zanie zastosowano w†modelu termometru, zarÛwno ze wzglÍdu na uproszczenie zasilania, jak i†na zastosowany przetwornik AC o†zakresie wejúciowym 0...2,5 V. RÛøne moøliwoúci wykorzystania uk³adu znajdziemy w†notach katalogowych dostÍpnych na stronie producenta http://www.analog.com/. Rys. 3. Schemat blokowy układu ADT70 15 Akwizycja danych przez Ethernet − zdalny moduł pomiarowy Rys. 4. Schemat elektryczny termometru z czujnikiem Pt1000 16 Elektronika Praktyczna 6/2003 Akwizycja danych przez Ethernet − zdalny moduł pomiarowy Praktyczny uk³ad termometru Schemat elektryczny termometru pokazano na rys. 4. Jego uk³ad by³ w†znacznej mierze zaleøny od posiadanych ìpod rÍk¹î zapasÛw i†jest oczywiúcie jednym z†wielu moøliwych: - jako przetwornik AC pos³uøy³ uk³ad AD7893-2 z†pojedynczym zasilaniem, zakresem wejúciowym 0...2,5 V, odczytem szeregowym kompatybilnym z†SPI oraz wymaganym zewnÍtrznym napiÍciem odniesienia 2,5 V†(co nie jest øadn¹ komplikacj¹, bo w³aúnie takie napiÍcie referencyjne zapewnia ADT70). - ìsilnikiemî termometru zosta³ mikrokontroler AT89S8252 ze wzglÍdu na dobr¹ wspÛ³pracÍ z†p³ytk¹ modemu, wbudowanym interfejsem SPI, a†takøe moøliwoúci¹ programowania w†uk³adzie - co stworzy³o okazjÍ do wyprÛbowania modu³u ISP dopisanego do úrodowiska SDCC (z wykorzystaniem opisanego juø w†EP optoizolowanego adaptera do portu szeregowego po³¹czonego z†niewielk¹ przystawk¹). Jak widaÊ, wykorzystano wszystkie pomocnicze sygna³y z†p³ytki ST7537 (do³¹czonej za poúrednictwem 10-stykowego z³¹cza H1), tzn. sygna³ zegarowy 11,059 MHz, power-on-reset oraz watchdog. 6-stykowe z³¹cze P3-P8 s³uøy do pod³¹czania programatora ISP (jego konstrukcja pozwala podczas uruchamiania na do³¹czenie na sta³e bez zak³Ûcania pracy uk³adu). ZwrÛÊmy uwagÍ na diody D1 i†D2 - s³uø¹ one do eliminacji konfliktu poziomÛw na wyjúciu zerowania programatora oraz ST7537. Punkty lutownicze P13...P16 s³uø¹ do wyprowadzenia zrealizowanej programowo magistrali I2C. Za jej pomoc¹ jest sterowany modu³ typowego wyúwietlacza LCD 3,5 cyfry (opisywany w†EP4/ 99). Dodatkowy uk³ad komutacyjny zbudowany z†popularnych uk³adÛw 4093 i†4066 (U4 i†U5) pozwala na: - pomiar dodatkowego sygna³u napiÍciowego (podawanego na wejúcie P9), - pod³¹czenie dodatkowego zewnÍtrznego przycisku steruj¹cego (wejúcie P12), - odseparowanie ADC od magistrali SPI w†czasie programowa- Elektronika Praktyczna 6/2003 nia (AD7893 nie posiada øadnego wejúcia zezwalaj¹cego, wiÍc konieczne by³o wykonanie dodatkowego uk³adu). Wbudowane w†p³ytkÍ przyciski P1 i†P2 s³uø¹ do programowej regulacji offsetu sygna³Ûw wejúciowych. Dodatkowe poprawki offsetu (zapamiÍtane w†wewnÍtrznej pamiÍci EEPROM mikrokontrolera) upraszczaj¹ kalibracjÍ obwodÛw wejúciowych oraz umoøliwiaj¹ ³atw¹ kompensacjÍ rezystancji linii przy³¹czeniowej czujnika Pt. Dioda úwiec¹ca D3 ma charakter jedynie kontrolny - wspomaga uruchamianie, a†pÛüniej sygnalizuje poprawn¹ pracÍ uk³adu. DobÛr elementÛw i†kalibracja toru pomiarowego CzÍúÊ cyfrowa nie wymaga komentarzy - wystÍpuj¹ tu tylko rezystory podci¹gaj¹ce niewymagaj¹ce specjalnej precyzji w†doborze. WiÍcej uwagi musimy natomiast poúwiÍciÊ otoczeniu ADT70. Jako R6 naleøy zastosowaÊ dok³adny rezystor o†dobrej stabilnoúci temperaturowej (w prototypie uøyto 0,1%/25 ppm obecnie ³atwo dostÍpny oraz w†stosunkowo niskiej cenie) - od niego zaleøy dok³adnoúÊ prowadzonych pomiarÛw. Zakres pomiarowy przyjmiemy jako -50...+50oC, co wystarczy nawet w†przypadku ekstremalnych ìwybrykÛwî klimatu. Ten zakres temperatury ma odpowiadaÊ zmianie napiÍcia wyjúciowego od 0†do +2,5 V (zgodnie z†napiÍciem wejúciowym uøytego przetwornika A/ C). Jak wynika z†powyøszego, wzmocnienie uk³adu powinno wynosiÊ: k†=†2500†mV/100oC†=†25†mV/oC Z†noty aplikacyjnej ADT70 wiemy, øe dla Pt1000 wartoúÊ RX wynosi 49,9 kΩ przy wzmocnieniu 5†mV/oC oraz øe wzmocnienie jest odwrotnie proporcjonalne do RX. St¹d znajdujemy potrzebn¹ wartoúÊ jako: RX†=†49,9kΩ†*†(5/25)†=†9,98†kΩ W†prototypie przewidziano moøliwoúÊ dok³adnego ustawienia RX poprzez z³oøenie go z†szeregowo po³¹czonych R4 i†R5 oraz precyzyjnego potencjometru montaøowego. W†ten sposÛb moøna wykorzystaÊ posiadane w szufla- dzie zapasy elementÛw. Przy wiÍkszej serii uk³adÛw warto zamÛwiÊ docelow¹ wartoúÊ (jest to obecnie moøliwe w†iloúciach detalicznych). Jeszcze inna droga to uøycie typowej wartoúci 10 kΩ i†poprawkowe przeliczanie w†programie mikrokontrolera. PrzesuniÍcie 0oC uzyskujemy poprzez podanie na wejúcie OFFSET napiÍcia 1,25 V. Uzyskujemy je z†Vref za pomoc¹ dzielnika R2, R3. Obci¹øenie dzielnika minimalizujemy, wykorzystuj¹c dodatkowy wbudowany wzmacniacz operacyjny jako wtÛrnik. Dok³adna regulacja dzielnika nie jest wymagana - ustawienie napiÍcia offsetu jest realizowane na drodze programowej. ZarÛwno obwÛd RX, jak i†dzielnik musz¹ byÊ wykonane z†rezystorÛw metalizowanych o†duøej stabilnoúci temperaturowej. Bardzo waøna jest teø rola filtra wejúciowego R7, C4, C6. D³ugi przewÛd pod³¹czeniowy czujnika dzia³a jak antena zbieraj¹ca wszelkie zak³Ûcenia i†przydüwiÍki. Do³¹czenie go bezpoúrednio do wejúcia wzmacniacza pomiarowego wp³ynͳoby znacz¹co na stabilnoúÊ i†dok³adnoúÊ pomiaru. Potencjometr montaøowy R8 s³uøy do precyzyjnego zsynchronizowania ürÛde³ pr¹dowych. Praktyka pokaza³a, øe nie ma on zbyt wielkiego wp³ywu - w†ostatecznoúci moøna go pomin¹Ê. Kalibracja sprowadza siÍ do ustawienia potencjometrem R9 wyznaczonej wartoúci RX (pomiÍdzy wyprowadzeniami RGA i†RGB uk³adu ADT70) - co wykonujemy przy wy³¹czonym zasilaniu. NastÍpnie zamiast czujnika do³¹czamy precyzyjny rezystor 1†kΩ i†potencjometrem R8 wyrÛwnujemy napiÍcia na wejúciach -IN/+IN. Montaø i†uruchomienie Poniewaø uk³ad mia³ w†znacznej mierze charakter testowy, zosta³ zmontowany (kosztem zwiÍkszonej liczby zworek) na taniej p³ytce jednowarstwowej. Jej schemat montaøowy pokazano na rys. 5. Przy okazji informacja praktyczna dla CzytelnikÛw zajmuj¹cych siÍ samodzielnym projektowaniem druku. OtÛø oszczÍdnoúÊ zosta³a w†prototypie p³ytki zrealizowana w†zbyt prosty sposÛb usun¹³em z†projektu gÛrn¹ warstwÍ druku (sk³adaj¹c¹ siÍ tylko 17 Akwizycja danych przez Ethernet − zdalny moduł pomiarowy Rys. 5. Rozmieszczenie elementów na płytce termometru z†prostych odcinkÛw úcieøek), aby przy montaøu zast¹piÊ j¹ zworkami. Przy samodzielnym wytrawieniu i†owierceniu p³ytki da³o to spodziewany efekt. Montaø jest typowy i†nie wymaga specjalnego komentarza, naleøy jedynie uwaøaÊ, aby nie zapomnieÊ o†zworach pod uk³adami scalonymi. Wszystkie z³¹czki (2x5 do p³yty modemu, 1x6 do programatora, 1x4 do modu³u LCD) w†prototypie wykonano z†listew goldpin, ale moøna je oczywiúcie skompletowaÊ w†dowolny sposÛb, korzystaj¹c z†posiadanych zapasÛw. Po zweryfikowaniu poprawnoúci lutowania i†sprawdzeniu, czy nie ma zwarÊ, ³¹czymy p³ytkÍ z†modu³em modemu ST7537 (EP11/2002) 10-øy³ow¹ taúm¹ z†zaciskanymi wtykami (poniewaø gniazda s¹ zrobione ze zwyk³ych listew podwÛjnych i†nie maj¹ øadnych kluczy, zwrÛÊmy uwagÍ na zgodnoúÊ mas i†zasilaÒ). Po w³¹czeniu zasilania modemu sprawdzamy najwaøniejsze napiÍcia (+5†V, +2,5 V referencja, +1,25†V offset) i†jeúli wszystko dzia³a prawid³owo, moøemy przyst¹piÊ do zaprogramowania mikrokontrolera. Program (dostÍpny rÛwnieø w†postaci ürÛd³owej w†materia³ach pomocniczych, ktÛre opublikujemy na CD-EP7/2003) jest napisany w†C i†skompilowany za pomoc¹ bezp³atnego SDCC (opisywanego juø na ³amach EP). Nie jest specjalnie rozbudowany - jego funkcje s¹ nastÍpuj¹ce: - cykliczne odczytywanie wartoúci mierzonej poprzez SPI i†³adowanie do bufora, - uúrednianie wyniku z†4†ostatnich pomiarÛw, - obs³uga modu³u wyúwietlacza LCD 3,5 cyfry poprzez programowy interfejs I2C, - wysy³anie wartoúci temperatury w†odpowiedzi na komendÍ oddalonego terminala, - obs³uga przyciskÛw korekty offsetu i†zapis poprawek do wewnÍtrznej EEPROM, - realizacja 0,5 s†opÛünienia dostÍpu do SPI po zerowaniu (zalecenie Atmela dla unikniÍcia blokady ISP). Wszelkie szczegÛ³y dotycz¹ce konkretnych rozwi¹zaÒ programowych zainteresowani znajd¹ w†kodzie ürÛd³owym. Program moøemy wpisaÊ do pamiÍci Flash za pomoc¹ dowolnego programatora, korzystaj¹c z†pliku wynikowego *.ihx kompilatora SDCC. Jest to zwyk³y format Intel Hex tylko Rys. 6. Schemat przystawki do programowania ISP 18 WYKAZ ELEMENTÓW Rezystory R1, R11: 3,3kΩ R2, R3: 10kΩ 1% metalizowane R4: dobierany 1% metalizowany − w prototypie 8,66kΩ R5: dobierany 1% metalizowany − w prototypie 1,30kΩ R6: precyzyjny 0,1% 25 ppm R7: 4,7kΩ 1% metalizowany R8: potencjometr montażowy wieloobrotowy 47kΩ R9: potencjometr montażowy wieloobrotowy 100Ω R10: 4,7kΩ R12: 1kΩ Kondensatory C1...C3, C6, C7: monolityczne 100nF/50V C4: tantalowy 33µF/10V C5: elektrolityczny 10µF/16V Półprzewodniki U1: AT89S8252 (zaprogramowany) U2: AD7893−2 U3: ADT70 U4: 4066 U5: 4093 D1, D2: 1N4148 D3: LED Różne Podstawka PLCC44 Z1: zacisk śrubowy podwójny listwy goldpin podwójne i pojedyncze Taśma 10x i wtyki zaciskane Moduł wyświetlacza LCD 31/2 cyfry (EP4/99, AVT−809) Przystawka programująca Rezystory R1...R3: 330Ω R4: 10kΩ Kondensatory C1: 100nF C2: 10nF Półprzewodniki D1: uniwersalna dioda Schottky'ego np. BAT 85 U1: 74HC640 Różne Listwa goldpin kątowa z†innym rozszerzeniem (zwrÛÊmy jednak uwagÍ, aby nasz programator umia³ szeregowaÊ rekordy wed³ug rosn¹cych adresÛw - plik *.ihx nie zawsze jest uporz¹dkowany). Jeúli natomiast decydujemy siÍ na uøycie opisywanego w†EP wspomagaj¹cego úrodowiska dla SDCC, warto wyposaøyÊ siÍ Elektronika Praktyczna 6/2003 Akwizycja danych przez EthernetAkwizycja − zdalny moduł danych pomiarowy przez Ethernet − zdalny moduł pomiarowy Rys. 7. Okno programatora ISP w środowisku SDCC w†dedykowany specjalnie dla niego programatorek. Po wprowadzeniu programu i†zerowaniu powinna powoli migotaÊ dioda kontrolna D3. Wyúwietlacz pozostaje wygaszony do chwili wype³nienia bufora uúredniania (4 pomiary). Gdy do³¹czymy do zaciskÛw Z1 rezystor wzorcowy 1†kΩ, wyúwietlacz powinien pokazaÊ temperaturÍ oko³o zera sprowadzamy j¹ do wartoúci zerowej przyciskami korekty offsetu P1 i†P2. Dla sprawdzenia zdalnego odczytu musimy mieÊ przygotowany zestaw modemÛw opisanych w†EP11/2002. P³ytki modemÛw ³¹czymy prowizorycznie odcinkiem przewodu i†prÛbujemy po³¹czyÊ siÍ z†termometrem za pomoc¹ programu testowego. Jeúli wszystko dzia³a, moøna zmontowaÊ uk³ad w†konfiguracji docelowej. Pozostaje nam sprawdzenie, czy transmisja w sieci dzia³a oraz korekta offsetu dla wyeliminowania wp³ywu rezystancji linii pod³¹czeniowej czujnika Pt1000 (przy jej wiÍkszej d³ugoúci). Moøliwe k³opoty z†transmisj¹ by³y opisane w†artykule o†modemie - w†razie potrzeby naleøy tam siÍgn¹Ê po dodatkowe informacje. Programator ISP8252 dla IDE SDCC Programator korzysta z†portu szeregowego komputera z†pod³¹czonym adapterem optoizolacyjnym opisanym w†miniprojektach w†EP11/2002. Jedn¹ z†g³Ûwnych Elektronika Praktyczna 6/2003 zalet tego rozwi¹zania jest ca³kowita separacja galwaniczna portu od uruchamianego uk³adu. PomiÍdzy optoizolatorem a†mikrokontrolerem jest do³oøona ma³a przystawka, ktÛrej schemat pokazano na rys. 6. Uwaga! Opisy stykÛw RS232 s³uø¹ wy³¹cznie do ich identyfikacji - przystawki absolutnie nie naleøy do³¹czaÊ bezpoúrednio do portu COM komputera! Za pomoc¹ przystawki moøna: - uzgadniaÊ poziomy na liniach steruj¹cych, - wykonywaÊ zalecan¹ przez producenta sekwencjÍ prze³¹czenia w†tryb programowania (obwÛd opÛüniaj¹cy R4, C2 w³¹cza zerowanie dopiero po ustabilizowaniu na SCK ìsilnejî masy), - ustawiaÊ linie steruj¹ce w†stan wysokiej impedancji po zakoÒczeniu programowania, co pozwala na normaln¹ pracÍ uruchamianego uk³adu bez od³¹czania programatora. Przy uøyciu tego interfejsu moøemy ³adowaÊ kod bezpoúrednio ze úrodowiska SDCC (F12 albo automatycznie po poprawnej kompilacji). Programowanie obserwujemy w†okienku wskaünika postÍpu - rys. 7. Najnowsza wersja úrodowiska SDCC z†obs³ug¹ opisywanego programatora jest dostÍpna pod adresem http://www.easy-soft.tsnet.pl/. Jerzy Szczesiul, AVT [email protected] Wzory p³ytek drukowanych w formacie PDF s¹ dostÍpne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/czerwiec03.htm oraz na p³ycie CD-EP7/2003B w katalogu PCB. 19 PHANTOM − dekoder surround ▲ Korektor sygnału wideo ▲ Dekodery dźwięku dookólnego cieszą się sporym zainteresowaniem wśród naszych Czytelników. Jeden z możliwych do wykonania wa− riantów przedstawiamy na str. 25. ▲ Projekt z cyklu „jak to robią inni” − proste w wykonaniu, lecz skuteczne opracowanie przedstawiamy na str. 21. „Klocki” RS485 ▲ Interfejs RS485 cieszy się uzasadnio− nym zainteresowaniem wśród elektroników, którym potrzebne jest medium pozwalające przesyłać dane na duże odległości. Str. 41. Krokowy sterownik silnika DC Proste urządzenie, którego opis przedstawiamy na str. 72 pozwala ekonomicznie regulować obroty silnika DC. ▲ Sterowanie graficznych wyświetlaczy z telefonów komórkowych firmy Nokia Druga część artykułu, w którym autor zdradza tajniki sterowania najtańszych wyświetlaczy graficznych. Str. 83. ▲ Dekoder−sterownik 7−segmento− wego wyświetlacza LCD w VHDL Kolejny IP−projekt ilustrujący możliwości jednego z języków HDL i współczesnych układów programowalnych. Str. 31. ▲ „Przedłużacz” do cyfrowego toru audio Projekt prezentowany na str. 37 przyda się użyt− kownikom nowoczesnego sprzętu audio, w którym w nie zawsze ustalonym porządku występują wejścia/wyjścia optyczne i koaksjalne. Kamera termograficzna V−20 ▲ 6 Czujniki zbliżeniowe firmy Omron Omron dla automatyki robi niemal wszystko − str. 129. ▲ Polacy nie gęsi... Sprawdźcie to stwierdzenie na str. 126. Elektronika Elektronika Praktyczna Praktyczna 6/2003 Nr 6 (126) czerwiec 2003 Projekty Akwizycja danych przez Ethernet − zdalny moduł pomiarowy, część 1 ................................................................. 14 Korektor sygnału wideo ........................................................... 21 PHANTOM − dekoder surround, część 1 ................................ 25 Dekoder−sterownik 7−segmentowego wyświetlacza LCD w VHDL ....................................................................................... 31 Zimno, zimno, ciepło, ▲ czyli Lämpömittari „Przedłużacz” do cyfrowego toru audio ............................... 37 Dotrzymujemy słowa i na str. 77 przedstawiamy opis programu na PC, spełniającego rolę termometru współpracującego z czujnikami DS18x20. Girder − współpraca z nadajnikiem RC5 AVT−5104 .............. 45 „Klocki” RS485, część 1 ............................................................ 41 Miniprojekty Regulator temperatury w akwarium ..................................... 71 Krokowy sterownik silnika DC .................................................. 72 Notatnik Praktyka Płytki drukowane w domu, część 1 ....................................... 51 Programy Protel DXP − przełom na rynku narzędzi EDA dla elektroników, część 4 ........................................................ 62 Autorouter Specctra, część 5 ................................................. 69 Zimno, zimno, ciepło, czyli Lämpömittari .............................. 77 Sprzęt Sound Blaster Audigy 2 Platinum eX ...................................... 68 Kurs Płytki drukowane ▲ w domu Podstawy projektowania systemów mikroprocesorowych, część 4 ................................................ 81 Domowe sposoby wykonywania płytek drukowanych „pachną” wiedzą tajemną. Ich tajniki przedstawiamy w pierwszej części artykułu na str. 51. Sterowanie graficznych wyświetlaczy z telefonów komórkowych firmy Nokia, część 2 ....................................... 83 Język C dla mikrokontrolerów 8051, część 13 ...................... 86 Automatyka Kamera termograficzna V−20 ............................................... 126 Czujniki zbliżeniowe firmy Omron ......................................... 129 Wielofunkcyjna programowalna karta licznikowa APCI−1710 ............................................................. 132 VersaMax − nowoczesne sterowniki PLC GE Fanuc jest producentem sporej rodziny interesujących sterowników PLC. Garść podsta− wowych informacji na ich temat przedstawiamy na str. 135. VersaMax − nowoczesne sterowniki PLC ............................. 135 Projekty Czytelników Inteligentna ładowarka akumulatorów NiCd/NiMH ........... 89 Z kraju i ze świata ........................................................ 115 Biblioteka EP ................................................................. 123 ▲ Kramik+Rynek ................................................................ 93 Listy ................................................................................... 99 Ekspresowy Informator Elektroniczny ..................... 111 Wykaz reklamodawców ............................................ 114 Elektronika Praktyczna 6/2003 7