NA CD KATALOGI MIESIĄCA: g Międzynarodowy magazyn elektroników konstruktorów 1/2002 > styczeń > 15 zł 50 gr (wtym7%vAT) Ś Ś Ś ŚŚ 'ŚŚŚI MIII Ś ŚŚŚŚI Ś ŚŚŚŚI ŚI 771Ł1D 7Ł1D25 Oermany: 12DM, Fran Rozładowarka i miernik pojemności aku mu lat orko w Część 1 - moduł sterujący Przyrząd prezentowany w ańykule siuży do mierzenia pojemności, zarówno pojedynczych ogniw jak i baterii akumulatorowych o napięciu (bez obciążenia) do 35V. Wymagane jest jedynie, aby napięcie pojedynczego ogniwa mieściio się w granicach od 0,5V do 2,5V. Podczas rozładowywania napięcie jest mierzone i zapisywane w pamięci w minutowych odstępach. Pozwala to na wykreślenie krzywej rozładowania natychmiast po zakończeniu procedury. Jak widać na fotografii, miernik pojemności cechuje prostota konstrukcji. Jest on wyposażony w 12-przyciskową klawiaturę do kie informacje są wyświetlane na 16-znakowym wyświetlaczu ciekł okiys tali c znym. Baterię dołącza się do dwóch zacisków wypiowa- go i czarnego. Na płycie czołowej są wmontowane także dwa przełączniki suwakowe, z których jeden służy do włączania i wyłączania, funkcja drugiego będzie opisana dalej. Z tyłu obudowy umieszczono duży radiatoi z tranzystorem rozładowującym oraz osiem sporych otworów, przez które w trakcie rozładowywania wentylatora) w kierunku ladiatoia jest wydmuchiwane powietrze chłodzące. Umożliwiło to niemal dwukrotne zwiększenie mocy ioz- Rozładowaika jest całkowicie autonomicznym przyrządem, ale jak zostanie dalej wyjaśnione, do jej prawidłowej pracy - w niektó- rych sytuacjach - niezbędny będzie jeszcze komputer. Dlatego z lewej strony obudowy znajduje się 9-stykowe złącze do łączenia z portem szeregowym PC. Z Działu Obsługi Klienta Electoi Electronics (http://www.elektoi-elect-ronics.co.uk) można otrzymać dyskietkę z odpowiednim opiogiamo- Opis działania Po włączeniu przyrządu na wyświetlaczu pokazuje się napis "NiCad Dischaigei" (Rozładowy-waika NiCd). Naciśnięcie klawi - pieiwszej opcji menu, drugie jego naciśnięcie wyświetlenie drugiej opcji itd. W sumie jest 6 opcji menu. Klawisz "#" służy do potwierdzania poleceń, czyli jest odpowiednikiem komputerowego po wybraniu właściwej opcji menu aktywizuje te opcję. Dane wprowadzone z menu ukazują się na wyświetlaczu, gdy klawisz "#" pozostaje wciśnięty. Po jego zwol- cą klawiszy cyfrowych wprowadzać nowe dane. Trzeba je następ- Elektronika Praktyczna 1/2002 Rys. 1. Podstawowym elementem modułu sterującego jest mikrosterownik typu ST62T65. nie potwierdzić naciśnięciem kla- wyświetlaczu ponownie pojawia wiszą "#". się napis "NiCad Discharger". W trakcie posługiwania się klawiaturą w tle działa licznik czasu. Menu Po kilku sekundach od wprowa- Istnieje sześć opcji menu. Zo- dzenia błędnych danych lub po staną one krótko omówione. Poz- przerwie w ich wprowadzaniu na namy równocześnie wszystkie możliwości (i "niemożliwości") rozładowarki. Pozycje ustalania w menu służą do wprowadzania danych, a pozostałe do przełączania. Set loadcurrent? (ustalić prąd rozładowania?) - Przyciśnięcie i przytrzymanie klawisza "#" powoduje wyświetlenie aktualnie ustawionego prądu rozładowania. Po zwolnieniu klawisza pojawia się pytanie "Current: ???? mA", po czym można wprowadzić nowe natężenie prądu rozładowania. Jeżeli nie chce się go zmieniać, należy albo odczekać chwilę, albo nacisnąć klawisz "#" (w celu potwierdzenia), a na wyświetlaczu pojawi się komunikat "! not accepted !" (! nie zaakceptowane !), po czym nastąpi niemal natychmiastowy powrót do menu opcji. Najmniejsza wartość natężenia prądu wynosi lOOOmA, największa 2500mA, a najmniejszy przyrost wartości prądu lOmA. Wartości do 5mA są zaokrąglane w dół, a powyżej 5mA w górę. Set nr of cells? (Ustalić liczbę ogniw?). - Wprowadza się liczbę ogniw baterii (maksimum 20). Set volts/cell? - (Ustalić napięcie ogniwa?). Opcja ta służy do ustalenia napięcia, przy którym ogniwo należy uznać za rozładowane. Wartość ta musi mieścić się w granicach od 0,5V do 2,5V. Dla ogniw NiCd lub NiMH, rozładowywanych prądem 0,5A, właściwym napięciem końca rozładowywania jest 1,1V. Przy większych wartościach prądu za napięcie to można przyjąć IV, a nawet 0,9V, uwzględniając spadek napięcia na rezystancji wewnętrznej ogniwa. Zaciski ogniw ze sprężynowymi stykami mogą mieć spore rezystancje styków. Duży zakres napięć pozwala rozładowywać także kwasowe akumulatory ołowiowe. Stań discharge? - (Rozpocząć rozładowywanie?). Po potwierdzę- 46 Elektronika Praktyczna 1/2002 niu klawiszem "#" napięcie baterii jest porównywane z iloczynem liczby ogniw przez napięcie ogniwa. Jeżeli jest większe, rozpoczyna się proces rozładowywania. Najpierw zawartość pamięci próbkowania jest kasowana, ("Clearing memory!", kasowanie pamięci), a następnie prąd jest zwiększany do wybranego natężenia ("Setting current!" - ustalanie prądu). Wtedy zostaje włączony wentylator chłodzący, a czas kasowany do zeia. W trakcie rozładowywania na wyświetlaczu pojawiają się na przemian czas, który upłynął i wartości rozładowanej pojemności. W tym czasie menu opcji pozostaje aktywne, jednak bez możliwości zmiany wyświetlanych wartości. Proces ten jest kontynuowany aż do osiągnięcia ustalonego napięcia, albo zatrzymania ro zł a do wy w ani a: Stop discharge? - (Zatrzymać rozładowywanie?). Polecenie to umożliwia właśnie wcześniejsze zatrzymanie procesu rozładowywania. See last result? - (Wyświetlić ostatni wynik?). Po zakończeniu rozładowywania rozlega się sygnał dźwiękowy i na przemian są wyświetlane czas jego trwania i zmierzona pojemność. Informacje te znikają z naciśnięciem dowolnego klawisza. Opcja ta pozwala ponownie wyświetlić wyniki pomiaru. Moduł sterujący Działaniem rozładowaiłd zarządza niewielki moduł sterujący, którego schemat pokazano na rys. 1. Jego "rdzeniem" jest zaprogramowany mikiokontioler. W układzie tym nie mieści się program do sterowania rozładowarką, zawiera on natomiast interpreter, odczytujący i wykonujący programy. Programy te są zapisywane w EEP-ROM i mogą być ładowane bezpośrednio z PC. Programy rozła-dowarki są napisane w języku Chip i skonsolidowane za pomocą asemblera Chip. Najważniejszym elementem urządzenia jest miki okoń troi er ST62T65 firmy ST-Microelectio-nics (IC2). Mikro sterownik ten zawiera szereg dodatkowych składników, jak timer standardowy, timer samoprzeładowujący się, przetwornik analogowo-cyfrowy OOOOOOOOOOOOOO Rys. 2. Mozaika ścieżek płytki drukowanej modułu sterujqcego oraz rozmieszczenie na niej elementów. i interfejs szeregowy SPI. Timer standardowy jest używany jako zegar odmierzający czas w sekundach, minutach, godzinach, dniach tygodnia i tygodniach roku. Przez ten zegar są kontrolowane poszczególne timery programowe. Samoprzeładowujący się czasomierz może być między innymi używany do niezależnego sterowania dwoma serwomechanizmami, ale także przeprogramowany do generacji napięcia. Zegar reguluje się dokładnie za pomocą bajtu programowego, co może być dokonywane przez użytkownika. Wartość tę ładuje się do czasomierza co minutę. Pięć wyjść cyfrowy ch (Out0...0ut4), za pośrednictwem chroniących miki o sterownik rezystorów szeregowych, zostało wyprowadzonych na złącze Kl. Wyj- ścia te mogą być ustawiane lub kasowane, a stan każdego z wyjść może być odczytywany ponownie. Wyjścia serwo K2 iK3 mogą być użyte do zwyczajnych serwomechanizmów, albo można z nich otrzymać napięcie. Blok doprowadzeń K4 służy pięciu wejściom (InputO...Input4), które mogą być odczytywane zarówno w trybie analogowym jak i cyfrowym. Złącze sub-D K6 jest przeznaczone do komunikacji z PC. Sygnał wejściowy jest obcinany przez R21, D6 i D7, a za pośrednictwem Rl3 jest doprowadzany do wejścia SPI (SIN) mikro ster o wnika. Szeregowy sygnał wyjściowy (SOUT) dociera do wyjściowego styku złącza za pośrednictwem analogowego wyłącznika IC3A. Gdy wyłącznik ten jest rozwarty, wyjście jest sprowadzane do poziomu nis- Elektronika Praktyczna 1/2002 47 kiego przez Rl8. Poziomy sygnałów nie są zgodne z normą RS232, ale pomimo to układ działa niezawodnie, o ile kabel łączący nie jest zbyt długi. W czasie trwania połączenia na PCO występuje poziom wysoki IC3A zwarty, a IC3C i IC3D rozwarte. Gdy PCO przyjmuje poziom niski, EEPROM (IC4) łączy się z SPI, a zapis zostaje dozwolony za pośrednictwem WC. Procedury programowe mogą teraz, za pomocą protokołu PC, dotrzeć do EEPROM z operacjami odczytu i zapisu. SPI transmituje dane z częstotliwością 308kHz. Jednowierszowy, 16-znakowy wyświetlacz ciekłokrystaliczny, jest połączony z modułem za pośrednictwem złącza K7. Do sterowania magistralą danych wyświetlacza jest używany przetwornik szeregowo-równoległy (IC5), dzięki któremu do tego zadania wystarczają trzy sygnały mikioste-rownika: z PA5 (sygnał zegarowy, z PA6 (dane) i z PA7 (sygnał stio-bujący). Dla IC5 sygnał stiobujący jest dodatni, więc sygnał z PA7 może być używany także jako (ujemny) sygnał strobujący do taktowania przepływu danych do wyświetlacza. PA6 jest wejściem i do niego jest przyłączony przycisk Sl. Stan tego przycisku jest testowany co sekundę przez system operacyjny i jeżeli został on naciśnięty, działający program Chip zostaje zakończony, a sterowanie jest przekazywane do procesora rozkazów. Sl nie jest więc przyciskiem kasowania, tylko dzia- ła jako przycisk przerwania -zegar czasu rzeczywistego działa nadal. Połączenie Reg/Sel wyświetlacza służy do wybierania między trybem znakowym a trybem poleceń. Terminal ten jest sterowany sygnałem z wyjścia PB5, które służy również do sterowania brzęczykiem BZl. Przy pierwszym opadającym zboczu sygnału zegarowego - wpisującym dane do rejestru przesuwnego wyświetlacza - rozwierany jest wyłącznik analogowy IC3B i brzę-czyk jest odłączany (D3, Rl5, C7). Po zakończeniu przesyłania danych C7 ładuje się przez Rl5 i IC3 zostaje zwarty. Kontrast wyświetlacza reguluje się potencjometrem Pl. Zerowanie mikrokontiolera po włączeniu zasilania zapewnia obwód Dl, R14 i C6. Auto-start interpretera Chip można zapewnić zworką w K5. W czasie włączania modułu Chip przez C8 i D5 jest na moment zwierany przycisk Sl. Kondensator C8 ładuje się przez Rl7 i przycisk zostaje zwolniony. Gdy w K5 nie ma zworki, ten sam efekt można uzyskać naciskając Sl w czasie włączania. Na schemacie w nazwie mikio-sterownika jest litera B. Można jednak użyć nowszej wersji mikio-sterownika ST62T65C. Jeśli zostanie w nim dozwolona opcja LVD (detekcja niskiego napięcia) to elementy Dl, Rl4 i C6 mogą być pominięte. Należy więc wcześniej sprawdzić wersję zastosowanego miki o s terów nika. Montaż Na rys. 2 pokazano schemat m onta ż owy j edno s ti onne j pły tki drukowanej modułu sterowania. Płytka ta może być dostarczona wraz z płytką modułu rozładowar-ki, który będzie opisany w następnej części artykułu. Montaż takiego modułu rozpoczynamy od wlutowania ośmiu zworek ze srebrzanki, nie zapominając o zworce pod podstawką IC2. Następnie powinno się wlutować elementy niskoprofiłowe, a na koniec wyższe, jak kondensatory elektrolityczne Cl i C2. Układy scalone wstawia się do podstawek dopiero po skończeniu lutowania i starannym sprawdzeniu całej płytki. Użycie jako pamięci EEPROM układu innego niż sugerowany (ST24C16) wiąże się ze zmianami związanymi z jego wyprowadzeniem 7. W innych pamięciach EEPROM funkcja wyprowadzenia WC może być inna, co mogłoby zablokować operację zapisu. W takim przypadku końcówkę 7 należy zworką JPl połączyć z masą. Połączenie z wyświetlaczem można wykonać albo przewodem taśmowym, albo luźnymi giętkimi przewodami o długości 15cm. Połączenia dokonuje się poprzez 14-stykowe złącze K7. Do zasilania płytki (4,5 do 6V) przy uruchamianiu wystarczy płaska bateria 4,5V (3LR12). System operacyjny Moduł sterujący komunikuje się z PCtem, na którym jest program terminalowy, za pośrednictwem interfejsu szeregowego. Parametry interfejsu ustala się na 19200, 7, n, 2. Oprogramowanie zawiera program terminalowy CfflPTERM.EXE (i jego wersję do Windows ,,VBTERTvT), za pomocą którego można ładować programy do EEPROM. Opis działania jest zawarty w README.EXE. Przy wprowadzaniu można używać jedynie małych liter. Po wpisaniu polecenia i potrzebnych parametrów, wiersz kończy się naciśnięciem klawisza "Enter", po czym procesor przechodzi do działania. Błędy można korygować klawiszem "Backspace", a cały wiersz kasować klawiszem "Es-cape" (Esc). 48 Elektronika Praktyczna 1/2002 WYKAZ ELEMENTÓW Płytka sterowania Rezystory Rl: 2,2ft R2: bezpiecznik IAT (zwłoczny) Picofuse (np. Farnell 446-944) R3...R12: lkn R13, R1S: R14: R15: Rló: l,5kn R17: 220kft R19, R20: 4 R21.R22: Pl: 5kLX potencjometr nastawczy Kondensatory Cl, C2: 100^F/25V, stojqcy C3, C10...C13: lOOnF, ceramiczny C4, C5: 27pF Có: 1^FÓ3V, stojqcy# C7: 4,7nF, odstęp 5mm CS: 4,7^F/Ó3V, stojqcy C9: 470pF Półprzewodniki Dl#, D3...D7: BATS5 D2: 1N414S IC1: 4001 IC2: ST62TÓ5, zaprogramowany, kod 010201-41 IC3: 40ÓÓ IC4: ST24C1Ó IC5: 4094 Różne K1-K4: złqcze sztyftowe 12 x3 K5: złqcze 2-sztyftowe Kó: złqcze D-9 żeńskie, kqtowe, do druku K7: 14-sztyftowe złqcze SIL JP1: złqcze 3-sztyftowe ze zworkq Sl: przycisk typu Dó (ITT/Schadow) Xl: rezonator kwarcowy SMHz Bzl: brzeczyk prqdu zmiennego LCD: wyświetlacz ciekłokrystaliczny z matrycq punktowq lxló znaków, 80 x3ó xl0 (np. Farnell # 142-542) oraz 14-stykowe złqcze żeńskie SIL płytka drukowana, kod 010201-1 (dostarczana wraz z płytkq rozładowarki 010201-2 *) ne montować przy ST63T65 typu C Wszystkich poleceń jest siedem. Zostaną one omówione krótko, ponieważ są oczywiste. Po włączeniu modułu, gdy program został uruchomiony, naciśnięcie klawisza "Enter" wywołuje na wyświetlaczu napis "command?", a w następnym wierszu symbol zachęty "?". Wprowadzenie znaku "?" (zakończone przez Enter) wywołuje ukazanie się na ekranie zestawu wszystkich poleceń (rys. 3): próg [adres]: polecenie to umożliwia odczytywanie i zapisywanie danych do EEPROM. Wyświetlane są numery tylko parzystego adresu, po którym następują bajty zapisane pod tym i kolejnym adresem. Każda instrukcja Chipa składa się z dwóch bajtów. Najniższym adresem jest OOOh, a najwyższym 7FFh. Adresy można podwyższać lub obniżać za pomocą klawiszy + i -. Po wprowadzeniu dwóch bajtów zostają one zapisane, a adres zwiększony. Do powrotu do procesora poleceń służy klawisz "Escape". chip: polecenie to uruchamia program zapisany w języku Chip pod adresem OOOh. Procesor poleceń zaprzestaje wtedy działania. Program Chip może także być uruchomiony przez naciskanie Sl w czasie włączania modułu, albo gdy w K5 jest wstawiona zworka. Działanie programu można przerwać naciśnięciem przycisku Sl. Instrukcja przerwania lub błąd mogą także przerwać działanie programu. ńme: po wprowadzeniu tego polecenia na ekranie zostanie wyświetlony 24-godzinny zegar. Naciśnięcie "Enter" wywołuje szare pole, umożliwiające korektę ustawień zegara. Dwukrotne naciśnięcie "Escape" pozostawia stan zegara bez zmian. page, mem i put: polecenia te służą do zapisywania i odczytywania rejestrów w miki o kontrolerze. Najpierw jednak kilka uwag o zakresie adresów 00h...3Fh. W mikro sterowniku, oprócz normalnej pamięci RAM, znajdują się dwie stronice EEPROM i dodatkowa stronica RAM. Za pomocą polecenia "page" jedna z tych stronic jest odwzorowywana w zakresie adresów 00h...3Fh. Na stronie 0 EEPROM, w zakresie adresów 00h...0Fh, umieszcza się komunikat początkowy, a pod adresem lOh bajt regulacyjny zegara. Najpierw za pomocą "mem 0" należy wybrać adres OOh mikio-sterownika. Na ekranie pojawi się ten adres (na stronicy dodatkowej RAM) wraz z odpowiednim bajtem. Za pomocą "page 0" wybiera się stronicę 0 EEPROM. Pod ten adres poleceniem "put byte" próg chip t1me page mem put ? AlT+q-quiT, Alt+l=1oad Chip, Rys. 3. Przedstawiany na ekranie zestaw poleceń. wpisuje się "by te". Klawiszem "+" zwiększa się wartość adresu (a klawiszem "-" zmniejsza). Można teraz wpisać komunikat początkowy do EEPROM-u mikro-s ter o wnika: 2a, 20, 48, 69, 2c, 20, 49, 27, 6d, 20, 43, 68, 69, 70, 20, 2a. Po wprowadzeniu do EEPROM-u wszystkich bajtów, do procesora poleceń przechodzi się naciśnięciem klawisza "Esc". Mając listę znaków w kodzie ASCII można bez trudu rozszyfrować ten komunikat. Aby go wyświetlić na wyświetlaczu, trzeba wy-zerować moduł kontrolny wyłączając na krótko zasilanie. Pod adresem lOh tej samej stronicy, dokładnie w ten sam sposób, umieszcza się bajt regulacyjny zegara. Zegar prawdopodobnie będzie wskazywał właściwy czas przy wartości EAh. Zatem "mem 10", "page 0", "put ea". Ze zwiększeniem tej wartości zegar będzie szedł wolniej, a ze zmniejszeniem, szybciej. Wynik będzie zauważalny dopiero po 24 albo więcej godzinach. Nie można zapominać o skasowaniu modułu, bajt ten bowiem jest odczytywany jedynie przy włączeniu zasilania, tak jak komunikat początkowy. B. Stuurman, EE Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 45..49 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Elektronika Praktyczna 1/2002 Sposób na sieć Na rynku cyfrowej łączności bezprzewodowej panuje duża konkurencja. Producenci oferują wiele systemów teletransmisyjnych fm. in. Bluetooth, DECT, HiperLAN, HiperLAN2, XE^EE802.11x, a takie niedostępny jeszcze w Europie HomeKF), różniących się między sobą szybkością, maksymalnym zasięgiem, a takśe podstawowym obszarem aplikacyjnym. Zestawienie podstawowych parametrów najbardziej popularnych i stosunkowo najłatwiej dostępnych w naszym kraju wariantów sieci cyfrowych znajduje się w tab. 1. W tablicy tej, w celach porównawczych, przedstawiono takśe parametry dwóch bezprzewodowych systemów sieciowych, które nie są dostępne w Europie. Biorąc pod uwagę deklarowane w odbieranych przez nas listach podstawowe zastosowanie cyfrowego łącza transmisyjnego - ma to być przede wszystkim dystrybucja dostępu internetowego w obrębie bloku lub osiedla - postanowiliśmy skupić się na systemie najtańszym spośród obecnie dostępnych, zapewniającym jednocześnie dobre parametry uśytkowe - lEEE802.11b. Jego podstawową zaletą jest znaczne rozpowszechnienie się w naszym kraju - w bardzo wielu internetowych sklepach oferujących podzespoły komputerowe karty sieciowe zgodne z tym standardem są dostępne. Drugą istotną zaletą tego standardu jest mośliwość pracy w tej samej okolicy urządzeń z radiowym interfejsem Bluetooth fcoraz częściej stosowany w telefonach komórkowych i palmtopach). Zastosowanie w tych systemach za- I awansowanych sposobów rno-1 duła ej i - w Bluetooth stosuje 1 się technikę przeskoków częs-1 totliwości (Freguency Hop ping), natomiast w sieciach zgodnych zlEEE802.11b stosuje się technikę bezpośredniego rozpraszania widma (DireciM Seąuence Spreading) - powoduje, śe j sygnały emitowane przez urządzenia , stanowią dla siebie wzajemnie szum tła i nie zakłócają się. Nie brakuje takśe informacji na temat sieci WLAN {Wireless LAN): przeglądarka portalu Onet w odpowiedzi na pytanie o ,,sieci bezprzewodowe" podała 1042 odniesienia, z których wiele zawierało bardzo sensowne informacje. Jak i czyni się to robi Zaczniemy od krótkiego wprowadzenia teoretycznego, w którym ogólnie przedstawimy standard IEEE802 .11 b SPRZĘT Od początku roku trwa na łamach naszych "Listów" dyskusja poświęcona budowie bezprzewodowego łącza umożliwiającego połączenie ze sobą komputerów. Wykonane przez nas analizy wykazały, źe podjęcie prób samodzielnej budowy urządzeń do systemów tego typu nie są uzasadnione ekonomicznie i nie gwarantują uzyskania dobrych efektów. W artykule przedstawiamy alternatywne, sprawdzone przez nas rozwiązanie, które charakteryzuje się dużą szybkością transmisji danych, stosunkowo dużym zasięgiem, łatwością stosowania i konkurencyjną - w stosunku do rozwiązań samodzielnych - ceną. Fot. 2. i mośliwości urządzeń z nim zgodnych. Z punktu widzenia uśytkownika podczas korzystania z sieci komputerowej najwaśniejsze jest, aby komunikacja była szybka, niezawodna oraz łatwa w serwisowaniu i konfiguracji. Wszystkie te wymogi spełniają urządzenia fradiomodemy i punkty dostę-powe) zgodne z IEEE802 .llb. Standard ten jest czasami nazywany takśe WiFi Tab. 1. Podstawowe parametry wybranych bezprzewodowych systemów sieciowych (za Xcell journal, issue 41, Fall/Winter 2001). Parametr DECT Bluetooth HomeRF IEEE802.11b HiperLAN IEEE802.Ha HiperLAN2 Częstotliwość 1,9GHz 2,4GHz 2,4GHz 2,4GHz 2,4GHz 5GHz 5GHz Szybkość bitowa 0,552Mb/s 0,72Mb/s 1,6Mb/s 11 Mb/s 23Mb/s 50Mb/s 50Mb/s Typowy zasięg 30 m do10m 50 m 150 m 150m 50 m 50 m Elektronika Praktyczna 4/2002 85 SPRZĘT Freąuency Hopping Spread Spectrum (FHSS) Zgodnie ze standardem OpenAir częstotliwość nośna transmisji danych zmienia się, co 100, 200 lub 400 ms. Stąd mówi się popularnie o ,,skakaniu po częstotliwościach". Pasmo 2,4 GHz podzielone jest na 83 kanały o szerokości 1 MHz. Oznacza to, że w danym momencie z całego pasma wykorzystuje się tylko 1 MHz do transmisji danych. Ze względu na bardzo małą szerokość pojedynczego kanału można na jednym obszarze stosować do 15 niezależnie pracujących urządzeń, które nie będą zakłócać się wzajemnie. Oznacza to, że systemy FHSS mogą być stosowane nawet w miejscach o dużym zaludnieniu (bloki mieszkalne, blisko siebie położone biura, itd. W niektórych krajach europejskich i w Japonii liczba wykorzystywanych kanałów jest mniejsza. W przypadku kilku współpracujących urządzeń zmiany częstotliwości wyznacza urządzenie ,,master". Pozostałe komputery - ,,slave" - dostosowują się do niego, śledząc kolejno zmieniane kanały. Organizacja HomeRF Working Group promuje system FHSS określając nowy standard nazywany Shared Access Wire-less Protocol - SWAP przeznaczony dla sieci domowych oraz małych biur. Dzięki zmiennej częstotliwości system jest odporny na zjawisko interferencji, czyli nakładania się sygnałów docierających do odbiornika różnymi drogami - np.: bezpośrednio i przez wielokrotne odbicia od powierzchni ścian lub innych przedmiotów. Odporność systemów FHSS na zakłócenia zadecydowała o ich wojskowych i przemysłowych zastosowaniach. Ciekawe, że pierwszy patent dotyczący FHSS przyznano już w 1924 (Alfred N. Goldsmith), a pierwsze praktyczne zastosowanie tego systemu miało miejsce w 1940, kiedy dwaj przywódcy alianccy Roosevelt i Churchill rozmawiali ze sobą w czasie Drugiej Wojny Światowej, aby uniknąć podsłuchu przez stacje niemieckie. Dzięki technologii widma rozproszonego transmisja nie mogła być ani wykryta ani zagłuszona. Jednak dopiero pod koniec XX wieku rozwój technologii układów scalonych pozwolił na wykorzystanie tego pomysłu do budowy nowoczesnych sieci bezprzewodowych. Direct Seąuence Spread Spectrum (DSSS) DSSS (Direct-Seąuence Spread-Spect-rum) to metoda modulacji oparta na widmie rozproszonym, w której do każdego transmitowanego bitu tworzony jest nadmiarowy, wzorcowy ciąg bitów. Wzorzec ten, tak zwany chip (żeton) lub kod chi-powy (chipping code), umożliwia odbiornikom odfiltrowanie sygnałów, które nie używają tego samego wzorca, w tym szumu i zakłóceń. Kod ten spełnia dwie podstawowe funkcje: identyfikuje dane, dzięki czemu odbiornik może rozpoznać je jako pochodzące z określonego nadajnika - nadajnik generuje kod chipowy, w związku z czym dane mogą być rozszyfrowane tylko przez odbiornik, który Połączenie kablowe Komórka Komputer, z radiomodemem Rys. 3. Punkt dostępowy Komputer z radiomodemem Rys. 4. [Wireless Fidelity), ale w rzeczywistości znak WiFi jest świadectwem certyfikacji produktu pod kątem pełnej zgodności z zaleceniami standardu IEEE802.1lb. Certyfikacja ma za zadanie umożliwić pracę urządzenia pochodzącego od dowolnego producenta w dowolnym miejscu świata, bo właśnie jednym z najważniejszych pierwotnych założeń twórców prezentowanego standardu było stworzenie ogólnoświatowego systemu bezprzewodowej dystrybucji dostępu do sieci teleinformatycznych, opartych na popularnym Ethernecie. Dzięki przyjęciu takiego założenia umożliwiono dynamicznego dołączanie się do lokalnych sieci Ethernet użytkownikom sprzętu przenośnego, które są (a raczej będą) dystrybuowane np. na lotniskach, sklepach, czy też na stadionach sportowych. Ze względu na "mobilne" podłoże standardu, poszczególne specyfikacje tworzące IEE-E802.1lb zoptymalizowano pod kątem sprzętu przenośnego, w związku z czym jako pierwsze (obecnie są naj- Komórka Punkt dostępowy Komputer z radiomodemem tańsze) na rynku pojawiły się radiomo-demy WLAN w postaci kart PCMCIA (fot. 1, fot. 2). W tych niewielkich obudowach (105 x 54 x 5 mm) zintegrowano kompletny radiomodem wraz z dookólnymi antenami, za pomocą których można uzyskać zasięg wewnątrz pomieszczeń do 50 metrów przy transferze z szybkością llMb/s, 80 metrów przy szybkości transmisji wynoszącej 5,5Mb/s, 120 metrów przy szybkości 2Mb/s i 150 metrów przy lMb/s. Podobne parametry mają coraz łatwiej dostępne urządzenia z interfejsami USB. Typowe sposoby zorganizowania sieci W standardzie IEEE802.1lb przewidziano wiele możliwych trybów współpracy komputerów, np.: - Tryb rozproszeniowy point-to-multi-point, w którym centralnym urządzeniem komunikacyjnym są punkty. Punkt dostępowy łączy sieć bezprzewodową z siecią przewodową, umożliwiając przesyłanie danych między klientami sieci bezprzewodowej i sieci stacjonarnej. Każdy punkt dostępowy zwiększa także ogólną wydajność i zasięg systemu. Ten tryb pracy jest wykorzystywany do łączenia drogą radiową kilku lokalnych sieci kablowych. Punkty do stepowe są niezbędne do uzyskania dostępu do sieci, ale nie są potrzebne do nawiązywania połączeń dwupunktowych [peer-to-peer). W sieci bezprzewodowej punkty do stęp owe służą tylko Dostawca Internatu Rys. 5. 86 Elektronika Praktyczna 4/2002 SPRZĘT Tab. 2. Zasięgi możliwe do uzyskania za pomocą anten o podanej skuteczności przy bitowej szybkości transmisji wynoszącej 1Mb/s (za edn 12/01). Zysk anteny 2dB 5 dB GdB 7,9 dB 9 dB 12 dB 14 dB 21 dB 24 dB 2dB 200m 250m 250m 300m 350m 450m 600m 1000m 1800m 5 dB 250m 550m 600m 650m 800m 1200m 1500m 1700m 2200m GdB 250m GOOm 650m 700m 900m 1300m 1600m 3500m 5000m 7,9 dB 300m 650m 700m 900m 1000m 1500m 1900m 4000m 5000m 9 dB 350m 900m 900m 1000m 1350m 1800m 2400m 5000m 7000m 12 dB 450m 1200m 1300m 1500m 1800m 2700m 3400m 7500m 9500m 14 dB 600m 1500m 1600m 1900m 2400m 3400m 4300m 9000m 10000m 21 dB 1000m 1700m 3500m 4000m 5000m 7500m 9000m 11000m 13000m 24 dB 1800m 2200m 5000m 5000m 7000m 9500m 10000m 13000m 15000m do łączenia komputerów przenośnych lub komputerów stacjonarnych s siecią przewodową. - Tryb rozproszeniowy poini-io-poini, w którym drogą radiową są łączone ze sobą dwie lokalne sieci kablowe. - Tryb nazwany inftasirudure modę, który służy do dołączania wielu urządzeń wyposażonych w radiomo-derny do lokalnej sieci kablowej, oczywiście także za pomocą punktu do stepowego (rys* 3). - Tryb ad-hoc, w którym urządzenia wyposażone w radiomodemy mogą łączyć się ze sobą, bez konieczności stosowania punktu dostępowego (rys. 4). Ten ostatni tryb jest dla nas najbardziej interesujący, przede wszystkim ze względu na możliwość istotnego ograniczenia kosztów instalacji. Niezależnie od konfiguracji sieci, liczba jej użytkowników jest praktycznie nieograniczona. W dowolnej chwili można ją zwiększać, dodając nowe punkty do stęp owe. Instalując punkty dostępowe o nakładającym się pokryciu i różnych częstotliwościach (kanałach), można tak rozbudować sieć bezprzewodową, aby obsługiwała ona na tym samym terenie wielu użytkowników jednocześnie. Bez powodowania wzajemnych zakłóceń można jednocześnie używać trzech kanałów o nakładającym się pokryciu, co pozwala potroić liczbę obsługiwanych użytkowników sieci. W podobny sposób można zwiększyć liczbę użytkowników in- stalując dodatkowe punkty dostępowe w różnych miejscach budynku. Zwiększa to całkowitą liczbę użytkowników oraz umożliwia poruszanie się ich wewnątrz budynku lub na całym terenie firmy lub osiedla. Aplikacja Niezależnie od sposobu dostępu do Internetu są możliwe dwa sposoby udostępniania go innym użytkownikom (rys. 5): - droższy, wymagający zastosowania punktu dostępowego, który jest zalecany przy dystrybucji dostępu dla większej (powyżej 4..6) liczby użytkowników, - tańszy, w którym rolę punktu dostępowego spełnia komputer do którego dołączono modem telefoniczny, SDI, ISDN itp. Komputer ten musi być wyposażony w jeden radiomo-dem, podobnie jak komputery pozostałych użytkowników, którzy mogą być rozproszeni w odległości zależnej od zastosowanych anten. Jak pokazały prowadzone przez nas eksperymenty w popularnym w Polsce budownictwie żelbetonowym nie można polegać na miniaturowych ante- Fot. ó. zna ten kod. Kod chipowy rozprasza dane na całe dostępne pasmo. Dłuższe chipy wymagają szerszego pasma, lecz zwiększają prawdopodobieństwo odtworzenia danych oryginalnych. Nawet jeśli niektóre bity w chipie zostaną zniekształcone, rozwiązania sprzętowe zastosowane w odbiorniku pozwalają odzyskać dane oryginalne za pomocą analizy statystycznej - bez potrzeby ponownego przesłania danych. Wired Equivalent Privacy (WEP) Jest to opcjonalna funkcja zawarta w standardzie IEEE 802.11, służąca do zapewnienia ochrony danych na poziomie równorzędnym z ochroną w przewodowych sieciach LAN bez stosowania technik szyfrowania zwiększających bezpieczeństwo. WEP zapewnia taki sam poziom ochrony w łączu bezprzewodowym, jaki oferuje łącze przewodowe, Zgodnie ze standardem 80 2.11 szyfrowanie danych WEP ma na celu uniemożliwienie dostępu do sieci intruzom, którzy używają podobnych urządzeń WLAN oraz uniemożliwienie przechwytywania ruchu w sieci WLAN za pomocą podsłuchu. WEP pozwala administratorowi określić zestaw odpowiednich kluczy dla wszystkich użytkowników sieci bezprzewodowej na podstawie łańcucha kluczy utworzonego przez algorytm szyfrowania WEP. Każdego, kto nie dysponuje odpowiednim kluczem, spotyka odmowa dostępu. Zgodnie ze standardem, WEP używa algorytmu RC4 z szyfrowaniem 40-bi-towym lub 128-bitowym. Punkt dostęp owy W typowej konfiguracji sieci bezprzewodowej urządzenie nadawczo/odbiorcze, zwane punktem dostępowym, łączy się z siecią kablową z użyciem standardowego okablowania, W najprostszym przypadku, punkt dostępowy odbiera, buforuje i transmituje dane pomiędzy siecią bezprzewodową i siecią kablową. Pojedynczy punkt dostępowy może obsługiwać małą grupę użytkowników i może funkcjonować w zasięgu od 50 do 30000 metrów. Użytkownicy korzystają z sieci bezprzewodowej za pomocą bezprzewodowych kart sieciowych, które występują jako karty PC Card w komputerach przenośnych i podręcznych, lub jako karty w komputerach biurkowych, lub też jako zintegrowane urządzenia w komputerach podręcznych. Połączenie radiowe jest przeźroczyste dla systemu operacyjnego. IEEEBO2.1lb Sieci o przepustowości 11 Mb/s pracują w standardzie IEEE 802.llb. Został on ustanowiony w 1999 roku przez stowarzyszenie producentów pod nazwą Wire-less Ethernet Compatibility AlHance -WECA (Śwww.wirelessethernet.org], w którego skład wchodzi obecnie 50 firm-członków i założycieli. Standard 802.llb jest rozwinięciem poprzednio stosowanego standardu IEEE 802.11, który umożliwiał transmisję z przepustowością maksymalnie 2 Mb/s. Elektronika Praktyczna 4/2002 87 SPRZĘT nach wbudowanych w radiomoderny, snacsnie lepssym wyjściem jest zastosowanie dodatkowych anten o snacsnie więkssej skutecsności. W tabi 2 sestawiono możliwe do osiągnięcia maksymalne sasięgi transmisji danych. Dane sawarte w tabeli są prawdsiwe, gdy anteny widsą się nawsajem. Sprzęt Teras najwaśniejssy punkt: dostępność i ceny sprsętu do besprsewodo-wych systemów sieciowych. W testach laboratoryjnych korsystaliśmy z radio-modemów i osprsętu firmy Agere (dawniej Lucent), LG Electronics oras Planet. Zestaw dostarcsony prses Agere (fot. 6) sawierał wssystkie elementy niesbędne do sbudowania sieci s punktem dostępowym. Z oferty firmy Planet wybraliśmy elementy umożliwiające budowanie sieci na duśe odległości, w praktyce udało się usyskać po-łącsenie na odległość 3500 metrów, do csego były niesbędne parabolicsne anteny kierunkowe o średnicy csassy 60 cm (fot. 7) i sysku 20dP. Zasięg możliwy do usyskania sa pomocą pary takich anten jest snacsnie więkssy, ale nie mieliśmy możliwości fisycsne-go wykonania takiej instalacji. Planet oferuje takie ssereg anten o więkssym sysku, sa pomocą których mośna budować cyfrowe radiolinie o długości do ok. 30 km, prsy ssybkości transmisji do 1 Mb/s. Wadą anten parabo-licsnych są ich duśe wymiary, co wiąśe się se sporymi niewygodami podcsas montażu i eksploatacji. W wielu prsypadkach w supełności wystarcsają kierunkowe anteny prsy-pominające ksstałtem rurę (fot. 7), których sysk energetycsny mośe wynosić nawet 18dP. Podcsas prób okasało się, śe oprócs skutecsności anteny, istotne dla prawidłowego dsiałania systemu jest ogra-nicsenie długości kabla łącsącego antenę s radiomodemem lub punktem do-stępowym, a takśe wykorsystanie kabla o możliwie małych stratach. Podstawowe ursądsenia sgodne se standardem IEEE802 .11 b są dostępne w więkssości internetowych sklepów, sscsególnie polecamy firmy Action, Agere oras LG Electronics - ich produkty testowaliśmy. Prsy wy-ssukiwaniu potencjalnego dostawcy pomocne mogą okasać się takśe interne-towe adresy podane na ' końcu artykułu. Prsybliśone ceny kart ra-diomodemowych (takśe w wersjach USP) miesscsą się w prsedsiale 450...900 sł fw saleśności od producenta i wyposażenia karty), punkty dostępowe mośna kupić sa ok. 1200...2300 sł, atestowane prses nas anteny sewnętrsne sa ok. 210...700 sł. Dobór konfiguracji sestawu saleśy od indywidualnych warunków, w swiąs-ku s csym nie podajemy w artykule uniwersalnego roswiąsania, które bę-dsie pasowało do wssystkich konfiguracji sieci. Pomoc w doborse elementów mośna snalesć na stronie internę tow ej http: //www.siecibesprse-wodowe.a.pl/. Andrzej Gawryluk, AVT
Fot. 7. Dodatkowe informacje Autor dziękuje firmom LucGnt oraz Action za udostępnienie do Testów urządzeń WiFi. W Warszawie na osiedlu Winnica działa sieć oparta na IEEE802.11b, którą zainstalowała i wdrożyła firma DTS (www.dts.pl). W artykule wykorzystano m.in. materiały pochodzące ze stron intern et owych, których adresy podajemy poniżej. Dodatkowe informacje można znaleźć w Inter-necie pod adresami: - http://www.idealan.com.pl/, - http://www.elrnat.pl', - http://sTandards.ieee.org/getieee802/, - http://www.siecibezprzewodowe.a.pl/. 88 Elektronika Praktyczna 4/2002 PROJEKTY CZYTELNIKÓW DzioS "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. Timer ciemniowy z licznikiem naświetlań Fotografujemy praktycznie wszyscy, ale chyba coraz mniej wśród nas fotoamatoiów w pełnym tego słowa znaczeniu. Czy projektowanie takich urządzeń sianie się "sztuką dla sztuki"? Projekt 097 Stosowanie do obróbki materiałów pozytywowych tzw. "gorącego procesu" skraca czas spędzony w ciemni. Należy jednak spełnić kilka warunków, z których najważniejsze to: utrzymanie podwyższonej temperatury roztworów i dokładne odmierzenie czasów poszczególnych kąpieli. Chociaż układy czasowe do prac w ciemni stanowią "temat dyżurny" w czasopismach dla US1 elektroników, nie znalazłem takiego, który umożliwiałby automatyczne odmierzenie następujących po sobie kilku różnych odcinków czasu. 0 wykonanie takiego urządzenia poprosił mnie znajomy fotograf, przynosząc jednocześnie do naprawy wysłużony zegar powięk-szalnikowy. Okazało się, że zegar trudno naprawić - wytarte pola na płytce drukowanej, JASKRAWOŚĆ będące integralną częścią wie-lopozycyjnych przełączników oraz zużyty przekaźnik. Stosowana przez niego do odmierzania czasów poszczególnych kąpieli metoda fz komunikatami nagranymi na taśmę magnetofonową) była niedokładna i zawodna. Zasugerował również potrzebę dobudowania fdo przyniesionego zegara) licznika zliczającego wykonane naświetlenia. Podczas pracy w ciemni fotograficznej często zachodzi potrzeba wykonania pewnej liczby jednakowych odbitek. Jedni liczą na swoją pamięć, inni coś zapisują w ciemności, a jeszcze inni odkładają zapałki. Sposobów jest wiele, ale każdy z nich absorbuje naszą uwagę, tym bardziej, gdy na każdej kartce musimy zanotować po kilka naświetlań! Trzeba liczyć kartki również po to, aby w porę dokonać regeneracji roztworów. Aż się prosi, aby zaopatrzyć timer powiększalnikowy OUT PRACA CIĄGŁA Rys. 1. Schemat elektryczny zegara. Elektronika Praktyczna 4/2002 PROJEKTY CZYTELNIKÓW Wyśwtet czas 4 SW4 7 > "">! Naświetlanie [Nie Wyświetl licznik Rys. 2. Schemat działania pętli głównej programu "timer". w licznik. Zdecydowałem się zintegrować wszystkie trzy funkcje w jednym urządzeniu. Przyjąłem następujące założenia: duża powtarzalność odmierzanych czasów, prosta konstrukcja, intuicyjna obsługa i mały koszt. Wykluczyłem zastosowanie wielopozycyjnych przełączników (ze względu na ich zawodność i wysoką cenę) oraz potencjometrów (brak powtarzalności nastaw). Przedstawiany timer współpracuje z powiększalnikiem wyposażonym w głowicę filtracyjną z miesza-czem, z żarówką halogenową Rys. 3. Podprogram naświetlanie. zasilaną przez transformator 100VA. Umożliwia odmierzanie czasów od 0,1 do 99,9 sekundy, z rozdzielczością 0,1 s. Zakres ten uznałem za wystarczający, a w razie potrzeby cykl można powtórzyć dowolną liczbę razy. Wbudowany licznik rejestruje liczbę wykonanych naświetlań. Jego zawartość wyświetlana jest na wyświetlaczu naprzemiennie z zaprogramowanym czasem. Po naciśnięciu przycisku ,,START" wyświetlacz pokazuje upływ czasu (czas do końca cyklu). Jeśli ustawimy do odmierzenia czas 00,0 i wciśniemy przycisk ,,START" to, jak się łatwo domyślić, nie zaświeci się żarówka powiększalnika. Ale na tym nie koniec, gaśnie wyświetlacz - bo uruchomiliśmy program ,,Proces". Mamy kilkanaście sekund na podejście z koszem zawierającym naświetlone kartki do pojemników z roztworami. Po czterech krótkich sygnałach dźwiękowych (w sekundowych odstępach) następuje piąty, dłuższy sygnał - start. Jest to pierwsza kąpiel -wywoływanie. Na 15 sekund przed jej końcem usłyszymy jeden krótki sygnał - jest to czas potrzebny na spłynięcie resztek wywoływacza z wyjętego kosza. Ostatnie pięć sekund sygnalizują cztery krótkie i długi sygnał dźwiękowy - to koniec pierwszego odmierzonego odcinka czasu, a zarazem początek drugiego - przerywania. Ostatnie pięć sekund tej kąpieli, jak i dwóch następnych: od-bielania i płukania, jest również sygnalizowane dźwiękiem. Opis układu Dzięki zastosowaniu mikroprocesora, schemat ideowy ti-mera może być tak prosty, jak to przedstawia rys. 1. Elementy: TRI, mostek prostowniczy Dl, kondensatory C2, C3, C7, C8 wraz z USl tworzą zasilacz stabilizowany +5V. Wyświetlacz wykonałem przy użyciu trzech wskaźników siedmiosegmento-wych ze wspólną anodą (LED1...LED3), sterowanych z multipleksowaniem. Dla punktu dziesiętnego wskaźnika LED2 połączono na stałe jego katodę z masą układu. Rezystory R9...R15, R18 ograniczają prąd poszczególnych segmentów do bezpiecznej wartości. Tranzystory T2...T4, sterowane z mikroprocesora przez rezystory R6...R8, pełnią rolę kluczy załączających wskaźniki. Ak- tywnym stanem wyjść mikroprocesora, wykorzystanych do układu wyświetlania, jest poziom niski. Na uwagę zasługuje obwód złożony z Tl, R16, R17 i ,,programowanej" diody Zene-ra D4. Mimo swej prostoty umożliwia bardzo skuteczną re-gulację jaskrawości wskaźników, w którą urządzenie ciemniowe musi być wyposażone. Poziom niski na wyprowadzeniu P3.7 uaktywnia op-totriak OPTl, a ten z kolei załącza Triakl, który jest wyjściowym elementem timera. Diody D2 i D3 służą do odseparowania WŁ2 od wyjścia P3.7. układu US2. Brak wolnego wyprowadzenia wymusił podłączenie przycisku SWl i sygnalizatora dźwiękowego do tego samego wejścia procesora. Układ złożony zT5, T6, D5, R19, R20 i C10 potrafi odróżnić niski poziom P3.3, ustawiony przez US2, od wywołanego naciśnięciem SWl. Dzięki temu P3.3 może pracować zarówno jako wejście i wyjście! Opis programu Po starcie systemu i wstępnej konfiguracji zmiennych, program wchodzi w pętlę, której działanie obrazuje algorytm z rys. 2. Pierwszą czynnością jest wyświetlenie ustawionego czasu. Po włączeniu jest to czas "domyślny", którego najczęściej używam. W następnym kroku następuje ewentualna reakcja na wciśnięcie przycisków SWl, SW2 w celu zaktualizowania ustawionego czasu. Teraz, jeśli wciśnięto SW4, zostaje wywołany podprogram "naświetlanie", a jeśli nie wciśnięto go, to realizowane jest wyświetlanie stanu licznika z monitorowaniem SW3, który zeruje jego zawartość. Program powraca do wyświetlania czasu i cykl się powtarza. Podprogram "naświetlanie" (rys. 3) rozpoczyna obliczenie zmiennej "suma", której wartość zależy od ustawionego czasu i zawiera się w przedziale 0...999. Zmienna ta określa, ile razy zostanie wykonana pętla Do-Loop Until, w której tak dobrano opóźnienia, aby jeden przebieg trwał około 0,ls. W drugim kroku program powiększa stan licznika o 1. Pierwszą czynnością po starcie pętli jest sprawdzenie, czy "suma" zawiera się w dozwolonym zakresie. Jeśli tak, to następuje ustawienie P3.7 WYKAZ ELEMENTÓW Rezystory Rl: 220Q (1W) R2, R3: 120Q R4: 5ÓOQ R5, R20: 10kQ R6...R8: l,5kQ R9...R15, R18: 100Q R16: lkQ (potencjometr) R17, R19: 4,7kQ Kondensatory Cl: 330nF/630V C2: 2200^F/16V C3, C8, C10: lOOnF C4: 1O^F/Ó,3V C5, Có: 33pF C7, C9: 1OO^F/Ó,3V Półprzewodniki Dl: dowolny mostek prostowniczy D2, D3, D5: 1N4148 D4: TLC 431C LED1...LED3: 7-segm. wsp. anoda OPTl: MOC 3021 Triakl: BTA 08.600 Tl, T5: BC 238 T2, T3, T4, T6: BC 308 USl: 7805 US2: AT89C2051 (zaprog ra m owa ny) Różne Gniazdo z bolcem i przewód z wtyczkg sieciowg oprawka bezpiecznika (do druku) podstawka pod US 2 Ql: rezonator kwarcowy około HMHz TRI: TS 2/15 Wtl: przełgcznik miniaturowy WŁ2: przełgcznik miniaturowy klawiszowy SWl, SW2: mikrowłgczniki SW3, S 4: mikrowłgczniki z przyciskami Sygn.l: sygnalizator z generatorem na poziomie niskim - żarówka powiększalnika świeci. Dalej kontrolowany jest przycisk SW3, który może przerwać działanie podprogramu. Następnie, na podstawie wartości zmiennej "suma", która jest zmniejszana o 1 w każdym przebiegu pętli, zostaje obliczony i wyświetlony upływający czas. Zmniejszenie się zmiennej "suma" do zera spowoduje wyjście z pętli, ustawienie P3.7 na poziomie wysokim (żarówka gaśnie), i zakończenie podprogramu. Montaż i uruchomienie Układ zmontowałem na trzech płytkach z drukiem jednostronnym. Płytka główna, zamocowana do dna obudo- 90 Elektronika Praktyczna 4/2002 PROJEKTY CZYTELNIKÓW wy, zawiera zasilacz, mikroprocesor oraz układ wykonawczy z optotriakiem i triakiem. Triak wyposażyłem w niewielki radiator. Druga płytka, umocowana do głównej z użyciem tulejek dystansowych, zawiera wyświetlacze siedmiosegmen-towe, R6...R18, T1...T4, C9, D4 oraz przyciski SWl i SW2. Trzecia, najmniejsza płytka, zawiera jedynie SW3 i SW4. Timer umieściłem w obudowie uniwersalnej o oznaczeniu handlowym Z20, która nadała mu estetyczny wygląd i bez trudu mieści wszystkie płytki wraz z gniazdem przyłączeniowym powiększalnika. Kształt obudowy wymusił liczbę, rozmiar i wzajemne położenie płytek. Pod mikroprocesor zastosowałem podstawkę - zostaje ona pusta do czasu stwierdzenia poprawności działania zasilacza. Podczas uruchamiania należy zachować szczególną ostrożność, bowiem doprowadzane jest do płytki napięcie sieci energetycznej 220V niebezpieczne dla życia! Obsługa Po włączeniu wyświetlacz pokazuje ,, domyślny" czas (wprowadzony na etapie pisania programu) na zmianę ze stanem licznika, dla którego odróżnienia zarezerwowano dwa wskaźniki. SWl zmieniamy czas o 0,ls, SW2 o ls, równoczesne ich wciśnięcie - o lOs. Przyciskiem ,,START" uruchamiane jest odliczanie czasu, którego postęp wyświetlany jest na wyświetlaczu. Do zatrzymania odliczania czasu w dowolnym momencie służy przycisk "KASOWANIE". Jeśli wciśniemy go w czasie wyświetlania stanu licznika, to zostanie on wyzerowany. Przełącznik WŁ2 jest pomocny podczas zmiany kadru lub ustawiania ostrości. Mirosław Sadlak Elektronika Praktyczna 4/2002 91 NA CD M.IN. KATALO HITACHI 5/2002 maj 15 zł 50 gr (w tym 7% vat) 1 & l EPon/offLIHE ISSN 1ŁM0-7Ł15 BIBLIOTEKA EP IV ^Bibliotece LP" 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 polki, 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, 66), Chcemy w ten sposób udostępnić je Czytelnikom EP, Piotr Zbysiński, Jerzy Pasierbiński: "Układy programowalne, pierwsze kroki", BTC 2002, 212 str., zawiera CD-ROM programując układ. Osobny rozdział jest poświęcony programowaniu i konfigurowaniu układów PLD w systemie (ISP). Opisano budowę interfejsu JTAG oraz programatory ISP (ByteBlaster i DLC5). Na największą uwagę zasługuje rozdział zawierający przykładowe projekty, gdyż w ten sposób można najszybciej i najłatwiej zrozumieć metodykę projektowania układów programowalnych. Ponieważ mowa jest o "pierwszych krokach", więc przykłady rozpoczynają się od całkiem prostych (podstawowe funkcje logiczne, dekoder adresowy, port dwukierunkowy) a kończą na całkiem zaawansowanych (dwukierunkowy licznik NKB z wejściem równoległym, rejestr przesuwający z wejściami szeregowym i równoległym oiaz wyjściem szeregowym). Każdy z piętnastu projektów zawiera schemat logiczny, oraz realizację projektu w trzech językach stosowanych do opisu układów: ABEL, AHDL i VHDL. Do książki jest dołączona płyta CD-ROM zawierająca oprogramowanie projektowe Max+Plus II Baseli-ne firmy Altera oraz WebPack ISE firmy Xilinx. Niby nic nadzwyczajnego, bo jest to przecież oprogramowanie dostępne bezpłatnie (do celów edukacyjnych) w witrynach WWW tych firm. Ale ten prezent docenią z pewnością Ci, którzy gdzieś w Polsce (tzn. za pośrednictwem dostępu dial-up TP S.A., a nie sieci uczelnianych) próbowali "ściągnąć" jakieś większe pliki. Na płycie zamieszczono także kompletną dokumentację zestawu laborato- Elektroniki PraktyomoJ W ostatnich dniach kwietna ukazała się książka pt. "Układy programowalne, pierwsze kroki", napisana przez autorów, których wcześniejsza książka "Układy programowalne w praktyce" była opisana w EP9/2001. Autorzy postawili sobie ambitny cel wprowadzenia czytelnika w fascynujący świat układów programowalnych. Książkę rozpoczyna krótka charakterystyka układów programowalnych - absolutne minimum informacji potrzebnych do rozpoczęcia przygody z układami programowalnymi, W części wprowadzającej można też znaleźć informacje o implementowaniu projektu oraz o najpopularniejszych językach opisu sprzętu (ABEL, AHDL, VHDL). W dalszej części autorzy pokazali kolejne etapy, jakie trzeba pokonać w procesie realizacji projektu układów w strukturach PLD. Książka zawiera opis oprogramowania projektowego Max+Plus II Baseline firmy Altera oraz WebPack ISE firmy Xi-linx. Autorzy zwrócili uwagę na możliwości i ograniczenia obu pakietów projektowych, pokazali sposób instalacji oprogramowania, prowadzą czytelnika "za rękę" tworząc pierwszy projekt, edytując go, kompilując, przeprowadzając symulację czasową i funkcjonalną i ostatecznie ryjnego, umożliwiającego przeprowadzanie eksperymentów. W książce zawarto więc wszystko co jest potrzebne do zorganizowania w szkole lub w domu, na swoim własnym stole, laboratorium wytwarzania układów o wymyślonych przez nas funkcjach. Doskonałe wsparcie dla próbujących zrobić pierwsze kroki. Potem już będzie podobno łatwiej, jak zapewniają autorzy we wstępie. Pięć lutownic! Uwaga! Wybrane fragmenty książki są dostępne na płycie CD-EP5/2002B oraz na stronie interne-towej www.ep.com.pl ("Książki dla elektroników"). Kent Reisdorph: "Delphi 6 dla każdego", Helion 2001T 859 str. Kolejna, prezentowana na łamach EP, książka poświęcona programowa- niu w Delphi. Książki z serii ..... dla każdego" wydawnictwa Helion mogliśmy już wcześniej posnąć i zawsze spełniały one nasze oczekiwania. Nie inaczej jest tym razem - tytuł sugeruje, śe jest to książka dla każdego programującego w języku Object Pascal w środowisku Delphi i, chociaż trudno to sobie wyobrazić, tak jest w rzeczywistości. W książce są zawarte informacje przeznaczone dla początkujących programistów (operatory, zmienne, procedury, funkcje, wskaźniki, instrukcje sterujące itp.), troszkę, bardziej zaawansowanych (obiekty w Pascalu, przeciążanie funkcji, wyko- Elektronika Praktyczna 5/2002 121 BIBLIOTEKA EP Legenda: rzystywanie komponentów, tworzenie menu, wykorzystywani9 pasków narzędzi itp.) oraz dla programistów zawodowo wykorzystujących Delphi (tworzenie komponentów, tworzenie plików pomocy kontekstowej, praca z komunikatami, tworzenie obiektów COM i kontrolek ActiveX, programowanie z wykorzystaniem bibliotek DLL, tworzenie aplikacji bazodanowych oraz internetowych itp.). Zagadnienia poruszane w książce są ilustrowane przykładowymi aplikacjami, których kody źródłowe znajdują się w książce (można je również ściągnąć z witryny internę towej wydawnictwa). Ze względu na obszerność poruszanych tematów i ograniczoną objętość książki, część zagadnień nie jest przedstawiona w sposób wyczerpujący. Niemniej jednak, korzystając z informacji zawartych w książce można pisać nawet rozbudowane aplikacje dla systemu Windows. Na szczególną pochwałę zasługuje język, jakim posługuje się autor - książkę czyta się lekko, nawet przy przerabianiu trudnego materiału. Książka może być bardzo wartościową pozycją w bibliotece każdego programisty. Adam Fiok: "Telewizja -podstawy ogólne", WKŁ 1991 Książka - jak widać po dacie wydania - przeleżała się na półkach, co sprowokowało nas do dogłębnego zapoznania się z jej treścią. Niestety, pomimo intensywnych poszukiwań, nie udało się nam ustalić możliwej przyczyny jej handlowego niepowodzenia, zwłaszcza, że w chwili jej publikacji królowała telewizja analogowa (to jest głównie w książce opisywane). Zostaw- my jednak rynkowe losy książki, przejdźmy do jej zawartości. Autor przygotował monografię poświęconą metodom kodowania informacji o świetle i kolorach w systemach telewizyjnych oraz psychofizjologicznych zjawiskach mających wpływ na sposób kodowania i odbierania przesyłanych informacji. Zawarte w książce informacje wyjaśniają praktycznie wszystkie istotne zjawiska związane z postrzeganiem przez ludzi obrazów kolorowych i wynikające z nich możliwe uproszczenia przesyłanych obrazów. Swoje wywody autor podpiera opisem matematycznym, lecz jest on na tyle czytelny i dobrze skomentowany, że nie przeszkadza, a czasami pomaga, w zrozumieniu omawianych zjawisk. Książka warta polecenia wszystkim czytelnikom, których interesują zjawiska związane z postrzeganiem kolorów i mechanizmami przesyłania obrazu w analogowych torach transmisyjnych. Wiesław WinieckiT Jacek Nowak, Sławomir Stanik: "Graficzne zintegrowane środowiska programowe", Mikom 2001
Pierwsze na polskim rynku wydawniczym, tak kompleksowe i nasycone przykładowymi rozwiązaniami większości typowych problemów, opracowanie poświęcone pakietom programowym służącym do projektowania systemów kontrolno-pomiarowych. Książka zaczyna się od krótkiego wprowadzenia, w którym autorzy definiują podstawowe pojęcia, istotne dla zrozumienia dalszej części wykładu. Książkę podzielono na dwie części: - Pierwsza, składa się z 5 rozdziałów (3...7), w której autorzy przedstawili książka wybitna, polecamy! książka o dużych walorach praktycznych, polecamy! może się pizydać daleka od doskonałości nie warto kupować pakiety programów służących do tworzenia systemów pomiarowych. Dobór prezentowanych narzędzi doskonale pokrywa się z ofertą rynkową oprogramowania, są to bowiem programy: LabWindows/CVI, LabView 6i, VEE, TestPoint oraz DasyLab. Oprócz omówienia możliwości narzędzi, ich opisy wzbogacono prezentacją sposobów obsługi oraz przykładami (generatory funkcyjne, przyrządy pomiarowe). Druga, składającą się z czterech rozdziałów (8...11), w której opisano pakiety programowe umożliwiające budowanie systemów monitorowania i zarządzania systemami automatyki przemysłowej. Także w tej części dobór prezentowanych programów jest właściwy. Autorzy przedstawiają bo- APODOWI8KA PROOPAMOWB 122 Elektronika Praktyczna 5/2002 BIBLIOTEKA EP wiem trzy najbardziej znane w Polsce: EridgeView, Lookout oraz GeniDAQ. Opisy zawarte w książce wzbogacono wieloma ilustracjami, z których cze.sc jest wydrukowana w kolorze na specjalnej wkładce znajdującej się na końcu książki. Naszym zdaniem książka jest warta polecenia, i to nie tylko użytkownikom opisanych w niej programów. Autorzy wykonali ogromną prace, i przygotowali wyczerpujący przewodnik po pakietach oprogramowania służącego do tworzenia graficznych środowisk kon troi no-pomiarowych, za co należą sie. im słowa uznania. Trochę, szkoda, że wydawca nie zadbał o dołączenie do książki płyty CD-ROM z ewaluacyj-nymi wersjami opisywanych programów. Mamy nadzieje., że nadrobi to w drugim wydaniu. Jarrod Hollingworth, Dan Butterfield, Bob Swart, Jamie Allsop i inni: "C++ Builder 5. Vademecum profesjonalisty. Tom I"T Helion 2OO1T 1035 str. Książek o C++ Euilderze jest jak na lekarstwo. Trudno to zrozumieć, wziąwszy pod uwagę, elastyczność języka C/C+ + , możliwości C++ Euildera (odpowiadające najpopularniejszemu od wielu lat pakietowi Delphi w wersji 5) oraz niejaką naturalność pisania aplikacji w języku C/C + + dla systemu Windows (korzystanie z MFC w Delphi to trochę "drapanie się lewą ręką w prawe ucho" - możliwe, chociaż niezbyt wygodne). Nasze zainteresowanie zwiększyło się, gdy okazało się, że prezentowana książka została wydana w serii "Vademecum profesjonalisty", a dotychczas książki z tej serii nie zawiodły naszych oczekiwań. Tak było i tym razem! Wydajemy tą opinię trochę na wyrost, gdyż tom II ma się ukazać dopiero w maju br. (mamy nadzieję, że zaprezentujemy go już Toml O+Builder5 Vademecum profesjonalisty CD w numerze czerwcowym), ale zawartość tomu pierwszego pozawala sądzić, że całość będzie stanowić kompletny podręcznik dla programistów C/C+ + w środowisku C++ Euilder. Pierwsze rozdziały stanowią wprowadzenie do tworzenia aplikacji w C + + Euilder 5. Na szczęście nie znajdziemy tu kursu programowania w C+ + , gdyż temu zagadnieniu są poświęcone inne książki (o porównywalnej objętości), a jedynie podstawowe informacje na temat języka. Dalsze rozdziały zawierają szczegółowe informacje na temat bardziej zaawansowanych zagadnień. Omówiono metody projektowania interfejsu użytkownika, programowanie internetowe, tworzenia aplikacji rozproszone, programowanie zespołowe, śledzenie wykonywania programu i lokalizacja błędów, programowanie baz od an owe. Dużo miejsca poświęcono wykorzystaniu komponentów biblioteki VCL oraz przedstawiono zasady tworzenia komponentów. Oddzielny rozdział jest poświęcony tworzeniu dokumentacji i plików pomocy oraz projektowaniu kontekstowego systemu pomocy. W książce można znaleźć omówienie oraz przykłady prezentujące wykorzystanie m.in. Interne-tExpress, Interbase Express, XML, serwerów i klientów COM, bibliotek OpenGL i Direct3D, mechanizmów COREA, COM, C0M+. Sporo miejsca poświęcono tworzeniu i wykorzystywaniu bibliotek DLL. Końcowym etapem tworzenia każdej aplikacji jest przygotowanie wersji instalacyjnej. Dlatego warto poświęcić czas na przeczytanie rozdziału narzędziach do tworzenia programów instalacyjnych (InstallShield Express), a pliki typu CAE i INF nie będą wyglądały już tak tajemniczo. Niezwykle cenne są wskazówki autorów, dzięki którym można uniknąć błędów popełnianych zwykle przez programistów nieświadomych istniejących zagrożeń (np. tworzenie aplikacji, której interfejs użytkownika działa prawidłowo prsy różnych rozdzielczościach ekranu i różnych wielkościach czcionek). Rad tego typu oraz porad dotyczących optymalizacji programu źródłowego jest w książce bardzo wiele. Na dołączonej do książki płycie CD-ROM znajdują się m.in. kody źródłowe z przykładami zawartymi w książce (na podkreślenie zasługuje fakt, że komentarze w programach źródłowych są w języku polskim - brawa dla wydawcy). Dodatkowo na płycie znajduje się 60-dniowa wersja C++ Euildera 5 (wymaga zarejestrowania na stronie internetowej producenta) oraz kilka interesujących narzędzi programistycznych. Książka jest adresowana do zaawansowanych użytkowników C + + Euildera. Do zrozumienia treści książki wymagana jest znajomość języka C++ - nie jest to podręcznik programowania w języku C+ + , ale książka o wykorzystywaniu mechanizmów tego języka w trakcie tworzenia aplikacji. Wartości książki nie zmniejsza to, że dostępna jest już szósta wersja C+ + Euildera - informacje zawarte w książce jeszcze długo będą aktualne. Elektronika Praktyczna 5/2002 123 AUTOMATYKA SYSMAC CJl to rodzina miniaturowych, modułowych sterowników PLC nowej generacji. Charakteryzuje się ona niewielkimi wymiarami obudowy, łatwością dostosowania konfiguracji systemu do wymagań aplikacji i jednocześnie bardzo dużą szybkością działania z możliwością obsługi dużej liczby wejść/wyjść... Miniaturowe sterowniki PLC Dotychczas, typowe sterowniki PLC które umożliwiały obsługę zdarzeń zewnętrznych w czasie bliskim rzeczywistemu, były systemami dosyć rozbudowanymi. W dalszym ciągu u większości producentów systemy takie opierają się na sterownikach konfiguro-wanych na płycie bazowej co powoduje, śe są to po prostu sterowniki duże gabarytowo. Często bardziej skomplikowane systemy wymagały większej liczby sterowników połączonych ze sobą fnp. za pomocą sieci). Rozwiązania tego typu wymuszały konieczność znacznego skomplikowania systemu sterowania, dużymi umiejętnościami musieli "wykazać się takśe twórcy oprogramowania dla takich z konieczności rozproszonych aplikacji. Inną drogą poszli twórcy nowej rodziny sterowników SYSMAC CJl, w której udało się im zintegrować w niewielkiej obudowie bardzo szybką jednostkę centralną fczas wykonywania instrukcji podstawowych wynosi 0,02|_is, a specjalnych 0,18 do 0,25|_is), dzięki czemu czas wykonania programu o długości 30k kroków wynosi ok. 3,68 ms lub 1,23 ms w szybszej wersji oznaczonej CJlH (rys. 1 i rys. 2). Rewolucyjnym rozwiązaniem dla tej grupy sterowników jest fakt, śe cały system nie wymaga płyty bazowej. Jednostki centralne (CPU) sterowników CJl współpracują z modułami rozszerzeń komunikując się poprzez specjalną wewnętrzną magistralę, której złącza znajdują się w bocznej części obudowy modułów I/O i sterownika. Moduły mośna łączyć ze sobą takśe za pomocą kabla, którego maksymalna długość nie powinna przekraczać 12 metrów. Dzięki przystosowaniu obudowy do montaśu na standardowej szynie DIN lub - alternatywnie - po prostu na ścianie, rozbudo- Czu wykonywnla prapunu o dugofcl 30k kroków {Irwłniffiłe podstawowa: 50%. hstrukcjs MOV: 30%, Instrukcjo irytmatycznB: 20%) Rys. 1 wa lub zmiana konfiguracji zestawu sterownika jest stosunkowo łatwa w wykonaniu. Do jednej jednostki centralnej mośna dołączyć do 40 modułów rozszerzeń, za pomocą których mośna obsłuśyć do 2560 sygnałów cyfrowych (wejściowych i wyjściowych). W ramach rodziny dostępne są zarówno proste moduły I/O o maksymalnej liczbie we/wy do 64, przystosowane do bezpośredniej współpracy z sygnałami cyfrowymi o poziomach napięcia 24VDC, 100...120VAC lub 2OO...24OVAC. W zaleśnoś-ci od potrzeb aplikacji mośna stosować moduły z wyjściami tranzystorowymi, przekaźnikowymi lub triakowymi. Maksymalna dopuszczalna częstotli- C200HX/H(VHE CJ&ariu Obsłui 64 wejścia \o2m I S4wy]ftda i 0,13 ma Jsdnostka i17m komunikacyjna t>łtm Obsługa I/O J 64 wejścia 10,012 mt 1 64 wyjścia i 0,015 mt [ Jednostka tomunlkacyjna J" Ok.34ms' Obsługa peryfer. Ok. 1.2 m* Rys. 2 Elektronika Praktyczna 5/2002 125 AUTOMATYKA Tab. 1. Porównanie możliwości i funkcji wybranych sterowników firmy Omron Typ Główne cechy Możliwości dodatkowe Inne CS1 Ś 9 jednostek CPU o różnych parametrach Ś do 5120 punktów l/O Ś 34 porty COM max Ś Pamięć programu 240k słów Ś Pamięć danych 448k słów Ś Czas wykonania instrukcji 0,04 \xs Ś 120 cyfrowych modułów l/O i specjalizowanych Ś Komunikacja Hostlink^Tlink (1 1/1 N), Open protocol Ś Sieci Ethernet, Controller Imk.DNet, C/S, Sysmac net, Sysmac Link, Profibus, CAN Open Ś Zgodny z normami UL.CSA.CE Ś Składany na racku zbackpanelem Ś 400 instrukcji Ś Zegar czasu rzeczywistego i bateria C200H-alpha CPU o różne) charakterystyce Ś Maksymalnie 1184 punktów l/O Ś do G portów COM Ś Pamięć programu 240k słów Ś Pamięć danych 448k słów Ś Czas wykonania instrukcji O.i^s Ś 90 cyfrowych modułów l/O i specjalizowanych Ś Komunikacja Hostlink^Tlink (1 1/1 N), open protocol Ś Sieci Ethernet, Controller Dnet, C/S, Sysmac net, Sysmac Link, Profibus, CAN Open ŚZgodnyUL.CSA.CE Ś Składany nabackpanelu Ś 300 instrukcji Ś Zegar i bateria CJ1 CJ1 jest miniaturowym, modułowym sterownikiem PLCw malej obudowie Jednostki CPU sterownika CJ1 pracują z modularni rozszerzeń komunikując się poprzez specjalną wewnętrzną magistralę Ś Czasy wykonywania instrukcji podstawowych 0,02|j.s, a specjalnych 0,18doO,25us Ś obsługa do 2560 sygnałów wejść i wyjść cyfrowych Ś obsługa do 40 modułów (po 10 modułów w jednym bloku) Ś pamięć programu do 120k kroków Ś pamięć danych do 256k słów Ś wbudowany port Penpheral i RS232C Ś zegar czasu rzeczywistego w standardzie Ś architektura sterownika zgodna ze sterownikami CS1 Moduły Ś l/O do 64 wejść lub wyjść w module, Ś we|ścia24DC,100-120AC lub 200-240AC. Ś "wyjściatranzystorowe, przekaźnikowe lub tnakowe, Ś wejściaprzerwaniowe Ś wejścia szybkiego licznika do 500kH z Ś wejścia/wyjściaanalogowe o rozdzielczości do 1/8000 i szybkości konwersji od 250m s Ś regulatory PID z wejściami Termoparowymi lub Pt 100 Ś moduły pozycjonujące Typu NC (maks 4 osiowe) Ś moduł portów szeregowych RS232 i RS422/485 z funkcją Macro Protocol maks 34 porty szeregowe Ś Ethernet Ś Controller Lmk(CLK) komunikacja ze sterownikami OMRON -COM1H/ C200HAIpha/CV Ś DeviceNet(CompoBus/D) jeden moduł mogący pełnić rolę modułu Master lubSlave Ś CompoBus/S wość sygnału na szybkim wejściu prze-rwaniowym wynosi 500kHz. Dostępne są taks9 moduły wejść-wyjść analogowych, których rozdzielczość wynosi 1:8000 a czas konwersji nie przekracza 250|_is. Interesujące dla wielu aplikacji typowych są takśe możliwości specjalizowanych modułów regulatorów PID z automatycznym dobieraniem parametrów i wejściami termoparowymi lub PtlOO oraz modułów pozycjonujące typu NC (max. 4-osiowe). Komunikacje, z otoczeniem zapewniają: moduł portów szeregowych RS2 3 2 i RS422/485 z funkcją Macro Protocol (połączone rónolegle maks. 34 porty sze- regowe) oraz moduły sieciowe: Ethernet Controller Link, DeyiceNet (CompoEus/D) oraz moduł mogący pełnić role. sterownika Master lub Slave CompoEus/S. Pojemność pamięci programu można zwiększyć z 3Ok kroków do 12Ok kroków, poprzez zastosowanie dodatkowych modułów Flash. Maksymalna pojemność pamięci danych mośe wynosić do 256k słów. Standardowym wyposażeniem jednostki centralnej jest takśe zegar czasu rzeczywistego. Niebagatelną wydajność jednostki centralnej określa duża liczba możliwych do zastosowania timerów-liczników, których mośe być aś 4096. Istotny dla projektantów systemów sterowania jest fakt, śe architektura sterownika CJl jest zgodna ze sterownikami starszej, bardzo popularnej rodziny CSl. Pozwala to zachować dotychczasowe przyzwyczajenia i - co równie waś-ne - przenieść bez modyfikacja znaczą liczbę programów przygotowanych dla sterowników poprzedniej generacji, Andrzej Gawryluk, AVT Dodatkowe informacje Dodatkowe informacje o sterownikach przedstawionych w artykule można znaleźć w Internecie pod adresem: http://ornro n. n etc ast. n l/dy n anii c/3_2_ps in d ex asp. 126 Elektronika Praktyczna 5/2002 AUTOMATYKA Oprogramowanie SCADA Na polskim rynku InTouch jest powszechnie stosowany we wszystkich nieomal branżach przemysłu - obecnie w Polsce działa już ponad 2000 instalacji, a wśród użytkowników pakietu są m.in.: Huta Katowice, Huta Ostrowiec, Huta T. Sendzimira, Henkel Polska i wiele innych dużych firm. Do grona użytkowników tego oprogramowania zalicza się także wielką rzeszę średnich i małych przedsiębiorstw, bowiem dzięki swoim możliwościom - o których więcej dalej - Wonderware InTouch nadaje się do zastosowania zarówno w małych, jak i w bardzo rozbudowanych aplikacjach. Możliwości Tak naprawdę funkcjonalność i możliwości prezentowanego oprogramowania są ograniczone jedynie warunkami sprzętowymi aplikacji i wyobraźnią projektanta. Wonderware InTouch charakteryzuje się także kilkoma istotnymi dodatkowymi możliwościami, które sprawiają, że jest to program popularny wśród polskich użytkowników. Do najważniejszych można zaliczyć: - jest dostępny w polskiej wersji językowej oraz z polską dokumentacją (podręcznikami: użytkownika, opisów funkcji skryptowych, pól i zmiennych systemowych, modułów dodatkowych SPC, SQL), pomocą, systemem podpowiedzi i wskazówek, - ma intuicyjne menu, w wymagających tego miejscach jest to menu kontekstowe, - ma konfigurowalne paski narzędziowe, - w pakiet projektowy wbudowano wygodny w obsłudze program zarządzający budowaną aplikacją. Edytor zmiennych Tworzenie aplikacji jest łatwe i szybkie dzięki możliwości określania parametrów zmiennych. Możliwy jest także import oraz export zmiennych do pliku CSV i ich opracowanie za pomocą takich narzędzi, jak Microsoft Excel. Odnośniki Zapewniają pełną kontrolę nad projektem - zawsze wiemy, gdzie wykorzystywana jest dana zmienna. Predefiniowane obiekty graficzne InTouch zawiera w swoich bibliotekach aż 2500 gotowych elementów graficznych, znakomicie przyspieszających stworzenie nawet bardzo bogatej graficznie aplikacji, dzięki czemu projektant może całkowicie skoncentrować się na swoim głównym zadaniu. Dodatkowo w InTouch'u można wykorzys- Od ponad sześciu lat firma Astor oferuje polskim użytkownikom oprogramowanie przemysłowe amerykańskiej firmy Wonderware, producenta najbardziej popularnego oprogramowania SCADA (Supervisory Control and Data Acąuisition) - pakietu do wizualizacji procesów przemysłowych Wonderware InTouch. tać olbrzymie zasoby kontrolek ActiveX różnych producentów. Sy stem al ar mo w an i a o p ro gram o -wania InTouch pozwala na swobodne konfigurowanie różnych typów progów alarmowych, a także zmianę zakresów alarmowych w trakcie działania aplikacji, co oznacza łatwe dostosowanie aplikacji do wymogów nadzoru obiektu. Wyświetlanie informacji o alarmach jest ułatwione dzięki grupom alarmowym oraz priorytetom, które są związane z każdym alarmem. InTouch potrafi także rejestrować alarmy w bazach danych Microsoft Access oraz Microsoft SQL Server 7.0, co z kolei otwiera szerokie możliwości raportowania z poziomu narzędzi Microsoft Office. Receptury Moduł ten stanowi doskonałe narzędzie do przygotowywania zestawów receptur, a także do ich Napel n ia n i a Końce nliar Elektronika Praktyczna 5/2002 127 AUTOMATYKA wczytywania oraz zapisywania, co jest konieczne w każdym procesie wsadowym, a wykorzystywane także w wielu innych przypadkach. Logowanie danych i trendy InTouch ma możliwość automatycznego logowania zmian wartości zmiennych. Zmiany te można następnie przedstawiać za pomocą trendów historycznych (do ośmiu pisaków na wykresie jednocześnie). Dodatkowym atutem jest fakt, ze dzięki dostępowi do przemysłowej bazy danych Won-derware IndustrialSQL Server, na wykresach można także prezentować dane z tejże bazy. Raportowanie Dzięki dużym możliwościom łączenia oprogramowania InTouch z zewnętrznymi programami, takimi jak Microsoft Excel czy Microsoft Word, w aplikacji można także wykorzystać raportowe możliwości tych pakietów. InTouch potrafi pobierać i przekazywać informacje poprzez protokoły SuiteLink, DDE czy NetDDE, a także ODBC. Posiada on także funkcje służące zapisywaniu oraz odczytywaniu danych z plików tekstowych, np. w formacie CSV. Zdalne adresowanie zmiennych Każda licencja InTouch pozwala na wykorzystanie własnego limitu zmiennych, np. 64 i - dodatkowo - dostęp do zmiennych innych aplikacji wizualizacyjnych lub programów komunikacyjnych, bez konieczności definiowania zmiennych I/O. Umożliwia to tworzenie dużych funkcjonalnie aplikacji przy użyciu tanich licencji (na małą liczbę zmiennych). Dynamiczne adresowanie zmiennych Zmienne pakietu InTouch mogą dynamicznie, czyli podczas pracy systemu, zmieniać swoje adresy, czyli np. odnosić się kolejno do różnych rejestrów sterownika. Daje to dużą elastyczność wykorzystywania liczby licencjonowanych zmiennych. Wszystkie wymienione cechy (skalowalność, otwartość, łatwość użytkowania, komplet niezbędnych funkcji), a także polityka cenowa prowadzona przez producenta powodują, że InTouch jest produktem dla każdego. Jak już wspomniano, równie doskonale nadaje się do małych zastosowań, w któ- rych liczba zmiennych aplikacji nie przekracza 64 (np. wizualizacja pracy maszyn lub niewielkich linii produkcyjnych, wizualizacja niewielkich przepompowni, kotłowni, itp.), jak i do ogromnych systemów, wymagających zastosowania zaawansowanych aplikacji (duże fabryki z wieloma stacjami wizualizacji, np. huty, zakłady chemiczne itp.). W każdym przypadku InTouch będzie rozwiązaniem niezwykle ekonomicznym, nie tylko ze względu na niewygórowane ceny samych licencji, ale także na koszty wdrożenia i serwisowania instalacji. Dodatkowo jest on uzupełniany przez całą rodzinę oprogramowania przemysłowego FactorySuite 2000, w której skład wchodzi. Pakiet ten jest ze sobą silnie zintegrowany i pozwala na zbudowanie kompleksowego systemu informatycznego firmy. Witold Czmich, Astor Dodatkowe informacje Dodatkowe informacje o programie InTouch można znaleźć na płycie CD-EP5/2002B oraz w In- Ternecie pod adresemwww.astor.com.pl. Artykuł powstał w oparciu o materiały udostępnione przez firmę AstorSp. z o.o., Tel. (12)428-63-00, www.astor.com.pl, inlo@astor.com.pl. Elektronika Praktyczna 5/2002 129 PROJEKTY System NET51, AVT-5062 PROJEKT Z OKŁADKI Sprzętowo zrealizowany stos TCP/IP przedstawiliśmy w projekcie okładkowym w marcu tego roku. Do tematu wracamy - tym razem prezentując przykład programowej realizacji takiego stosu komunikacyjnego. Jest to zn any in tern etowym fan om in terfejs NET51, który w ostatnich dniach marca wzbudził olbrzymie emocje na elektronicznych listach "newsowych". W ciągu ostatnich lat obserwuje się trend podłączania różnorodnych urządzeń do Internetu. Praktycznie każdy z liczących się producentów mikroprocesorów przedstawił już swoje autorskie rozwiązanie. Powstały także niezależne firmy, które lansują rozwiązania zarówno sprzętowe jak i programowe w tej dziedzinie. Niektóre z tych rozwiązań były opisywane na łamach Elektroniki Praktycznej w dziale poświęconym nowościom sprzętowym. Przykładowo można przytoczyć opis opracowania modułu z układem iChip (EP3 i 4/02). Z używaniem Internetu do wymiany informacji jest związanych wiele korzyści, z których najważniejszą jest globalny zasięg, przy względnie niskim koszcie połączenia. Do niedawna zastosowanie łączności przy użyciu protokołów TCP/IP wymagało wykorzystania komputerów z procesorami 16-sto lub 32-bitowymi, co dla docelowej aplikacji oznacza duży koszt części sprzętowej, rozbudowane płytki z obwodami drukowanymi oraz znaczny pobór energii. Postęp w technologii w elektronice spowodował rozwiązanie większości problemów dotyczących aspektów technicznych, lecz pozostaje jeszcze rachunek ekonomiczny, nakazujący zmniejszanie kosztów, co prowadzi do szukania rozwiązań z mikrokontrolerami 8-bitowymi. W przypadku systemów mikroprocesorowych udostępnienie możliwości pracy w sieci najczęściej odbywa się na trzy sposoby: 1. Wydzielony komputer (np. PC) ma połączenie do Internetu i pełni funkcję bramy interneto-wej dla pozostałych urządzeń, które są do niego podłączone (poprzez RS232 lub RS485). 2. Wykorzystanie dedykowanego układu lub modułu do łączności internetowej, który dla współpracującego mikrokontrolera jest elementem peryferyjnym. 3. Bezpośrednia implementacja stosu TCP/IP razem z oprogramowaniem aplikacyjnym mikrokontrolera. Jakiś czas temu, obserwując w In-ternecie różnorodne próby implementacji stosu TCP/IP na "małych" mikrokontrolerach, postanowiłem też spróbować swoich sił w tej dziedzinie i tak powstał system NET51 (należący do kategorii 2 lub 3), który opisuję w tym artykule. Trochę teorii Stos TCP/IP składa się z szeregu protokołów umieszczonych w różnych warstwach. W uproszczeniu system TCP/IP przedstawiany jest na czterech warstwach 14 Elektronika Praktyczna 5/2002 System NET51 Warstwa aplikacji Warstwy stosu TCPflP Protokoły HTTP, FTP. TELNET TCP, UDP IP Warstwa łącza Ethernet Warstwa transportowa Warstwa sieciowa Rys. 1. Warstwy stosu TCP/IP (rys. l), chociaż model OSI przewiduje siedem warstw (pozostałe warstwy są używane w celu zwiększenia poziomu abstrakcji danych, czyli inaczej mówiąc ułatwienia obsługi systemu sieciowego). Najwyżej jest umieszczona warstwa aplikacji, na której są realizowane protokoły obsługujące usługi takie jak HTTP, FTP, TELNET itd. Warstwa ta zajmuje się wyłącznie wymianą oraz interpretacją informacji w sposób zgodny z wymaganiami danej aplikacji. Warstwy leżące poniżej nie zawierają informacji o cechach współpracującej aplikacji, gdyż ich zadaniem jest tylko zapewnienie usług poprawnej komunikacji. W warstwie transportowej umieszczony jest protokół TCP, który odpowiada za niezawodne dostarczanie danych. Zazwyczaj TCP dzieli strumień danych z aplikacji na mniejsze fragmenty zwane segmentami, które następnie wysyła do warstwy sieciowej. Na drugim końcu połączenia odbiornik TCP dba o retransmisję zagubionych segmentów, dokonuje potwierdzeń i ustala poprawną kolejność odebranych segmentów, a następnie przekazuje dane do warstwy aplikacji. Takie działanie TCP zwalnia aplikację od zajmowania się szczegółami transmisji. Zdecydowanie prostszym protokołem warstwy transportowej jest UDP, lecz ta usługa warstwy transportowej nie gwarantuje dostarczenia pakietów danych (zwanych datagramami) do odbiorcy. Zadaniem warstwy sieci, inaczej nazywanej warstwą internetową, jest obsługa ruchu pakietów w sieci. Między innymi, warstwa ta świadczy usługę określania właściwej trasy do odbiorcy pakietu [IP routing). W tej części stosu działają protokoły IP oraz ICMP. Ostatnią warstwą jest warstwa łącza danych zajmująca się wszystkimi szczegółami związanymi z interfejsem sprzętowym (sterowniki) oraz połączeniem fizycznym (Ethernet lub modem). Pomiędzy warstwami są przekazywane informacje w formie ramek składających się z pola danych oraz nagłówka o ściśle określonym formacie. Informacja o budowie nagłówka umożliwia odbiorcy wydzielenie właściwego pola danych. Formaty nagłówków p o-szczególnych protokołów są zdefiniowane w ogólnie dostępnych w Internecie dokumentach RFC (np. IP - RFC791, TCP - RFC793, UDP - RFC768). Dowolna warstwa może komunikować się tylko ze swoimi sąsiadami za pomocą wywołań funkcji interfejsowych udostępnianych przez poszczególne elementy składowe stosu. Za ich pomocą dane są przekazywane w dół stosu, aż osiągną formę strumienia bitów w interfejsie fizycznym. Każda warstwa dodaje własne informacje do otrzymanych danych, a następnie przesyła je do warstwy niższej. Taki proces jest określany terminem pochodzącym z języka angielskiego jako enkap-sulacja (bardziej po polsku - kap-sułkowanie). W celu przybliżenia czytelnikom omawianego zagadnienia posłużę się rys. 2, przedstawiającym proces przepływu danych przez stos TCP/IP. Przykładowo, na żądanie klienta serwer HTTP wysyła do warstwy transportowej DANE, które mogą stanowić plik graficzny lub tekstowy. Zanim to nastąpi, procedury serwera dołączają do bieżącej informacji nagłówek aplikacji. W tym przypadku nagłówek zawiera informację określającą rodzaj pliku (tekst/obraz/aplikacja) oraz jego rozmiar. Następnie moduł TCP, jeżeli zachodzi taka potrzeba, dzieli otrzymaną informację na segmenty i do każdego dołącza własny nagłówek z danymi dotyczącymi między innymi kolejności przesyłania segmentów oraz rodzaju aplikacji, z której pochodzi przesyłana informacja. Dane zawarte w nagłówkach TCP pozwalają odbiornikowi na ustalenie właściwej kolejności segmentów, gdyż z uwagi na charakter przepływu danych w Internecie możliwe jest, że kolejno nadane segmenty zostaną odebrane w innym porządku. Na swej dalszej drodze segmenty TCP trafiają do warstwy sieciowej, gdzie protokół IP dodaje własny nagłówek z adresami IP nadawcy i odbiorcy oraz informację dotyczącą protokołu transportowego (TCP czy UDP) - powstaje datagram. Na podstawie adresu odbiorcy, protokół IP dokonuje wyboru dalszej trasy datagramu korzystając z tabeli tras i kieruje go do właściwego sterownika w warstwie łącza. Należy dodać, że tabela tras może się zmieniać dynamiczne, ponieważ zawarte w niej dane tracą ważność w przypadku awarii węzła przekazującego pakiety na trasie. Informacje o stanie sieci oraz poszczególnych węzłów są przekazywane przy użyciu protokołu ICMP, który także został umieszczony w warstwie sieciowej. Ostatnim etapem "podróży" danych przez stos jest warstwa łącza danych, w której sterownik interfejsu dołącza kolejne informacje związane z fizycznym przekazem danych (np. suma kontrolna CRC) i dokonuje wysłania ramki w Wielką Sieć. Opis układu Schemat elektryczny układu przedstawiono na rys. 3. W systemie NET51 został wykorzystany mikrokontroler 8051 w wersji podstawowej taktowany sygnałem zegarowym o częstotliwości ll,0592MHz, lecz nic nie stoi na przeszkodzie, aby użyć "większych braci" z rodzin produkowanych przez firmy Dallas lub At-mel. Mikrokontroler U2 pracuje w typowym układzie aplikacyjnym z zewnętrzną pamięcią programu i danych. Układ U5 jest zatrzaskiem, który zapamiętuje osiem młodszych bitów adresu, wystawianych przez U2 na multiplek-sowanej magistrali sygnałów ad- DANE APP hdr DANE HTTP serwer TCP hdr APP hdr DANE TCP segment TCP IPhdr TCP hdr APP hdr DANE datagram IP ETH hdr IPhdr TCP hdr APP hdr DANE Ethernet ramka ETHERNET Rys. 2. Proces enkapsulacji danych Elektronika Praktyczna 5/2002 15 System NET51 83 Gl AS+ eoui AS- zoaua ABl-SMO-AZI.+ UH3HS-MOI- uoi-eova- EDEHO IO3U0 HSdEU-X1OSAS ZDUI 9OHI SDdl WDHI EDUI 01 AS+ XOHOOI- ia sa sa Kl ea za ia oo AOUHOOI N3V 8 LV ei.v Z LV 9 LV SLV *LV ELV Z LV I LV OLV ev BV IV 9V SV GV ZV LV ov 91SOH3W- BHflS- 91S0OI- EBVS OLDUI 3ZVS LLDUI LZVS Z1OUI OBVS SlOUI 61VS flDdl B1VS o>iova- ZIVS soaua sas iova- eas 9O3UO mas ^>łOVQ- Lias ZD3UO sms AS+ ems UiLSWI- ł-ms ONE) sms 5. 5 58 S pLgg
Ó Ó Ó ó o o o o Rys. 3. Schemat elektryczny układu węzła systemu NET51 16 Elektronika Praktyczna 5/2002 System NET51 resowych i danych. Mikrokontro-ler współpracuje z pamięcią danych U6 o pojemności 32kB, której większa część została wykorzystana na system buforów danych dla stosu TCP/IP oraz współpracujących z nim aplikacji. Oprogramowanie systemowe jest umieszczone w pamięci programu U8 o pojemności 64kB, którą jest układ pamięci EPROM typu 27C512. Kod źródłowy opisywanego modelu serwera zajmuje około 45kB, a więc pozostaje fragment pamięci na programy użytkownika lub zaimplementowanie dodatkowych protokołów. W otoczeniu mikrokontrolera znajduje się układ U3 typu AT24C256, który jest pamięcią EEPROM z interfejsem PC o pojemności 32kB. W tej pamięci są umieszczone dane konfiguracyjne serwera NET51 (m.in. adres IP), a także przechowywana jest struktura prostego systemu plików. Nietypowym elementem jest układ PLD typu GAL16V8, pełniący funkcję dekodera adresowego. Odpowiednie skonfigurowanie matrycy PLD pozwala utworzyć w przestrzeni adresowej pamięci połączenia pamięci programu i danych (uzyskujemy możliwość dynamicznej modyfikacji programu), lecz ta właściwość nie jest wykorzystywana w omawianym systemie. Kolejnym elementem układu serwera jest generator sygnałów zerujących typu TL7705. Układ ten monitoruje napięcie zasilania. Jeżeli jego wartość zmniejszy się poniżej określonego progu, wyjściowe sygnały przechodzą w stan aktywny. Po powrocie napięcia zasilającego do właściwej wartości, wyjścia zerujące pozostają w stanie aktywnym przez czas określony stałą czasową wynikający z pojemności kondensatora C2 oraz wewnętrznego rezystora układu U2. Element TL7705 dysponuje wejściem ręcznego zerowania, z wbudowanym układem eliminującym drgania zestyków, które w połączeniu z niewykorzystanym wyprowadzeniem mikrokontrolera może być użyte do zdalnego zerowania przez sieć. W systemie NET51 wykorzystane jest tylko wyjście z aktywnym poziomem wysokim, które służy do zerowania, zarówno głównego mikrokontrolera, jak i kontrolera karty sieciowej. Najważniejszym elementem całego systemu, umożliwiającym łączność za pośrednictwem sieci Ethernet, jest karta sieciowa ze złączem ISA. W serwerze została użyta, z uwagi na niską cenę oraz dużą popularność, 16-bitowa karta firmy "D-Link" z kontrolerem typu RTL8019. Układ ten jest całkowicie zgodny ze standardem NE2000, jednak oprogramowanie NET51 wykorzystuje specyficzne właściwości tego kontrolera. Drugim argumentem przemawiającym za użyciem karty ze złączem ISA jest bezpośrednie sprzęgnięcie z magistralą systemową mikrokontrolera (opis można odnaleźć w EP10/93), w przeciwieństwie do kart PCI, które wymagają już specjalizowanego sterownika. W systemie NET51 kontroler RTL8019 pracuje w trybie 8-bito-wym (najstarsze bity szyny danych złącza ISA nie są wykorzystywane) i zajmuje 15 bajtów w przestrzeni adresowej 8051. Zatem do sterowania pracą karty używanych jest pięć lini adresowych A0...A4. Sygnał AEN (aktywny poziom niski) jest sterowany z dekodera adresowego i pełni rolę wejścia CS [Chip Select), zezwalającego na operacje we/wy z udziałem RTL8019. Aby używać kartę sieciową w systemie NET51, należy ją odpowiednio skonfigurować. Domyślnie karta pracuje w trybie PnP [Pług and Play), a właściwej konfiguracji dokonuje komputer. W tym celu należy umieścić kartę w wolnym słocie ISA komputera PC i uruchomić program RSET8019.EXE z dyskietki dostarczonej przez producenta karty. Kolejnym krokiem jest wprowadzenie karty w bezzworkowy tryb pracy i ustawienie adresu bazowego na 300H. Po zapisaniu zmienionej konfiguracji w pamięci karty i wyłączeniu komputera można ją umieścić w złączu NET51. Stan serwera jest sygnalizowany za pomocą dwóch diod świecących. Czerwona dioda Dl migocze (z częstotliwością ok. 2Hz), gdy serwer pracuje poprawnie. Natomiast zielona D2 sygnalizuje prawidłowo zakończony proces konfiguracji (np. za pomocą protokołu DHCP). Do komunikacji z otoczeniem system NET51 uży- WYKAZ ELEMENTÓW Rezystory Rl: 4,7kQ R2, R3: 3,3kQ R4, R5: 470O Ró, R7: 220O Kondensatory Cl, CIO, Cli: lOOnF C2, C5...C7: 22jiF/16V C3, C4, C8: 33pF C9: 220^F/16V Półprzewodniki Dl: LED czerwony D2: LED zielony Ul: TL7705 U2: 80C51 U3: AT24C256 U4: 7407 U5: 74LS573 Uó: 27C512 U7: MAX232 U8: 62256 U9: G16V8A U10: 7805 Różne Ql: ll,0592MHz CON2: ARK2 CON3: złącze ISA CON1: DB9 Wl: mikroprzełącznik Pl, P2: SY-112-K Zl: zwora wa portu szeregowego, dwóch uniwersalnych wejść/wyjść cyfrowych (na schemacie IOl oraz 102) oraz dwóch wyjść przekaźnikowych. Do sterowania przekaźnikami oraz diodami świecącymi zostały użyte bufory z otwartym kolektorem (typu 7407), ponieważ wydajność prądowa końcówek portów mikrokontrolera okazała się niewystarczająca. Układ MAX232 odpowiada za konwersję poziomów napięć występujących na stykach portu szeregowego do standardu RS232, co jest wymagane przy transmisji danych do komputera PC. System NET51 wykorzystuje sprzętową kontrolę transmisji RTS/CTS, dlatego przy połączeniach PPP lub SLIP wymagany jest "pełny" kabel połączeniowy interfejsu RS232. Natomiast w pozostałych przypadkach może być używany kabel "null modem". Moduł z układem U7 został zmontowany na osobnej płytce, przez co możliwa jest bezpośrednia współpraca NET51 Elektronika Praktyczna 5/2002 17 System NET51 z innymi mikrokontrolerami posiadającymi port szeregowy. Ostatnim elementem układu serwera jest prosty zasilacz zbudowany w oparciu o stabilizator U10 typu 7805, który dostarcza napięcia +5V do zasilania elementów cyfrowych. Układ ten jest wymagany, gdyż serwer jest zasilany stabilizowanym napięciem +12V z zewnętrznego zasilacza. Zastoso- wanie zasilacza o takiej wartości napięcia wyjściowego wynika z konieczności dostarczenia do karty sieciowej napięć +5V oraz +12V. Paweł Ciesłowski pcieslowski@wp.pl Literatura 1. "TCP/IP Ilustrated Volume 1, The Protocols", W. Richard Ste- vens 2. "TCP/IP Ilustrated Volume 2, The Implementations", W.Richard Stevens, Gary Wright 3. http://www.ietf.org/rfc.html -zbiór dokumentów RFC Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/maj 02.htm oraz na płycie CD-EP05/2002B w katalogu PCB. 18 Elektronika Praktyczna 5/2002 PROJEKTY Mówiący termometr AYT-5063 Metody pomiaru temperatury oraz sposób prezentacji wyników zmieniły się radykalnie w ostatnich latach. Niektórzy zapewne pamiętają czasy, w których samodzielne wykonanie termometru elektronicznego było - obok zegara największym wyzwaniem dla początkującego elektronika. Wykonanie termometru z wykorzystaniem jako czujnika diody ^" półprzewodnikowej i jego wyska-lowanie odstraszało nawet najbardziej zapalonych majsterkowi-czów. Również pomiar temperatury za pomocą uniwersalnych mul-timetiów nie dostarczał dokładnych wyników. Dopiero pojawienie się scalonych czujników temperatury, na przykład układów typu LM35, zrewolucjonizowało także pomiary. Otrzymane na wyjściu czujnika napięcie wprost proporcjonalne do mierzonej temperatury i przeliczone na C całkowicie uwolniło konstruktorów od żmudnej procedury skalowania miernika i jednocześnie zwiększyło dokładność pomiarów. Znane zapewne Czytelnikom EP układy DS1820, dzięki komunikacji w standardzie szeregowym 1-Wire, umożliwiają zdalny pomiar temperatury przy wykorzystaniu tylko jednego wyprowadzenia portu procesora. Przy zastosowaniu odpowiedniego sposobu sterowania magistralą 1-Wire, czujnik może być oddalony od procesora sterującego nawet o 500 metrów. Poza tym, do magistrali może być dołączonych nawet kilka dzi e sią t ukł adów. W przedstawionym w artykule termometrze połączono technikę analogową z cyfrową. Zrezygnowano z typowego wyświetlacza wartości temperatury, na rzecz głosowego przedstawiania jej wartości. Termometr umożliwia pomiar temperatury w dwóch punktach. Dzięki zastosowaniu scalonych czujników temperatury typu DS1820 możliwy jest pomiar w zakresie -55C do 125C z dokład- nością 0,5C, bez zwiększania błędów pomiarowych w przypadku znacznego oddalenia czujników od płytki termometru. Wynik pomiaru temperatury jest przedstawiany w postaci komunikatu głosowego dzięki zastosowaniu układu ISD2560. Wyzwolenie pomiaru jest możliwe dwoma sposobami: za pomocą przycisków umieszczonych na płytce termometru oraz zdalnie za pomocą dźwięku. Naciśnięcie klawisza SWl spowoduje pomiar temperatury w pomieszczeniu, zaś naciśnięcie przycisku SW2 na dworze. Zdalny pomiar można wyzwolić poprzez klaśnięcie. Dwukrotne klaśnięcie uruchomi pomiar temperatury w pomieszczeniu, a trzykrotne na dworze. Opis układu Na rys. 1 przedstawiono schemat elektryczny termometru. Składa się on z czterech głównych bloków: sterowania, odtwarzania dźwięku, przetwornika dźwięku na impulsy o poziomach 0...5Y oraz bloku zasilania. Blok sterowania został wykonany w oparciu o mikroprocesor firmy Microchip PIC16F628. Mikiokontioler, pod względem funkcjonalnym i rozmieszczenia wyprowadzeń, jest kompatybilny ze znanym już układem PIC16F84A. Poświęcimy mu trochę więcej uwagi. Na rys. 2 przedstawiono rozmieszczenie wyprowadzeń układu PIC16F628. Niemal każde z wyprowadzeń może pełnić kilka funkcji. Mikiokontioler ten, zamontowany w niewielkiej 18-nóżkowej obudowie, posiada pamięć programu typu Flash o pojemności 2k słów 14-bitowych. Zastosowanie pamięci programu o słowie 14-bitowym Elektronika Praktyczna 5/2002 21 Mówiqcy termometr Rys. 1. Schemat elektryczny mówiącego termometru umożliwiło wykonywanie każdej instrukcji w jednym cyklu maszynowym, a każdy rozkaz - za wyjątkiem skoków - zajmuje tylko jedno słowo pamięci programu. Ma to znaczący wpływ na zmniej- szenie rozmiaru kodu wynikowego oraz na szybkość wykonywania instrukcji. Procesor posiada 128 bajtów wewnętrznej pamięci EEP-ROM oraz 224 bajty pamięci operacyjnej RAM. Jak już wcześniej wspomniałem, wyprowadzenia mogą być konfigurowane na różne sposoby, dzięki temu w układzie 18-nóżko-wym można uzyskać 16 wyprowadzeń wejścia-wyjścia. Nawet wyprowadzenia oscylatora czy zerowania mogą pełnić funkcje sterujące, jednakże z jednym ograniczeniem - wyprowadzenie zerowania MCLR (gdy jest skonfigurowane jako cyfrowe) może być użyte tylko jako wejście. W takim przypadku sygnał zerowania jest generowany przez wewnętrzny generator zerowania. Jeżeli wyprowadzenia oscylatora chcemy wykorzystać jako cyfrowe wejście-wyjście, to do generowania sygnału zegarowego należy wykorzystać wewnętrzny generator, który może pracować zjedna z dwóch częstotliwości: 4MHz lub 3 7kHz. Częstotliwość pracy wewnętrznego generatora może być zmieniana programowo podczas aktywnej pracy procesora. Umożliwia to zmniejszenie częstotliwości pracy generatora, a co za tym idzie zmniejszenie poboru prądu w czasie, gdy procesor nie wykonuje skomplikowanych operacji, a tylko monitoruje przebieg jakiegoś procesu oraz automatyczne przyspieszenie w momencie pojawienia się jakiejś nieprawidłowości w monitorowanym procesie. Timer TMRl, zawarty w procesorze, umożliwia zliczanie impulsów z zewnętrznego generatora zbudowanego w oparciu o rezonator kwarcowy oraz kondensatory podłączone bezpośrednio do wyprowadzeń portu RB6 i RB7. Wykorzystanie timera z zewnętrznym rezonatorem kwarcowym (o częstotliwości 32,768kHz) może być bardzo przydane przy budowie wszelkiego rodzaju urządzeń odmierzających czas, gdyż procesor może pracować z częstotliwością równą 4MHz, niekoniecznie o dużej stabilności, np. z wewnętrznego generatora RC, a timer TMRl będzie zliczał impulsy ze stabilnego generatora kwarcowego podłączonego do wyprowadzeń portu PB6 i PB7. Dla rezonatora o częstotliwości 32,768kHz przerwanie od TMRl może być generowane dokładnie co 1 sekundę. Znacznie upraszcza to procedurę odliczania czasu, gdyż wystarczy jedynie zliczać impulsy Elektronika Praktyczna 5/2002 Mówiqcy termometr RA2/AN2WREF RA3/AN3/CMP1 RA4/TOCKI/CMP2 FW5MCLFVTHV VSS RBO/INT RB1/RWDT RB2TOCK RB3/CCP1 RA1/AN1 RAO/ANO RA7/OSC1/CLKIN RA&OSC2/CLKOJT Vdo RB7/T1OSI RBSTIOSOmCKI RB5 RB4/PGM Rys. 2. Opis wyprowadzeń układu PIC16F628 jednosekundowe, a nie - jak to ma miejsce przy rezonatorze 4MHz -gdy przerwanie występuje co kilkadziesiąt czy kilkaset milisekund. Rzadsze przerwania od timera pozwalają na mniejsze zaangażowanie procesora w odmierzanie czasu, a tym samym ma on więcej czasu na wykonywanie bieżących zadań. Schemat wewnętrzny timera TMRl jest przedstawiony na rys. 3. Konstruktorzy procesora włożyli dużo pracy, aby stał się on bardzo uniwersalny i jednocześnie prosty w programowaniu. Do komunikacji użytkownika z termometrem służą klawisze SW1 i SW2, zaś dwukolorowa dioda świecąca Dl sygnalizuje stan pracy termometru. Dioda świecąca została podłączona bezpośrednio do portów procesora, gdyż możliwe jest ich obciążenie prądem 20mA, zarówno w stanie niskim jak i wysokim. Do portu RB zostały dołączone klawisze SWl i SW2 bez rezystorów podciągających, ponieważ port ten posiada możliwość dołączania wewnętrznych rezystorów podciągających "pull-up". Kolejnym blokiem termometru jest układ nagrywania oraz odtwarzania wiadomości. Do tego celu zastosowano specjalizowany układ typu ISD2560. Układ ten umożliwia zapis wiadomości słownych o łącznym czasie 60 sekund i maksymalnej częstotliwości sygnału wejściowego ograniczonej do 3,4kHz. Takie pasmo sygnału umożliwia wykonanie nagrań głosowych o dosyć dobrej jakości, porównywalnej do rozmowy telefonicznej. Układ ten zawiera kompletny tor zapisu i odczytu dźwięku wraz ze wzmacniaczem wejściowym, do którego można bezpośrednio dołączyć mikrofon, oraz wyjściowym mogącym bezpośrednio wysterować głośnik. Tak więc liczba elementów zewnętrznych jest ograniczona do minimum. Układ ISD2560 może być sterowany ręcznie, za pomocą przycis- ków, jak również przez mikroprocesor. Moduł przetwornika dźwięku na sygnał cyfrowy wykonany jest w oparciu o dwa wzmacniacze operacyjne zawarte w strukturze układu US3. Wzmacniacze służą do wzmocnienia sygnału z mikrofonu i przetworzenia go do postaci cyfrowej akceptowalnej przez procesor. Obydwa układy, zarówno zapisu i odtwarzania dźwięku, jak również detektora klaś-nięcia "potrzebują" do pracy mikrofonu. Ponieważ układ ISD2560 "potrzebuje" mikrofonu tylko w czasie zapisywania komunikatów, a układ detektora tylko w czasie normalnej pracy (czyli odtwarzania), stosowanie dwóch mikrofonów stało się zbędne. Zależnie od tego czy termometr jest w stanie nagrywania komunikatów, czy w stanie normalnej pracy, mikrofon jest dołączany poprzez zwory JPl i JP2 do jednego lub drugiego układu. W bloku zasilania zastosowano stabilizator LM2931. Umożliwia on stabilizację napięcia przy spadku napięcia na stabilizatorze równym około 0,2V. Jest to więc znacznie mniej niż spadki napięcia występujące w stabilizatorach typu LM78L05, w których wynoszą około 3V. Tak niski spadek napięcia umożliwia poprawną pracę termometru już od napięcia zasilającego nieco większego niż 5V, a jednocześnie przy obciążeniu wyjścia stabilizatora prądem około lOOmA nie odczuwa się znacznego wzrostu temperatury obudowy. Zasada działania Wszystkimi funkcjami termometru steruje procesor USl. Odpowiada on za komunikację z czujnikami temperatury, układem ISD2 560 oraz klawiaturą. Procesor, w zależności od stanu klawiatury oraz wejścia ze wzmacniacza operacyjnego US3B, wykonuje odpowiednie funkcje, które zostaną omówione poniżej. Taktowany jest zewnętrznym sygnałem zegarowym stabilizowanym rezonatorem kwarcowym o częstotliwości 4MHz. Do zerowania przy włączaniu zasilania zastosowano scalony układ generujący sygnał zerujący (DS1813). Czujniki temperatury zostały zbudowane w oparciu o specjalizowane układy termometrów cyfrowych DS1820. Pozwalają one na zdalny pomiar temperatury z rozdzielczością do 0,5C. Rozdzielczość pomiarów można zwiększyć do 0,lC (więcej informacji na temat układu DS1820 można znaleźć na stronie producenta układu lub w biuletynie USKA "Mikroprocesory i pamięci" 5/1996). Dzięki cyfrowej komunikacji czujników z procesorem przy wykorzystaniu standardu magistrali 1-Wire, stało się możliwe równoległe połączenie obydwu czujników oraz znaczne oddalenie czujników od procesora bez pogorszenia parametrów pomiaru temperatury. Wszystkie układy pracujące z magistralą 1-Wire posiadają niepowtarzalny numer seryjny umożliwiający identyfikację układu przez procesor sterujący. Numer seryjny składa się z ośmiu bajtów. Znaczenie poszczególnych bitów przedstawiono poniżej: 8-bitowy kod CRC (bajt kontrolny), 48-bitowy n umer seryjny, 8-bitowy kod rodziny. O ile komunikacja z dołączonym jednym układem jest bardzo prosta, gdyż nie ma potrzeby odczytywania numeru seryjnego układu, o tyle już w przypadku dwóch czujników sprawa się komplikuje. Aby procesor mógł komu- RB6/riOSQ/T1CKI SLEEP inpLJt Rys. 3. Budowa wewnętrzna timera TMRl Elektronika Praktyczna 5/2002 23 Mówiqcy termometr nikować się z dwoma układami musi najpierw znać ich numery seryjne. Jeżeli procesor chce nawiązać komunikację z dowolnym układem na magistrali 1-Wire musi najpierw wysłać do wszystkich układów odpowiedni numer seryjny. Jeśli na magistrali znajduje się układ o takim numerze seryjnym, to zgłasza swoją obecność i dalsze komendy sterujące wysyłane przez procesor są akceptowane tylko przez ten układ - inne układy czekają na sygnał zerowania, który pojawi się dopiero, gdy procesor będzie chciał nawiązać komunikację z innym układem. Tak więc podanie numeru seryjnego jednego układu powoduje blokowanie pozostałych układów podłączonych do magistrali 1-Wire. W tab. 1 przedstawiono algorytm komunikacji mikroprocesora z dołączonym jednym układem DS1820. Jak widać, w czasie komunikacji pomijany jest numer seryjny układu dołączonego do magistrali 1-Wire. Taki sposób komunikacji jest możliwy tylko i wyłącznie, gdy do magistrali jest podłączony jeden układ. Gdyby zostały podłączone dwa układy p owstałby konflikt, gdyż obydwa w tym samym czasie odpowiadałyby na komendy wysyłane przez układ sterujący. W celu umożliwienia komunikacji z kilkoma układami należy wykorzystać ich numery seryjne. W tab. 2 przedstawiono algorytm komunikacji z dowolnym układem DS1820, jeżeli do magistrali podłączonych jest więcej układów. Wykorzystanie adresowania poszczególnych układów dołączonych do magistrali 1-Wire umożliwia więc bezkonfliktową komunikację z dowolnym układem, lecz przed tą operacją należy odczytać numery seryjne wszystkich układów. Układ odtwarzania komunikatów ISD2560 pozwala na swobodne nagrywanie dowolnej liczby komunikatów oraz szybką ich weryfikację. Tryby pracy oraz realizowane funkcje zależne są od stanu wyprowadzeń sterujących M0...M6 przedstawiono w tab. 3. Układ ISD może być konfigurowa-ny w zależności od potrzeb, zarówno przy sterowaniu za pomocą klawiszy jak i mikroprocesora. W naszym układzie zostaną wykorzystane funkcje: kolejnego nagry- Tab. 1. Algorytm komunikacji mikroprocesora z dołączonym jednym układem DS1820 Tryb pracy procesora Wysyłane komendy Opis komend Nadajnik Reset Wystawienie przez procesor impulsu zerującego, inicjuje transmisje z DS1820 Odbiornik Impuls obecności Oczekiwanie na wystawienie impulsu obecności przez układ DS1820 Nadajnik Komenda CCH Komenda przeskocz ROM - pomija sprawdzanie wewnętrznego numeru seryjnego Nadajnik Komenda 44H Komenda ROM - rozpocznij pomiar temperatury Nadajnik Stan wysoki na linii danych Utrzymanie stanu wysokiego na linii danych magistrali 1 -Wire przez minimum 200ms (przy zasilaniu zewnętrznym układu DS1820) w celu wykonania pomiaru temperatury Nadajnik Reset Wystawienie przez procesor impulsu zerującego, inicjuje transmisje z DS1820 Odbiornik Impuls obecności Oczekiwanie na wystawienie impulsu obecności przez układ DS1820 Nadajnik Komenda BEH Komenda ROM - odczytaj pamięć podręczną Odbiornik Dziewięć bajtów danych Odczytanie pamięci układu DS1820, w tym temperatury Nadajnik Reset Wystawienie przez procesor impulsu zerującego, inicjuje transmisje z DS1820 Odbiornik Impuls obecności Oczekiwanie na wystawienie impulsu obecności przez układ DS1820, koniec transmisji wania komunikatów, przeszukiwania komunikatów i normalnego odtwarzania komunikatów. Termometr umożliwia słowną prezentację mierzonej temperatury za pomocą 40 komunikatów zawartych w pamięci układu ISD2560. Ponieważ pomiar temperatury w zakresie od -5 5C do 125C z rozdzielczością O,1C wymagałby o wiele większej liczby komunikatów, z pewnością nie wystarczyłoby 60 sekund na ich zapis, dlatego w przedstawionym układzie poszczególne wyniki pomiaru są składane z kilku komunikatów w jedną całość. Zrozumienie sposobu łączenia komunikatów ułatwi opis i umiejscowienie poszczególnych komunikatów w pamięci układu ISD2560. Proces zapisu składa się z następujących kroków: 1. Na wejście MO należy podać poziom niski. 2. Na wejście PD należy podać poziom niski i odczekać około 50ms (następuje przełączenie układu w stan aktywny i zerowanie wewnętrznego licznika adresującego pamięć). 3. Na wejście R/P podać poziom niski (następuje przełączenie w tryb zapisu). 4. Aby rozpocząć pierwsze nagranie należy na wejście CE podać poziom niski. Układ będzie w stanie nagrywania do czasu, gdy na wejściu CE występuje poziom niski. Aby zakończyć zapis, należy na wejście CE podać poziom wysoki. Po tej operacji proces nagrywania zostanie zatrzymany, a na koniec komunikatu zostanie automatycznie dołączony znacznik końca komunikatu EOM. 5. Gdy komunikat został nagrany, aby nagrać kolejne komunikaty należy powtarzać krok 4. Następne nagrania będą dołączane do poprzedniego, lecz wszystkie komunikaty są nagrywane jeden za drugim (rozdzielone znacznikami EOM) co umożliwi procesorowi "dotarcie" do dowolnego komunikatu podczas odtwarzania. 6.Jeżeli w czasie nagrywania zostanie przekroczony maksymalny czas nagrania dla danego układu, to wyjście OVF zmieni swój stan na niski, sygnalizując przepełnienie wewnętrznej pamięci. 7. Po nagraniu wszystkich komunikatów, na wejście PD należy podać poziom wysoki. Spowoduje to wyzerowanie wewnętrznego licznika adresowego i przejście układu w stan czuwania. Proces nagrywania został zakończony. Ponieważ komunikaty są zapisane w dowolnym miejscu pamięci układu, a obliczanie adresu kolejnego nagrania na podstawie czasu jego trwania jest bardzo kłopotliwe oraz dlatego, że komunikaty podczas nagrywania mogą być wypowiadane szybciej lub wolniej, a tym samym mogą znajdować się w innym miejscu pamięci, układ ISD 2 5 60 umożliwia odtwarzanie Elektronika Praktyczna 5/2002 Mówiqcy termometr Tab. 2. Algorytm komunikacji procesora z kilkoma układami DS1820 dołączonymi do magistrali 1-Wire Tryb pracy procesora Wysyłane komendy Opis komend Nadajnik Reset Wystawienie przez procesor impulsu zerującego, inicjuje transmisje z DS1820 Odbiornik Impuls obecności Oczekiwanie na wystawienie impulsu obecności przez układ DS1820, zgłaszają się wszystkie układy dołączone do magistrali Nadajnik Komenda 55H Komenda dopasuj ROM -wybórkonkretnego układu dołączonego do magistrali Nadajnik Dane 64-bitowy kod układu Wysłanie adresu układu, po tej operacji tylko układ o podanym adresie reaguje na kolejne komendy, pozostałe układy czekają na reset Nadajnik Komenda 44H Komenda ROM rozpocznij pomiar temperatury Nadajnik Stan wysoki na linii danych Utrzymanie stanu wysokiego na linii danych magistrali 1-Wire przez minimum 200ms (przy zasilaniu zewnętrznym układu DS1820) w celu wykonania pomiaru temperatury Nadajnik Reset Wystawienie przez procesor impulsu zerującego, inicjuje transmisje z DS1820 Odbiornik Impuls obecności Oczekiwanie na wystawienie impulsu obecności przez układ DS1820, zgłaszają się wszystkie układy dołączone do magistrali Nadajnik Komenda 55H Komenda dopasuj ROM -wybórkonkretnego układu dołączonego do magistrali Nadajnik Dane 64-bitowy kod układu Wysłanie adresu układu, po tej operacji tylko układ o podanym adresie reaguje na kolejne komendy, pozostałe układy czekają na reset Nadajnik Komenda BEH Komenda ROM - odczytaj pamięć podręczną Odbiornik Dziewięć bajtów danych Odczytanie pamięci wybranego układu DS1820, w tym temperatury Nadajnik Reset Wystawienie przez procesor impulsu zerującego, inicjuje transmisje z DS1820 Odbiornik Impuls obecności Oczekiwanie na wystawienie impulsu obecności przez układ DS1820, zgłaszają się wszystkie układy dołączone do magistrali, koniec transmisji ich kolejno bez znajomości faktycznego miejsca w pamięci. Aby odtworzyć dowolny komunikat układ oferuje funkcje "szybko naprzód". Umożliwia ona odtwarzanie komunikatów z prędkością 800 razy większą niż w trybie normalnym. Daje to możliwość dotarcia do dowolnego komunikatu w pamięci układu w czasie zaledwie kilkudziesięciu milisekund. Aby odtworzyć dowolny komunikat należy wykonać następujące czynności: 1. Zmienić poziom wejścia PD na niski i odczekać około 30ms. 2. Zmienić poziom na linii R/P na wysoki. 3. Jeśli ma być odtworzony pierwszy komunikat (N=l), to na wejście MO podajemy poziom niski, a następnie na wejście CE również poziom niski. Po odtworzeniu komunikatu dalsze odtwarzanie zostanie automatycznie wstrzymane (zostanie wykryty wskaźnik końca wiadomości EOM). 4. Jeśli numer komunikatu N jest większy od jedynki, należy wykonać N-l cykli trybu MO (wskazywania komunikatu) w poniższy sposób: a. zmienić poziom wejścia MO na wysoki b. podać na wejście CE impuls o niskim poziomie, krótszy niż lOms, c. czekać na impuls o niskim poziomie na wyjściu EOM, d. za każdym razem, gdy wystąpi impuls na wyjściu EOM, oznacza to, że został osiągnięty koniec kolejnego komunikatu Tab. 3. Tryby pracy układu ISD2560 Tryb Funkcja Zastosowanie M0 Odtwarzanie komunikatów Szybkie lub normalne odtwarzanie komunikatów M1 Kasowanie znaczników EOM Łączenie kilku komunikatów w jeden M2 Niewykorzystany - M3 Zapętlenie Ciągłe odtwarzanie wszystkich komunikatów M4 Kolejne adresowanie Zapis/odtwarzanie kolejnych komunikatów M5 Wyzwalanie poziomem CE Realizacja funkcji pauzy M6 Sterowanie klawiszami Sterowanie układem przy pomocy klawiszy e. należy od N odjąć 1, jeśli wynik odejmowania jest większy od 1, należy przejść do punktu "a" i ponownie wykonać kolejne kroki. 5. Jeśli N jest równe 1, to poziom wejścia MO należy zmienić na niski i na wejście CE podać impuls o niskim poziomie. Nity komunikat zostanie odtworzony z normalną prędkością. W omawianym termometrze wynik pomiaru temperatury jest składany z kilku pojedynczych komunikatów i dla każdego trzeba wykonać przeszukiwanie pamięci. Jednak dzięki szybkiej pracy układu ISD2560 połączone komunikaty stanowią jedną całość bez słyszalnych przerw pomiędzy odtwarzanymi fragmentami. Do przetworzenia sygnałów dźwiękowych (klaśnięć) do postaci cyfrowej zastosowany został podwójny wzmacniacz operacyjny typu LM35 8. Sygnał wejściowy z mikrofonu jest kierowany poprzez kondensator Cli oraz zwor-ki JP1 i JP2 (są w pozycji "PLAY") na wejście wzmacniacza US3A, a następnie z wyjścia tego wzmacniacza jest podawany na wejście komparatora utworzonego ze wzmacniacza operacyjnego US3B. Tak utworzony komparator wraz z kondensatorem C15 i rezystorami R11...R13 powoduje wydłużenie każdego pojawiającego się na wejściu komparatora impulsu 0 około 300 milisekund. Wydłużenie czasu trwania sygnałów wejściowych ma na celu likwidację pojawiających się na wyjściu paczek impulsów, które procesor odbierałby jako kilka klaśnięć 1 z każdym następowałoby uruchamiania pomiaru temperatury. Z wyjścia wzmacniacza US3B uzyskujemy sygnał cyfrowy, który jest podawany na wejście procesora. Procesor na podstawie odebranych sygnałów nadal realizuje dalsze kroki. Czułość wzmacniacza można regulować za pomocą potencjometru P. Układ zasilania zrealizowany jest za pomocą stabilizatora typu LM2931. Do filtracji napięcia zastosowano kondensatory C1...C4. Wygładzone i pozbawione zakłóceń napięcie zasilania jest bardzo istotne dla pracy układu odtwarzania dźwięku, dlatego przy samym układzie ISD2560 zastosowano do- Elektronika Praktyczna 5/2002 25 Mówiqcy termometr datkowo kondensatory odsprzęga-jące C7 i C8. Również napięcie zasilające mikrofon pojemnościowy zostało odfiltrowane poprzez kondensator C12. Takie środki ostrożności są konieczne, aby w czasie nagrywania komunikatów zakłócenia pochodzące z zasilania nie przenosiły się do nagrywania. Montaż i uruchomienie Montaż termometru rozpoczynamy od wlutowania rezystorów (schemat montażowy na rys. 4), następnie wlutowujemu podstawki pod układy scalone i na końcu kondensatory oraz złącza CONl...CON3. Układy US6 i US7 są montowane poza płytką na kablu o długości zależnej od sposobu umieszczenia czujników. W modelowym układzie jeden czujnik był umieszczony tuż przy płytce termometru, a drugi na zakończeniu kabla telefonicznego 2x2 (4 żyły) o długości 30m. Po dokładnym sprawdzeniu poprawności montażu, do złącza CONl dołączamy napięcie zasilające o wartości z zakresu 5 do 12V (bez montażu układów scalonych). Sprawdzamy woltomierzem, czy w odpowiednich punktach układu występują odpowiednie napięcia (zgodnie ze schematem). Należy przede wszystkim sprawdzić napięcia zasilające poszczególne układy scalone - powinny mieć wartość około 5V. Mikroprocesor ma dodat- ? C0N2 o o w i + 5-12U CONl O o OOOOOOOOOOOOO OlO,T*uccl O o o ? Rys. 4. Rozmieszczenie elementów na płytce drukowanej. nie wyprowadzenie napięcia zasilania na pinie 12, a masy na 5. Jeżeli napięcia są prawidłowe, to wyłączamy zasilanie i montujemy układy scalone w podstawkach. Jeśli płytka została prawidłowo zmontowana ze sprawnych elementów, to po włączeniu dioda świecąca powinna zaświecić się na zielono na około 1 s, a następnie na czerwono również na 1 s i zgasnąć. Zaświecenie diody sygnalizuje poprawną pracę procesora, można więc przejść do jego programowania. Programowanie i obsługa Po prawidłowym zmontowaniu i wstępnym uruchomieniu termometru należy ustawić wszystkie początkowe parametry. Na początek należy nauczyć termometr mówić. Wszystkie komunikaty składają się z pojedynczych słów, które podczas odtwarzania są układane w zdania. Spis wszystkich potrzebnych słów znajduje się w tab. 4. Aby przełączyć termometr w tryb nagrywania komunikatów należy zworki JPl i JP2 ustawić w pozycji REC, w ten sposób dołączamy mikrofon do wejścia układu ISD2560. Następnie naciskamy przycisk REC (SW2) i włączamy zasilanie. Dioda błyśnie w kolorze zielonym oraz czerwonym i zaświeci się na czerwono (po zwolnieniu przycisku REC - SW2 - dioda będzie świeciła w kolorze zielonym). Teraz termometr jest w trybie zapisu komunikatów. Należy po kolei nagrywać komunikaty podane w tab. 4. Naciśnięcie klawisza REC (SW2) powoduje rozpoczęcie nagrywania komunikatu (nagrywanie jest kontynuowane, gdy przycisk REC jest naciśnięty). Zwolnienie przycisku kończy nagrywanie komunikatu i dioda ponownie świeci w kolorze zielonym. Czynności te należy powtórzyć dla wszystkich komunikatów, czyli 40 razy. W przypadku przekroczenia dopuszczalnego czasu nagrania, czyli 60 sekund, dioda zacznie błyskać naprzemiennie w kolorze zielonym i czerwonym. Komunikaty przedstawione w tab. 4 nie powinny spowodować przekroczenia tego czasu, gdyż ich całkowity czas trwania wynosi około 40 sekund. Podczas nagrywania komunikatów w modelowym układzie okazało się, że naciskanie i zwalnia- nie przycisku zostało również zarejestrowane w nagrywanych komunikatach, dlatego w czasie nagrywania najlepiej jest umieścić mikrofon poza płytką na dłuższym odcinku kabla. Uniknie się w ten sposób nieprzyjemnych "stuków" w odtwarzanych komunikatach. Sprawdzenia poprawności nagranych komunikatów można dokonać poprzez wyłączenie zasilania, naciśnięcie przycisku PLAY (SWl) i ponowne włączenie zasilania. Dioda błyśnie w kolorze zielonym, następnie czerwonym i zaświeci się na zielono. Gdy zwolnimy przycisk PLAY, dioda zaświeci się na czerwono, od tej pory termometr jest w trybie odtwarzania komunikatów. Każde naciśnięcie klawisza PLAY spowoduje odtworzenia kolejnego komunikatu zapisanego w pamięci układu ISD2560. W czasie odtwarzania komunikatu dioda świeci w kolorze zielonym, a po skończeniu odtwarzania świeci na czerwono. Po odtworzeniu ostatniego komunikatu dioda będzie błyskała na przemian w kolorze zielonym i czerwonym. Jeżeli wszystkie nagrane komunikaty są zgodne z komunikatami zapisanymi w tab. 4, to nagrywanie zostało zakończone. Jeśli komunikaty zostały zapisane błędnie, cały proces nagrywania należy powtórzyć. Jeżeli wszystkie komunikaty zostały nagrane prawidłowo, przystępujemy do rejestracji czujników temperatury. W tym celu wyłączamy zasilanie termometru, wciskamy obydwa przyciski SWl i SW2, a następnie włączamy zasilanie. Dioda błyśnie na zielono, następnie na czerwono i zacznie błyskać w kolorze zielonym, wówczas zwalniamy przyciski. Do złącza CON3 dołączamy pierwszy czujnik temperatury, układ DS1820, który będzie mierzył temperaturę w pokoju. Po dołączeniu czujnika dioda zaświeci się na zielono sygnalizując, że numer identyfikacyjny pierwszego układu został odczytany. Podprogram zawarty w pamięci procesora oczekuje teraz na odłączenie czujnika, bo dopiero po odłączeniu pierwszego czujnika, jest możliwe odczytanie numeru seryjnego drugiego czujnika. Jest to zabezpieczenie przed dwukrotnym odczytaniem numeru tego samego czujnika. Po odłączeniu pierwszego czujnika, dioda 26 Elektronika Praktyczna 5/2002 Mówiqcy termometr błyska w kolorze czerwonym sygnalizując, że należy dołączyć drugi czujnik (ten który będzie znajdował się na dworze). Po dołączeniu drugiego czujnika dioda zaświeci się w kolorze czerwonym sygnalizując odczytanie numeru seryjnego drugiego czujnika. Następnie odłączamy czujnik. Dioda zaczyna błyskać naprzemiennie na zielono i czerwono, co oznacza, że proces rejestracji został zakończony. Obydwa numery seryjne zostały zapisane w pamięci EEPROM i będą odtwarzane przy każdorazowym włączeniu zasilania. Tak więc raz zaprogramowane numery czujników będą pamiętane nawet po wyłączeniu zasilania. Jeżeli z jakiś powodów chcemy dołączyć inny egzemplarz układu DS1820, to należy go ponownie zarejestrować. Numer poprzedniego czujnika zostanie zastąpiony nowym numerem. Po rejestracji czujników wyłączamy zasilanie, zworki JPl i JP2 przełączamy w pozycję PLAY. Po ponownym włączeniu zasilania, termometr jest gotowy do pracy. Naciśnięcie przycisku PLAY spowoduje wyzwolenie pomiaru i głosowe przedstawienie temperatury w pokoju w formacie: TEMPERATURA W POKOJU WYNOSI DWADZIEŚCIA JEDEN PRZECINEK TRZY STOPNIA CELSJUSZA. Naciśnięcie przycisku REC spowoduje pomiar temperatury na dworze i zapowiedź słowną w for- Tab. 4. Spis komunikatów zawartych w układzie ISD2560 Lp. Komunikat Lp. Komunikat 1 Zero 21 Dwadzieścia 2 Jeden 22 Trzydzieści 3 Dwa 23 Czterdzieści 4 Trzy 24 Pięćdziesiąt 5 Cztery 25 Sześćdziesiąt 6 Pięć 26 Siedemdziesiąt 7 Sześć 27 Osiemdziesiąt 8 Siedem 28 Dziewięćdziesiąt 9 Osiem 29 Sto 10 Dziewięć 30 Przecinek 11 Dziesięć 31 Stopnia 12 Jedenaście 32 Stopnie 13 Dwanaście 33 Stopni 14 Trzynaście 34 Stopień 15 Czternaście 35 Celsjusza 16 Piętnaście 36 Minus 17 Szesnaście 37 Temperatura 18 Siedemnaście 38 W pokoju 19 Osiemnaście 39 Na dworze 20 Dziewiętnaście 40 Wynosi macie: TEMPERATURA NA DWORZE WYNOSI MINUS TRZY PRZECINEK DZIEWIĘĆ STOPNIA CELSJUSZA. Oprócz wyzwalania pomiaru temperatury tymi przyciskami, można także wyzwolić pomiar poprzez klaśnięcie. Jeżeli chcemy dowiedzieć się jaka jest temperatura w pokoju, to należy klasnąć dwa razy, jeśli na dworze to trzy razy. Takie wywoływanie pomiaru jest podyktowane tym, żeby detektor klaśnięcia był niewrażliwy na dźwięki z otoczenia. Gdyby termometr reagował na jedno klaśnięcie, to mógłby być przypadkowo wyzwalany np. przez trzaśniecie drzwiami. Eliminacja zakłóceń jest również realizowana przez oprogramowanie procesora. Sygnał pochodzący z mikrofonu zostanie uznany za ważny, jeżeli w czasie około 600ms od pierwszego klaśnięcia nastąpi drugie i cisza około 1 sekundy. Wówczas zostanie zmierzona temperatura w pokoju. Jeśli jednak około 600ms od drugiego klaśnięcia nastąpi trzecie i cisza trwająca około 1 sekundy, to zostanie zmierzona temperatura na dworze. Jeżeli po pierwszym klaśnięciu w czasie około 600ms wystąpią więcej niż trzy impulsy, np. z powodu zbyt głośnej muzyki, to podprogram odpowiedzialny za de-kodowanie sygnałów z mikrofonu przestanie zliczać impulsy wejściowe i będzie oczekiwał na ciszę. Jeżeli cisza będzie trwała dłużej niż 600ms, to następny dźwięk wyzwoli proces oczekiwania na prawidłową liczbę klaśnięć. Jeżeli zaś po pierwszym klaśnięciu nie nastąpi drugie, (w czasie około 600 milisekund) to procesor powraca do pętli głównej programu i ponownie oczekuje na klaśnięcie lub naciśnięcie klawiszy. Takie zabezpieczenie jest skuteczne w przypadku głośnej muzyki, ale, niestety, jest łamane przez pisk dziecka i żadnym sposobem nie da się wyeliminować takiego zakłócenia. Można jedynie zmniejszyć czułość wzmacniaczy potencjometrem P. Wynik pomiaru temperatury jest oznajmiany po połączeniu kilku komunikatów. W czasie odtwarzania poszczególnych fragmentów dioda Dl będzie świeciła kolorem zielonym, a w przerwach będzie wygaszona. Na tej podstawie można stwierdzić z ilu komunikatów składa się dana wypo- WYKAZ ELEMENTÓW Rezystory Rl: 4,7kn R2, R3: 330O R4...R6: l,5kQ R7: 10kO R8: 470kQ R9, RIO: 22kQ Rl 1: 300kQ R12: 22kQ R13: 150kQ P: 470kQ potencjometr miniaturowy Kondensatory Cl: 220^F/16V C2, C3, C7, C8, CIO, Cli: lOOnF C4, C12: 100|iF/lóV C5, Có: 30pF C9: 1jj,F polipropylenowy C13: 10^F/16V C14: 4,7nF C15: 2,2|iF/16V C16: 4,7n.F/16V Półprzewodniki Dl: dioda LED dwukolorowa US1: PIC16F628 (zaprogramowany) US2: ISD 2560 US3: LM358 US4: LM2931 (78L05) US5: DS1813 US6, US7: DS1820 Różne CON1, CON2: ARK2(3,5mm) CON3: ARK3(3,5mm) JPL JP2: Goldpin 1x2 + Jumper SWL SW2: mikrowłączniki MK: mikrofon pojemnościowy Głośnik 1W/8O wiedź. Liczba połączonych komunikatów jest zależna od wartości mierzonej temperatury. Termometr w swoich wypowiedziach potrafi również odpowiednio "odmieniać" wyrazy. Dla przykładu, gdy temperatura zmierzona wynosi: 0C - wypowiedź będzie miała postać: ZERO STOPNI, 1C - JEDEN STOPIEŃ 1,2C - JEDEN PRZECINEK DWA STOPNIA -15,3C - MINUS PIĘTNAŚCIE PRZECINEK TRZY STOPNIA 23C - DWADZIEŚCIA TRZY STOPNIE Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/ma jO2.htm oraz na płycie CD-EP05/2002B w katalogu PCB. Elektronika Praktyczna 5/2002 27 PROJEKTY tlSC-16 - jak sobie zrobić mikroprocesor Przedstawiamy projekt, do którego nie będziemy oferować płytki drukowan ej ani podzespołów. Nie będzie w sprzedaży kitu, a wszystko co jest niezbędne do jego wykonania można sobie bezpłatnie pobrać z Internetu iub po prostu skopiować z naszej płyty. Chociaż może być przygotowany bezpłatnie, prezentowany projekt należy do awangardowych - jest to bowiem mikrokontrołer RISC, opisany za pomocą języka VHDL. Na świecie takie wirtualne scałaki są coraz częściej stosowane. Mikroprocesory są coraz częściej spotykanymi elementami systemów cyfrowych. Ich szerokie zastosowanie wynika przede wszystkim z ich elastyczności. Nie bez znaczenia jest również możliwość zmiany funkcji realizowanych przez układ już po jego wykonaniu. Obecnie dostępnych jest wiele mikroprocesorów, których możliwości można dostosować do wymagań aplikacji - począwszy od 4-bitowych mikrokon-trolerów stosowanych w zabawkach i prostych systemach sterowania, aż po 32-bitowe procesory sieciowe takie jak np. 79RC32V334 firmy IDT. Jednak nie każde zadanie może być wykonane przez uniwersalny mikrokontrołer lub procesor, a w każdym razie nie zawsze można go wykonać opłacalnie. Przykładowo rozważmy tani oscyloskop o częstotliwości próbkowania 100 MHz. Jeżeli ma on cztery kanały o rozdzielczości 8 bitów, to obróbka generowanych danych wymaga utworzenia kanału dla odbioru danych o przepływności 3,2 Gb/s, następnie należy je przesłać do pamięci, co daje kolejne 3,2 Gb/s. Rzadko który procesor jest w stanie zapewnić taki transfer. Dlatego istotną rolę w tego typu aplikacjach pełnią układy programowalne. Układ FPGA, który jest w stanie pełnić funkcję kontrolera oscyloskopu, nie jest zbyt drogi, a projekt takiego układu nie jest szczególnie skomplikowany. Z drugiej strony, takie zadania, jak późniejsze przetworzenie zebranych w ten sposób danych, są oczywiście łatwiejsze do implementacji w postaci programu dla procesora. Oznacza to, że bliskie optymalnemu wykonanie projektu będzie składało się z dwóch elementów: FPGA i kontrolera, co jednak nie zawsze jest możliwe do zaakceptowania, jeżeli miałoby się wiązać np. z zastosowaniem dwóch układów scalonych zamiast jednego. Takie problemy rozwiązano w uniwersalnych modułach IP (Intellectual Property), czyli gotowych blokach funkcjonalnych, zawierających opisy w językach HDL [Hardware Descrip-tion Language) na przykład kompletnej jednostki centralnej, UART-a, interfejs USB itp. Bloki te są obecnie przygotowane przez projektantów wyspecjalizowanych firm, którzy tworzą wirtualne moduły peryferyjne opisane za pomocą (najczęściej) języka VHDL lub Verilog. Zastosowanie IP co-res znacznie upraszcza implementację rozbudowanych projektów w układach PLD, jak np. integrację procesora i bloków specjalizowanych w jednym układzie programowalnym. Wybór architektury Architektury spotykane powszechnie dzielą się na dwie kategorie: - von Neumanna - taka, która ma wspólną pamięć danych i programu, a zatem wspólną szynę, - harwardzka - opracowana przez zespół Howarda Aikena, o rozdzielonej pamięci programu i danych. Architektura von Neumanna ma wiele zalet, dlatego jest stosowana w kontrolerach Texas Instruments MSP430. Pozwala optymalnie wykorzystać daną pamięć, a ponadto wymaga mniejszej liczby nóżek z obudowy. Architektura harwardzka ma przewagę przy korzystaniu z FPGA: prostotę projektu. Istotnie, układ kontrolera dla procesora opartego na architekturze harwardzkiej jest prostszy, ponieważ wiadomo, że to, co przychodzi szyną programu, jest programem, a to, co pobierane jest szyną danych, należy do danych. Dodatkową zaletą jest ochrona przed Blok IP (w postaci kodu VHDL) z opisem mik-rokontrolera tlSC-16 oraz narzędzia do jego symulacji i syntezy, a także makroasembler opublikowaliśmy na płycie CD-EP5/2002B. Elektronika Praktyczna 5/2002 29 tlSC-16 - jak sobie zrobić mikroprocesor skutkami błędnego skoku: w architekturze von Neumanna kończy się on niekiedy traktowaniem danych jako kodów instrukcji -rezultat jest opłakany. Podstawową zaletą architektury harwardzkiej jest jednak szybkość. Możliwość równoczesnego dokonania pobrania kodu i danych likwiduje tak zwane "wąskie gardło von Neumanna" (von Neu-mann bottleneck). Proponuję zatem skorzystanie z architektury harwardzkiej. Zestaw instrukcji Tak jak w innych dziedzinach życia, także w projektowaniu procesorów ogromną rolę odgrywa moda. W latach 70. i 80. prym wiodły niepodzielnie układy CISC, czyli układy o liście rozkazów zawierającej także instrukcje złożone [Complex Instruction Set Computer), wymagające wielu taktów zegarowych. Ukoronowaniem tej linii rozwojowej był iAPX432 - procesor, który był wspaniałym osiągnięciem zarówno pod względem układowym, jak i technologicznym. Ponieważ jego budowę zoptymalizowano pod kątem bezpośredniego wykonywania programów napisanych w języku ADA, procesor ten szybko zniknął z rynku. Do grupy procesorów CISC należą układy serii x86, aczkolwiek nowsze projekty oparte są na wewnętrznej architekturze RISC i jest ona jedynie "tłumaczona" sprzętowo na CISC. Innymi przedstawicielami tej grupy układów są układy rodziny Motorola 68000. Przeciwieństwem rdzeni CISC są rdzenie typu RISC [Reduced Instruction Set Computer), które charakteryzują się zredukowaną liczbą instrukcji. Dzięki temu budowa rdzenia procesora jest znacznie prostsza (a więc tańsza), możliwe jest szybsze wykonywanie programu (do wykonania większości instrukcji niezbędny jest tylko jeden takt zegara), łatwiejsza jest także optymalizacja kodu wynikowego. Ponieważ cena układów PLD jest zależna przede wszystkim od ich zasobów logicznych, podczas projektowania własnego procesora warto ograniczyć listę instrukcji do zestawu niezbędnego dla realizacji zamiarów użytkownika. Opracowany przeze mnie procesor realizuje tylko dwa rozkazy. Tak znaczne uproszczenie było możliwe dzięki wykorzystaniu faktu, że za ich pomocą można wykonać praktycznie dowolne działanie arytmetyczne i logiczne - łatwo dowieść, że do realizacji każdej funkcji przełączającej wystarczy bramka NAND, łącznie z operacjami arytmetycznymi ADD (dodawanie). I choć jest to na pierwszy rzut oka niespodziewane, większość operacji typowych dla maszyn CISC nie zajmuje więcej niż 4 operacje w tej implementacji. Zestaw rejestrów Wiele dawniejszych procesorów miało architekturę akumulatorową - wyróżniony rejestr zwany akumulatorem, był jedynym miejscem, w którym można było poddawać dane obróbce i do którego wpisywane były rezultaty operacji. Innym możliwym, lecz rzadko stosowanym, rozwiązaniem jest zastosowanie architektury stosowej, w której parametry do roz- potok program stopień 1 stopień 2 stopień 3 adres celu adresy źródła rejestry operacja ALU sterownik pamięci Pamięć 1 ,, adres odczytu 1 adres zapisu dane odczytu 1 .
Pamięć 2 ^ adres odczytu 2 dane zapisu dane odczytu 2 Ł
Rys. 2. Wyjaśnienie zasady mirroringu kazu pobierane są z wierzchołka stosu, a wynik jest odkładany z powrotem na stos. Jednak zdecydowałem, że najbardziej celowe jest wykorzystanie w pełni symetrycznej architektury rejestrowej, w której parametry mogą być pobrane z dowolnie wyznaczonych rejestrów, a wynik może zostać zapisany w każdym rejestrze. Dla prostoty zrezygnowałem z bezpośredniego adresowania pamięci danych. Szyna adresowa pamięci danych jest sterowana wyłącznie przez jeden z rejestrów (rejestr adresowy), a szyna pamięci danych odpowiada innemu rejestrowi. Odczyty z tego rejestru są tłumaczone jako odczyty z pamięci, a zapisy do rejestru jako zapisy do pamięci. Inny rejestr specjalny pełni funkcję rejestru stałej. Pobranie z tego rejestru dostarcza następnego słowa z pamięci kodu. Jest to ustępstwo na rzecz architektury von Neumanna. Rejestr warunku określa czy należy wykonywać dodawanie. Jeżeli liczba zawarta w tym rejestrze jest niezerowa, dodawanie powinno być wykonane. W przeciwnym przypadku rezultat operacji dodawania nie jest zapisywany do rejestru docelowego. Instrukcje NAND są wykonywane zawsze, niezależnie od zawartości rejestru warunku. Szerokość magistral Ponieważ w systemie dostępne są tylko dwie instrukcje, do ich zakodowania wystarczy 1 bit. Dogodna w typowych zastosowaniach liczba rejestrów to 32, czyli na przechowanie numeru rejestru Rys. 1. Schemat blokowy procesora tlSC-16 Listing 1. Rejestry, zdefiniowane przez system .equSP@23 ; wskaźnik stosu .equ#F@22 ; stała 65535 .equ#l 021 ; stała 1 .equTR@20 ; rejestr tymczasowy 30 Elektronika Praktyczna 5/2002 tlSC-16 - jak sobie zrobić mikroprocesor Listing 2. Przykładowe operacje arytmetyczne ; kopiowanie danej .niacro MOV mov.dest, mov.src ADD mov.dest, mov.src, 0 .endm MOV ; odejmowanie .macro SUB sub.dest, sub.srcl, sub.src2 NAND TR, sub.src2, sub.src2 ADD TR, TR, #1 ADD sub.dest, sub.srcl, TR .endm SUB CLK potrzeba 5 bitów. Każda instrukcja numeruje trzy rejestry: dwa źródłowe i docelowy. Zatem szerokość słowa kodu wynosi 16 bitów. Dla symetrii, szerokość ścieżki danych również jest ustalona na 16 bitów. Implementacja Prezentowany procesor można zrealizować jako automat mikro-programowany, czyli zawierający dodatkową pamięć z opisem poszczególnych operacji wykonywanych przez procesor (aktywuj zatrzask, wyślij adres, wyprowadź impuls na nóżkę RD itp.) - jednak przy dwóch instrukcjach i architekturze harwardzkiej nie ma to zbyt wielkiego sensu. Przyjęta przeze mnie architektura bardzo ułatwia realizację przetwarzania potokowego, w któ- rym podczas wykonywania jednej instrukcji następuje już pobranie i wykonywanie kolejnej. Udało się osiągnąć dobry rezultat, czyli jedno pobranie słowa z pamięci programu w cyklu zegarowym. Specyfikacja Na podstawie powyższych rozważań, można sformułować następujące założenia projektowe: - architektura harwardzka, 16 bitów danych i adresu na obu szynach, - 4-stopniowy potok, 1 pobranie z pamięci programu na cykl zegara, - dostępne 2 operacje: Kod Operacja 0 NAND rd,rsl,rs2 zapisz do rejestru rd negację iloczynu logicznego rejestrów rsl i rs2; Listing 3. Kontrola programu ; czyszczenie rejestru warunku .macro CCR NAND CR, # 0, #0 .endm CCR ; skok .macro JMP jmp.addr ADD IP, #0, .endm JMP j mp.addr ; wykonaj jeśli suma niezerowa .macro IFSNZ ifsnz.one, ifsnz.two ADD CR, ifsnz.one, ifsnz.two .endm IFSNZ ; wykonaj jeśli suma zerowa #F wywołanie procedury zauważ, że wszystkie operacje tutaj przekładają się na ADD, a zatem można wywoływać podprogramy warunkowo macro CALL cali.addr ADD PA, SP, #0 IP, 4 SP, #1 cali.addr, #0 macro IFSZ lt SZ .one, lt SZ . two ADD TR, #0, IFSNZ if sz .one, if sz . two ADD TR, #F, NAND CR, TR, endm IFSZ ADD PD ADD SP ADD IP .endm CALL ; powrót z procedury ; także i tutaj możliwe jest wykonanie warunkowe .macro RET POP IP NOP .endm RET CLK WR Dxx Rys. 3. Typowe przebiegi występujące podczas operacji dostępu do pamięci danych 1 ADD rd,rsl,rs2 jeżeli rejestr CR (warunku) ma wartość niezerowa, zapisz do rejestru rd wynik arytmetycznego dodawania rejestrów rsl i rs2; - 32 rejestry, z czego osiem specjalnych: KodRejestr Opis 0..23 @0..@23rejestry ogólnego przeznaczenia 24 PD rejestr danych (odpowiada komórce pamięci zaadresowanej przez rejestr PA) 25 PA adres pamięci danych 26 IP wskaźnik instrukcji, inkrementowany co cykl 27 CR rejestr warunku 28 imm rejestr stałej - jeżeli jest on wybrany jako rejestr źródłowy, procesor pobiera kolejne słowo z pamięci programu i używa go jako liczby 29 XA adres przestrzeni we/wy 30 XD dane przestrzeni we/wy (na takiej zasadzie jak PD) 31 #0 stała zero Szczegóły wykonania Na rys. 1 przedstawiono schemat blokowy procesora tISC-16, zaprojektowanego przeze mnie w oparciu o powyższe założenia. Ponieważ niektóre układy FPGA, Elektronika Praktyczna 5/2002 31 tlSC-16 - jak sobie zrobić mikroprocesor Listing 4. Przykładowy program .INCLUDE TISC.AI MOV 00, 1 MOV XA, 0 MOV XD, 00 INC XA MOV XD, 65535 DEC XA LOOP: ADD 00, 00, 00 MOV XD, 00 JMP LOOP w szczególności układy produkowane przez firmę QuickLogic, zawierają specjalizowane bloki pamięci, koszt implementacji rejestrów jest niski. W związku z tym celowym wydaje się skorzystanie z mechanizmu mirrorin-gu, którego zasadę wyjaśniono na rys. 2. Polega on na stworzeniu dwóch bliźniaczych bloków pamięci, do których zapis jest równoczesny (tak, że dane w nich zawarte są zawsze identyczne), natomiast odczyty są niezależne. Dzięki temu można w jednej chwili pobrać zawartość obydwu rejestrów źródłowych i zaoszczędzić czas. Potok pracuje następująco: CLK IP-1 pobranie rejestrów źródłowych; obliczenia zapis do rejestru docelowego IP pobranie kodu operacji albo wyzerowanie przy korzystaniu z imm dekodowanie instrukcji; podanie adresów rejestrów, pobranie zawartości rejestrów źródłowych; obliczenia zapis do rejestru docelowego IP+1 pobranie kodu operacji albo wyzerowanie przy korzystaniu z imm dekodowanie instrukcji; podanie adresów rejestrów Szczególnego objaśnienia wymaga pobranie kodu operacji. Otóż niektóre instrukcje korzystają z rejestru 28 "imm", co oznacza, że następujące po nich słowo jest słowem danych, a nie kodu. W takim przypadku należy wstawić do potoku instrukcję ADD @31,@31,@31, co odpowiada brakowi operacji. Ta poprawka jest wykonywana właśnie podczas pobierania kolejnego słowa. Interfejs pamięci danych jest jedną z bardziej złożonych części projektu. Konsekwencją dostosowania się do typowych pamięci SRAM jest długość trwania operacji zapisu i odczytu. Z tego powodu dwa kolejne rozkazy nie mogą być rozkazami dostępu do pamięci danych. Typowe przebiegi przedstawiono na rys. 3. Procesor opisałem w języku VHDL. Dzięki temu, mimo przystosowania do architektury Quic-kLogic pASIC3 (np. korzystania z wbudowanych bloków RAM), można go przenieść także na wiele innych FPGA z bardzo małymi zmianami. W układzie QL4036 można wykonać procesor, który jest w stanie przełączać się między dwoma maszynami wirtualnymi (zestawami rejestrów) bez opóźnienia. Sygnałem na jednej z nóżek układu wybierana jest aktywna maszyna. Dzięki temu można realizować przerwania, i to w czasie zerowym. Podczas gdy ostatnia instrukcja działająca w środowisku starej maszyny opuszcza potok, już jest wczytywana instrukcja dla nowej maszyny. Pozwala to na przyspieszenie przetwarzania w czasie rzeczywistym oraz odpowiadanie na sytuacje krytyczne w bardzo krótkim czasie. Programowanie Ponieważ dostępne są tylko dwie instrukcje, pisanie programu jest dosyć uciążliwe - dlatego dla procesora tlSC istnieje makro-asembler. Przykłady makr znajdują się na list. 1, list. 2 i list. 3. Jak się okazuje, nawet tak złożona operacja jak CALL zajmuje zaledwie 4 instrukcje i typowo 5 cykli zegara. Jest to dobry wynik, zważywszy, że w układzie 8051 LCALL zajmuje 24 cykle. Mnożenie zajmuje w tym układzie Do kompilacji modułu IP procesora tlSC-16 niezbędny jest system projektowy z obsługą języka VHDL Może to być jeden z bezpłatnie udostępnianych pakietów, jak np.: Ouartus II (Altera), WebPack ISE (Xilinx), Warp (Cyp-ress) czy też OuickWorks (OuickLogic). Na płycie CD-EP5/2002B publikujemy m.in. 30-dniową, najnowszą wersję pakietu OuickWorks, za pomocą którego opracowano mik-rokontroler prezentowany w artykule. 64 cykle (jest to mnożenie 16-bitowe). Mnożenie 8-bitowe zajmuje 32 cykle, a więc również mniej niż w 8051 (który wykonuje je w 48 cyklach). Podczas wykonywania większej liczby mnożeń, po kolei można zmniejszyć czas ich trwania o 25% magazynując wykorzystywane stałe w rejestrach. Możliwości tego procesora dowodzą słuszności zastosowania architektury RISC. Jeżeli potrzebne jest szybsze mnożenie, można dołączyć układ sprzętowego mnożenia do szyn XA i XD, otrzymując wynik mnożenia w 5-ciu cyklach zegara, koniecznych do zapisania danych i odczytania wyniku. Osiągi procesora Zgodnie z symulacjami, układ może pracować z zegarem 25 MHz, co daje ok. 22 MIPS dla typowego programu. Adresowana pamięć danych wynosi 128 kB, a pamięć programu - 65536 instrukcji. Wąskim gardłem jest szybkość pracy pamięci programu, ponieważ pamięci stałe typu EPROM nie mogą zapewnić czasu odczytu 40 ns. Realistyczna szybkość pracy nie przekracza więc 12 MHz dla pamięci Flash typu Fast Boot, Błock firmy Intel (80 ns). List. 5. Procesor tlSCló w akcji k:4 .0* @00 0 0=6FFF ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ k:5 .0 @0 0 01=5BFF ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz ZZZZZZZZZZZZZZZZ0000000000000001 ZZZZZZZZZZZZZZZZ0000000000000001 ZZZZZZZZZZZZZZZZ0000000000000001 ZZZZZZZZZZZZZZZZ00 0 00 0 00 0 0 00 0 001 ZZZZZZZZZZZZZZZZ0000000000000010 ZZZZZZZZZZZZZZZZ0000000000000010 ZZZZZZZZZZZZZZZZ0000000000000010 ZZZZZZZZZZZZZZZZ0000000000000010 ZZZZZZZZZZZZZZZZ000000000000010 0 ZZZZZZZZZZZZZZZZ000000000000010 0 ZZZZZZZZZZZZZZZZ000000000000010 0 ZZZZZZZZZZZZZZZZ000000000000010 0 ZZZZZZZZZZZZZZZZ0000000000001000 k:15 .0 @000B=FFFF k:16 .0 @000C=F7B6 k:17 .0 @000D=8000 k:18 .0 @000E=F81F k:19 .0 @000F=EBFC k:20 .0 @0010=000D k:21.0 @000D=8000 k:22 .0 @000E=F81F k:23 .0 @000F=EBFC k:24 .0 @0010=000D k:25 .0 @000D=8000 k:26 .0 @000E=F81F k:27 .0 @000F=EBFC k:28 .0 @0010=000D k:29 .0 @000D=8000 32 Elektronika Praktyczna 5/2002 tlSC-16 - jak sobie zrobić mikroprocesor Wyniki symulacji Aby zademonstrować procesor tlSC w działaniu, przygotowałem krótki program (list. 4), wyprowadzający jedynkę logiczną na kolejne nóżki wejścia - wyjścia. Na list. 5 znajduje się plik pochodzący z kilku cykli symulacji. Pierwsza kolumna powyższego listingu zawiera numer cyklu (gwiazdka oznacza aktywny sygnał RESET). Pierwsza liczba szes-nastkowa (po znaku @) to adres pamięci programu, natomiast kolejna (po znaku równości) oznacza odczytany kod programu. Następnie wypisywane są stany nóżek we-wy. Jak widać, program jest realizowany poprawnie. Na listingu można zauważyć wpływ przetwarzania potokowego. Na przykład prawe 16 wejść-wyjść jest ustawianych w tryb wyjścia w cyklu 17.0, mimo że instrukcja, która za to odpowiada, została pobrana w cyklach 14.0 i 15.0 (FB9F FFFF, czyli ADD XD, 6553 5, #0 - rozwinięte makro MOV XD, 65535). Podsumowanie Przedstawiony kontroler łączy dużą wydajność obliczeniową z małym zużyciem zasobów. Jego uniwersalna architektura pozwala zaimplementować każdy algorytm. Wiele zadań, które do tej pory wymagało użycia osobnych układów scalonych, może być zintegrowanych w jednym układzie. Ponadto, szyna X umożliwia łatwe rozszerzenie procesora o elementy peryferyjne, co ułatwia łączenie procesora z pozostałymi zasobami struktury programowalnej. Procesor tlSC może znaleźć zastosowanie także tam, gdzie wykorzystywane są układy FPGA programowalne w systemie. Do zamontowanego na płytce FPGA można załadować blok procesora i w ten sposób wykonać diagnostykę układów podłączonych do struktury programowalnej. Architektura procesora tlSC jest przejrzysta i ułatwia programowanie. Ważną jej cechą jest także łatwość rozszerzania. 32-bitowa wersja wspierająca pracę SIMD (jedna instrukcja - wiele danych) jest w przygotowaniu. Stanisław Skowronek Dodatkowe informacje Dodatkowe informacje, opis źródłowy (VHDL) oraz oprogramowanie do symulacji i syntezy prezentowanego uktadu można znaleźć na ptycie CD-EP5/2002B oraz w Internecie pod adresem: - http://www.et.put.poznan.pl/~skowron/tisc/, - http://www.symphonyeda.com/Downloads/ VHDLSimili20b21.exe, - http://www.symphonyeda.com/Downloads/ Simili20b2ib-linux-x86.tar, - http://www.cmosexod.com/. Elektronika Praktyczna 5/2002 33 Zdalne sterowanie za pomocą telefonu komórkowego Siemens S35, część 1 Usługa Shoń Message System (SMS) standardowego telefonu komórkowego może być stosowana do poważniejszych zadań niż tylko wymiana za szyfrowanych wiadomości. Opisywana w ańykule aplikacja posługuje się skromną "komórką" do zdalnego monitorowania i sterowania urządzeniami. Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 35...38 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Projekt prezentowany w artykule jest rezultatem współpracy Politechniki TFH Georg Agricola i przedsiębiorstwa Engelmann & Scłuader. Jest to uniwersalny sterownik w postaci eksperymentalnej płytki (TFH SMS ExBo), służący do zdalnego sterowania procesami technologicznymi. Włącza się go pomiędzy sterowanym urządzeniem a telefonem komórkowym, co pozwala na zdalne monitorowanie i zdalne sterowanie procesem za pomocą komunikatów SMS. Sterowanie procesem za pomocą SMS-ów Płytka interfejsu SMS udostępnia dwa poziomy zaawansowania sterowania. Na poziomie podstawowym urządzenie interpretuje wiadomości SMS, sprawdza otrzymywane hasło i bezpośrednio steruje przekaźnikami lub wskaźnikami (rys. 1). W odwrot- nym kierunku sterownik SMS na płytce interfejsu zamienia informacje w komunikaty SMS, które następnie zostają wysłane poprzez szeregowe łącze interfejsu do komórki, która z kolei może je wysyłać do dowolnego telefonu na świecie. Informacją sterującą może być na przykład "set 10", co oznacza uaktywnienie wyjścia 10 karty interfejsu i włączenie LED, silnika czy przekaźnika, połączonego z tym wyjściem. Podobnie w odwrotnym kierunku, sterownik odczytuje sygnały wejściowe karty interfejsu SMS ze sterowanego procesu i generuje odpowiedni komunikat SMS. W komunikacie może być przekazana, na przykład informacja: "w zbiorniku 3 stwierdzono nadciśnienie" albo "intruz wywołał alarm w drzwiach 5" lub "bojler domku wakacyjnego został włączony" - możliwości są nieduże. Płytka doświadczalna (Experi-mental Board) TFH SMS ExBo jest wyposażona w dwa asyncłuo- Elektronika Praktyczna 5/2002 35 'Ciśnienie: 100 bar "Boiler 5 eksplodował" Obsługuje 8 wyjść cyfr. 8 wejść cyfr. Asynchroniczny interfejs szeregowy - cyfrowe l/O, - analogowe l/O, - polecenia, itp. Asynchroniczny interfejs szeregowy Rys. 1. Zdalne sterowanie procesem technologicznym za pomocą SMS przez telefon komórkowy niczne porty szeregowe, umożliwiające przyłączenie w odległym miejscu zewnętrznego komputera albo sterownika procesu oraz telefonu komórkowego. Taka konfiguracja zapewnia wysoki poziom kontroli i monitorowania, pozwalający na wymianę wyników pomiarów parametrów procesu i innych informacji o stanie urządzenia. Płytka interfejsu może inicjalizować telefon komórkowy, ale przesyła niezmienione SMS-y do zewnętrznego komputera. Nadaje to systemowi znacznie większą elastyczność, SMS-y bowiem są dekodowane i generowane w zewnętrznym komputerze. Sterownik -oprogramowanie Schemat elektryczny sterownika pokazano na rys. 2. W opisywanym układzie można użyć mik-rosterownika AT89S8252 albo AT89LS825 2 firmy Atmel. Ich rdzeń jest kopią popularnego mik-rokontrolera 8051 i zawiera 8-kilobajtową pamięć programu Flash oraz 2 kB nieulotnej pamięci danych. Mikrokontroler został zaprogramowany do działania w roli sterownika SMA i jako taki wykonuje trzy podstawowe operacje: - przeprogramowuje telefon komórkowy i zajmuje się komunikacją z nim przez interfejs szeregowy; - odbiera i dekoduje komunikaty SMS: monitoruje wejścia i wyjścia płytki oraz nimi steruje oraz generuje komunikaty SMS; - przekazuje wiadomości z i do komórki oraz zewnętrznego systemu komputerowego. Wbudowany w mikrokontroler uniwersalny asynchroniczny od-biornik-nadajnik (UART) obsługuje komunikację szeregową. W tym zastosowaniu przesyła dane szeregowo (np. komunikaty SMS) do i z telefonu komórkowego. Drugi interfejs szeregowy, do łączności z szybkością 9600 bodów z zewnętrznym komputerem lub sterownikiem procesu, jest zrealizowany programowo. Na płytce interfejsu mieści się także układ zegara czasu rzeczywistego z ba-teryjnym podtrzymywaniem (układ scalony IC6) oraz złącze ciekłokrystalicznego wyświetlacza Tab. 1. Opis wejść/wyjść portów Port Numer konc. Funkcja P1.0 0 WEJŚCIE: połączenie z przyciskiem S1 P1.1 1 WEJŚCIE: połączenie z przyciskiem S2 P1.2 2 WEJŚCIE: poziom TTL, niechronione P1.3 3 WEJŚCIE: poziom TTL, niechronione P1.4 4 WEJŚCIE: poziom TTL, niechronione P1.5 5 WEJŚCIE: poziom TTL, niechronione P1.6 6 WEJŚCIE: poziom TTL, niechronione P1.7 7 WEJŚCIE: poziom TTL, niechronione P2.0 8 WYJŚCIE: połączenie zLEDO z tabeli LED D2 P2.1 9 WYJŚCIE: połączenie z LED1 z tabeli LED D2 P2.2 10 WYJŚCIE: przekaźnik RE2, maks. 200V=, maks. 1A, maks. 15W P2.3 11 WYJŚCIE: przekaźnik RE3, maks. 200V=, maks. 1A, maks. 15W P2.4 12 WYJŚCIE: przekaźnik RE4, maks. 200V=, maks. 1A, maks. 15W P2.5 13 WYJŚCIE: przekaźnik RE5, maks. 200V=, maks. 1A, maks. 15W P2.6 14 WYJŚCIE: poziom TTL ze sterownika 74AC/HCT240 P2.7 15 WYJŚCIE: poziom TTL ze sterownika 74AC/HCT240 36 Elektronika Praktyczna 5/2002 Rys. 2. Schemat elektryczny układu matrycowego do wyświetlania SMS-ów (K6). Polecenia są wysyłane szeregowo do telefonu komórkowego z użyciem standardowych poleceń modemowych Hayes (polecenia AT - sterowanie modemowe omówiono we wstawce). Sterownik - sprzęt Sterownik wraz z kilkoma dodatkowymi układami peryferyjnymi, tworzy podstawowy układ obsługi komunikatów SMS. Jeśli przyjrzeć się schematowi z rys. 2, można zauważyć, że płytka interfejsu TFH SMS ExBo została przygotowana do pełnienia funkcji uniwersalnej platformy do sterowania komunikatami SMS i jest wyposażona w wiele złączy. Mikrokontroler ICl jest taktowany sygnałem z oscylatora z rezonatorem kwarcowym w standardowej konfiguracji (Xl, C7 i C8), Elektronika Praktyczna 5/2002 37 WYKAZ ELEMENTÓW Rezystory Pl: 10kO Rl, R2: 330O R-pack R3: l,5kQ R4: l,8kn R5: 4,7kn Kondensatory C1...C6: lOOnF C7, C8: 27pF C9: 10jiF/25V CIO: 100|iF/25V C11...C15: 1jiF/16V C16: 1OjiF/1OV Półprzewodniki Dl, D2: matryce LED 1x8 D3, D4: LED D5: 1N4002 D6: BAT48 D7: 1N4148 IC1: AT89S8252 IC2: 74HCT573 IC3, IC4: 74ACT240 IC5: GAL16V8 IC6: RTC72421 IC7: MAX207 IC8: 7805 Różne BT1: CR2032 Fl: 1AT JP1...JP5: jumpery 1x2 Kl: ZWS8/1 K2: ZWS12/1 K3, K4: DB9M K5: ZWS26 K6: ZWS14 K7: ARK2 K8: gniazdo MiniJack mono RE2...RE5: przekaźniki SPDT/5V S1...S3: mikroprzełączniki Xl: ll,0592MHz a sygnał kasowania jest wytwarzany w obwodzie S3, C9 i R5. Dioda LED D4 sygnalizuje gotowość telefonu GSM. W tab. 1 przedstawiono przyporządkowanie wejść i wyjść (oraz ich funkcje) odpowiednim wyprowadzeniom portów procesora. Złącze Kl umożliwia doprowadzenie do portu wejściowego Pl mikrosterownika do sześciu sygnałów wejściowych. Są one za pośrednictwem bufora IC4 wyświetlane przez linijkę diod LED Dl. Jeżeli nie jest to potrzebne lub chce się maksymalnie ograniczyć pobór prądu, to nie należy wstawiać zworki JPl, wtedy diody nie będą świecić. Z pozostałych wejść Pl.O i Pl.l korzystają przyciski SW1 i SW2. Wyjścia cyfrowe P2.0 - P2.7 są buforowane przez IC3. Cztery z nich są wykorzystane do sterowania przekaźnikami RE2 do RE5, których styki zwierające są połączone ze złączem K2. Z tym złączem łączą się także dwa wyjścia TTL, OUT6 i OUT7. Stan wyjść P2 jest wyświetlany przez linijkę diod LED D2. Świecenie tych diod zależy od użycia zworki JP2, podobnie jak świecenie Dl od JPl. Jak wspomniano, na płytce znajdują się dwa interfejsy szeregowe. Złącze K3 służy do połączenia z telefonem komórkowym, a K4 z portem szeregowym komputera zewnętrznego lub sterownika procesów. Poziomy sygnałów obu interfejsów (V24) są przez IC7 (MAX207) konwertowane do poziomu TTL, z jakimi pracują układy zamontowane na płytce. Napięcie 10V jest dostarczane na złącze K3 (telefonu komórkowego) z wyprowadzeń TlOUT, T2OUT i T3OUT przez zworkę JP3. Jej usunięcie odłącza to napięcie (zob. tab. 2). Prąd do ładowania komórki jest dostarczany przez styk 9 złącza K3, jeżeli jest wstawiona zworka JP5. Mikrokontroler ICl, podobnie jak inne klony procesora 8051, potrzebuje kilku zewnętrznych układów peryferyjnych. Przede wszystkim magistrala adresów i danych muszą być multipleksowane w porcie PO, do czego (za pomocą sygnału ALE) służy przerzutnik typu D (IC2). Sygnały adresów są dekodowane przez GAL IC5, który generuje sygnały selekcyjne (wyboru układu) dla pozostałych podzespołów karty interfejsu. Linie adresowe wraz z liniami RD i WR i wyboru układu (CS) są zebrane na listwie kontaktowej K5. W układzie znajdują się obsługiwane przez mikrokontroler: zegar czasu rzeczywistego oraz złącze wyświetlacza ciekłokrystalicznego. W niektórych zastosowaniach bardzo ważny jest dokładny czas, w tym celu w układzie jest zegar czasu rzeczywistego (IC6). Utrzymuje on poprawny czas bieżący dla całego systemu TFH SMS ExBo. Bateria podtrzymująca (BTl) jest ładowana przez D7 i zapewnia, że IC6 będzie nadal odmierzał czas, gdy na wejściu K8 zabraknie zasilania. Opcjonalny wyświetlacz LCD przyłącza się do złącza K6. Jest to ciekłokrystaliczny wyświetlacz alfanumeryczny o czterech 2 0-zna-kowych wierszach. Można zastosować także inne wyświetlacze, pod warunkiem, że mają sterowniki zgodne ze sterownikiem Hitachi HD44780. Potencjometr Pl służy do regulacji kontrastu wyświetlacza. Sygnały selekcji układów peryferyjnych są w prezentowanym układzie generowane przez układ GAL16V8 (IC5). Na podstawie wejściowych sygnałów adresowych generuje sygnały wyboru dla układów peryferyjnych. Sześć sygnałów selekcji: CSO do CS5 jest doprowadzonych do listwy kontaktowej K5. Do zasilania układów na płytce sterownika i ładowania komórki służy stabilizator 5V - IC8. Zasilacz sieciowy o napięciu 9 do 12V i prądzie 800mA przyłącza się do K7 lub K8. Dioda D5 zabezpiecza płytkę przed przypadkowym odwróceniem polaryzacji zasilania, a dioda LED D3 sygnalizuje włączenie zasilania wyłącznikiem S4. Projekt prof. B. vom Berg i P. Groppe (Politechnika Georg Agricola) Tab. 2. Przeznaczenie zworek JP1 JP2 JP3 JP4 JP5 Włączenie dołącza diody LED D1 (wyświetlanie stanu wejść) Włączenie dołącza diody LED D2 (wyświetlanie stanu wyjść) Zasilanie kabla danych Data Link dodatnim napięciem: - włączyć tylko w przypadku użycia gotowego kabla danych Data Link Kontroluje prąd ładowania baterii komórki (nie włączać z komórką Siemens S35): - włączyć: ładowanie standardowe 5V, 150mA, - nie włączać: ładowanie szybkie 5V, 400mA - tylko w razie użycia gotowego kabla Data Link (zob. druga część tego artykułu). Lądowanie baterii komórki dodatnim napięciem (nie włączać z komórką Siemens S35): - włączyć: pozwala ładować baterię komórki za pośrednictwem kabla Data Link, (zob. druga część tego artykułu) - nie włączać: we wszystkich innych przypadkach. Elektronika Praktyczna 5/2002 PODZESPOŁY LUusujietldcze nomei er OLE A1DU5 IHSnWMBnSHHHOLOGY ^**^ Kolorowe wyświetlacze LCD szturmem zdobywają rynek i coraz łatwiej je spotkać w tanich monitorach komputerowych, a nawet odbiornikach telewizyjnych. Podobną karierę robią wyświetlacze plazmowe, w które wyposaża swoje telewizory coraz więcej firm. Jak się jednak okazuje, takie technologie wyświetlania obrazu - wzorowane na klasycznych wyświetlaczach katodowych (CRT) - są już przestarzałe. Prawdopodobnie już wkrótce ich miejsce zajmie półprzewodnikowa technologia wyświetlania obrazu - DLP, którą opracowano w znanej naszym Czytelnikom amerykańskiej firmie Texas Instruments, Technologicznie trudne, a przede wszystkim kosztowne, jest poprawianie parametrów wyświetlaczy ciekłokrystalicznych tak, aby można je było stosować w nowoczesnym sprzęcie AV. To właśnie zachęciło producentów do szukania nowych, alternatywnych rozwiązań konstrukcyjnych dla wyświetlaczy. Jedną z najpoważniejszych wad wyświetlaczy LCD jest niekorzystny współczynnik powierzchni obrazu do całko- Elektronika Praktyczna 1/2002 PODZESPOŁY Rys. 2. / witej powierzchni wyświetlacza (co widać po lewej stronie fot. 1). Dla wielu aplikacji zbyt długi jest czas reakcji wyświetlacza na zmiany obrazu, bardzo kosztowne są także wyświetlacze o dużych przekątnych (powyżej 20 cali). Większość alternatywnych sposobów wyświetlania, pośród dotychczas wdrożonych do produkcji, wykorzystywała różnego rodzaju elementy świecące (diody LED czy też rodzaj świetlówek - w wyświetlaczach plazmowych). Nietypową drogą poszli konstruktorzy firmy Texas Instruments, którzy w 1995 roku rozpoczęli próby z mikroma-szynowymi strukturami MEMS, wykonywanymi na podłożu krzemo- wym. Swój pomysł oparli na idei wyko rzy stania do modulowania światła matrycy miniaturowych, ruchomych luster odbijających promień światła padający z oświetlacza (rys. 2). Tak więc technologia wyświetlania obrazu DLP [Digital Łight Processing] jest oparta na projekcji obrazu, co pozwala m.in. bardzo elastycznie skalować jego wymiary. Ponieważ całkowity czas potrzebny na zmianę położenia mikrokluster wynosi zaledwie 15fis, częstotliwość zmian wyświetlanego obrazu może wynosić ponad 60kHz, co setki razy przewyższa możliwości odbioru ludzkiego oka. Zasada działania wyświetlaczy DLP jest prosta: w zależności od położenia mikrolustra zintegrowanego w strukturze DMD [Digital Micro-mirror Device], światło jest kierowane do soczewki projekcyjnej lub poza nią, co powoduje odpowiednio: świecenie lub wygaszenie odpowiedniego punktu obrazu. Sterowanie położeniem luster przebiegiem z modulowanym wypełnieniem (PWM - Pul-se Width Modulation) umożliwia zmianę jasności wyświetlanych punktów, co w uproszczeniu pokazano na rys. 3. Matryce składające się z setek tysięcy, czy nawet milionów mikroluster są integrowane w pojedynczych układach scalonych. Widok jednego z układów z DMD, oferowanych przez firmę Texas Instruments, pokazano na fot. 4. Obecnie są dostępne układy DMD o wymiarach matryc od 640x480 punktów (VGA), aż do 1280x1024 (XGA). Aby uzmysłowić Czytelnikom nieprawdopodobną wręcz skalę miniatury zacji mi kro mechanizm ów w układach DMD, na fot. 5 pokazano mik- roskopowe zdjęcie powierzchni struktury, na której położono szpilkę (na zdjęciu jest widoczny koniec jej czubka). W krzemowym podłożu DMD zintegrowano także układy CMOS sterujące pracą mikroluster, które składają się z matrycy adresowanych ko- Elektromka Praktyczna V2002 PODZESPOŁY mórek pamięciowych. Z przeciwsobnych wyjść tych komórek są sterowane elektrody przechylające jarzmo, do którego jest przymocowane mikro lustro (rys. 6). Jarzmo jest zawieszone na skrętnym zawieszeniu zapewniającym swobodę jego ruchu. Za pomocą układów DMD można tworzyć także obrazy kolorowe, co wymaga zastosowania trzech układów tego typu, oświetlanych kolorami podstawowymi RGB. Aby je uzyskać, zazwyczaj są stosowane pryzmaty rozszczepiające światło emitowane przez jedna lampę oświetlającą. Technologia DLP od roku 2000 jest stosowana w przenośnych projektorach przystosowanych do współpracy z komputerami (fot. 7) oraz w nowoczesnych projektorach kinowych. W końcu roku 2001 LG Electronics wprowadził na rynek pierwsze telewizory projekcyjne, w których także zastosowano technologię DLP. Biorąc pod uwagę względną łatwość wykonania układów DMD, a także doskonałe parametry i stabilność wyświetlanego obrazu, wydaje się, że technologia DLP ma ogromną szansę podbić rynek. Jak pokazuje dotychcza-- sowa praktyka, niemal każda idea zamieniona w krzem, prędzej czy później znajduje uznanie odbiorców. Tomasz Jakubik, AVT ł Dodatkowe inform Dodatkowe informacje są dostępne I w Internecie podadresemwww.dlp.com. ektronika Praktyczna 1/2002 PROJEKTY Domowa stacja meteo ze zdalnym pomiarem temperatury, część 2 AVT-5060 W drugiej części ańykuiu opisujemy sposób montażu, uruchomienia i kalibracji stacji pogodowej. Ta ostatnia czynność jest niezwykle istotna, ma bowiem wpływ na dokładność wyników prowadzonych pomiarów. Montaż i uruchomienie stacji pogodowej - baza Patrząc na schematy domowej stacji pogody można odnieść wrażenie, że jest to przyrząd bardzo złożony, przeznaczony raczej dla doświadczonych elektroników. Jednak przy starannie wykonanym montażu z uruchomieniem całości nie powinno być większych kłopotów. Najtrudniejsze będzie wlu-towanie elementów SMD, jakimi są: mikiokontroler, czujniki temperatury i stabilizator w sondzie zewnętrznej. Raster wyprowadzeń tych podzespołów jest niewielki (25,6mils, czyli 0,65mm), a obudowa SOT23 sama w sobie jest ledwo widoczna, gdy np. taki element upadnie na dywan. Trzeba więc wyposażyć się w odpowiednie narzędzia: dobrą pincetę, lutownicę z cienkim grotem, naj- lepiej ze stabilizacją temperatury i spoiwo lutownicze o grubości raczej nie większej niż 0,38mm. Montaż, zgodnie ze schematami montażowymi pokazanymi na rys. 5 i 6, proponuję rozpocząć od wlutowania stabilizatora Ul2 wraz z kondensatorami, diodą Dl oraz elementami filtrującymi napięcie +VAA. Układ U12 można przykręcić do płytki śrubką, np. jedną z tych, które pozostały po rozebranym, starym komputerze. Po wykonaniu tych czynności podłączamy prowizorycznie napięcie 9V z baterii lub zasilacza i sprawdzamy czy stabilizator "daje" na wyjściu prawidłowe napięcie (5V)l Zapobiegnie to ewentualnym późniejszym przykrym niespodziankom, gdyby tak nie było. Teraz można już montować pozostałe elementy, poczynając od SMD -od najmniejszych, do najwięk- Elektronika Praktyczna 5/2002 Domowa stacja meteo ze zdalnym pomiarem temperatury 00000000 ?ooooooo oooooooo oooooooo ?ooooooo U10UOOOOOOO Ol OOOOOOO o oougnio ? o TO O o O o o O ?ooooooooo oooooc6oooooooooooooo O O OIOI ooooooo o o o o ąaoooooooo ?ooooooooooooo ooo o o__n o o o OK Rys. 5. Płytka drukowana stacji meteo szych. Jeśli chodzi o stosowanie podstawek, to decyzję pozostawiam Czytelnikom. Na pewno podstawka będzie potrzebna pod pamięć Flash (U14) i może się przydać pod pamięć RAM (U8). Zdecydowanie polecam użycie podstawki pod układ U3 w sondzie, o czym piszę dalej. Trzeba również zwrócić uwagę na to, by elementy w centralnej części płytki stacji bazowej nie były zamontowane zbyt wysoko. Nad nimi będzie bowiem umieszczony wyświetlacz. Rezonatory kwarcowe powinny być przylutowane w pozycji leżącej. Pod kwarc X2 można podkleić kawałek taśmy izolacyjnej, który zapobiegnie ewentualnym zwarciom, mogącym wystąpić mimo solder maski. Przed wlutowaniem czujnika wilgotności trzeba przyciąć z jednej strony obydwa "wąsy" u podstawy. Ze względu na wyświetlacz musiał on być maksymalnie dosunięty do krawędzi płytki, co spowodowało, że "wyszedł" poza jej obrys. Czujnik wilgotności powinien być zamontowany bardzo sztywno do płytki. Podczas prób zauważyłem pewną wrażliwość na odkształcenia mechaniczne tego elementu. Wyświetlacz jest dołączony do płytki za pomocą goldpinów wtykanych w odpowiednie gniazdo. Jeśli chcemy korzystać z podświetlania, to oprócz 20-pinowego złącza usytuowanego pod ekranem wyświetlacza, należy jeszcze połączyć z płytką punkty znajdujące się po prawej jego stronie. Można to również zrobić stosując goldpi-ny. Wskazane jest usztywnienie konstrukcji tulejkami dystansowymi przykręconymi w każdym rogu. Interfejs RS232 jest wyprowadzony z płytki przez typowe żeńskie złącze DSUB9, przeznaczone do montażu do druku. Do połączenia stacji z komputerem należy stosować kabel 1:1 (bez skrzyżowania wyprowadzeń 2 i 3), zakończony z jednej strony wtykiem męskim, z drugiej zaś wtykiem żeńskim. Do punktu lutowniczego opisanego jako "ANTENA" należy przylutować 17-centymetrowy odcinek przewodu - podobnie jak w nadajniku. Będzie on pełnił rolę ćwierćfalowej anteny odbiorczej. Dioda świecąca D2 sygnalizuje czy zegar RTC stacji jest ustawiony i odmierza czas. Komentarza wymaga jeszcze zworka JPl. Została ona umieszczona na płytce, gdyż początkowo zakładałem uruchamianie fragmentów programu w wewnętrznej pamięci Flash procesora. Ostatecznie jednak odszedłem od tej koncepcji, pozostawiając miejsce na zworkę. Podczas normalnej pracy złącze JPl powinno pozostać rozwarte, a lutowanie rezystora R9 nie jest konieczne. Po zmontowaniu wszystkich podzespołów i włożeniu pamięci programu do podstawki można przystąpić do uruchomienia stacji, doprowadzając do złącza GNl napięcie 9V. Na ekranie powinna na kilka chwil ukazać się winiet-ka, po której pojawi się informacja o ustawieniach domyślnych wszystkich parametrów programu. Następnie zostanie wyświetlony fragment ekranu roboczego, którego pełny widok jest przedstawiony na rys. 7. Stacja sprawia w tym stanie wrażenie, jakby jej program wpadł w martwą pętlę. Nic się nie dzieje. Aby ją ożywić, należy ustawić zegar RTC, gdyż generuje on przerwania mające wpływ na uruchamianie wszystkich procedur pomiarowych. W tym celu należy nacisnąć klawisz "Wybór". Na ekranie zostanie wyświetlone menu, na którym za pomocą klawisza "Plus" wybieramy polecenie "Ustaw zegar". Teraz naciskając klawisze "Plus" lub "Minus" ustawiamy odpowiednie wartości na poszczególnych polach. Akceptacja nastaw następuje klawiszem "Wybór". Naciśnięcie tego klawisza, po ustawieniu wszystkich wartości, spowoduje start zegara. Od tej chwili LED D2 zacznie migotać co sekundę, a ekran zapełni się pozostałymi informacjami. Do czasu uruchomienia sondy nie będzie jednak widoczna temperatura zewnętrzna. Każde naciśnięcie klawisza "Wybór" będzie wywoływało menu z opcjami do wyboru. 40 Elektronika Praktyczna 5/2002 Domowa stacja meteo ze zdalnym pomiarem temperatury Przechodzenie między nimi następuje klawiszem "Plus". Dostępne w menu opcje, to: - Wybór mierzonego parametru zobrazowywanego na wykresie. Wartości mierzonej wielkości meteorologicznej mogą być wyświetlane w postaci wykresu liniowego. Przechodzenia między wielkościami dokonuje się klawiszem "Wybór". - Ustawianie zegara. - Ustawianie parametrów wykresu. Są nimi: Pmin - minimalne ciśnienie na wykresie; Dp -przyrost ciśnienia na jednostkę wykresu, Twmin - minimalna temperatura wewnętrzna [Tw) na wykresie; DTw - przyrost temperatury Tw na jednostkę wykresu; Tzmin - minimalna temperatura zewnętrzna [Tz) na wykresie; DTz - przyrost temperatury Tw na jednostkę wykresu; Liczba pomiarów rejestrowanych w ciągu doby - może wynosić: 1, 2, 3, 4, 6, 8, 12, 24 (domyślnie); godzina odniesienia - jeśli poprzedni parametr jest inny niż 24, to godzina odniesienia określa godzinę, od której następuje rejestracja danych. Na przykład, jeśli ustawiono 3 pomiary na dobę i godzinę odniesienia na 2.00, to rejestrowane będą tylko wyniki pomiarów z godzin: 2.00, 10:00, 18:00 itd. Nachylenie RH -służy do skalibrowania czujnika wilgotności. Parametr ten określa czułość wilgotności omierza. Jeśli będzie miał źle dobraną wartość, pomiary mogą być nieprawidłowe, np. powyżej 100%, albo poniżej 0; przesunięcie RH - parametr ten umożliwia określenie składowej stałej wskazań wilgotności omierza, przesuwa wykres wzdłuż osi wartości wilgotności. - Przegląd rejestracji. Można korzystając z tej opcji przejrzeć w postaci "cyfrowej" wszystkie zarejestrowane dane. Przewija się je ekran po ekranie klawiszami "Plus" i "Minus". Przytrzymanie na dłużej któregoś z nich powoduje przeskoki po kilka ekranów, co znacznie skraca czas dostępu do odległych rekordów. - Transmisja do PC. Wywołanie tej opcji inicjuje transmisję danych do komputera poprzez in- terfejs RS232. Oczywiście wcześniej stacja i komputer powinny być połączone odpowiednim kablem. Przyznam, że nie siliłem się tu na napisanie specjalnego programu komunikacyjnego, oprogramowanie stacji i tak zajęło mi sporo czasu. W systemie Windows każdy użytkownik komputera taki program posiada. Jest nim oczywiście Hyper-Terminal. Należy go skonfigurować tylko tak, by odbierał dane bezpośrednio z wykorzystywanego do transmisji portu np. Com2, ustawić prędkość transmisji 57600 bitów na sekundę, 8 bitów danych, brak parzystości, 1 bit stopu, brak sterowania przepływem. Aby odbierane dane były zapi sywane na dysku, należy z menu wybrać polecenie "Transmisja->przechwytywanie tekstu", a następnie określić folder i nazwę pliku. Teraz trzeba nacisnąć ekranowy klawisz "Start", a w stacji klawisz "Wybór". W czasie transmisji na ekranie wyświetlacza będzie widoczny pasek progresji wraz z liczbą wysłanych rekordów. Transmisję można zakończyć wcześniej naciskając klawisz "Minus". Jeśli tego nie zrobimy, to po wysłaniu wszystkich danych zostanie wyświetlone zapytanie czy dane aktualnie znajdujące się w pamięci RAM mają być zachowane, czy nie. Jest to jedyna (oprócz wyjęcia pamięci z podstawki) metoda na wyka-sowanie wszystkich danych z RAM-u. Operacja ta nie kasuje oczywiście parametrów konfigu-racyjnych stacji. Budowa mechaniczna Płytka stacji pogodowej została zaprojektowana pod obudowę Z-2 8. Wycinanie w niej otworów tak, żeby ładnie wyglądały i pasowały do wystających podzespołów jest tym, co elektronicy lubią najbardziej. Będą więc mieli spore pole do popisu. Po pierwsze: trzeba wykonać okienko dla wyświetlacza, otwór gniazda GN2 i gniazda typu mi-nijack do podłączenia zasilacza. Należy też wykonać wąską szczelinę, przez którą będzie wyprowadzony języczek na bocznej krawędzi płytki, z umieszczonym na nim czujnikiem temperatury. Za- bieg ten ma na celu wyeliminowanie wpływu temperatury wewnątrz obudowy, która może się nieznacznie różnić od panującej na zewnątrz. Po drugie: należy poobcinać wszystkie kołki z podstawy, które będą przeszkadzały w przymocowaniu płytki. Warto jeszcze wykonać otworki lub nawet szczelinę w okolicach czujnika wilgotności. Brak swobodnego przepływu powietrza w obrębie tego elementu może całkowicie wypaczyć wynik pomiaru. Teraz pozostaje już tylko poskręcanie całości i przystąpienie do uruchomienia sondy. Montaż i uruchomienie stacji pogodowej - sonda pomiaru temperatury zewnętrznej Płytka sondy pomiaru temperatury zewnętrznej została zaprojektowana jako jednostronna. Układy U3 i U2 montuje się więc od spodu, pozostałe standardowo. Uruchomienie modułu mogą znacznie ułatwić zworki przewidziane na płytce. Prawidłowe działanie stacji zagwarantujemy, gdy nadajnik będzie "widział" odbiornik. Jednak - jak już Czytelnicy - wiedzą, sonda włącza się na 3 sekundy w odstępach prawie 3-minutowych. Trzeba się wykazać niemałym sprytem, żeby poustawiać wszystko poprawnie. Dlatego też, do uruchomienia i zestrojenia stacji, można wyjąć układ U3 z podstawki, zworkę JPl ustawić tak, by wejście SD U2 było połączone z diodą D2. Następnie Rys. 6. Płytka drukowana zdalnego czujnika temperatury Elektronika Praktyczna 5/2002 41 Domowa stacja meteo ze zdalnym pomiarem temperatury założyć jedną ze zworek JP2 lub JP3. W takiej konfiguracji nadajnik będzie przez cały czas włączony i do stacji bazowej będzie wysyłał daną, zależną od ustawienia zworek. Założenie zworki JP3 spowoduje, że sonda będzie bezustannie przekazywała do bazy informację o temperaturze 555,5C. Jeśli tor radiowy zsynchronizuje się prawidłowo, to po kilku sekundach taka właśnie temperatura powinna być wyświetlona na wyświetlaczu. Jej brak może świadczyć o kłopotach z transmisją. Można wtedy próbować zmienić położenie nadajnika lub obydwu antenek. Ale przyczyną niepowodzeń może być także to, że odbiornik nie rozpoznał prawidłowo sekwencji rozruchowej i nie mógł dalej prawidłowo się zsynchronizować. Dlatego zawsze najpierw musi być włączona stacja bazowa (w ostateczności wyzero-wana), dopiero po wyświetleniu winietki można włączyć nadajnik. Obecność sygnału na wyjściu odbiornika jest sygnalizowana wyświetleniem literki R w obwódce, przy początku układu współrzędnych wykresu. Nie oznacza to jednak, że sygnał ten niesie jakąś wartość informacyjną. Gdyby i te zabiegi nic nie pomogły, trzeba się odwołać do metod bardziej wyrafinowanych. W tym celu zakładamy tylko zworkę JP2 (JPl oczywiście pozostaje), która wymusza emitowanie sygnału w postaci fali prostokątnej. Następnie należy na wyjściu odbiornika - wyprowadzenie 14 (druga nóżka od strony potencjometrów) - sprawdzić oscyloskopem, czy w ogóle dochodzi jakiś sygnał i ewentualnie ocenić jego jakość. Dalej, niestety, nic konkretnego nie mogę doradzić, ponieważ użytkownik ma niewielkie, żeby nie powiedzieć nie ma żadnych, poza wymienionymi wyżej, możliwości wpływania na jakość transmisji radiowej. Wierzę jednak, że zestrojenie toru uda się zakończyć sukcesem. Pozostaje więc tylko włożyć do podstawki układ 4060, założyć obydwie zworki JP2 iJP3, a zworkę JPl przełożyć w przeciwne położenie. Kalibracja Zastosowane w stacji czujniki temperatury nie wymagają żadnej kalibracji. Nadają się do użycia bezpośrednio po wlutowaniu. Czynności związane z kalibrowaniem czujnika wilgotności względnej były podane przy okazji omawiania opcji menu. Prawidłowe skalibrowanie go w warunkach amatorskich będzie jednak bardzo trudne. Zainteresowanym tym zagadnieniem przypominam, że jedna z klasycznych metod pomiaru wilgotności względnej (metoda psychometryczna) polega na pomiarze temperatury dwoma, umieszczonymi blisko siebie termometrami. Jeden jest zwykły, drugi ma natomiast na zbiorniczku z rtęcią nałożony nasycony wodą kłębek waty lub muślinu. Na skutek parowania wody, temperatura drugiego termometru będzie nieco niższa, niż wskazywana przez termometr pierwszy. Różnica temperatur będzie tym większa, im bardziej suche jest powietrze. W praktyce termometry te znajdują się w jednej rurce, przez którą pompowane jest powietrze. Wilgotność oblicza się ze wzoru uwzględniającego charakterystyczny dla takiego układu współczynnik określający przepływ powietrza. Trudno więc coś konkretnego zaproponować tu Czytelnikom. Jest jeszcze metoda punktu rosy. Wymaga ona znajomości specjalnych tablic, a wykonanie niezbędnego higrometru kondensacyjnego również nie będzie łatwe dla amatora. Elektronikom-chemikom mógłbym jeszcze polecić metodę przygotowania specjalnego roztworu, który w specjalnym zbiorniku wytworzy określoną wilgotność względną powietrza. Jak dla mnie pomiar tą metodą jest jednak zupełnie niewykonalny. Zainteresowanych odsyłam do dokumentacji czujnika wilgotności zamieszczonej w katalogu ELFY (73-088-51, 2322 691 90001), który jest łatwo dostępny. Reasumując, jeśli chodzi o kalibrację wilgotnościo-mierza, to pozostaje w zasadzie jedynie metoda porównawcza z innym, wzorcowym przyrządem. Regulację czujnika ciśnienia przeprowadza się potencjometrami Pl i P2 (rys. 1 - EP4/2002). Do prawidłowego skalibrowania ciśnienia, podobnie jak w przypadku wilgotnościomierza, najwygodniej jest użyć jakiegoś przyrządu wzorcowego. Nie zawsze jest to możliwe. Pozostaje więc tylko szukać Tz=-0,5C Tw=24,3C p=1026,7hPa RH=45,2% 2002/01/08 12:48:09 At=1C 15+30 Rys. 7. Przykładowy widok na wyświetlaczu stacji pogodowej odpowiednich serwisów informacyjnych w radiu, telewizji, telega-zecie lub oczywiście w Internecie. Ja korzystałem z telegazety TVP (strona 166) oraz z internetowej strony: http://weather.noaa.gov/ weather/current/EPWA.html. Najlepiej przez kilka kolejnych dni notować wyniki wskazań stacji i porównywać je z danymi podawanymi przez media. Elementami regulacyjnymi lub parametrami programowymi "manipulujemy" dotąd, aż wskazania będą w miarę zbliżone. Trzeba przy tym pamiętać, że ciśnienie atmosferyczne dość silnie zależy od wysokości (ok. lhPa/8m różnicy wysokości). W powyższym serwisie np. informacja o ciśnieniu jest odniesiona do Okęcia (107 m n.p.m.). Ustawienie potencjometru P2 wpływa na wzmocnienie toru pomiarowego ciśnienia. Jeśli szybkość zmian wskazywanych przez stację jest za duża w porównaniu z wartościami wzorcowymi, należy śrubkę potencjometru delikatnie przekręcić w lewo. Na początku można się nie przejmować różnymi wartościami bezwzględnymi pomiędzy stacją i wzorcem. Ważne jest, żeby przebiegały z takimi samymi nachyleniami. Mówiąc językiem matematycznym należy dążyć do wyrównania pochodnych. Gdy z dopuszczalnym błędem już się to uda, należy potencjometrem Pl skorygować wartość bezwzględną wskazań ciśnienia. Obsługa stacji Wszystkie pomiary prowadzone przez stację przebiegają automatycznie. Natychmiast po odświeżeniu każdego z nich pojawiają się na wyświetlaczu (rys. 7). W odstępach czasu, wynikających z ustawień użytkownika, dane są rejestrowane w pamięci i jedno- 42 Elektronika Praktyczna 5/2002 Domowa stacja meteo ze zdalnym pomiarem temperatury cześnie nanoszone na wykres. Wykres jest rysowany od lewej strony do prawej. Gdy wypełni całą dostępną szerokość, po każdej kolejnej rejestracji będzie jednocześnie przesuwany w lewo. Tym samym najstarszy punkt wyjdzie poza widoczny obszar. Dla ustawień domyślnych, widać historię z ostatnich 60 godzin (2,5 doby). Klawiszem "Minus" można przewinąć wykres o 40 pixeli w kierunku starszych danych, "Plusem" zaś w stronę przeciwną. Fakt przewinięcia wykresu jest sygnalizowany strzałką, wyświetloną w trzeciej od dołu linii, przy osi wykresu. Jeśli strzałka przy czubku swojego grota ma dodatkowo kreskę pionową, to znaczy, że widać najstarszą zarejestrowaną daną i dalsze przewijanie jest niemożliwe. Lewą część wyświetlacza wypełniają informacje alfanumeryczne. Są to kolejno od góry: temperatura zewnętrzna (wyświetlana tylko wtedy, gdy stacja odbierze poprawnie daną z sondy), temperatura wewnętrzna, ciśnienie atmosferyczne, wilgotność względna, data, godzina, przyrost wyświetlanej na wykresie danej pomiarowej na jednostkę wykresu, obok której w inwersie jest zaznaczona informacja o wybranej danej do zobrazowania w postaci wykresu, a w ostatnim wierszu podano zakres widocznej na wykresie danej w domyślnych dla niej jednostkach. W momencie, gdy wykonywana jest seria pomiarów, obok początku układu współrzędnych pojawia się literka P w obwódce. Przykładowo: na rys. 7 widać wykres temperatury wewnętrznej, rejestrowanej co godzinę (24 rejestracje na dobę). Jest on maksymalnie przewinięty do początku. Na wykresie widać temperatury z przedziału 15...30C. Procesor aktualnie wykonuje pomiary. Informacje dodatkowe Program obsługi stacji został napisany w języku C (Keil). Kod ma długość ok. 17kB. Na koniec muszę się jeszcze usprawiedliwić. Otóż jeszcze przed opublikowaniem artykułu, podzieliłem się swoim pomysłem z pewnym internetowym znajomym. W odpowiedzi dostałem maiła pisanego niemal drukowanymi literami (internauci wiedzą, co to znaczy), z pytaniem dlaczego nie uwzględniłem w projekcie anemometru, czyli wiatromierza. Pierwotnie miałem nawet taki zamysł, lecz wykonanie części mechanicznej w warunkach amatorskich byłoby chyba zbyt trudne, a kupienie gotowego np. firmy Dallas Serniconductors, znacznie podrożyłoby i tak już niemały koszt stacji. Pewna furtka jednak istnieje. Jedno wejście przetwornika ADC pozostało wolne. Pozdrawiając więc wszystkich zawiedzionych, życzę błękitnego nieba nad głowami, ozdobionego jedynie pięknymi cirrusami. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/ma jO2.htm oraz na płycie CD-EP05/2002B w katalogu PCB. Elektronika Praktyczna 5/2002 43 Zasilacz laboratoryjny sterowany cyfrowo, częsc 3 Cyfrowy zasilacz laboratoryjny jest sterowany programem napisanym w języku PIC BASIC, podczas gdy program w Visual BASIC służy do wyświetlania obrazu panelu sterującego na ekranie komputera. Szczegóły związane z działaniem tych programów przedstawiamy w artykule. Uwaga! Źródło programu sterującego pracą zasilacza oraz kompilator Basica znajdą Czytelnicy EPo/oL na płycie CD-EP5/2002B. Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 44...46 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Na rys. 5 przedstawiono sieć działań programu mikrosterownika. Na początku uruchamia się krótka sekwencja inicjalizacyjna, kasująca ustalone wartości do zera i konfigurująca kilka wyprowadzeń mikrosterownika. Następnym krokiem jest pomiar aktualnych wartości napięcia i prądu, objęty już pętlą główną programu. Wszystkie pozostałe części programu następują kolejno w pętli. Jedyne rozgałęzienia zachodzą w czasie odczytywania stanu przycisków. Procedura odczytu stanu przycisku jest, jak widać z sieci działań, dość nużąca. Polega na odczytywaniu stanu wszystkich kolejnych przycisków i zapamiętywaniu przez mikrokontroler kodów tych przycisków, które zostały naciśnięte. W końcu na zapytanie "czy jakiś przycisk jest wciśnięty?" mikrokontroler sprawdza, czy któryś z przycisków został rzeczywiście naciśnięty. Jeśli tak, jest uruchamiane rozgałęzienie, kodujące zwiększenie lub zmniejszenie odpowiedniej ustalonej wartości, dopóki wartość ta mieści się w dozwolonym zakresie. Wtedy zostaje wyświetlony nowo ustalony punkt. Funkcję automatycznego powtarzania skanowania przycisków uzupełnia półsekundowy czas opóźnienia. Jeżeli nie został naciśnięty żaden przycisk, program powraca na początek głównej pętli do ponownego pomiaru napięcia i prądu. Program w BASIC-u Listing kodu źródłowego mikrosterownika jest przedstawiony na list. 1. Program ten, napisany w PIC BASIC 1.3, można pobrać z www.pic-basic.de (pliki z działu Download tej strony publikujemy także na płycie CD-EP5/2002B). Można tam także znaleźć więcej informacji na temat tego języka, a także najnowszą wersję jego kompilatora. PIC BASIC pozwala pisać programy mikrosterowników łatwo i szybko. Ułatwia także ich kompilację i programowanie mikrosterowników. W czasie pisania tego artykułu informacje te były dostępne jedynie w języku niemieckim. Budowa programu jest następująca: najpierw deklaruje się wszystkie używane w programie zmienne. Jest 13 zmiennych o wielkości jednego bajta i dwie wielkości dwóch bajtów, w RAM mikrosterownika zajmują razem 17 bajtów (a dalszych 12 PIC BASIC rezerwuje jako część roboczą). Następnie rozpoczyna się pierwsza część programu, nazwana "inicjalizacją". Etykieta Start wyznacza punkt wejściowy głównej pętli. Listing zawiera liczne komentarze i szczegółowy opis programu nie jest konieczny. Jednak poniżej zamieszczono kilka kolejnych uwag. Przetwornik A/C Polecenie ADW A2, 5380, 0, Meas_Voltage służy do przeprowadzenia konwersji analog owo-cyfrowej i wpisania zmierzonej wartości do zmiennej Meas_Vol-tage (zmierzone napięcie). Współczynnik skali może zostać zmieniony przez zmianę wartości 5380. Układ został jednak tak zaprojektowany, ze taka zmiana nie jest zwykle potrzebna. Podprogramy w asemblerze Podprogram Format ma długość 3 0 bajtów i zawiera kilka podprogramów (także w języku PIC BASIC), potrzebnych do użycia innych poleceń BASIC, formatujących wartości mierzone do wyświetlenia. Sztuczka ta umożliwia zaoszczędzenie sporo cennej pamięci programu. Oś mi obaj to wy podprogram RS232E jest napisany także w asemblerze. Ustawia on sygnał 44 Elektronika Praktyczna 5/2002 Rys. 2. Listing programu w języku PIC BASIC 'PIC-BASIC-1.3-Quelltext 'Wetzteil 25V, 2,5A (oder 20V, 1A) VarE Lhl, Lh2, Lh3, Lh5, Lh6, Lh7, Uwert, Iwert, y VarB Knopfnummer, Flag, AufrufZahler, Eitmuster VarH MessSpannung, MessStrom Hauptprogramm Init: 'V Uwert, Iwert nc Iwert Inc Iwert Low A3 High B2 'Uwert bei jedem Weustart auf "0" 'Iwert bei jedem Weustart auf "lOmA" 'Zeile fur 1A (bei 2,5A ersatzlos węgla 'ADH-Ausgang auf "0" setzen 'CTS: keine Empfangsbereitschaft Messwerte f Cali Format orn atleren Messwerte a LCD E5, " " , uf dem LCD Lhl, Lh2, ? nze igen Lh3 , "V Lh5, ' MeSwerte ub Serout B3 , 9 er 60 RS232 s , "D", #M den Span nung, łMess Strom, 1 Henn vorhan Cali RS232E der , neue So llw erte uber RS2 32 empf a Start: Spannung und Strom messen Low A4 'Mux auf U ADH A2, 5380, 0, MessSpannung 'Spannungsmessung ssSpannung = MessSpannung Shr 1 'entspricht: Hert / 2 High A4 'Mux auf I ADHA2, E380, 0, MessStrom 'Strommessung ssStrom = MessStrom Shr 1 'entspricht: Hert / 2 ^ssStrom = MessStrom Shr 2 'entspricht / 4 'Zeile fur 1A-Versic , Lh6, Lh7 , "A die Sollwerte uber DAH ausgeben PHM Al, Uwert, 64 'Spannung einstellen (250 = 25V) PHM A0, Iwert, 64 'Strom einstellen (250 = 2, 5A bzw. 200 = 1A 'fur 1A-Version) Knopfe scannen Einsprung: Flag = L00010000 'nur Bit 4 auf "H" (wird bei gedrucktem ' Knopf zuruckgesetzt) ;V AufrufZahler, Knopfnummer 'Variablen auf "0" setzen 11 ButtonScan 11 EuttonScan 11 ButtonScan 11 EuttonScan 11 ButtonScan 11 EuttonScan 11 ButtonScan 11 EuttonScan anch Knopfnummer, Start, S2 , S3 , S4 , S5, S6, S7, S8 , S9 'Wenn kein Knopf gedruckt wird zum Label "Start" springen S2: If Uwert > 240 Then Skip If Uwert > 190 Then Skip Uwert = Uwert + 10 to Uwert_anzeigen S3: If Uwert < 10 Then Skip Uwert = Uwert - 10 to Uwert_anzeigen S4: If Uwert > 249 Then Skip If Uwert > 199 Then Skip nc Uwert oto Uwert_anzeigen 'Zeile fur 1A-Versio 'Zeile fur 1A-Versio 'Zeile fur 1A-Versio S5: If Uwert < 1 Then Skip c Uwert to Uwert_anzeigen S6: If Iwert > 240 Then Skip If Iwert > 190 Then Skip Iwert = Iwert + 10 to Iwert_anzeigen S7: If Iwert < 10 Then Skip Iwert = Iwert - 10 to Iwert_anzeigen If Iwert > 249 Then Skip If Iwert > 198 Then Skip 2 'Zeile fur 1A-Versic nc Iwert 'Inc Iwert 'Zeile fur 1A (bei 2,5A ersatzlos wegls Goto Iwert_anzeigen S9: If Iwert < 1 Then Skip 'If Iwert < 2 Then Skip 2 'Zeile fur 1A-Version Dec Iwert 'Dec Iwert 'Zeile fur 1A (bei 2,5A ersatzlos wegls Iwert_anzeigen: 'y = Iwert Shr 1 LCD B5, " ' LCD B 5, " Pause 500 Goto Einsprung entspricht/2 Zeile fur 1A (bei 2,5A ersatzlc 'Weglassen) , łlwert, "OmA" ", ły, "OmA" 'Zeile fur 1A-Version Uwert_anzeigen: LCD B5, " " , Rlwert, "00mV" Pause 500 Goto Einsprung Sub EuttonScan LookUp AufrufZahler, L11111110, L11111101, L11111011, L11110111, L11101111, L11011111, L10111111, L01111111, Bitmuster EXPo E5, Bitmuster, 0 'Dieser Eefehl nutzt die gleichen Controller- ' wie das LCD. Durch den Hert "0" wird "Bitmuster" am LCD vorbeig Inc AufrufZahler PEI L00010000 = Flag 'nur Bit 4 von Port E einlesen If Flag o 0 then Skip 'nachsten Befehl uberspringen wenn Knopf nicht gedruckt Knopfnummer = AufrufZahler 'Knopfnummer merken Endsub chobe 'As folgende Basic-Unterprogramm "Einlesen" wird nur aus de embler-Unterprogramm "RS23 2E" aufgerufen Sub Einlesen Serln E0, 9600, łUwert, łlwert Uwert = Uwert Min 2 50 'auf 2 5 Volt begrenze 'Uwert = Uwert Min 200 'auf 20 Volt begrenze Iwert = Iwert Min 2 50 'auf 2,5 Ampere begre 'Iwert = Iwert Min 200 'auf 1 Ampere begrenz Y = 1 'Schleife sofort yerlassen Endsub 'Zeile fur 2,5A 'Zeile fur 1A-Version i 'Zeile fur 2,5A 'Zeile fur 1A-Versic A ss Format ;Spannung formati MOVF 2 4,H MOTOF HHERT2 MOVF 2 3,H MOTOF 21 MOVLH 2 Cali Packer MOTOF 27 MOVLH 4 Cali Packer MOTOF 2 8 MOVLH 6 Cali Packer MOTOF 29 ;Strom formatiere MOVF 2 6,H MOTOF HHERT2 MOVF 2 5,H MOTOF 21 MOVLH 2 Cali Packer MOTOF 30 MOVLH 4 Cali Packer MOWF 31 MOVLH 6 Cali Packer MOTOF 32 Retum Packer: Programmspeicher MOTOF FSR CALL SOSS MOVF LHERT1.H EndAss Ass RS232E CLRF 3 5 RS23 2: BCF PE,2 BTFSS PE,0 Cali Einlesen DECFSZ 3 5, F GOTO RS2 32 BSF PE,2 EndAss rt Hiederholung der Zeile 8 Byte Clrf Y (= R35) CTS: Empfangsbereitschaft RxT Pintest Basic-Unterprogramm aufrufen Schleife 255 mai durchlaufen (als Zeitfenster) CTS: keine Empfangsbereitschaft CTS w stanie wysokim i czeka przez chwilę, aby sprawdzić, czy z komputera są wysyłane dane. Jeśli tak, program w asemblerze przywołuje podprogram BASIC Read, służący do odczytywania napływających danych. Wszystkie pozostałe części programu są napisane wyłącznie w BASIC-u. Cały skompilowany program ma objętość 1009 bajtów (wersja 2,5 A) lub 1021 bajtów (wersja 1A) i niemal zapełnia pamięć programu układu PIC16F84. Te wiersze programu, które zależnie od wersji zasilacza wymagają zmiany, są oznaczone w listingu programu BASIC. Jeśli chce się umożliwić działanie kontrolnego licznika zegarowego [watchdog timer) w mikro-sterowniku, to słowo konfigura-cyjne na wyjściu z asemblera musi zostać zmienione na: CONFIG B111111111110101' W pętlę główną i w pętlę skanowania przycisków musi także Elektronika Praktyczna 5/2002 45 wyświetlenie zmierzonych wartości Rys. 5. Sieć działań programu mikrosterownika zostać wstawiona instrukcja CLRWDT. Pętla skanowania trwa ponad 500ms, a pętla główna około 780ms. Przy wartościach ustawianych w rejestrze Opńon w czasie startu, kasowanie kontrolnego licznika zegarowego następuje po 2,3s. Czas ten wystarcza dla obu pętli (wystarczyłaby nawet połowa). Najprostszym miejscem do wprowadzenie instrukcji CLRWDT jest tuź po etykiecie Entry. Następujący po niej kod zostanie przesunięty o jedno miejsce, co w tym przypadku jest bez znaczenia. Protokół interfejsu Pakiet danych, które zasilacz wysyła przez swój interfejs, ma następującą strukturę: Duuuuuiiiii ż Najpierw jest wysyłany znak D, potem pięciocyfrowe wartości napięcia i prądu, a na końcu znak powrotu karetki. Najmniej znacząca cyfra napięcia oznacza 10mV, a natężenia prądu lmA. Decydują one o dziesięciokrotnie większej rozdzielczości niż pokazywana przez wyświetlacz. Pierwszymi cyframi napięcia i prądu zawsze są zera. Przy przesyłaniu do zasilacza ustalonych wartości, przesłane muszą być i napięcie i natężenie prądu, jedno natychmiast po drugim. Można wysłać do trzech cyfr każdej wartości: UUUZ111Z Po każdej z wartości musi zostać wysłany znak niecyfrowy (np. znak powrotu karetki). W każdej wersji zasilacza wartość napięcia 20V musi zostać wysłana w postaci 200, a wartość natężenia prądu lA w postaci 100 dla silniejszego modelu i 200 w^^ dla słabszego. Program w Visual BASIC Specjalnie napisany dla tego urządzenia program sterujący działa pod Windows 95 lub 98. Jego interfejs sterowania imituje panel czołowy zasilacza (rys. 6). Napięcie i natężenie prądu ustala się w nim tak samo jak w rzeczywistym zasilaczu za pomocą ośmiu przycisków. Zwolnienie klawisza myszy skutkuje wysłaniem wartości do zasilacza. Ustalane i aktualne napięcie i natężenie prądu są wyświetlane na pozorowanym wyświetlaczu ciekłokrystalicznym. Po kliknięciu w okienku programu poza przyciskiem, pokazuje się okienko ustalania. Można w nim konfigurować wersję zasilacza (2,5A lub lA) oraz port komunikacyjny danych (COM 1 do 4). Jeżeli mysz jest połączona z COMl, może się zdarzyć, że program nie będzie poprawnie działał przez C0M3, jak się to często w komputerach zdarza. Po prawej stronie okienka kon-figuracyjnego są podane nazwy plików logu i sterowania. Kliknię-cie na sąsiednim przycisku "Start" skutkuje możliwością odczytu bądź zapisu pliku. Plik zawiera wyświetlaną wielkość i datę jej ostatniej zmiany (w przypadku pliku logu), albo mającej nastąpić zmiany (w przypadku przygotowanego pliku sterowania). W najprostszym przypadku plik sterowania może zostać utworzony z pliku logu przez modyfikację daty. Poniższy przykład rekordu jednego wiersza danych pokazuje format, używany w plikach logu i sterowania: 12000-08-20 14:35:53tt,"04,9V","Q,97A" Pomiędzy dwoma symbolami "#" mieści się data (w formacie międzynarodowym) i czas zmiany, która została lub ma zostać dokonana. Czas i dwie dane elektryczne w rekordzie są rozdzielone przecinkami. Ułatwia to przetwarzanie i na przykład graficzną prezentację zawartości pliku za pomocą programu arkusza kalkulacyjnego. Opracował R. Pagel, EE Rys. ó. Widok okna programu sterujqcego zasilaczem z poziomu PC 46 Elektronika Praktyczna 5/2002 PROJEKTY Internetowy interfejs dla mikrokontrolera, część 3 AVT-5055 Jest to ostatnia część opisu projektu, który wzbudził ogromne zainteresowanie n aszych Czytelnikó w. Sprzętowa realizacja stosu TCP/IP, choćby w oparciu 0 układ S-7600A, zapewnia nowoczesne i bardzo praktyczne rozwiązanie - warto więc zapoznać się z programowaniem 1 konfiguracją tego układu. Najbardziej dostępną i znaną metodą połączenia się z Interne-tem przez modem jest wykorzystanie numeru dostępowego TP S.A. Wystarczy wysłać do modemu komendę ATDT 0202122, a do PAP String sekwencję: 0x03 PPP0x03PPP i czekać na poprawne połączenie. Pierwsze próby, jakie robiłem nie dały jednak pozytywnego rezultatu. Powstawały zmiany w programie, kolejne próby i... niestety nic z tego. Zrobiłem wiele takich prób, straciłem mnóstwo czasu na modyfikację programu i wyczytywanie pakietów PPP wymienianych pomiędzy S-7600A a serwerami TP S.A. Okazało się, źe nie jest możliwe ustanowienie połączenia pomiędzy S-7600A i serwerami TP S.A. Po zmianie na numer dostę-powy firmy Polbox wszystko zaczęło działać od razu! Wszelkie próby dotarcia do kogoś z TP S.A., kto mógłby pomóc w wyjaś- nieniu dlaczego tak jest skończyły się tak samo, jak próby łączenia się przez 0202122. Pozostawię to bez komentarza... Jak juź wspomniałem, wpisanie jedynki do PPP_En w rejestrze PPP Control and Status powoduje rozpoczęcie negocjowania połączenia przez sprzętowy stos PPP. Wcześniej trzeba wpisać jedynkę na pozycji bitu SCTL w rejestrze Serial Port ConfigurationfStatus. Umożliwi to przejęcie kontroli nad portem szeregowym przez stos sprzętowy. Przy okazji trzeba teź ustawić (wpisać jedynkę) bit DSR/HWFC i włączyć mechanizm hardware fłow control. Ze stosem PPP związane są jeszcze cztery rejestry Our IP Address. Pod adresem 0x10 znajduje się mniej znacząca część numeru IP, a pod 0x13 bardziej znacząca. Można tam wpisać adres IP serwera dostępowego lub nic nie wpisywać (domyślnie są Elektronika Praktyczna 5/2002 47 Internetowy interfejs dla mikrokontrolera Tab. 11. Rejestr Config Status Low Bit Nazwa Dostęp Opis 7 TO R TCP Timeout - ten bit sygnalizuje, że wystąpił timeout w czasie ustanawiania połączenia TCP lub czekania na pakiet TCP po ustanowieniu połączenia. 0 = normalna praca 1 = nastąpił timeout 6 Buff_ Empty R Ten bit sygnalizuje, czy bufor danych wyjściowych jest pusty czy też nie. Bit jest jedynką, jeżeli bufor jest pusty. Jest zerowany, jeżeli kieszeń danych wyjściowych nie jest pusta i taka pozostaje. 1 = bufor pusty 0 = bufor nie jest pusty 5 BufLFull R Ten bit sygnalizuje, czy przestrzeń jest dostępna do zapisu danych. Może również wyzwalać przerwanie, kiedy bufor jest pełny i bit Buff_Fu!!_En w rejestrze Socket interrupt Mask Low (0x2a) jest ustawiony. Rejestr Data Register nie powinien być zapisywany, kiedy Buff_Full=1. 0 = bufor dostępny 1 = bufor nie jest dostępny 4 Data Avail/RST R/W Wyzerowanie tego bitu ustawia wszystkie parametry kieszeni do wartości domyślnych. Jest samozerujący i nie potrzebuje zerowania dla właściwej operacji. Przed wyzerowaniem należy się upewnić, że bit Snd_Bsy w rejestrze Socket Status High (0x3A) jest wyzerowany. Przeczytany określa, czy są dostępne dane w kieszeni. 2:0 ProtocoL Type R/W Te bity są używane do ustawiania protokołu kieszeni. 010 = TCP Client Modę 101 = UDP Modę 110 = TCP Server Modę tam wpisane same zera). W tym drugim przypadku serwer sam prześle swój adres i zostanie on wpisany do rejestrów Our IP Address [floating IP address negocjowany podczas sesji PPP). Poprawne zakończenie negocjacji układ S-7600A sygnalizuje ustawiając bit PPP_UP/SRst w PPP Control and Status. Można wtedy odczytać rejestry Our IP Address. Po ustawieniu PPP_En program sterujący czeka w pętli na ustawienie bitu PPP_UP/SRst. Jeżeli to nastąpi, to na wyświetlaczu (w górnym wierszu) pojawi się "PPP_ok.", a w dolnym będą wyświetlone hexadecymalnie cztery bajty adresu IP. W tym momencie S-7600A może rozpocząć nawiązywanie połączenia TCP ze stacją docelową. Do rejestrów Their IP Address (0x3c...0x3f) trzeba wpisać adres IP tej stacji. Przed dostępem do indeksowanych rejestrów kieszeni musi być zaprogramowany rejestr indeksowy o adresie 0x20. Kolejną czynnością jest wyzerowanie bitu Data_avail/RST (wyzerowanie kieszeni) w rejestrze Config Status Low (adres 0x22). Oprócz adresu IP potrzebne jest jeszcze określenie numerów portów źródła i przeznaczenia. Prezentowane urządzenie ma pracować jako klient poczty. W takim przypadku port źródła ma mieć losowo wybraną wartość z zakresu 1024...65535. Port przeznaczenia dla aplikacji używającej protokołu POP3 ma standardowy numer 110. Do rejestrów Our Port registers (0x38...0x39) wpisywana jest wartość 0x9200 (37376 dziesiętnie), natomiast do rejestrów Their Port Registers (0x37...0x37) jest wpisywana wartość 0x006e (110 dziesiętnie). Obie te wartości, tak jak i adres IP, muszą być ustawione przed aktywacją kieszeni. Po wpisaniu tych ustawień w rejestrze Config Status Low trzeba określić typ protokołu kieszeni na TCP Client Modę. Teraz jest już wszystko gotowe i można rozpocząć połączenie TCP (aktywacji kieszeni) przez wpisanie dowolnej wartości do rejestru o adresie 0x30 [Data Send and Buffer Length). Jeżeli połączenie dojdzie do skutku, to w rejestrze Socket Status Mid (tab. 11) bit ConJJ zostanie ustawiony, a w polu TCP State powinna pojawić się wartość 2 [established). Na wyświetlaczu w górnym wierszu pojawi się wtedy komunikat "Połączenie TCP/IP ok", natomiast w dolnym "port 110". Jest to moment, w którym S7600A może wysyłać i odczytywać z serwera pocztowego dane. Dane są wysyłane w momencie wpisania do rejestru Socket Data (adres 0x2 e). Odczytanie tego rejestru powoduje kolejne wczytywanie danych przychodzących z pamięci aktywnej kieszeni. Przez odczytanie rejestrów Data Send and Bit Nazwa Dostęp Opis 7 URG R Ten bit sygnalizuje przychodzące pilne dane. Wpisanie 1 na pozycji bitu URG w Socket Interrupt High Register (0x2d) zeruje ten bit 0 = nie ma pilnych danych 1 = są pilne dane 6 RST R Ten bit sygnalizuje, że kieszeń odebrała sygnał RST ze strony TCP 0= nie odebrano sygnału RST 1 = odebrano RST 5 Term R Ten bit sygnalizuje, że kieszeń odłącza się od źródła i wyzwala przerwanie, jeżeli bit Term_En jest ustawiony w rejestrze Socket interrupt Mask High (0x2b). Ustawienie maski przerwania nie powoduje braku przesyłania tego bitu. 0 = praca normalna 1 = odłączenie kieszeni od źródła ten bit ustawia się, kiedy S-7600A odbierze segment z flagą FIN. To oznacza, że zdalna strona żąda zamknięcia połączenia TCP. 4 ConU R Ten bit sygnalizuje, że kieszeń ustanowiła połączenie z hostem. 0= połączenie nieustanowione 1 = połączenie ustanowione 3:0 TCP State R Te bity sygnalizują bieżący stan TCP 0= CLOSED 1 = SYN SENT 2= ESTABLISHED 3= CLOSE WAIT 4 = LAST ACK 5= FIN WAIT1 6= FIN WAIT2 7= CLOSING 8= TIME WAIT 9= LISTEN A= SYN RECVD 48 Elektronika Praktyczna 5/2002 Internetowy interfejs dla mikrokontrolera Buffer Length można określić wielkość bufora wejściowego. Wymiana informacji może się odbywać tylko w ramach standardowego protokołu. Do odczytywania poczty stosuje się protokół POP3. Bez wdawania się w szczegóły, umożliwia on uwierzytelnienie użytkownika przez wysłanie nazwy i hasła, sprawdzenie liczby wiadomości i zajmowanej przez nie pamięci. Można też odczytać kolejne wiadomości i skasować wiadomość o konkretnym numerze. Po wysłaniu każdej komendy POP3, serwer odpowiada komunikatem, który zaczyna się "+ok." dla sytuacji kiedy komenda jest zaakceptowana i poprawnie wykonana lub ,,-err" jeżeli wystąpi błąd. Jeżeli wystąpi błąd, to program sterujący wyświetla odebrany komunikat i rozłącza połączenie przez wy zerowanie bitu PPP_En w rejestrze PPP Control and Status. W przypadku kiedy cała sekwencja odczytywania poczty jest poprawna, to można odczytać na wyświetlaczu całą przesłaną wiadomość. Zawiera ona oprócz przesyłanej treści - takiej, jaka pojawia się w oknie programu do odczytu poczty - szereg innych istotnych wiadomości normalnie niewidocznych (list. 3) -można tam znaleźć informację od kogo nadeszła wiadomość, dokładną datę i godzinę wysłania, a także dane identyfikacyjne serwera, z którego wiadomość została wysłana. Oczywiście są tam też takie podstawowe informacje, jak temat i sama treść wiadomości. Ponieważ nawet najkrótsza wiadomość, to kilkaset znaków ASCII - w przedstawionym przypadku 979 znaków - to przeglądanie jej na ekranie wyświetlacza możliwe jest w sekwencjach zawierających 40 znaków. Pierwsze 40 znaków wyświetla się po odebraniu, a kolejne po przyciśnięciu przycisku SWl. Podsumowanie Przedstawiony tutaj projekt jest dość nietypowy. Nie jest to projekt zamkniętego urządzenia, ale raczej "szkieletu" służącego do opracowania własnych konkretnych aplikacji. Starałem się przedstawić w artykule, w jak najbardziej przej- List. 3 +0K 979 octets Return-Path: Received: from ghost3.onet.pl (ghost3.onet.pl [213.180.128.18]) by mach4.polbox.pl (8.10.2/8.10.2) with ESMTP id f9I6KKK9K052319 for ; Thu, 18 Oct 2001 20:14:09 +0200 Receiyed: from pa24.zulavs.cvx.ppp.tpnet.pl ([213 .77 .198.24] :4100 worid") by ghost3.onet.pl with SMTP id ; Thu, 18 Oct 2001 20:14:13 +0200 Message-ID: <0 01d01cl5 7bledd8b0 0 80$03 345 21fjj9@world> From: "Tomek" To: Subject: P0P3 test Datę: Thu, 18 Oct 2001 20:13:19 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 4.72.3110.5 X-Mime0LE: Produced By Microsoft MimeOLE V4.72.3110.3 Status: RO Witaj S7600A! 'HELO rzysty sposób, jak można wykorzystać S-7600A w aplikacji inter-netowej. Program sterujący działa poprawnie w sytuacji, kiedy połączenie jest realizowane właściwie i nie występują żadne problemy. Program, który zawierałby procedury obsługi sytuacji krytycznych byłby zdecydowanie bardziej rozbudowany, a co za tym idzie dużo mniej zrozumiały. Celowo też wybrałem w warstwie aplikacji protokół P0P3. Można było wybrać np. HTML i ze strony WWW sterować jakimś elementem - np. przekaźnikiem. Jednak w takim przypadku jednocześnie do sieci musiałyby być podłączone: nasz moduł i komputer z otwartą stroną WWW, a to z kolei mogłoby zniechęcić wielu potencjalnych eksperymentatorów do prób. W przypadku poczty można najpierw wysłać na swoją skrzynkę wiadomość, a potem odczytać ją za pomocą modułu. Podczas testów opisywany moduł łączył się w zasadzie bez problemu z serwerem dostępowym Polboxu. Zdarzały się problemy przy logowaniu na serwerze P0P3 - serwer odpowiadał komunikatem o zaję-tości. Jednak w czasie niewielkiego natężenia ruchu w Internecie połączenia następowały szybko i bezproblemowo. Do modułu podłączony był standardowy modem Zoltrix FM366 za pomocą firmowego kabla RS232. Do połączenia się ze stacją w Internecie potrzebny jest jej adres IP. Dostawcy usług internetowych zmieniają adresy IP zachowując tą samą nazwę domeny. Jeżeli aplikacja wykorzystuje system DNS do wyszukiwania adresów IP, to wszystko jest w porządku. W naszym przypadku tak nie jest i ważne jest by znać aktualny adres IP serwera pocztowego. Przy znajomości da-tagramów protokółu IP można ten adres wyczytać podczas sprawdzania poczty za pomocą np. Outlook Express. Można w tym celu wykorzystać dowolny terminal znakowy. Odpowiedni jest na przykład Terminal Emulation z Nortona Commandera. Adres IP serwera dostępowego może być wyświetlany na ekranie modułu po nawiązaniu połączenia PPP. Odpowiedni fragment programu w pliku tcp.c (opublikowany na płycie CD-EP3/2002B) jest zapisany w postaci komentarza i wystarczy go odpowiednio zmodyfikować , aby taka informacja mogła być wyświetlana. W pliku tcp.c należy też wpisać nazwę i hasło swojej skrzynki pocztowej, wpisać numer telefonu i całość skompilować. Program został napisany dla kompilatora C firmy Keil. W przypadku innych kompilatorów należy go odpowiednio zmodyfikować. Mimo wielu sceptycznych głosów wydaje się, że systemy ste- Elektronika Praktyczna 5/2002 49 Internetowy interfejs dla mikrokontrolera rowania czy akwizycji danych zmiany parametrów sterowania Uwaga! oparte na mikrokontrolerach nie- oddalonych od siebie sterowni- Kody źródłowe do projektu odwracalnie wchodzą w świat ków. Wystarczy za pomocą e- internetowego interfejsu opubliko- wielkiej sieci. Przed konstruktora- mail'a wysłać zbiór tekstowy za- waliśmy na CD-EP3/2002B. mi otwierają się olbrzymie moż- wierający potrzebne dane. Nic nie liwości przesyłania danych na stoi na przeszkodzie, aby zaimple- Wzory płytek drukowanych w for- duże odległości. Dzięki S7600A, mentować protokół SMTP i wysy- macie PDF są dostępne w łnternecie i na pewno doskonalszym następ- łać do serwera wiadomości o za- pod adresem: http://www.ep.com.pl/ com, aplikacje internetowe stają istniałych zdarzeniach lub jakiś ?pdf/maj02.htm oraz na płycie się łatwe i tanie. Nawet przedsta- inny protokół np. HTTP. CD-EP05/2002B w katalogu PCB. wionę tutaj rozwiązanie może słu- Tomasz Jabłoński, AVT żyć na przykład do okresowej tomasz.jablonski@ep.com.pl 50 Elektronika Praktyczna 5/2002 PODZESPOŁY Odkąd odkryto \ właściwości p ółprze wo dniko i plastiki skąpały śivra w nowym świe''~ W tej technolog budowane są płaskie^ elastyczne wyświetlacze um oźliwiaj ą ce wyświetlanie obrazów w pełnej garnie koło rys tyczn ej. Cieple światło zalewa pokój bez okien. Ale nie znajdujemy lamp. Wyłożone tapetami ściany i sufity emitują delikatne białe światło. Przypadkowym muśnięciem ręki dotykasz jednej ze ścian, która natychmiast zaczyna wyświetlać kolorowe obrazy, fragmenty wieczornych wiadomości. Połyskujące pokrycie ścian zmie- Świat plastikowych wyświetlaczy niło się w ekran telewizyjny. Dywany i zasłony wyświetlające obrazy, ekrany o wielkości i kształcie dopasowanym do ściany, przepierzenia z ruchomą grafiką komputerową - tego wszystkiego możemy oczekiwać wkrótce. Nadchodząca dekada prawdopodobnie przyniesie wielkie, kolorowe monitory cienkie i lekkie jak papier. Użytkownicy będą nawet mogli zwijać je w rulony, aby odstawie na bok. "Chcemy też produkować elektroniczną gazetę" - twierdzi dr Wolfgang Rogler z Centrum Badań Technologicznych firmy Siemens w Niemczech. "Głosem będzie można przywołać najak-tualniejsze wydania różnych publikacji na elastycznym ekranie. Myślimy też o interaktywnym, przenośnym, kieszonkowym komputerze osobistym -telefonie komórkowym ze zintegrowanym, wielko formatowym, zwijalnym monitorem. Używając takiego urządzenia będziemy mieli dostęp nie tylko do wszystkich funkcji komputera, ale też nieograniczony dostęp do Intern etu". TakT są przewodzące Eksperci od plastików stawiają na cząsteczki plastiku -maleńkie grudki tworzone z organicznych cząsteczek. Zaledwie dziesięć lat temu badacze w Cambridge przypadkowo odkryli ich elektrolumine-scencję - zdolność do przetwarzania energii elektrycznej Św światło. Są to cząsteczki polimerów o trudnych do wymówienia nazwach, jak polit-hiofen (czerwony], polifluoren (niebieski] i polifenylenowiny-len (zielony]. Pierścienie aromatycznego benzenu są połączone podwójnymi wiązaniami węglowymi jak perły na długim sznurku. Tak jak elektrony w konwencjonalnych strukturach LED, elektrony w pierścieniach ben-Jzenu są wzbudzane zewnętrznym napięciem od 3V do 5V. Wracając do stanu wyjściowego wypromieniowują jasne i łagodne światło, w kolorze zależnym od użytego materiału. Monochromatyczne organiczne diody świecące OLED, są tworzone z wykorzystaniem technologii wielowarstwowej. Cienka warstwa polimeru jest umieszczana między dwiema elektrodami. Kilka warstw atomów indium-tin-oxydu (ITO -ind-cyna-tlen] - przezroczystego przewodnika - jest rozpylanych na szklane podłoże lub przezroczyste, elastyczne folie - nośniki. W procesie wytwarzania, anoda ta jest pokrywana bardzo cienką warstwą cząsteczek półprzewodnika. Siły odśrodkowe rozprowadzają polimery, rozpuszczone przez rozpuszczalniki, w równomier- Fot. 1. Dożywotnią gwarancję działania zapewniono zamykając wyświetlacze organiczne w hermetycznej obudowie wypełnionej obojętnym gazem Elektronika Praktyczna 5/2002 51 PODZESPOŁY Fot. 2. Elastyczność jest atutem OLED-ów. Zginalne lub zwijalne ekrany wyświetlaczy nie istniejg tylko w sferze marzeń ny sposób, nawet na dużych powierzchniach. Następnie na polimer jest napylana elastyczna katoda składająca się z różnych metali, Elastyczność jest atutem OLED-ów Wynikiem tych osiągnięć są wyświetlacze, które można zginać i zwijać. Grubość aktywnej części wyświetlacza jest mniejsza niż 500 nm. "Biorąc pod uwagę warstwę czynną elementu, w żadnej technologii nie można wyprodukować tak cienkiego, uniwersalnego źródła światła" - powiedział Erwin Wolf, który jest szefem oddziału wyświetlaczy w Osram Optosemiconductors, przedsiębiorstwie joint venture powołanym na początku roku 1999 przez Osram (5l%] i Infineon (49%], z działu Siemensa do spraw półprzewodników. "Jasność OLED-ów jest porównywalna z jasnością konwencjonalnej żarówki stuwatowej. Ponadto, drobne modyfikacje w strukturze chemicznej polimerów umożliwiają wygenerowanie przez nie nowych kolorów. Mieszanie kolorów podstawowych: czerwonego, zielonego i niebieskiego stwarza możliwość tworzenia innych odcieni i kolorów, włącznie z kolorem białym". Są również inne dowody wyższości polimerowych źródeł światła nad nieorganicznymi LED-ami. Na przykład, elektroluminescencyjne polimery mogą byc używane do tworzenia zarówno bardzo małych punktów świetlnych jak i wielkich podświetlanych powierzchni. Elementy OLED o powierzchni aktywnej 16 cm2 są obecnie poddawane długoterminowym testom laboratoryjnym. Nakładanie elektrody na polimer jest czynnością krytyczną procesu wytwórczego, najpoważniej ograniczającą jej rozmiar i kształt. Ale już wkrótce, gdyż nie istnieją żadne ograniczenia dotyczące nakładania katod na elementy metalowe. Będzie można wytworzyć świecący element o dowolnym kształcie. Billboar-dy reklamowe lub znaki ostrzegawcze, które trudno jest teraz wyprodukować przy użyciu klasycznych struktur LED, będą w przyszłości wytwarzane tą metodą. Pod względem wydajności świetlnej wyświetlacze OLED uzyskują wyniki tak dobre, jak ich nieorganiczne odpowiedniki. Jedyną wadą jest to, że pozostają w tyle pod względem trwałości użytkowej. Gdy 10000 godzin żywotności nowych diod jest już akceptowalne, konwencjonalne LED-y mogą pracować około dziesięć razy dłużej, Potencjalnie lepsze Wolf, który jest odpowiedzialny za organizację produkcji elementów świecących na dużą skalę i kieruje marketingiem produktów OLED na całym świecie, rozpoczyna demonstrację pozwalającą pokazać co polimery mogą dokonać. Nie zostawiające poświaty litery przesuwają się po prototypowym wyświetlaczu telefonu komórkowego o wymiarach 2x4cm. "W tych pasywnych wyświetlaczach matrycowych anoda jest dzielona na linie, a katoda na kolumny tak, aby mały ekran wyświetlacza miał około 6000 pikseli. Inercja postrzegania naszych oczu powoduje wrażenie biegnącego tekstu. "Architektura takich wyświetlaczy jest polem badań specjalistów wielu dziedzin -inżynierii materiałowej i procesowej oraz inżynierów elektroników" - mówi Rogler, który stał na czele 14-osobowej ekipy OLED przez rok. "Aktualnie rozwijamy procesy technologiczne do produkcji nowej generacji płaskich ekranów wyświetlaczy." Zalety takich wyświetlaczy, w porównaniu z odpowiadającymi im konwencjonalnymi wyświetlaczami ciekłokrystalicznymi (LCD], są następujące - dobre nasycenie kolorów, kąt widzenia sięgający 180 i niewielka gruboc matrycy. Cho- ciaż upłynie jeszcze trochę czasu zanim nowa technologia dojrzeje, to jej aktualne możliwości pozwalają na uzyskanie łatwiejszych i tańszych rozwiązań systemowych: - Prostsza budowa. Dodatkowe źródło światła do podświetlania nie jest już potrzebne, jak również nie są potrzebne filtry dla różnobarwnych wyświetlaczy LCD. - Polimery tworzą ciągłą powłokę po procesie powlekania. W przeciwieństwie do nich kryształy LCD są ciekłe i tworzą małe komórki. - Nowa technologia nie opiera się na efekcie złożonej reorientacji (ciekłe kryształy modyfikują tylko transmisję światła], ale na właściwości świecenia materiału organicznego. To wszystko jest możliwe bez wprowadzania zakłóceń elektromagnetycznych. Wyścig leb w leb W prototypowych rozwiązaniach uzyskiwany jest współczynnik wypełnienia powierzchni czynnym elementem świecącym około 90%, co oznacza, że świecące piksele stanowią 9/10 powierzchni ekranu. "Uzyskanie małych odległości między poszczególnymi paskami elektrod w wyświetlaczach macierzowych jest naszą specjalnością" - twierdzi dr Georg Wittmann, inżynier materiałoznawca. Wśród konkurencji tylko Philips ogłosił gotowość sprzedaży pierwszych elementów polimerowych LED, zawierających 7-segmentowy wyświetlacz do prezentacji liter i cyfr. Natomiast Pioneer oferuje kolorowe wyświetlacze OLED do samochodowych odbiorników radiowych. Siemens, na targach elektronicznych CeBIT 1999, przyciągał uwagę jasno świecącym wyświetlaczem SmartCard. Trzy połączone firmy niemieckie wyprodukowały kartę kredytową, która informuje, ile pieniędzy zostało w elektronicznym portfelu. Współtwórcami byli: Covion Organie Se-miconductor z Frankfurtu -najbardziej znany europejski producent materiałów OLED, Giesecke & Devrient z Monachium - firma wiodąca w europejskim sektorze kart chipowych i Varta AG z El-lwangen, która wprowadziła do karty ultracienką baterię litową. Wielofunkcyjna karta nie potrzebuje już zewnętrznego czytnika. Mimo tego, iż w karcie znajduje się mikroprocesor, zasilanie, wyświetlacz i płaskie złącze kontaktowe, karta nadal pozostaje tak cienka i elastyczna jak każda konwencjonalna karta kredytowa. Karty te mają żywotność sięgającą 3 lat i są odporne na typowe narażenie mechaniczne. Siemens planuje w roku 2002 wprowadzenie do sprzedaży pasywnych wyświetlaczy macierzowych ze zintegrowanymi układami zasilania. Produkcja na dużą skalę rozpocznie się od monochromatycznych wyświetlaczy graficznych w rozmiarze do 2 cali. Wyświetlacze te będzie można stosować w komputerach pokładowych i innych urządzeniach. Niskie napięcie zasilania (poniżej 5 V] sprawia, że są one również idealne do telefonów komórkowych, page-rów i urządzeń zasilanych ba-teryjnie. Wkrótce pojawią się wyświetlacze świecące na niebiesko i czerwono, jak również wielokolorowe monitory. "Wkraczamy na bardzo atrakcyjny segment rynku, wart około czterech miliardów dolarów rocznie" - podkreśla Wolf. Naturalnie uwaga ta dotyczy całego rynku ekranów o płaskich wyświetlaczach, do których zaliczają się również nowoczesne 21-calowe monitory. Według Stanfordzkiego Instytutu Badawczego, na tym rynku w roku 2004 zostanie wydane na elementy 21 miliardów dolarów amerykańskich. Ku nowym granicom Trzeba jednak wykonać wiele eksperymentów zanim możliwe będzie tworzenie dużych monitorów, w pełni zdolnych do wyświetlania kolorów i grafiki. Już przy przekątnej wyświetlacza równej 8 cali jest ponad milion pikseli, które nie mogą byc pasywne, a mu- MifłiA mmin Rys. 3. Możliwości użycia organicznych świecących diod obejmujg zastosowanie do oświetlenia pojazdów, systemów nawigacyjnych i przenośnych minikomputerów do karty inteligentnej (SmartCard). 52 Elektronika Praktyczna 5/2002 PODZESPOŁY Poi 4. Korty płatnicze ze swi e c qcym i wy ś wi etl o czci m i zrobionymi z organicznych LED-ów szą być aktywowane bezpośrednio. ,,W tych aktywnych wyświetlaczach macierzowych, każdy punkt świetlny otrzymuje cienkowarstwowy tranzystor" - mówi Wittmann wyjaśniając szczegóły projektu tych monitorów. "Jest to dodatkowa warstwa krzemu polikrystalicz-nego obok katody i warstwy polimeru, która może być łatwo uzyskana w procesie litografii. Każdy piksel zawsze wypromieniowuje do otoczenia dokładnie taką ilość światła, jaka jest potrzebna do otrzymania wrażenia danej barwy". W wyniku tego, nie tylko możliwe jest tworzenie dużych powierzchni, ale również wydłuża się żywotność ekranów wyświetlaczy. Spowodowane jest to tym, że poszczególne punkty świetlne nie muszą być tak jasne, jak ich odpowiedniki w pasywnych wyświetlaczach matrycowych. Jednym z problemów było starzenie się polimerów, które są bardzo wrażliwe na zanieczyszczenia. Organiczne molekuły rozkładają się w kontakcie z wodą lub tlenem. Odpowiednie warunki są więc niezbędne podczas przygotowywania materiału. Złożoność procesów koniecznych dla produkcji komponentów OLED Fot. 5. Czy elektroniczne gazeta będzie wstanie odbierać sygnały z orbity? Tak, ale minie jeszcze trochę czasu, zanim jej czytelnicy będq mogli otrzymywać jej aktualizowaną wersję na elastycznym ekranie foliowym. Żywotność takich wyświetlaczy została podniesiona z niecałych 30 do ponad 10000 godzin nie ułatwia masowej produkcji. Komponenty muszą być produkowane w czystych pomieszczeniach, czasem wręcz w hermetycznie zamkniętych szklanych komorach zawierających atmosferę z gazu obojętnego lub próżnię. "Każdy produkt musi zostać obudowany bez dopuszczenia powietrza zanim opuści linię produkcyjną OLED" - podkreśla Wittmann. Pierwsze wyświetlacze OLED chronione były przed szkodliwym wpływem środowiska przez cienkie szkło. Jednak szkło jest kruche i nieelastyczne. To sprawia, że jest ono bezużyteczne do osłony elastycznych wyświetlaczy, które mogą zmieniać kształt. Aby ominąć tą trudność, inżynierowie pracują nad nieprzepusz-czającym powietrza plastikiem i kompozytami plastiku. Ze względu na ich zdolność do wytrzymania zgięcia o promieniu 4 cm, pierwsze wodo-i gazoodporne plastikowe laminaty o dobrej stabilności są już używane w kartach inteligentnych (SmartCard]. Nowe materiały umożliwiają także wprowadzenie elastycznych wyświetlaczy w monitorach. Jest fascynujące, że deska rozdzielcza w projektowanych samochodach nie zawiera już wydzielonych wyświetlaczy, ale sama jest elementem wyświetlającym. Na żądanie szybkościomierz zmienia się w system nawigacyjny, a najnowsze e-maile mogą być odczytane na tarczy zegara. "Świecące polimery są tylko wierzchołkiem góry lodowej, jeżeli chodzi o tę technologię półprzewodników" -podkreśla Rogler. "Plastiki wkrótce umożliwią nam nie tylko tworzenie innowacyjnych źródeł światła, ale też ich optoelektronicznego przeciwieństwa - baterii słonecznej. Optyczne pamięci, tranzystory, nawet mikroprocesory stworzone z syntetycznego materiału są już wyobrażalne. Organiczne półprzewodniki nie zastąpią technologii krzemowej , ale będą oferować niekosztowne rozwiązania dla wielu zastosowań". Birgit Zellmann Siemens AG 2001 D-80312 Munchen Dodatkowe informacje Materiały do artykutu udostępniła lirmaSYSTEMwww.lcd.elementy.pl. Elektronika Praktyczna 5/2002 53 SPRZĘT ^^^^^^h Generatory stanowią podstawowe wyposażenie pracowni elektronicznej. Obok multimetru, czy oscyloskopu, prędzej czy później zachodzi potrzeba wykorzystania ich w pomiarach. To, że jak cały sprzęt elektroniczny podlegają one postępowi technologicznemu nie oznacza, że stare sprawdzone konstrukcje należy odstawić do lamusa. W. L35B8 Generatory funkcyjne DF164XX Być może po takim wstępie zostanę źle zrozumiany. Spieszę więc wyjaśnić, że wcale nie uważam prezentowanych w tym artykule urządzeń za sprzęt prze-s tarzały. Generatory funkcyjne zostały opracowane wprawdzie już dość dawno temu, ale konstrukcja jest na tyle uniwersalna, że pewnie jeszcze długo podobne urządzenia będą produkowane... Chociaż w branży elektronicznej akurat trudno jest coś prognozować. Pewien mój nauczyciel dawał kiedyś żartobliwe wskazówki uczniom: "Chcesz zrobić generator, projektuj wzmacniacz. Chcesz zrobić wzmacniacz, projektuj generator". Choć było to mówione w żartach, to - mogę stwierdzić to z czystym sumieniem - każdy elektronik z podobnym problemem kiedyś się spotkał. Przecież wszyscy zaczynaliśmy swą karierę od budowy jakiegoś wzmacniacza, a sprzężenia z jakimi musieliśmy walczyć, spędzały nam sen z powiek. Podobnie zresztą, jak niemożność wzbudzenia polutowanego właśnie generatora. W artykule zaprezentujemy rodzinę laboratoryjnych generatorów funkcyjnych firmy NDN. Są to modele DF1641A, DF1641B i DF1642B, przy czym DF1641B i DF1642B różnią się jedynie zakresem generowanych częstotliwości, a co za tym idzie, również ich podziałem na podzakresy. Wszystkie posiadają jednolitą linię wzorniczą, są estetycznie wykończone, cechują się ergonomicznie rozmieszczonymi elementami regulacyjnymi na panelu czołowym. Najważniejsze parametry elektryczne zebrano w tab. 1. Podobne, ale nie takie same Prezentowane tu generatory odznaczają się bardzo podobnymi cechami funkcjonalnymi. Różnice polegają na przyjętych sposobach ustawiania parametrów sygnału wyjściowego, co z pewnością ma odbicie także w rozwiązaniach układowych. W generatorach DF1641B i DF1642B wszystkie regulacje, oprócz napięcia wyjściowego, dokonywane są przy użyciu przycisków. W modelu DF1641A służą do tego potencjometry. Czy wygodniej jest kręcić wieloobroto-wym potencjometrem, czy naciskać klawisz? Na to pytanie musi sobie odpowiedzieć sam użytkownik. To trochę kwestia przyzwyczajenia, trochę wygody. Aby w generatorach serii "B" ustawić żądaną częstotliwość, trzeba przede wszystkim wybrać odpowiedni zakres. Zakresy są zmieniane dekadowo. W DF1641B częs- totliwość bazowa wynosi 3Hz, w DF1642B natomiast 6Hz. Następnie klikając lub przytrzymując odpowiednie klawisze, doprowadza się do uzyskaniu na wyjściu odpowiedniej częstotliwości. Czynność tę ułatwia lub wręcz umożliwia obecność 5-cyfrowego wyświetlacza współpracującego z wewnętrznym częstościomierzem. W generatorze DF1641A częstotliwość, jak już wspominałem, ustawia się potencjometrem. W tym przypadku jest to precyzyjny p ot e nc j om e tr 5 -ob ro to wy. Do badań z użyciem generatorów na ogół wystarczają trzy rodzaje przebiegów: sinus, prostokąt i trójkąt. Wszystkie omawiane tu modele potrafią je wygenerować. Drobna różnica polega na sposobie ich wybierania. W DF1641B i DF1642B służy do tego jeden przycisk. Kolejne jego naciśnięcia powodują cykliczne przechodzenie pomiędzy poszczególnymi kształtami przebiegów. W DF1641A każdy z nich ma przypisany swój klawisz. Zauważyłem, że w tym modelu przełączenia powodują nieznaczną zmianę częstotliwości sygnału wyjściowego. W DF1641B i DF1642B zmiana występowała tylko w przypadku włączania prostokąta. W instrukcji, oprócz wymienionych wyżej typów przebiegów jest również wymieniony przebieg piłokształtny. Uzyskuje się go poprzez regulację symetrii przebiegu piłokształtnego. Opcja ta jest dostępna w każdym z prezentowanych modeli. W DF1641B i DF1642B służą do tego dwa klawisze. Pierwszym z nich włącza się możliwość regulacji, drugim zaś skokowo, w 62 krokach wybiera się odpowiedni kształt. Niestety nie ma żadnej informacji, w którym miejscu skali jesteśmy podczas regulacji. Na nieszczęście postępuje ona w jedną stronę. Na wszelki wypadek więc dobrze jest liczyć sobie po cichu liczbę naciśnięć, bo o ile w środku zakresu można zatrzymać się w położeniu "na oko" odpowiadającym potrzebom, to jeśli nie wyhamu- Elektronika Praktyczna 5/2002 SPRZĘT Tabela 1. Podstawowe parametry generatorów z rodziny DS164xx. Parametr DF1641A DF1641B DF1G42B Pasmo częstotliwości 0 1Hz 2MHz 0.1Hz 3MHz 01Hz:6MHz Liczba podzakresów 7 Generowane przebiegi sinus, prostokąt, Trójkąt, piła Czas narastania przebiegu (prostokąt) <100ns Zniekształcenia (sinus) <1%(10Hz 100kHz) <2%(10Hz 100kHz) Wyjście synchronizacji TTL/CMOS TTL (obciążalność 20 bramek) Impedancja wyjściowa generatora 50ną10% Amplituda >20Vpp (bez obciążenia) Tłumik sygnału wyjściowego 20dB, 40dB 20dB, 40dB, 60dB Składowa stała 0 ą10V Zakres pomiaru częstotliwości 1Hz 10MHz Irnpedancj a wejściowa częstościomierza 1MQ/20pF Napięcie wejściowe częstościomierza <150V(AC+DC)ztłumikiem Tłumik wejściowy częstościomierza 20dB Zasilanie 220Vą10%,50Hzą2Hz, 10VA Wymiary 280x255x1 OOmm Waga 3kg 3kg 3kg jemy w porę. przy końcu, czeka nas ponowne przelatywanie wszystkich pozycji. Przytrzymanie przycisku powoduje zwiększenie kroku regulacji. Ustawianie symetrii w nieznacznym stopniu wpływa na częstotliwość wyjściową. Operacja ta wykonywana, gdy jest wybrany sygnał prostokątny, powoduje zmianę jego współczynnika wypełnienia. Jeśli opcja ustawiania symetrii jest wyłączona, na wyjściu uzyskujemy przebieg o wypełnieniu 50%. W generatorze DF1641A analogiczną regulację przeprowadza się za pomocą potencjometru. W tym przypadku jednak, trudno mówić o jej znikomym wpływie na częstotliwość wyjściową. Zmienia się ona bardzo, bardzo znacznie. Generatory rodziny DFl64xx posiadają wyjścia o impedancji 5 OD.. Standardowo wszystkie rodzaje przebiegów są na nie podawane bez składowej stałej, lecz oczywiście istnieje możliwość wprowadzenia offsetu. Poziom sygnału jest regulowany dwustopniowo. W generatorach DF1641B i DF1642B wstępnego ustawienia dokonuje się tradycyjnie jednym klawiszem włączającym kolejno odpowiednie sekcje tłu- mika, w DF1641A każda sekcja ma swój własny klawisz. Dokładną regulację przeprowadza się zawsze potencjometrem. Pewną wygodą może być 3-cyfrowy wskaźnik bieżącej wartości między szczytowej napięcia, zastosowany w przyrządach serii "B". Trzeba jednak pamiętać o tym, że rzeczywiste napięcie na obciążeniu będzie się zmieniać wraz ze zmianą jego impedancji. Dla obciążenia 5CQ (dopasowanie), będzie to połowa wyświetlanej wartości. W niektórych pomiarach, pomocna może się okazać możliwość sterowania częstotliwością sygnału wyjściowego za pomocą sygnału zewnętrznego. Do tego celu służy specjalne wejście "VCF". W modelach "A" znajduje ono się z przodu, a w modelach "B" z tyłu obudowy. W instrukcji jest napisane, że zakres przestraja-nia wynosi 1000:1, jednak testy tego nie potwierdziły. W badanych egzemplarzach stosunek ten wynosił ok. 400:1. Cechą wspólną całej rodziny opisywanych generatorów, jest możliwość pomiaru częstotliwości sygnałów zewnętrznych, dołączanych poprzez specjalnie do tego celu przeznaczone wejście. Dzięki 20 dB Ś *Ś
DF1642B tłumikowi można doprowadzać do niego napięcia do 150 V (DC+AC). Pole odczytowe w rodzinie "B" jest 5-cyfrowe i zawsze wynik jest wyświetlany z taką dokładnością. W modelu DF1641A wyświetlacz jest 6-cyfrowy lecz dokładność wskazań zależy od częstotliwości. Dla f<100 Hz wynik jest wskazywany na trzech cyfrach, następnie do 1 MHz na czterech i dalej do lOMHz na pięciu. Podczas pomiarów trzeba czuwać, aby wartość napięcia nie była zbyt duża, gdyż wskazania wtedy stają się przypadkowe. Najbezpieczniej jest rozpoczynać pomiary zawsze od włączonego tłumika. Zerowy stan wyświetlacza będzie oznaczał, że sygnał ma zbyt małą wartość i trzeba wtedy tłumik wyłączyć. Jak już wspominałem, w modelu DF1641A do ustawienia wartości częstotliwości, napięcia wyjściowego, offsetu i symetrii sygnału służą potencjometry. W niektórych przypadkach regulacja jest możliwa dopiero po włączeniu sprzężonych z nimi przełączników. Dodatkowo jednym z potencjometrów można regulować wartość napięcia na wyjściu synchronizacji. W pozycji wyłączonej, na wyjście jest podawany przebieg TTL. Dystrybutor generatorów DSl64xx dołącza do wyrobu krótką instrukcję obsługi. Sprzęt jest bardzo prosty w użyciu, więc ulotka formatu A4 w zupełności wystarcza do zapoznania się z parametrami technicznymi i nauczenia się z niej obsługi. Opis poszczególnych elementów regulacyjnych jest dla lepszego zrozumienia oparty na ilustracji płyty czołowej generatora. Niestety na rysunku zamieszczonym w instrukcji do DF1641A wkradł się drobny błąd, polegający na zamianie miejscami dwóch potencjometrów. Nie dyskwalifikuje to oczywiście sprzętu i nie uniemożliwia korzystania z niego. Warto jednak błąd ten poprawić, zwłaszcza, że można to zrobić niewielkim kosztem. Przy okazji należałoby jeszcze wyjaśnić znaczenie wyłącznika sprzężonego z potencjometrem regulacji napięcia wyjściowego. Według opisu zamieszczonego w instrukcji powinien on zmieniać fazę sygnału, jednak testując generatory nie stwierdziłem jakiegokolwiek skutku jego położenia. Przedstawione generatory z pewnością zadowolą wielu użytkowników. Z powodzeniem będą mogły być wykorzystywane w serwisach, a nawet firmach produkcyjnych. Nie znajdą się natomiast na stanowiskach zautomatyzowanych pomiarów, a to ze względu na brak jakiegokolwiek interfejsu komunikacyjnego. Być może zostały celowo umieszczone w tej klasie przyrządów. Dzięki temu można było obniżyć cenę za brak elementu, który i tak w wielu przypadkach nie byłby wykorzystywany. Jarosław Doliński, EP jaroslaw.dolinski@ep.com.pl Dodatkowe informacje Prezentowane w artykule urządzenia udostępniła redakcji firma NDN, tel. (22)641-15-47, www.ndn.corn.pl. Elektronika Praktyczna 5/2002 SPRZĘT Przyjęło się, że karta z magistralą ISA, to coś archaicznego, ale prostego w użyciu dla osób pragnących napisać własne oprogramowanie i korzystających z systemu operacyjnego DOS. Czy inaczej jest w przypadku kart PCI? Obsługa kart DOS, Turbo Pascal i nowa karta pomiarowa PCI Okazuje się, że w typowych zastosowaniach różnica nie jest aż tak znacząca. Aby tego dowieść przedstawiono pokrótce specyfikację standardu magistrali i urządzeń PCI oraz zaprezentowano dwie karty kontrolno-pomiarowe firmy Advantech, ilustrując przy tym sposób ich obsługi przykładami krótkich programów napisanych w języku Turbo Pascal. Magistrala i urządzenia PCI 32-bitowa magistrala PCI [Peńpheńal Component Interconnect) opracowana została przez firmę Intel. Zgodnie ze specyfikacją (v 2.1), w jednym systemie może współpracować do 256 magistral PCI, przy czym każda z nich może obsługiwać do 32 urządzeń PCI, a każde urządzenie może pełnić do 8 funkcji. Magistrala może pracować z częstotliwością do 66MHz, co daje przepustowość w granicach 132 Mb/s (dla porównania - w przypadku magistrali zewnętrznej ISA przepustowość wynosi jedynie 8,33Mb/s). Urządzenia PCI wyposażone są w 256-bajtową pamięć konfiguracyjną, w której przechowywane są informacje niezbędne do ich skonfigurowania. Pamięć ta podzielona jest na dwie części: - początkowe 64 bajty są przeznaczone na nagłówek, którego struktura jest jednakowa dla wszystkich urządzeń PCI (z wyjątkiem układów sprzęgających dwie magistrale PCI), - pozostałe 192 bajty przeznaczono na rejestry specyficzne dla danego urządzenia. Strukturę nagłówka pamięci konfigu-racyjnej przedstawiono w tab. 1 (kolorem szarym oznaczono rejestry, które muszą być predefiniowane). Konfiguracja urządzeń PCI, nie wymagająca jak wiadomo zwór konfiguracyj-nych (było to typowe rozwiązanie stosowane w kartach rozszerzeń ISA) i polegająca na wpisaniu odpowiednich wartości do poszczególnych (przyporządkowanych danemu urządzeniu) rejestrów przebiega automatycznie podczas uruchomienia komputera, przed rozpoczęciem testów POST [PowerOnSelfTest). Mechanizmy dostępu do pamięci konfiguracyjnej urządzeń PCI Ze względu na wymaganą dużą pojemność, pamięć konfiguracyjną urządzeń PCI nie została umieszczona w przestrzeni wejścia-wyjścia. Dlatego magistrala PCI wykorzystuje trzy obszary do stepowe: pamięć operacyjną, przestrzeń wejścia-wyjścia i pamięć konfiguracyjną. Aby zachować zgodność z wcześniejszymi systemami i umożliwić implementację magistral ISA i EISA w systemach PCI, zostały zdefiniowane odpowiednie mechanizmy dostępu do pamięci konfiguracyjnej urządzeń PCI, wykorzystujące porty umieszczone w przestrzeni wejścia-wyjścia. Jednym z mechanizmów jest wykorzystanie procedur BIOS. Specyfikacja PCI 2.1 wprowadziła funkcję Blh do przerwania programowego INT lAh. Udostępnia ona wiele podfunkcji umożliwiających między innymi: Tab. 1. Struktura nagłówka pamięci konfiguracyjnej urządzenia PCI 3 2 1 0 Identyfikator urządzenia Identyfikator producenta 00 Rejestr stanu Rejestr komend 01 Kod klasy urządzenia Nr wersji 02 BIST Typ nagłówka Minimalny Rozmiar czas linii transmisji cache 03 Adres bazowy 0 04 Adres bazowy 1 05 Adres bazowy 2 06 Adres bazowy 3 07 Adres bazowy 4 08 Adres bazowy 5 09 WskaźnlkCardBusCIS 10 Dodatkowy Identyfikator urządzenia Dodatkowy Identyfikator producenta 11 Adres bazowy rozszerzenia ROM 12 Zarezerwowane 13 Zarezerwowane 14 Częstość Długość transmisji Linia INT Linia IRO 15 Elektronika Praktyczna 5/2002 57 SPRZĘT - wykrycie wersji PCI BIOS, - wykrycie urządzenia PCI, - odczytanie i zapisanie danych w rejestrach konfiguracyjnych urządzenia PCI, - odczytanie i zapisanie informacji dotyczących przypisania kanałów przerwań. Odczytanie adresu bazowego przydzielonego danemu urządzeniu PCI (w naszych rozważaniach będzie to oczywiście wybrana karta kontrolno-pomiarowa) okazuje się więc niezbyt skomplikowane. Teoretycznie (przy założeniu, że nasz BIOS jest zgodny ze specyfikacją PCI 2.1) konieczne staje się wykorzystanie jedynie dwóch podfunkcji. Pierwszą z nich jest podfunkcja FIND_PCI_DEVICE wyszukująca w systemie urządzenie wyspecyfikowane jednoznacznie przez identyfikator producenta [VendorID - szesnastobitowa wartość określana przez PCI SIG [Special Interest Group) oraz identyfikator urządzenia [DeviceID - szesnastobitowa wartość określana przez producenta urządzenia). W przypadku jego znalezienia (oczywiście w sytuacji występowania kilku identycznych urządzeń procedurę należy powtarzać inkrementując przy tym wartość indeksu urządzenia podawaną w rejestrze SI, poczynając od wartości "0") w rejestrze BX zwracana jest wartość będąca argumentem pozostałych podfunkcji dotyczących dostępu do pamięci konfiguracyjnej urządzenia PCI i określająca numer magistrali PCI (w produkowanych obecnie komputerach klasy PC opartych na architekturze PCI wykorzystywana jest tylko jedna taka magistrala), numer urządzenia oraz numer funkcji (istotny w przypadku zintegrowanych urządzeń mogących pełnić kilka funkcji). Dysponując tymi danymi jesteśmy w stanie, za pomocą dwukrotnego wykorzystania podfunkcji READ_CON-FIG_WORD (rozważamy cały czas wykorzystanie systemu operacyjnego DOS i języka Turbo Pascal, z poziomu którego nie mamy niestety możliwości dostępu do 32-bitowych rejestrów) odczytać wartość przydzielonych adresów bazowych (w uzyskanych 32-bitowych wartościach bit 1 jest bitem zarezerwowanym, natomiast bit 0 określa czy adres umieszczony jest w przestrzeni wejścia/wyjścia, wartość 1 czy w pamięci operacyjnej, wartość 0). Przykładowy program odczytujący zawartość rejestrów adresów bazowych zawiera plik pci.pas (dostępny po adresem iviviv.advantecii.p7 oraz na płycie CD-EP5/2002B). Po odczytaniu zawartości wszystkich rejestrów adresów bazowych i wybraniu właściwej wartości (urządzeniu może być przydzielonych kilka adresów bazowych) możemy przystąpić do właściwej obsługi urządzenia PCI, która może Mostek PCI Szyna Adresowa INT Układ generowania przerwań Dekoder adresów Licznik 1 Licznik 2 ._nnn_10MHz Szyna danych Układ sterowania jrzetwomikE A/C <Ś>;LŚ! tfl Wybór kanału Zewnętrzne wyzwalanie Optoizolacja CC CC Rys. 1 Ci^ Optoizolacja ;~J; Optoizolacja ^Optoizolacja
Przetwornik A/C A:0 A: 31 się nie różnić od obsługi standardowej karty ISA z adresem bazowym ustawionym za pomocą zwór konfiguracyjnych. Dla przykładu przyjrzymy się dwóm wybranym kartom kontrolno-po-miarowym firmy Advantech. Karta PCI-1762: wejścia/wyjścia cyfrowe Jest to jedna z najprostszych kart kontrolno-pomiarowych z magistralą PCI spośród dostępnych w ofercie Ad-vantech, lecz wykorzystując ją z programem wykonującym odpowiedni algorytm (trzeba go przygotować) można zbudować prosty układ sterowania sekwencyjnego. Karta wyposażona jest w szesnaście wejść cyfrowych z optoizolacja 2500VDC (z szerokim zakresem napięć wejściowych 1O...5OVDC) oraz szesnaście wyjść przekaźnikowych (kon figur owalnych za pomocą zwór jako wyjścia NO lub NC). Dodatkowo umożliwia także wywoływanie za pomocą dwóch wejść cyfrowych (IDI_0, IDI_8) żądanie przerwania. W przestrzeni adresowej wejścia-wyj-ścia karta wykorzystuje sześć szesna-stobitowych rejestrów. Ich rozmieszczenie przedstawiono w tab. 2. Obsługa karty jest więc bardzo prosta. Trzy pierwsze rejestry pozwalają na włączenie/wyłączenie poszczególnych przekaźników, odczyt ich stanu, oraz odczyt stanu wszystkich szesnastu wejść cyfrowych. Wartość odczytywana z rejestru Board ID umożliwia identyfikację karty spośród kilku identycznych kart pracujących w jednym komputerze (czterobitowa wartość ustawiana jest za pomocą DIP-switch'a znajdującego się na karcie). Dwa pozostałe rejestry związane są z możliwościami karty dotyczącymi generowania przerwań (czyli umożliwiają między innymi włączenie/ wyłączenie tej funkcji, ustawienia aktywnego zbocza sygnału wywołującego przerwanie, odczyt statusu, kasowanie bitu żądania obsługi przerwania). Kod źródłowy przykładowego programu wykonującego odczyt stanu wejść cyfrowych i ustalającego na tej podstawie stan wyjść przekaźnikowych zawarto w pliku pcil7G2.pas (dostępny pod adresem www.advantech.pl oraz na płycie CD-EP5/2002B). Karta PCI-1713: wejścia analogowe Karta przeznaczona jest do wykonywania szybkich pomiarów sygnałów analogowych. Jej schemat blokowy przedstawiono na rys. 1. Kartę wyposażono w przetwornik analogowo-cyfro-wy o rozdzielczości 12 bitów i czasie konwersji umożliwiającym wykonywania pomiarów z częstotliwością do lOOkHz. Zastosowane multipleksery mogą dołączyć aż 32 wejścia analogowe ze wspólną masą, które dodatkowo mogą być konfigurowane jako wejścia różnicowe (co wiąże się jednak z dwukrot- 58 Elektronika Praktyczna 5/2002 SPRZĘT Tab. 2. Rozmieszczenie rejestrów karty PCI-1762 w przestrzeni adresowej wejścia-wyjścia Przemiesz-czenie Rejestr odczytywany Rejestr zapisywany 0 Relay Output Status Relay Output 2 Isolated Digital Input - 4 Board ID Register - 6 Interrupt Status Register Interrupt Control Register nym zmniejszeniem liczby dostępnych wejść). W karcie zastosowano pełną izolację galwaniczną części analogowej (przetwornik A/C wraz z multiplekserami analogowymi i programowalnym wzmacniaczem pozwalającym na regulację wejściowego zakresu napięciowego) od części cyfrowej, w której znajdują się między innymi: układ wyzwalania przetwornika A/C (zbudowany w oparciu o układ programowalnych liczników 82C54, pozwalający dodatkowo na wyzwalanie przetwornika A/C za pomocą zewnętrznego sygnału EXT-TRG), pamięć FIFO (pozwalająca na buforowanie otrzymanych próbek), układ generowania przerwań (istnieje możliwość generowania sygnału żądania przerwania po wykonaniu pojedynczego pomiaru lub po przepełnieniu połowy pamięci FIFO) oraz układy sterujące odpowiedzialne za wybór kanału pomiarowego i wzmocnienia. Ze względu na bardziej rozbudowaną wewnętrzną strukturę, karta zajmuje w przestrzeni adresowej wejścia-wyjścia nieznacznie większy obszar niż prostsza karta wejść-wyjść cyfrowych. Rozmieszczenie wykorzystywanych przez nią rejestrów przedstawiono w tab. 3. W celu poznania sposobu stosowania tej karty do wykonywania szybkich pomiarów analogowych należy przeanalizować program, którego kod źródłowy zawiera plik pcil713.pas (dostępny po adresem www.advantech.pl oraz na płycie CD-EP5/2002B). Program pozwala na wykonanie z określoną częstotliwością próbkowania zadanej liczby pomiarów analogowych w wybranym kanale wejściowym. Pierwszym krokiem wykonywanym przez program jest k on figurowanie układu wyzwalania przetwornika A/C. Jak już wspomniano, jest on zbudowany w oparciu o układ programowalnych liczników 82C54, którego dwa pierwsze liczniki połączono kaskadowo, a na wejście pierwszego z nich podano sygnał zegarowy o częstotliwości lOMHz. Wprowadzając liczniki w drugi tryb pracy i programując odpowiednio wartości początkowe obydwu liczników jesteśmy w stanie ustalić częstotliwość próbkowania zgodnie ze swoimi wymaganiami. Drugim niezbędnym krokiem jest skonfigurowanie układów wyboru kanałów i wzmocnień (wprowadzane wartości zapisywane są w pamięci kon-figuracyjnej SRAM i pozwalają na wykonywanie pomiarów w wielu kanałach pomiarowych ustawionych na różne zakresy wejściowe). Każdemu wykorzystywanemu kanałowi pomiarowemu należy przyporządkować odpowiedni współczynnik wzmocnienia (zgodnie z tabelą zamieszczoną w instrukcji użytkownika) i wpisać go do rejestru A/D Channel Rangę Setting, po uprzednim wpisaniu numeru tego kanału do rejestrów Start Channel i Stop Channel, które tworzą w sumie szesnastobitowy rejestr MUX Control. Po wykonaniu tej procedury do rejestrów należy wpisać numery określające kanały, z których będziemy pobierać próbki (w przykładowym programie wykorzystywany jest tylko kanał AIO, dlatego też wartość "0" wpisana została pod adresy dwBase-Addr+4 i dwBaseAddr+5). Po wykonaniu tych kroków pozostaje tylko wpisać odpowiednią wartość do rejestru Control Register, co pozwoli na rozpoczęcie wykonywania pomiarów (w przykładowym programie wpisywana wartość 02h oznacza korzystanie ze sprzętowego wyzwalania pomiarów za pomocą programowalnego układu 82C54, bez obsługi przerwań sprzętowych). Po rozpoczęciu wykonywania pomiarów karta działa autonomicznie - automatycznie wykonując konwersję A/D i "wrzucając" uzyskane w ten sposób wyniki do pamięci FIFO. Ponieważ jej pojemność jest ograniczona, to program w odpowiednim czasie odczytuje jej zawartość, tak aby nie pobrane jeszcze wartości nie zostały zagubione. Do tego celu wykorzystywany jest dziewiąty bit rejestru Status Register (flaga FIFO Half-Full), ustawiany w przypadku wypełnienia połowy (pierwszej lub drugiej) dostępnej pamięci FIFO. W przypadku od- Tab. 3. Rozmieszczenie rejestrów karty PCI-1713 w przestrzeni adresowej wejścia-wyjścia Przemieszczenie Rejestr odczytywany Rejestr zapisywany 0 A/D Data Software A/D Trigger 2 - A/D Channel Rangę Setting 4 - MUX Control 6 Status Register Control Register 8 - Clear Interrupt and FIFO - - 24 82C54CounterO 82C54 Counter 0 26 82C54 Counter 1 82C54 Counter 1 28 82C54Counter2 82C54 Counter 2 30 - 82C54 Counter Control czytania tego rejestru z ustawionym bitem dziewiątym, program przepisuje zawartość połowy pamięci FIFO do swojej tablicy danych. Podsumowanie Okazuje się, że w przypadku kart PCI, dla których dysponujemy opisem wykorzystywanych w przestrzeni adresowej wejścia/wyjścia rejestrów, obsługa z poziomu DOS nie jest rzeczą skomplikowaną. Zaznajomiwszy się z procedurami dostępu do pamięci konfiguracyjnej urządzeń PCI jesteśmy w stanie nie tylko odczytywać jej zawartość, ale także zmieniać wartości zapisanych w niej parametrów (np. w przypadku konieczności zmiany adresu bazowego). Korzystając z systemu operacyjnego DOS, który jak wiadomo mimo swojego już dość poważnego wieku ma też swoje zalety, możemy nadal budować systemy akwizycji danych i sterowania. Jacek Bonecki, ElmarkAutomatykaSp.z o.o. advantech@elmark.com.pl Dodatkowe informacje W artykule wykorzystano fragmenty książki "Anatomia PC" (Piotr Metzger, wyd. HELION 1996). Kody źródłowe przytoczonych w artykule programów dostępne są w Internecie pod adresem http://www.advantech.pl oraz na ptycie CD-EP5/ 2002B. Dystrybutorem sprzętu pomiarowego firmy Advantech jest Elmark Automatyka Sp. z o.o. 60 Elektronika Praktyczna 5/2002 Internetowy interfejs dla mikrokontrolera Artykułem na słr. 47 kończymy opis internetowego interfejsu dla mikrokontrolera, w którym zastosowaliśmy sprzętowy stos TCP/IP w postaci specjalizowanego układu iChip firmy Seiko, Domowa stacja meteo ze zdalnym pomiarem temperatury Dokończenie pierwszej części artykułu, w którym prezentujemy mikroprocesorowq stację pogodowq, znajduje się na słr. 39. Miniprojekty Trzy łatwe do wykonania miniprojekty przedstawiamy na słr. 75 i 76. Zasilacz laboratoryjny sterowany cyfrowo > W ostatniej części artykułu przedstawiamy sposób oprogramowania mikrokontrolera sterujqcego pracq zasilacza oraz windowsowy program umożliwiajqcy programowanie zasilacza z komputera PC. Słr. 44. Generatory funkcyjne DF164xx Na słr. 54 przedstawiamy nowq na polskim rynku rodzinę laboratoryjnycń generatorów funkcyjnych. Zdalne sterowanie za pomocq telefonu komórkowego Siemens S35 Na słr. 35 prezentujemy sposób dołqczenia telefonu komórkowego do sterownika mikroprocesorowego, który za jego pomocq wysyła komunikaty SMS. Mówiqcy termometr Niezwykle pomysłowe rozwiqzanie - po raz pierwszy na łamach EP termometr informuje o temperaturze ludzkim głosem... Słr. 21. Świat plastikowych wyświetlaczy > W przeglqdowym artykule przedstawiamy nowoczesnq technologię wyświetlania kolorowych obrazów. Słr. 51. Elektronika Praktyczna 5/2002 IfiTOUP11! Wonderware InTouch - A oprogramowanie SCADA Na słr. 127 przedstawiamy możliwości jednego z najnowocześniejszych na polskim rynku pakietów SCADA. Obsługa kart PCI - DOS, Turbo Pascal i nowa karta pomiarowa PCI Tajniki stosowania kart interfejsowych ze złqczem PCI przedstawiamy na słr. 57. Zestawy uruchomieniowe do transceiverów SmartRF ^ CC400, CC900iCC1000 Radiowe transceivery firmy - Chipcon (opisane w EP1/2002) wzbudziły wśród naszych Czytelników ogromne zainteresowanie. 4 Na słr. 61 przedstawiamy zestawy ewaluacyjne dla trzech najpopularniejszych układów z oferty Chipcona. w Ąi (o Chipcon IKA Nr 5(113) maj 2002 Projekty, System NET51, część 1 ............................................................. 14 Mówiqcy termometr................................................................ 21 tlSC-ló -jak sobie zrobić mikroprocesor...............................29 Zdalne sterowanie za pomocq telefonu komórkowego Siemens S35, część 1................................................................ 35 Domowa stacja meteo ze zdalnym pomiarem temperatury, część 2............................................................... 39 Zasilacz laboratoryjny sterowany cyfrowo, część 3............44 Internet owy interfejs dla mikrokontrolera, część 3..............47 Wzorcowy generator kwarcowy............................................ 75 Elektroniczny bezpiecznik do dzwonka.................................75 Wykrywacz przewodów sieciowych......................................76 Automatyka SYSMACCJl - miniaturowe sterowniki PLC........................ 125 Wonderware InTouch - oprogramowanie SCADA............ 127 Sprzęt ^^^^^^^^^^^^^^^^^^^^^ Generatory funkcyjne DF164xx............................................... SA Obsługa kart PCI - DOS,Turbo Pascal i nowa karta pomiarowa PCI......................................................................... 57 Podzespoły Świat plastikowych wyświetlaczy...........................................51 Zestawy uruchomieniowe do transceiverów SmartRF CC400.CC900 i CCI000.......................................... 61 Nowe Podzespoły..................................................................... 67 Projekty Czytelników Obsługa przetwornika A/C AYT-1085 pod Linuksem .......... 83 Programowany dzielnik częstotliwości..................................84 Z kraju i ze świata........................................................111 Kramik+Rynek................................................................89 Listy ....fTTTTTTTTTTT^TTTTTTTTTTTTTTTT^ Ekspresowy Informator Elektroniczny.....................107fl Wykaz reklamodawców............................................1 Elektronika Praktyczna 5/2002 Chipcon PODZESPOŁY W styczniowym numerze EP z tego roku zaprezentowaliśmy Czytelnikom jednoukładowe transceivery firmy Chipcon. Przedstawiliśmy podstawowe parametry układów CC400, CC900 i CC1000, omówiliśmy aplikację firmową jednego z nich oraz wspomnieliśmy o oprogramowaniu narzędziowym służącym do konfigurowania układów. Czas więc na zajęcia praktyczne. Zestawy uruchomieniowe do transceiverów SmarłRF CC400, CC900 i CCI 000 Firma Chipcon, w celu promowania swoich wyrobów, opracowała zestawy uruchomieniowe do wszystkich produkowanych przez siebie transceiverów. Kaidy typ układu ma własny starter kit. We wszystkich zestawach znajduje się para płytek ewaluacyjnych, będących gotowymi do użycia modułami nadajnika/odbiornika, wyposażonymi w niezbędne oprzyrządowanie. W skład zestawów wchodzą takie: ćwierćfalowe anteny prętowe, przejściówki SMA/ ENC, kable łączące płytki z komputerem PC, dyskietka z programem SmartRF Studio wraz z instrukcją oraz noty katalogowe zastosowanych układów. W przypadku układów CC400 i CC900 w zestawie znajdziemy dodatkowo po 5 sztuk próbek, które mośna "uśyć podczas zapoznawania się z tymi niewątpliwie atrakcyjnymi układami. Program SmartRF Studio mośe być wykorzystany dwojako. Po pierwsze, słuśy do konfigurowania transceiverów na płytkach ewaluacyjnych, a po drugie, mośna go wykorzystywać jako swego rodzaju kalkulator do obliczania wartości elementów we własnej aplikacji. Z zaprojektowaniem toru transmisyjnego mośe więc poradzić sobie nawet osoba nie mająca zbyt du-śego doświadczenia w tej dziedzinie, ale powiedzmy sobie szczerze - trochę na elektronice powinna się znać. Przed rozpoczęciem prób warto krótko przypomnieć sobie, czym się charakteryzują poszczególne typy układów. Odpowiednie zestawienie przedstawiono w tab. 1. Szczegóły mośna znaleźć w dokumentacji zamieszczonej na stronie producenta oraz na płycie CD-EP5/2OO2E. Jak widać, układy CC400 i CC900 są bardzo podobne, natomiast CClOOO stanowi jakościowo zupełnie nowy produkt, opracowany z wykorzystaniem wcześniejszych doświadczeń Chipcona. Wynikają z tego równieś podobieństwa i róśnice odpowiednich płytek ewaluacyjnych. Wszystkie mają wymiary 100x53mm, nie są obudowane, więc w narośnikach umieszczono nóśki mające zapobiec ewentualnym przypadkowym zwarciom lub uszkodzeniom obwodu drukowanego. Na jednej z krótszych krawędzi płytki jest zamontowane gniazdo do podłączenia komputera PC poprzez port równoległy, słuśącego do ustawiania parametrów pracy trans-ceiverów. Obok niego znajduje się łączówka śrubowa słuśąca do doprowadzenia zasilania. Jedno z wejść jest Tab. 1. Zestawienie parametrów scalonych transceiwerow produkcji Chipcona ICLK_>- CC4D0 CC900 CC1000 Moc 25mW(14dBm) programowana z krokiem 1 dB 2 5mW(4dBm) programowana zkrokiem 1 dB 10mW(10dBm) programowana zkrokiem 1 dB Czułość -112dBm dla stopy błędów 10"3 -110dBrn dla stopy błędów 10"3 -110dBtn dla stopy błędów 10-3 (2 4kbps) Częstotliwość pracy 300 500MHz 800 1000MHz 300 1000MHz Krok programowania częstotliwości 5kHz 250Hz 250Hz Modulacja FSK FSK FSK, FSK z kształtowaniem widma Odstęp częstotliwości dla danych o wartościach "0"i "1" 2 100kHz programowany z krokiem 1 Hz 1 200kHz 0 65kHz programowany zkrokiem 250Hz Prędkość Transmisji 9 6kbit/s = = 19 2kbauddlakodu Manchester 9 6kbit/s = = 19 2kbauddlakodu Manchester 76 8kBaud = = 76 Skbit/s dla kodu NRZ Możliwość pracy z przeskokiem częstotliwości nośne] + + + Napięcie zasilające 27 3 3V 27 3 3V 23 36V Obudowa SSOP-28 SSOP-28 TSSOP-28 Elektronika Praktyczna 5/2002 61 PODZESPOŁY Rys. 2 przeznaczone dla typowego w układach Chipcona napięcia 3V. Jest też możliwość skorzystania ze stabilizatora znajdującego się na płytce. W tym przypadku do osobnego wejścia doprowadza się napięcie zasilające o wartości mieszczącej się w przedziale 4...10V. Trzeba pamiętać o odpowiednim ustawieniu specjalnego przełącznika hebel-kowego znajdującego się na płytce w pobliżu łączówki. Zasilanie należy podłączać rozważnie, gdyż pomylenie zacisków lub polaryzacji może doprowadzić do zniszczenia układów. Produkty Chipcona zostały zaprojektowane z myślą o zastosowaniu ich w sprzęcie przenośnym, najczęściej zasilanym z baterii. W takich urządzeniach jednym z istotniejszych parametrów jest wartość prądu zasilającego. Prowadząc próby na płytkach ewalua-cyjnych można go kontrolować, po wcześniejszym dołączeniu amperomierza do wydzielonych końcówek łączówki zasilania. Jeśli nie korzystamy z tej możliwości, zamiast amperomierza powinna być założona zworka. W ten sposób można bardzo łatwo przekonać się o tym, jak pobór prądu zasilania zależy od np. mocy nadawania czy klasy pracy wzmacniacza mocy. A zależność jest i to dość silna. Przy badaniu przykładowo modułu z układem CC400 okazało się, że pracując jako nadajnik z mocą OdBrn (lmW) w klasie C pobierał prąd 31,3mA, podczas gdy w klasie A prąd ten wynosił 64,3mA. Przełączenie układu "w stan power down z wyłączonym oscylatorem powodowało zmniejszenie prądu zasilającego do wartości 23,2mA, natomiast praca "na nasłuchu" wymaga ok. 19,8mA. Można oczywiście w tym miejscu zadać pytanie: skoro w klasie C jest dwukrotnie mniejszy pobór prądu z baterii, to po co w ogóle zajmować się klasą A? Pamiętajmy o tym, że urządzenia mogą pracować w różnych warunkach. Tam, gdzie będzie nam zależało na jak najmniejszym generowaniu harmonicznych zastosujemy klasę A, w bardziej korzystnych sytuacjach, możemy stosować inne klasy tj. E, AE, C. Oprócz określania mocy nadajnika i klasy wzmacniacza mocy, można także ustalać tryb pracy odbiornika. Do wyboru jest optymalizacja czułości lub liniowości. Wybieramy na ogół pierwszą, gdy układy pracują w warunkach, gdzie występuje duża liczba nadajników mogących wzajemnie się zakłócać, a drugą, gdy zależy nam na osiągnięciu maksymalnego zasięgu. Na płytkach układów CC400 i CC900 producent zamontował zewnętrzny filtr ceramiczny częstotliwości "pośredniej". Jest on zestrojony na częstotliwość 455MHz, ma pasmo przenoszenia ok. 30kHz i impedancję wejściową i wyjściową l,5kLl Stosowanie tego filtru nie jest jednak konieczne. W strukturze układów znajdują się odpowiednie obwody wewnętrzne przełączane programowo wraz z doborem częstotliwości pośredniej, która może być równa 60, 200 lub 455MHz. Najwyższą selektyw-ność uzyskuje się stosując filtr zewnętrzny, ale odbija się to oczywiście na końcowym koszcie aplikacji. Parametry toru transmisyjnego również zależą od przyjętych wyżej wartości. Nadajniki układów CC pracują z modulacją FSIC {Fieąuer.cy Shifi Keying). Oznacza to, że częstotliwość nośna ma w zasadzie wartość umowną. Tak naprawdę, mamy do czynienia z dwoma wartościami generowanymi w zależności od nadawanego bitu. Są one równo oddalone od umownej wartości częstotliwości nośnej, a różnica między nimi jest nazywana odstępem częstotliwości. Jest to parametr pracy układu fpatrz tab. 1) prsyj-mujący wartości zależne w pewnym stopniu od założonej częstotliwości pośredniej. Nad jej prawidłowym dobraniem czuwa program SmartRF Studio. Na płytkach ewaluacyjnych zamontowane jest gniazdo DIO pełniące funkcję doprowadzania danych wejściowych do nadajnika lub wyprowadzania danych z odbiornika. W przypadku układów CC400 i CC900, konieczne jest kodowanie danych metodą Manchester, a w przypadku CClOOO można stosować również kodowanie NRZ lub wykorzystać go jako bezprzewodowy interfejs UART. Kodowanie jest związane z potrzebą odtwarzania bitowej skali czasu po stronie odbiornika. Przy dłuższych sekwencjach danych o jednakowej wartości bitów, odbiornik mógłby się roz-synchronizować na skutek braku stanów charakterystycznych w odbieranym ciągu. Kod Manchester wymusza taki stan, dla każdego wysyłanego elementu, umożliwiając tym samym poprawną pracę odbiornika. W tym przypadku jednak prędkość modulacji jest dwukrotnie większa od przepływności binarnej, ale jak to się mówi: "coś za coś". W załączonej instrukcji do starter kitów, autorzy sugerują prowadzenie prób z użyciem generatorów funkcyjnych ustawionych w tryb wytwarzania fali prostokątnej odpowiadającej ciągowi danych wejściowych. Zgodnie z powyższym, prędkość transmisji [b/s] będzie dwukrotnie mniejsza niż generowana częstotliwość [Hz]. Znacznie lep- szym rozwiązaniem może być zastosowanie generatora arbitrarnego z zaprogramowaną sekwencją, symulującą ciąg danych zakodowanych "Manchesterem". Ze względu na prostotę kodera, można też pokusić się o jego samodzielne wykonanie. Przykładowe rozwiązanie części logicznej przedstawiono na rys. 1. Uwaga! Podczas testów należy bezwzględnie pamiętać o tym, żeby sygnał wejściowy fna gnieździe DIO) mieścił się między poziomami 0 i 3V frys. 1). Doprowadzenie sygnału o amplitudzie 5V może uszkodzić układy. Producent przewidział możliwość dołączania anteny do jednego z trzech gniazd znajdujących się na płytkach ewaluacyjnych transceiverów i realizujących opcje: bez filtru (ustawienie fabryczne), z filtrem LC i z filtrem SAW. Wybór gniazda powinien być poprzedzony odpowiednim przelutowa-niem "rezystora" SMD o zerowej oporności. Wykorzystanie dolnoprzepusto-wego filtru LC zapobiega emitowaniu harmonicznych przez nadajnik, po stronie odbiorczej natomiast, zmniejsza zniekształcenia i wpływ zakłóceń radiowych. Przyjmuje się, że filtr jest zamknięty impedancją 50H. Znaczną poprawę selektywności odbiornika można uzyskać wykorzystując filtr SAW. Występuje to - niestety - kosztem wprowadzonego przez filtr dodatkowego tłumienia. W tym przypadku należy się również liczyć z utratą stabilności pracy nadajnika pracującego z mocą większą niż OdBrn, gdy wybrano klasę E lub C wzmacniacza mocy. Z tego względu trzeba uważać, aby nie przekroczyć tej wartości. Częstotliwość nośna jest wytwarzana przez wbudowany w strukturę układu syntezer, którego integralną częścią jest pętla PLL. Płytki ewaluacyjne wszystkich typów układów wyposażono w specjalnie wyprowadzony punkt kontrolny, na którym występuje wysoki poziom napięcia w chwili, gdy pętla PLL jest wstanie zaskoku. Może być on odczytywany przez mikrokontroler w aplikacji użytkownika. Podczas prób ze starter kitem, program SmartRF Studio również sprawdza poziom na tym wyprowadzeniu i wyświetla na monitorze komputera. Kontrola chwytania pętli PLL może być prowadzona na dwa Rys. 3 62 Elektronika Praktyczna 5/2002 PODZESPOŁY sposoby, może też być całkowicie wy-łącsona. W pierwszym trybie - Conii-nuous - wskaźnik, chwytania jest sprawdzany permanentnie, nawet po wykryciu saskoku, w drugim trybie -One-shot - wskaźnik jest sprawdzany tylko do momentu wykrycia pierwszego saskoku pętli. W praktyce, wykrywanie niepoprawnej pracy pętli PLL jest istotne o tyle, śe w tym stanie nadajnik może emitować sygnały wychodzące posa przydzielone pasmo. Opcje dostępne tylko na płytce CC1000EB Jak już wcześniej wspomniano, układ CClOOO różni się dość znacznie od układów CC400 i CC900. W związku z tym, niezbędne było również wprowadzenie zmian na płytce ewaluacyj-nej oraz w programie SmartRF Studio. Rozszerzono jego możliwości opisane wyżej. Już "na pierwszy rzut oka" widać, dwa dodatkowe gniazda SMA. Pierwsze jest opisane symbolem DCLIC. Występuje na nim przebieg zegarowy, "wytwarzany przez wewnętrzny układ synchronizacji, zawarty w strukturze CClOOO. Należy zauważyć, że można go zaobserwować tylko podczas kodowania danych metodą Manchester lub NRZ. Podczas pracy w trybie asynchro-nicznym (UART), gniazdo DCLIC jest wykorzystywane jako wyjście danych odbieranych. Drugie gniazdo, opisane jako RSSI/IF, jest powiązane z tak sarno opisanym wyprowadzeniem układu CClOOO, którego nie posiadały wcześniejsze wersje transceiverów. Received Signal Sirenghi Indicaior to rozwinięcie pierwszej części skrótu. Jak wynika z nazwy, na tym wyjściu można kontrolować poziom odbieranego sygnału. Ma ono charakter prądowy, więc aby można było z niego korzystać niezbędne jest dołączenie rezystora przekształcającego prąd na napięcie. Pożądane jest również użycie kondensatora w celu dolnoprzepustowego filtrowania sygnału. Typowa wartość rezystora 27kQ zapewnia współczynnik przetwarzania równy 50dB/V, co odpowiada zakresowi pomiarowemu od Odo 1,2V. Taki właśnie rezystor zastosowano na płytce ewaluacyjnej, Wyjście RSSI/IF może być również skonfigurowane jako wyj- ście pośredniej częstotliwości 10,7MHz dla zewnętrznego demodulatora. Prowadzenie transmisji jest związane z prawidłowym wytworzeniem bitowej skali czasu. Funkcję tę pełni wewnętrzny oscylator układów CC, chociaż można również doprowadzać sygnał zewnętrzny. Częstotliwość wewnętrznego oscylatora jest stabilizowana przez rezonator kwarcowy, dołączany do transceiverów. Teoretycznie można wykorzystywać rezonatory 3... 4, 6... 8 i 9...16MHz. Na płytce ewaluacyjnej CClOOOEE wybrano rezonator ll,0592MHz, idealnie odpowiedni dla typowych prędkości transmisji. Element ten ma duży wpływ na osiągane parametry, w tym maksymalną prędkość transmisji, a więc powinien być wybierany starannie. Między innymi dlatego, obok kwarcu znajduje się trymer umożliwiający precyzyjne ustawienie częstotliwości referencyjnej. Modulacja FSIĆ stosowana w układach Chipcona charakteryzuje się dość szerokim pasmem kanału transmisyjnego. Powodem tego są nagłe skoki częstotliwości związane z nadawaniem elementów o wartościach 0 lub 1. W układzie CClOOO zastosowano pewien zabieg umożliwiający zminimalizowanie szerokości zajmowanego pasma. Metoda polega na płynnym przechodzeniu od częstotliwości odpowiadającej elementowi "0", do częstotliwości przydzielonej elementowi o wartości "1". Możliwe jest stosowanie 16 częstotliwości pośrednich. Podłączając analizator widma do gniazda antenowego płytki ewaluacyjnej i wybierając odpowiednie opcje w programie SmartRF Studio, można obserwować efekty działania powyższej metody. Program SmartRF Studio Program SmartRF Studio jest integralnym (bezpłatnym!) elementem starter kitów do transceiverów firmy Chipcon. Jak już pisałem wcześniej, służy on do konfigurowania układów na płytkach ewaluacyjnych, ale jest też bardzo przydatnym narzędziem do projektowania własnych aplikacji. Pracuje w środowisku Windows 9x/NT/2000 i nie wymaga instalacji, jednakże zastosowano w nim bezpośrednie odwołania do portów I/O komputera. Trzeba więc zwrócić uwagę na prawidłowe określenie adresu używanego LPT, a w przypadku środowiska NT niezbędne jest zainstalowanie odpowiedniego sterownika znajdującego się na dyskietce dystrybucyjnej. W starter kitach CC400 i CC900 program jest dostarczany w wersji 3.00, natomiast w zestawach CClOOO dostajemy wersję 3.10. Każda z nich obsługuje transceivery typu CC400, CC900 i CClOOO. Ze względu na różnice występujące między nimi, główne okno programu przybiera wygląd zależny od wybranego typu układu (rys* 2 i 3). Program nie ma wbu- dowanej pomocy, lecz klawisze ekranowe "Info" powodują wyświetlanie objaśnień dość obszernie tłumaczących rolę parametru, obok którego się znajdują. W przypadku, gdy wybrana przez użytkownika konfiguracja może powodować błędną pracę układu, pojawia się stosowne ostrzeżenie. Po ustaleniu w lewej ramce parametrów toru transmisyjnego, w prawej zostają wyświetlone wartości obliczonych elementów dla ustalonych warunków pracy. Wartości te wynikają z obliczeń i nie uwzględniają wpływu czynników zewnętrznych, jak na przykład pojemności pasożytniczych pomiędzy poszczególnymi elementami. Nawiasem mówiąc, obwód drukowany urządzeń wykorzystujących transceivery powinien być opracowany bardzo starannie. Mamy tu do czynienia, bądź co bądź, z wysokimi częstotliwościami. Zalecane jest stosowanie płytek dwuwarstwowych, na których jedną warstwę przeznaczono do prowadzenia masy, drugą zaś do połączeń sygnałowych. Po nabraniu wprawy z doborem parametrów transmisji można zabrać się do drugiego etapu doświadczeń polegającego na programowaniu układów poprzez zmianę zawartości jego rejestrów wewnętrznych (rys. 4). Wymaga to jednak dokładnego zapoznania się z danymi technicznymi, gdyż nieodpowiednie wpisy do tych rejestrów mogą spowodować błędne działanie układów lub wręcz uniemożliwić ich pracę. W zestawie uruchomieniowym załączono wydruki odpowiednich not katalogowych, które można również znaleźć w wersji PDF na stronie internetowej Chipcona. Przyszłość Urządzenia SRD [Shoit Rangę Devi-ces), do których należą m.in. prezentowane transceivery, będą najprawdopodobniej znajdowały coraz szersze zastosowanie w najbliższym czasie. Telemetryczne systemy pomiarowe, skomputeryzowane magazyny wysokiego składowania, systemy alarmowe, czy nawet zabawki, to tylko kilka przykładów. Do ich stosowania zachęcić może łatwość samodzielnego zbudowania nadajnika i odbiornika oraz dostępne pasma, nie wymagającego specjalnych zezwoleń i licencji. Bez większych problemów można wykonać anteny, a ich wielkość oraz możliwość bateryjnego zasilania, zachęca do budowy urządzeń przenośnych. Aktualnie są już w ofercie Chipcona transceivery nowszej wersji, oznaczone symbolem CC1050. Gorąco zachęcam do eksperymentów. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Dodatkowe informacje Dodatkowe informacje o układach lirmy Chipcon są dostępne w Internecie pod adresem www.chipcon.com oraznaptycie CD-EP5/2002B. 64 Elektronika Praktyczna 5/2002 NOWE PODZESPOŁY Nowe MicroCoiwertery Jest *CD Analog Devices wprowadził do produkcji dwa nowe mikro kontrolery z rodziny micro-Cor/yerterów, czyli rdzeni e'51 obudowanych bogatym zestawem peryferiów analogowych. Układ ADuC8l4 wyposażono w 12-bitowy przetwornik A/C o częstotliwości próbkowania do 247kHz oraz 8kB pamięci programu typu Flash. Standardowym wyposażeniem tego układ są także moduły peryferyjne: wat- '"1'i'j'i'fiil'f1 ANALOG DEYICES chdog, monitor zasilania, precyzyjne źródło napięcia referencyjnego, trzy timery-liczniki oraz dwa interfejsy szeregowe: UART i SPI. Z kolei ADuC834 jest przeznaczony do bardzo wymagających aplikacji. Wyposażono go w dwa 24-bitowe przetworniki A/C, przetwornik C/A, pętlę PLL i standardowe dla rdzenia e'5 2 peryferia. Atutem tego układu jest duża - aż 62kB - pamięć programu typu Flash, aż 4kB reprogramowalnej pamięci danych z systemem zabezpieczeń, a także wbudowany w strukturę czujnik temperatury. Układy ADuC8l4 są oferowane w obudowach TSSOP28, natomiast ADuC834 w obudowach PQFP52 oraz CSP. http:ffproducts.ari alog.com fproducisfin-fo.asp?product=ADUC334 http:ffpioducts.an alog.com fproducisfin-fo.asp?produci=ADUC314 Przedstawicielami Analog Dsvicss w Polsce są firmy; Alfine (iel. {61} 320-53-11} i Addis {iel. {32} 330-46-90}. Przetwornik Przetwornik Pamięć Pamięć Pamięć Obudowy A/C C/A programu danych danych Flash Flash/EE RAM ADuC312 3-kanałów/ 12b Podwó|ny 12b 3kB 640B 256B 52-pmPOFP Czaskonwers|i A/C5^s ADuCS16 Podwó|ny 16b 12b 3kB 64 OB 256B 52-pmPOFP Stopieriwejściowy o programowanym wzmocnieniu ADuC324 24b+16b 12b 3kB 64 OB 256B 52-pmPOFP Kompatybilny zADuC316 ADuC314 6 kanałów/ 12b Podwó|ny 12b 3kB 640 B 256B 28-pmTSSOP Tam, energooszczędny ADuC334 24b+16b 12b+PWM 62kB 4kB 2kB 52-pin PQFP Rozbudowana we rs|a ADuC324 Mikrokontroler z interfejsem SDRAM JBSI W rodzinie 16-bitowych mikrokontrolerów H8S pojawił się układ (oznaczony H8S/ 2674R] wyposażony w interfejs umożliwiający bezpośrednie dołączenie pamięci SDRAM, taktowanej sygnałem o częstotliwości 33MHz. Jest on wyposażony także w sze- HITACHI reg peryferiów charakterystycznych dla innych mikrokontrolerów tej rodziny, w tym m.in. uniwersalny interfejs komunikacji szeregowej SCI (współpracuje m.in. z kartami chipowymi], jednostkę DMA, 6-kanałowy 16-b i to wy uniwersalny licznik, 12-kanał owy przetwornik A/C o rozdzielczości 10 bitów, 4-kanałowy przetwornik C/A o rozdzielczości 8 bitów. Układ wyposażono także w 32kB pamięcSRAM, która może spełniać rolę szybkiej pamięci programu lub pamięci danych. h ttp; ffwww. hi ta chi sem i con ductor. com fsi c f r e so urcefjapanfengfp dffmp umc u f e602242_h3s2673.pdf Przedstawicielem firmy Hitachi w Polsce są firmy; MSC Polska {iel. {32} 330-54-50} i Silica {iel. {22} 634-47-36}. Elektronika Praktyczna 5/2002 67 NOWE PODZESPOŁY Nowy Chipcorder Dział firmy Winbond zajmujący się układami do zapisu i odtwarzania dźwięku Chip-Corder (niegdyS produkowane przez ISD) wprowadził do produkcji nowe układy z tej serii - ISD5216. Umożliwiają one zapis dźwięku o maksymalnym czasie trwania do 16 minut, przy czym częstotliwości próbkowania mogą wynosić 4/5,3/6,4/8kHz. Oprócz rozwiązań charakterystycznych dla starszych układów tego typu w ISD5216 zastosowano także interfejs I2S/PCM (dwukierunkowy), dzięki czemu można go w łatwy sposób wykorzystywać w sprzęcie telekomunikacyjnym, sprzęcie audio, a także w aplikacjach samochodowych (np. jako mówiący komputer pokładowy). Układy ISD5216 są dostępne w obudowach TSOP/DIP/SOIC28, przystosowane do pracy w otoczeniu o temperaturze -2O... + 7OC lub -4O...+85C. http://www.winbond.com/e-winbondhtm/ partner/PDFresult.asp?Pname=793 Jest CD Winbond Electronics Corp. 9 Przedstawicielem firmy Winbond w Polsce jest firma Marthel (tel. (71) 311-07-11). MICBS o^- MICROPHONE! MIC+O-' MIC-O- j AGCCAPO- AUXINC MCLKC INP CODEC Moi P (CDI0\ J \ CDII ) (l-Law/A-Law/ linear 14 bit CODEC 'ADPDWT I SIWI. MP. Volume Control Power Conditioning PCM/I2Sfiitóifiace iiiiiii JJJJ W W W W AUXOUT SPEAKER Device Control Rys. 1 WS SCK SDIO SDI SCL SDA RAC AO Al Odbiornik ASK firmy W ofercie firmy Atmel pojawił się zintegrowany odbiornik sygnałów cyfrowych modulowanych metodą ASK - T5744. Jest on przystosowany do pracy w zakresie częstot-liwoSci 300...450MHz. W zależnoSci od wymagań dotyczących selektywnoSci, układ może pracować w aplikacji z filtrem pasmowop-rzepustowym SAW, ale można z niego zrezygnować, zastępując go prostym obwodem dopasowującym antenę do asymetrycznego wejScia. Układ T5744 jest przystosowany do odbioru sygnałów cyfrowych, kodowanych w dowolny sposób (np. PWM, Manchester itp.) - na jego wyjSciu występuje zreprodu-kowany sygnał o charakterystyce czasowej bardzo bliskiej nadawanemu oryginałowi. Dodatkowo, układ wyposażono w analogowe wyjScie RSSI, na którym występuje napięcie UHFASK/FSK Ramota eonbol iransmUar 1 L celi i U2741B I Encoder PLL Keys M44Cx9x
j-------- Power amp. Rys Ś1 I UHFASK Ramota control raoahnr Antanna Antenna Y Y I proporcjonalne do natężenia odbieranego sygnału. Układ T5744 może pracować w zakresie temperatur -4O...+1O5C. Występuje w dwóch wersjach obudów przystosowanych do montażu powierzchniowego: SO20 i SSOP20. http://www.atmel.com/atmel/acrobat/ doc3b67d02469e97.pdf Przedstawicielami Atmela w Polsce są firmy: CODPOL (tel. (56) 642-88-00) i Payda Electronics (tel. (12) 417-10-83). 68 Elektronika Praktyczna 5/2002 NOWE PODZESPOŁY Półprzewodnikowy licznik czasu pracy W ofercie firmy Maxim pojawił się kolejny półprzewodnikowy licznik czasu pracy (DS1682), który wyposażono w wewnętrzny, programowany generator podstawy czasu. Rejestr licznika pomiaru czasu ma długoSć 32 bitów, co pozwala rejestrować czas pracy o maksymalnej długoSci do 34 lat przy roz-dzielczoSci 250 ms. Liczba włączeń i wyłączeń monitorowanego urządzenia jest także zliczana (licznik 17-bitowy) i przechowywana w nieulotnej pamięci EEPROM znajdującej się we wnętrzu układu. Dostęp do wszystkich rejestrów wewnętrznych układu (w tym także odpowiadających za skalibrowanie wzorca czasu) jest możliwy za poSrednict-wem interfejsu I2C. W obszarze pamięci EEPROM przewidziano także 10 komórek do dowolnego wykorzystania przez użytkownika. Układ DS1682 wyposażono także w wyj-Scie alarmowe uaktywniane po upływie zadanego przez użytkownika czasu. Układy DS1682 są dostępne w obudowach SOS, przystosowanych do pracy w zakresie temperatur od -4O...+85C. Zalecany przez producenta zakres napięć zasilających wynosi 2,5...5,5V, a pobór prądu wstanie aktywnym nie przekracza 300uA. http://pdfserv.maxim-ic.com/arpdf/ DS1682.pdf Przedstawicielami firmy Da!!as-Maxim w Polsce są firmy: SE Spezial Electronic (tel. (0800) 16-00-39) oraz WG-Electronics (tel. (22) 621-77-04). Jest CD DALLAS SEMICONDUCTOR
INTERFACE 4>
USER. CONTOOL, AND CONFIGURATION REGISTERS
OSOLLATOR AND DWIDER ELAPSEDTIME COUNTER (ETC)
EEPROI
t JARRAY ALARM REGS Vcc ----------*Ś CONTOOL
LOGIC AND EYBNT GLTTCH COMPARE LOGIC <----- i ALARM M EVENT > EVENT COUNTER FILTER
Rys. 3 Nowy procesor '51 firmy Firma Winbond wprowadziła do swej oferty nowy mikrokontroler kompatybilny z rodziną i51. Układ W78E858 wyposażony został w 4-kanałowy, 8-bitowy układ PWM [Pulse Width Modulatioń), 128 bajtów pamięci EEPROM o trwałoSci 100000 kasowań, umieszczonej w zewnętrznej przestrzeni adresowej RAM XDATA, dodatkowe zewnętrzne przerwania INT2...INT9 z funkcją Wake-Up, 17-bitowy watchdog oraz programowalne wyjScie licznika T2 na port P1.0 (możliwoSć taktowania zewnętrznych układów, przetwornic itp.). Sprzętowy czterokanałowy układ PWM, pozwala na generowanie impulsów o współczynniku wypełnienia programowanym niezależnie dla każdego kanału i wspólnej częstotli-woSci powtarzania. Zakres regulacji wypełnienia sygnału: 0...100%. Wbudowana w mikrokontroler pamięć EEPROM umożliwia przechowywanie ważnych danych, jak np. numery seryjne urządzeń, hasła, bilingi itp. Pamięć programu mi kro kontrolera składa się bloku 32 kB Flash przeznaczonego na kod programu oraz dodatkowego bloku 4 kB Flash przeznaczonego na kod loadera wykorzystywanego w trybie ISP. Obydwa bloki pamięci Flash mogą być programowane w układzie (ISP). Zastosowany system programowania w układzie pozwala na programowo kontrolowany restart procesora i wykonywanie programu umieszczonego w pamięci loadera. Rozwiązanie to umożliwia upgrade zawartoSci pamięci głównej procesora - 32 kB. Możliwa jest również sytuacja odwrotna - upgrade pamięci loadera podczas wykonywania programu z pamięci głównej procesora. Użytkownicy, którzy nie wykorzystują funkcji programowania w układzie, mogą wykorzystać dodatkowy blok pamięci loadera o pojemnoSci 4 kB w aplikacjach rejestracji danych. Wewnętrzna pamięć RAM składa się z dwóch bloków: Jest CD RAM 256 Bytei Auilllary RAM 512 Byt es EEPROM 128 Bytei MTP-ROM 4K Bytes MTP-ROM 32K By tej Rys. 4 Watch-doe
INTO
INT1
TMER1
TIMER0
Winbond Electronics Corp. - 256 bajtów DATA/IDATA, - 512 bajtów umieszczonych w przestrzeni adresowej XDATA, co daje w sumie 768 bajtów pamięci RAM. Funkcja Wake-Up pozwala na budzenie przerwaniem mikrokontrolera z najniższego trybu oszczędnoSci energii Power Down. Upraszcza to znacznie, w porównaniu do standardowego mikrokontrolera z rodziny 8051/52, projektowanie aplikacji, w których zużycie energii jest wartoScią krytyczną. Można tu również dodać, iż tryb Power Down pozwala na zmniejszenie emisji generowanych zakłóceń, jak również zwiększenie odpornoSci na zakłócenia odbierane przez układ. Liczbę portów we/wy rozszerzono w stosunku do standardowych wykonań o dodatkowe 4 bity portu P4, które są dostępne tylko w obudowie PLCC44/PQFP44. Opisywany mikrokontroler wyposażony jest w trzy liczniki/tunery: TO, Tl iT2. Liczniki TO i Tl programowane są do pracy w trybach zgodnych z rodziną 8051. Licznik T2 może być konfigurowany do układu 16-bitowego z zatrzaskiem, 16-bitowego z auto-ładowaniem oraz generatora taktującego port szeregowy. NowoScią jest tutaj możliwoSć wyprowadzenia wyjScia licznika T2 na zewnątrz mikrokon troi era poprzez port P1.0. Mikrokontrolery są dostępne w trzech obudowach: DIP40, PLCC44, PQFP-44. http://www.winbond.com/e-winbondhtm/ pańner/PDFresult.asp?Pname= 777 Przedstawicielem firmy Winbond w Polsce jest firma Marthel (tel. (71) 311-07-11). 70 Elektronika Praktyczna 5/2002 MINIPROJEKTY Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość Ich praktyczne] 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 scaionych, 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, Wzorcowy generator kwarcowy Prezen to wa ny w artykule układ jest możliwym do sam o dziel n ego wykonania źródłem sygnału o częstotliwości wzorcowej. Taki generator, o częstotliwości ustalanej kwarcem, można zastosować w dowolnej aplikacji (np. miernika częstotliwości), jako wzorzec czasu lub często tli wo ści. W celu uzyskania dużej stałości częstotliwości, takie generatory powinny być budowane z elementów o dużej stabilności parametrów. Wyjątkowo korzystne jest zastosowanie rezonatorów kwarcowych, których dokładność wynosi od 10"6 do 108 częstotliwości rezonansowej, a jej stabilność jest lepsza niż innych źródeł sygnałów wzorców czasowych. WYKAZ ELEMENTÓW Rezystory Rl: 1MG R2: lkG Kondensatory Cl: 33pF C2: lópF C3: lOOnF C4: 1OO^F/1ÓV Półprzewodniki Tl: BF25Ó Różne Xl: 1MHz...12MHz Płytka drukowana jest dostępna w AVT - oznaczenie AVT-1338. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http:llwww.ep.conj.pl/7pdfl majQ2.htm oraz na płycie CD-EP05/2002 w katalogu PCB. Rezonatory kwarcowe znajdują szerokie zastosowanie w różnego rodzaju generatorach sygnałów. Często są stosowane także jako wzorce częstotliwości w miernikach czasu i częstotliwości. Przykładem generatora, którego częstotliwość sygnału wyjściowego stabilizuje rezonator kwarcowy, jest prezentowany układ. Prosta budowa, niewielkie wymiary, mała liczba użytych elementów sprawiają, że układ jest tanim rozwiązaniem dla prostego modułu. Schemat elektryczny generatora przedstawiono na rys. 1. Jest to standardowy generator kwarcowy w układzie Colpit-tsa. Ze względu na prostotę wykonania, montaż i uruchamianie układu nie wymaga opisywania - pomocny będzie natomiast schemat montażowy zamieszczony na rys. 2. Układ przebadano stosując rezonatory kwarcowe o różnych częstotliwościach, w zakresie od lMHz do 12MHz. Nie było żadnych problemów z uruchomieniem. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl BF266 JiM Rys. 1 ] BMHi Cl 33p _Lca _C3 100n" T100nT C5 IDOM R2 1k Rys. 2 Elektronika Praktyczna 5/2002 75 PODZESPOŁY Prekursorskie działania firmy Lattice, która w końcu roku 1999 wprowadziła do swojej oferty programowaine układy anaiogowe, nie mają wieikiego wsparcia ze strony rynku, co jednak nie zniechęca firmy do wdrażania nowych układów. W artykułe przedstawiamy dwa nowe układy z serii ispPAC, których poważnymi atutami są: niższa cena (dotyczy obydwu układów) oraz znacznie hardziej zaawansowana architektura (ispPAC30). Nowości w rodzinie Rodzina analogowych układów programowalnych do niedawna składała się z trzech układów. Przypomnijmy pokrótce ich opis funkcjonalny. Wszystkie układy serii isp-PAC wyposażono w interfejs JTAG, który umożliwia ich wielokrotne re-programowanie (czyli w konsekwencji zmianę parametrów torów analogowych) w systemie. Zawartość pamięci konfiguracji EEPROM może być chroniona przed nieuprawnionym dostępem. Układy ispPAC mogą być włączane w łańcuch JTAG, czyli mogą współpracować z układami dowolnych producentów, wyposażonymi w interfejs JTAG zgodny ze standardem IEEE 1149.1. Rodzina ispPAC -programowane wzmacniacze W ramach rodziny ispPAC Lattice oferuje dwa scalone wzmacniacze programowalne w systemie: ispPAClCJ i ispPAC20. Układ ispPAClO (rys. l) składa się s czterech wzmacniaczy o niezależnie programowanym wzmocnieniu w zakresie 0...80 dP i szerokim paśmie przenoszenia, wynoszą- cym 550 kHz fku = 1V/V) lub 330 kHz fku = 10 V/V). Układy ispPAClO są zbudowane z komórek PACblock, w skład których wchodzą: - dwa programowalne wzmacniacze wejściowe zawarte w komórkach PACell, które można skonfigurować jako wzmacniacze pomiarowe z asymetrycznymi wejściami (odwracającym i nieodwracającym) lub jako wzmacniacze z pojedynczym wejściem różnicowym. - wzmacniacz różnicowy z wyjściem różnicowym i dodatkowymi elementami RC, nazwany przez producenta FilSum. Tak zbudowane PACblocki można wykorzystać jako: wzmacniacze sumujące lub odejmujące, wzmacniacze o programowanym wzmocnieniu, ak- Lattice Semiconductor Corporation tywne układy całkujące lub programowane filtry. Dzięki programowalnej analogowej matrycy połączeniowej ARP [Analog Rouiirtg Pool) jest możliwe łączenie wzmacniaczy w dowolne konfiguracje we wnętrzu układu, bez konieczności wykonywania połączeń zewnętrznych. ŚP" Rys. 1. 56 Elektronika Praktyczna 1/2002 PODZESPOŁY CP1OUT D WihOOW Rys. 2. Nieco inną budowę mają układy is-pPAC20 (rys. 2). Zintegrowano w nich bowiem dwa bloki PACblock, dwa komparatory analogowe oraz 8-bitowy przetwornik C/A. Budowa bloków wzmacniających jest taka sama jak w układach ispPAClO, z wyjątkiem dodatkowego bloku o programowanej polaryzacji (wzmocnienie ustalane w zakresie (-10V/V,,.+10V/V) na wejściu jednego ze wzmacniaczy operacyjnych. Napięciem wyjściowym tego bloku może sterować komparator CPl. Bloki wzmacniająco-filtrujące można wewnętrznie łączyć z analogowymi komparatorami CPl i CP2. W razie potrzeby wejścia jednego z nich mogą być także dostępne z zewnątrz. Charakterystykę
Irtt A ConfigufBBon totornory 3 3 3 3 3 3 3 3 3 3 3 przełączania komparatorów mośna dostosować do sygnałów wolnozrniennych po włączeniu wewnętrznego obwodu histerezy. Na wyjściu komparatora CPl znajduje się programowany przerzutnik RS spełniający rolę pamięci przekroczenia zadanego przez użytkownika poziomu, a do wyjść komparatorów CPl i CP2 jest dołączona bramka logiczna ExOR, której wyjście steruje wyprowadzeniem WINDOW. Bramka ta umożliwia funkcjonalną implementację komparatora okienkowego, który sygnalizuje przekroczenie przez śledzony parametr dolnej lub górnej wartości odniesienia. W układ ispPAC20 wbudowano 8-bitowy przetwornik C/A z wyjściem różnicowym, który może być sterowany za pomocą interfejsu JTAG z nastawami zapisywanymi w pamięci EEPROM albo w rejestrze SRAM 8-bitowego portu równoległego lub też interfejsu szeregowego SPI. Wyjście przetwornika można wykorzystać także do bezpośredniego sterowania wewnętrznych bloków układu ispPAC20, w czym jest pomocna analogowa matryca połączeniowa ARP. Programowalny filtr dolnoprzepustowy Układ ispPACBO jest filtrem dol-noprzepustowym piątego rzędu, o programowanej częstotliwości granicznej i charakterystyce filtrowania. Jego schemat blokowy pokazano na rys. 3. Na wejściu układu ispPACBO zastosowano standardowy dla rodziny ispPAC wzmacniacz z różnicowym wejściem i o programowanym wzmocnieniu. Wzmacniacz wyjściowy ma także wyjście symetryczne, dzięki czemu zniekształcenia przetwarzanego sygnału są minimalne. Ponieważ współczynniki dla każdego stopnia filtru można programować niezależnie, jest możliwe niemal dowolne kształtowanie jego charakterystyki amplitudo-wo-fazowej. Tak więc oprócz klasycznych charakterystyk: Gaussa, Bessę la, Butterwortha czy Legrende'a, można zaprojektować także dowolną własną. Zakres dopuszczalnych częstotliwości granicznych wynosi 50...500 kHz. Układy ispPACBO wyposażono w podwójną pamięć konfiguracji EEP-ROM programowaną poprzez złącze JTAG. Wybór aktywnego fragmentu pamięci jest możliwy przez wpisanie do układu słowa konfigurującego za pomocą opcjonalnego interfejsu SPI. Nowości w rodzinie W październiku 2001 Lattice wprowadził do produkcji dwa nowe układy z rodziny ispPAC, z których jeden - ispPAC 30 - jest zupełnie nowym układem w rodzinie, drugi natomiast - ispPACBl - jest zmodyfikowanym układem opisanego wcześniej filtru ispPACBO. - \ W odróśnie- niu od pierwowzoru układ ispPACBl ma nieco zawężone pasmo przenoszenia (10...75 kHz zamiast 50,..500 kHz), mniejsze są także możliwości skonfigurowania charakterystyki przenoszenia tego filtru -można go skonfigurować jako dolnoprzepustowy filtr eliptyczny, Czejby-szewa lub Butterwortha, każdy z nich 5. rzędu. Wyprowadzenia oraz wartości parametrów elektrycznych obydwu układów są praktycznie takie same, za wyjątkiem niewielkich THS [T TCK |T TDI [T TDO |T es [T CAL |T ENBPI \j_ QW [T Rys. 3.
> -fc- FDPB rzędu c Pimłtfk orJg.A } c Fłrtflćk ortfl. B } c ctoratar.
Te] vs W] TEST OJT+ w] aur- test TT] in+ w] in- T] VREFOUT 58 Elektronika Praktyczna 1/2002 PODZESPOŁY IN1+ 15 IN1-M6 INZtMT IN2-[i8 VHEFOLJT[aO NCI24 IN3-[z6 IN4t[a7 IN4- 28 Filtr Wzmacniacz ntegrator Komparator Filtr Wzmacniacz ntecj retor Komparator Interfejs jta&spi konfiguracji Autokallbrator Rys. 4. rośnie w wartościach parametrów związanych se stabilnością termiczną punktów pracy wzmacniaczy operacyjnych. Zupełną, nowością w rodzinie isp-PAC jest natomiast układ oznaczony symbolem ispPAC30. Jego schemat blokowy pokazano na rys. 4. W układzie zintegrowano cztery wejściowe wzmacniacze pomiarowe o wzmocnieniu programowanym w przedziale ąl,..ą10V/V i obwodach wejściowych konfigurowanych jako różnicowe lub asymetryczne. Dwa z tych wzmacniaczy wyposażono w dwuwejściowe multipleksery sygnałów analogowych, którymi mośna sterować za pomocą dwóch wyprowadzeń układu lub poprzez wpis do odpowiedniego rejestru SRAM, co umożliwia jeden z dwóch dostępnych interfejsów szeregowych. Kolejnymi elementami zintegrowanymi w układzie ispPAC30 są dwa n. 2,5V 14 VS I3I EN8PI II^TDO TItdi TItck 71 es sImseli TInc IN14 IH1-f INZ+ IN2- VHEFOLJT 0Lm OLTls IN3r+ [ TJCAL TJPD TIgnd Interfejs JTAOSPI ?raz pamięć konflguracj Autokalbrator ENSPI ioItws TItdi TItck 7] es TImseli TJMSEL2 TJCAL i1qnd Rys. 5. mnożące, 8-bitowe przetworniki C/A oraz 2 niezależnie konfigurowane źródła napięć referencyjnych o 7 możliwych programowanych wartościach fod 64mV do 2,5V). Na wyjściu układu znajdują się dwa wzmacniacze, które można skonfigurować jako: całkujące z wyborem jednej z ośmiu wartości pojemności wewnętrznego kondensatora, filtry dolnoprzepustowe o programowanej częstotliwości odcięcia (jednej z ośmiu) lub jako standardowe komparatory napięciowe. Wymienione bloki można łączyć ze sobą za pomocą dwóch matryc połączeniowych: suma-cyjnej i wejściowo-wyjściowej. Konfiguracje wszystkich bloków są przechowywane w pamięci SRAM, której zawartość jest buforowana i odtwarzana po włączeniu zasilania z nieulotnej pamięci EEPROM. Modyfikację zawartości tych pamięci umożliwiają dwa wbudowane w układ interfejsy: JTAG (IEEE 1149.1) oraz - zupełna nowość w tej rodzinie układów - SPI! Tak więc układ ispPAC3 0 można stosować w standardowych systemach mikroprocesorowych, w których dość często sprzętowy interfejs SPI jest dostępny, ewentualnie stosunkowo łatwo można go emulować programowo. Wyboru aktywnego w danej chwili interfejsu można dokonać za pomocą jednego z wyprowadzeń układu. Dzięki zastosowaniu jako pamięci konfiguracji rejestrów SRAM wielokrotna rekonfigura- cja układu nie powoduje nadwyręże-nia struktury EEPROM. Takie rozwiązanie umożliwia szybkie, wielokrotne modyfikowanie parametrów układu i jego połączeń wewnętrznych. Narzędzia projektowe Wraz z wprowadzeniem do oferty handlowej nowych układów, Lattice udostępnił (bezpłatnie!) nową wersję (1.3) programu ispPAC Designer. Jest to proste w obsłudze narzędzie, pozwalające graficznie zaprojektować konfigurację wybranego układu (przykład ispPAC30 na rys. 5). Oprogramowanie jest dostępne na stronie in-ternetowej firmy Lattice. Do jego uruchomienia niezbędny jest plik licencyjny udostępniamy przez producenta bezpłatnie po podaniu numeru seryjnego dysku, na którym instalowany będzie program, Odpowiednie adresy podaliśmy w ramce Dodatkowe informacje. Piotr Zbysiński, AVT piotr.zbysinski@ep.com.pl Dodatkowe informacje Informacje o układach ispPAC są dostępne pod adresem: http://www.laTticeserni.com/products/ ispPAC/indexclm. Bezpłatne oprogramowanie narzędziowe ispPAC Designer jest dostępne pod adresem: http:// www. lattic esemi. corn/produ cTs/devtools/soltware/ pacdesigner/pacdesigner_demo1.clm. Plik licencyjny dla ispPAC Designera można otrzymać po zarejestrowaniu się pod adresem: http:// www.laTTicesemi.com/producTs/devTools/licensing/ indexclm. Elektronika Praktyczna 1/2002 59 MINIPROJEKTY Elektroniczny bezpiecznik do dzwonka Układ skutecznie zabezpiecza przed "dowcipnisiami", którzy biegając po klatce dzwonią do mieszkań lub też wtykają zapałki w przyciski dzwonków. Do prezentowanego sterownika możemy podłączyć tylko dzwonki zasilane poprzez transformator sieciowy o nacięciu do 12V. Aby przeciwdziałać takim sytuacjom należy wykonać i zastosować prosty układ zabezpieczający, którego schemat elektryczny przedstawiono na rys. 1. Niewielka liczba elementów użytych do budowy sprawia, że układ jest prosty i przede wszystkim ta- Pizyctak ni w wykonaniu. Nie powinien również stwarzać żadnych problemów przy montażu niedoświadczonym elektronikom. Dużą zaletą układu jest to, że został zaprojektowany tylko w oparciu o tranzystory, co ma również walory edukacyjne. Rys. 1 Wykonany w postaci modułu, zawiera całą elektronikę odpowiedzialną za sterowanie pracą dzwonka. W skład urządzeń peryferyjnych wchodzą zasilacz sieciowy, przycisk drzwiowy, no i dzwonek. Elektronika Praktyczna 5/2002 75 MINIPROJEKTY Rys. 2 Po przyciśnięciu przycisku dzwonka zostaje podane zasilanie na cały układ sterowania, w wyniku czego przekaźnik zostaje załączony podając napięcie zasilające na dzwonek. Przekaźnik jest za- łączony tak długo, dopóki kondensator Cl nie zostanie naładowany. W chwili naładowania kondensatora tranzystor Tl zaczyna przewodzić blokując tranzystor T2 sterujący pracą przekaźnika. Po zwolnieniu przycisku ponowne załączenie dzwonka może nastąpić po rozładowaniu kondensatorów Cl i C2. Czasy opóźnień zależą od pojemności użytych kondensatorów oraz rezystora Rl. Schemat montażowy układu pokazano na rys. 2. Mamy nadzieję, że jego własnoręczne wykonanie sprawi wiele satysfakcji każdemu początkującemu elektronikowi. Dołączenie go do instalacji dzwonkowej ułatwi schemat z rys. 3. Andrzej Gawryluk, AVT Przycisk P1 Sterownik \_ dzwonka (Q Rys. 3 WYKAZ ELEMENTÓW Rezystory Rl: lOOka R2: 3,3kQ R3: 3,9kQ Półprzewodniki D1...D3: 1N4148 Tl, T2: BC547 Różne PKl: MH4-12 Płytka drukowana jest dostępna wAVT- oznaczenie AVT-1340. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp: 11 www. ep.com.pl/?p df/ majO2.htm oraz na płycie CD-EP05/2002 w katalogu PCB. Elektronika Praktyczna 5/2002 MINIPROJEKTY Wykrywacz przewodów sieciowych Kolejny " tra n zystoro wy " miniprojekt w EP. Tym razem jest to wykrywacz przewodów elektrycznych, za pomocą którego można m.in. ustalić położenie linii instalacji elektrycznej ukrytej pod tynkiem. WYKAZ ELEMENTÓW Rezystory Rl: 47 kO R2: 5,7 kQ R3: 3,9kQ R4: 820D Półprzewodniki Dl: LED Tl: BF245 T2, T3: BC548 Różne Pl: miniaturowy przycisk do druku BA TT 2xRÓ 1,5V Płytka drukowana jest dostępna w AVT - oznaczenie AVT-1339. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http:llwww.ep.conj.pl/7pdfl majQ2.htm oraz na płycie CD-EP05/2002 w katalogu PCB. Głównym przeznaczeniem układu jest szybkie wykrywanie pod tynkiem przewodów elektroenergetycznych będących pod napięciem. Sprawdzenie gdzie się znajdują przewody jest ważne przed każdorazowym wierceniem dziur w ścianie, zwłaszcza gdy mamy zamiar wiercić w nieznanym nam budynku. Nie musimy nikogo przekonywać, że wwiercenie się w przewody sieciowe powoduje niebezpieczeństwo porażenia oraz dość poważne problemy związane z usunięciem awarii. Ten prosty wykrywacz pozwala z dość dużą dokładnością określić przebieg trasy przewodu e n ergety c zn eg o. Schemat elektryczny wykrywacza pokazano na rys. 1. Budowę układu oparto na trzech tranzystorach: jednym unipolarnym Tl (BF245) i dwóch bipolarnych T2, T3 (BC548). Elementem czujnikowym jest tranzystor polowy, za pomocą którego jest wykrywane pole elektryczne wokół przewodu energetycznego będącego pod napię- ciem. Obecność tego pola sygnalizowana jest zapalaniem się diody sygnalizacyjnej LED. Płytka drukowana (schemat montażowy na rys. 2) została zaprojektowana i wykonana w kształcie miniaturowego "pistoleciku". Zasilanie zapewniają dwie baterie typu R6 przylutowane do płytki na stałe. Jako język spustowy (włącznik) służy przycisk Pl, po naciśnięciu którego układ zaczyna działać. Z montażem i uruchomieniem nie powinniśmy mieć żadnych problemów - kilka minut i układ mamy gotowy. Ze względu na to, że układ pracuje tylko wtedy, kiedy jest naciśnięty przycisk Pl, postanowiłem baterie zasilające R6 umieścić na płytce na stałe, co sprawia, że wykrywacz staje się przenośnym, mieszczącym się w każdej kieszeni lub torbie narzędziowej. Krzysztof Górski, AVT GÓRSKI R6 + R6 Rys. 2 76 Elektronika Praktyczna 5/2002 PROJEKTY CZYTELNIKÓW DzioS "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. Obsługa przetwornika A/C AVT-1085 pod Linuksem W artykule przedstawiamy sposób obsługi przetwornika AVTlO35 "pod opieką" systemu Linux. W praktyce laboratoryjnej często zachodzi konieczność pomiaru wielkości fizycznych oras pozyskiwania danych w celu dalszego ich przetwarzania za pomocą komputera. Niemal wszystkie wielkości w otaczającym nas świecie przyjmują wartości ciągłe, a nie kwantowane, natomiast komputer jest urządzeniem cyfrowym i oczekuje danych w systemie binarnym. Zadaniem przetwornika a nałogowo-cyfrowe go (A/C) jest zamiana sygnału analogowego na sygnał cyfrowy. Sygnał taki może już być poddany analizie komputerowej. Układy pomiarowe tego typu mogą być używane do pomiaru wielkości fizycznych i fizykochemicznych, takich jak napięcie, natężenie prądu, opór, temperatura, ciśnienie, natężenie światła, natężenie dźwięku, pH i wiele innych. Możliwość współpracy przetwornika z urządzeniami przetwarzającymi te wielkości na sygnał elektryczny, tj. termis-torami, fotorezystorami elektrodami, itp. czynią przetworniki A/C urządzeniami bardzo przydatnymi w laboratorium. Jeszcze do niedawna zbudowanie przetwornika A/C w domowych warunkach było zadaniem przekraczającym umiejętności przeciętnego elektronika-amatora, nie wspominając o niezbędnym wyposażeniu i kosztach. Obecnie jest to znacznie łatwiejsze i nie wymaga znacznych nakładów finansowych. Układy scalone realizujące funkcję 11 I przetwornika A/C są szeroko dostępne na rynku i stosunkowo tanie. Niektóre firmy oferują gotowe zestawy do samodzielnego montażu, których cena nie przekracza kilkudziesięciu złotych. Istnieją nawet miniaturowe rozwiązania, w których cały układ elektroniczny mieści się w standardowej wtyczce złącza portu równoległego. Przykładem takiego rozwiązania jest zestaw AVTlO85 opisany w EP8/96. AVT1O85 i Linux W niniejszym artykule przedstawiony jest program służący do obsługi przetwornika A/C zbudowanego z wykorzystaniem tego zestawu. Program pracuje pod kontrolą systemu Linux. Wymagania sprzętowe są minimalne, można z powodzeniem pracować na komputerze osobistym z procesorem 80486. Przedstawione rozwiązanie po wprowadzeniu niewielkich modyfikacji daje się przystosować do pomiaru różnych wielkości fizycznych i fizykochemicznych. Do testowania programu wykorzystałem dzielnik napięcia zbudowany z fo-torezystora i rezystora lMLl Pomimo szeregowej transmisji danych z przetwornika do komputera, do obsługi układu zastosowano port równoległy. Ma to swoje uzasadnienie, np. umożliwia wykonanie przetwornika wielokanałowego lub ukrycie całego układu elektronicznego w standardowej wtyczce złącza Centronics (DE-25). Układ elektroniczny Przetwornik oparty jest na układzie ADC0831 firmy National Semiconductor. Oto 13 Projekt 098 niektóre z parametrów tego układu: Rozdzielczość: 8 bitów Błąd: ą1 LSB Napięcie zasilania: 5 VDc Moc: 15 mW Częstotliwość zegara: 10... 400 kHz Temperatura pracy: 0... 70C Na rys. 1 pokazano przebiegi czasowe charakterystyczne dla pracy układu. Układ wymaga taktującego przebiegu prostokątnego podawanego na wyprowadzenie 7 (CLIĆ). Mierzone napięcie podłączone jest do wyprowadzenia 2. Po aktywacji niskim sygnałem logicznym podanym na wyprowadzenie 1 (/CS), począwszy od drugiego opadającego zbocza sygnału taktującego, na wyjściu (wyprowadzenie 6) pojawiają się kolejne bity mierzonej wielkości, od najstarszego (MSB) do najmłodszego (LSE). Na wyprowadzenie VręF układu podaje się stabilizowane napięcie 5V. Wartość tego napięcia ma istotny wpływ na dokładność pomiarów. Wejście układu należy zabezpieczyć przed przekroczeniem dopuszczalnego zakresu napięć za pomocą rezystorów i krzemowych diod impulsowych, zgodnie z opisem w EP 8/96. Pojawienie się na wejściu napięcia wyższego lub niższego od Vcc o ok. 0,7 V powoduje wejście odpowiedniej diody w stan przewodzenia i w rezultacie ogra- \S4- L5+ S7- SS+ D7 D6 D5 D4 03 D2 Dl DD CDy \ 0 D D 0 0 D 0 0 C3- C2+53+ Cl- / Rys. 1. Rys. 2 Elektronika Praktyczna 5/2002 83 PROJEKTY CZYTELNIKÓW niczenie poziomu napięcia wejściowego. Aby umożliwić wykrycie obecności wtyczki z przetwornikiem, wyprowadzenie 8 portu równoległego (odpowiadające bitowi D6) połączone jest z wyprowadzeniem 12 [S5+] wewnątrz wtyczki. Sygnał wyjściowy przetwornika pojawia się na wyprowadzeniu 10 (S6+). Rozkład wyprowadzeń złącza Centronics przedstawiony jest na rys. 2. Program do obsługi przetwornika Program napisany w języku C przedstawiono na list. 1. Ze względu na pewne ograniczenia kompilatorów znajdujących się w dystrybucjach systemu Linux, należy go skompilować z odpowiednią optymalizacją: gcc -02 adcO831 . c -o adc 0 8 31 Po uruchomieniu programu następuje jednoczesne zainicjowanie układu ADC0831 poprzez wyzerowanie bitu DO i doprowadzenie niskiego poziomu logicznego na wyprowadzenie /CS (w praktyce zerowany jest cały bajt) oraz sprawdzenie obecności wtyczki w gnieździe. Ze względu na opisane powyżej połączenie odpowiednich wyprowadzeń wewnątrz wtyczki, w przypadku jej obecności bit S5+ powinien mieć wartość taką, jak bit D6 (logiczne ze- ro). Cały bajt stanu odczytany z portu poddawany jest więc operacji iloczynu logicznego z wartością 25. Jeżeli iloczyn ten ma wartość logicznej jedynki, to oznacza to brak wtyczki i następuje wyprowadzenie odpowiedniego komunikatu na ekran oraz wyjście z programu. W przeciwnym razie jego działanie jest kontynuowane. Pętla for zapewnia generowanie przebiegu taktującego poprzez naprzemienne ustawianie i zerowanie bitu Dl. Za każdym razem odczytywana jest wartość całego bajtu portu stanu i sprawdzana wartość bitu S6+. Jeżeli ma on wartość 1, realizowana jest operacja alternatywy bitowej zmiennej res i bajtu o wartości 1 oraz przesunięcie bitowe w lewo. Dla najmłodszego bitu ostatnia z operacji nie jest już wykonywana; w tym momencie zmienna res ma wartość z zakresu od 0 do 255 odpowiadającą poziomowi mierzonego napięcia. Przetwornik zostaje zdezaktywowany, a wartość ta wyprowadzana na ekran. Rozbudowa programu Przedstawiony program może być łatwo rozszerzony i zmodyfikowany. Przykładowo, charakterystyka wielu urządzeń przetwarzających wielkości fizyczne na napięcie jest nieliniowa. W takiej List. 1 łinclude łinclude łdefine BASEPORT 0x37 8 int i,res; res=0; if (ioperm(BASEPORT, 3, 1)) { perror("ioperm"); exit(l); ) outb(0, BASEPORT) ; if (inb(BASEPORT+l)&32) { printf ("%s\n", "No conyerte] closeportO; exit(2); ) for (1=8; i>-l; -i) { usleep(lOO); outb(2, BASEPORT); usleep(lOO); outb(0, BASEPORT); if (i<8) { if (inb(BASEPORT+l)&64) res=res11 - if (i>0) outb(l, BASEPORT) ; closeportO; printf("%d\n", res); closeportO { if (ioperm(BASEPORT, 3, 0)) perror("ioperm"); exit(l); sytuacji należy odpowiednio zinterpretować i przeliczyć wynik działania programu. Ponadto, w systemie Linux program ten może być okresowo uruchamiany przez demona cron, co można wyko- rzystać np. w ciągłym moni-toringu temperatury reaktora. Wynik może być umieszczany na stronie internetowej lub wysyłany na telefon komórkowy w postaci SMS-a. Zygmunt Flisak 84 Elektronika Praktyczna 5/2002 PROJEKTY CZYTELNIKÓW Programowany dzielnik częstotliwości W domin ujących we współczesnej elektronice urządzeniach z układami p rogramowałnym i i sterownikami m ikroprocesoro wym i propozycja budowy urządzenia zawierającego tylko dwa "normalne" cyfrowe układy scalone wydawać się może nie na miejscu. Jednak i takie urządzenie, jak wykazano poniżej, daje się programować. Niejednokrotnie zachodzi potrzeba podziału częstotliwości sygnału cyfrowego w określonym stosunku. Proponowany układ pozwala na podział tej częstotliwości przez dowolną liczbę całkowitą z zakresu od 2 do 256. Krotność podziału uzyskuje Tab. 1. Ustawienia JP1 i JP2 dla poszczególnych podzakresów podziału Pozycja JP1 Pozycja JP2 1 2 1 2 X CSJ 4 3 3 8 5...7 4 16 9...15 5 32 17...31 6 64 33...63 7 128 65...127 8 256 129...255 się poprzez odpowiednie ustawienie zespołu ośmiu przełączników oraz dwóch jumperów. Opis działania układu Schemat elektryczny dzielnika przedstawiono na rys. 1. Sygnał w standardzie TTL doprowadzony jest poprzez wejście układu CONl-1 do wejścia 13 8-bitowego licznika binarnego, utworzonego poprzez kaskadowe połączenie dwóch liczników 4-bitowych zawartych w układzie USl 74393. Stany wyjść licznika poprzez przełączniki S1...S8 ustawiają dwie 4-wej-ściowe bramki AND układu US2 7421. Wejścia 2 i 12 USl zerujące licznik są sterowane wspólnie stanami wyjść 6 i 8 bramek US2 poprzez diody Dl, D2, rezystor R3 oraz jumper JP2. Projekt 099 Wyjście CONl-2 układu połączone jest selektywnie z jednym z wyjść licznika USl. Selekcji dokonuje się poprzez odpowiednie ustawienie jumpera JPl. Opcjonalnie wyjścia licznika mogą sterować prostym, 1-tranzystoro-wym, zbudowanym z elementów Tl, Rl, R2, R4 wzmacniaczem, umożliwiającym dołączeniem do wyjścia CONl-2 obciążenia zewnętrznego. Kluczowe znaczenie w programowaniu krotności podziału częstotliwości sygnału wejściowego ma sposób połączenia przełączników 84 Elektronika Praktyczna 5/2002 PROJEKTY CZYTELNIKÓW C0N1-2O C0N1-1 o C0N1-4O C0N1-3O WY Rys. I S1...S8. Przy pomocy tych przełączników krotność ta kodowana jest w postaci liczby binarnej. Zwarte styki 2-4 przełącznika oznaczają bit ustawiony, 2-3 - skasowany. Skrajny prawy przełącznik Sl reprezentuje bit najmłodszy, S8 - najstarszy. Ustawienie przełącznika powoduje połączenie jednego z wejść bramek AND US2 z odpowiadającym mu wyjściem licznika USl. Skasowanie przełącznika łączy jego wejście bramki AND US2 z znajdującym się najbliżej w lewo przełącznikiem ustawionym. Dla S8 najbliższym jest Sl. W ten sposób wszystkie nieaktywne wejścia bramek AND US2 połączone są z ich wejściami aktywnymi, niezależnie od ilości ustawionych przełączników S1...S8. Wyjątkiem jest usta- wienie krotności podziału na ,,0". Wszystkie wejścia bramek AND US2 połączone są wtedy razem i pozostają w stanie niskim, na wyjściu układu CONl-2 brak sygnału. Od momentu włączenia układu licznik US2 rozpoczyna zliczanie impulsów wejściowych. Bramki AND US2 są zamknięte. Na wejściach zerujących 2 i 12 licznika utrzymuje się wymuszony przez diody Dl i D2 stan niski. Z chwilą uzyskania przez licznik stanu zgodnego z ustawieniem przełączników S1...S8, wszystkie wejścia obu bramek AND US2 przechodzą w stan wysoki. Bramki zostają otwarte. Powoduje to wymuszenie za pośrednictwem rezystora R3 stanu wysokiego na wejściach zerujących 2 i 12 licznika. Licznik zostaje wyzero- 2- K 1 2 3 . T = K/Twe Rys. 2 wany i zliczanie rozpoczyna się od nowa. Częstotliwość sygnału na wyjściu CO Ni-2 układu jest tyle razy mniejsza od częstotliwości wejściowej, ile wynosi krotność podziału ustawiona przy pomocy przełączników S1...S8. Ten sposób działania układu dotyczy przypadków ustawienia JP2 w poz. 2, a JPl w pozycjach zgodnych z tab. 1, określającą podzakresy podziału częstotliwości w zależności od położenia jumperów JPl iJP2. Przestawienie JP2 w poz. 1 powoduje przyłączenie wejść zerujących 2 i 12 licznika USl do masy układu. Licznik pracuje wtedy w pełnym cyklu, niezależnie od ustawienia przełączników S1...S8. Przy poz. 1 JP2 krotność podziału zależy wyłącznie od położenia JPl i ma wartość 2n, gdzie n jest pozycją jum-pera JPl, stany przełączników Sl... S8 są przy tym obojętne. Przy poz. 2 JP2 położenie JPl musi odpowiadać ściśle zakresowi, w którym mieści się liczba zakodowana binarnie przełącznikami S1...S8. Przesunięcie JPl poza zakres w gÓTę spowoduje brak sygnału na wyjściu układu, prze- sunięcia w dół zmieniają krotności podziału w sposób możliwy wprawdzie teoretycznie do określenia, nie jest to jednak istotne bo i tak jest ona zawsze liczbą z przedziału 3...255 i może być ustawiona w normalny sposób, zgodny z tab. 1. Przy poz. 1 JPl, poz. 1 JP2 i ustawieniu S1...S8 na WYKAZ ELEMENTÓW Rezystory Rl (opcja): 1 ka R2 (opcja): 3,3 ka R3: 100 ka R4 (opcja): 1 ka Kondensatory Cl, C3, C4: 100 nF C2: 100 ^F/1ÓV Półprzewodniki Dl, D2: 1N4148 Tl (opcja): 2N2222 lub podobny USl: 74393 (74LS393) + podstawka US2: 7421 (74LS21) + podstawka Różne CON1: ARK4 (3,5 mm) JPl: goldpin 8x2 + jumper JP2: goldpin 1x3 + jumper S1...S8: przełgcznik hebelkowy Elektronika Praktyczna 5/2002 85 PROJEKTY CZYTELNIKÓW 240 220 200 180 160 140 / 1 Śa / / Sl i
*- - Rys. 3 2 5 10 15 20 25 30 35 40 45 50 Wypełnienie [%] 0, 1 lub 2 sygnał na wyjściu nie występuje. Współczynnik wypełnienia sygnału wyjściowego dla poz. 2 JP2 jest określony wzorem: W = IOOkOC+I-ź^-UJ/K [%] gdzie: K - krotność podziału. Zależność ta wynika z faktu, że wyjście układu pozostaje w stanie niskim do chwili osiągnięcia przez licznik stanu 2tn ~ 1\ od tego momentu do chwili wyzerowania licznika wyjście jest w stanie wysokim. Zależności czasowe na wyjściu dzielnika zilustrowano na rys. 2. Wykres pokazany na rys. 3 pozwala określić w przybliżeniu wartości wypełnienia dla najszerszego podzakresu podziału 129...255. W poz. 1 JP2 wypełnienie sygnału na wyjściu jest zawsze 50%. Układ dzielnika zasilany jest stabilizowanym napięciem ą5V dołączanym do punktów CONl-4 i CONl-3 układu. Kondensatory Cl, C2, C3 i C4 służą do odsprzęga-nia zasilania. Montaż i uruchomienie Dzielnik zmontowano na jednostronnej płytce drukowanej. Ze względu na niewielką liczbę elementów zastosowanych w układzie można go zmontować także na płytce uniwersalnej. Montaż należy rozpocząć od wlutowania od strony elementów zworek Z1...Z12, następnie montuje się przełączniki S1...S8. Teraz dopiero odpowiednie wyprowadzenia przełączników można połączyć od strony lutowania zworkami Z13...Z19. Połączenia te koniecznie wykonane być muszą przewodem izolowanym. W następnej kolejności montujemy: złącze CONl, goldpiny JPl i JP2, podstawki pod układy scalone, rezystory, diody, tranzystor, kondensatory stałe i elektrolityczny. W przypadku rezygnacji ze wzmacniacza wyjściowego pomijamy elementy Tl, Rl, R2 i R4, a punkty "A" i "B" zwieramy odcinkiem przewodu, oznaczonym na schemacie montażowym linią przerywaną. Punkt "M" jest tylko dodatkowym punktem masy układu. Po włożeniu w podstawki układów scalonych USl i US2 i umieszczeniu obu jumperów na poz. 1 oraz nieaktywnym ustawieniu przełączników S1...S8 (wszystkie hebelki w dół), do wejścia układu doprowadzamy sygnał TTL o znanej częstotliwości i włączamy zasilanie. Na wyjściu układu powinien pojawić się sygnał o częstotliwości dwukrotnie niższej i wypełnieniu 50%. Jeżeli układ działa prawidłowo, przestawianie JPl na kolejne pozycje powoduje każdorazowo obniżenie częstotliwości wyjściowej o połowę. Następnie przestawiamy JP2 na poz. 2, przełącznikami S1...S8 ustawiamy dowolną krotność K podziału z zakresu 3...255 (hebelki aktywnych przełączników w górę), JPl ustawiamy na pozycji zgodnej z tab. 1. Częstotliwość na wyjściu układu powinna okazać się K-tą podwielokrotnością częstotliwości sygnału wejściowego. Marek A. Kulczycki 86 Elektronika Praktyczna 5/2002 NA CD M.IN. KATALOGI: 5/ I WYŚWIETLACZY LCD 6/2002 czerwiec 15 zł 50 gr (w tym 7% vat) ZDALNIE STEROWANE MODUŁY AUTOMAT TRÓJWEJŚCI PROGRAMATOR DIODOWY OSWIEilil! BIBLIOTEKA EP IV ^Bibliotece LP" prezentujemy książki dotyczące zagadnień związanych z różnymi dziedzinami techniki, jednak zawsze przydatne w pracy elektronika iub 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 polki, 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, 126), Chcemy w ten sposób udostępnić je Czytelnikom EP, Wojciech Butryn: "Dźwięk cyfrowy", WKŁ 2001 Elektroniki Praktycznej Jest to książka, na którą - sądząc z listów nadchodzących do redakcji - czekali nas Czytelnicy. W pierwszym rozdziale książki autor przedstawia drogę rozwoju au-diofiliskich systemów odtwarzania muzyki, począwszy od systemów monofonicznych aż po współczesne systemy dźwięku do okólnego oparte na systemie Dolby Surround. Dla młodszych czytelników książki interesujący będzie rys historyczny, dzięki któremu będą mogli poznać kamienie milowe na drodze rozwoju współczesnej elektroakustyki -wbrew pozorom CD wynaleziono całkiem niedawno! Drugi rozdział zawiera szereg istotnych wiadomości o torach prze-twarzania sygnałów audio z uwzględnieniem torów przesyłowych stosowanych dla sygnałów analogowych i cyfrowych. Wyjaśniono w nim także elementarne zagadnienia związane z próbkowaniem sygnałów analogowych, a także najczęściej stosowanymi sposobami konwersji A/C i C/A. Trzeci rozdział zawiera omówienie systemów Dolby Surround, DS Pro, DS Pro E i EX, a także konkurencyjny w stosunku do nich DTS. W rozdziale czwartym autor omówił wymagania stawiane zestawom Surround, wyjaśniając przy okazji tajemnicze, a często stosowane, akronimy: THX i DCS. Kolejny, piąty, rozdział poświęcono przedstawieniu cyfrowych systemów kodowania i kompresji sygnałów fonicznych stosowanych w systemach audio wysokiej jakości. Rozdział szósty zawiera prezentacje systemów zapisu wielokanałowego, interfejsów cyfrowych stosowanych do przesyłania sygnałów audio, a także sposoby synchronizacji śladów. W dwóch kolejnych rozdziałach zgromadzono informacje o możliwościach zastosowania komputerów PC jako cyfrowych stołów mikserskich oraz o sposobach dystrybucji muzyki przez Internet. Ostatnie trzy rozdziały zawierają ogólne omówienie budowy procesorów DSP, przykładowego zestawu ewaluacyjnego z DSP, przedstawiono w nich podstawowe zagadnienia związane z programowaniem procesorów DSP oraz szereg przykładowych rozwiązań programowych umożliwiających wpływanie na niektóre parametry odtwarzanego sygnału audio. Najbardziej spektakularnym przykładem przedstawionym w książce jest maksymalnie uproszczony dekoder Dolby Pro Logic wykonany na procesorze sygnałowym firmy Motorola. Nie jest to oczywiście dekoder możliwy do zastosowania w aplikacji, autor skupił się na pokazaniu idei tworzenia programów tego typu. Na końcu książki znajduje się kilkunastostronicowa kolorowa Dźwięk f ę cyfrowy wkładka, na której znajdują się zdjęcia sprzętu omawianego w książce, a także "zrzuty" ekranów niektórych programów umożliwiających edycję dźwięków na PC. Prezentowana książka zawiera niewiele szczegółów inżynierskich, przydatnych w samodzielnym budowaniu systemów cyfrowego audio, zawiera za to bardzo dużo informacji o współczesnych urządzeniach stosowanych w elektroakustyce, których zdobycie inną drogą nie jest praktycznie możliwe lub bardzo trudne. Za to pięć lutownic. Bartłomiej Zieliński: "Układy mikroprocesorowe. Przykłady rozwiążań"T Helion 2002 Wbrew tytułowi, w prezentowanej książce zawarto ekspresowy przewodnik po świecie układów cyfrowych. Pierwsze dwa rozdziały zawierają informacje o wybranych układach TTL (w gronie przedstawionych układów czasowych znalazł się także 555] i ich parametrach, a także przykłady ilustrujące sposób dobierania wartości rezystorów ograniczających prąd wyjściowy do wartości bezpiecznej dla różnych wersji tych układów. W "mikroprocesorowej" części książki autor skrótowo przedstawił dwa mikrokon-trolery: 8048 i 8051 oraz mikroprocesor Z-80, a także opisał różne układy peryferyjne: pamięci stałe (także archaiczne bipolarne PROM-y], statyczne i dynamiczne pamięci RAM, równoległe programowane porty I/O (8255, Z80-PIO oraz wykonywane z układów TTL - w tym interfejsy wyświetlaczy LED], układy czasowe (8 25 3 i Z80-CTC]. Autor zamieścił w książce wiele interesujących przykładów, przy czym większość z nich dotyczy budowania dekoderów adresowych umożliwiających "upakowanie" niezbędnych peryfe-riów w przestrzeni adresowej mikrokontro-lera lub mikroprocesora. Teraz najtrudniejsza część recenzji -podsumowanie. Naszym zdaniem książka może byc naprawdę użyteczna, jednak po wprowadzeniu szeregu poprawek dotyczących nazewnictwa, a także dostosowaniu treści książki do współczesnych realiów (pomi- Elektronika Praktyczna 6/2002 121 BIBLIOTEKA EP Legenda: Układy mikroprocesorowe Przykłady rozwiązań
nięcie PIC-ów i AVR-ów, a prezentacja 8048]. Podczas przeglądania książki zwróciliśmy także uwagę na to, że w większości opisywane w książce układy TTL (w tym 55 5] nie są wykorzystywane w prezentowanych projektach - po co zatem zostały opisane w książce pod tytułem "Układy mikroprocesorowe..."? Odbiorców książki może wprowadzić w błąd stwierdzenie, że Z-80 jest kompatybilny z 8080 - osoby znające te mikroprocesory wiedzą, że jest to porównanie malucha z mniej-więcej Hondą Civic. Pomimo tych uwag, gorąco zachęcamy zarówno autora, jak i wydawnictwo Helion, które co jakiś czas zasila elektroników dobrymi książkami, do rozwijania tej gałęzi swojej działalności. Przyznajemy książce 4 lutownice. Tadeusz Kaczorek: "Wektory i macierze w automatyce i elektrotechnice", WNT 1998 (wydanie II) Jest to jedna z najbardziej, spośród dotychczas prezentowanych, związanych z teorią książek. Zresztą, tego można było oczekiwać znając działalność zawodową Autora. W tytule znalazły się: elektrotechnika i automatyka, ale większość mechanizmów obliczeniowych jest wykorzystywana także w analizie i symu- Wektory i macierze w automatyce i elektrotechnice lacji układów elektronicznych. Trudności z zaawansowanymi obliczeniami macierzowymi miewają także studenci wydziałów elektroniki krajowych Politechnik. Prezentowana książka nie jest łatwa w odbiorze. Z pewnością nie było zamiarem autora przygotowanie książki beletrystycznej o obliczeniach macierzowych, lecz podręcznika dla co najmniej średnio zaawansowanych odbiorców. Wedle naszej - niestety niepełnej w tej dziedzinie - wiedzy tak przyjęty zamiar powiódł się. Kathryn Booth, Steven Hill: "Optoelektronika", WKŁ2OO1 rozwiążan"T Helion 2002 Jest to dobrze napisany podręcznik, dzięki któremu można poznać szeroko pojęte zagadnienia współczesnej optoelektroniki. Najwięcej miejsca autorzy poświęcili przesyłaniu sygnałów cyfrowych za pomocą światłą laserowego, co stało się pretekstem do przypomnienia podstaw optyki, omówienia budowy i zasady działania laserów i innych źródeł światła, fotodetektorów (w tym fotodetektorów termicznych], a także przetworników obrazu (także CCD). Nieco miejsca autorzy przeznaczyli także na omówienie zagadnień związanych z budową i zasadą działania urządzeń wyświetlających (w tym wyświetlaczy LCD, LED i VFD], a także wyspecjalizowanych urządzeń stosowanych w systemach przesyło- książka wybitna, polecamy! książka o dużych walorach praktycznych, polecamy! może się przydać daleka od doskonałości 1? Je warto kupować wych sygnałów optycznych i nowoczesnych wyświetlaczach. Ze względu na podręcznikowy charakter opracowania, autorzy umieścili w książce szereg zadań ułatwiających samodzielną naukę. Optoelektronika Kathryn Bootl Sieuen Hill i 1 122 Elektronika Praktyczna 6/2002 PODZESPOŁY woźnym problemem występującym w sprzęcie ^ elektronicznym jest zjowisko wyładowania / elektrostatycznego ESD (Electrostatic Discharge), ^mogące w krańcowych przypadkach doprowadzić do jego-trwałego uszkodzenia lub spowodować błędfL^ / * w przesyłanych danych. ~~^ W artykule przedstawiamy krótki przegląd elementów produkowanych przez firmę Littelfuse, które , minimalizują niebezpieczeństwo uszkodzeń sprzętu elektronicznego. ESD co to Wyładowanie jest? Wyładowanie elektrostatyczne ESD jest to przeskok ładunku elektrycznego między dwoma obiektami. Typowym przy-kładem jest wyładowanie jakiego doświadczy osoba, która przejdzie po podłodze wyłożonej wykładziną syntetyczną, a następnie dotknie klamki metalowych drzwi lub innego metalowego, uziemionego przedmiotu (rys. 1). W momencie dotyku nastąpi przeskok małej iskry i można usłyszeć cichy trzask. Zjawisko ESD rozpoczyna się w momencie generowania elektryczności statycznej. Gdy jeden materiał (np. podeszwy butów) dotyka innego materiału (wykładzina podłogowa), po ich oddzieleniu wytworzy się różnica potencjałów elektrycznych. Elektrony z wykładziny podłogowej "prsechodzą" na zewnętrsną powierzchnię człowieka, co powoduje przewagę na podłodze ładunków dodatnich. Poziom elektryczności statycznej, wzrasta do wartości maksymalnej, jeśli wcześniej nie nastąpi zetknięcie się człowieka z powierzchnią posiadającą przeciwny ładunek elektryczny. Zjawisko ESD różni się od innych znanych przypadków przepięć (przepięcie udarowe, przepięcie łączeniowe) tym, że czas powstania zjawiska od zera do maksimum jest bardzo krótki. Nie przekracza on 1 ns. Przy innych przypadkach przepięć czas ten dochodzi do mikrosekundy. Międzynarodowa Komisja Elektrotechniczna (IEC) opracowała model zjawiska ESD dotyczący człowieka (rys. 2). Model ten został wykorzystany w testach IEC, aby określić, na ile systemy (komputery, sieci teleinformatyczne, telefony komórkowe itp.) są wrażliwe na zjawisko ESD. Szkodliwość zjawiska ESD Dla człowieka zjawisko ESD jest tylko nieprzyjemnym, chwilowym odczuciem, nie powodującym żadnej fizycznej szkody. Rys. 1 IEC 61000-4-2 100% I
Fot. ó Inaczej jest w przypadku aparatury elektronicznej. ESD nie stanowi niebezpieczeństwa dla człowieka, ale prąd i napięcie powstające w wyniku ESD mogą powodować zakłócenia w pracy sprzętu elektronicznego lub trwałe jego uszkodzenie. Przykładowo technik montujący sieć komputerową, wskutek przesuwania lub łączenia sprzętu elektronicznego z przewodami, może nieumyślnie spowodować wyładowanie ESD (rys. 3). Zjawisko ESD nie stanowi zagrożenia, jeśli wyładowanie nastąpi przez obudowę metalową sprzętu. W tym przypadku prąd ESD przepłynie z chassis do uziemienia obudowy. Gorzej jest, gdy prąd ESD zostanie skierowany na magistralę sygnałową systemu. W tym przypadku prąd i napięcie ESD mogą uszkodzić układy scalone systemu. Układy scalone są zabezpieczone przed napięciem ESD do 2000Y. Człowiek natomiast może wygenerować napięcie ESD do 15000V. Ten poziom napięcia może uszkodzić układy scalone. Problem wyładowań ESD dotyczy również użytkowników telefonów komórko- wych, komputerów i innego rodzaju sprzętu elektronicznego. Jeśli zjawisko ESD wystąpi w systemie elektronicznym może to spowodować: - Częściowe zniekształcenie strumienia danych lub zakłócenia pracy systemu. Jest to stan chwilowy, który można usunąć korygując dane lub pracę systemu. - Element elektroniczny wchodzący w skład systemu jest częściowo uszkodzony z powodu ukrytej wady, ale nadal działa poprawnie. Przy wystąpieniu zjawiska ESD nastąpi przedwczesne uszkodzenie systemu. - Nastąpi trwałe uszkodzenie elementu operacyjnego systemu. Wynikiem tego może być, np. przebicie złącza, topnienie połączeń, itp. Tego rodzaju uszkodzeń należy szczególnie unikać. Każdy z tych przypadków wymaga stosowania odpowiednich zabezpieczeń. Szczególnie odnosi się to do przypadku wymienionego w ostatnim punkcie. Metody skutecznego rozwiązania problemu ESD Littelfuse wyszedł naprzeciw potrzebom konstruktorów sprzętu elektronicznego. Firma przedstawiła bogatą ofertę produktów, których zastosowanie skutecznie likwiduje zjawisko ESD. Oferta zawiera trzy grupy produktów: - Wielowarstwowe warystory MLV [Mul-iiLayer Varisiors) - fot. 4, - Krzemowe matryce diodowe SP72x i SP050x - fot. 5, 6 i 7, - Polimerowe elementy tłumiące [Pulse-Guard Suppressors) - fot. 8. Rys. 9 Fot. 8. Warystory MLV są zbudowane z warstw elektrod metalowych i ceramicznych z nałożonym tlenkiem cynku. Jeśli nie ma zakłóceń, elektroda ceramiczna pokryta tlenkiem cynku działa jak izolator. Przy wzroście napięcia, gdy wystąpi przepięcie o dużej wartości, granice ziaren kryształków tlenku cynku zmieniają rezystancję z wysokiej na małą. W ten sposób przepięcie zostanie "zwarte" z zabezpieczanej linii do masy zasilania. Elementy MLV są najskuteczniejsze w tłumieniu ESD. Wykorzystuje się je do ochrony elektroenergetycznych linii sterowania i linii transmisji danych. Do grupy tej należą warystory typu MLA, MLE, MHS i MLN. Ich pojemność wynosi 3...4,5pF, napięcie pracy 3,5...120VDC. Krzemowe matryce diodowe serii SP72x i SP05xx stosuje się do zabezpieczania linii sterowania, linii przesyłania danych. Ich pojemność wynosi odpowiednio 3...5 pF i 3...39 pF. Napięcie pracy dla SP72x wynosi 35VDC, a dla SP050 do 5,5VDC. Polimerowe elementy tłumiące [Pulse-Guard Suppressors) różnią się od omówionych wyżej tym, że można je stosować jedynie do zabezpieczeń przed zjawiskiem ESD. Zastosowany w układzie polimer nie może pracować przy większym poziomie energii, np. przy wystąpieniu fali udarowej. Układy te posiadają najniższą pojemność 0,050 pF. Napięcie pracy wynosi 24VDC. Stosuje się je w liniach sterowania i przesyłania danych. Podsumowanie W artykule zasygnalizowano jedynie możliwości oferowane przez produkty firmy Littelfuse, bez wgłębiania się w technologię ich produkcji, jak również w parametry techniczne. Szersze informacje na ten temat znajdują się w katalogach i ulotkach (wybrane materiały techniczne publikujemy na CD-EP6/2002B). Pomocny w doborze właściwej rodziny elementów może być także iys. 9. Zbigniew Szczerbowski, EKOL Dodatkowe informacje Artykuł powstat na bazie maTeriatów lirmy Littelfuse. Dodatkowe informacje są dostępne: - na płycie CD-EP6/2002B, - w Internecie pod adresem www.littelluse.com, - u przedstawiciela firmy Littelfuse: Ekol.tel. (22) 864-73-56, e-mail: fuses@poczta.onet.pl. 124 Elektronika Praktyczna 6/2002 AUTOMATYKA Ministerownik logiczny firmy Allen Bradley Na rynku małej automatyki coraz ciaśniej. Do szacownego grona mini-sterowników logicznych, bardzo lubianych wśród elektroników zajmujących się automatyką, dołączył moduł Pico produkowany przez firmę Allen Bradley. Jego skrótową charakterystykę przedstawiamy w artykule. Sterownik Pico firmy Allen-Bradley jest miniaturowym modułem logicznym umożliwiającym wykonywanie prostych operacji logicznych na sygnałach wejściowych, operacji czasowych, a także zliczanie impulsów. Podobnie do protoplasty - sterownika LOGO! - Pico zaprojektowano do realizacji prostych algorytmów sterowania z wykorzystaniem stosunkowo niewielkiej liczby sygnałów wejściowych (8 lub 12) i 4 lub 6 sygnałów wyjściowych. Mikrokontroler zastosowany w Pico jest dość szybki, dzięki czemu maksymalny czas trwania wykonywania programu nie przekracza 40 ms (minimalny czas to 500s). Pico zaprojektowano w taki sposób, aby jego programowanie (za pomocą diagramów drabinkowych) i użytkowanie było jak najprostsze. Program sterujący jego pracą można przygotować bez konieczności stosowania jakichkolwiek narzędzi progra- mistycznych (chociaż są dostępne), wykorzystując wbudowaną w moduł klawiaturę i graficzny wyświetlacz LCD. Dostępne są także warianty po- nntfęnnfl warianty tf er nurnika Pinn Parametr Pico 1760--L12BWB-NC Pico 1760--L12BWB Pico 1760--L12AWA-NC Pico 1760--L12AWA Pico 1760--L12AWA-NC Pico 1760--L18AWA Napięcie zasilania 24VDC 24VDC 120/ 240VAC 120/ 240VAC 120/ 240VAC 120/ 240VAC Uczbawe|śćcyfrowyc i8/24VDC (2 mogą byó tez wykorzystane |akowe|-ścia analogowe o zakresie 0 10 VDC) 8/24 VDC (2 mogą byó tez wykorzystane |akowe|-ścia analogowe o zakresie 0 10 VDC) 8/120 240VAC 8/120 240VAC 8/120 240VAC 12/120 240VAC Wy|ściaprzekaźnikowe 4 4 4 4 4 a Wyświetlacz LCD / / / / - / Klawiatura / / / / - / Zegarczasurzeczywisteg / - / / / Wyświetlanie tekstów - - - - - / Nieulotnaparnięćdanyc h / / - - - / zbawione klawiatury i wyświetlacza, które można programować tylko poprzez złącze szeregowe. Pico być montowany na szynie DIN za pomocą specjalnych zatrzasków. Dostępny jest w kilku wersjach, zasilanych napięciem 120/240 VAC lub 24 VDC, wszystkie z wyjściami przekaźnikowymi (styki o obciążalności do 8A). Wersje zasilane napięciem stałym posiadają dwa wejścia, które mogą być wykorzystane jako stałonapięciowe wejścia cyfrowe lub jako wejścia analogowe o zakresie pomiarowym 0...10 V. Andrzej Gawry luk, AVT Dodatkowe informacje Sterownik do testów udostępniła redakcji firma Elmark, tel. (22) 821-45-83, www.elrnark.corn.pl. Dodatkowe informacje o sterownikach Pico można znaleźć naptycieCD-EP6/2002Borazwlnternecie pod adresem: http://www.elmark.com.pl/rockwell/ pico.htm. Elektronika Praktyczna 6/2002 129 PROJEKTY Rejestrator telefoniczny z dekoderem CLIP, część 1 AVT-5065 **" Projekt rejestratora telefoniczn ego, op u bliko wanego w EP 11/2000 (kit AVT-897), wywołał wielkie zainteresowanie, które nie słabnie do dziś. Przedstawiamy nowy, znacznie udoskonalony rejestrator telefoniczny. Wyeliminowano w nim większość wad, jakie miał układ poprzedni. Dodatkowo wprowadzono wiele nowych funkcji, które zdecydowanie poprawiają jego fun kej on a In o ść. Zacznę od dobrej wiadomości dla użytkowników kitu AVT-897. Wystarczy wymienić w nim mikrokontroler, kwarc oraz wyświetlacz, aby uzyskać urządzenie w nowej wersji. W tym przypadku będzie trzeba pogodzić się jednak z kilkoma ograniczeniami: brak obsługi drukarki równoległej, brak dekodowania CLEP w standardzie FSK (CLIP DTMF będzie działał), brak obsługi DCF\ Ograniczenia te można łatwo usunąć dobudowując prosty układ do rejestratora. Zainteresowanych rozbudową AYT-897 proszę o kontakt via e-maiL Budowa i działanie Po publikacji w EP 11/2000 pierwszej wersji rejestratora pojawiło się wiele pytań dotyczących (znaczenie niektórych złącz, sposób skonfigurowania komputera, obsługa itp.), dlatego opis rejestratora w wersji drugiej będzie bardziej szczegółowy. Schemat elektryczny rejestratora pokazano na rys. 1 (część "analo- gowa") oraz na rys. 2 (część "cyfrowa"). Na pierwszy rzut oka wydaje się, źe rejestrator ma zupełnie inną budowę niż jego poprzednik. Tak jednak nie jest. W nowej wersji dodano układ op-toizolacji portu szeregowego (OP4, OP5), interfejs drukarki równoległej (USlO), port do obsługi dekodera CLIP iDCF (US9), dekoder CLIP (US6), detektor 400Hz (US4), dekoder dzwonka (OP3), układ dyskryminacji (US2, PKl). Na płytce umieszczono alternatywny dekoder 16kHz (US5). Ponadto zmieniono obwód separacji rejestratora od linii telefonicznej. Funkcję tę spełnia transformator. W przypadku trudności z jego zdobyciem można go zastąpić obwodem złożonym z rezystorów i kondensatorów, tak jak to zrobiono w wersji pierwszej. Dzięki zastosowaniu detektora tonu 400Hz możliwe stało się wprowadzenie dodatkowego kryterium rozmowy - zanik tonu 400Hz. Rejestrator wykrywa zanik sygnału wołania, co rozpoznawane jest jako rozpoczęcie rozmowy. Przydatne jest to w centralach lub urządzeniach. PCM, które nie zamieniają biegunowości linii, ani nie generują 14 Elektronika Praktyczna 6/2002 Rejestrator telefoniczny z dekoderem CLIP '~\ai Tcs "TC IDOnF MOOnF 1t Rys. 1. Schemat elektryczny części analogowej rejestratora Elektronika Praktyczna 6/2002 15 Rejestrator telefoniczny z dekoderem CLIP D7_LCD/D0_PHT DU-CD/D1_PFTT D5_LCD/D2_PRT D4_LCD/D3_PFTT D3_LCD/D4_PFfT D3_LCD/D5_PRT D1_LCD/D8_PFfT DCLLCD/D7_PHT IC_LCD HW_LCD HS_LCD CON9 DCF Rys. 2. Schemat elektryczny części cyfrowej rejestratora sygnałów teletaksy. Należy jednak pamiętać, że nie jest to sposób pewny. Rejestrator bowiem musi stwierdzić sygnał wołania, charakteryzujący się czasem trwania tonu 400Hz 1 s ą200ms, a następnie jego zanik na co najmniej 5 s. Jeśli abonent wywoływany podniesie słuchawkę szybko (np. automatyczne zgłoszenie faksu, sekretarki), ton 400Hz może wystąpić na zbyt krótko, aby rejestrator poprawnie go rozpoznał. Podobnie w trakcie rozmowy, zanim upłynie 5 s, mogą pojawić się sygnały 400Hz lub jego harmoniczne, co może być potraktowane przez rejestrator jako ton. Może się więc zdarzyć, że początek rozmowy nie zostanie rozpoznany lub rozpoznanie to będzie opóźnione. Czas zarejestrowanej rozmowy może być więc zarejestrowany z błędem nawet do 5 s. Jakkolwiek podczas testów sytuacja taka nie zdarzyła się, to jednak trudno ocenić jak rejestrator zachowa się na innych centralach. Część analogowa Rejestrator zamontowano na dwóch płytkach. Jego opis działania rozpoczniemy od omówienia części analogowej o schemacie przedstawionym na rys. 1. Napięcie zasilania 12...15V jest podawane za pośrednictwem Dl na stabilizator USl oraz za pośrednictwem Rl na akumulator. Przez Rl doładowywany jest niewielkim prądem akumulator. Jego wartość należy dobrać tak, aby prąd do-ładowujący wynosił około 0,05C 16 Elektronika Praktyczna 6/2002 Rejestrator telefoniczny z dekoderem CLIP Krótka charakterystyka rejestratora: /zasilanie 8...15V/200 mA, /zasilanie awaryjne 10 h(12V/500 mA), /podświetlany wyświetlacz LCD, / dekodowanie impulsów wybierczych dekadowych i DTMF, /funkcja CLIP DTMF i FSK*, /bufor kołowy (stare rozmowy zastępują nowe) na 330...3500 rozmów, /obsługa drukarki Centronics i RS232C, /przeglądanie bufora rozmów na LCD, /szybkie sprawdzanie (1 przycisk) zajętości bufora, kosztu wszystkich rozmów i kosztu ostatniej rozmowy, /programator zabezpieczony kodem dostępu, /programowanie rejestratora z telefonu lub komputera, /pełna izolacja galwaniczna od komputera i linii telefonicznej, /kryterium rozmowy: zamiana biegunowości, impuls 16kHz, zanik tonu 400Hz, po czasie, / możliwość odtworzenia zawartości bufora po skasowaniu, /współpraca nowego programu ze "starym" sprzętem AVT-897, /sumy kontrolne w pamięci EEPROM, /dyskryminacja połączeń", / rejestracja połączeń przychodzących", / obsługa zegara DCF", /automatyczne wybieranie najtańszego operatora", Opcje oznaczone "*" będą dostępne w kolejnej wersji programu. (pojemność akumulatora w Ah/20). W żadnym przypadku nie należy przekraczać wartości O,1C. W czasie, gdy brak napięcia z zasilacza, stabilizator jest zasilany z akumulatora za pośrednictwem D2. Jest to dioda Shottky'ego o prądzie przewodzenia min. 1A. W przypadku trudności ze zdobyciem takiej diody można zastosować dowolną diodę prostowniczą. Sygnały z linii telefonicznej przechodzą przez elementy zabez- pieczające w postaci warystorów i transila (VRl...VR3, TRSl). Elementy te zabezpieczają rejestrator i telefon przed skutkami przepięć (np. wyładowania atmosferyczne). Nie należy jednak łudzić się, że zabezpieczenie to ochroni przed bezpośrednim uderzeniem pioruna w linię. Aby elementy te dobrze spełniły swą funkcję, to urządzenie musi być uziemione. Uziemieniem może być podłączenie np. do rury kanalizacyjnej (metalowa) lub ostatecznie rury CO. Po przejściu przez elementy zabezpieczające sygnał z linii telefonicznej przechodzi przez styki przekaźnika. Przekaźnik jest sterowany z wyjść bramek układu US2. Tranzystor Tl pełni rolę klucza załączającego przekaźnik. Elementy R43 i C33 dodano w celu zmniejszenia poboru prądu przez przekaźnik (ważne przy pracy bateryjnej). Jak wiadomo, prąd zadziałania przekaźnika jest dużo większy niż prąd podtrzymania. Po przejściu Tl w stan przewodzenia, dzięki C33, przez przekaźnik popłynie duży prąd. Po chwili C3 naładuje się i prąd przekaźnika zostanie ograniczony do wartości określonej przez R44. Elementy dobrano dla przekaźnika KL2P-12V. Jeśli zastosujemy inny, może okazać się konieczne dobranie wartości C33 i R43. Jeśli po podaniu niskiego poziomu napięcia na wejście 13 US2 przekaźnik nie "łapie", należy zwiększyć pojemność C33. Jeśli przekaźnik "łapie" na chwilę, należy zmniejszyć wartość R43. Styki przekaźnika w stanie spoczynku przyłączają linię telefoniczną na sepa- Rys. 3. Schemat elektryczny układu zerowania procesora (alternatywny watchdog) rator sygnału DTMF i telefaksy (G5, TRI), detektor dzwonka (D7, D8, R9, Ml, RIO, OP3, C9), czujnik prądu (D3...D6, R5, OPl, OP2), a następnie do telefonu. Z powodu zastosowania czujnika prądu rejestrator musi być pierwszym urządzeniem przyłączonym do linii telefonicznej. Rozmowy prowadzone z telefonów podłączonych przed rejestratorem nie będą rejestrowane. Transformator TRI musi być wykonany specjalnie do izolacji galwanicznej linii telefonicznej. Z reguły nie nadają się do tego transformatory z aparatów telefonicznych ze względu na zbyt wąskie pasmo. W modelu zastosowano transformator pochodzący z bloku translacji miejskiej centrali telefonicznej i taki będzie dostarczany w kicie. Zamiast transformatora można wykorzystać obwód złożony z RZ1...RZ4, C5A (elementy zaznaczone na szaro). Mogą się jednak pojawić kłopoty z dekodo-waniem sygnału DTMF i telefaksy spowodowane sprzężeniami i zakłóceniami. Wszystko zależy od parametrów linii telefonicznej i zasilającej 220V. W obwodzie detektora sygnału dzwonka dodano elementy R12, CIO. Dzięki nim na wyjściu transoptora pojawia się stały poziom niski ("L") w czasie wysyłania przez centralę sygnału dzwonienia, a nie ciąg impulsów 50Hz. Rezystor R2 w czujniku prądu dodano po to, aby urządzenie dobrze współpracowało z telefonami, które pobierają prąd z linii telefonicznej. Bez tego rezystora czujnik prądu stwierdzał jego przepływ nawet wtedy, gdy słuchawka była odłożona, co powodowało błędne działanie rejestratora. Gdy styki przekaźnika są zwarte, telefon przyłączony do rejestratora jest zasilany przez rezystory R3, R4 napięciem 12V. W słuchawce aparatu słychać często przerywany sygnał o częstotliwości 330Hz. Sygnał ten jest wytwarzany w typowym generatorze na 4093 (US2). Kondensator C6 separuje ten sygnał od składowej stałej. Rezystor R6 pełni dwie funkcje: ogranicza impuls prądu pojawiający się po włączeniu zasilania spowodowany obecnością C6, który mógłby uszkodzić wyjście bramki układu US2 oraz zmniejsza poziom tonu 33 0Hz w słuchawce. Zbyt wysoki sygnał Elektronika Praktyczna 6/2002 17 Rejestrator telefoniczny z dekoderem CLIP / Rys. 4. Rozmieszczenie elementów na płytce drukowanej mógłby zakłócić pracę dekodera DTMF. Przerywany ton 330Hz informuje użytkownika, że rejestrator znajduje się w trybie programowania lub zadziałał układ dyskryminacji. Sygnał audio po przejściu przez transformator jest kierowany do mostka prostowniczego pełniącego funkcję zabezpieczającą. Nie dopuszcza on do pojawienia się impulsów o amplitudzie większej niż napięcie zasilania lub napięć ujemnych względem masy. Sygnał audio trafia na dekoder DTMF zbudowany na US3 w typowym układzie z wejściem różnicowym. Podczas dekodowania tonów DTMF na wyjściu 15 US3 pojawiają się impulsy dodatnie, natomiast na wyjściach 11... 14 numer odebranego kodu. Należy pamiętać, że cyfrze "0" odpowiada kod %1010 (SA), a nie %0000. Z wyjścia wzmacniacza operacyjnego umieszczonego w US3 sygnał jest kierowany do detektorów tonu 400Hz na US4 i alternatywnego 16kHz na US5. Oba detektory pracują w typowej konfiguracji. Dzięki wykorzystaniu wzmacnia- cza zawartego w US3 zaoszczędzono jeden układ scalony (np. TL081). Należy jednak pamiętać, że aby poprawnie działały detektory 400Hz i 16kHz US3 musi być zamontowany. Sygnał audio z transformatora jest kierowany jeszcze do dekodera FSK na US6 oraz dekodera telefaksy na US7. Oba układy pracują w typowych konfiguracjach. Sygnał zegarowy 3,5 7MHz pochodzi z generatora w US3. Dlatego, aby poprawnie działał detektor 16kHz i FSK układ US3 musi być zamontowany. Część cyfrowa Główną rolę spełnia w niej procesor US8. Nad jego poprawnym zerowaniem czuwa watch-dog US11 typu DS1232. W przypadku trudności z jego zdobyciem można zastosować układ alternatywny przedstawiony na rys. 3. Na płytce przewidziano złącze CON12 służące do umieszczenia alternatywnego watchdoga na płycie. Jego zasada działania jest bardzo prosta: impulsy przychodzące na wejście CK za pośred- nictwem układu różniczkującego zerują licznik 4060. Jeśli impulsy nie przyjdą w odpowiednim czasie (około 1 s) wyjście Q13 zmieni poziom na wysoki. Spowoduje to pojawienie się niskiego poziomu napięcia na wyjściu /INT, a co za tym idzie do CPU zostanie wygenerowane przerwanie (za sprawą US9). Jeśli nadal nie pojawi się na CK impuls zerujący licznik, wysoki poziom z wyjścia Q14 zeruje CPU. Gdyby z jakichś powodów CPU nie wystartował poprawnie, sygnał zerujący pojawiać się będzie cyklicznie co około 1 s. Wyjaśnienia wymaga rola jum-pera JPR. Ma on znaczenie, jeśli zastosujemy DS1232. Służył on podczas pisania oprogramowania do generowania przerwania w przypadku "padu" programu. Przy rozwartym JPR USll generuje sygnał przerwania do procesora za pośrednictwem US9. Procesor wysyła wtedy poprzez interfejs szeregowy informacje o miejscu "padu" programu, stanie rejestrów itp. Właściwy sygnał zerujący jest generowany przez watchdoga umieszczonego w pro- 18 Elektronika Praktyczna 6/2002 Rejestrator telefoniczny z dekoderem CLIP \ t / i \ i i \ \ s 1
Rys. 5. Rozmieszczenie otworów w obudowie cesorze. Ze względu na to, że AT89C55 nie ma wewnętrznego watchdoga, JPR musi być zwarty. Na płytce dostarczonej w kicie pola lutownicze pod JPR są zwarte cienką ścieżką i nie ma konieczności zakładania jumpera. Procesor obsługuje wyświetlacz LCD podłączony do złącza CONll. Musi to być wyświetlacz 2x16 znaków. Jeśli będzie wyposażony w podświetlanie T2 będzie je załączał w odpowiednich momentach. Ze względu na to, że podświetlanie LCD jest zasilane z napięcia 15V, konieczne stało się ograniczenie prądu rezystorem R35. Przy zakupie wyświetlacza z podświetlaniem należy zwrócić uwagę czy wyprowadzenia służące do dołączenia zasilania nie są połączone z wyprowadzeniami podświetlacza LED. Z tego samego portu co LCD jest sterowana drukarka w standardzie Centronics. Konieczne stało się zastosowanie bufora z zatrzaskiem (US10). Spełnia on dwie funkcje: 1) Separuje magistralę LCD od magistrali drukarki, która jest długa jak na układy procesorowe. Brak bufora mógłby powodować zakłócenia w pracy LCD. 2) Dzięki buforowi, w czasie gdy dukarka przyjmuje znaki zatrzaśnięte w buforze US10 impulsem na linii zegara (wyprowadzenie 11 US10), można komunikować się z wyświetlaczem LCD. Do komunikacji z komputerem lub drukarką szeregową służy złącze CON10. Elementy OP4, OP5 zapewniają izolację galwaniczną pomiędzy komputerem a rejestratorem. Brak izolacji galwanicznej w poprzednim rejestratorze objawiał się kłopotami z dekodowa-niem sygnałów DTMF i teletaksa-mi spowodowanymi zakłóceniami. W obwodzie elementami C30, D11...D13, R38, R40 wytwarzane jest napięcie ą3...12V wymagane w interfejsach RS232C. Przy współpracy rejestratora z komputerem nie ma żadnych kłopotów. Podczas pracy portu na wybranych wyprowadzeniach pojawiają się odpowiednie napięcia i interfejs pracuje prawidłowo. Jeśli rejestrator jest podłączony do komputera, w którym włączone jest zasilanie, na C30 powinno pojawić się napięcie w zakresie 3...12V. W modelu było to napięcie 7V. Przy pracy z drukarką mogą jednak wystąpić kłopoty. Jeśli drukarka będzie wyposażona w pełny port RS232C nie ma problemu, tak jak w przypadku komputera odpowiednie napięcia pojawią się. Gorzej, gdy drukarka będzie wyposażona w uproszczony port RS (tylko linie TxD, RxD, GND lub tylko RxD, GND). Brak wymaganych napięć zablokuje działanie interfejsu. Wyjściem z tej sytuacji jest podanie napięcia na odpowiednie wyprowadzenia CON10. W zasadzie wystarczy tylko napięcie dodatnie (+5...+15V). Można je podać z rejestratora. Masę rejestratora łączymy z katodą D12, a+12V podajemy na wypro- Wyświetlacz LCD Rys. 6. Umieszczenie płytek rejestratora w obudowie wadzenie 6 CON10. W takim przypadku "stracimy" jednak izolację galwaniczną. Napięcia można podać także z drukarki lub dodatkowego zasilacza. Jeśli dysponujemy tylko napięciem dodatnim, to podajemy je na wyprowadzenie 6 CON10, masę na katodę D12. Gdy dysponujemy napięciem symetrycznym, należy je podłączyć następująco: +12V na wyprowadzenie 6 CON10, -12V na wyprowadzenie 7 CON10, GND na wyprowadzenie 5 CON10. Do omówienia zostały jeszcze układy podłączone do magistrali IIC. Układ zegara czasu rzeczywistego jest identyczny jak w rejestratorze pierwszej wersji. Na styki złącza ulokowanego przy US12 wyprowadzono sygnały z nóżek 9, 10 i 11 układu zegara. Są tam dostępne sygnały: wyprowadzenie 9 - zmiana poziomu co pół minuty, wyprowadzenie 10 - przebieg lHz, wyprowadzenie 11 - przebieg 128Hz. Przebiegi te służą do kalibracji zegara trymerem. Do magistrali dołączona jest także pamięć EEPROM. W tej wersji program może obsłużyć nawet 64kB pamięci. Zwiększenie rozmiaru pamięci podyktowane było koniecznością przeniesienia do niej tablic taryf i prefiksów (AT89C55 nie ma wewnętrznej pamięci EEPROM), co spowodowało zmniejszenie bufora na rozmowy do około 300 rekordów. Zależnie od tego ile i jakiej pamięci zamontujemy w rejestratorze, bufor może pomieścić nawet 3500 rekordów. Wielkość pamięci jest wykrywana automatycznie przez program. Układ US9 jest portem I/O przyłączonym do magistrali IIC. Zastosowano go z powodu braku portów w US8. Układ US9 pełni także funkcję kontrolera przerwań. Każda zmiana stanu portów wejściowych US9 wywołuje przerwanie. Procesor stwierdza czy źródłem przerwania jest sygnał telefaksy, odebranie informacji CLIP-FSK, pojawienie lub zanik tonu 400Hz, czy też sygnał z odbiornika DCF. Zastosowanie US9 skomplikowało nieco program. Przy zmianie stanu linii DCF, 400Hz, 16kHz lub IRQN do procesora jest generowane przerwanie. Procesor odczytuje stan z portu PCF8574, kasując w ten sposób zgłoszenie przerwania. Następnie procedura określa źródło przerwania. Na Elektronika Praktyczna 6/2002 19 Rejestrator telefoniczny z dekoderem CLIP przerwaniach następuje całkowite dekodowanie danych pochodzących z odbiornika DCF. Do magistrali IIC mają dostęp: program główny, procedura przerwania INTO i TimerO. Aby nie nastąpiła kolizja na szynie IIC program główny blokuje przerwania INTO i TimerO na czas obsługi szyny IIC. Blokada następuje w momencie wywołania warunku startu, odblokowanie po warunku stopu, Gdyby w czasie obsługi magistrali przyszło przerwanie, zostanie ono obsłużone po zakończeniu obsługi magistrali IIC przez program główny. W ten sposób rozwiązano problem kolizji danych na magistrali. Z pomocą obwodu z elementu T3 wraz z R37 i R41 następuje konwersja sygnału z zegara DCF do poziomów akceptowanych przez US9. Na złącze CON7 wyprowadzono magistralę IIC, linię przerwań i napięcia zasilania. Sygnały te przewidziano do dalszych rozszerzeń. Montaż Rejestrator montujemy na płytkach drukowanych, których schemat montażowy pokazano na rys. 4. W pierwszej kolejności montujemy zwory, następnie rezystory i diody, później podstawki, po czym od elementów najmniejszych do największych. Układ US6 ma nietypowy rozstaw wyprowadzeń, dlatego zamiast podstawki można wlutować dwie listwy tulipanowe po 11 wyprowadzeń. Należy pamiętać, że wyświetlacz i mikroprzełącznik montujemy od strony druku. Na wyświetlacz warto nalutować listwę goldpin z 16 stykami. Drugi koniec listwy lutujemy do płytki rejestratora. Zależnie od wielkości napięcia zasilającego rejestrator, konieczne może okazać się zastosowanie małego radiatora na USl. Jako CON3 i CON4 zastosowano typowe gniazda telefoniczne 6p4c do druku (typ RJ). Jako złącze RESET wlutowu-jemy goldpin 2 szpilki, CON7 -gniazdo do listew 5 styków, CON9 i CON10 to złącza DB9-M, CON8 DB25-F. Płytki łączymy odcinkami taśmy z zaciśniętymi złączami IDC po obu jej stronach. Taśma 10-żyłowa powinna mieć długość około 15cm, 16-żyłowa około 8 cm. Rejestrator zwymiarowano pod obudowę KM-60. Na rys. 5 pokazano umiejscowienie otworów w obudo- WYKAZ ELEMENTÓW Rezystory Rl: patrz tekst R2: lkn R3, R4: 100O R5: 10O R6: 3,3kn R7: lMn R8: 220kO R9, Rl 1, R36: 4,7kQ RIO: 470O R12...R14, R17, R19, R21, R30, R31, R32, R33: lOOka R15: 36kO R16: 62kO R18: 330kO R20: 15kO R22: 12kO R23, R24, R29: 470kQ R25, R37, R41: 68kQ R26: 680kO R27: 160ka R28: 200kO R34: drabinka 8x2k2Q R35: 22Q R38: lk2Q R39: 470O R40, R43: 10kO R42: 3k3Q R44: 220O R45, R46: 2,2kQ RZ1, RZ2, RZ3, RZ4: 33kQ Pl, P2: 4,7kn P3: 10kO Kondensatory Cl: 100|iF/25V C2...C4, C13, C24, C27, C32, CB1, CB3, CB5, CB7, CB9, CB11, CB13, CB15, CB17, CB19: lOOnF C5, C5A (opcja): 470nF/250V C6, C7, C14, C16: 680nF C8: 22nF C9: 220nF/250V CIO: 220nF Cli, C12, C22, C23, C25, C26: lOnF C15, C19, C30: 4,7p.F Cl 7: 150nF C18: 470nF C20: 47nF C21: 4,7nF C28, C29: 27pF C31: ljiF C33: 100jiF/16V CB2, CB4, CB6, CB8, CB10, CB12, CB14, CB16, CB18, CB20: 10^F/16V Opcjonalne podzespoły nie wchodzą wie. Sposób umieszczenia płytek rejestratora w obudowie przedstawiono na rys. 6. Sławomir Skrzyński, AVT slawomir.skrzynski@ep.com.pl Półprzewodniki DL D3...D6: 1N4007 D2: 1N5189 D7, D8: C12V D10...D13: 1N4148 D14: BAT85 Ml: Mostek 1A/5OV M2: Mostek 1A/25OV T1...T3: BC547 OP1...OP5: CNY17 USl: 7805 US2: 4093 US3: MT8870 US4: NE567 US5 (opcja): NE567 US6: CMX612 US7 (opcja): FX631 US8: AT89C55 (zaprogramowany) US9: PCF8574 US10: 74HC574 US11 (opcja): DS1232 US12: PCF8573 USl3: 24C64 US14...20: 24C64 (opcja) Różne CON1: ARK-3 CON2: ARK-2 CON3, CON4: gniazdo 6p4c do druku CON5, CON5B: gniazdo IDC10 CON6, CON6B: gniazdo IDC16 CON7: gniazdo do listew 5 pin CON8: DB25-F kątowe do druku CON9, CON10: DB9-F kątowe do druku CON11: listwa goldpin 1x16 CON12: gniazdo do listew 6 pin Ql: 3,57MHz Q2: 24MHz Q3: 32,768kHz TRYMER: Trymer 8...30pF TRI: Tr 123-1 Telzam WR1, WR2, WR3: warystor 100V TRI: transil 250V PRÓG: mikroswitch RESET: listwa goldpin 2x2 BAT1: bateria lV2...3V6-25mAh lub kondensator 0.47F/5V5 BAT2: bateria 12V/500 mAh Taśma FLAT10: 15cm Taśma FLAT1Ó: 8 cm wtyk I DC 10: 2 szt. wtyk I DC 16: 2 szt. w skład zestawu! Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflczerwiecO2Jitm oraz na płycie CD-EP06/2002B w katalogu PCB. Elektronika Praktyczna 6/2002 PROJEKTY Trójwejściowy przedwzmacniacz AVT-5066 Konstruktorzy urządzeń audio mają obecnie dwie możliwości: mogą konstruować je z cyfrowymi torami audio - wówczas można łatwo uzyskiwać bardzo dobre parametry dzięki gotowym, specjalizowanym układom - lub - zastosować analogowe, ale cyfrowo sterowane tory audio. Konstruowanie urządzeń o budowie klasycznej jest oczywiście możliwe, ale w porównaniu z nowymi rozwiązaniami o wiele bardziej kłopotliwe. Właściwości przedwzmacniacza: / Trzy stereofoniczne wejścia typu LINĘ (200mV 2V) / Regulacja siły głosu od -aOdB do OdB z krokiem 2dB / Regulacja Tonów niskich od -12dB do +12dB co 2dB / Regulacja Tonów wysokich od -12dB do +12dB co 2dB / Włączana lunkcja "kontur" / Sterowanie za pomocą czterech klawiszy /Wyświetlanie wszystkich funkcji na wyświetlaczu alfanumerycznym /Sterownik zbudowany w oparciu OPIC16F84 W prezentowanym przedwzmac-niaczu tor audio jest analogowy, ale sterowanie jego wszystkimi funkcjami realizuje sterownik zbudowany w oparciu o popularny mikiokontroler PIC16F84. Schemat elektryczny przedwzmacniacza przedstawiono na rys. 1. Zbudowanie urządzenia, w którym wielkości analogowe byłyby regulowane cyfrowo bez użycia specjalizowanego układu scalonego byłoby zbyt kłopotliwe. Trudno bowiem byłoby uzyskać wystarczająco dobre wartości parametrów, a cały układ musiałby być rozbudowany i kosztowny. Dlatego zastosowany został specjalizowany układ sterowanego cyfrowo przedwzmacniacza LMC1983, produkowany przez firmę National Semiconductor. Jest to kompletny, monolityczny przedwzmacniacz z trzema wejściami typu LINĘ (o czułości 20QmV...2V), regulacją wzmocnienia, tonów wysokich {treble) i tonów niskich (bass). Poza tym dostępne są dodatkowe funkcje: możliwość włączania filtru "kontur" (loudness), całkowitego wyciszenia (mute), trybów "sygnał z wejścia L", "sygnał z wejścia R" i trybu stereo. W układzie LMC1983 zastosowano technologię unipolarną CMOS i bipolarną. Tranzystory bipolarne wykorzystywane są w torze audio, natomiast wszystkie klucze przełączające w układach regulacji wykonane są w technologii CMOS. Zastosowanie nisko-szumnych rezystorów z polikiys-talicznego krzemu pozwoliło na osiągnięcie niskiego poziomu szumów. Na rys. 2 przedstawiono schemat blokowy LMC1983. Układ przełącznika wejść pozwala wybrać sygnał z jednego z trzech stereofonicznych wejść przedwzmacniacza. Poza tym realizuje funkcje: - wyciszania - na wyjścia układu przełącznika SELECT OUT nie jest wtedy podawany sygnał z żadnego z wejść, - "sygnał z wejścia L" - na wyjściach układu przełącznika SELECT OUT pojawia się sygnał tylko z wejścia L, - "sygnał z wejścia R" - na wyjściach układu przełącznika SELECT OUT pojawia się sygnał tylko z wejścia R, - tryb stereo. Wyjścia układu przełącznika SELECT OUT (piny 7 i 22) umożliwiają podłączenie zewnętrznych układów redukcji szumów lub regulacji barwy tonów (korektora graficznego). Możliwe jest też użycie obu tych układów jednocześnie. Wyjścia z tych zewnętrznych układów powinny być połączone z wejściami SELECT IN (piny 8, 21) układu regulacji barwy LMC1983. W przypadku, gdy żaden zewnętrzny układ nie jest wykorzystywany, wyjścia SELECT OUT muszą być połączone z wejściami SELECT IN za pomocą kondensatorów. W opisywanym przedwzmacniaczu połączenie to jest realizowane za pomocą C7 i C8 o pojemności 470nF. W układach regulacji barwy tonów zastosowano tylko dwa kondensatory (na jeden kanał) o wartości 8,2nF włączone pomiędzy Elektronika Praktyczna 6/2002 23 Trójwejściowy przedwzmacniacz HiFi nóżki SELECT IN i TONĘ IN oraz TONĘ OUT i OP AMP OUT (C9, Cli dla kanału lewego i CIO, C12 dla kanału prawego). Rezystory obwodu regulacji są umieszczone w strukturze układu. Zakres regulacji barwy rozciąga się od -12 do +12dB. Wartość OdB odpowiada płaskiej charakterystyce przenoszenia układu [flat). Z układu regulacji barwy tonów sygnał podawany jest już w układzie - na regulator głośności i obwód konturu. Ludzkie ucho jest mniej czułe na niskie i wysokie, niż na średnie częstotliwości z zakresu od 2 kHz do 6kHz. Pogarszanie się czułości dla niskich i wysokich częstotliwości jest coraz większe przy malejącym poziomie głośności sygnału akustycznego. Aby zrekompensować to niekorzystne zjawisko, w wielu rozwiązaniach stosowany jest układ konturu. Jego zadaniem jest dodatkowe wzmocnię sygnałów o niskich i wysokich częstotliwościach przy małym poziomie głośności. W LMC1983 wartość tego wzmocnienia zależy od poziomu wzmocnienia regulatorów siły głosu. Inaczej mówiąc, im ciszej tym bardziej są podbijane niskie i wysokie tony. Tak jest tylko w przypadku, gdy funkcja konturu jest włączona. W układzie konturu kanału lewego wykorzystywane są elementy: C13, C15, Rl i R3, a kanału prawego: C14, C16, R2 i R4. Poziom głośności można ustawiać w 40-tu krokach od -80dB do OdB co 2 dB w każdym kanale niezależnie. Umożliwia to regulację zrównoważenia pomiędzy kanałami. W LMC1983 używa się do komunikacji z mikroprocesorowym sterownikiem szeregowej magistrali Interrmetal. Szeregowe dane są wysyłane do LMC1983 przez trzy linie: zegarową CLK, danych DATA i identyfikacji ID. Linie: zegarowa i identyfikacji są z punktu widzenia przedwzmacniacza liniami wejściowymi, natomiast linia danych jest linią dwukierunkową. Linia zdefiniowana w mik-rokontrolerze jako linia danych musi być typu "otwarty dren" z rezystorem podciągającym o wartości lkQ do plusa zasilania. Maksymalna częstotliwość przesyłania danych magistralą wynosi lMHz. Paczka danych ma długość 16 bitów. Pierwsze 8 bitów okres- Tab. 1. Zestawienie adresów i rejestrów funkcji w układzie LMC 1983 Adres (A7...A0) Funkcja Parametr Wybrana funkcja 01000000 Wybór wejścia + wyciszanie xxxxxx00 Wejście 1 xxxxxx01 Wejście 2 xxxxxx10 Wejście 3 xxxxxx11 Wyciszenie 010000001 Kontur xxxxxxx0 Wyłączony xxxxxxx1 Załączony 010000010 Tony niskie xxxx0000 -12dB xxxx0011 -6dB xxxx0110 flat xxxx1001 +6dB xxxx11xx +12dB 010000011 Tony wysokie xxxx0000 -12dB xxxx0011 -6dB xxxx0110 flat xxxx1001 +6dB xxxx11xx +12dB 01000100 Głośność kanał L xx000000 OdB xx010100 -40dB xx101xxx -80dB xx11xxxx -80dB 01000101 Głośność kanał R xx000000 OdB xx010100 -40dB xx101xxx -80dB xx11xxxx -80dB 01000110 Wybór trybu xxxxx100 Sygnał z wejścia L xxxxx101 Stereo xxxxx11x Sygnał z wejścia R 01000111 Czytanie wejścia dig. Input 1 XxxxxxD1D0 D1 - wejście cyfrowe 1 lub dig. Input2 DO - wejście cyfrowe 0 la adres z zakresu 0x40...0x47. Adresem tym wybierana jest jedna z ośmiu dostępnych funkcji wykonywanych przez LMC1983. Następne osiem zawiera wartość parametru wybranej funkcji. Adresy wraz z parametrami i opisem funkcji zestawiono w tab. 1. Bity oznaczone jako "x" są nieistotne i mogą przybierać dowolne wartości (najlepiej je wy-zerować). Umieszcza się je na odpowiednich pozycjach jako "wypełniacze" słowa parametru, tak aby można było określić pozycje bitów znaczących. Dane na linii DATA muszą być ustalone przy narastającym zboczu sygnału na linii CLOCK. Linia ta synchronizuje wpisywanie do układu lub odczytywanie danych z układu. Przy wpisaniu pierwszych ośmiu bitów adresu funkcji linia identyfikacji ID ma poziom niski. Jest to informacja dla LMC1983, że jest właśnie wpisywany adres. Następne osiem bitów parametru jest wpisywanych przy wysokim poziomie linii ID. Po ich przesłaniu sygnał zegarowy CLOCK jest wstrzymywany, a poziom wysoki na linii ID utrzymuje się jeszcze przez 6|is. Po tym czasie ID przechodzi do poziomu niskiego na czas l|is. Przesłane dane są wtedy zatrzaskiwane, a układ jest gotowy do odbierania następnych danych. Przebiegi czasowe na liniach magistrali pokazano na rys. 3, a przykładową procedurę zapisu do rejestrów LMC1983 przedstawiono na list. 1. Linia DATA jest połączona z RA4 mikrokontrolera (rys. 1). Linia ta ma wyjście typu "otwarty dren" i do uzyskania stanu logicznego "1" potrzebny jest rezystor R9 podciągający RA4 do plusa zasilania. Jak już wspomniano DATA jest linią dwukierunkową - dane mogą być wysyłane do LMC1983, lub z niego odczytywane. Ten drugi przypadek zachodzi w momencie odczytywania stanu wejść dwustanowych DIG_INl i DIG_IN2 przedwzmacniacza. W opisywanym układzie wejścia te nie są wykorzystywane i linią DATA dane są przesyłane tylko do przedwzmacniacza. Linia CLK jest połączona z RA3, a linia ID z RA2 PIC16F84. Do sterownika jest dołączony 16-znakowy wyświetlacz alfanumeryczny. Tego typu wyświetlacze mogą być różnie zorganizowane. W opisanym projekcie zastosowano wyświetlacz o organizacji 2x8 znaków. Pierwsze 8 znaków jest Elektronika Praktyczna 6/2002 Trójwejściowy przedwzmacniacz HiFi +5V R9 lOk 1 "TC20 TC26 J_1OOn 16V _C4 "1(1 +SV 220n E2 2 -St e- ci C2 C3 U1 LMC1SB3 WYJ. Rys. 1. Schemat elektryczny przedwzmacniacza umieszczanych w pamięci pod adresami 0...7, a następne 8 ma adresy 0x40... 0x4 7. Spotykane są również wyświetlacze o organizacji 1x16 znaków. Aby przedwzmacniacz pracował poprawnie z takim wyświetlaczem, trzeba zmodyfikować program sterujący List. 1. Przykładowa procedura zapisu rejestrów LMC1983 Void zapisLMC (uchar adres, uchar dana) ID=0; //zapis adresu delay_us(l); //opóźnienie 1 usek doLMC (adres) ; //zapis adresu ID=1; //zapis danej delay_us(l); doLMC(dana); //zapis danej delay_us(6); ID=0; delay_us(3); ID=1; delay_us(10) ; //zapis baj tu przez 3-liniową. //do LMC1983 void doLMC(uchar bajt) uchar i; f or (i=0; i<8; i+ + ) { CLK=O; if((bajt&l)==l) DATA=1; else DATA=0; CLK=1; bajt=bajtl; tak, by znaki wpisywane w pamięć o adresach 0x40...0x47 były wpisywane do pamięci pod adresy 9... 15. Wyświetlacz pracuje w konfiguracji z 4-bitową magistralą danych. Linie D4...D7 dołączone są do RB0...RB3, linia sterująca RS połączona jest z RA0, a EN z RAI mikrokontrolera. Potencjometr Pl służy do ustawienia kontrastu wyświetlacza. Do obsługi urządzenia wykorzystywane są cztery klawisze. Klawisz funkcyjny "F" połączony jest z linią RB5, klawisz wyboru wejścia "I" połączony jest z RB4, a klawisze ustawiania "+" i "-" odpowiednio z liniami RB7 i RB6. Rezystory R5.. ,R8 wymuszają poziom wysoki na liniach wejściowych RB5...RB7 w momencie, kiedy klawisz nie jest przyciśnięty. Obwód zerowania PIC16F84 jest zbudowany w oparciu o elementy RIO, Rll, C19. Jest on dodany trochę na wyrost i można Opcjonalne układy redukcji szumów lub korektora graficznego SELECT OUT Wejście 1 Wejście 2 Wejście 3 Wejście cyfrowe 1 Wejście cyfrowe 2 Przełącznik wejść i trybów pracy SELECT IN Układ regulacji barwy Regulacja wzmocnienia + kontur Wzmacniacz wyjściowy Układy logiczne DATA CLK LMC19B3 Wyjście Końcówka mocy M ikroprocesorowy sterownik Rys. 2. Schemat blokowy LMC1983 Elektronika Praktyczna 6/2002 25 Trójwejściowy przedwzmacniacz HiFi r- 250 ns CLX DATA 4 250 ns A0 A1 A2 A3 A4 A5 A6 A7 DO D1 D2 D3 D4 D5 D6 D7 Rys. 3. Przebiegi czasowe na liniach magistrali zamontować tylko Rll, a w miejsce RIO wlutować zworkę. Trzeba wówczas pamiętać, żeby w trakcie programowania mikrokontrolera ustawić bit konfiguracji IPWRTE na O, bo w przeciwnym razie układ nie będzie działał. Dla rezonatora 2MHz trzeba też przed zaprogramowaniem układu ustawić tryb oscylatora pracy na XT. Przedwzmacniacz powinien być zasilany napięciem przemiennym 0 wartości minimalnej 12V. Napięcie przemienne po wyprostowaniu i odfiltrowaniu (mostek Ml 1 kondensator C26) podawane jest na układ stabilizatora U3. Układ ten dostarcza stabilizowane napięcie +9V zasilające LMC1983. Sterownik przedwzmacniacza zasilany jest napięciem +5V dostarczanym przez stabilizator U4. Jeżeli w docelowym układzie dostępne jest odpowiednio od-filtrowane napięcie o wartości 9...12V, to można zrezygnować z elementów Ml, C26, C20, C21 i U3. Całe urządzenie jest zmontowane na dwóch płytkach, których schemat montażowy pokazano na rys. 4. Na płytce głównej umieszczone są układy: zasilania, przedwzmacniacza i sterownika. Na płytce dodatkowej umieszczono wyświetlacz i klawisze sterujące. Obie płytki mają taką samą szerokość. Na ich krawędzi zostały umieszczone punkty lutownicze tak, że można je połączyć za pomocą listwy kątowych goldpinów w jeden moduł. Sygnały wejściowe są podłączane do przedwzmacniacza za pomocą wlutowywanych w płytkę złącz CINCH, i na takich występują też sygnały wyjściowe. Montaż nie powinien nastręczać żadnych trudności, nawet początkującemu elektronikowi. Układy Ul i U2 powinny być umieszczone w podstawkach. Stabi- lizatory U3 i U4 są montowane w pozycji leżącej i przykręcone śrubkami M3 do płytki drukowanej. Wyświetlacz trzeba najpierw przykręcić do płytki śrubkami M2,5. Niezbędne będą tulejki dystansowe o długości ok. 5mm. Po przykręceniu trzeba przy lutować wyprowadzenia wyświetlacza do płytki. Wyprowadzenia wyświetlacza pokrywają się z punktami lutowniczymi na płytce, więc nie powinno być problemu z prawidłowym jego podłączeniem. Analizując schemat przedwzmacniacza (rys. 1) można zauważyć, że podłączenie klawiszy, wyświetlacza i linii sterujących jest tak wykonane, że jako sterownik można wykorzystać moduł AVT873. Trzeba tylko odpowiednio ustawić zworki. Rzeczywiście, prototyp przedwzmacniacza powstawał w oparciu o moduł AVT873. Dla wszystkich, którzy mają ten popularny moduł przygotowana została płytka rozszerzenia z układem LMC1983. Na rys. 5 pokazano rozmieszczenie zworek na płytce sterownika AVT873. Połączenie sterownika z modułem przedwzmacniacza i wyświetlaczem należy wykonać kablem wstążkowym, zaciśniętym na 20-pinowym złączu typu IDC. Moduł sterownika ma swój stabilizator +5V. Stabilizator napięcia zasilania LMC1983 trzeba zmontować osobno, ponieważ na płytce modułu nie przewidziano na niego miejsca. W początkowej fazie projektowania przyjęto zasilanie z zewnętrznego zasilacza o napięciu stałym 9...12V. Schemat montażowy płytki przedwzmacniacza pokazano na rys. 6, a jego schemat elektryczny na rys. 7. Elementy U2, R8, R9, C29 i C30 stanowią opcjonalny stabilizator napięcia +3V. Napięcie to może być zastosowane do zasilania walkmana wykorzystywanego jako magnetofon "stacjonarny". . J IOOOOOOOOOOOOOOI 1601R Ś'* UYS i O O o o o o o o o o o o o o o PWZM_WYS T. J. 2002 ooooooooooooóobooo oooooooooooooooooo rao DOOOOOOOO cis ci 3 o O220n O 00000000000000 22OOuF/lSU puizn t.j. 2002 o^cf^ cn)cro (f^tro cnDcn? O o o o o o o o 4. Rozmieszczenie elementów na płytkach drukowanych 26 Elektronika Praktyczna 6/2002 Trójwejściowy przedwzmacniacz HiFi Rys. 5. Rozmieszczenie zworek na płytce drukowanej sterownika AVT873 Obsługa Po włączeniu zasilania siła głosu w LMC1983 jest ustawiana na wartość minimalną -80dB, regulacja barwy ustawiona jest w pozycji "flat", włączona jest funkcja wyciszania, a pozostałe funkcje są wyłączone. Sterownik przedwzmacniacza musi przez magistralę (podczas inicjalizacji) przesłać do układu odpowiednie ustawienia. Do rejestrów układu LMC1983 wpisywane są z pamięci EEPROM ustawienia głośności, barwy tonu, włączenie lub wyłączenie funkcji kontur oraz numer aktywnego wejścia. Ustawienia te mają takie wartości, jakie były wpisane do pamięci przed ostatnim wyłączeniem urządzenia. Początkowo w programie sterującym była zawarta procedura inicjująca wartości ustawień po zaprogramowaniu mikrokontrolera. Sprawdzała ona czy wartości te mieszczą się w żądanych granicach i jeżeli tak nie było, to były korygowane. W czasie pisania programu okazało się jednak, że brakuje miejsca w pamięci programu i trzeba było tę procedurę usunąć. Aby uniknąć wadliwego działania przedwzmacniacza przy pierwszym uruchomieniu po zaprogramowaniu, należy przed zaprogramowaniem mikrokontrolera wpisać do początkowych pierwszych sześciu komórek pamięci EEPROM same zera. Większość programatorów ma możliwość edycji tej pamięci, więc nie powinno z tym być problemu. Po wpisaniu przez sterownik ustawień początkowych do LMC1983 następuje programowa inicjalizacja kontrolera wyświetlacza LCD i pojawia się na nim wartość ostatnio ustawionej głośności i ostatnio wybranego wejścia np. Volume -20dB In 1 Program czeka teraz w pętli głównej na przyciśnięcie klawisza. Przyciśnięcie klawisza I powoduje sekwencyjną zmianę aktywnego wejścia przedwzmacniacza. Zmieniony numer wejścia jest wyświetlany i oczywiście wpisywany do Ul (funkcja o adresie 0x40). Przełączanie wejścia jest czynnością wykonywaną dość często, dlatego do tego zadania został przeznaczony specjalny klawisz. Przyciśnięcie klawisza "+" lub "-", kiedy program znajduje się w pętli głównej, powoduje wywołanie procedury regulującej głośność. Przyciśnięcie klawisza "+" będzie powodowało automatyczne zmniejszanie wartości liczby wpisywanej do rejestrów głośności co 140 ms, aż do momentu puszczenia klawisza. Im mniejsza wartość wpisana do rejestrów głośności, tym większe jest wzmocnienie sygnału podanego na wybrane wejście (tab. 1). Na wyświetlaczu są wyświetlane wartości głośności w decybelach ze znakiem minus. Po osiągnięciu zera (czyli maksymalnej głośności), proces regulacji się zatrzymuje. Po puszczeniu klawisza wartość głośności zapisywana jest do pamięci EEPROM i program wraca do pętli głównej. Po przyciśnięciu klawisza regulacja odbywa się analogicznie, z tym że wartość liczby wpisywanej do rejestrów głośności jest automatycznie zwiększana, a proces regulacji zatrzymuje się po puszczeniu klawisza lub osiągnięciu wartości - 80dB. Układ LMC1983 ma dwa osobne rejestry pozwalające na regulację głośności niezależnie w obu kanałach. W tym rozwiązaniu, ze względu na szczupłość miejsca w pamięci programu, w czasie regulacji głośności do rejestrów obu kanałów wpisywane są te same wartości. Przedwzmacniacz pozbawiony jest z tego powodu możliwości regulacji balansu. Przyciśnięcie w pętli głównej klawisza F powoduje wejście w menu wyboru pozostałych funkcji. Możliwe jest tutaj ustawienie tonów niskich, tonów wysokich lub włączenie bądź wyłączenie funkcji kontur. Kolejne naciskanie klawisza F powoduje sekwencyjne wyświetlanie nazw funkcji. Po naciśnięciu jakiegokolwiek innego klawisza program wchodzi w procedurę ustawiania parametrów aktualnie wyświetlanej funkcji. Jeżeli wybierzemy funkcję bass, to na wyświetlaczu pojawi się na przykład bass +6dB. Przyciskanie klawisza "+" lub "-" powoduje ustawienie tonów niskich w zakresie od -12dB do +12dB, z krokiem co 2dB. Wybierane wartości są na bieżąco wpisywane do rejestru układu LMC. Po przyciśnięciu klawisza F ustawiona wartość jest wpisywana do odpowiedniej komórki EEPROM i program powraca do pętli głównej. Wybranie w menu regulacji barwy funkcji Treble powoduje wejście w procedurę regulacji tonów wysokich. Regulacja ta prze- oO|o c Op ao-l \or. Rys. 6. Rozmieszczenie elementów na płytce drukowanej przedwzmacniacza Elektronika Praktyczna 6/2002 27 Trójwejściowy przedwzmacniacz HiFi Rys. 7. Schemat elektryczny przedwzmacniacza biega analogicznie jak regulacja tonów niskich. Nastawione wartości wpisywane są do odpowiedniego rejestru LMC, a po zakończeniu wpisywane do odpowiedniej komórki pamięci EEPROM. Ostatnia funkcja menu regulacji umożliwia włączenie lub wyłączenie konturu. Na wyświetlaczu pojawia się napis Loud, a po przyciśnięciu klawisza F litera Y lub N . Klawiszami "+" lub "-" wybiera się sekwencyjnie włączenie lub wyłączenie tej funkcji, a klawisz F akceptuje ustawione wartości. Uruchomienie przedwzmacniacza najlepiej rozpocząć od modułu sterownika z podłączonym wyświetlaczem LCD. Oczywiście, wcześniej trzeba sprawdzić wartości napięć zasilających przy wyjętych z podstawek Ul i U2. Prawidłowo zmontowany układ z prawidłowo podłączonym i sprawnym wyświetlaczem LCD powinien działać od razu. Przyciskając klawisze można wywoływać wszystkie opisane powyżej funkcje sterujące. Następnie sprawdzamy poprawność wpisywania do pamięci EEPROM. W tym celu można po ustawieniu nastaw wyłączyć i włączyć zasilanie, by np. stwierdzić czy po włączeniu głośność jest taka sama, jak przed wyłączeniem. Do prawidłowego wstępnego przetestowania sterownika nie jest potrzebny układ przedwzmacniacza, ponieważ sterownik tylko wysyła dane do LMC1983, a nic z niego nie odczytuje. Po sprawdzeniu sterownika trzeba włożyć do podstawki układ Ul. Do wybranego wejścia trzeba podłączyć generator sygnałowy. Sinusoidalny przebieg sygnału wejściowego powinien mieć amplitudę ok. 200mV i częstotliwość 1 kHz. Na wyjście trzeba podłączyć oscyloskop. Regulując głośność sprawdzamy na ekranie oscyloskopu, jak zmienia się amplituda przebiegu wyjściowego. Następnie zmieniając częstotliwość przebiegu wejściowego sprawdzamy działanie regulacji barwy tonów. Dla niskich częstotliwości trzeba ustawić np. lOOHz. Regulacja w funkcji bass powinna powodować dość znaczne wahania amplitudy. To samo powtarza- my dla częstotliwości np. lOkHz i funkcji Treble. Po tych czynnościach trzeba sprawdzić prawidłowość wyboru wejścia przez podłączanie sygnału testowego do kolejno testowanych wejść i obserwowaniu sygnału wejściowego. Możliwe jest również uruchomienie układu bez generatora i oscyloskopu. Trzeba wówczas do wejść przedwzmacniacza podłączyć sygnał na przykład z magnetofonu. Do wyjścia przedwzmacniacza trzeba podłączyć końcówkę mocy, a uruchomienie i sprawdzenie wykonać "na słuch". Trudniejsze w tym przypadku będzie wykrycie ewentualnych niesprawności, ale w przypadku zastosowania sprawdzonych elementów dobrej jakości i poprawnego montażu ta metoda jest również odpowiednia. Tomasz Jabłoński, AVT tomasz.jablonski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflczerwiecO2Jitm oraz na płycie CD-EP06/2002B w katalogu PCB. WYKAZ ELEMENTÓW Rezystory Rl, R2: 5ókQ R3, R4: lk5Q R5...R9: 10kO RIO: 100O Rl 1: 33kQ Pl: potencjometr 4,7kQ Kondensatory C1...C6: l|iF/63V MKSE C7, C8: 470nF C9...C12: 8n2 C13, C14: 220nF C15, C16: 240pF C17, C18: 33pF Cl9, C25: 2|i2/25V C20...C24: lOOnF blok. C26: 2200^F/16V C27: 10p.F/16V Półprzewodniki Ml: mostek 1A/15OV Ul: LMC 1983 U2: PIC16F84/04 zaprogramowany U3: 7809 U4: 7805 Różne Rezonator kwarcowy 2MHz Podstawki 28DIL i 18DIL Złącza CINCH do druku 8 szt. Wyświetlacz alfanumeryczny 2x8 znaków typ SuntailóOlA Klawisze 5 szt. Elektronika Praktyczna 6/2002 Programowalne > układy analogowe Nowe analogowe układy programowalne firmy Lattice przedstawiamy na słr. 56. Projekty Czytelników Na słr. 97 kończymy opis zestawu uruchomieniowego z mikrokontrolerem '51. Szeregowy interfejs do wyświetlaczy LCD Urzqdzenie, którego opis przedstawiamy na słr. 33 umożliwia dołqczenie do dowolnego systemu cyfrowego, za pomocq zaledwie dwóch przewodów, standardowego wyświetlacza alfanumerycznego. Zdalnie sterowana karta przekaźników Zdalnie sterowane uniwersalne porty l/O cieszq się nieustannym powodzeniem wśród naszych Czytelników. Na słr. 27 przedstawiamy opis 8-kanałowego modułu przekaźnikowego, sterowanego za pomocq fal radiowych. Czas na DLP - wyświetlacze nowej ery Na słr. 51 przedstawiamy nowq technikę projekcji obrazu, której podstawowym elementem jest półprzewodnikowa matryca mikrolus-ter. Prawdziwe cudeńko technologiczne. Biblioteka EP ^ Przedstawiamy kolejne ksiqżki przydatne elektronikom w uprawianiu zawodu lub hobby. Słr. 134. Wzmacniacze audio klasy D Widoczny na zdjęciu moduł to wzmacniacz audio o mocy 25W. Trudno uwierzyć? Zapraszamy na słr. 77. * Miniprojekty W tym miesiqcu przygotowaliśmy dwa miniprojekty: aktywny tor podczerwieni (na tranzystorach!) oraz cyfrowy sterownik wentylatora. Słr. 89. Rocznik na CD-EP Na płycie CD-EP1/2002B (dostępnej tylko z EPo/oL) publikujemy kompletny rocznik EP2001 w postaci elektronicznej. Bezpieczeństwo w systemach automatyki Na słr. 146 przedstawiamy elementy i urzqdzenia stosowane w systemach zapewnienia bezpieczeństwa. Elektronika Praktyczna 1/2002 Rodzina oscyloskopów TDS3000B firmy Tektronix Tajniki nowej rodziny oscyloskopów DPO firmy Tektronix przedstawiamy w artykule na słr. 70. Przetwornice DC/DC o mocy 3...15W firmy TracoPower 4 W artykule zamieszczonym na słr. 63 przedstawiamy kolejne przetwornice DC/DC firmy Traco. Jednoukładowe transceive-ry radiowe firmy Chipcon Niezwykle nowoczesne transceive-ry radiowe firmy Chipcon pracujq-ce na pasmach ISM przedstawiamy w artykule na słr. 67. T51prog - siła w miniaturze Kolejny programator wprowadzany na polski rynek przez dystrybutorów firmy Elnec przedstawiamy na słr. 84. IKA Nr 1 (109) styczeń 2002 Projekty GALER - programator GAL-i do Amigi, cześć Zamek szyfrowy do sejfu................................................ Zdalnie sterowana karta przekaźników........................ Szeregowy interfejs do wyświetlaczy LCD ................... Lampowy przedwzmacniaczHigh-End....................... Rozładowarka i miernik pojemności akumulatorków , "Mini projekt^" Regulator obrotów wentylatora................................... Aktywna bariera podczerwieni.................................... Automatyka Automatyczne testowanie urzqdzeri elektronicznych, cześć 2 ................................................................................. Bezpieczeństwo w systemach automatyki..................... 14 21 27 33 37 45 .90 141 146 Zmiana warty - rodzina oscyloskopów TDS3000B firmy Tektron ix...............................................................................70 T51 próg-siła w miniaturze.........................................................84 Podzespoły Czas na DLP-wyświetlacze nowej ery....................................51 Programowalne układy analogowe - nowości w rodzinie ispPAC firmy Lattice....................................................................56 Przetwornice DC/DC o mocy 3... 15W firmy TracoPower.......63 Teraz łatwiej - jednoukładowe transceivery radiowe firmy Chipcon ..............................................................................67 Nowe Podzespoły........................................................................73 Wzmacniacze audio klasy D......................................................77 r ogram OrCAD - profesjonalny system wspomagajqcy projektowanie układów elektronicznych - edytor płytek drukowanych, cześć 2................................................................85 roje kły Czytelnikó Układ prototypowy dla mikrokontrolerów z serii 8051, cześć 2..........................................................................................97 Kurs Co w LPT-cie piszczy, cześć 2...................................-................60 Architektura mikrokontrolerów PIClóF8x..................................80 Info Świat.......................................................................121 InfoKraj..........................................................................123 Biblioteka EP Kramik+Rynek..............................................................101 Listy.................................................................................107 Ekspresowy Informator Elektroniczny Wykaz reklamodawców treści rocznika 2001 Elektronika Praktyczna 1/2002 7 Interfejs IDE2LPT AVT-5069 PROJEKTY Wszystkie współczesne dyski twarde są wyposażone w wewnętrzne kontrolery, dzięki czem u dołączenie ich do komputera jest stosunkowo łatwe, choć zazwyczaj wymaga rozebrania obudowy komputera. W artykule przedstawiamy łatwy w wykonaniu interfejs, za pomocą którego można dołączyć dysk twardy do pońu drukarkowego Centronics dowolnego komputera PC. Tak więc archiwizacja danych na starym, nieużywanym HDD może być nawet tańsza niż nagrywanie płyt CD-R. Fot. 1. Tak wyglqdał protoplasta projektu prezentowanego w artykule Projekt przedstawiony w artykule powstał na podstawie opracowania Leonida Slobodchikova z firmy AKA Curvex. Udostępnił on w Internecie, na stronie http:/ /curvex .hypermart.net/ide2lpt/, ogólną dokumentację interfejsu IDE 2 LPT oraz - co najbardziej istotne - diivery dla DOS-a oraz Windows 95/98 (obydwa autorstwa Eugene Kuleshova) wraz z ich postacią źródłową. W oryginalnej wersji interfejs zbudowano w oparciu o standardowe układy TTL, których - w zależności od wykonania - było od 12 do 8 (fot. 1). My proponujemy nieco inne, znacznie bardziej nowoczesne podejście do sprzętowej części interfejsu: zaimplementujemy ją w całości w jednym układzie PLD (Programmable Logic Devices). Przed dalszą częścią opisu musimy zwrócić uwagę Czytelników na fakt, źe łatwość dołączenia dysku do dowolnego komputera PC z interfejsem Centronics jest okupiona niezbyt dużą szybkością wymiany danych pomiędzy dyskiem i komputerem. Z powodów konstrukcyjnych maksymalna szybkość pracy interfejsu w trybie bezpośredniego dostępu do rejestrów (bez wykorzystania klasycz- nych mechanizmów wymiany danych w trybie SPP) nie przekracza 200kB/s, a zazwyczaj wynosi ok. 130...160kB/s. Z tego powodu nie ma sensu wykorzystywania jako zewnętrznego dysku obecnie produkowanych, szybkich dysków ATA-2/3 - ich możliwości będą w takiej aplikacji marnowane. Opis układu Schemat elektryczny interfejsu wykonanego z układem CPLD firmy Altera EPM7064 (USl) pokazano na rys. 2. Ponieważ na podstawie schematu elektrycznego interfejsu trudno jest wywnioskować jak działa interfejs, pomocny będzie schemat układu cyfrowego zrealizowanego wewnątrz USl, który pokazano na rys. 3. Schemat ten jest dokładną kopią schematu najnowszej wersji klasycznego interfejsu IDE2LPT, a narysowano go w edytorze schematów pakietu projektowego firmy Altera Max+Plus II (rys. 4). Rysowanie schematu oddającego wewnętrzną budowę układu PLD jest sposobem bardzo często stosowanym przez projektantów korzystających z Max+Plus II (także innych sys- Elektronika Praktyczna 6/2002 Interfejs IDE2LPT VCC VCCIO YCCINT vcc Rys. 2. Schemat elektryczny interfejsu temów EDA dla układów PLD), przede wszystkim ze względu na czytelność i łatwość interpretacji takiego sposobu opisu. Nie jest to jednak jedyny możliwy sposób opisania struktury tego układu, co pokażemy w dalszej części artykułu. Realizacja projektów na układach PLD nie wymaga praktycznie żadnych nakładów. Doskonałe narzędzia projektowe, w tym kompilatory VHDL są udostępniane bezpłatnie. Oznaczenia sygnałów zastosowane w projekcie układu PLD są identyczne z oznaczeniami sygnałów umieszczonymi na schemacie elektrycznym. Transfer danych z dysku do komputera odbywa się w paczkach 4-bitowych poprzez port LI[3...O], Linie te są dołączone do następujących linii wejściowych interfejsu Centronics (odpowiednio): Numer bitu Nazwa Nazwa rejestru Base+1 Centronics IDE2LPT 7 Busy LI3 6 Select LI2 5 PE Ul 4 AĆK LIO Transfer danych z komputera do dysku odbywa się poprzez rejestr 8-bitowy (ulokowany pod adresem base=0x378/0x278), który w złączu Centronics służy do przesyłania danych do drukarki. Sterowanie transmisją danych umożliwiają cztery sygnały pomocnicze, których przypisanie do bitów rejestru o adresie base+2 pokazano poniżej: Numer bitu Nazwa Nazwa rejestru Base+1 3 2 1 0 Jak widać na rys. 3, wszystkie zastosowane rejestry są tego samego typu (odpowiedniki 74374). Ponieważ tylko dwa wbudowane w USl rejestry są 8-bitowe, a wśród pozostałych jeden jest 7- Centronics IDE2LPT Select in RCWR Init RLWR Auto Feed HWR Strobe HRESET bitowy i cztery są 4-bitowe, nasuwa się pytanie, czy taki projekt nie zajmie zbyt wiele zasobów układu USl. Jak pokazuje praktyka, w systemie Max+Plus II zastosowano doskonałe mechanizmy optymalizacyjne, w związku z czym nieużywane w projekcie fragmenty bloków funkcjonalnych zdefiniowanych przez użytkownika (w tym bufory trójstanowe na wyjściu rejestru konfiguracji - zapisywanego sygnałem RCWR) zostaną podczas kompilacji pominięte. Interfejs wyposażono w lokalny stabilizator napięcia zasilającego US3 z mostkiem prostowniczym Graetza Ml na wejściu, dzięki czemu polaryzacja napięcia podawanego na Gnl nie ma znaczenia. W modelowym egzemplarzu interfejsu zastosowano układ USl typu EPM7064S, który można programować w systemie bez konieczności stosowania programatora. Do programowania jest niezbędny tylko prosty interfejs nazywany przez firmę Altera ByteBlaster, którego 30 Elektronika Praktyczna 6/2002 Interfejs IDE2LPT HDg HM hUH. HDG 74474 Dl Ol HDfl D2 QB im D* 03 D4 Q4 CK QG M QB D7 07 Otl c D* OtH OM I---- RIK DATAa RCWTU Dl Q1 D2 OB 03 D4 Q+ DS 05 DO OS D7 07 D* 01 OEN CLK Dl 01 D2 OB DS ca D4 DB Ot D7 07 D* ca OEN r.\K LI8 74*74 Dl Ol Hmn D2 uu 09 D4 04 D6 QG DO CM D7 OT OB c Ś D> OtH OB 74374 Dl 01 D2 OZ ?a 09 D4 04 DS OG DQ 03 D7 Q7 Dl OB OEN CLK LE Rys. 3. Budowa wewnętrzna układu US1 po zaprogramowaniu szczegółowe opisy wraz ze schematem można znaleźć w: - książkach "Układy programowalne w praktyce" (WKŁ2 001/2 002) i "Układy programowanie - pierwsze kroki" (BTC2002) - na płytach CD-ROM dołączonych do książek dostępne są także wzory płytek drukowanych do programatora ByteBlaster i By-teBlasterMV, - Internecie, pod adresami: http:/ /www.al tera.com/literature/ds/ dsbytemv.pdf (opis najnowszej WYKAZ ELEMENTÓW Rezystory R1...R4: ÓSCO R5...R12: lkn R13...R15: 2,2kft Kondensatory C1...C5: lOOnF Có: lO^F Półprzewodniki Ml: dowolny mostek prostowniczy >200mA/50V US1: EPM70Ó4SLCS4-10(84) US2: SN74HCT14 US3: 7805 zradiatorem Różne Gnl: Gniazdo DC Jl: DB25M Zll: IDC40 JP1: ZWS10 wersji ByteBlastera MV) http:// www Haltera.com/literature/ds/ dsbyte.pdf (opis klasycznej wersji ByteBlastera) - obydwie są zamienne. Podczas programowania układu USl ByteBlaster musi być dołączony do złącza JPl. Można także inaczej Ponieważ praktycznie każdy producent układów PLD oferuje swój własny system projektowy, wymiana danych źródłowych pomiędzy nimi nie jest możliwa bez specjalnych zabiegów. Tak więc, wykonanie podobnego projektu z układem innego producenta niż Altera, zmusza projektanta do ponownego "budowania" opisu struktury układu, co wiąże się m.in. z ryzykiem popełnienia błędu i w związku z tym ponownej symulacji. J" Rys. 4. Wyglqd okna programu Max+Plus Rys. 5. Wyglqd okna programu WebPack ISE Elektronika Praktyczna 6/2002 31 ta 3-3-3-3-3333 L L L L L L o, i t- t- t- t- t- t- 1 3" L L O, 3 3 i-f tr tr \-> tr cu i HM!" H- Ll, LŚ ! 1 L Cu...... rr i i <-: - a> i nr L c L |3~ M l-h l-h -3 I Ś M m rr m (i) ! Śi - hf O, rr i M iT Qj O Q, I'i to "O O = O TT to o ĆD c" O D 3. |SU Q 0 _ CD- mple o" DE2L m -Ś ? O m IO o < T 03 CD ><3 M fu 3 0- o 0" Ul r-l- _, rCD S ^d ^ 0 tfl [U Ul r-h CD 3 o 0 CD &- N O 0Q S 3 O 0 ^ 0 i-J 0 O 1 < i-U r fu 0 3 S Cl, o Cd fu 0 i c 0" "D 53 ^- f O CD >i O- TO C O o 3 Gnl OOOOOOOOOOO OOOOOOOOOOOOO Z1U a o p- o O" CD 0 N O ? D P H TT fu O CD CD m to N 0 "O CD feru nni 1 N Vi FQ t~0 < Q- h-j CD CD CD 0 h^ 0 ILU h^ n CD 0 fu CD CD 2. O 0 fu 0 Interfejs IDE2LPT ność układów skupimy się na dwóch wymienionych. Aby ułatwić implementację interfejsu IDE 2 LPT z dowolnymi układami PLD został przygotowany jego hierarchiczny opis w języku VHDL. Na list. 1 pokazano projekt ide2lpt_main, który zawiera opis interfejsu, przy czym należy zwrócić uwagę na odwołania do zewnętrznych plików, jak np,: component rej estr4 port ( data: in std_logic_vector(3 downto 0) ; wy: buffer std_logic_vector(3 downto 0) ; clk: in std_logic ); end component rejestr4; zawierających bloki funkcjonalne położone niżej w hierarchii. Dzięki takiemu zapisowi, wielokrotnie wykorzystywany w projekcie rejestr 4-bitowy został opisany tylko raz. Komplet plików źródłowych opublikowaliśmy na CD-EP6/ 2002 B oraz na naszej stronie internetowej w dziale Download. Prezentowany projekt był kompilowany i weryfikowany za pomocą pakietu WebPack ISE 4.2 WPO (rys. 5) oraz symulatora Model-Sim XE 4.2. Projekt zmieścił się w układzie XC9572-LC84. Oprogramowanie interfejsu Działanie modelowego egzemplarza przetestowano na komputerach z systemem operacyjnym DOS oraz Windows 95/98. Z powodu braku odpowiednich sterowników, nie jest obecnie możliwa współpraca interfejsu z komputerami wyposażonymi w system operacyjny Windows w jakiejkolwiek wersji pochodnej NT. W przypadku komputerów z DOS do pliku config.sys należy dopisać linię: device=[ścieżka]\i214.exe i zrestartować komputer. Program można uruchamiać z linii poleceń z dodatkowymi opcjami, np.: - i2l4.exe /t uruchamia procedurę wykrywania dołączenia interfejsu do złącza Centronics, - i2l4.exe /l:xxxh umożliwia określenie bazowego adresu portu Centronics (np. 3 78h), - i2l4.exe /h wyświetla krótką instrukcję do programu, - i2l4.exe /I powoduje włączenie obsługi dużych dysków LBA, - i2l4.exe /g:SEC:HEAD umożliwia ustalenie własnej geometrii dysku twardego, - i2l4.exe /v pozwala odczytać parametry dysku twardego dołączonego do interfejsu. Sterownik można uruchamiać z wieloma parametrami jednocześnie. W przypadku korzystania z komputera z zainstalowanym systemem operacyjnym Windows 95/98 należy zainstalować inny sterownik, napisany specjalnie dla Windows. Instalacja przebiega w typowy sposób - w Panelu Sterowania należy wybrać Dodaj nowy sprzęt. Kolejne kroki podczas instalacji pokazano na rys. 6. Montaż i uruchomienie Schemat montażowy dwustronnej płytki interfejsu pokazano na rys. 7. Podczas montażu należy zwrócić szczególną uwagę na sposób przylutowania gniazda Zll (40-stykowe gniazdo na kabel ATA) - położenie jego pierwszego styku wyraźnie zaznaczono na płytce drukowanej. Gniazda Jl i Zll są montowane na krawędzi płytki, natomiast pozostałe elementy na jej powierzchni. Do uruchomienia interfejsu konieczny jest zasilacz dostarczający dwóch napięć: +5 i +12V, o wydajności prądowej wystarczającej do zasilenia dysku twardego. Zasilanie na wejście interfejsu należy podać z linii +12V, jest ono bowiem stabilizowane przez stabilizator wbudowany w interfejs. Pobór prądu przez sam interfejs nie przekracza lOOmA, a średnio wynosi 80...90mA. Piotr Zbysiński, AVT piotr.zbysinski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflczerwiecO2.htm oraz na płycie CD-EP06/2002B w katalogu PCB. Elektronika Praktyczna 6/2002 33 PROJEKTY Tester kabli sieciowych LAN AVT-5064 Tester służy do sprawdzenia poprawności wykonania kabli sieciowych stosowanych do połączeń w sieci Ethernet (8-żyłowe kable sieciowe typu "skrętka", zakończone wtykiem RI45), Za pomocą testera można sprawdzić kable proste (straight-thru cable) oraz skrosowanych (cross-over cable). Można również I sprawdzić połączenia ' elektryczne odpowiednich żył kabla ze stykami złącza RJ45. Nie można zmierzyć tłumienia czy przesłuchów sygnałów w kablu. Ostatnio coraz częściej użytkownicy komputerów zaczynają łączyć je w sieci, które są następnie "podpinane" do Internetu. W budowie sieci najczęściej wykorzystuje się standard Ethernet o topologii gwiazdy. W tego typu topologii stosuje się kable 8-źyłowe, w których cztery pary przewodów są skręcone. Kablami używanymi do tego celu są: UTP, FTP, STP i inne odmiany, zakończone wtykiem RJ45 zaciśniętym na obydwu końcach. W czasie budowy sieci często zdarzają się kłopoty z jej poprawnym działaniem, które są spowodowane złym wykonaniem okablowania. Problem ten można wykryć za pomocą opisywanego testera. Standardy połączenia kabli Kabel "prosty" jest używany zazwyczaj do łączenia komputera z urządzeniami typu hub, switch, router lub tych urządzeń ze sobą. Natomiast kabli skrosowanych używa się do łączenia bezpośred- niego dwu komputerów bez użycia urządzeń dodatkowych oraz do łączenia urządzeń typu hub, switch, gdy żadne z nich nie posiada gniazda UP-LINK, czyli gniazda, w którym wykonane jest wewnętrzne krzyżowanie żył nadawania i odbioru. Kolejność połączenia kabli we wtykach jest opisana dwoma normami EIA/TIA 568A oraz EIA/TIA 568B. Kabel prosty uzyskuje się poprzez zaciśnięcie wtyków RJ45 zgodnie z tą samą normą czyli: EIA/TIA 568A lub EIA/TIA 568B, natomiast kabel skiosowany otrzymuje się w wyniku połączenia jednego wtyku według jednej normy (EIA/TIA 568A), natomiast drugiego według drugiej normy (EIA/TIA 568B). Tester sprawdza poprawność połączenia odpowiednich styków oraz czy nie występują pomiędzy nimi zwarcia. Budowa testera Schemat elektryczny testera pokazano na rys. 1. Jego głównym elementem jest mikrokontioler AT89C2051 wyposażony m.in. w 2kB pamięci programu Flash. Mikiokontioler może być taktowany sygnałem zegarowym o częstotliwości od kilkuset kHz do 24 MHz. Jego częstotliwość w tej aplikacji nie ma znaczenia, gdyż program zawarty w pamięci pro- Elektronika Praktyczna 6/2002 35 Tester kabli sieciowych LAN Z1 RJ45 1 8 3 7 2 G 4 5 12 4 14 3 13 2 15 1
Z2 RJ45 Rys. 1. Schemat elektryczny testera cesora nie posiada procedur wykorzystujących pomiar czasu oraz innych, dla których czas trwania cyklu maszynowego ma znaczenie krytyczne. W obwodzie rezonansowym oscylatora są dwa kondensatory C2 i C3 o pojemności 47 pF. Następnym blokiem układu jest standardowy obwód zerowania - składający się z kondensatora C4 o pojemności IOjiF oraz rezystora Rl (10kQ) - wytwarzający impuls dodatni w chwili pojawienia się napięcia zasilania. Do zasilania układu służy bateria stosowana w pilotach alarmów samochodowych o oznaczeniu 23A i napięciu 12 V. Jest ona załączana poprzez mi kro przełącznik "TEST", który służy jednocześnie do rozpoczęcia wykonania testu. Kolejność kabli według norm: Numer styku Kolor wg. EIA/TIA 568A Kolor wg. EIA/TIA 568B 1 biato-zielony biało-pomarań-czowy 2 zielony pomarańczowy 3 biało-pomarań-czowy biato-zielony 4 niebieski niebieski 5 biato-niebieski biato-niebieski 6 pomarańczowy zielony 7 biato-brązowy biato-brązowy 8 brązowy brązowy Napięcie +5V uzyskuje się ze stabilizatora 78L05. Do zasygnalizowania typu kabla oraz wskazania obecności napięcia zasilania służą trzy diody LED o kolorach: czerwony (Dl), żółty (D3), zielony (D2). Do testowania kabla 8-żyło-wego potrzeba 8 wejść oraz 8 wyjść. Ze względu na to, że procesor posiada tylko 15 wejść/ wyjść, z czego 2 są wykorzystane do sterowania diodami sygnalizacyjnymi, zastosowany został dodatkowy multiplekser US3 (74LS151) o ośmiu wejściach, trzech wejściach adresowych, jednym wejściu strobującym oraz prostym i inwersyjnym wyjściu danych. Do określenia adresu multipleksera wykorzystane są porty P3.5, P3.4, P3.3 mikroprocesora, natomiast P3.7 służy do odczytu stanu z multipleksera. Wejście strobujące multipleksera jest połączone z masą układu, gdyż tylko w takiej sytuacji jest możliwy przepływ danych wejściowych do wyjścia Y, zależnie od stanu linii adresowych A, B, C. Port Pl procesora służy jako wyjście zadające poszczególne sygnały testowe. Naciśnięcie przycisku TEST powoduje zasilenie układu poprzez stabilizator napięciem 5V. Proce- sor zaczyna wykonywanie programu. Działanie programu jest następujące: na wejściach Pl.O do Pl.7 ustawiany jest bajt z jednym bitem ustawionym. Następnie, po ustawieniu adresu przez wejście P3.7, odczytywany jest z multipleksera każdy z 8 możliwych bitów. Po odczycie wszystkich wykonywane jest porównanie czy Rys. 2. Rozmieszczenie elementów na płytce drukowanej 36 Elektronika Praktyczna 6/2002 Tester kabli sieciowych LAN List. 1. ;LAN CAELE TESTER cjne a,b,test_cross
;(c) 2002 C opyright by ARNOLD POLAK led normal off: $Mod51 cali led normal on setb 1 ed_n cali led_cross_off ret CodeAdre s equ00000h ;
USIWG 0 jmp S led cross on: clr led_c CSEG AT CodeAdres+OOOOh test crossr ret ORGC ideAdres+OOOOh mov b.łOOOOOOOOb
jmp on reset mov pl.b led cross off: ORGC 3deAdres+0003h cali read_151 setb led_c reti cjne a,b,test_error ret ORGC ideAdres+OOObh
reti ;pin3_rj45 set_151: ORGC ideAdres+0013h mov b.łOOOOOOOlb push acc reti mov pl.b mov acc.rl ORGC jdeAdres+OOlbh cali read_151 mov c.acc.O reti mov b,ł00000010b mov pinl51_a,c ORGC 3deAdres+0023h cjne a,b,test_error mov c,acc.1 reti mov pinl51_b,c ORGC 3deAdres+002bh ;pinl_rj45 mov c,acc.2 mov b,ł00000010b mov pinl51_c,c on_reset: mov pl.b pop acc cali read_151 ret main: mov b.łOOOOOOOlb
mov b, łlOOOOOOOb led normal on led_c equ p3.1 mov pl.b clr led_n cali read_151 ret EWD odczytany bajt posiada tylko jeden i ten sam bit co ustawiony na porcie Pl. W przypadku, gdy sprawdzenie wypadnie pozytywnie, oznacza to, że odpowiedni styk jednego wtyku jest połączony z odpowiednim stykiem drugiego wtyku. W przypadku, gdy odczytane zostaną dwa lub więcej bitów ustawionych to oznacza, że kabel ma zwarte żyły, natomiast brak bitu ustawionego w odczytanym bajcie oznacza brak połączenia pomiędzy dwoma końcami kabla, co może świadczyć o złym zaciśnięciu wtyku na kablu lub przerwie wewnątrz kabla. Powyższa procedura wykonywana jest ośmiokrotnie w celu przetestowania wszystkich ośmiu żył. Gdy wynik jest poprawny to oznacza, że kabel jest typu prostego. Jeżeli w trakcie powyższej procedury wystąpi niezgodność objawiająca się tym, że danemu bitowi portu Pl odpowiada tylko jeden bit, ale o innym numerze oczytany z multipleksera 74151, zostaje wykonywana procedura sprawdzenia czy kabel nie jest typu skrosowanego. Procedura dla typu skrosowanego różni się od poprzedniej tym, że dla 1., 2., 3. i 6. żyły są sprawdzane połączenia 1-3, 3-1, 6-2 oraz 2-6 a nie 1-1 2-2 3-3 6-6. Jeżeli wynik jest pozytywny to oznacza, że kabel umieszczony w złączach RJ45 jest typu skrosowanego, w przeciwnym przypadku kabel jest źle wykonany lub nie jest umieszczony w złączach. Program przedstawiony na list. 1 należy skompilować Cross-As-semblerem firmy MetaLink Corporation, który można pobrać ze strony http://www.atmel.com (publikujemy go także na płycie CD-EP6/2002B). Elektronika Praktyczna 6/2002 37 Tester kabli sieciowych LAN Montaż i uruchomienie Układ montujemy na płytce drukowanej, której schemat montażowy pokazano na rys. 2. Płytka jest przystosowana do montażu w obudowie KM35B, po uprzednim wykonaniu odpowiednich otworów w płytce czołowej według rys. 3. Rysunek ten przedstawia wewnętrzną stronę płytki przedniej, w której trzeba wykonać otwory (jest to odbicie lustrzane). Cały układ pobiera w czasie pracy maksymalnie 20mA (zależy od użytych diod LED), a procedura testowania trwa zaledwie kilka UTP - [Unshielded Twisted Pair) skrętka nie ekranowana, wykonana jest ze skręconych ze sobą par przewodów, tworzy w ten sposób linię symetryczną. Skręcenie jest wykonane ze splotem 1 zwój na 6 do 10 cm. Skręcenie chroni transmisję przed wpływem zakłóceń z otoczenia. FTP - [Folied Twisted Pair) - jest to skrętka wykonana podobnie jak UTP, z tym że zawiera ekran w postaci folii z przewodem uziemiającym. Stosowana jest do budowy sieci w środowiskach, w których występują duże zakłócenia elektromagnetyczne. STP - [Shielded Twisted Pair) jest to skrętka posiadająca ekran w postaci oplotu i zewnętrznej koszulki ochronnej. 16 85 Rys. 3. Widok płyty czołowej sekund, co zapewnia długą trwałość baterii zasilającej. Program po skompilowaniu ma 403 bajty. Obsługa Obsługa testera jest wyjątkowo prosta: umieszczamy dwa końce kabla zakończonego wtykami RJ45 w gniazdach testera, następnie naciskamy klawisz TEST. Zapala się wtedy czerwona dioda LED sygnalizująca, że układ jest zasilany poprawnie oraz jedna z dwu pozostałych diod. Świecenie diody żółtej oznacza, że kabel jest typu skrosowanego, natomiast diody zielonej - że kabel jest typu prostego. Brak świecenia diody żółtej lub zielonej oznacza niepoprawne wykonanie kabla lub brak kabla w złączach testera. Arnold Polak polarek@poczta.fm Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflczerwiecO2.htm oraz na płycie CD-EP06/2002B w katalogu PCB. WYKAZ ELEMENTÓW Rezystory Rl, R5, R6: 10kO R2, R3, R4: 680O Kondensatory Cl: lOOnF C2, C3: 47pF C4: 10^F/10V Półprzewodniki Dl: dioda LED czerwona D2: dioda LED zielona D3: dioda LED żółta Ul: 78L05 U2: AT89C2051 zaprogramowany U3: 74LS151 Różne Ql: dowolny rezonator kwarcowy z przedziału 0/5MHz...24MHz podstawka pod U2: 20 pin podstawka pod U3: 16 pin mikroprzełącznik obudowa: KM35B dwa gniazda RJ45 koszyczek na baterię typu 23A bateria 23A Elektronika Praktyczna 6/2002 PROJEKTY Zdalnie moduły AVT-5068 sterowane przekaźnikowe Bezprzewodowa transmisja danych jest jednym z większych dobrodziejstw, jakie zawdzięczamy rozwojowi elektron iki. Któż dzisiaj m o że wyobrazić sobie oglądanie telewizji bez pilota u boku ? Kolejny układ zdaln ego sterowania o wielu możliwościach przedstawiamy w artykule. W zależności od zastosowania, w układach zdalnego sterowania komunikacja pomiędzy nadajnikiem i odbiornikiem może odbywać się w różny sposób. Najbardziej rozpowszechnione jest stosowanie promieniowania podczerwonego i fal radiowych. Pierwsze medium, ze względu na swoje właściwości, może być stosowany w obrębie jednego pomieszczenia, gdyż jak każde światło, promieniowanie podczerwone nie przenika przez ściany lub inne przeszkody. Także na terenie otwartym bez stosowania soczewek skupiających światło maksymalna odległość między nadajnikiem i odbiornikiem może wynosić kilkanaście metrów. Dlatego transmisja w podczerwieni jest zwykle stosowana do sterowania domowym sprzętem audio-wideo. W tym zastosowaniu sprawdza się doskonale, gdyż przy odpowiednio dobranej mocy nadajnika i dużej czułości odbiornika, sygnał z pilota zostaje poprawnie odebrany nawet w przypadku odbić od ścian lub innych przedmiotów. Transmisja radiowa umożliwia uzyskanie znacznie większych odległości pomiędzy nadajnikiem i odbiornikiem, przenika również przez ściany. Możliwe jest więc uzyskanie większych odległości bez "widzenia" się nadajnika i odbiornika. W prezentowanym układzie przełącznika przekaźnikowego do komunikacji zastosowano właśnie transmisję radiową. Układ za pomocą jednego nadajnika radiowego umożliwia sterowanie ośmioma odbiornikami. Moduły odbiorników umożliwiają bezpośrednie sterowanie urządzeniami zasilanymi napięciem 220V. Jako układ wykonawczy zastosowano przekaźnik o prądzie przewodzenia 2x8 A. Daje to możliwość przełączania urządzeń o mocy do 3,5kW. Zasięg toru radiowego umożliwia rozmieszczenie odbiorników w obrębie mieszkania i sterowanie dowolnym urządzeniem. Budowa i działanie Przełącznik składa się z modułu nadawczego - pilota oraz z modułu odbiorczego, czyli układu wykonawczego. Na rys. 1 przedstawiono schemat elektryczny nadajnika. Składa się on z jednego układu scalonego - nadajnika radiowego oraz konwertera kodu jeden z ośmiu na kod binarny. Układ USl jest koderem, na którego wyjściu pojawia się zakodowany sygnał reprezentujący wartości binarne wejść adresowych Elektronika Praktyczna 6/2002 39 Zdalnie sterowane moduły przekaźnikowe RT1 NG INPUT vcc GND CON1 12V R1 100k R2 100k 03 100k S1 ON S2 ON S3 ON S4 Dl D2 D3 US1 HT-12E D4 D5 D6 ON D7 D8 AO A2 A3 A4 A5 A6 A7 GND VCC DOUT 0SC1 0SC2 TE D4 D3 D2 D1 18 16 15 14 13 12 10 D13 D9 R4 1M5 R5 100k D14 D10 D15 D11 D12 D16 SS Rys. 1. Schemat elektryczny nadajnika A0...A7 oraz czterech wejść danych D1...D4. Dodatkowo układ ten posiada wejście sterujące transmisją danych. Podanie poziomu niskiego na wejście TE sprawia, że na wyjściu DOUT pojawia się zakodowany sygnał. Ta funkcja jest szczególnie przydatna, jeśli układ pracujący w urządzeniu jest na stałe podłączony do zasilania, a transmisja ma być kluczowana zewnętrznym sygnałem. Wtedy, przez cały czas, gdy na wejściu TE panuje poziom niski, dane są wysyłane, a gdy podamy poziom wysoki, układ przechodzi w stan czuwania. Jest to o tyle ważne, że wysyłany przez cały czas sygnał powoduje "blokadę" częstotliwości 433MHz i wówczas żaden inny układ pracujący na tej częstotliwości, a znajdujący się w zasięgu nadajnika nie będzie pracował poprawnie, gdyż jego sygnał będzie zakłócany. Przy wykorzystaniu wejścia TE układu HT-12E sygnał może być wysyłany tylko w chwili zmiany stanów na jego wejściach, a gdy stany wejść są stabilne, wysyłanie sygnałów jest blokowane, umożliwiając korzystanie z częstotliwości 433MHz innym urządzeniom. W prezentowanym nadajniku funkcja ta jest jednak niewykorzystywana, ponieważ do układu USl napięcie jest podawane automatycznie w chwili naciśnięcia dowolnego przycisku. Po jego zwolnieniu zasilanie jest odłączane, więc wejście TE zostało na stałe zwarte z masą. Automatyczne podawanie zasilania ma na celu zminimalizowanie poboru prądu z baterii. Pobierany przez układ prąd jest w czasie czuwania nieznaczny, lecz mimo to warto zmniejszyć go niemal do zera. Jako nadajnik radiowy zastosowano moduł nadawczy RTl. Pracuje on z częstotliwością nośną 433MHz, a sygnały pojawiające się na wejściu tego układu powodują odpowiednią modulację tej częstotliwości. Aby moduł nadajnika mógł współpracować z odbiornikami, należy ustalić wspólny adres zarówno nadajnika jak i odbiornika, ponieważ odbiornik będzie reagował na sygnały zawierające adres zgodny z zaprogramowanym na jego wszystkich wejściach adresowych. Adres składa się z dwóch członów. Pierwszy składa się z pięciu bitów i jest ustawiany za pomocą zwarcia do masy lub plusa zasilania wejść A0...A4 układu HT-12E - adres w nadajniku i odbiorniku musi być taki sam. Drugi człon adresu jest zmieniany w zależności od wciśniętego przycisku. Ponieważ pilot może obsłużyć do ośmiu odbiorników, więc za pomocą klawiszy musimy odpowiednio zmieniać poziomy na pozostałych wejściach adresowych układu A5...A7. Ponieważ mamy do dyspozycji tylko trzy wejścia adresowe, należało zastosować konwerter zamieniający sygnały pochodzące z ośmiu klawiszy występujące w kodzie 1 z 8 na trzybitowy kod binarny. W tym celu wykorzysta- 40 Elektronika Praktyczna 6/2002 Zdalnie sterowane moduły przekaźnikowe +12V Rys. 2. Schemat elektryczny odbiornika no diody D5...D12. Powodują one zamianę kodu naciśniętego klawisza na kod naturalny dwójkowy, zaś diody D1...D5 oraz D13...D17 umożliwiają automatyczne podanie zasilania dla całego układu w chwili naciśnięcia dowolnego klawisza. W tab. 1 zestawiono stan wejść adresowych A5...A7 w zależności od naciśniętego klawisza. Za pomocą klawiszy S1...S4 urządzenia mogą być załączane, a klawisze S5...S8 odpowiednio powodują ich wyłączenie. Dodatkowy przełącznik dołączony do złącza JP umożliwia zmianę adresów dla sterowania pierwszą lub drugą grupą odbiorników. Przełączanie pomiędzy grupami odbiorników zmniejszyło dwukrotnie liczbę przycisków oraz znacznie liczbę zastosowanych diod. Jak już wspomniano i jak wynika z tab. 1, przyciski S1...S4 powodują załączenie odpowiedniego urządzenia, a przyciski S5...S8 jego wyłączenie. Związane to jest z tym, że o włączeniu lub wyłączeniu urządzenia decyduje stan wejścia danych Dl układu HT-12E. Dlatego dla danego od- biornika komenda załączenia i wyłączenia jest wysyłana pod ten sam adres, lecz z innym stanem na wejściu Dl. Gdy zostanie naciśnięty jeden z przycisków S1...S4, poprzez diody D1...D4 zostanie podane ujemne napięcie zasilające układ HT-12E, a do wejścia Dl poprzez rezystor R5 jedynka logiczna. Odbiornik o zgodnym adresie zinterpretuje to jako załączenie urządzenia. Jeśli zostanie naciśnięty klawisz z grupy S5...S8, to prąd popłynie przez jedną z diod D13...D16 wymuszając niski poziom na wejściu Dl i przez diodę D17 dołączy zasilanie układu USl. Poziom niski na wejściu Dl spowoduje więc wyłączenie przekaźnika w odbiorniku. Jako diodę D17 zastosowano diodę Schottky'ego, ponieważ na tej diodzie spadek napięcia jest mniejszy niż w standardowych diodach przełączających, dla których spadek ten wynosi typowo 0,7V. Zastosowanie takiej diody ma na celu uzyskanie jednakowego spadku napięcia w przypadku naciśnięcia dowolnego klawisza, zarówno załączającego jak i wyłą- czającego urządzenie. Spowodowane to jest tym, że przy naciśnięciu klawisza załączającego spadek napięcia występuje na jednej z diod D1...D4, a w przypadku klawiszy wyłączających spadek po- Tab.1. Sposób sterowania wejść adresowych i danych układu HT-12E Pierwszą grupa odbiorników (1-4) Lp. JP Klawisz A5 A6 A7 D1 1 OFF S1 1 1 1 1 2 OFF S2 1 0 1 1 3 OFF S3 1 1 0 1 4 OFF S4 1 0 0 1 5 OFF S5 1 1 1 0 6 OFF S6 1 0 1 0 7 OFF S7 1 1 0 0 8 OFF S8 1 0 0 0 Druga grupa odbiorników (5-8) Lp. JP Klawisz A5 A6 A7 D1 1 ON S1 0 1 1 1 2 ON S2 0 0 1 1 3 ON S3 0 1 0 1 4 ON S4 0 0 0 1 5 ON S5 0 1 1 0 6 ON S6 0 0 1 0 7 ON S7 0 1 0 0 8 ON S8 0 0 0 0 Elektronika Praktyczna 6/2002 41 Zdalnie sterowane moduły przekaźnikowe _pr zel aczni k _nad Rys. 3. Rozmieszczenie elementów na płytce drukowanej nadajnika wstaje na diodach D13...D16 oraz dodatkowo na diodzie Dl7. Ważne jest, aby obydwa napięcia miały wartości zbliżone do siebie, gdyż przy znacznej różnicy mogłyby wystąpić przypadki, że urządzenie można było załączyć, lecz nie można go już było wyłączyć z powodu zbyt małej mocy nadajnika. Na rys. 2 przedstawiono schemat odbiornika. Ponieważ nadajnik może obsłużyć osiem takich odbiorników, ich budowa jest taka sama, a konfigurowanie odbywa się za pomocą zworek JP1...JP3. Głównym elementem odbiornika jest układ USl. Jest to dekoder współpracujący z układem kodera zastosowanym w nadajniku. Za pomocą wejść adresowych A0...A4, które (podobnie jak w nadajniku) zwieramy do masy lub do plusa zasilania, ustalamy podstawowy adres odbiornika. Adres ten musi być taki sam we wszystkich odbiornikach i nadajniku. Jako odbiornik radiowy został użyty moduł RR3. Dane cyfrowe z jego wyjścia są podawane na wejście układu USl. Układ US2 jest dwukierunkowym licznikiem binarnym lub dziesiętnym, w zależności od stanu logicznego wejścia B/D. Dodatkowo licznik ten umożliwia równoległy wpis wartości początkowej. W prezentowanym urządzeniu pełni jednak dosyć nietypową funkcję. Każdorazowe naciśnięcie przycisku SW powoduje, że stan wyjścia Ql układu zmienia się na przeciwny. Tym samym, przekaźnik może być załączany lub zwalniany ręcznie. Rezystor R5 wymusza niski poziom na wejściu zegarowym licznika, a kondensator C6 eliminuje drgania styków przycisku SW, powodując wydłużenie impulsu pojawiającego się w momencie jego naciśnięcia. Drugi sposób zmiany stanu na wyjściu Ql układu US2 możliwy jest poprzez podanie niskiego poziomu na wejście PE. Jak już wcześniej wspomniano, wartość początkową licznika można wpisać w sposób równoległy. Właśnie podanie ujemnego impulsu na wejście PE powoduje przepisanie stanów logicznych występujących na wejściach J1...J4 na wyjścia Ql...Q4. Ponieważ nasz licznik zlicza do dwóch, dla nas istotny będzie tylko pierwszy stopień tego licznika, czyli stan występujący na wejściu Jl oraz na wyjściu Ql. Podanie ujemnego impulsu na wejście PE powoduje przepisanie stanu z wejścia Jl na wyjście Ql. Ujemny impuls na wejściu PE pojawi się w momencie odebrania przez dekoder HT-12D poprawnej transmisji radiowej z identycznym adresem, jak ten zaprogramowany na wejściach A0...A8 układu odbiornika. Jeżeli w nadajniku został naciśnięty klawisz z grupy S1...S4, to na wyjściu Dl dekodera pojawi się stan logiczny "1", który zostanie przepisany na wyjście Ql i dalej poprzez wzmacniacz tranzystorowy spowoduje załączenie przekaźnika. Jeśli zaś w nadajniku naciśnie-my klawisz z grupy S5...S8, to na wyjściu Dl układu USl pojawi się stan logiczny "O" i nastąpi zwolnienie przekaźnika. O ile sterowanie przyciskiem SW w odbiorniku powoduje zmianę stanu przekaźnika na przeciwny, to sterowanie za pomocą nadajnika zdalnego sterowania powoduje jednoznaczne załączenie lub zwolnienie przekaźnika, niezależnie od jego poprzedniego stanu. Tranzystory Tl i T2 pracują jako wzmacniacz prądowy nieod- wracający fazy. Dioda Dl zabezpiecza tranzystory przed wysokimi napięciami indukowanymi w cewce przy wyłączaniu przekaźnika. Dioda D2 sygnalizuje stan sterownika. Jeśli przekaźnik jest załączony, to dioda świeci, w przeciwnym wypadku jest zgaszona. Do zasilania układu odbiornika zastosowano transformator TS2/ 15, który wraz z mostkiem prostowniczym oraz kondensatorami Cl, C2 dostarcza napięcia zasilania o wartości około 12V. Napięcie to jest bezpośrednio wykorzystywane do zasilania cewki przekaźnika. Do zasilania pozostałych układów odbiornika zastosowano stabilizator napięcia US3. Montaż i uruchomienie Montaż rozpoczynamy od modułu nadajnika, zgodnie ze schematem montażowym pokazanym na rys. 3. Na początku montujemy rezystory i diody, następnie układ USl oraz nadajnik radiowy RTl. Na końcu montujemy złącze CONl, kondensator Cl i przyciski S1...S8. Przyciski mogą być wlu-towane, w zależności od potrzeb, od strony elementów lub ścieżek. Do złącza JP dołączamy zewnętrzny przełącznik. Montaż płytki odbiornika (schemat montażowy pokazano na rys. 4) jest nieco trudniejszy z uwagi na większą liczbę elementów oraz ich zróżnicowanie. Postępując według powszechnie 0 O 0 O O o o o o- o o- o o-TRTI-oo ooooooooo o-rcm-o ooooooooo- USl ?oooooooo o o o o o o- + 000000- oooooo- -o US2 ? ooo o o o o IooIjpi o- -O Ś O O JP2 O- sulool o - -O -|QO|JP3 HNTEflf M fT" oooooo 1EH1312111B OOD D2 Rys. 4. Rozmieszczenie elementów na płytce drukowanej odbiornika 42 Elektronika Praktyczna 6/2002 Zdalnie sterowane moduły przekaźnikowe przyjętej zasady montażu, tj. zaczynając od elementów o najmniejszych gabarytach, nie powinien sprawić problemów. Szczególną uwagę należy zwrócić przy montażu transformatora, przekaźnika i złączy CONl, CON2, gdyż elementy te w czasie użytkowania mają bezpośrednie połączenie z napięciem 220V. Dlatego przed podłączeniem układu do sieci należy dokładnie sprawdzić poprawność wszystkich połączeń. Przycisk SW montujemy poza płytką, a do punktu lutowniczego oznaczonego jako "Antena" dołączamy odcinek przewodu o długości około lOcm, który będzie stanowił antenę odbiorczą dla modułu radiowego. Po zmontowaniu obydwu płytek przystępujemy do uruchomienia urządzenia. W tym celu do złącza CONl na płytce nadajnika dołączamy napięcie zasilające 12V, na przykład z baterii lub zasilacza, a do złącza CON2 na płytce odbiornika dołączamy zasilanie 220V. Do złącza CONl dołączamy odbiornik na przykład lampkę nocną. Każdorazowe naciśnięcie przycisku SW w module odbiornika powinno na przemian zapalać i gasić lampkę. Jeśli tak jest, to przeprowadzamy synchronizację nadajnika z odbiornikiem. W tym celu wyłączamy zasilanie i ustawiamy podstawowy kod adresu na wejściach adresowych A0...A4 - taki sam w module nadajnika i odbiornika - poprzez zwarcie pól lutowniczych do masy lub do plusa. Następnie według tab. 1 ustalamy stany pozostałych wejść adresowych w zależności od tego, którymi klawiszami ma być obsługiwany dany odbiornik. Dla przykładu, jeżeli odbiornik ma reagować włączeniem na naciśnięcie klawisza Sl i wyłączeniem na naciśnięcie klawisza S5 oraz odbiornik będzie należał do pierwszej grupy, czyli od 1 do 4 (przełącznik JP rozwarty), to w odbiorniku należy następująco ustawić zworki: JPl - rozwarta, JP2 - rozwarta, JP3 - rozwarta. Jeżeli odbiornik ma reagować na przyciski S2 i S6, to przełącznik JP w nadajniku pozostaje bez zmian, a zworki w odbiorniku są ustawione następująco: JPl - rozwarta, JP2 - zwarta, JP3 - rozwar- WYKAZ ELEMENTÓW Nadajnik Rezystory R1...R3: lOOkO R4: 1,5MQ R5: lOOkO Kondensatory Cl: lOOnF Półprzewodniki D1...D16: 1N4148 Dl7: 1N5817 lub BAT43 US1: HT-12E Różne S1...S8: mikrowłącznik CONl: ARK2(3,5mm) RT1: moduł nadawczy 433MHz Przełącznik bistabilny Odbiornik Rezystory Rl: l,5kQ R2, R4: 4,7kQ R3: 51 Oka R5: 47kO R6...R8: lOOka R9: 10O Kondensatory Cl: 1000uF/25V C2, C3, C5, Có: lOOnF C4, C7: 100uF/16V Półprzewodniki Dl: 1N4007 D2: dioda LED 3mm MG: mostek prostowniczy 1A/4OOV Tl, T2: BC547 US1: HT-12D US2: CD 4029 US3: 7805 US4: odbiornik radiowy RR3 Różne JP1...JP3: goldpin 1x2 P: przekaźnik RM94P-12S Transformator TS2/15 Mikrowłącznik ta. Ustawienia zworek JPl, JP2, JP3 należy wykonać dla każdego z odbiorników. Po dopasowaniu odbiorników do nadajnika przełączniki przekaźnikowe są gotowe do pracy. Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflczerwiecO2.htm oraz na płycie CD-EP06/2002B w katalogu PCB. Elektronika Praktyczna 6/2002 43 PROJEKTY Z SIECI Programator WillemProg 3.0, część 1 AVT-5070 Ze względu na prostotę konstrukcji WillemProg jest jednym z najbardziej popularnych wśród amatorów na całym świecie programatorów uniwersalnych. Za jego pomocą można programować wszystkie popularne pamięci i mikrokontrolery, a liczba obsługiwanych układów ciągle się zwiększa. Holandia na mapie elektronicznego świata to miejsce szczególne, z tego to bowiem kraju wywodzą się prawdziwi guru uprawianej przez nas dziedziny, jak twórca Bascoma - Mark Alberts, twórca ST6-Realizera - Raxo Actum, czy teź Willem Kloosterhuis - twórca min. osławionego WillemProga. W artykule przedstawiamy jego nieco zmodyfikowaną wersję, doskonale dostosowaną do współpracy z oryginalnym oprogramowaniem. Programator jest tani w wykonaniu, prosty w rozbudowie, oprogramowanie sterujące jest "inteligentne" i ciągle rozwijane. Jeżeli wśród Czytelników EP znajdą się chętni, przygotujemy polską wersję oprogramowania do WillemProga. Opis układu Schemat elektryczny programatora pokazano na rys. 1. Czarnymi prostokątami oznaczono podstawki dla programowanych układów. Jak łatwo zauważyć, WillemProg bez dodatkowych adapterów może programować i testować większość pamięci EEPROM, Flash, EPROM oraz SRAM (w obudowach do 32 wyprowadzeń), szeregowych pamięci EEPROM z interfejsami SPI/ Microwire i PC, a także niektórych typów mikiokontiolerów PIC. Inne układy wymagają stosowania adapterów, z których kilka opiszemy w drugiej części artykułu. Budowa programatora jest bardzo prosta, co udało się uzyskać konstruktorowi dzięki przerzuceniu większości zadań na oprogramowanie. Z prostoty układowej wynikają pewne niedogodności eksploatacyjne - konfiguracja programatora jest dość skomplikowana i wymaga ręcznego ustawienia co najmniej kilku przełączników i jumperów. Transfer danych do i z programatora odbywa się poprzez interfejs równoległy. Układy U2 i U3 spełniają rolę buforów danych wprowadzanych do programatora, przez układ U3 przechodzą także dwa bardzo istotne sygnały sterujące: - CLK - taktujący rejestry-liczniki adresów U4...U6, - sygnał oznaczony symbolem D, dzięki któremu można szybko wprowadzić do rejestrów U4...U6 dowolny adres (wprowadzany szeregowo, synchronicznie z zegarem CLK). Odczyt danych z programatora odbywa się szeregowo, za pomocą rejestru Ul. Sygnały z magistrali danych są podawane na wejścia P1...P8 tego układu i wyprowadzane na złącze Centronics poprzez wyjście Q8 Ul i bufor -inwerter U12F. Dane odczytywane są w takt sygnału zegarowego podawanego na wejście CLK USl z linii danych DO2. Elementy U12E, U12D, Ql i Q5 pracują w torze wprowadzania i odczytu danych do pamięci programowanych szeregowo oraz mik-rokontiolerów PIC. Sterowanie załączeniem zasilania układów w obudowach DIP32 oraz innych, montowanych w podstawkach UlO, U14, U15, PIC umożliwiają elementy U12C, Q3. Włączenie tego napięcia sygnalizuje dioda LED Green. Tranzystory Q2, Q4 Elektronika Praktyczna 6/2002 45 Programator WillemProg 3.0 opgopgopg 8598 8588 a is S CL n na ZLS 91 ZL BL 3O SL DE US IZ EZ Ś3UA '915te ZL SLV ^ K UL 6 S Z dcW 19 BS g y t* E 9L V sóoo : S 0 0 39858=3 ? óóóóóóóó 4 U_________ Rys. 1. Schemat elektryczny programatora 46 Elektronika Praktyczna 6/2002 Programator WillemProg 3.0 WYKAZ ELEMENTÓW Rezystory Rl, R2, R5, R13, R14, R23, R24, R26: 10kO R3: lOOka R4, Ró, R7, R9, RIO, R15, R19, R21, R22: 2,2kQ R8, R25: l,2kQ Rl 1: 15kO R12: 4,7kn R16: 220O R17: 0,50 R18: 20kO R20: 5ÓQ Rx: lOOkO R-Pack 8x1 Oka Kondensatory Cl: 470^F/25V C2: 220pF C3: 47^F/35V C4, C5: 47^F/16V C6...C10: lOOnF Półprzewodniki Ul: 4014 U2, U3: 74HC367 U4...U6: 4015 Uli: MC340Ó3A U12: 74HC04 U13: 7805 DL D3, D8...D11: 1N4148 D4...D7, D12: 1N4001 Ql, Q2, Q5: BC547 Q3: BC327 Q4: BC557 LED, LED1, LED2: dowolne diody LED Różne LI: 100n.H PRINTER: DB25F Jl: jumper 2x3 J2: jumper 2x4 J3, J6, J7, J8: jumpery 1x3 U7: podstawka precyzyjna DIP32 (lepiej ZIF32) U9: DIP-switch 24 Ul0, U14, U15: podstawki precyzyjne DIP8 PIC: podstawka precyzyjna DIP18 służą do dołączenia napięcia zasilającego V do wyprowadzenia programowanego układu. Jego włączenie jest sygnalizowane za pomocą diody LED Red. Podwyższone napięcie programujące jest wytwarzane przez przetwornicę impulsową wykonaną na układzie Uli, natomiast napięcie zasilania dla innych elementów zapewnia scalony stabilizator U13. Na jego wejściu zastosowano mostek prostowniczy składający się z diod Tab. 1. Zestawienie układów programowanych za pomocą WillemProga 3.0 (bez adapterów) EPROM 27C64, 27C128, 27C256, 27C512, 27C010, 27C020, 27C040, 27C1001, M27C1001, M27C2001, M27C4001, 27C080, M27C801, 2716, 2732, 2764, 27128, 27256, 27512, 27010, W27E512, W27E010, W27C010, W27C020, W27C040, SST27SF256, SST27SF512, SST27SF010, SST27SF020 EEPROM 28C65,28C64, 28C128, 28C256,28C512, 28C010, 28C020, 28C040, M28C16A/17A, 28C16, XLS2816, AT28C256, AT28C010, AT28C040 Flash 28F64, 28F128, 28F256, 28F512, 28F010 (MX28F1000), 28F020, i28F001BX, 29F64, 29F128, 28C256, 29F512,29F010, 29F020, 29F040, AT29C256, AT29C512, AT29C010A, AT29C020, AT29C040, AT29C040A, W29EE512, W29EE011, W29EE012, W29C020 (128), W29C040, PH29EE010 (W29EE011), AE29F1008 (AT29C010), AE29F2008 (AT29C020), SST28SF040A, LE28F4001 EEPROM I2C 24Cxx 24C02, 24C04, 24C08, 24C16, 24C32, 24C64, 24C128, 24C256, 24C512 Microwire EEPROM 93Cxx 93C06, 93C46, 93LC46, 93C56, 93C57, 93C66, 93C76, 93C86, 93C06A, 93C46X, 93C56, 93C66, 93C76, 93C86 MicroChip PIC 16C84, 16F84, 16F84A,16F627/16F628, 12C508, 12C509, 12C508A, 12C509A, 16C620/621/622, 16C710/711, 16CE623/624/625, oraz poprzez złącze ICSP 16F870...16F877 Atmel Flash AT49Fxxx AT49F512, AT49F010,AT49F020,AT49F040, M29F002x SST39SF010,SST39F020,SST39SF040, AT49F001 ,AT49F002, Am29F512, Am29F010, Am29F020, Am29F040, 29F002, 29F002T, Pm29F002T EEPROM SPI AT25xxx, W95xxx AT25010,020, 040, AT25080, 160, 320, 640, 128, 256, W95010....256, AT25HP256/512, AT25P1024 IWSRAM (DS12xx) DS1220,DS1225Y, DS1230Y/AB, DS1245Y/AB, DS1249Y/AB RAM (Test) 6116, 6264, 62256, 62512, 628128 D4...7, dzięki któremu do zasilania programatora można stosować zasilacze o dowolnej polaryzacji napięcia na wtyku. Jumpery J6 i }7 umożliwiają modyfikację napięć generowanych przez przetwornicę, za pomocą J8 można zmieniać napięcie zasilania. Jednym z najważniejszych elementów służących do konfiguracji programatora jest 12-pozycyjny przełącznik U9. Jego zadaniem jest przekrosowanie niektórych linii adresowych i sterujących do odpowiednich wyprowadzeń programowanego układu. Andrzej Gawryluk, AVT Projekt przedstawiony w artykule opracował Willem Klooster-huis (http://www.willem.org). Wersja przedstawiona w artykule jest zmodyfikowaną, wersją WillemProga 3.0, w pełni z nim kompatybilną. Program do uruchamiania i testowania płytki programatora: http:/ /scorpius.spaceports.com/~mpu51/ eprom/pro gZETESTDB25.zip. Nowe wersje oprogramowania sterującego: http://scorpius.space-ports.com/~mpu51/eprom/win9x.html. Elektronika Praktyczna 6/2002 47 PROJEKTY System NET51, AVT-5062 W drugiej części ańykuiu poświęconego modułowi NET51, który zapewnia dostęp do In tern etu mikrokon trolerowi '51, przedstawimy jego oprogramowanie systemowe i omówimy sposób posługiwania się modułem. Zaletą prezentowanego rozwiązania jest programowa implementacja stosu TCP IIP, dzięki czem u wykonanie interfejsu jest stosunkowo tanie. Jpis oprogramowania Schemat blokowy oprogramowania systemu NET51 przedstawiono na rys. 4. Jak widać, program został podzielony na szereg modułów, które mogą być zestawiane ze sobą na różne sposoby. Takie rozwiązanie stwarza możliwość łatwego dostosowanie NET51 do konkretnych potrzeb. Najważniejszym elementem jest rdzeń systemu, zawierający podstawowe procedury obsługi pamięci, wewnętrznych zasobów mikrokontiolera oraz interfejsów i układów peryferyjnych. Następnym ważnym składnikiem syste- system plików SLIP PPP Ethernet system NET51 TCP/IP
RS232
RS485
I2C
1 wira
zmienne definiowane (RAM)
HTTP 1
SPyTTP
FTP
TELNET
Rys. 4 Schemat blokowy oprogramowania mu jest moduł obsługi wewnętrznych zmiennych, które mogą być systemowe lub definiowane przez użytkownika. Po każdym włączeniu zasilania lub zmianie zawartości pamięci EEPROM, system NET51 odczytuje definicje zmiennych i tworzy ich odpowiednią strukturę w pamięci danych. Takie rozwiązanie pozwala na wymianę definicji bez konieczności modyfikacji oprogramowania systemu. W oparciu o rdzeń został zbudowany stos TCP/IP. Nie będę przytaczał tutaj metody implementacji tych protokołów, gdyż wykracza to poza ramy artykułu. Zainteresowanych odsyłam do lektury dokumentów RPC dostępnych w Internecie oraz literatury [1] i [2]. Ze stosem TCP/IP współpracują programy aplikacyjne, dzięki którym możliwa jest wymiana informacji zgodnie z popularnymi protokołami takimi jak FTP lub HTTP. Serwer FTP wykorzystuje funkcje rdzenia związane z systemem plików znajdującym się w pamięci, gdzie przechowywane są pliki przeznaczone dla aplikacji systemowych (między innymi dla serwera HTTP). Właśnie zawartość tej pamięci może być zdalnie zmieniana przez użytkownika za pomocą dowolnego programu obsługującego protokół FTP. Serwer HTTP zaimplementowa-ny w NET51 pozwala na tworzenie dynamicznej zawartości odsyłanych stron w zależności od war- 48 Elektronika Praktyczna 6/2002 System NET51 Tab. 1. Operatory używane w systemie NET51 Typ zmiennej Operator Opis bez znaczenia = przypisanie wartości np. temp=12 bez znaczenia indeks od prawej np. gdy temp wynosi 1234 to temp:1 zwróci 3 liczba + zmienna = zmienna + wartość liczba - zmienna = zmienna - wartość liczba zmienna = zmienna * wartość liczba / zmienna = zmienna / wartość liczba I zmienna = zmienna or wartość (operacja bitowa OR) liczba A zmienna = zmienna xor wartość (operacja bitowa X0R) liczba & zmienna = zmienna and wartość (operacja bitowa AND) liczba zwraca ciąg "checked" gdy (zmienna and wartość) == wartość tości wewnętrznych zmiennych. Zmiany zawartości lub odczytu tych zmiennych można dokonywać zarówno z poziomu przeglądarki internetowej jak i interfejsu szeregowego obsługiwanego przez mik-rokontroler. Takie rozwiązanie umożliwia, za pośrednictwem sieci Internet, wizualizację stanu otoczenia serwera lub zdalne sterowanie dowolnym urządzeniem, które posiada tylko port RS232. System NET51 potrafi interpretować polecenia, które są przesyłane przez interfejs RS232 w postaci ciągu znaków zakończonych sekwencją , jak niżej: W ten właśnie sposób możliwe jest odczytanie lub modyfikacja wartości zmiennych oraz sterowanie niektórymi funkcjami systemu przez współpracujące urządzenie. Polecenie posiada ściśle określony format [wartość]. Jedynie pole wańość jest opcjonalne. Dla przykładu, aby odczytać zawartość zmiennej przez port szeregowy należy wysłać polecenie: ? i w przypadku poprawnego wykonania, serwer zwróci ciąg zna- ków także zakończonych sekwencją . Natomiast w celu zmiany wartości wybranej zmiennej należy wysłać polecenie z odpowiednio dobranymi polami "operator" oraz "wartość", których zastosowanie jest zależne od typu zmiennej (np. temp+10 lub data=12-01-2001). Znaczenie poszczególnych operatorów przedstawiono w tab. 1. W przypadku wystąpienia błędu (np. nieznana zmienna lub nieprawidłowy operator), system nie wykona polecenia, a do użytkownika nie zostanie zwrócony żaden komunikat. Możliwe jest jednoczesne modyfikowanie zawartości kilku zmiennych za pomocą sekwencji poleceń złożonej z pojedynczych oddzielonych znakiem &, np.: && Niestety, w ten sposób nie można odczytać danych z kilku zmiennych za pomocą pojedynczego zapytania. Opisany wyżej sposób operowania zmiennymi przy użyciu poleceń przesyłanych przez port szeregowy jest zastosowany (z pewnymi ograniczeniami) dla poleceń zawartych w żądaniach napływających do serwera HTTP. Aby przesłać dane do serwera, przeglądarka wykorzystuje metodę GET z protokołu HTTP (opisany w RFC1945), w której parametry dla serwera są przesyłane razem z żądaniem (parametry występują za znakiem ?). Aby wysłać polecenie do serwera, w pasku adresu przeglądarki należy wpisać ciąg: http://adr.ess.erw.era/bieżąca_stro-na.html?' Podobnie jak w przypadku RS232, można wysyłać kilka poleceń jednocześnie (np. http:// 192.16 8.1.100/ind ex. html? -temp=13&fan=l). W przypadku odwoływania się do zmiennych łańcuchowych należy zaznaczyć, że protokół HTTP nie pozwala na użycie w składni żądania pewnych znaków (muszą one być kodowane jako %ASCII_HEX). Serwer HTTP "rozumie" tak zakodowane dane, więc bez problemów można używać formularzy udostępnianych przez język HTML, co ułatwia tworzenie stron dla NET51. Niestety formularze nie umożliwiają używania innych operatorów oprócz przypisania, co zmusza użytkownika do korzystania ze skryptów języka Java. Konfiguracja i użytkowanie Na początku należy ustawić podstawowe parametry sieciowe systemu NET51 za pomocą terminala. W tym celu należy zewrzeć zworę Zl oraz włączyć zasilanie systemu, który nie zainicjalizuje części sieciowej i ustawi port szeregowy na 9600 bd. Następnie podajemy wartości parametrów: adres IP oraz maska podsieci itp. (powinny być uzgodnione z administratorem lokalnej sieci). Parametry sieciowe są traktowane jako wewnętrzne zmienne i są modyfikowane w sposób opisany w poprzedniej części artykułu. Oto poszczególne polecenia jakie należy wysłać do NET51: ip= mask= gate= cmd=wrcfg Ostatnie polecenie spowoduje przepisanie konfiguracji do pamięci EEPROM i przy ponownym włączeniu zasilania system skorzysta z wartości tam zapisanych. W kolejnym kroku tworzone są strony HTML, w których dla "dynamicznej" zawartości wykorzystywane są zmienne zdefiniowane przez użytkownika. Aby w oknie przeglądarki pojawiła się zawartość danej zmiennej, należy w kodzie HTML umieścić nazwę tej zmiennej w nawiasach kwadratowych. Na przykład kod:
Bieżąca temperatura wynosi [temp] stopni.
spowoduje wyświetlenie wartości aktualnej temperatury identyfikowanej zmienną temp. W nawiasach kwadratowych można podać dowolne poprawnie sformułowane polecenie, którego wynik będzie wstawiony w tym miejscu. Przykładem takiego użycia może być Tab. 2. Zestawienie typów zmiennych Typ zmiennej Opis DB 8-bitowa liczba bez znaku (zakres 0...2555) DW 16-bitowa liczba bez znaku (zakres 0...65535) DS łańcuch znaków o maksymalnej długości 128 znaków Elektronika Praktyczna 6/2002 49 System NET51 konstruowanie pól formularzy (typu "radio" i "check") za pomocą operatora $ np.
Innym przykładem może być dynamiczna wymiana grafiki na stronie w zależności od wartości zmiennej. I tak kod spowoduje wyświetlenie pliku ledO.gif lub ledl.gif na podstawie stanu wejścia oznaczonego IO A. Aby móc wykorzystać system NET51 należy dostarczyć definicje zmiennych oraz danych dla serwera HTTP, zawartych w specjalnym pliku o nazwie image.dat. Wymieniony plik jest wynikiem pracy programu net511ink.exe, który dokonuje "kompilacji" projektów definiowanych przez użytkownika. W celu utworzenia nowego projektu, należy na komputerze osobistym (w katalogu z danymi do projektu) utworzyć plik opisu projektu: nazwaprojektu.prj o podanej niżej strukturze: // tak wygląda komentarz // dla całej linii // tu zaczyna się sekcja // zmiennych [var] deklaracja zmiennej 1 deklaracja zmiennej 2 deklaracja zmiennej 3 // a tu zaczyna się sekcja // plików [file] // komentarz może być // umieszczany w dowolnych // liniach projektu nazwa pliku 1 nazwa pliku 2 nazwa pliku 3 Jak widać jest on podzielony na dwie sekcje: zmiennych oraz pli- Dodatek A Zestawienie wewnętrznych zmiennych NET51 Zmienna Dostęp Typ Opis server B DS serwera HTTP - adres IP (do pracy za firewallem) request R DS serwer HTTP - ostatnie żądanie skierowane do serwera baud B DB konfiguracja - prędkość portu szeregowego 1-9600; 2-19200; 3-57600 (aby ustawić port na wskazaną prędkość należy wydać komendę cmd=setup) iP B DS konfiguracja - adres IP systemu NET51 (np. 192.168.1.100) mask B DS konfiguracja - maska podsieci gate B DS konfiguracja - adres lokalnej bramy (do komunikacji z WEB) smtp B DS konfiguracja - adres serwera pocztowego cmd B DS system - sterowanie funkcjami serwera. Dostępne parametry wrcfg - zapis konfiguracji; reset - restart systemu; setup - ustawienie prędkości pracy UART na podstawie zmiennej baud. asca W DS system - port szeregowy dostępny z przeglądarki rela B DB system - przekaźnik A relb B DB system - przekaźnik B ioa B DB system - uniwersalne 10 A iob B DB system - uniwersalne 10 B Tab. 3. Zestawienie metod dostępu Metoda Opis R zmienna tylko do odczytu W zmienna tylko do zapisu B połączenie R oraz B ków. Sekcja plików składa się z nazw plików znajdujących się na dysku komputera PC, które powinny być dostępne dla serwera HTTP systemu NET51 (pliki *.html, *.gif, *.jpg, *.js itp.). Maksymalna liczba nazw plików wynosi 64, a ich łączny rozmiar nie może przekroczyć 3OkB (z uwagi na pojemność pamięci EEPROM). Długość nazwy pliku nie może przekroczyć 12 znaków, licząc razem z rozszerzeniem i separującą kropkę. Natomiast sekcja zmiennych zawiera deklarację o następującej składni: __ ^wartość początkowa], gdzie symbol "_" oznacza spację, a użycie wartości początkowej jest opcjonalne (domyślna wartość wynosi 0). Nazwa zmiennej może mieć maksymalnie 12 znaków i musi składać się wyłącznie z małych liter. Opisywany system obsługuje zmienne liczbowe traktowane jako 8- lub 16-bitowe liczby bez znaku oraz zmienne będące łańcuchami o maksymalnej długości 128 znaków - zestawienie typów zawiera tab. 2. Dla każdej zmiennej można przypisać metodę dostępu oraz wartość początkową, która będzie wpisana po sprzętowym zerowaniu systemu. Metoda dostępu określa, czy zmienną można odczytać lub zapisać z poziomu przeglądarki internetowej (zestawienie w tab. 3). Kompilacji projektu opisanego w powyższy sposób dokonujemy wydając z linii komend polecenie net511ink.exe nazwa_projektu.prj, przy czym zakładamy, że net511ink.exe znajduje się w tym samym katalogu co plik *-prj. W wyniku wykonania powyższego polecenia w katalogu danych powstaje plik o nazwie image.dat, który następnie powinien być załadowany do NET51 za pomocą dowolnego programu FTP. Dodatkowo jest generowany plik report.txt, zawierający opis przebiegu kompilacji oraz spis napotkanych błędów. Po załadowaniu pliku należy zakończyć sesję FTP oraz dokonać restartu systemu ręcznie lub zdalnie za pomocą polecenia cmd=reset (zdalne zerowanie nastąpi po ok. 5 sekundach). Po tych operacjach NET51 jest gotowy do pracy. Paweł Ciesłowski pcieslowski@wp.pl Literatura 1. "TCP/IP Ilustrated Volume 1, The Protocols", W. Richard Ste-vens 2. "TCP/IP Ilustrated Volume 2, The Implementations", W.Richard Stevens, Gary Wright 3. http://www.ietf.org/rfc.html -zbiór dokumentów RFC Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflczerwiecO2Jitm oraz na płycie CD-EP06/2002B w katalogu PCB. 50 Elektronika Praktyczna 6/2002 SPRZĘT Elektronicy, niejako "z definicji", są blisko związani z Internetem. Jest to przecież kopalnia wiedzy, nieprzebrane zbiorowisko katalogów i rozmaitych not aplikacyjnych. Ostatnio próbują aktywnie zaznaczyć swój wkład w wiekopomne dzieło rozwijania sieci. Coraz liczniejsze stają się opracowania dotyczące Internetu - jedno z nich przedstawiamy w artykule. SS^1^Y7 w internecie Internet powoli przestaje być domeną dużych komputerów z procesorami klasy Pentium, dużą jednostką centralną, monitorem, klawiaturą. Na rasie chyba jeszcze zbyt odległa jest wizja lodówki ,,podpiętej" do Internetu i poprzez niego automatycznie składającej zamówienia do sklepów, uwzględniając przy tym gusta właścicieli i aktualną swoją zawartość. Urządzenia sterowane przez sieć jednak juś istnieją. Przykładem może być choćby automat z napojami, zainstalowany na jednym z amerykańskich stadionów. Informuje on w odpowiednim momencie obsługę o kończących się zapasach, a takśe dynamicznie ustala cenę napoju, w zależności od rozgrywanych imprez i aktualnego popytu na oferowane produkty. Wkrótce pisma elektroniczne zapewne zaroją się projektami, w których mikrokontrole-ry, nawet te ośmiobitowe, będą zaprzęgane do zaplatania internetowej sieci. Pierwsze tego oznaki mogliśmy juś zaobserwować choćby na naszych łamach (EP3/2 002 i EP5/2002). Dzisiaj będziemy temat drążyć dalej. Obiektem zaintere- sowania stał się kit serwera webowego, opracowanego przez firmę Atmel, który nasza redakcja dostała do przetestowania. Na płytce zawarto wszystkie elementy niezbędne do realizacji zadań autonomicznego serwera stron WWW, a takśe niezbędnych do jego konfiguracji. Znajdziemy więc na niej: blok wytwarzający odpowiednie napięcia zasilające, interfejs sieci Ethernet, interfejs RS232, interfejs ISP, pamięć SRAM (32kP), pamięć Flash (256kP z możliwością rozszerzenia do 2MB), układ CPLD niezbędny do prawidłowego mapowania pamięci, wreszcie sterujący SnlOttlll Elektronika Praktyczna 6/2002 51 SPRZĘT Rys, 2 całością mikro kontroler AT-megalO3. Wielkość dostępnej w nim pamięci programu -128kB Flash - sprawia, śe doskonale nadaje się on do podobnych zastosowań. Jedną z ważniejszych funkcji oprogramowania rnikro-kontrolera jest obsługa stosu TCP/IP, który zapewnia obsługę wszystkich protokołów niezbędnych podczas łączenia się z Internetem. Odpowiednie procedury, które za-implementowano w badanym serwerze, są napisane w języku C i udostępniono je w wersjach źródłowych na CD-ROM-ie zawartym w zestawie. Z czystym więc sumieniem, Atmel nadał handlową nazwę produktowi w brzmieniu "AVR Ernhed-ded Internet Toolkii". Lektura tych procedur mośe być ciekawym doświadczeniem dla elektroników zajmujących się dostępem do Internetu. Program wpisywany fabrycznie do mikro kontrolera, skompilowany kompilatorem IAR, zajmuje ok. 32kB. Na płytce zamontowano ponadto cztery diody świecące, które mogą być przełączane z demonstracyjnej strony interne-towej. Wykorzystując sygnały wyprowadzone na złącze ex-pansion port, użytkownik stosunkowo prosto mośe samodzielnie tworzyć własne aplikacje, przeznaczone np. do zdalnego sterowania urządzeniami, zbierania i przekazywania wyników pomiarów poprzez sieć i innych, które tylko sobie wymyśli i odpowiednio oprogramuje. Do pisania własnych procedur firma Atmel zaleca stosowanie kompilatora języka C np. IAR C-compiler lub Imagecraft C-compiler, a takśe starter kitu STK500, w którym mośna zaprogramować mikrokontroler. Aby przeprowadzić pełny test płytki webserwera niezbędny jest komputer wyposażony w kartę sieciową z gniazdem RJ45, zainstalowanym protokołem TCP/IP oraz dowolną przeglądarką internetową. Nasz webserwer mośna dołączyć bezpośrednio do komputera za pośrednictwem skrosowanego kabelka lub poprzez lokalną sieć ethernetową. Fabrycznie ma on ustawiony adres IP (169.254.111.111) normalnie zarezerwowany dla sieci lokalnych. Bez niezbędnych zmian nie będzie więc widoczny w Internecie. Do celów poznawczych nie jest to jednak konieczne. Jeśli webserwer jest dołączony bezpośrednio do komputera, to przed przystąpieniem do działań praktycznych należy poprawnie skonfigurować protokół TCP/IP. W tym celu w panelu sterującym wybieramy konfigurację sieci, a w niej właściwości protokołu TCP/IP. Adres IP powinien być ustawiony na 169.254.111.150, maska pod-sieci na 255.255.255.0. Jeśli badaną płytkę łączymy z komputerem poprzez sieć lokalną, to najprawdopodobniej jej domyślny adres IP będzie się znajdował poza dostępnym zakresem. Na pewno będzie tak, jeśli nasza sieć jest dołączona do Internetu. W takim przypadku należy zmienić ustawienie adresu IP na płytce webserwera. Po konsultacji z administratorem mośna przeprowadzić procedurę wpisu nowej wartości IP, przyjmując któryś z niewykorzystywanych numerów. Do tego celu słuśy specjalne oprogramowanie dostarczane w zestawie. Jest to Web Ser-ver Terminal. Jego okno po załadowaniu parametrów domyślnych przedstawiono na rys. 1. Jak widać, jeśli nie zaznaczono opcji ,,DHCP", mośna tu ustawić ręcznie adres IP i MAC {Media Access Con-irol). W przeciwnym razie adresy te będą dynamicznie przydzielane przez hosta DHCP, który musi być ustawiony w sieci. Bardzo dokładny opis powyśszych parametrów znajduje się w dostarczanej dokumentacji - "AVRG40; Ernhedded Web Server". W omawianym programie mośna ponadto ustawić adres e-mail, a takśe nazwę użytkownika i hasło, poprzez które będzie się mośna logować bezpośrednio do webserwera wykorzystując FTP (File Transfer Proiocol). Do zmiany powyśszych parametrów, wymagane jest sprawne działanie połączenia sieciowego oraz połączenia poprzez port szeregowy. Wprowadzone zmiany zostaną przyjęte po restar-cie webserwera. Ich poprawność mośna zweryfikować np. popularnym pingiem. W tym celu, w oknie DOS-owym naleśy wpisać polecenie ping 189.254.111.111. W powyśszym przykładzie zastosowano adres domyślny, ustawiony fabrycznie. Jeśli został on zmieniony, naleśy oczywiście podać nowo ustaloną wartość jako parametr polecenia ping. Poprawne zakończenie sesji mośe świadczyć o prawidłowym skonfigurowaniu całości. Mośna więc przystąpić do otwarcia strony demonstracyjnej w dostępnej przeglądarce interneto-wej np. Internet Explorer lub Netscape Navigator. W polu adresu naleśy wpisać odpowiednią wartość w postaci liczbowej, nie symbolicznej. Przykładowo, dla ustawień fabrycznych będzie to: ,,http:/ /169.254.111.111". Po chwili na ekranie powinna się ukazać demonstracyjna strona WWW opracowana przez firmę Atmel (rys. 2). Jej wygląd jest dość surowy, ale przecieś ma ona demonstrować nie umiejętności plastyczne autorów, lecz walory webserwera. W jednej z opcji zaprezentowano mośliwość sterowania z poziomu strony WWW. Ograniczono się tylko do zapalania i gaszenia diod świecących. Nietrudno się jednak domyślić, śe po niewielkich zmianach sprzętu i oprogramowania mośna wykonywać duśo bardziej złośone operacje. Webserwer mośe na przykład zbierać dane dostarczane mu np. przez urządzenia dołączone do złącza rozszerzającego. Po dołączeniu elektronicznego termometru mośna na przykład całemu światu on-line podawać temperaturę w miejscu zainstalowania serwera. Prosta zmiana interfejsu pozwoli informować o ciśnieniu, sile i kierunku wiatru, natęśeniu ruchu drogowego, zanieczyszczeniu powietrza czy wielu innych parametrach. Trzeba przyznać, śe propozycja dość kusząca. W prezentowanym webser-werze zaimplementowano system plików, dzięki któremu Cechy kitu "AVR Embedded Za implementowane protokoły: + W\TP (Hyp&rT&xł Transfer Pro- -wyświetlanie stron Ś FTP {File TransferProtocoi) -transfer plików + SMW {Simpie MaiiTransfer Protocol) -obsługapoczty elektroniczne] Ś DHCP {Dynamie HostContigura-tion Protocol) - automatyczna konfiguracja serwera poprzez siec -^ Kompletny stos TCP/IP Ś \JDP {User Datagram Protocoi) -przesyłanie pakietówbez ustanowionego połączenia + \CMP {internet ControiMessa-ge Protocoi) - realizacja odpowiedzi dla programu diagnostycznego "Ping" Inne: ^ Niskopoziomowy interfejs dla kontrolera ethernetowego Ś Interfejs wykorzystywany do konfiguracji serwerai zachowy-waniazawartości stron WWW, wykorzystujący protokół ymo-ćem Ś System phków.wy korzy stywa-ny do zarządzania plikami zapisywanymi w pamięci Flash 52 Elektronika Praktyczna 6/2002 SPRZĘT ^^M można przekazywać zawartość stron WWW zapamiętywanych w pamięci Flash, następnie udostępnianych przez Internet. Pliki mogą być zachowywane, kasowane, można zmieniać ich nazwy. Wszystko odbywa się podobnie, jak kiedyś w DOS-ie. W tym przypadku transmisja danych może się odbywać poprzez połączenie sieciowe (ethernetowe), z wykorzystaniem protokołu FTP. Można również wykorzystywać do tego celu port RS232, za pośrednictwem protokołu y-mo-dem, dostępnego np. w programie "Hyperterminar. Płyt- ka jest przygotowana do programowania i debuggowania własnych aplikacji przy użyciu firmowego (atmelowskie-go) emulatora JTAGICE (JTAG In-Circuit Emulator) za pośrednictwem interfejsu JTAG. Standardowo jednak nie jest montowane odpowiednie złącze, jest natomiast przygotowane pod nie miejsce. Do pełnej emulacji wymagany jest procesor ATmegal28. Podsumowanie Możliwość "postawienia" własnego serwera webowego bez konieczności zaprzęgania do tego dużego komputera jest propozycją na pewno bardzo atrakcyjną. Aktualnie w Internecie można już znaleźć wiele rozwiązań opracowanych dla różnych mikro-kontrolerów. Często są to oferty gotowych wyrobów, a nie opisy konstrukcji, które mogłyby zainteresować elektroników. Dla nich prezentowany powyżej kit powinien być bardzo atrakcyjną propozycją, gdyż jest bardzo bogato udokumentowany, począwszy od schematu ideowego, kończąc na wersjach źródłowych zaimple-mentowanych procedur. Trzeba podkreślić, że stworzenie własnego oprogramowania obsługującego stos TCP/IP nie jest łatwe, szczególnie dla tych, którzy wcześniej tego nie robili. Zastosowanie procesora ATme-galO3 powoduje, że jest to produkt bardzo nowoczesny. Według mojej oceny przydałaby się większa pamięć Flash montowana standardowo, przeznaczona do prze- chowywania zawartości stron WWW. Mimo zamieszczenia dokumentacji na rodzimych stronach Atmela oraz na CD-ROM-ie zawartym w zestawie, dwa najważniejsze dokumenty dołączone są w postaci papierowej. Zabawne, że nie ustrzeżono się szkolnych wręcz błędów podczas ich tworzenia - brakuje jednej strony i jedna strona jest zdublowana. No cóż, nie jest to w sumie najważniejsze. Najważniejsze jest to, że AVR EIT jest bardzo udanym produktem, o dużych walorach edukacyjnych. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Dodatkowe informacje Zestaw prezentowany w artykule udostępniła redakcji firma JM Elektronik, tel. (32) 339-69-01, wwwjm.pl. Dodatkowe materiały związane z prezentowanym zestawem są dostępne na płycie CD-EP6/2002B. 54 Elektronika Praktyczna 6/2002 SPRZĘT //i 1(1) SUPSRPRO * / V Chyba nie ma już na krajowym rynku takiego programatora, który nie byłby opisywany w Elektronice Praktyczne/. A przyznać trzeba, że fest w czym wybierać. Można je dziś kupić niemal w każdym kiosku razem z biletami autobusowymi. Pomyśleć, że przed laty kupowało się je w firmach mających "linie montażowe" w garażach. Firmy takie osiągnęły po latach niemałe sukcesy. Czy tak zaczynała również w odległej Kaliforni firma Xeltek? Stara prawda mówi, że łatwo jest towar wyprodukować, trudniej go sprzedać. Czasami dochodzi do tak absurdalnych sytuacji, jak w jednej z rosyjskich fabryk produkujących garnki, w której pracownicy dostali pewnego razu wypłatę, w towarze, który sami wyprodukowali. No coś, podobno w gospodarstwie wszystko może się przydać. Wyroby owej fabryki widocznie wzbudzały niedostateczne zainteresowanie gospodyń domowych. I w tym tkwi klucz do rozwiązania problemu - towar powinien być atrakcyjny dla klienta. Z podobnymi problemami borykają sie. również producenci programatorów. Oni też ciągle zastanawiają sie., jak uatrakcyjnić swój wyrób, aby zachęcić klienta do zakupu tego, a nie innego modelu konkurencyjnej firmy. Nie jest jednak łatwo wymyślić coś, co by mogło zadziwić wybrednego, potencjalnego odbiorcę. Wydaje się, że wszystko - no, powiedzmy prawie wszystko - zostało już zrobione. Projektanci mają pewien dylemat. Użytkownik oczekuje jak największej liczby opcji, ale zwiększanie możliwości wyrobu na ogół wiąże się ze wzrostem ceny, a to z kolei zniechęca klienta do zakupu. Nowości Firma Xeltek postanowiła więc zaoferować programator SUPERPRO 2000, który oprócz swojej podstawowej cechy umożliwia również testowanie układów logicznych TTL i CMOS, a także pamięci RAM. Ponadto w pewnych sytuacjach programator ten może pracować bez dołączonego komputera. W tym trybie programator może być przydatny wtedy, gdy chcemy tylko sprawdzić zawartość układu lub skopiować zawartość jednego układu do drugiego. W trybie autonomicznym można również dokonywać "ręcznej" edycji bufora, do którego wcześniej zostały wczytane dane. Nie sądzę jednak, by komuś "wystarczyło cierpliwości na sensowne wypełnienie bufora (512kE) tą metodą. Chodzi raczej o możliwość wprowadzania drobnych zmian. Aby można było programować układy w trybie ręcznym, wcześniej trzeba skopiować do pamięci nieulotnej programatora odpowiednie algorytmy programowania. Dokonuje się tego poprzez port równoległy, wykorzystując firmowe oprogramowanie udostępnione na stronach internetowych firmy Xeltek. Powyższe czynności wymagają interakcji między obsługującym i urządzeniem. Model 2000 wyposażono więc w wyświetlacz alfanumeryczny oraz małą kla-wiaturkę foliową. Nie ma ich natomiast model SUPERPRO V, który może pracować tylko z komputerem (dołączonym również poprzez port równoległy). Oba programatory wyposażono - tak jak najczęściej się to robi - w 48-nóżkową podstawkę ZIF (Zero Inseriion Force), umożliwiającą wkładanie i wyjmowanie układów, bez narażania ich na uszkodzenia mechaniczne. Standardowo przeznaczone są więc dla układów w obudowach PDIP, opcjonalnie zaś można instalować adaptery pod obudowy: PLCC, QFP, SOP, TSOP, PSOP, SSOP, Rys. 1, Okno programu podczas edycji bufora danych 56 Elektronika Praktyczna 6/2002 SPRZĘT Rys. 2. Edytor wektorów testujgcych układy TTL/CMOS TSSOP, SOIC, SDIP, a nawet EGA. W przypadku obudów mających powyżej 100 wyprowadzeń niezbędne jest zainstalowanie specjalnego adaptera fPEPlOO dla modelu 2000 i PEP500 dla V), w miejsce standardowej podstawki ZIF. W programatorze SUPERPRO V operacja ta odbywa się bezproblemowo, gdyś nawet podstawka ZIF jest w nim zamontowana jako moduł zewnętrzny. Firma Xeltek dostarcza algorytmy programowania układów PROM, EPROM, PLD i mikro kontrolerów od ponad 60 producentów. W sumie uwzględniono ponad 6000 różnych układów, a prace rozwojowe są prowadzone na bieżąco, równolegle z pojawiającymi się nowymi układami. Pliki z danymi powinny być przygotowane "w formacie binarnym, Intel HEX, Motorola S, Tektronix lub JEDEC. Przed próbą skomunikowania się z programowanym układem sprawdzana jest jego obecność i prawidłowe ulokowanie w podstawce. Program sterujący pracą programatora potrafi wykryć brak układu lub jego uszkodzenie, odwrotne włożenie do podstawki, a nawet informuje o ile slotów jest przesunięty układ w podstawce w stosunku do prawidłowego położenia. Program sterujący Gdy "mechanicznie" wszystko jest już w porządku, można załadować dane do bufora i zająć się ich ewentualną edycją (rys. 1). Do dyspozycji mamy tu typowe funkcje: kopiowanie bloku danych, wypełnianie bloku danych określoną zawartością, poszukiwanie zadanego ciągu danych (wzorzec może być podany w postaci liczb heksadecymalnych lub znaków ASCII), Jest też opcja Swap umożliwiająca zamianę miejscami danych w obrębie 2, 4 lub 8 bajtów, Jakakolwiek zmiana zawartości bufora powoduje natychmiastowe wyliczenie sumy kontrolnej. Po skończonej edycji zmiany można zachować na BBHIUMIHIE^JTI^II,, Rys. 3. Komunikat obłędzie podczas testowania układu 74373 dysku komputera i przystąpić do programowania układu. Pożądane przy tym czynności, takie jak: kontrola wykasowa-nia układu, programowanie, weryfikacja zapisu i programowanie bitów zabezpieczających, szyfrowanie danych (w niektórych mi kro kontrolerach), wykonujemy ręcznie lub w trybie automatycznym. W tym drugim decydujemy, które z powyższych operacji mają być zaliczone do trybu automatycznego. Ustawienia warto zachować w pliku konfiguracyjnym. Dane z bufora nie muszą być w całości zapisywane do układu. Można zapisać dowolną partię danych, pod dowolnym adresem, a więc w typowy dla większości programatorów sposób. Na uwagę zasługuje duża szybkość programowania. Na przykład w przypadku modelu 2000, pamięć Flash o pojemności 8Mb jest zapisywana tylko 36 sekund. Tester układów cyfrowych Jak już pisałem wcześniej, programatory SUPERPRO umożliwiają testowanie układów logicznych i pamięci RAM, chociaż cała "inteligencja" jest w tym przypadku "zaszyta" w programie komputerowym. Programator pełni tu jedynie rolę interfejsu. Producent przygotował dość pokaźną listę wektorów testowych, ale trzeba przyznać, że ich tworzenie nie jest czynnością bardzo skomplikowaną. W zasadzie wystarczy jedynie znajomość tabeli przejść-wyjść lub grafu przejść badanego układu oraz funkcje poszczególnych jego wyprowadzeń. Do definiowania wektorów testowych służy specjalny edytor. Na rys. 2 przedstawiono przykładowy test przygotowywany dla układu 74373. W wierszach podajemy wymuszenia na poszczególnych wejściach i oczekiwane stany wyjść w danym kroku. Jak widać, można w ten sposób napisać test dla własnego układu kombi-nacyjnego lub sekwencyjnego, zrealizowanego np. w strukturze PLD. W przypadku wystąpienia błędu, na ekranie ukazuje się okno z komunikatem informującym o tym, gdzie wykryto nieprawidłowość. Na rys. 3 przedstawiono taką właśnie sytuację. Na wyprowadzeniu 19 układu spodziewano się poziomu niskiego, a podczas testu wystąpił poziom wysoki. Widać więc, że użytkownik oprócz ogólnej informacji o niesprawności układu, otrzymuje również wskazanie na podejrzane wyprowadzenie. Jedną z opcji testu jest automatyczne rozpoznawanie układów serii TTL/ CMOS. Chociaż odpowiedź nie zawsze jest jednoznaczna (rys. 4), to na pewno w niektórych sytuacjach opcja ta może być bardzo przydatna. Pisałem wcześniej, że opracowywanie sekwencji wektorów testowych jest czynnością bardzo łatwą. Trzeba jednak wiedzieć, śe istnieje na ten temat cała teoria, opisująca metodę generowania niezbędnych wymuszeń. Waśne jest Rys. 4. Komunikat o typie rozpoznanego układu przecież, żeby sprawdzić wszystkie możliwe stany badanego układu, zrobić to w sposób możliwie optymalny, tzn. w jak najmniejszej liczbie kroków oraz w miarę jednoznacznie wskazać miejsce wystąpienia błędu. Subiektywna ocena Programatory serii SUPERPRO powinny zainteresować elektroników, którzy mają na co dzień do czynienia z pamięciami, mikrokontrolerami i układami programowalnymi. Nawiasem mówiąc, czy są jeszcze tacy, którzy się z nimi nie zetknęli? Ze względu na wydajne algorytmy programowania, będą z pewnością chętnie wykorzystywane w warsztatach zajmujących się produkcją. W tym przypadku, warto zaznajomić się z całą ofertą firmy Xeltek (www.xeltek.com), Wyroby tej firmy nie należą do najtańszych, ale wydaje się, że cena jest usprawiedliwiona możliwościami sprzętu. Muszę jednak stwierdzić, że zaproponowany de-sign programatora jest daleki nawet od średnich wzorców estetycznych - szczególnie modelu SUPERPRO 2000. Obudowa jest według mojej oceny bardzo toporna. W modelu SUPERPRO V natomiast, konstruktorzy popełnili błąd, umożliwiając założenie modułu z podstawką w pozycji odwróconej o 180. Umieszczenie napisu na nim, wcale nie gwarantuje, że nierozważny użytkownik tak właśnie go nie zainstaluje. Jak mówią prawa Murphy'ego, jeśli można coś zrobić źle, to na pewno prędzej, czy później, tak się stanie. Wątpliwości mam również do opcji testowania układów logicznych. Wydaje mi się, śe 10, 15 lat temu mogłaby to być dość atrakcyjna oferta, dzisiaj natomiast entuzjazmu takiego - przynajmniej we mnie - nie wzbudza. Bardzo silnym argumentem przemawiającym za zakupem programatorów firmy Xeltek jest jednak to, że można liczyć na ciągłe uwzględnianie w jej produktach postępu w technologii układów scalonych. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Dodatkowe informacje Prezentowane w artykule urządzenia udostępniła redakcji iirrnaACS Tel. (48)617-60-00, www.acs.ats.pl. 53 Elektronika Praktyczna 6/2002 REKLAMA YAGEO Przegląd COMPANY oferty Produkcja i sprzedaż na całym świecie Phycomp wchodzi w skład korporacji Yageo. Korporacja ta, z siedzibą w Taipei na Tajwanie, zatrudnia na całym świecie ponad 6000 pracowników. Jej centra produkcyjne znajdują się w Europie, na Tajwanie i w Chinach, a ośrodki sprzedaży i obsługi klienta w 22 krajach. Strategicznie rozmieszczone na całym świecie centra sprzedaży Phycomp i Yageo mogą obsłużyć odbiorców w miejscu ich działalności i dostarczać im pomocy na najwyższym technicznym i logistycznym poziomie. W pierwszej linii nowoczesnego rozwoju Pionierska filozofia, badawczo-roz-wojowe programy wspomagające, pozwalają firmie Phycomp utrzymać się w czołówce firm rozwijających się. Jej nowe osiągnięcia obejmują opracowanie wielkopojemnościo-wych, wielowarstwowych ceramicznych kondensatorów MLCC (multi-layer ceramic chip capacitors), zastępujących drogie kondensatory tantalowe oraz zastąpienie w elementach MLCC elektrod palladowych tańszymi, metalowymi. Ponadto Phycomp był jedną z pierwszych firm, które wprowadziły rezystory Phycomp jest światowym producentem ceramicznych elementów do montażu powierzchniowego. Ma duże doświadczenie w technologii takich elementów, a także opracowywaniu innowacyjnych rozwiązań dla urządzeń elektronicznych z elementami ceramicznymi. Dotyczy to głównie telekomunikacji, elektronicznego przetwarzania danych i urządzeń powszechnego użytku. z funkcją bezpiecznika i która przewodziła w opracowywaniu rezystorów niskoomowych, a także rezystorów mocy w obudowach wielkości 1218 (z wyprowadzeniami wzdłuż dłuższych krawędzi w celu poprawienia odprowadzania ciepła i redukcji naprężeń). Firma przoduje także w opracowywaniu matryc re-zystorowych i kondensatorowych przeznaczonych do montażu powierzchniowego, o znacznie mniejszej powierzchni, niż matryce montowane z elementów dyskretnych. Nisko indukcyjne kondensatory MLCC Niskoindukcyjne kondensatory MLCC firmy Phycomp doskonale nadają się do odsprzęgania w szybkich systemach cyfrowych. Konden- 1. Niskoindukcyjne kondensatory IMLCC firmy Phycomp I Rys. 2. Przykład nowych, Isuperminiaturowych anten z oferty I firmy Phycomp satory o wyprowadzeniach wzdłuż dłuższych krawędzi obudowy mają znacznie mniejszą niż kondensatory konwencjonalne indukcyjność pasożytniczą, nadają się więc szczególnie do tłumienia zakłóceń i tętnień w obwodach wielkiej częstotliwości. Dzięki wysokiej częstotliwości rezonansu szeregowego, kondensatory te charakteryzują się wyjątkowo szerokim pasmem. Przy częstotliwościach zegarowych nowoczesnych procesorów, przekraczających obecnie 900MHz, kondensatory o małej indukcyjności szeregowej są bardzo przydatne do odsprzęgania i blokowania. Niskoindukcyjne kondensatory nie tylko mogą działać w szerszym paśmie niż kondensatory konwencjonalne, ale mogą skuteczniej tłumić zakłócenia wysokiej częstotliwości i redukować tętnienia napięcia stałego. W obwodach z szybkozmienny-mi sygnałami, w których natężenie prądu zmienia się gwałtownie, generowane są w liniach zasilających Wyroby Phycomp to: x specjalne kondensatory MLCC, x rezystory chipowe (R-chips), x matryce rezystorowe i kondensatorowe, x miniaturowe anteny ceramiczne do urządzeń komunikacyinych wielkie] częstotliwości na|nowsze| generacji Elektronika Praktyczna 6/2002 59 REKLAMA duże impulsy napięciowe (U=L*di/ dt), które mogą prowadzić do zawieszania się systemu, a nawet do jego uszkodzenia. Amplitudę tych impulsów można zmniejszyć tylko przez redukcję indukcyjności szeregowej kondensatorów odsprzęga-jących. Zalety niskoindukcyjnych kondensatorów MLCC firmy Phycomp to: - mała indukcyjność szeregowa, zapewniająca wyjątkowo szerokie pasmo dla odsprzęgania i blokowania, - silniejsze tłumienie zakłóceń i tętnień w porównaniu z kondensatorami tradycyjnymi. Kondensatory MLCC idealnie nadają się do celów blokowania zasilania i odsprzęgania w wielu wyrobach, takich jak: notebooki, komputery biurkowe, komputery kieszonkowe, telefony komórkowe, cyfrowe urządzenia powszechnego użytku (np. odtwarzacze DVD, monitory ciekłokrystaliczne, kamery). Anteny ceramiczne Phycomp, producent elementów z grupy Discreie Cerainics, dzięki nabytej już biegłości w wielowarstwowej technologii ceramicznej znacznie rozszerzył zakres produkowanych miniaturowych anten ceramicznych wielkiej częstotliwości. Firma, znana już z produkcji najmniejszych na świecie anten do montażu powierzchniowego, znacznie zredukowała wymiary ultrami-niaturowych anten Bluetooth. Nowa antena Phycomp Bluetooth, o wymiarach tylko 8x3,5x0,9 mm, jest prawie dwukrotnie mniejsza od anteny w poprzedniej wersji. Jest uważana za jedną z najmniejszych na świecie anten do sieci Bluetooth i LAN. Charakteryzuje się wysokim zyskiem 2,5 dBi oraz szerokim pasmem 100 do 200 MHz w zakresie ISM (Industrial, Scienii-flc and Medical), tj. 2,4 GHz. Antena ta jest oferowana dla trzech częstotliwości: 2,4, 2,6 i 2,7 GHz. Zestawienie miniaturowych wielowarstwowych anten ceramicznych Phycomp 43 3 MHz 870MHZ GPS GPS DECT WCDMA częstotliwość środkowa 433MHz 870-900MHz 1,575GHz 1,575GHz 1,88MHz 1,920-2,170GHz szerokość pasma 20MHz 40MHz GMHz 100MHz 100MHz 250MHz zysk(maks) 1,0dBi 1,5dBi 3dBi 1,5dBi 2dBi 1,5dBi VSWR 2,5 2,5 2,5 2 2 2 polaryzacja liniowa liniowa kołowa liniowa liniowa liniowa proces LTCC LTCC Formmg LTCC LTCC LTCC irnpedancia 50n Temp pracy -55 do 125 zakończenie (ekologiczne) Ni/ SnSMD Ni/ SnSMD przewlekane zasilanie szpilkowe Ni/ SnSMD Ni/ SnSMD Ni/ SnSMD GSM/ DCS GSM/ DCS Bluetooth/ IEEE S02.11b (kwadrat) Bluetooth/ IEEE S02.11b (podłużna) IEEE 802.11 a HyperLan 2-pasmowa do LAN częstotliwość środkowa 900/ 1800MHz 900/ 1800MHz 2,45GHz (3 do wyboru) 2,45GHz (3 do wyboru) 5,2GHz/ 5,8GHz 2,4/ 5,2GHz szerokość pasma 80/170MHZ 80/170MH2 100MHz 150MHz 100MHz 100MHz zysk(maks) 0,5/1 dBi 1/1,5dBi 1,2dBi 2,5dBi 3dBi 1,5dBi VSWR 2,7 2,5 2 2 2 2 polaryzacja liniowa liniowa liniowa liniowa liniowa kołowa liniowa proces płytka drukowana LTCC LTCC LTCC Formmg LTCC impedancia 50n Temp pracy -55 do 125 zakończenie (ekologiczne) szpilki sprężynujące Ni/ SnSMD Ni/ SnSMD Ni/ SnSMD Ni/ SnSMD Ni/ SnSMD Nie tylko Bluetooth Nowa supermała antena Bluetooth jest jedną z szeregu miniaturowych anten wielkiej częstotliwości. Stosowane przez Phycompa nowe oprogramowanie EDA, a także rosnące doświadczenie firmy w zakresie wielkich częstotliwości doprowadziły do stworzenia serii nowych anten do różnych aplikacji, opartych na tej samej technologii co anteny Bluetooth. Seria ta obejmuje anteny ceramiczne, optymalizowane do urządzeń GPS, 1,575 GHz oraz systemów DECT, 1,330 MHz. Phycomp dostarcza również anteny do aplikacji 433 MHz, 370 MHz, nowe dwupasmowe anteny 900 MHz/1,3 GHz do telefonów komórkowych oraz anteny 2,0 GHz do najnowszego systemu WCDMA (Wideband Code Divi-sion Multiple Access). Dla aplikacji 3. Przykłady produktów Ś cienkowarstwowych firmy Phycomp iRys. 4. Elementy wykonywane Iw nowszej technologii X2Y powyżej 5 GHz, Phycomp dostarcza dwupasmowe anteny ceramiczne na 2,4/5,2 GHz oraz 5,2 GHz i 5,3 GHz na potrzeby systemów następnej generacji (np. HyperLan). Ponadto, za pomocą swojej nowej formuły projektowania, firma może szybko zaadaptować swoje anteny do wymagań klientów. Oferuje także kompletną obsługę zamówień, obejmującą: projektowanie, wytworzenie i testowanie, z czasem dostawy próbnych egzemplarzy nie dłuższym niż cztery tygodnie. Za przykład mogą posłużyć anteny optymalizowane dla częstotliwości 433 MHz i 377 MHz, do transmisji danych o krótkim zasięgu w budynku (np. mającej zastąpić połączenia w podczerwieni). Poza antenami (w opracowaniu jest antena trójpasmowa), w Phycomp projektuje się inne podzespoły wielkiej częstotliwości, jak: filtry, układy równoważące (balun) w technologii LTCC. W niedalekiej przyszłości oczekuje się dalszej ekspansji firmy w dziedzinie produktów w.cz. Nowa seria wysokostabilnych rezystorów cienkowarstwowych Firma Phycomp zaoferowała ostatnio nowy rodzaj wysokostabilnych rezystorów cienkowarstwowych. Do- 60 Elektronika Praktyczna 6/2002 REKLAMA starczane są one w obudowach o różnych gabarytach, aż do najmniejszej 0402. Charakteryzują się zaletami technologii cienkowarstwowej , takimi jak: mała tolerancja, mały i stabilny współczynnik temperaturowy i doskonałe właściwości wysokoczęstot-liwościowe. Nowe produkty firmy Phycomp są produkowane w technologii cienkowarstwowej, w którym warstwy przewodzące (zwykle niklowo-chromowe) są nanoszone metodą napylania jonowego. Uzyskuje się w ten sposób warstwy doskonale jednorodne, pozwalające na utrzymanie małych wartości tolerancji do 0,1 %, o wyjątkowo małym współczynniku temperaturowym do 25 ppm/K (dzięki małemu współczynnikowi temperaturowemu warstw NiCr). Kontrastuje on ze współczynnikiem 50 ppm/K lub większym dla technologii grubowarstwowej, gdy pasta jest nanoszona metodą drukowania (zawiera cząsteczki srebra). Ważne właściwości rezystorów cienkowarstwowych: - niezwykle stabilne charakterystyki, - niski poziom szumów, - małe tolerancje, - wyjątkowo mały współczynnik temperaturowy, - niski profil. Typowym wykorzystaniem zalet wysokiej stabilności nowych rezystorów cienkowarstwowych Phycomp, jest stabilizator napięcia zasilającego układy scalone. Ze względu na wymaganą przez wiele nowoczesnych układów scalonych - zasilanych bardzo niskimi napięciami - stabilność zasilania, stabilizatory te muszą być zaopatrzone w dzielniki sprzężenia zwrotnego wykonane z rezystorów precyzyjnych. Rezystory jednakowej technologii, jednakowo się starzejące i jednakowo zależne od temperatury zapewniają wysoką stabilność dzielnika, a zatem i napięcia stabilizatora. Technologia X2Y firmy Phycomp: rewolucja w odsprzęganiu i filtrowaniu Technologia X2Y jest przełomem w projektowaniu ceramicznych układów wielowarstwowych do od-sprzęgania i filtrowania w scalonych elementach biernych. Dzięki kombinacji małej indukcyjności szeregowej, małej rezystancji szeregowej i ekranowania, elementy X2Y doskonale nadają się do od-sprzęgania. W tym zastoso-waniu, w porównaniu z kondensatorami tantalo-wymi, mogą znacznie zredukować wymaganą w układzie pojemność, nawet dwudziestokrotnie. Inne korzyści są związane ze zmniejszeniem kosztów umieszczania podzespołów, oszczędnością miejsca, a także wzrostem niezawodności. Podzespoły X2Y mają szerokie zastosowanie w przemyśle motoryzacyjnym, komputerowym, telekomunikacyjnym, energetycznym, militarnym, kosmicznym i medycznym. Elementy X2Y składają się z dwóch identycznych kondensatorów Y i jednego kondensatora X, zintegrowanych w zespół 4-koń-cówkowy o standardowych rozmiarach MLCC. Taka konstrukcja wielowarstwowa charakteryzuje się nie tylko małą rezystancją szeregową, ale dzięki wewnętrznej kompensacji zakłóceń, jej indukcyjność szeregowa redukuje się z nanohenrów do pikohen-rów. Phycomp produkuje i sprzedaje swe produkty na całym świecie i przyjmuje na nie duże zamówienia z krótkim czasem realizacji. Dodatkowe informacje Artykuł powstat w oparciu o materiały dystrybutora firmy Phycomp w Polsce - firmy Eurodis Microdis, tel. (71) 301-04-00, www.microdis.net. Elektronika Praktyczna 6/2002 61 Projekty Czytelników > Naszym setnym "Projektem Czytelników" jest sterownik pieca CO o niezwykle przemyślanej konstrukcji i ogromnych możliwościach. ^ ^+J Słr. 85. Zdalnie sterowane moduły przekaźnikowe Na słr. 39 przedstawiamy nowoczesny wariant zdalnie sterowanych (drogq radiowq) modułów przekaźnikowych. Programator WillemProg 3.0 ^ Polskq wersję programatora WillemProg przedstawiamy na słr. 45. Cyfrowy kształt sygnału Na słr. 62 przedstawiamy nowość na polskim rynku pomiarowym -cyfrowy oscyloskop firmy Yokoga- wa. Miniprojekty W tym miesiqcu przedstawiamy trzy miniprojekty, czyli urzqdzeń możliwych do zmontowania i uruchomienia w kilkanaście minut. Słr. 76. Interfejs IDE2LPT Rosyjski pomysł, amerykańskie układy, polska implementacja - na słr. 29 przedstawiamy opis interfejsu umożli-wiajqcego dołqczenie dysku twardego do interfejsu Centronics. Opis struktury zastosowanego układu CPLD także w języku VHDL! Tester kabli sieciowych LAN Za jego pomocq można określić rodzaj kabla Sieciowego, a także sprawdzić poprawność połqczeh pomiędzy wtyczkami. Słr. 35. ^ System NET51 Na słr. 48 przedstawiamy drugq część opisu internetowego interfejsu (stosu TCP/IP) w mikro-kontrolerze '51. Trójwejściowy przed-wzmacniacz HiFi Kolejny wariant procesora audio wykonanego na cyfrowo sterowanym, specjalizowanym układzie audio. Słr. 23. Superpro V i Superpro 2000 Nowe programatory firmy Xeltek przedstawiamy na słr. 56. Elektronika Praktyczna 6/2002 Internet i mikrokontrolery Przedstawiamy dwa kolejne artykułu ilustrujqce możliwości współczesnej globalnej elektroniki: "AVR-y w Internecie", słr. 51 oraz JP2022 - specjalizowany mikrokontroler sieciowy", słr. 71. T H8/300H Tiny - 16-bitowy 8-bitowiec 4 Nowq rodzinę mikrokontrolerów firmy Hitachi oraz narzędzia do nich przedstawiamy w artykule na słr. 69. IKA Nr 6(114) czerwiec 2002 Projekty Rejestrator telefoniczny z dekoderem CLIP, część 1 .......... 14 Trójwejściowy przedwzmacniacz Ili Fi....................................23 Interfejs IDE2LPT......................................................................... 29 Tester kabli sieciowych LAN....................................................35 Zdalnie sterowane moduły przekaźnikowe..........................39 Programator WillemProg 3.0, część 1....................................45 System NET51,część2.............................................................48 Laserowy "kabel" do RS232.................................................... 75 Automatyczny włqcznik monitora do PC.............................76 Di od owy oświ etla cz.................................................................76 Język C dla mikrokontrolerów 8051, część Automatyka PICO -ministerownik logiczny firmy Allen Bradley............. 129 Sprzęt! SUPERPRO Y/2000 - nowe programatory firmy Xeltek........56 Yokogawa DLI740 - cyfrowy kształt sygnału........................ 62 H8/300HTiny- ló-bitowy 8-bitowiec......................................69 AVR-y w Internecie................................................................... 51 Phycomp - przeglqd oferty..................................................... 59 IP2022 - specjalizowany mikrokontroler sieciowy fi rmy U bi com.............................................................................71 ESD w sprzęcie elektronicznym............................................. 123 Projekty Czytelników] Sterownik pieca CO..............................:...................................^5 Z kraju i ze świata........................................................111 Biblioteką EP Kramik+Rynek Listy...................................................................................95 Ekspresowy Informator Elektroniczny Wykaz reklamodawcow............................................110J Elektronika Praktyczna 6/2002 7 SPRZĘT Ciekawe, ilu użytkowników Worda potrafi przygotować korespondencję seryjną. Ciekawe też, ilu użytkowników Excela wie, co to jest tabela przestawna, potrafi skorzystać z solvera, nie mówiąc już o skonstruowaniu makra. Jaki procent możliwości oprogramowania lub sprzętu potrafi na co dzi eń wy korzys ta ć przeciętny użytkownik? Yoko Kiedyś mieliśmy zostać drugą Japonią. Dzisiaj już nie pamiętam esy były to obietnice przedwyborcze, esy tylko czcze mrzonki. Fakt jest faktem - jest to bardzo odległy dla nas kraj. Pod każdym względem. Zastanawiam się, na czym polega sukces gospodarczy państw azjatyckich. Bogactw na tu rai- Low nych prawie nie mają, wielkością częs-to nie dorównują Polsce. Rozwój techniki i technologii, jaki z łatwością osiągają, to w dużej mierze zasługa ludzi... i oczywiście pieniędzy, ale tych na początku nie ma prawie nikt. Pozostają więc ludzie, ale esy my jesteśmy naprawdę gorsi? Te smutne refleksje nasunęły mi się po tym, gdy przez jakiś czas mogłem popracować mając do dyspozycji właśnie japoński produkt, jakim był oscyloskop cyfrowy Yokogawa, model DL1740. Zastanawiałem się, dlaczego podobne konstrukcje nie mogą powstawać u nas. To bardso wyrafinowany sprsęt s tsw. ,,górnej półki". Z pewnością nie każdy będsie mógł sobie po- zwolić na jego zakup. Nawet dla firm konstrukcyjnych, wydatek musiałby być umotywowany odpowiednio wysokim zamówieniem lub realizacją jakiegoś złożonego projektu. Aparatura tej klasy jest jednak - jak wynika z sondaży - dość często sprzedawana w Polsce, a to mogłoby oznaczać, że i u nas powstają jednak nie trywialne opracowania. Po tym zawiłym wywodzie, przyjrzyjmy się zatem, co siedzi w środku Yokogawy. Ogólnie o oscyloskopie Najpierw rzut oka na całość. Oscyloskop, jak przystało na sprzęt tej klasy, jest wykończony perfekcyjnie. Liczbę elementów regulacyjnych na płycie 62 Elektronika Praktyczna 6/2002 SPRZĘT Rys. 2 czołowej ograniczono do niezbędnego minimum. W większości przypadków są to przyciski wywołujące odpowiednie menu, ukazujące się w dolnej części ekranu, pod którym są umiejscowione wydzielone klawisze funkcyjne. Dokonuje się nimi dalszych ustawień. Przyciski służą do wyboru opcji oraz ustawiania wszelkich przełączników. Zadawanie wartości liczbowych realizuje się bardzo wygodnym impulsato-rem, współpracującym ze specjalnym pierścieniem obrotowym. Impulsatorem można ustawić dany parametr z największą przewidzianą dla niego precyzją. Pierścień przydaje się, gdy dopuszczalny zakres jest bardzo duży. Umożliwia on szybkie przemiatanie wartości, przy czym prędkość zmian jest proporcjonalna do kąta obrotu. Po puszczeniu pierścienia, wraca on samoczynnie do położenia neutralnego. Mimo przemyślanej koncepcji rozlokowania elementów regulacyjnych, liczba możliwych kombinacji ustawień, może początkowo sprawiać pewien kłopot użytkownikom. Na szczęście w komplecie znajduje się dwuczęściowa, bardzo przejrzyście napisana instrukcja obsługi oraz skrócony, bogato ilustrowany przewodnik. Gdy użytkownik wie, jak dotrzeć do danego parametru, lecz nie jest pewien czego on dotyczy, może skorzystać z szybkiej pomocy ekranowej , Po naciśnięciu klawisza ,,Help" zostaje wyświetlona kontekstowa podpowiedz odnosząca się do ostatnio wykonanych akcji. W oscyloskopie DL1740 zastosowano kolorowy wyświetlacz ciekłokrystaliczny TFT o wymiarach 130,6x97 mm i rozdzielczości 640x480 punktów. Oscylogramy rysowane są w części ekranu z rozdzielczością 500x384 punkty, a pozostałą cześć przeznaczono na wyświetlanie menu i istotnych informacji o bieżących ustawieniach przyrządu, Gdyby jednak komuś obraz wydawał się za mały, nie ma problemu, może oglądać przebiegi nawet na 20-calo-wym ekranie. Jest to możliwe po dołączeniu zewnętrznego monitora poprzez wyjście VGA. Jeśli już mówimy o tym co można do oscyloskopu dołączyć, to łatwiej by było chyba odpowiedzieć, z jakimi urządzeniami oscyloskop nie może współpracować. Pogactwo interfejsów jest imponujące. Część z nich występuje wprawdzie opcjonalnie, ale do testów otrzymaliśmy egzemplarz z pełnym ekwipunkiem. Mamy więc: GP-IP, RS232, USP, SCSI, Ethernet fl00PASE-TX/10PASE/T), interfejs dla klawiatury i drukarki USP. Jest też specjalne wejście/wyjście "GO/NO-GO", które będzie opisane dalej. Na wbudowanej małej drukarence o rozdzielczości 8 pkt/mm fok. 200 dpi) można dokumentować pomiary bez konieczności komunikowania się z komputerem. Drukuje ona na papierze termicznym o szerokości 112 mm. Oprócz niej do dyspozycji jest jeszcze stacja ZIP (100/250MP) lub FDD (720KP/ 1.44MP). Pomiary mogą być prowadzone z wykorzystaniem zewnętrznego wejścia wyzwalania. Pojawienie się na nim odpowiedniego impulsu powoduje akwizycję danych i wyświetlenie ich na ekranie. Wejście to może pełnić również funkcję bramki wyzwalania. W tym przypadku, akwizycja danych odbywa się tylko wtedy, gdy na wejściu tym występuje odpowiedni, wcześniej wybrany poziom f,,H" lub "L"). Trudna sztuka doboru trybów pracy Umiejętne ustawienie trybów wyzwalania oraz metod próbkowania sygnałów, to połowa sukcesów podczas pomiarów oscyloskopowych. Dzięki dostępnym w modelu DL1740 trybom pracy można wychwytywać bardzo wyszukane sekwencje sygnałów. Nie sposób omówić tu dokładnie wszystko, a więc ograniczę się jedynie do skrótowego opisu. Mamy pięć podstawowych trybów pracy. l.,,Auto" - aktualizuje dane nawet wtedy, gdy przez określony czas nie następuje warunek wyzwolenia. W efekcie, na ekranie zawsze jest rysowana choćby ciągła linia. 2.,,Auto Level" - powoduje, że jeśli przez określony czas nie następuje wyzwolenie, wtedy poziom wyzwalania jest automatycznie dobierany w zależności od wielkości sygnału wejściowego, po czym ekran jest na bieżąco aktualizowany. 3.,,Normal" - aktualizuje ekran tylko wtedy, gdy zachodzi wyzwolenie. Jeśli w tym trybie poziom wyzwolenia zostanie np. ręcznie ustawiony zbyt wysoko lub zbyt nisko, ekran może przez dłuższy czas pozostawać bez zaktualizowanych przebiegów. 4.,,Single" - ekran jest aktualizowany zawsze po wystąpieniu wyzwolenia, po czym dalsza akwizycja danych jest zatrzymywana. 5 . ,,Single(N1" - powoduje rejestrowanie danych w pamięci zawsze po wystąpieniu warunku wyzwolenia, lecz wyświetla je (wszystkie), dopiero po N-tym wyzwoleniu. Liczba N może się zmieniać od 1 do 32. W oscyloskopie DL1740 mamy do dyspozycji jeszcze rozszerzone tryby wyzwalania, jak np. wyzwolenie po wykryciu zdefiniowanej wcześniej sekwencji sygnałów, po wystąpieniu impulsu o określonym czasie trwania, wyzwolenie sygnałem NTSC lub PAL. Można tworzyć rozbudowane warunki wykorzystując funkcję sumy logicznej ,,OR". Należy pamiętać, że mamy do czynienia z oscyloskopem cyfrowym. Sposób rysowania przebiegów na jego ekranie różni się zasadniczo od metod stosowanych w oscyloskopach analogowych. Tutaj przebiegi ze wszystkich kanałów są próbkowane, po czym cyklicznie zapisywane w pamięci. Dopiero w dalszej kolejności są wyświetlane na ekranie. To, w jaki sposób przebiega każdy z powyższych procesów, zależy od ustawionych trybów pracy i rzutuje na końcowy efekt, Nieumiejętne dobranie nastaw może spowodować wyświetlenie odmiennego oscylo-gramu w porównaniu z przebiegiem oryginalnym. Przykład, gdy nie zadbamy, aby częstotliwość próbkowania spełniała warunek Nyąuista. Problem ten był już wielokrotnie opisywany na łamach EP. Rejestrowanie próbek sygnału w pamięci stwarza ogromne możliwości, jakie niezwykle trudno było uzyskać w oscyloskopach analogowych. Wyobraźmy sobie, że podstawa czasu jest ustawiona tak, by można było wyraźnie zaobserwować krótkotrwałe i w dodatku nieokresowe sygnały (impulsy). Przypuśćmy, że występują one w znacznie dłuższym odstępie czasu od momentu wyzwolenia niż ten, który mieści się na ekranie. Sytuacja taka jest dość trudna do uchwycenia w klasycznym oscyloskopie. W dawnych konstrukcjach synchroskopow, stosowano analogowe linie opóźniające, w oscyloskopie cyfrowym wystarczy odpowiednio odczytać dane z bufora. W DL1740 służy do tego celu opcja ,,Delay", powodująca wyświetlenie na ekranie fragmentu przebiegu zarejestro- Rys. 3 64 Elektronika Praktyczna 6/2002 SPRZĘT Tab. 1. Najważniejsze dane techniczne oscyloskopu Yokogawa DL1740 Liczba kanałów pomiarowych 4 Impedancja wejściowa 1ftoą1%,ok 20pF 50^ ą1 % Czułość welfto 2rnV/dz-10V/dz we50n 2rnV/dz-1V/dz Charakterystyka częstotliwościowa 1V/dz-10mV/dz DCdo500MHz 5rnV/dz-2rnV/dz DCdo400MHz welfto 10V/dz-10mV/dz DCdo400MHz SrnV/dz-2rnV/dz DCdo300MHz Przetwarzanie A/D 8bitów(24LSB/dz) Częstotliwość próbkowania ztrybem mterleave 1GS/s bez trybu mterleave 500MS/S ztrybem repetitive 100GS/S Długoścrekordu ztrybem mterleave 1Msłowo/kanał bez trybu mterleave 500ksłów/kanał Tryby wyzwalania Auto. Auto level. Norrnal. Single. Smgle(N) Źródło wyzwalania Kanały 1 do4.EXT.UNE Opóźnienie wyzwalania 0t4s Typy wyzwalania A->B(n), A Delay B, OR, Pattern, Pulse With, TV Podstawa czasu 1ns/dz-50s/dz Wyświetlacz TFT, 6 4 cala, kolor, 640x480 punktów 500x384 punkty dla oscylogramów Tryby akwizycji danych Norrnal, Averagmg,Envelope, BoxAverage Interpolacja punktowa, sinusoidalna, liniowa, prostokątna Filtr wejściowy 20MHz lub 100MHZ Wbudowane akcesoria drukarka(opcja), tloppy/ZIP Wejścia/wyjścia EXTTRIG IN, TRIG OUT, RGB (VGA), GO/NO-GO, GP-IB, RS232 (opcja). USB, drukarka i klawiatura USB, SCSI, Ethernet (opcja) Zasilanie 100-120VAC/220-240VAC, 50/60HZ, 200VA wanego po ustalonym czasie od momentu wystąpienia warunku wyzwolenia. Podobne trudności były z rejestrowaniem krótkich impulsów, których szerokość jest duśo krótsza od okresu powtarzania. Do tego celu stosowane były niegdyś lampy z długim czasem poświaty, w DL1740 podobnie jak poprzednio, wystarczy odpowiednio ustawić warunki wyzwalania. Ale uwaga! Konstruktorzy firmy Yokogawa przewidzieli możliwość symulowania wydłużonego czasu poświaty, który bardzo się przydaje np. podczas badania fluktuacji przebiegu. Długość czasu poświaty mośe być skokowo regulowana w zakresie od zera do nieskończoności. Gdy mamy do czynienia z niestabilnym przebiegiem i chcemy sprawdzić czy mieści się on w ustalonym marginesie, mośna skorzystać z funkcji ,,GO/NO-GO". Najpierw trzeba zdefiniować strefę lub nawet kilka stref tolerancji. Są one zaznaczane na ekranie za pomocą impulsatora i odpowiednich przycisków. Następnie określa się akcję, jaka ma być podjęta, po wykryciu "błędu. Mośe to być przykładowo sygnał dźwiękowy, wydruk na drukarce, wysłanie maiła poprzez sieć Ethernet, zapis oscylogramu w pamięci wewnętrznej lub na dyskietce/ZlP-ie. Jednocześnie aktualny stan pomiaru jest sygnalizowany na wyprowadzeniach ,,GO" i ,,NO-GO" zewnętrznego wyjścia ,,GO/NO-GO". W oscyloskopie Yokogawa DL1740 mośna w prosty sposób prowadzić pomiary porównawcze. Przebieg wzorcowy zapamiętuje się na ekranie po naciśnięciu klawisza ,,SNAP SHOT". Od tej chwili pozostaje on na ekranie w postaci białego śladu, aś do momentu wyczyszczenia ekranu klawiszem ,,CLEAR TRACĘ". Jak juś pisałem wyśej, uśytkownik oscyloskopu cyfrowego musi nauczyć się prawidłowo ustawić warunki jego pracy, Ostateczny kształt mierzonego sygnału mośe zaleśeć od metod i szybkości próbkowania, a takśe metod akwizycji danych, metod interpolacji spróbkowanego sygnału stosowanych do zobrazowania go na ekranie i doboru odpowiedniej długości rekordu, w którym przechowywane są próbki. Ma to szczególne znaczenie podczas pomiarów sygnałów o duśych częstotliwościach oraz określaniu parametrów zboczy przebiegów prostokątnych. Niezwykłe mośliwości, jakie w tym zakresie oferuje oscyloskop DL1740 osiągnięto dzięki zastosowaniu specjalizowanego układu - tzw. DSE (Data Sie-arn Engine). Mamy więc do dyspozycji dość interesujący tryb akwizycji danych, jakim jest ,,Envenlope". Dzięki niemu mośna wykrywać wysokoczęs-totliwościowy szum nałośony na wol- Rys. 4 ny przebieg. W tym trybie, próbkowanie odbywa się zawsze z największą prędkością, niezaleśnie od ustawień podstawy czasu. Do obserwowania sygnałów wolnozmiennych przewidziano tryb nazwany jako ,,Roll modę", w którym na ekranie oscyloskopu przebieg jest kreślony w podobny sposób, jak w rejestratorach pisakowych. Wykres przesuwa się od prawej do lewej strony ekranu. Nowe dane wymazują poprzednie. W trybie tym mośna teś łatwo wykrywać wąskie szpilki w przebiegu, tzw. glitches. Dzieje się tak, gdyś przy podstawie czasu ustawionej np. na 50s/działkę, prędkość próbkowania jest równa 2MHz. Dokładne przyglądanie się takim impulsom oraz np. mierzenie czasów narastania i opadania zboczy przebiegów prostokątnych jest mośliwe dzięki funkcji ,,Zoom". Powiększenie jest regulowane w szerokim zakresie. Trzeba pamiętać, śe zakres zaleśy jednak od ustawionej długości rekordu. Obserwację z wykorzystaniem zoomu mośna prowadzić w czasie rzeczywistym oraz na zarejestrowanym wcześniej w pamięci przebiegu. Mośna jednocześnie zdefiniować dwie strefy przybliśenia i wyświetlać je w oddzielnych oknach razem z przebiegiem oryginalnym lub bez niego. Dopuszczalne jest ustawianie róśnych wielkości przybliśenia w kaśdym oknie. Czasami bardzo uśy-teczna okazuje się funkcja ,,Auto scroll", powodująca automatyczne przewijanie fz regulowaną prędkością) powiększanego fragmentu przebiegu. Wykorzystujemy ją, gdy chcemy np. znaleźć jakiś interesujący nas fragment. W tym celu pomocna bywa takśe funkcja ,,Search", pozwalająca na dokładne zdefiniowanie poszukiwanego fragmentu przebiegu. Są to dość wydajne narzędzia, zwaśywszy śe oscyloskop DL1740 posiada pamięć mieszczącą lMW (milion słów) danych. Oglądamy i mierzymy Sama obserwacja przebiegów najczęściej nie wystarcza inśynierowi uruchamiającemu lub naprawiającemu jakiś układ. Owszem, niekiedy wystarczy tylko stwierdzenie czy dany sygnał 66 Elektronika Praktyczna 6/2002 SPRZĘT jest, czy go nie ma, ale wtedy nie używa się aż takiego sprzętu, jak oscyloskop DL 1740. Prowadzenie pomiarów ilościowych na oscyloskopach analogowych jest dość trudne. Wiąże się na ogól z koniecznością odczytania długości i wysokości oscylogramu i przeliczania milimetrów na wolty, sekundy czy też inne jednostki. Natomiast oscyloskop cyfrowy w dość oczywisty sposób łączy możliwość obserwowania sygnałów z jednoczesnym pomiarem ich parametrów i to niekiedy dość wyszukanych. W DL1740, w każdym z czterech kanałów można mierzyć: wartość międzyszczytową, maksymalną, minimalną, średnią, skuteczną (True RMS), odchylenie standardowe, poziom najwyższy i najniższy, stosunek między różnicą poziomu najniższego i minimalnego (-Oshot) lub najwyższego i maksymalnego (+Oshot) do różnicy między wartością najwyższą i najniższą wyrażony w procentach, częstotliwość, czas narastania i opadania zboczy, szerokość impulsu mierzoną od zbocza narastającego lub opadającego, współczynnik wypełnienia, szerokość paczki impulsów, powierzchni przebiegu nad osią dodatnią, powierzchni trójkątnej i trapezoidalnej przebiegów X-Y. Żeby zrozumieć istotę niektórych z tych pomiarów, należałoby je dokładniej omówić, lecz niestety nie ma na to miejsca w tym artykule. Wyjaśnić mogę jedynie - budzącą się zapewne wątpliwość - różnicę między np. poziomem najwyższym, a wartością maksymalną. Najłatwiej to zrobić na przykładzie impulsu prostokątnego z wyraźnie widocznymi oscylacjami na jego zboczach. Wartość maksymalna, to najwyższa próbka sygnału, poziom najwyższy natomiast, to uśredniona wysokość impulsu (rys. 1). Zapewne wszyscy, zajmujący się metrologią wiedzą, że aby pomiar był miarodajny, należy go wykonać wielokrotnie, a wyniki uśrednić. Wśród różnych opcji pomiarowych użytkownik może więc wybrać m.in. opracowanie statystyczne pomiarów uwzględniające powyższy warunek. Mając cyfrowo zarejestrowane próbki sygnału można było analizować jego rozkład widmowy. W oscyloskopie DL1740 istnieje zestaw operacji matematycznych jakie można wykonywać na badanych przebiegach. Między innymi jest analiza FFT [Fast Fourier Transform), umożliwiająca badanie rozkładu widmowego mocy sygnału. Obliczenia prowadzone są na zbiorze 1000 lub 10000 próbek w jednym z trzech okien [rectangular, Hanning lub flattop), wybieranych w zależności od charakteru badanego sygnału. Ponadto można przebiegi z różnych kanałów sumować, odejmować, mnożyć, dokonywać inwersji, całkować i różniczkować. Interesujące efekty uzyskuje się stosując funkcję binaryzacji przebiegu. Polega ona na ustaleniu dwóch poziomów napięć mieszczących się w zakresie mierzonego sygnału i sprawdzaniu, jaka jest relacja między wartością chwilową a ustalonymi progami. W zależności od wyniku, funkcja przyjmuje wartość zero lub jeden (rys. 2). Oscyloskop i komputer Oscyloskopy tej klasy co Yokogawa DL1740 na ogół potrafią komunikować się z komputerem. Trudno, aby tak nie było, mając na pokładzie tyle interfejsów. Moje zdziwienie wzbudziło natomiast to, że w standardowym wyposażeniu nie znalazłem stosownego oprogramowania dla komputera PC. Dopiero niezastąpiony w takich przypadkach Internet wyjaśnił sprawę. Program umożliwiający ściąganie ekranów i danych pomiarowych znalazłem na stronie Yokogawy [www.yokogawa.com). Nazywa się DLWave. Prezentowane w artykule oscylogramy uzyskane są właśnie dzięki niemu. Za jego pomocą można także dokonywać nieskomplikowanych pomiarów (rys. 3 i 4) Wszystko co dobre, szybko się kończy Niestety zakończyłem już próby z oscyloskopem DL1740 i muszę się z nim rozstać. Ciekawe, jak długo będę się teraz przyzwyczajał do jego braku. Praca z takim przyrządem, to prawdziwa przyjemność, choć nie jest on pozbawiony pewnych mankamentów. Najpoważniejszym dla mnie był szum wentylatora. Oscyloskop pracuje wyraźnie głośniej niż komputer PC. Ale cóż, trzeba się niestety z tym pogodzić. Widać sporo ma w środku elektroniki. Potwierdza to również pobierana z sieci moc równa 200VA. Trzeba też zadbać o to, aby oscyloskop stał na stanowisku pomiarowym mniej więcej na wysokości oczu. Patrzenie na ekran z góry, nawet pod stosunkowo niewielkim kątem, powoduje wyraźne pogorszenie kontrastu. No i na koniec często zadawane pytanie przy okazji prowadzenia różnych testów: czy możliwości oferowane przez sprzęt uzasadniają jego cenę? Odnosząc je do możliwości i wyposażenia innych oscyloskopów tej klasy dostępnych na rynku z pewnością tak pomimo tego, że na jego zakup nie wystarczy typowe kieszonkowe. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Dodatkowe informacje Prezentowane w artykule urządzenia udostępniła redakcji firma NDN (tel. (22) 641-15-47), www.ndn.com.pl. Elektronika Praktyczna 6/2002 67 KURS Co w LPT część 2 W drugiej części artykułu przedstawiamy tajniki równoległego portu drukarkowego działającego w trybie EPP. Tryb ten, podobnie do opisanego miesiąc temu SPP, także został uwzględniony w obowiązującym obecnie standardzie IEEE1284. Tryb pracy EPP jest szczególnie przydatny w aplikacjach wymagających dwukierunkowej wymiany informacji przez łącze równoległe. Tryby SPP/ECP/EPPj)d strony praktycznej EPP jest akronimem od angielskiego Enhanced Parallel Poń, co oznacza port równoległy o zwiększonych możliwościach. Są to m.in. możliwość adresowania przesyłanych danych, gwarantowana dwukierunkowość portu, a także zastosowanie mechanizmów synchronizujących transfer danych pomiędzy nadajnikiem i odbiornikiem [handshaking). Pierwotną specyfikację EPP opracowali: Intel, Xircom i Żeni th. Została ona oznaczona symbolem EPP1.7. Często jest spotykana także nieco zmodyfikowana wersja standardu oznaczona symbolem EPP1.9. Większe możliwości: EPP Podstawowym założeniem twórców standardu EPP było zapewnienie jego pełnej kompatybilności z klasycznymi rozwiązaniami od dawna stosowanymi w interfejsie Centronics (SPP). Z tego powodu trzy podstawowe rejestry wykorzystywane w trybie SPP zachowały swoje funkcje, dodano natomiast dwa kolejne rejestry 8-bitowe przeznaczone do wpisu/odczytu przesyłanych danych i adresu docelowego urządzenia (tab. 3). Wrlt* DataStrobe Wait D0...7 Rys. 5. I Rozszerzenie możliwości portu równoległego wymagało zmiany funkcji niektórych sygnałów interfejsu, a z niektórych linii sygnałowych całkowicie zrezygnowano. Zestawienie sygnałów interfejsu równoległego EPP wraz z ich przypisaniem do styków złącza DB2 5 pokazano w tab. 4. Transmisja danych w trybie EPP jest przeprowadzana w niezależnych cyklach zapisu i odczytu danych oraz bajtu adresowego (opcjonalnie), przy czym każdy z nich przebiega nieco inaczej. Nowoczesne układy obsługują tryb EPP w pełni sprzętowo, co oznacza, że rola użytkownika sprowadza się do wpisania i odczytania danych do/z odpowiednich rejestrów. Sygnały synchronizujące transmisję są generowane automatycznie. Jest oczywiście możliwość czysto programowej obsługi tych sygnałów, co jednak w większości przypadków spowoduje zmniejszenie szybkości przesyłu danych. Na rys. 5 pokazano przebiegi charakterystyczne dla zapisu danych do urządzenia zewnętrznego. Użytkownik wpisując daną do rejestru Data Port EPP (ad- Wrłte AddrmStroba D0...7 res Base + 4) powoduje uruchomienie cyklu przesyłowego, który przebiega następująco: - sygnał wyjściowy Write przyjmuje stan logicznego "0", co sygnalizuje zewnętrznemu urządzeniu chęć zapisania do niego danej, - dane z rejestru Data Port EPP są wysyłane na wyjścia DO..7, - jeżeli urządzenie zewnętrzne jest gotowe (sygnalizuje to poziom niski sygnału wejściowego Wait), na wyjściu DataStrobe pojawia się logiczne "0", - urządzenie zewnętrzne po odczytaniu danej potwierdza odbiór poprzez zmianę poziomu logicznego sygnału Wait z "0" na "1", Tab. 3. Funkcje rejestrów interfejsu równoległego pracującego w trybie EPP. Adres Nazwa rejestru Kierunek Bazowy + 0 Data Port SPP Zapis Bazowy +1 Status Port SPP Odczyt Bazowy + 2 Control Port SPP Zapis Bazowy + 3 Address Port EPP Zapis/Odczyt Bazowy + 4 Data Port EPP Zapis/Odczyt Bazowy + 5 - - Bazowy + 6 - - Bazowy + 7 - - Write Dane odczytywane tym zboczem DataStrobe Rys. 6. I 60 Elektronika Praktyczna 1/2002 KURS Dane odczytywane tym zboczem ~\ Addreu Strobe V
Walt / D0...7 Y i Rys. 8. - w odpowiedzi na to sterownik interfejsu zmienia sygnał Da-taStrobe z "0" na "1", co kończy cykl przesłania bajtu danych. W taki sam sposób przebiega zapis do urządzenia zewnętrznego bajtu adresowego (rys. 6). Różnice są następujące: słowo danych, określające adres, jest wpisywane pod adres Base + 3, a rolę sygnału strobującego spełnia AddressStrobe zamiast Da-taStrobe. Podobnie do zapisu danych do urządzenia zewnętrznego przebiega cykl odczytu danych i adresu. Użytkownik inicjuje te cykle odczytując rejestry (odpowiednio): Data Poń EPP lub Ad-dress Port EPP, co powoduje zainicjowanie cykli wymiany danych jak pokazano na rys. 7 (odczyt danych) i rys. 8 (odczyt adresu). Jak łatwo zauważyć, podczas odczytu danych sygnał Write nie jest aktywny (ma stałą wartość "1") i jest to praktycznie jedyna różnica w stosunku do cykli zapisu. Dane są odczytywane synchronicznie z na- W EPP1.7 sygnał xStroto może przyjąć wartość '0* także podczas Walt="1" Walt Tab. 4. Numer styku WDB25 Numer styku w 36-stykowym złączu Centronics Nazwa sygnału EPP Kierunek Dostęp poprzez rejestr 1 1 Write wy - 2 2 DataO we/wy Data EPP 3 3 Data 1 we/wy Data EPP 4 4 Data 2 we/wy Data EPP 5 5 Data 3 we/wy Data EPP 6 6 Data 4 we/wy Data EPP 7 7 Data 5 we/wy Data EPP 8 8 Data 6 we/wy Data EPP 9 9 Data 7 we/wy Data EPP 10 10 Interrupt we - 11 11 Wait we - 12 12 - - - 13 13 - - - 14 14 Data Strobe wy - 15 32 - - - 16 31 Reset wy - 17 36 Address Strobe wy - 18...25 19...30 GND W EPP1.9 sygnał xStrobe może przyjąć wartość "0" tylko gdy Wait=1O1 Rys. 9. rastającym zboczem sygnału Address Strobe lub Data Strobe. Wersje standardu EPP 1.7 i EPP1.9 różnią się od siebie dość istotnie, bo warunkiem generowania sygnałów Address Strobe oraz Data Strobe. W EPP1.7 sygnały te mogą się zmieniać niezależnie od stanu linii Wait, natomiast w EPP1.9 konieczne jest potwierdzanie gotowości urządzenia zewnętrznego poprzez utrzymywanie na linii Wait stanu "0" jak to pokazano na rys. 9. Ponieważ zastosowane mechanizmy synchronizacji wymiany danych są stosunkowo proste i przez to podatne na błędy transmisji (np. próba zapisu do urządzenia, które nie jest dołączone do portu), okazało się konieczne wprowadzenie do interfejsu EPP timera-watchdoga o czasie reakcji ok. 10)is. W przypadku braku odpowiedzi z urządze- nia zewnętrznego w tym czasie, ustawiany jest bit 0 w rejestrze Status Port SPP, który w trybie SPP nie jest wykorzystywany. Szybkość transmisji danych w trybie EPP jest silnie zależna od wypadkowej wydajności komputera, w którym znajduje się interfejs. W typowych przypadkach szybkość transmisji mieści się w przedziale 0,5...2,3MB/s, przy czym jest to szybkość transmisji bez uwzględnienia opcjonalnego przeadresowywania współpracujących urządzeń. Tomasz Jakubik, AVT Dodatkowe informacja Dodatkowe informacje można znaleźć w Internecie pod adresami: - httpy/www.beyondlogic.org/pardebug/pdebug.htm, - ftttp//www.beyondlogic.org/spp/parallel.pdf, - httpy/www.beyondlogic.org/epp/epp.pdf, - httpy/www.beyondlogic.org/ecp/ecp.pdf, - httpy/www.lvr.com/parport.htm, - httpy/www.Ipt.com/Downloads/downloads.htm. 62 Elektronika Praktyczna 1/2002 SPRZĘT -bitowy 8-t>itowiec Jedno z najnowszych opracowań Hitachi - mikrokontrolery tworzące rodzinę H8/300H Tiny - mają być zamierzeniach producenta tanią alternatywą mikrokontrolerów 16-bitowych, co interesujące - z zachowaniem zalet i wydajności 16-bitowego rdzenia znanego z rodziny H8/300H. Projektantom nowej rodziny mikrokontrolerów udało się zachować kompatybilność obydwu rodzin, dzięki czemu - jak zapewnia producent - programy i procedury przygotowane dla starszych mikrokontrolerów nie wymagają praktycznie żadnej przebudowy. Architektura H8/300 Tiny Rdzeń mikrokontrolerów H8/3 00H został zoptymalizowany pod kątem programowania w języku C, co spowodowało wyposażenie go w aż 16 rejestrów 16-bitowych (z możliwością skonfigurowania ich jako 8- lub 32-bitowe), zapewniono sprzętową obsługę wewnętrznych przesłań 32-bitowych, możliwe jest także wykonywanie operacji logicznych i arytmetycznych na słowach 8- i 32-bitowych. Rdzeń wyposażono także w możliwość wykonywania sprzętowych mnożeń (także liczb ze znakiem), dzięki czemu wykonanie mnożenia dwóch liczb 16-i 32-bitowych wymaga zaledwie 22 cykli maszynowych, w przypadku mnożenia lub dzielenia słów 8-bitowych -14 cykli maszynowych. Przy taktowaniu maksymalną możliwą częstotliwością wynoszącą 16MHz czas cyklu maszynowego wynosi 125ns. Jest to wynik słabszy niż w przypadku ,,pełnej" wersji H8/300H (80ns przy 25MHz), co jest jednak usprawiedliwione niższą ceną mikrokontrolerów rodziny Tiny. Lista rozkazów nie jest zbyt obszerna - liczy 62 polecenia (wszystkie są dwubajtowe) - ale w połączeniu z dobrze dobranymi trybami adresowania (udostępniono ich 8), zapewnia ogromną elastyczność mikrokontrolera. Mikrokontrolery firmy Hitachi mają pecha. Zastosowane w nich rozwiązania techniczne predestynują te układy do elity pośród dostępnych rozwiązań, ale ich popularność w Polsce jest niewielka. Brak reklamy? Za mało informacji o ich możliwościach? Postaramy się tym problemom nieco zaradzić. Nasze pierwsze kroki w tym kierunku -w artykule: przedstawiamy najnowszą (już dostępną!) rodzinę mikrokontrolerów 0 1 G-bitowej architekturze 1 niemal 8-bitowej cenie... Twórcy rodziny H8/300H Tiny zadbali także o ograniczenie mocy pobieranej przez mikrokontrolery, a programista może ją programowo obniżać, w zależności od bieżących wymagań aplikacji - wiąże się to bowiem z ogra- I I Ją Subdock jeneraiof System Oock generator ŚP80/FTCI Ś P81/FTIOA -PS2/FTIOB -P83/FTIOC -PB4/FTIOD ŚP85 ŚPB6 ŚP87 P74m.lRIV P75nMCIV PWTMOT P5OWKP0 P51WRPT P53WKF3 PS4WKP4 PSSWKFBABTRS P66/SDA P57SCL PBO/ANO PB1/AN1 PB2/ANS PB3/AN3 PB4/AN4 PB5MN5 PB6/AN6 PB7/AN7 Rys. 1 Elektronika Praktyczna 6/2002 69 SPRZĘT AM 4- iJ SCL"-------Tw. TtrV AD Rys. 2 niczeniern wydajności jednostki centralnej. Dostępne są 4 tryby pracy (Aciive, Sleep, Aub-aciive, Siandby), pobór prądu można dodatkowo obniżyć poprzez podzielenie częstotliwości taktowania rdzenia, Współczynnik podziału jest ustawiany programowo. Biorąc dodatkowo pod uwagę szeroki zakres dopuszczalnych wartości napięcia zasilania (3V/10MHz...5V/16MHz), okazuje się, że H8/300H Tiny można stosować także w aplikacjach zasilanych bateryjnie. Mikrokontrolery H8/300H Tiny standardowo są wyposażone w najbardziej popularne peryferia fna rys. 1 pokazano schemat blokowy mikrokontrolera H8/3664): - trzy programowalne timery fw tym dwa 8-bitowe i jeden 16-bitowy), - timer-watchdog, - port komunikacji szeregowej, umożliwiający dupleksowy transfer synchroniczny i asynchroniczny, - interfejs \2C, - 10-bitowy przetwornik A/C z układem próbkująco-pamię-tającym na wejściu, maksymalnie ośmioma wejściami, z możliwością samoczynnego "skanowania" napięcia na 4 wejściach. Niektóre wersje mikrokont-rolerów, jak np. H8/3687 wyposażono w zegar czasu rzeczywistego, dodatkowy timer, a także sprzętowy generator PWM o rozdzielczości 14 bitów. Pamięć programu implementowana w mikrokontrolerach H8/300H Tiny może być typu Flash (programowana w systemie, firmowo nazwana F-ZTAT od Flezihle - Zero Tum Around Time) lub ROM. Obecnie są dostępne wersje wyposażone w 8...56kB pamięci Flash, a maksymalny obszar adresowania wynosi 64kB - mieszczą się w nim także rejestry i pamięć RAM (512E...4kE). Niektóre wersje mikro-kontrolerów (H8/3 664N) wyposażono także w pamięć danych EEPROM, która... nie zajmuje przestrzeni adresowej! Jak się to udało? Pamięć ta jest bowiem dołączona do magistrali PC (rys* 2) i tylko tą drogą jest możliwy do niej dostęp. Rozwiązanie bardzo nietypowe [MultiChip Module - rys. 3), ale zapewnia bezpośredni dostęp do danych zapisanych w tej pamięci także innym urządzeniom wyposażonym w interfejs \2C. MaDłnmroler Rys. 3 Fot. 4 LEM3664 - tani debugger sprzętowy Twórcy rodziny H8/300H Tiny sporo wysiłku włożyli w ułatwienie uruchamiania systemów wykonanych na tych mikrokontrolerach. Z tego powodu rdzeń mikrokontrolera wyposażono w pułapkę adresową oraz pułapkę danych, które współpracują z wewnętrznym układem przerwań. Specjalnie zaprojektowany interfejs (ElOT) zapewnia dostęp - za pomocą specjalnych przystawek - do rejestrów i pamięci mikrokontrolera podczas jego pracy. Korzystanie z niego wiąże się co prawda z ograniczeniami (trzeba zarezerwować 3 wyprowadzenia I/O, wejście NMI, a także niektóre obszary w przestrzeni adresowej). Do niedawna dostępne były tylko stosunkowo kosztowne interfejsy w postaci kart PCI oraz PCMCIA, obecnie Hitachi wprowadził na rynek europejski moduł LEM3664 (fot. 4), który spełnia podobne funkcje, a jest dołączany do PC za pomocą interfejsu USB. Wbrew sugestii zawartej w nazwie modułu, można go wykorzystać do debuggowania programu także w innych mikrokontrolerach niż H8/ 3664. Na podkreślenie zasługuje to, że w skład zestawu wchodzi pełna wersja kompilatora języka C firmy IAR (niestety bez wsparcia ze strony producenta) oraz CodeLines3664 - generator headerów i driverów. Na tym zakończymy wstępną prezentację mikrokontrolerów H8/300H Tiny, do tematu wrócimy w jednym z powakacyjnych numerów EP. Andrzej Gawryluk, AVT Dodatkowe informacje Zestaw LEM3664 udostępniła do Testów lirma MSC Polska, tel. (32) 330-54-50, gliwice@msc-ge.com. Dodatkowe informacje oraz oprogramowanie (w tym kompilator C z ograniczeniem do 2kB) można znaleźć na ptycie CD-EP6/2002B oraz w Internecie pod adresami: - http://www.hitachi-eu.corn/hel/ecg/products/ micro/8_16bit/h8300h_tiny/index.ritrnl -strona gfówna mikrokontrolerów Tiny, - http://www.hmse.com/products/micon/ tiny.htm - informacje o dostępnych narzędziach. 70 Elektronika Praktyczna 6/2002 PODZESPOŁY Specjalizowany mikrokontroler sieciowy UBKOm W artykule chcemy zapoznać Czytelników z kilkoma produktami skonstruowanymi specjalnie dla Internetu, w oparciu o nowoczesny, dedykowany dla takich właśnie zastosowań procesor IP2022 (Ubicom). Z tematyką tą -chcemy, czy nie chcemy -będziemy się stykać coraz częściej. Warto więc zrobić kolejny krok w jej stronę. glo- Gdyby dzisiaj zapytać się przewrotnie przeciętnego Internauty, z czym kojarzy mu się Internet, odpowiedziałby prawdopodobnie bez zastanawiania, że z wielogodzinnym przesiadywaniem przy monitorze komputera i zaliczaniem kolejnych stron WWW lub niekończących się dyskusjach na czacie. Jednym słowem postawiłby znak równoSci między Internetem i komputerem, w domySle PC. Tymczasem według prognoz Forester Research, w roku 2007 komputery PC będą tylko w około 50% obsługiwać Internet, a od roku 2010 będą już tylko marginalnie (w skali balnej) wykorzystywane w tym zakresie. Prawdopodobnie może to dzisiaj trochę szokować, ale przebłyski tego trendu zaczynają być już widoczne. Nie zdziwmy się zatem, że niedługo przestanie do nas przychodzić pan z gazowni, żeby "spisać licznik", a wyjazd na wakacje nie będzie już połączony ze stresem, związanym z naszą troską o bezpieczeństwo pozostawionego bez opieki mieszkania. Jeśli w drodze odmówi nam posłuszeństwa samochód, chwilę później pracownicy najbliższej stacji serwisowej będą wiedzieli jakie zabrać ze sobą narzędzia, aby w jak najkrótszym czasie usunąć usterkę na miejscu. Wszystko to oczywiScie dzięki zdalnym połączeniom internetowym, o których nawet nie będziemy wiedzieli. Nie, nie, nie nazywam się Stanisław Lem... Procesor sieciowy IP2002 Aby wszystko to, co powyżej napisałem nie było tylko bajeczką z pogranicza fantazji, muszą powstawać coraz lepsze podzespoły i urządzenia zapewniające dostęp do Internetu. Powoli, choć systematycznie, odpowiednie rozwiązania pojawiają się na rynku. Przykładem mogą być produkty firmy Ubicom, oparte na specjalnie do takich zastosowań skonstruowanym procesorze internetowym IP2022. To doSć niezwykły układ, opracowany w nowoczesnej technologii 0,25 firn, skupiający w sobie niemal wszystkie cechy potrzebne do Według prognoz "Forester Research" w roku 2007 komputery PC będą tylko w około 50% zapewniać dostęp do Internetu, a od roku 2010 będą już tylko marginalnie wykorzystywane do tego celu. sprawnej obsługi stosu TCP/IP oraz "Świata zewnętrznego" (rys. 1). Charakteryzuje go RlSC-owa, harwardzka architektura, większoSć rozkazów wykonywanych w jednym cyklu o czasie trwania 10 ns (poza skokami). Konstruktorzy układu przystępując do jego projektowania, założyli maksymalne przerzucenie zadań wykonywanych do tej pory programowo, na specjalizowane bloki sprzętowe. W układzie Interfejsy: HostBus -4 10Base-T Ethernet USB 1.1 GPSI SPI UART/Modem Bluetooth HCI Rys, I Bierni !CustomgrApPiicalion| HTTP/SMTPfiTTP j Network Access Layw "PHY>lfmware " IP2022 ipOS Operating System B/16-Bit Parał lei Slave Port Intamet PmcBssor CPU 64-Kbyte Flash Memory 16-KbytB Inst./Data RAM 4-Kbyte Data RAM General Purpose l/OPorts A L F i > f A L F i > k f A y L F i k L F > k r A 1 L F > k r A 1 L F f (5EREES) 5 Timere PLL Clock Multlpller 8-lnput 10-Blt A/DC ISP/ISD Inluifuce (SERDES) Interfejsy: ISA |2C Genera-Purpose l/O 10Base-T Ethernet USB 1.1 GPSI SPI UART/Modem Bluetooth HCI zawarto pamięć programu typu Flash, o organizacji 32k x 16 bitów oraz 8k x 16 bitów pamięci programu/danych typu RAM. Ponadto użytkownik ma do dyspozycji 4KB zwykłego RAM-u. Pamięć Flash może być oczywiScie programowana w układzie. Rdzeń procesora toleruje taktowanie przebiegiem w zakresie częstotliwości od DC do 120MHz, przy czym częstotliwość zegarowa jest wytwarzana za poSrednict-wem pętli PLL, wymagającej na wejSciu przebiegu 3...5MHz. Procesor osiąga maksymalną wydajnoSć 120 MIPS. W zależnoSci od potrzeb jego szybkoSć może być ustalana programowo instrukcją Speed. Powyższe rozwiązanie pozwala zredukować pobieraną moc oraz emisję zakłóceń EMI. W procesorze zastosowano 16-pozio-mowy stos sprzętowy. Wskaźniki i stos zoptymalizowano pod kątem procedur pisanych w języku C. Firma UBICOM zaleca stosowanie pakietu narzędziowego Red Hat GNUPro, zawierającego kompilator GCCANSI C, assembler, linker i GNU de-bugger. Warto podkreSlić, że użytkownik ma możliwoSć emulowania i debuggowania układu poprzez interfejs SPI z pełną szyb-koScią procesora. Wyposażenie układu IP2022 w typowe dla współczesnych procesorów bloki funkcjonalne, niczym nie powinno zdziwić. Najważniejsze więc to: dwa 16-bitowe ti-mery z 8-bitowymi preskalerami, mogące pracować w trybie standardowym, PWM lub Capture/Compare, 8-bitowy timer czasu rzeczywistego współpracujący z typowym kwarcem 32768 Hz, watchdog z preskale-rem, 10-bitowy, 8-kanałowy przetwornik analogowo-cyfrowy (zapewniający dokład-noSć 1/2 LSB), komparator analogowy mogący pracować z histerezą lub bez niej, 8 wejSć przerwań zewnętrznych, 52 uniwersalne wejScia/wyjScia pracujące w zakresie napięć 3,3 V, ale tolerujące poziomy 5 V. Linie portu A procesora charakteryzują się wydajnoScią prądową równą 24 mA. Ukierunkowanie układu IP2022 na zastosowania internetowe, narzuciło oczywiScie pewne rozwiązania w zakresie obsługi typowych w tym przypadku interfejsów. Procesor zaopatrzono więc w dwa full-dup-lexowe kanały tzw. serializera/deserializera [SerDes], które są wykorzystywane do sprzętowego dekodowania danych i tłuma- Elektronika Praktyczna 6/2002 71 PODZESPOŁY Fot. 2. IP2O22 Connectivity Kit czenia ich z danego formatu na inny. Rozwiązanie takie powoduje znaczne odciążenie CPU podczas obsługi transmisji szeregowej. Układ IP2022 może być z powodzeniem stosowany w układach konwersji protokołów, np. w układzie mostka USB-I2C. Bloki SerDes, w połączeniu z portami I/O ogólnego przeznaczenia, stanowią wydajne wsparcie sprzętowe w realizacji interfejsów Ethernet lOBase-T, USB, GPSI, SPI, PC, UART, Microwire/PLUS. Firma Ubicom oferuje konstruktorom planującym wykorzystywać opisywany tu procesor, tzw. Software Developznent Kit. Nie powiem, że dzięki niemu stanie się dziecinną igraszką oprogramowanie komunikacji wykorzystywanej w 802.llb, Bluetooth, HomePlug, czy Et he mecie. Na pewno jednak konstruktor będzie miał to zadanie bardzo ułatwione. Ewentualne próby praktyczne można prowadzić wykorzystując IP2022 Connectiviiy Kit (fot. 2). PhantomServer Przykładowym zastosowaniem procesora IP2022 jest jednoukładowy Web Server -PhantomServer, opracowany w firmie Ubi- com. W module o wymiarach 25x50x17 mm zawarto kompletny serwer stron WWW, nie wymagający żadnych dodatkowych elementów zewnętrznych. Właściwie wszystko się mieści w SO-pinowym układzie o wymiarach 9x9 mm, zamkniętym w obudowie |xBGA. Umożliwia on zapisanie nieskomplikowanej strony webowej w wewnętrznej pamięci typu Flash o pojemności 512 kB. Dzięki zastosowaniu protokołu MuW-session HTTP v 1.1 serwer może współpracować z większością standardowych przeglądarek. Obsługuje grafikę Frames, Java Script i Java Applets. Na płytce umieszczono 2 0-pinowe złącze, wyprowadzające 16 wejść/wyjść wraz z zasi- Dzięki opracowaniom takim jak IP2O22 Internet jest dostępny dla dowolnych urządzeń- laniem. Można więc w stosunkowo prosty sposób zbudować w oparciu o ten kit np. system zbierania danych i bezpośredniego ich udostępniania w Internecie, Łatwa obsługa interfejsów takich jak: USB, PC, SPI, UART, GPSI stwarza dużą swobodę w doborze urządzeń pomiarowych. Przykładem mogą być choćby coraz popularniejsze web-kamery, komunikujące się z serwerem poprzez USB. Wykorzystując omawiany tu serwer, nie trudno będzie również zbudować urządzenia sterowane poprzez Internet. Użytkownik po nawiązaniu połączenia z Internetem np. za pomocą komputera PC, może z poziomu przeglądarki sterować rozmaitymi urządzeniami dołączonymi bezpośrednio do web serwera. Access Point 802.llb Kolejnym, przykładowym zastosowaniem procesora IP202 2 jest punkt do stepowy, umożliwiający bezprzewodowe dołączenie maksymalnie 50 stacji do lokalnej sieci et-hernetowej. Mogą to być np. zwykłe komputery PC, drukarki sieciowe, urządzenia zdalnego monitoringu i sterowania lub dowolne inne, połączone w lokalne sieci et-hernetowe (LAN]. Poszczególne węzły takich sieci mogą być następnie za pomocą mostków/bramek dołączone do Internetu. Konfiguracja tak utworzonej sieci odbywa się poprzez zwykłą przeglądarkę WWW. Po dokonanych zmianach, w każdej chwili można przywołać ustawienia fabryczne. Adresy IP, podsieci i bramki są ustawiane statycznie. Można też przydzielać je dynamicznie, wówczas jest wymagany klient DHCP, Punkt dostępowy może współpracować z bezprzewodowymi kartami sieciowymi pracującymi w standardzie S02.1lb, dołączanymi za pośrednictwem złącza PCMCIA (fot. 3] lub CF [Compaci Flash) (fot. 4). Omawiany tu punkt dostępowy wymaga 12S kB zewnętrznej pamięci Flash. Access Point Bluetooth Technologia Bluetooth na dobre już zadomowiła się wśród użytkowników sprzętu mobilnego, który wymaga połączeń bezprzewodowych. Przypomnę tu krótko, że chodzi o systemy łączności radiowej, pracujące w zakresie 2,4 GHz z przeskokami częstotliwości [Fieąuency Hopping}. System ten umożliwia prowadzenie jednoczesnych połączeń full-duplex w dostępnym kanale. Bluetooth wydaje się być idealny dla notebooków, telefonów bezprzewodowych, czy w przenośnych urządzeń wymagających dołączenia do Internetu. Aby wyjść na przeciw użytkownikom wykorzystującym na co dzień podobne urządzenia, firma Ubicom opracowała dwie wersje punktu dostępowego Bluetooth (fot. 5]. W części radiowej wykorzystano podzespoły pozwalające na transmisję danych z szybkością 65 kb/s przez siedmiu użytkowników jednocześnie. Połączenia mogą wymagać au-tentyfikacji. Istnieje możliwość szyfrowania przesyłanych danych. Na uwagę zasługuje Fot. 3. 802.1 lb Access Point ze złqczem PCMCIA Fot. 4. 802.llb Access Point ze złqczem Compoct Flosh 72 Elektronika Praktyczna 6/2002 PODZESPOŁY Fot. 5. Dwie wersje Access Point Bluetooth szerokie wsparcie techniczne firmy Ubicom zarówno w zakresie sprzętu jak i oprogramowania. Oprogramowanie firmowe może być zdalnie upgrade'owane. Wsparcie techniczne dla IP2022 Trudno sobie wyobrazić, aby firma zajmująca sie. rozpowszechnianiem produktów, o których mowa wyżej, osiągnęła sukces marketingowy, bez zagwarantowania odpowiedniego wsparcia technicznego swoim klientom. Podjęcie decyzji o zakupie na pewno będzie znacznie łatwiejsze, jeśli klient będzie miał świadomość, że stojąc wobec problemów technicznych nie zostanie bez pomocy. Łatwo zauważyć, że mimo zróżnicowania tworzonych przez użytkowników aplikacji, pewna grupa zagadnień jest wspólna dla wszystkich. Dlaczego każdy miałby rozwiązywać ten sam problem indywidualnie. ,,Nec Hercules contra plu-rez" - wyznając tę zasadę firma Ubicom udostępnia zestaw narzędzi, ułatwiających tworzenie własnych aplikacji. Są to m.in. Ubicom Connectivity Kit for the IP2002 Internet Processor, zawierający wspominany wcześniej Red Hat GNUPro, a także Software Development Kit, będący zestawem gotowych do wykorzystania procedur. Z kolei Integrated Development Enviro-rnent (IDE] zawiera edytor, menedżera projektu, programator, narzędzia do konfiguracji ipModule (rys. 6], a także zestaw uruchomieniowy oparty na Red Hat GNUPro. W ofercie Ubicom-u są również płytki ewaluacyjne zawierające pola montażowe, zestaw przełączników, przycisków i diod świecących, przeznaczone do szybkiego sprawdzania układów prototypowych. Opisane tu pokrótce produkty firmy Ubicom stanowią tylko niewielką część oferty handlowej, związaną z procesorem internetowym IP2022. Firma UBICOM dawniej nazywała się SCENIX i już wtedy zaj- Rys. ó mowała się rozpowszechnianiem podzespołów i narzędzi dla Internetu. Z tego okresu pochodzi wiele podzespołów i gotowych rozwiązań, które z pewnością są dobrze znane inżynierom zajmującym się konstruowaniem urządzeń dla Internetu. Jarosław Doliński, AVT jaro5law.dolinski@ep.com.pl Dodatkowe informacje Zestawy i urządzenia przedstawione w artykule udostępniła redakcji firma MEMEC, Tel. (32) 238-03-60, www.atest.corn.pl. Dodatkowe informacje o prezentowanych w artykule produktach można znaleźć w Internecie podadresemwww.ubicom.com. 74 Elektronika Praktyczna 6/2002 MINIPROJEKTY 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. Laserowy "kabel" do RS232 Diody laserowe, stosowane m.in. we wskaźnikach, można zastosować także do bezprzewodo wej transmisji danych. Przykład takiej aplikacji, w której laser zastępuje standardowy kabel RS232, przedstawiamy w artykule. vcc Schemat elektryczny konwertera światło lasera<->na-pięcie pokazano na rys. 1. Układ US2 odpowiada za konwersję poziomów napięć z RS232 na TTL i odwrotnie. W prototypie zastosowano układ MAX232A (ważna jest ostatnia litera w oznaczeniu!), dzięki czemu można było zastosować jako C3, C5..7 kondensatory o niewielkich wymiarach (o pojemności zaledwie lOOnF). W przypadku trudności ze zdobyciem tej wersji układu MAX232, można zastosować dowolny inny, pamiętając o zastosowaniu zamiast C3, C5..7 odpowiednich kondensatorów. Układ US4 składa się z 4 inwerterów z prze-rzutnikami Schmitta. Wykorzystano je do formowania sygnałów nadawanych oraz odbieranych (głównie chodzi o skrócenie czasów narastania/opadania zboczy). Z in-wertera US4C podawany jest sygnał prostokątny na wzmacniacz prądowy, który powstał w wyniku równoleg- łego połączenia sześciu inwerterów USl z wyjściami typu otwarty kolektor. Z ich wyjść sterowany jest wskaźnik laserowy (dioda laserowa) Dl. Włączone szeregowo dwie diody prostownicze powodują ograniczenie prądu płynącego przez diodę laserową do wartości maksymalnej ok. 90mA. W torze odbiorczym pracuje tranzystor Tl w konfiguracji wtórnika emiterowego, z którego sygnał jest podawany na wejście układu formującego sygnał prostokątny (US4A/B). Układy MAX232A firmy Maxim umożliwiają przesyłanie danych z prędkością do 2OOkbd (standardowe wersje tego układu do 12Okbd). Przeprowadzone eksperymenty wykazały, że jest możliwa transmisja danych z prędkością do ok. 45kbd, ale trudności ze zdobyciem szybkiego fototranzystora powodują, że maksymalna szybkość transmisji wynosi 9,6kbd. Zachęcamy do eksperymentów! Schemat montażowy płytki interfejsu pokazano na rys. 2. Wykonano ją jako dwustronną z metalizacją. Złącze Zll (rys. 1) jest "żeńską częścią" DB9 (gniazdo). Należy je dołączyć do płytki za pomocą kilkunastocentymetrowego odcinka kabla, pamiętając 0 zachowaniu kolejności wyprowadzeń. Bezpośrednio przy stykach gniazda należy połączyć ze sobą wyprowadzenia o numerach: 1, 4 1 6 oraz 7 i 8 (zgodnie ze schematem elektrycznym). AG Artykuł powstał na bazie pomysłu przedstawionego pod adresem: http:// www.geocities.com/silicon-valley/lakes/7156/laser.htm. WYKAZ ELEMENTÓW Rezystory Rl: 820Q Kondensatory C2: 10^F Cl, C3...C7: lOOnF Półprzewodniki Dl: dioda laserowa D2, D3: 1N4001 Tl: OP586, SFH544 lub podobny USl: 74LSO5 US2: MAX232A US3: 7805 US4: 74LS14 Różne Jl: ARK2 Zll: DB9 - gniazdo żeńskie na kabel z obudowg Płytka drukowana jest dostępna w AVT - oznaczenie AVT-1341. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp ://www. ep.com.pl/?p dfl czerwiec02.htm oraz na płycie CD-EP06/2002 w katalogu PCB. Rys. 1 vcc Rys. 2 Elektronika Praktyczna 6/2002 75 MINIPROJEKTY Automatyczny włącznik monitora do PC Nowoczesne komputery, wyposażone w obudowy i zasilacze typu ATX, mają oprócz wielu zalet jedną dokuczliwą wadę, której nie miały komputery w standardowych obudowach z zasilaczami typu AT. Rys. 1 Rys. 2 Niedogodność użytkowania komputerów ATX, polegającą na braku możliwości wyłączenia współpracującego z komputerem monitora można łatwo wyeliminować za pomocą przystawki, której schemat przedstawiono na rys. 1. Układ składa się zaledwie z kilku elementów, z których najważniejszym jest przekaźnik PK, gdyż to on powoduje załączanie napięcia zasilającego dla dołączo- Wy)tcle nych urządzeń. Do załączenia przekaźnika potrzebne jest napięcie 5V z płyty głównej komputera. Aby nie ingerować w jego wnętrze, napięcie to najlepiej pobrać ze złącza joysticka. Tak też uczyniono w tym układzie: na wyjściu numer 5 złącza CON4 jest masa zasilania, a na wyjściu numer 9 napięcie 5V. Gdy komputer jest włączony, napięcie 5V jest podawane poprzez diodę Dl na cewkę przekaźnika PK. Cały układ został zmontowany na płytce jednostronnej (jej schemat montażowy pokazano na rys. 2). Wymiary płytki dostosowano do obudowy typu Z-27. Do złącza CON2 dołączamy napięcie 22OV, a do CON3 odbiorniki: monitor, SPIS ELEMENTÓW Półprzewodniki Dl: 1N5817 D2: 1N4007 Różne CON1...CON3: ARK2(5mm) CON4: DB15 męskie + obudowa PK: RM96P-5-W Obudowa Z27 Płytka drukowana jest dostępna wAVT- oznaczenie AVT-1342. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp: 11 www. ep.com.pl/?p df/ czerwiecO2.htm oraz na płycie CD-EP06/2002 w katalogu PCB. drukarkę itp. Złącze CON4 łączymy dwoma przewodami i podłączamy do złącza joysticka w komputerze. Od tej pory, wraz z włączeniem komputera, będą uruchomione wszystkie współpracujące z nim urządzenia. KP Elektronika Praktyczna 6/2002 MINIPROJEKTY Diodowy oświetlacz Jeżeli nie jesteś zadowolony ze zwykłej latarki, to mamy dla Ciebie propozycję: poręczny oświetlacz o dużej sprawności energetycznej i praktycznie nieograniczonej żywotności - zamiast żarówek zastosowaliśmy w nim sterowane impulsowo diody LED. Generator astabilny zbudowano w oparciu o timer 555 (USl). Jako źródło światła zastosowano sześć diod świecących umieszczonych na tarczy, załączanych tranzystorem BD135. Działanie układu jest bardzo proste: po naciśnięciu przycisku Pl do układu zostaje dołączona bateria zasilająca, w wyniku czego generator zaczyna generować impulsy prostokątne. Regulację współczynnika wypełnienia (jasności świece- BATERA 9V8F22 USl NE555 nia) przeprowadza się za pomocą potencjometru POTl. Impulsy z wyjścia USl sterują bazą tranzystora Tl, który spełnia rolę wzmacniacza prądowego. Na rys. 2 przedstawiono schematy montażowe płytek drukowanych. Latarka jest zbudowana z dwóch płytek -jednej dwustronnej w kształcie koła i drugiej wąskiej z rozszerzeniem na baterię zasilającą. Płytki zostały tak zaprojektowane, aby po zmontowaniu układu otrzymać gotową do użycia latar-kę. Okrągłą płytkę z diodami LED montujemy prostopadle przy użyciu kątowej listwy gold-pin. Baterię zasilającą najlepiej przylutować na stałe do układu. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl Rys. 1 WYKAZ ELEMENTÓW Rezystory R1...R3: 100Q R5, R6: lkQ POTl: lOOka Kondensatory Cl, C2: lOnF Półprzewodniki D1...D8: diody LED D9, D9: 1N4148 Tl: BD135 Różne Przycisk miniaturowy (wysoki) Listwa kgtowa gold-pin Bateria 9V 6F22 Płytka drukowana jest dostępna wAVT- oznaczenie AVT-1343. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp: 11 www. ep.com.pl/?p df/ czerwiecO2.htm oraz na płycie CD-EP06/2002 w katalogu PCB. Rys. 2 Elektronika Praktyczna 6/2002 KURS Przedstawiamy pierwszą część kursu języka C dla mikrokontrolerów. Zamieszcono w nim przykłady wzięte z praktyki inżynierskiej, w związku z czym ich praktyczna wartość jest bardzo duża. Przygotowując już od kilkunastu lat programy, dostrzegłem pewien trend, który jest widoczny nie tylko w środowiskach projektowania oprogramowania zarówno dla "dużych" komputerów, jak również dla mikrokontrolerów jednoukladowych. Języki programowania stają się coraz łatwiejsze do opanowania. Oferują wiele gotowych procedur, których użycie jest bardzo łatwe. Doskonałym przykładem takiego oprogramowania jest Bascom, w którym rzeczy skomplikowane i trudne stają się bardzo łatwe. Bascom jednak ma jedną podstawową wadę - tworzy kod, który jest uniwersalny a przez to nie optymalny, w związku z czym zajmuje dużo pamięci. Oczywiście, nowoczesne mikrokontrolery mają tej pamięci coraz więcej, jednak ma to także inne reperkusje. Sam bardzo często korzystam z takich języków, jak Bascom, zwłaszcza jeśli szybko potrzebuję mieć program, w stosunku do którego nie mam zbyt wielkich wymagań. Jednak stojąc przed zadaniami "poważniejszymi", nieodmiennie korzystam z języka C i asembler'a. Asembler jest językiem, który zmusza do uczenia się programowania praktycznie od podstaw. Daje krótkie kody wynikowe i umożliwia w zasadzie dowolną optymalizację kodu programu. Jednak każdy, kto kiedykolwiek napisał program w tym języku wie, że bardzo trudno szuka się w nim błędów, a operacje nawet pozornie proste trzeba wykonać używając wielu rozkazów. Jednym słowem - programy pisane w asemblerze pochłaniają wiele czasu, którego nie zawsze mamy w nadmiarze, szczególnie gdy kończymy projekt. Większości wad asemblera pozbawiony jest język C: zwarty i czytelny kod źródłowy (pod warunkiem, że celowo czegoś w nim nie ukrywamy), bardzo oszczędny kod wynikowy -średnio różnica pomiędzy programem napisanym w C i asemblerze, to około 15% zajętości pamięci na korzyść asemblera (to jednak zależy od doświadczenia programisty), łatwa lokalizacja błędów i przez to nie tak wiele czasu potrzebnego na uruchomienie programu. Z doświadczenia wiem, że większość - zwłaszcza początkujących programistów - przystępując do wykonania programu liczy tylko czas potrzebny na jego napisanie i zupełnie lekceważy potrzebny na jego uruchomienie. To bardzo duży błąd. Jeden z moich znajomych mawia, że jeśli zapytasz programistę ile potrzebuje czasu i odpowie ci, że na przykład 1 miesiąc, to tworząc harmonogram realizacji całego projektu, należy do czasu podanego przez programistę dodać jeszcze 2-krotną jego ilość, czyli w tym przypadku 3 miesiące. Wiem z praktyki, że tak jest. Celem tego artykułu nie jest nauczenie programowania w języku C. Jest na ten temat mnóstwo książek, między innymi - już klasyka informatyki - pary autorów Brian Kernig-ham i Dennis Ritchie "Język ANSI C", traktująca o standardach, które muszą być przestrzegane w każdym z dialektów języka C, bez względu na jego przeznaczenie. To jest opis standardu - z tej książki można nauczyć się podstaw. Do standardu, każdy z autorów kompilatora języka C dołącza rozszerzenia. Moim celem jest opisanie pewnych rozszerzeń języka C, specyficznych dla środowiska, w którym tworzone są aplikacje. W artykule przedstawię narzędzie, które dobrze znam - pakiet programów firmy Raisonance. Jest to zintegrowane środowisko do tworzenia programów dla mikroprocesorów z rodziny 8051, a również XA firmy Philips i ST62 firmy ST Microelectro-nics, najpopularniejsza w naszym kraju rodzina mikrokontrolerów. Zaczynamy - określenie wielkości pamięci Zaimplementowany w pakiecie Raisonance język RC-51 oferuje 5 różnych modeli kompilacji dla 3 wielkości pamięci programu. Zanim przystąpię do omówienia szczegółów, chciałbym krótko wyjaśnić skąd wzięła się idea różnych modeli kompilacji i modeli wielkości pamięci. Rolą każdego kompilatora języka programowania wysokiego poziomu (a do takich należy język C) jest przetłumaczenie kodu programu z postaci zrozumiałej dla człowieka, do postaci zrozumiałej dla mikroprocesora, czyli - w dużym uproszczeniu - z języka C do języka asembler. Jeśli prześledzimy uważnie listę rozkazów asemblera dla 8051, zauważymy, że na przykład rozkazy skoków mogą zajmować w pamięci 2 lub 3 bajty (AJMP i JMP). Podobnie z rozkazami wywołania podprogramów CALL i ACALL. Rozkazy 2-bajtowe występują wówczas, gdy adres docelowy znajduje się w obrębie tego samego 2kB bloku pamięci programu, a 3-bajtowe gdy w obrębie 64kB. Przedstawiłem to bardzo skrótowo, jednak nasuwają się następujące wnioski. Jeśli pamięć jest mała, to rozkazy skoków mogą być krótsze i możemy w ten sposób zmniejszyć wielkość programu wynikowego! I to jest właśnie jedna z przesłanek do utworzenia różnych modeli kompilacji i różnych modeli pamięci. Dzięki nim kompilator "orientuje się", jaki kod tworzyć i w jaki sposób go optymalizować. Należy tutaj wspomnieć, że kompilator firmy Raisonance obsługuje również programy o łączonych modelach pamięci. Można więc napisać cały program korzystając z modelu SMALL, a tylko niektóre procedury przy zastosowaniu modelu LARGE i zmiennych umieszczonych w pamięci zewnętrznej. Oczywiście można tak postępować przy spełnieniu pewnych warunków. Jednak - szczególnie jeśli stawiasz pierwsze kroki w języku C -proponuję nie łączyć różnych modeli pamięci. Korzystanie z pamięci, czyli zmienne i stale oraz sposoby ich umieszczania w przestrzeni adresowej mikroprocesora Dla programisty bardzo ważne jest aby zmienne znajdowały się w ściśle określonym miejscu pamięci, pod znanym adresem. RC-51 wyposażono w instrukcje umożliwiające właśnie takie swobodne umieszcza- Elektronika Praktyczna 6/2002 81 KURS Tab. 1. Modele pamięci Model Domyślny typ pamięci danych Wymagana zewn. pamięć danych Lokalizacja stosu Uwagi TINY Wewnętrzna, do 256 bajtów idata Zwłaszcza dla mikroprocesorów serii 8x75x firmy Philips SMALL Wewnętrzna, do 256 bajtów Nie idata\ub pdata Możliwe umieszczanie zmiennych w pamięci zewnętrznej COMPACT Zewnętrzna, do 64kB Tak idata lub pdata Taki sam jak LARGE, jednak kod wynikowy jest mniejszy LARGE Zewnętrzna, do 64kB Tak idata lub pdata Doskonały dla dużych aplikacji HUGE Zewnętrzna, do 64kB Tak pdata Adres powrotu i parametry są zapamiętywane w pamięci zew. nie zmiennych i stałych. Niestety, nie ma żadnego obowiązującego standardu - prawdopodobnie pochodzące od innych producentów kompilatory C będą wymagały zupełnie innej składni. Pamięć mikrokontrolera 8051 została podzielona na następujące obszary: - DATA - bezpośrednio adresowany obszar wewnętrznej pamięci RAM (128 bajtów), - IDATA - pośrednio adresowany obszar wewnętrznej pamięci RAM mikrokontrolera (12 8 lub 2 56 bajtów), - BDATA - obszar pamięci RAM, w którym możliwe jest adresowanie pojedynczych bitów - SFR - obszar rejestru funkcji specjalnych w pamięci RAM [special function registers), - SBIT - obszar pojedynczego bitu w obrębie rejestru funkcji specjalnych SFR, na przykład sbit OV = PSWA2, - PDATA - tak samo, jak XDATA z tym, że adres dostępu do pamięci zewnętrznej jest 8-bitowy, - XDATA - zewnętrzna pamięć danych, przy czym adres dostępu 16-bitowy (64kB), - CO DE - pamięć programu; może to być wewnętrzna, albo zewnętrzna pamięć ROM mikrokontrolera. Wyżej wymienione słowa kluczowe języka RC-51 noszą nazwę kwalifikatorów obszaru pamięci [space qu-alifier). Innym słowem kluczowym, ściśle z nimi związanym, jest AT. Spróbujmy teraz powiązać zdobyte już informacje w całość. Spróbujmy dopasować zmienne (także stałe) i modele kompilacji do źródła naszego programu. Jako pierwszy niech posłuży nam przykład programu napisanego dla mikrokontrolera jedno-układowego, który wykorzystuje tylko i wyłącznie swoje zasoby wewnętrzne - nie ma w przestrzeni adresowej do- łączonych żadnych urządzeń zewnętrznych. #pragma TINY (lub SMALL) at 0x20 data char ZMIENNA1; Przede wszystkim określamy, że nasz program zmieści się w pamięci wewnętrznej mikroprocesora AT89C2051, który posiada 2kB pamięci programu. Informuje o tym model pamięci zdefiniowany za pomocą polecenia ttpragma TINY. Jako druga następuje dyrektywa dla kompilatora, aby zmienną o nazwie ZMIENNAl umieścił pod adresem 20H w pamięci danych. Podobnie postępujemy w przypadku pamięci programu: at 0x1000 code char tablica[5]= { ' H ' , ' E ' , ' L ' , ' L ' , ' O ' } ; Powyższa instrukcja umieszcza w pamięci programu CODE pod adresem 1000H napis HELLO. Oto jeszcze inne przykłady deklaracji zmiennych: char code patterns[10] = { 0x09,0xAF, 0xlA, 0x8A,0xAC,0xC8, 0x4 8,0x8F,0x08,0x88 }; char code digits[6] = { 0xFE,0xFD,0xFB,0xF7,0xEF,0xDF }; unsigned int data display[6] = { 0xFF,0xFF,0xFF,0x00,0x9,0x09 }; Rozpatrzmy inny przypadek, również bardzo często spotykany w praktyce: pamięć programu, stos oraz zmienne wewnątrz mikroprocesora, a na zewnątrz w przestrzeni adresowej (adres 8-bitowy) podłączone są pewne urządzenia zewnętrzne, takie jak: wyświetlacz, klawiatura, port danych urządzenia pomiarowego. Oto przykłady deklaracji: #pragma SMALL; /* adresy rejestrów wyświetlacza */ at 0x00 pdata char LcdCtrlRegister, LcdVideoRam, LcdReadCtrl, LcdRead; /* adresy poszczególnych kolumn klawiatury */ at 0x34 pdata char Columnl; at 0x2C pdata char Column2; at 0xlC pdata char Column3; /* zmienne robocze */ data Nastawy Bufor; char PRG; unsigned int Pozycja; int Zero = 45; Jest to często spotykany przypadek, gdy nie jest istotne gdzie w pamięci danych znajdą się zmienne wykorzystywane w czasie pracy programu oraz stos, ale ważne jest pod jakimi adresami znajdują się podłączone do mikrokontrolera elementy pamięci zewnętrznej. Oczywiście taka deklaracja powoduje, że program będzie pobierał dane PDATA używając instrukcji asemblera MOVX A,@R0. Gdyby zmienne zadeklarowane zostały jako XDATA, wówczas odczytywane byłyby instrukcją MOVX A,@DPTR. Zwróćmy jeszcze uwagę na sposób deklaracji adresów, pod którym znajdują się rejestry wyświetlacza LCD. Taka metoda zapisu adresów oznacza, że LcdCtrl Register znajdzie się pod adresem 0x00, LcdVideoRam pod adresem 0x01, LcdReadCtrl -0x02 i tak dalej. Można w ten sposób umieszczać w określonym miejscu pamięci nie tylko zmienne i stałe, ale również funkcje. code at 0x1000 int ZapisDoEEProm (char x); code at 0x00FF void UstawBit (void); Bardzo użytecznym kwalifikatorem przestrzeni jest moim zdaniem sbit. Dzięki niemu mamy na przykład możliwość powiązania poszczególnych bitów portów wyjściowych mikrokontrolera z ich nazwą symboliczną. Ułatwia to bardzo analizę programu i również jego pisanie. /* funkcje poszczególnych bitów portu p2 */ sbit Wejscie_l = P2^4; sbit Wyjscie_Start = P2^3; sbit Wyjscie_Kontrola = P2^2; sbit Wyjscie_Docisk = P2A1; sbit Wyjscie_Blad = P2^0; Zapis "Wyjscie_Start = 1;" jest równoważny instrukcji SETB P2.3 a jest bardziej czytelny. Przerwania Słowo kluczowe interrupt powoduje, że funkcja traktowana jest przez kompilator jako obsługująca przerwa- 82 Elektronika Praktyczna 6/2002 KURS Tab. 2. Modele (rozmiary) pamięci programu Rozmiar pamięci programu Opis SMALL 1. Rozmiar programu nie może przekroczyć 2kB 2. Wywołania CALL mają postać ACALLaJMP-AJMP COMPACT 1. Rozmiar programu nie może przekraczać 64kB 2. Rozmiar funkcji nie może być większy niż 2kB 3.CALLtoLCALL,JMPtoAJMP LARGE 1. Rozmiar programu nie może przekraczać 64kB 2.CALLtoLCALL,JMPtoAJMP nie. Przy jej definiowaniu wymagana jest znajomość numeru przerwania -kolejności w tablicy wektorów przerwań. Adres funkcji zostanie automatycznie wyliczony. Przeanalizujmy przykładową procedurę obsługi przerwania generowanego przez Timer 0. yoid Przerwanie_TimeraO (void) interrupt 1 TRO =0; /, / zatrzymanie timera 0 THO =0; /, / odświeżenie /, / zawartości rejestrów TLO = 0xlF; licznik++;/, 1 zwiększenie /, / zmiennej licznik o 1 TRO =1; /, / ponowne uruchomienie timera 0 Odpowiedni wektor przerwania obliczany jest jako 3+numer_przerwa-nia x 8. Wartości 3 i 8 są przyjmowane jako domyślne dla rodziny 8051. Jeśli zachodzi potrzeba ich zmiany, można to zrobić poprzez modyfikację JJV-TVECTOR oraz INTERVAL (stale kompilatora). Program, który jest wykonywany po RESET nosi nazwę main i do niego zawsze odnosi się wektor przerwania numer 0. Jest to program główny. Kompilator sam dba o to, aby wektor przerwania numer 0 zawsze odnosił się do miejsca w pamięci programu, gdzie umieszczony jest kod wynikowy main. Jaki jest skutek umieszczenia w przykładzie słowa kluczowego interrupt? Po pierwsze instrukcja LJMP Przerwanie _TimeraO jest umieszczana w tablicy wektorów przerwań pod adresem OBH. Po drugie, przy jej uruchomieniu zapamiętywana jest zawartość rejestrów A, B, PSW, DPH, DPL (na stosie). Po trzecie, na końcu procedury zamiast rozkazu RET, umieszczone zostaje RETI. Omawiając procedurę obsługi przerwań należy wspomnieć o in- strukcji using. Służy ona do zmiany banku rejestrów. Często bowiem zdarza się tak, że nasz program główny używa banku rejestrów (R0...R7) do realizacji różnych zadań. Składania polecenia using jest następująca: void Przerwanie_TimeraO (void) interrupt 1 using 1 int Pomnóż_Liczby (char x,y) using 2 To, co najbardziej decyduje o elastyczności języka C -wskaźniki Wskaźnik [pointer) to zmienna, która zawiera adres innej zmiennej. Użycie wskaźników prowadzi do bardziej efektywnego kodu niż otrzymywany innymi metodami. Jedną z niepożądanych cech wskaźników jest to, że powodują często tworzenie zupełnie niezrozumiałych programów. Dzieje się tak zwłaszcza wtedy, gdy wskaźniki stosowane są w sposób "nieostrożny". Łatwo jest dla przykładu utworzyć wskaźnik, który będzie wskazywał nie wiadomo co i nie wiadomo jakiego typu. Jednak przy przestrzeganiu pewnych zasad, wskaźniki stają się jednym z najmocniejszych mechanizmów języka C. Kompilator RC-51 oferuje nam 2 typy wskaźników. Pierwszy, to wskaźnik obszaru pamięci deklarowanego za pomocą wcześniej omawianych kwalifikatorów (takich jak CO-DE czy DATA). Drugi umożliwia wskazanie dowolnej danej w jakimkolwiek obszarze adresowania mikro-kontrolera. Ważne jest, że jeśli wskaźnik przypisany jest do obiektu zakwalifikowanego do określonego obszaru pamięci, to również zostaje przypisany do tego właśnie obszaru pamięci, w którym umieszczony jest wskazywany obiekt. Drugi typ jest specyficznym typem wskaźnika, rozszerzeniem wprowadzonym przez firmę i nosi nazwę generic. Dlaczego -mógłby ktoś zapytać - nie stosować wyłącznie wskaźników typu generic? Oczywiście, można to zrobić. Główną jednak przyczyną wprowadzenia takiego podziału jest to, że typowo wskaźnik generic zajmuje 3 bajty, natomiast kwalifikowany do pewnego obszaru pamięci mikrokontrolera -2 bajty. Wskaźnik typu generic zawiera dodatkowo 1 bajt przeznaczony na kod wskazywanego obszaru pamięci. data char[10] Tablica = {0,1,2,3,4,5,6,7,8,9} char generic ^Tablica; // wskaźnik do obszaru DATA, // wskazuje elementy // zmiennej Tablica char generic *pl; // wskaźnik do dowolnego obszaru // danych pdata char ^klawiatura; // wskaźnik do 8-bitowego adresu // urządzenia zewnętrznego xdata char *pamiec_danych; // wskaźnik do zewnętrznej pamięci W powyższym przykładzie * jest operatorem adresowania pośredniego. Zastosowany do wskaźnika podaje zawartość wskazywanego obiektu. W języku C istnieje jeszcze inna metoda przypisania wskazań do określonej zmiennej. Jednoargumentowy operator & zwraca adres zmiennej (uwaga: można go stosować tylko do obiektów zajmujących pamięć zmiennych oraz tablic). char x = 1, y = 2, z [5] ; char ^wskaźnik; ip = &x; //zmienna wskaźnik wskazuje na x y = ^wskaźnik; //teraz zmienna y ma wartość 1 ^wskaźnik = 0; //teraz zmienna x ma wartość 0 wskaźnik = &z[0] //zmienna wskaźnik wskazuje na //pierwszy element tablicy z W deklaracji wskaźnika powinno być naśladowanie elementu, do którego odnosi się wskazanie. Zastosowanie wskaźników znacznie upraszcza program. Dobrze znana jest programistom konieczność przekazywania parametrów do procedur. W wielu językach programowania parametry przekazuje się wymieniając długą ich listę. Zajmuje to bardzo dużo miejsca w pamięci RAM. W języku C tę listę parametrów, łącznie z długimi tablicami (buforami danych), można przekazać przez proste wskazanie na adres w pamięci, gdzie ta zmienna się znajduje. Jest to jeden z głównych powodów, dla którego program napisany w języku C może być wykonywany bardzo szybko, przy oszczędnym gospodarowaniu stosem mikrokontrolera. Wskaźniki i argumenty funkcji W języku C parametry wywołania funkcji przekazywane są przez wartość. Na skutek tego funkcja (działania wewnątrz tzw. ciała funkcji) nie ma dostępu do argumentów należących do wywołującego ją podprogra-mu. Jedyny sposób pozwalający na wykonanie działań na zmiennych pochodzących z innego podprogramu, to przekazanie jako argumentów wywołania funkcji, wskaźników do tych zmiennych. Elektronika Praktyczna 6/2002 83 KURS Ope- Przykład Opis rator użycia Operatory arytmetyczne + x +y Dodawanie - x-y Odejmowanie x*y Mnożenie % 10 % 3 Reszta z dzielenia (w przykładzie: wynik =1) Operacje arytmetyczne += x+= 10 x = x+10 -= x-= 10 x = x-10 *= x*=3 x = x * 3 /= x/=23 x = x/23 (dzielenie) %= x %= 2 reszta zdzielenia przez 2 A_ xA=2 x = xX0R2 1 = x l= 0xF0 x = xORF0H = x=2 x = x 2 (przes. 2 razy w lewo) = x = 4 x = x 4 (przes. 4 razy prawo) Operatory logiczne > if fx > 23) Znak większości >= If (x >= 10) Znak większe-równe < if fx < 10) Znak mniejszości <= if fx <= y) Znak mniejsze-rów-ne == if fx == 0) Porównanie != if (x != 0) Znak różności Operacje logiczne II if(x II 0x11 =0x11) Suma logiczna (OR) if(x&& 0x80 = 0) Iloczyn logiczny (AND) ! !x Negacja logiczna (NOT) Operatory bitowe 1 P1 = P1 I 0xF0 Suma bitowa & P1 = P1 & 0xF0 Iloczyn bitowy A P1 = P1 A 0xAA Bitowe wyłącznie-lub A = A4 Przesunięcie w lewo 4 razy A = A2 Przesunięcie w prawo 2 razy -0x77 Dopełnienie jedyn-kowe void Zamień (int *Tx, int *Ty) { int temp; t emp = *Tx; *Tx = *Ty; *Ty = temp; } void main(void) { int A = 10, B = 2 0; Zamien(&A, &B); //zamiana wartości zmiennych A i B Do tego potrzebujemy tylko 2 bajty na przekazanie parametrów, bowiem nasze zmienne leżą w obszarze pamięci DATA. A poza tym działania wewnątrz funkcji są wykonywane bezpośrednio na zmiennych programu głównego. Żadnych "pośredników", np. w formie stosu, nie potzreba. Kilka słów o arytmetyce wskaźników Zasady arytmetyki wskaźników są bardzo proste. Jeśli wskaźnik T pokazuje początek tablicy elementów typu int i sam również jest typu *int, to wówczas operacja T=T+1; (inaczej T + + ;) przesunie wskazanie na następny element tablicy. Do adresu wskazania nie zostanie dodana liczba 1 lecz 2, ponieważ zmienna typu int ma 2 bajty długości. Wszystkie operacje na wskaźnikach są automatycznie dostosowywane do rozmiaru wskazywanych obiektów. Do operacji wskaźnikowych należą: przypisanie wskaźników do obiektów tego samego typu, dodawanie i odejmowanie wskaźnika i liczby całkowitej, odejmowanie bądź porównywanie dwóch wskaźników z elementami tej samej tablicy oraz przypisanie wskaźnikowi wartości 0 lub przyrównanie wskaźnika do 0. Wszystkie inne operacje na wskaźnikach są nielegalne. Nie wolno dodawać do siebie dwóch wskaźników (nawet tego samego typu) ani ich mnożyć, dzielić, przesuwać w prawo bądź w lewo, składać z maskami (operacje AND i OR), ani też dodawać do nich liczb typu float i doub-le. Nie wolno nawet - z wyjątkiem wskaźnika typu *void - wskaźnika obiektu jednego typu przypisać bez przekształcenia (rzutowania) do obiektów innego typu. Wskaźniki w języku C to temat bardzo obszerny. Zainteresowanych poszerzeniem swojej wiedzy oraz praktycznymi zastosowaniami wskaźników, zapraszam do korespondencji ze mną oraz lektury materiałów źródłowych na ten temat. To, co przysparza mi zawsze najwięcej kłopotów w języku C - operatory Kolejnymi elementami języka C są operatory podstawowych operacji: dodawania, odejmowania, sumy i iloczynu logicznego i tak dalej. Osobiście zawsze miałem kłopoty z ich zapamiętaniem. Dlatego też, zwłaszcza dla początkujących, zdecydowałem się je zestawić w tabeli. Skopiujcie ją sobie, bo jeszcze nie raz do niej wrócicie. Zwłaszcza analizując programy pisane przez kogoś innego. Porty I/O, działania na portach Korzystając z portów I/O mikro-kontrolera w programach napisanych w języku C należy kierować się tymi samymi zasadami, co w języku asem-bler. To znaczy porty, które wymagają ustawienia (poziomy wysokie) przed odczytem z nich danych, muszą być w ten stan ustawione. Nic nie stanie się bez naszego udziału, niczego kompilator nie zrobi za nas. Gdy o tym pamiętamy, to korzystanie z portów jest bardzo łatwe. Można testować wartości bitów, przypisywać zmienne i stałe, wykonywać różne inne operacje. Podobnie jak w asemble-rze, jeśli operacja wymaga zmian stanu portu (przesunięć bitów i podobnych operacji), lepiej jest utworzyć zmienną będącą kopią stanu portu i na niej wykonywać działania. Potem wystarczy tylko przypisać do danego portu wartość zmiennej - unikniemy w ten sposób błędów związanych z zakłóceniami jakie mogą wystąpić na wyprowadzeniach portu. - odczyt stanu portu: 1. zmienna = Pl // (0..3 - w zależności od // mikrokontrolera) 2. Pl = Pl I OxFF; // gdy port pracuje jako // wej ściowy, dobrze j est j ego // bity ustawić na "1": // zmienna = Pl; - zapis do portu: 1. Pl = OxAA; // (numer portu zależny od // aplikacj i) , 2. Pl = Pl I 0x01; // ustawienie bitu Pl.0 3. Pl = Pl & OxFE; // wyzerowanie bitu Pl.0 4. Pl"0 = 1; // odpowiednik rozkazu SETB Pl.0 5. Pl"0 = 0; // odpowiednik rozkazu CLR Pl.0 - testowanie stanu bitu: Pl = Pl I 0x01; // ustawienie Pl.0 na "1" if (Pl"0 = 1.... // jeden ze sposobów testowania //stany Pl.0 Po tym nieco przydługim wprowadzeniu najwyższy czas aby zaprezentować przykłady zastosowań. Będzie można wówczas najlepiej zobaczyć, w jaki sposób wykonuje się działania na bitach, zmiennych, portach itp. Pokażemy to w kolejnej części kursu. Jacek Bogusz, AVT jacek.bogusz@ep.com.pl Dodatkowe informacje Ewaluacyjna wersja pakietu firmy Raisonance znajduje się na CD-EP6/2002B. 84 Elektronika Praktyczna 6/2002 PROJEKTY CZYTELNIKÓW DzioS "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. Sterownik pieca CO Ogrzewanie domu jednorodzinnego jest w naszym klimacie bardzo ważne i pochłania znaczną część środków finansowych przeciętnego gospodarstwa domowego. W ich zaoszczędzeniu pomoże z pewnością urządzenie, którego opis przedstawiamy w artykule. czijnlk temp, domowej \ (wewnątrz pomieszczenia ogrzewanego) W budowanych domach obecnie wykorzystuje się nowe metody ogrzewania s wykorzystaniem gazu ziemnego, energii elektrycznej czy oleju opałowego. Zazwyczaj są to instalacje o małej pojemności z wymuszonym obiegiem, w których są stosowane grzej-niki konwektorowe i elektronicznie sterowane piece wielofunkcyjne. Jednak jeszcze wiele budynków, powstałych kilka czy kilkanaście lat temu, ma ogrzewanie oparte na tradycyjnych piecach CO opalanych paliwem stałym fnp. węglem, koksem, drewnem) i wielkopo-jem noś ci owych instalacjach grawitacyjnych (czasami wspomaganych pompami obiegowymi). Jak trudne jest utrzymanie zadanej temperatury na piecu węglowym wie każdy, kto jest zmuszony wielokrotnie w ciągu doby odwiedzać kotłownię i przez sterowanie dopływem powietrza do paleniska oraz ilością zasypywanego paliwa regulować, z mniejszym lub większym skutkiem, temperaturę roboczą pieca. Dla podniesienia komfortu korzystania z tradycyjnego ogrzewania, jak i znacznego obniżenia kosztów jego funkcjonowania, chciałbym przed- Projekt 100 .pompa 'obiegowa sterownic pieca CO (wktoktetartd tylnej) stawić zastosowany przeze mnie sposób częściowego zautomatyzowania tego procesu. Opis przeróbki pieca CO Na rys. 1 przedstawiono schematycznie piec CO oraz zakres przeprowadzenia niezbędnych modyfikacji do zapewnienia kontroli na ilością oddawanego przezeń ciepła. Przede wszystkim należy zastosować wymuszony przez wentylator nadmuch powietrza na palenisko pieca CO. Wentylatorem takim można łatwo sterować elektronicznie, a przez to wpływać na temperaturę pracy pieca. Sterownik, który opiszę w dalszej części A-A palenisko ruszt palenbka daszek zabezpieczający praed popiołem ruchomi klapka odcinająca dopływ powietrza po wyłączeriu wentylatora ogranicznik kata otwarcia klapki odcHaJąceJ artykułu, jest przystosowany do obsługi wentylatora z silnikiem prądu stałego na napięcie 12V i o poborze prądu do 4A. Przykładowo, znakomicie tę funkcję spełnia łatwo dostępny wentylator samochodowy od Fiata 126p. Przy moim piecu działa on bezawaryjnie od kilku lat, pomimo pracy w bardzo niekorzystnych warunkach (zapylenie, popioły). Stosując wymuszony nadmuch zyskujemy jeszcze dodatkowy efekt, dokładnego wypalenia zasypanego paliwa w znacznie wyższej temperaturze niż przy samoczynnym przepływie po- płuzcz wodny pieca CO drzwiczki poplelnła kanał dolotowy powietrza zkolrieiumdo przykręcania wentylatora wentylator nadmuchu aprezyna zamykająca klapkę odcinającą montowana węwnątiz kanału dolotowego zewie* klepłd odcinającej Rys. 1 Elektronika Praktyczna 6/2002 85 PROJEKTY CZYTELNIKÓW '0. < m LL < m u. a < m LL < m (0 U) * CII CD CD 1O * * CII o u. C5 C a i : U ; S!3f Sl U o < cc 3 L 1 E Sl DSP1 DSP2 - i- i - i i u 1 LL o o c o u CII CM Ł O O Q - CM n 10 CO a - CM in CO CO a UJ Q O Ldp LL a u kDP Ul ? u a. a Ul a u a. a D10rl Dym Jl 74HC164 G m _3_ QA ir.\p A R2 ii- _4_ QB CLK F R3 5 QC B H4 ii- _6_ QD DP HS ii- iD_ QE A C Jl QF R E H/ i------1- iZ. QG D H8 J3_ QH 8x220 U4 DS1813 3- PD1 (TXD) (MISO) PBB (MO3I)PB5 PB4 (OC1) PB3 PB2 (AIN1) PB1 (AIN2JPB0 (ICP) PDB I Jg 1N4O0J=[2_J ----------1 Nadmuch +12V -r I ca 4700|I Rys. 2 wietrzą przez piec. Również ze względów ekonomicznych można z powodzeniem stosować w piecu miał węglowy, który jest zacznie tańszy od węgla, a kaloryczność obu tych paliw jest porównywalna. Sposób przeróbki pokazany na rys. 1 jest tylko przykładowym, gdyż każdy może wykonać nadmuch inaczej, zależnie od typu posiadanego pieca. Jest bardzo ważne, co stwierdzono podczas kilkuletniej eksploatacji tak przerobionego pieca, aby po wyłączeniu wentylatora dostęp powietrza do paleniska został maksymalnie ograniczony. W swoim piecu zastosowałem klapkę z cienkiej blachy stalowej, osadzoną na prostym zawiasie, zamykającą prostokąty kanał dolotowy, do którego przykręcony jest wentylator. Do zamykania tej klapki odcinającej można zastosować odpowiednio miękką sprężynkę lub dźwignię z przeciwwagą. Montaż wentylatora należy tak przeprowadzić, aby nie utracić możliwości palenia sposobem tradycyjnym, czyli bez stosowania wymuszonego nadmuchu powietrza (np. brak zasilania, awaria wentylatora). Opis budowy sterownika Prezentowany sterownik pieca CO ma za zadanie nadzorowanie dołączonych do niego czujników zewnętrznych (termometr pieca, termometr mierzący temperaturę wewnątrz pomieszczeń ogrzewanych, czujnik dymu, wyłącznik sygnalizujący otwarcie drzwiczek pieca) i zależnie od ich wskazań sterować urządzeniami wyjściowymi, jakimi są wentylator nadmuchu i pompa obiegowa. Schemat elektryczny sterownika przedstawiono na rys. 2. Układ zbudowany jest w oparciu o nowoczesny mikrokontroler typu AVR (model AT90S2313). Procesor ten posiada wiele zalet ułatwiających budowę proponowanego sterownika (np. wewnętrzną pamięć danych typu EEPROM, Watchdog, Timer, generator PWM, komparator analogowy). Mikrokontroler U2 pracuje z częstotliwością 4MHz wyzna- czoną przez rezonator kwarcowy X. Układ U4 jest specjalizowanym układem zerującym mikrokontroler po obniżeniu napięcia zasilającego poniżej 4,75V. Zapewnia on pewny start procesora po załączeniu zasilania i zabezpiecza wewnętrzną pamięć danych EEPROM przed przypadkowymi wpisami przy niestabilnym napięciu zasilającym. W obsłudze cztero cyfrowe go wyświetlacza siedmiosegmentowego LED pośredniczy układ rejestru przesuwnego Ul. Dane przesyłane są do niego szeregowo przez dwie linie sterujące (sygnały CLK, AB). Anody wyświetlaczy załączane są przez klucze tranzystorowe T1...T4. Sygnały sterujące bazami tych tranzystorów wykorzystano dodatkowo do obsługi klawiatury składającej się z czterech przycisków i dwóch trzypozycyjnych przełączników. Diody D1...D4 oraz D7, D8 separują poszczególne przyciski od siebie i zabezpieczają przed powstaniem możliwych konfliktów przy jednoczesnym wciśnięciu kilku z nich. Procesor odczytuje U3 7805 100LJ C6 T~C7 100n 100n klawiaturę przez dwie linie portu B (tj. PB6, PB5). Uzupełnieniem części sygnalizacyjno-sterującej modułu są trzy diody LED (informują one o stanie, w jakim znajdują się w danym momencie urządzenia wyjściowe). Anody tych diod są połączone, podobnie jak anody wyświetlaczy, do kluczy tranzystorowych, a katody przez rezystor ograniczający R14 do wyprowadzenia PB7 mikrokontrolera. Wyświetlacz LED oraz diody sygnalizacyjne pracują w trybie wyświetlania multipleksowanego z częstotliwością 50Hz. Sterownik może nadzorować pracę typowej pompy obiegowej zasilanej bezpośrednio z sieci elektroenergetycznej oraz wentylatora napędzanego silnikiem prądu stałego na napięcie 12V. Pompa sterowana jest z wyprowadzenia PB4 mikrokontrolera za pośrednictwem obwodu złożonego z elementów R21, T5, R22, U5, R19, R18, Tr, J3. Z wyprowadzenia PB3 (wyjście wewnętrznego generatora PWM mikrokontrolera U2), przez obwód złożony z elementów R13, 86 Elektronika Praktyczna 6/2002 PROJEKTY CZYTELNIKÓW gsoooooooooo Rys. 3 T6, R20, T7, C8, D9, J2 sterowany jest silnik wentylatora nadmuchu. Użycie generatora PWM umożliwia łatwą regulację prędkości obrotowej tego silnika, a przez to wpływanie na wydajność nadmuchu. Do złącza Jl dołączone są czujniki zewnętrzne mierzące temperaturę pieca, temperaturę wewnątrz pomieszczeń ogrzewanych (domową), czujnik wykrywający dym i czad ulatniający się z pieca podczas spalania oraz wyłącznik sygnalizujący otwarcie drzwiczek pieca. Do pomiaru temperatury zastosowano popularne układy termometrów firmy Dallas serii DS1820. Układy te mierzą temperaturę z podstawową rozdzielczością 0,5 stopnia. Ich sterowanie odbywa się z wyprowadzenia PB2 mikrokontro-lera (magistrala lWire). Mikro-kontroler U2 zawiera kompara- tor analogowy, który służy do obsługi czujnika dymu montowanego na piecu CO. Zastosowany do tego czujnik AF20 jest szczególnie uczulony na wykrywanie tlenku węgla (czad), jednak równie dobrze reaguje na dym wydzielający się podczas spalania innych materiałów, np. drewna. Na rysunkach i w opisie nazywam go (dla uproszczenia) czujnikiem dymu. Komparator porównuje napięcia z mostka pomiarowego składającego się z rezystora R16 i rezystancji wewnętrznej czujnika AF20 (rezystancja ta zależy od środowiska w jakim się znajduje czujnik), z napięciem progowym ustalonym za pomocą rezystorów R15, R25 i potencjometru montażowego R17. Potencjometr ten służy do regulacji czułości układu wykrywania dymu. Ostatnim zewnętrznym obwodem wejścio- wym jest przełącznik montowany przy głównych drzwiczkach pieca służących do zasypywania paleniska - sygnalizuje on mikrokontrolerowi (przez pin PD6) ich otwarcie. Pozostałe elementy układu, narysowane na schemacie, to zasilacz złożony ze złącza J4, do którego należy dołączyć napięcie zmienne 12 V z transformatora sieciowego (np. transformatora toroidalnego do oświetlenia halogenowego 60W), mostka prostowniczego BR, kondensatorów C3, C4, C5, C6 oraz stabilizatora napięcia +5V, służącego do zasilania układów cyfrowych modułu. Uwagi montażowe Na rys. 3 przedstawiono wygląd płytki drukowanej modułu sterownika. Płytka wykonana jest na laminacie jednostronnym i zwymiarowana pod montaż na ściance czołowej obudowy metalowej typu T54. Zmontowaną płytkę należy przykręcić do ścianki czołowej obudowy (po wcześniejszym wykonaniu w niej odpowiednich otworów na wyświetlacz, przyciski, przełączniki i zamontowaniu oprawek diod LED) za pomocą bolców dystansowych o długości 12mm. Diodę DlO (Dym) należy zamocować w oprawce na ściance czołowej i połączyć z płytką modułu za pomocą przewodów. Elementy, na których wydziela się znaczna ilość ciepła podczas pracy urządzenia (tj. tranzystor DarlingtonaT7, mostek prostowniczy BR i stabilizator napięcia U3) należy zamocować do płytki od strony druku i zaopatrzyć w odpowiedni radiator. Szczegółowy sposób łączenia płytki drukowanej modułu z elementami zewnętrznymi przedstawiono na rys. 4. Wszystkie przewody można lutować bezpośrednio do płytki drukowanej, a obwody sieciowe należy wykonać bardzo starannie i zabezpieczyć przed możliwością zwarcia lub porażenia obsługującego. Opis działania sterownika Do programowania nastaw urządzenia służy klawiatura składająca się z czterech przycisków oznaczonych: [Próg], [Mem], [Up], [Dw]. Przez wciskanie klawisza [Próg] wybieramy odpowiednie menu. Klawiszami [Up]\[Dw] ustawiamy wymaganą wartość, a zatwierdzenie i zapis do pamięci EEP- WYKAZ ELEMENTÓW Rezystory R1...R8: 220Q R9...R13, R21: lktł R14: 470Q R15, R16: 10kQ R18, R19: 200Q R20: 2kQ R22: 100Q R23...R25: 4,7kQ R17: 10kQ (potencjometr montażowy) Kondensatory Cl, C2: 33pF C4, C6...C8: lOOnF C3: 4700^F/25V C5: 100^F/16V Półprzewodniki D1...D4, D7, D8: 1N4148 D9: 1N4001 D5, D6: i|)5mm LED zielona DlO: i|)3mm LED czerwona T1...T6: BC327 T7: tranzystor NPN w układzie Darlingtona np. TIP122, BD649 TR: triak BT136 BR: mostek prostowniczy 6A Ul: 74HC164 U2: AT90S2313 (zaprog ra m owa ny) U3: 7805 U4: DS1813 U5: MOC3020 Różne X: rezonator kwarcowy 4MHz DSP1, DSP2: dwucyfrowy wyświetlacz siedmiosegmen- towy LED, wspólna anoda S1...S4: mikroprzełgcznik S5, Só: przełgcznik 1 sekcja/ 3 pozycje Elementy zewnętrzne (wg. rys. 2) DS1820: 2szt AF20: lszt wyłgcznik krańcowy wyłgcznik sieciowy bezpiecznik SOOmA wtyk DB9M gniazdo DB9F (przykręcane do obudowy) złgcze konektorowe typ samochodowy radiator 80x50x35mm podkładka izolacyjna TO220 przepust izolacyjny do TO220 oprawki LED: 3szt. filtr wyświetlacza elementy montażowe obudowa T54 transformator toroidalny 12Y/5A Elektronika Praktyczna 6/2002 87 PROJEKTY CZYTELNIKÓW Gniazdo złącza konektorowego (typ samochodowy - Rat126p) montowane na tylnej Ściance sterownia CO Moduł (terownla placu CO Ponca Czujniki twnpentury Czujlik dymu AF20 Wyłącznik widok od strony drzwiczek Bezpiecznik I wyłączni: sieciowy montowane na tylnej ściance Btwowi*a Qnlazdo DB9F pizytoecane do obudowy montowana na tylne) wtykDBSM Ściance. sterownia Rys. 4 ROM następuje po wciśnięciu klawisza [Mem] (potwierdza to trzykrotne mignięcie ustawionej liczby). Sterownik posiada menu nastaw pokazane w tab. 1. Wentylator i pompa obiegowa mogą działać w trybie sterowania ręcznego lub pracy automatycznej. Wyboru sposobu funkcjonowania tych urządzeń dokonuje się za pomocą przełączników trzypozycyjnych (środkowa pozycja to wyłączenie, górna to sterowanie ręczne, dolna to praca automatyczna). W trybie sterowania ręcznego dane urządzenie pozostaje stale włączone i działa do momentu wyłączenia sterownika. Wyłączenie sterownika następuje po spadku temperatury pieca poniżej wartości ustawionej w menu [OF.xx].Jest to sygnalizowane wyświetleniem na wyświetlaczu czterech poziomych kresek. Ponowny start urządzenia następuje po wciśnięciu klawisza [Próg]. Sterownik zostaje uruchomiony na okres trzydziestu minut i jeśli po tym czasie przez piec nie zostanie osiągnięta lub przekroczona temperatura wyłączenia [OF.xx], przechodzi on ponownie w tryb spoczynkowy. Do regulacji wydajności nadmuchu wykorzystuje się kla- wisze [Up] - zwiększanie obrotów, [Dw] - zmniejszanie obrotów. Zakres regulacji zawiera się w przedziale od 0 do 40 i jest wyświetlany na wyświetlaczu w momencie wciśnięcia któregoś z wymienionych przycisków. W trybie sterowania automatycznego wentylator działa do czasu przekroczenia przez piec temperatury ustawionej w menu [ P.xx]. Po tym następuje jego wyłączenie, a ponowny start jest możliwy dopiero, gdy temperatura pieca spadnie poniżej ustawionej w menu. Przy temperaturze pieca mniejszej o trzy stopnie od temperatury nastawionej, następuje płynna redukcja obrotów wentylatora (gdy temp. pieca = temp. nastawionej, wentylator pracuje na obrotach minimalnych, ustawianych w menu [Pi.xx]). Jeśli dołączony jest termometr mierzący temperaturę wewnątrz pomieszczeń ogrzewanych i zostanie uaktywniony tryb sterowania z uwzględnieniem temperatury domowej (menu [do.01]), temperatura robocza pieca będzie zmieniać się w zależności od rzeczywistej temperatury panującej w ogrzewanych pomieszczeniach. Jeśli temperatura domowa przekro- Wyświetlacz Jm. Zakres Skok Opis P.__ C 50-85 5 Temperatura pracy pieca d.__ C 10-28 1 Temperatura domowa PP.__ min. 1-90 1 Cykl pracy pompy (tryb Auto) PS.__ min. 1-90 1 Cykl postoju pompy (tryb Auto) Pi.__ liczba 0-40 5 Obroty minimalne wentylatora (0-min/40-max) 0F.__ C 30-50 5 Temperatura wyłączenia sterownika do.__ T/N 0-1 1 Sterowanie wg. temperatury domowej (1-tak/O-nie) dy.__ T/N 0-1 1 Wykrywanie dymu (1 -tak/O-nie) Czujniki czy tę nastawioną w menu d.xx], nastąpi stopniowe obniżanie temperatury roboczej pieca (do minimalnych 50C). W przeciwnym przypadku nastąpi jej zwiększanie aż do maksymalnej, jaka jest ustawiona w menu [ P.xx]. Przy takiej regulacji temperatury roboczej pieca można znacznie ograniczyć zjawisko przegrzewania pomieszczeń i utrzymywać w nich możliwie stałą temperaturę. Wartość temperatury zmierzoną przez czujnik umieszczony wewnątrz pomieszczeń ogrzewanych można wyświetlić po wciśnięciu klawisza [Mem] (z dokładnością 0,5C). Na pracę wentylatora nadmuchu ma wpływ czujnik dymu i wyłącznik drzwiczek (w momencie ich otwarcia następuje zatrzymanie wentylatora). Czujnik dymu (po aktywacji go w menu [dy.Ol]) powoduje zatrzymanie wentylatora, gdy wykryje ulatnianie się dymu na zewnątrz pieca (świeci się dioda Dym). Gdy dym ulotni się, nastąpi uruchomienie nadmuchu z obrotami minimalnymi i stopniowe ich zwiększanie, aż do osiągnięcia obrotów nastawionych (pulsowanie diody Dym). Pompa w trybie pracy automatycznej rozpoczyna działanie po przekroczeniu przez piec temperatury wyłączenia sterownika (ustawionej w menu [OF.xx]). Następnie pracuje pulsacyjnie zgodnie z ustawieniami w menu: [PP.xx] -czas trwania cyklu pracy w minutach, [PS.xx] - czas postoju pompy. Ponadto zawsze, gdy temperatura pieca przekroczy temperaturę nastawioną (wyłączenie wentylatora nadmuchu), nastąpi zapoczątkowanie nowego cyklu pracy. Termometry typu DS182O mają wewnętrznie zapisane niepowtarzalne numery seryjne, dzięki którym można za pomocą jednej linii (magistrala lWire) odczytywać ich większą ilość. Objętość programu sterującego pracą urządzenia spowodowała maksymalne uproszczenie sposobu rejestracji tych numerów w pamięci EEPROM procesora. W celu zarejestrowania termometru mierzącego temperaturę pieca należy przy wyłączonym zasilaniu dołączyć tylko ten układ do magistrali lWire, wcisnąć i przytrzymać przyciski [Prog]+[Up], a następnie włączyć zasilanie sterownika. Przy rejestracji termometru domowego należy postąpić podobnie, z tą różnicą, że trzymamy wciśnięte przyciski [Prog]+[Dw]. Po zarejestrowaniu obu termometrów należy je wspólnie dołączyć do linii lWi-re, a mikrokontroler powinien prawidłowo odczytywać wskazywaną przez nie temperaturę. Zakres pomiaru temperatury przez te układy został programowo ograniczony od dołu do 0C. Przy temperaturze mniejszej od zera lub przy nieprawidłowym działaniu układów zostanie wyświetlony odpowiedni komunikat o błędzie: [ P.Er]-błąd termometru pieca, [ d.Er]-błąd termometru domowego. Sterownik może pracować także w wersji uproszczonej bez czujnika temperatury domowej i czujnika dymu (wyłączenie ich następuje po ustawieniu w menu [do.00] i [dy.OO]). Obniży to koszt wykonania sterownika, ale wpłynie niekorzystnie na jego funkcjonalność. Podsumowanie Prezentowane urządzenie powstało ponad dwa lata temu i przez ten okres jego użytkowania program sterujący był rozwijany i dopracowywany. Obecnie zajmuje on całą dostępną pamięć programu procesora. Napisany był w asem-blerze przy wykorzystaniu programu AVR Studio. Osoby chcące podzielić się swoimi doświadczeniami lub mające pytania dotyczące sterowania pieców CO na paliwo stałe proszę o kontakt za pośrednictwem poczty elektronicznej. Zbigniew Golonka zbigniewgolonka@poczta.onet.pl 88 Elektronika Praktyczna 6/2002 PODZESPOŁY naa W listopadowe/ Elektronice Praktyczne/ opisaliśmy podstawowe parametry i możliwości przetwornic DC/DC malej mocy (do 2W) firmy Traco Power. W tym artykule zaprezentujemy możliwości i rozwiązania konstrukcyjne zastosowane przez producenta w przetwornicach o mocy od 3W do 15W. _____________________________ Przetwornice o mocy do 8W Przetwornice DC/DC o mocy do 8W są oferowane w dwóch wersjach obudów: w metalowych, zapewniających zminimalizowanie zakłóceń emitowanych do otoczenia oraz w plastikowych, które są odpowiednikami standardowych obudów DIP24 z wyprowadzeniami przystosowanymi do montażu SMD. W obudowach ekranowanych są wytwarzane przetwornice serii TEN4, TEN5 i TEN8 (cyfra na końcu oznacza moc przetwornicy). Ze względu na szeroki zakres temperatur roboczych i dużą niezawodność, są przeznaczone do stosowania w aplikacjach wymagających dużej niezawodności, a więc w przemyśle, telekomunikacji i elektronice kolejowej. Zaletą tych przetwornic jest zachowanie jednakowych wymiarów obudowy i podłączenia wyjść funkcyjnych dla wszystkich typów, niezależnie od mocy, co zapewnia pełną zamienność typów TEN3, TEN4, TEN5 i TEN8. Projektantowi urządzeń zapewnia to komfortową sytuację, pozwalając dobierać moc prze- Rys. C2 Do obudowy IZOnF LI 63V O +Via +Vont ił Cl lnF MV RN102 m -Vin -Vout C3
ludowy 63V DDDt twornic do wymagań aplikacji w szerokim zakresie bez konieczności modyfikowania płytek drukowanych. Przetwornice serii TENk mają wbudowany filtr wyjściowy, co zapewnia redukcję zakłóceń na wyjściu do poziomu zgodnego z normą EN55022-klasa A. Jeżeli występuje konieczność dalszego obniśenia poziomu zakłóceń (do poziomu zalecanego normą EN55022-klasa BJ, można zastosować filtr zewnętrzny, którego schemat pokazano na rys. 1. Przetwornice serii TENk są przystosowane do łączenia ich wyjść szeregowo, dzięki czemu można stosunkowo łatwo osiągnąć niestandardowe napięcia wyjściowe, np. o wartości: 10, 24 lub 30VDC. W tab. 1 i 2 podano zestawienie najważniejszych parametrów przetwornic opisanych w artykule. TEN3 Są to przetwornice (fot. 2) o mocy 3W przystosowane do zasilania napięciami o wartościach 4,5.. .9/9.. .12/ 18..,36/36...72V. Napięcie wyjściowe Do obudowy C4 L2 -Yont Tab. 1. Zestawienie podstawowych parametrów pizetwornic o mocy do 8W. Nazwa Zakresy Napięcia Maks. Wymiary rodziny napięć wyjścio- prąd obudowy i moc wejścio- we wyjścio- wyjścio- wych wy wa [VDC] IVDC] [mAl Imm] Przetwornice w obudowach SMD TES2 5 ą10% 5 400 27 2x 2W 12 ą10% 12 165 14 8x 24 ą10% ą12 ą85 10 2 48 ą10% ą15 ą65 TES3 c 18 3,3 700 32 3x 3W f 3 36 5 600 14 8x 3 o 75 12 250 10 2 ą12 ą125 ą15 ą100 TdOdF 6SV Do Obudowy Przetwornice w obudowach DIP24 TEM2 5 ą10% 5 400 32x20x10 2W 12 ą10% 12 165 24 ą10% ą12 ą80 ą15 ą65 TEM3 5 ą10% 5 600 32x20x10 2W 12 ą10% 12 250 24 ą10% ą12 ą125 ą15 ą100 TEN 3 4,5 9,0 3,3 600 32x20x10 3W 9 18 5 500 18 36 12 250 36 72 15 200 ą5 ą250 ą12 ą125 ą15 ą100 TEN 4 9 36 3,3 900 32x20x10 4W 18 72 5 660 12 330 15 270 ą5 ą300 ą12 ą165 ą15 ą135 TEN5 9. 18 3,3 1200 32x20x10 6W 13 36 5 1000 36 72 12 500 15 400 ą5 ą500 ą12 ą250 ą15 ą200 TEN 8 9 18 3,3 2000 32x20x10 8W 18 36 5 1500 36 75 12 665 15 535 ą5 ą800 ą12 ą335 ą15 ą265 Elektronika Praktyczna 1/2002 63 PODZESPOŁY Tab. 2. Zestawienie podstawowych parametrów przetwornic o mocy 10,12M5W. Nazwa Zakresy Napięcia Maks. Wymiary rodziny napięć wyjścio- prąd obudowy wejścio- we wyjścio- wych wy [VDC] IVDC] ImA] Imm] TEN 10 9 18 3,3 2400 50x25x10 10W 18 36 5 2000 36 72 12 830 15 650 24 410 ą5 ą1000 ą12 ą410 ą15 ą330 TEN 12 9 36 3,3 2400 50x25x10 12W 18 75 5 2000 12 1000 15 800 ą5 ą1000 ą12 ą500 ą15 ą400 TEN 15 9 18 3,3 4000 50x25x10 15W 18 36 5 3000 36 75 12 1250 15 1000 ą5 ą1500 ą12 ą625 ą15 ą500 może być asymetryczne (typowe wartości: 3,3/5/12/l5V), jak i symetryczne (o typowych wartościach: ą5/ą12/ ą15V). Napięcie wyjściowe jest stabilizowane i charakteryzuje się stosunkowo niskim poziomem tętnień i innych zakłóceń. Przetwornice są przystosowane do pracy w zakresie temperatur -4OC,..+8OC. Bariera galwaniczna pomiędzy wejściem i wyjściem jest odporna na przebicia o wartości do 15OOVDC. Wszystkie przetwornice z tej grupy są odporne na długotrwałe zwarcia na "wyjściu. Przewidywany przez producenta czas bezawaryjnej pracy (przy temperaturze otoczenia wynoszącej 25C) jest nieco dłuższy niś l,lmln godzin. TEN4 Są to przetwornice (fot. 3} o mocy 4W, charakteryzujące się stosunkowo szerokim zakresem napięć wejściowych. Fot. 2. Z tego powodu producent szczególnie zaleca ich stosowanie w systemach zasilanych z baterii o napięciu znamionowym 12, 24 lub 48VDC. Zakres temperatur roboczych mieści się w przedziale -4:0oC...+75C. Przetwornice są odporne na długotrwałe przeciążenia oraz zwarcia wyjścia. Współczynnik niezawodnościowy MTBF przy temperaturze otoczenia +25C jest większy niś 1 milion godzin. Opisywane dalej przetwornice TEN5 i TEN8 wyglądają tak samo, jak pokazana na fot. 2 przetwornica TEN3. TEN5 Są to przetwornice o mocy 6W, których podstawowe parametry są porównywalne z parametrami wcześniej opisanych typów przetwornic. Są one bardzo często używane w telekomunikacji, zwłaszcza w urządzeniach wymaga]ących dokładnej regulacji napięć symetrycznych przy ich nierównomiernym obciążeniu. W najgorszym przypadku różnica napięć pomiędzy gałęziami zasilającymi może wynosić ą3%. Zakres temperatur roboczych mieści się w przedziale -40C do +75C. TEN8 Są to przetwornice o mocy BW, których zakresy napięć wejściowych i wyjściowych są podobne jak dla przetwornic TEN5. Przetwornice serii TEN8 charakteryzują się wysoką sprawnością, dochodzącą do 85% przy obciążeniu nominalnym. W odróżnieniu od wcześniej przedstawionych, można je zdalnie sterować za pomocą wejścia Remoie ON/OFF. Po wybraniu trybu pracy OFF zasilany jest tylko wstępny obwód wejściowy, co powoduje obniżenie poboru prądu do 2,5mA. Wewnętrzną budowę przetwornic TEN8 zoptymalizowano pod kątem współpracy z obciążeniami pojemnościowymi, co pozwala m.in. na obciążanie ich rozbudowanymi filtrami pojemnościowymi. Przewidziany przez producenta zakres temperatur roboczych dla przetwornic TEN8 mieści się w przedziale -2 5C...+70C. Firma Traco Power, dostrzegając coraz szybszą ekspansję podzespołów przystosowanych do montażu powierzchniowego, wprowadziła do oferty dwa typy przetwornic w obudowach z płaskimi wyprowadzeniami - TES2 i TES3. Są one montowane w obudowach z tworzywa sztucznego, które doskonale są przystosowane do luto- Fot. 3. w ani a metodą rozpływ ową zgodnie z zaleceniami normy CECC00802. TES2 Są to przetwornice o mocy 2W, przystosowane do zasilania napięciami 0 wartościach 5/12/24/48VDC z tolerancją ą10%. Możliwe napięcia wyjściowe (stabilizowanej są następujące: 5/12/ą12/ąl5VDC. Wyjście przetwornicy jest odporne na długotrwałe przeciążenia oraz zwarcia. Przetwornica doskonale współpracuje z obciążeniami pojemnościowymi, których maksymalne pojemności producent określił indywidualnie dla każdego typu. Dopuszczalny zakres temperatur pracy mieści się w przedziale -40C...-i-60i:iC. TES3 Przetwornice o mocy 3W i zakresami napięć wejściowych : 9...18/18...36 1 36...75VDC (fot. 4). W ofercie producenta są dostępne przetwornice w wersjach z asymetrycznym i symetrycznym napięciem wyjściowym, wszystkie odporne na długotrwałe przeciążenia i zwarcia na wyjściu. Zakres temperatur roboczych mieści się w przedziale -40C...+75C. Przetwornice o mocy do 1O...15W Ten typoszereg przetwornic DC/DC jest oferowany prze z producenta w metalowych obudowach ekranowanych o wymiarach 25x50rnm. Podobnie Fot. 4. 64 Elektronika Praktyczna 1/2002 PODZESPOŁY Fot. 5. do wcześniej opisanych, przetwornice TEN10, TEN12 i TEN15 są w pełni kompatybilne mechanicznie, dzięki czemu zastąpienie przetwornicy TEN10 przez przetwornicę o większej mocy (i odwrotnie) nie wymaga żadnych przeróbek na płytce drukowanej. Przetwornice wyposażono w filtr wyjściowy, który zapewnia ograniczenie zakłóceń do poziomu dopuszczonego normą EN55022-klasa A, bez konieczności stosowania jakichkolwiek elementów zewnętrznych. Przetwornice nie są standardowo wyposażone w wejście zdalnego sterowania, ale za pomocą dwóch zewnętrznych tranzystorów FET można je wyłączać w przypadku, gdy nie jest wymagana ciągła ich praca. TEN10 Są to przetwornice o mocy IOW, dla których zalecany zakres napięć wejściowych mieści się w przedziałach: 9...18/18...36 i 36...75VDC (fot. 5). Do dyspozycji konstruktorów są układy w wersji z asymetrycznym i symetrycznym wyjściem, które jest chronione przed długotrwałym przeciążeniem i zwarciem. Parametr niezawodności MTBF wynosi co najmniej lmln godzin, przy temperaturze otoczenia +2 5C. Zakres zalecanych temperatur roboczych wynosi: -40C... +75C. TEN12 Jest to rodzina przetwornic o mocy 12W (fot. 6} z bardzo szerokim zakresem napięć wejściowych (stosunek maks./rnin.=4:l}. Modele tych przetwornic są podobne do przetwornic TEN10, włącznie z podstawowymi parametrami niezawodności i temperatury. W tej grupie przetwornic, przy partii powyżej 1000 szt. można - na indywidualne zamówienia - wyposażyć je w wejście zdalnego sterowania. TEN15 Jest to najmłodsza rodzina przetwornic, których moc wyjściowa wynosi aż 15W. Mają one parametry porównywalne (oczywiście za wyjątkiem mocy) z parametrami przetwornic z rodziny TEN10. Bez wymuszonego chłodzenia dopuszczalny zakres temperatur roboczych wynosi -25C...+70C. Wyjątek stanowią modele o napięciu wyjściowym 3,3VDC, dla których, wraz ze wzrostem temperatury powyżej 60C, moc wyjściowa zależy liniowo od temperatury ze współczynnikiem 2,5%/C. Podsumowanie Przedstawione w artykule przetwornice firmy Traco Power tworzą jedną z najbardziej kompleksowych ofert na polskim rynku. Producent będzie nadal rozwijał typoszeregi TEN i TES, Fot. ó. w wyniku czego już wkrótce pojawią się przetwornice w wersji o mocy 6W - TEN6 i TES6. Ich budowa wewnętrzna będzie podobna do zastosowanej w przetwornicach opisanych w artykule (elementy SMD na podkładzie ceramicznym), dzięki czemu ich niezawodność i odporność na udary (także mechaniczna) będą wysokie. Tomasz Jakubik, AVT Dodatkowe informacje Dystrybutorem podzespołów firmy Traco Power w Polsce jest Arnteksp. zo.o.,tel. (22)874-02-34, arnTek@arnTek.pl. Dodatkowe informacje o przetwornicach prezentowanych w artykule są dostępne w Internecie pod adresem: http://www.Tracopower.corn/producTs/ index htm oraz na płycie CD-EP1/2002B. Elektronika Praktyczna 1/2002 65 PODZESPOŁY Jest nctnt coraz łatwiej I Nam producenci podzespołów półprzew trudnym do wyobrażenia jeszcz z naszych Czytelników już nie p wiąz, uło się W} rkoi i ani ( P1 -osie S> odbi on lik), kti ry unio żliv i yfro" vyc h danyi na i ii ew 'ieifc ie czy feź sef ek - elektronikom, o których dnikowych dbają w stopniu kilka lat temu. Większość mięta, z jakimi trudnościami toru radiowego (nadaj nik- iezbyt szybkie przesyłanie odległości, rzędu dziesiątek metrów. Nie pamiętamy już pokonywania trudności piętrzących się przed kon- promować na na układowe, progra wyspecjalizowa firmy. Należy d firma Telecontrolli, oferująca całą dzinę różnego rodzaju nadajników i odbiorników radiowych. Niegdyś fu-rorę zrobił norweski Gran-Jansen swoimi jedno- j dziedzinie wykorzystać okazji - w artykule in.: włoska przedstawiamy niewątpliwy hit w tym elitarnym gronie, układy: CC400, CC900 oraz nowość na skalę światową układ CCIOOO. Wymienione układy są produkowane w awangardowej technologii - SmartRF - którą opracowała firma Chipcon w połowie lat '90. Pierwsze dwa układy są produ- (obecnie BlueChip) 433MHz. Ciągle próbuje swoich sił na naszym rynku amerykański Micrel. a interesującą ofertę pokazała niedaw- no w Polsce firma NordlC. Wszystkie gii BiCMOS 0,8^m (SmartRFOl), te układy (czy też rodziny układów) natomiast układ CCIOOO jest "na gorąco" opisywaliśmy w EP. technologicznym "prototypem" alonych bów kolejnego produce transceiverów radiowych - firm Chipcon - która w ostatnich ty g dniach ubiegłego roku postanowi sowanej technologii BiCMOS 0,3 5[im (SmartRF02). Zmianę technologii wykonania uzasadnia znaczne skomplikowanie wewnęt-
Chipcon ciągle rozwija technologię SmartRF, ponieważ jest ona platfor-mą do produkowania układów na za-mówienia (ASIC). Z myślą o klientach indywidualnych Chipcon wdrożył technologię SmartRF03, która jest także oparta na elementach BiCMOS, 0,18[im, czyli porównywalnych m.in. n lanej przez Intela technologu pro-dukcji pierwszych procesorów Pen- Elektronika Praktyczna 1/2002 67 PODZESPOŁY 10110001101 Danemr Rys. 2. pomiędzy sygnałami przypis przewidzieli także możliwość programowego ustalania klasy pracy wyjściowego wzmacniacza mocy nadajnika, Do wy bo-ru są: "czysta" klasa A, klasa AB, klasa B oraz klasa C, dlć PCLK DIO
CC1000 CD pour Opc* * Opola * Rys. 3. tium 4. Th Lu 1 on miitEF" po- które w jednej strukturze bloki cyfrowe wyższe wartości mocy przekazywanej danych. Układ CC400 wyposai 5ygnałar ,5GHz. klasy pracy ,cy skróceń talać pro- ledwie 5 taktów do /ch przesyła- podstawowych paramet- wyjś. niego rejestru. sji (500[is dla prędkości 9,6kbd), tak- CC4OO - transcevier na Ponieważ pętla PLL zintegrowana że podczas korzystania z protokołów pasma 413/433MHz w układzie CC400 ma krótki czas za- z przeskokami częstotliwości. Jest to układ najstarszy w ofercie skoku, nadaje się on doskonale do Układ CC400 jest oferowany firmy Chipcon, przeznaczony do sto- stosowania w torach radiowych z dy- w obudowie jednego typu - SSOP28 w a ni a . Sc h ema t aplikacyjny tego w a nego mikroko ntrolera. In a barki układu w minimalnej konfiguracji jest mikrokontrolera współpracującego CC900 - transceiver dla bardzo prosty, co jest widoczne na z układem przerzucono także koniecz- lubiących wyższe pasma rys. 1. ność zakodowania przesyłanych da- Jest to układ bliźniaczo podobny Wtórze odbiorczym CC400 zasto- nych zgodnie z algorytmem Wanches- do CC400, niemal identyczne są tak- lału mosna zapewnić wysoką selektywnosc bez konieczności stosowania strojonego filtru. Zrezygn< totliwości. Jak i "- ygnału z "l"->,,0", jak radiowego CC900 do transmisji pokazano na rys. 2. w wyższym paśmie LSM7SRD (Shoit Ponieważ podstawowym Rangę Device), czyli około 8691vfHz. układu CC400 są bez- ze zmodyfikowaniem budowy pętli przewodowe urządzę- PLL syntezera częstotliwości, dzięki nia przenośne, jego czemu o ok. 20% skrócono czas jej . projektanci zadbali zaskoku, Pzięki temu - w zależności o niskim napięciem przeskoków pomiędzy kanałami mose (pracuje już od 2,7V), prze- wynosić nawet do lOOHz. widzieli także możliwość pro- Układ CC900 jest oferowany także iowego przełączania, w dowolnie tylko w jednej obudowie - SSOP28 - cji pracujących w pasmach 413/ układ pobiera od 200pA (z wyłączo- 43 3WHz, przy czym częstotliwość nym oscylatorem) do 2 3uA (z włą- CC1000 - gwiazda nowej gra mowa nie wszelkich nastaw układu po przełączeniu w stan aktywno GC400 jest możliwe poprzez 4-linio- jest dość długi - typowo wyn wy interfejs szeregowy, którego mak- 20...80 taktów zegarowych przesyłane- opisanych układów, a dzięki znaczi lodyfikac ichnologicznej (0,35u-m) 21vlHz. W interfejsie wpi- sywanych do rejestru konfiguracji Oprócz częstotliwości środkowej "kanału" transmisyjnego, użytkownik może programować także odstępy mię- pośredniej (60/2 00/45 5 kHz). Można także określać odstęp częstotliwości Elektronika Praktyczna 1/2002 PODZESPOŁY
iej częstotliwości do Oprogramowanie narzędziowe iwnętrznego demodula- Ponieważ konfigurowanie prezento- >ra. wanych w artykule układów jest wy- Lisji danych wynosi wareowy' program - SmartRF Studio | 19,2kbd, a możliwa (tak- - który procedurę konfiguracji spro- v przedziale 1...65kHz. wymaga instalacji i ma niewielkie gań projektanta, przesy- dzenia konfiguracji układów CCxxx | kodowany następującymi czany do portu równoległego PC, kto- spos obami ' NRS {Iv on rego opis ]est dostępny "w dokumen- Return to Zero), Wan- tacji zestawów ewaluacyjnych. Na chester (podobnie jak rys. 5 pokazano widok okna progra- w CC400/900), można mu SmartRF Studio. synte bardzo szerokim zakresie bezprzewodowy interfejs typu UART, Podsumowanie częstotliwości 300...10001vi:Hz. Wożli- Ostatni tryb pracy wydaje się być Wydawać by się mogło, że fir wy do osiągnięcia odstęp międzyka- najbardziej atrakcyjny dla typowych produkująca trzy typy układów s. nałowy wynosi 25kHz, przy czym do aplikacji rnikrokontrolerowych, należy lonych nie ma szans przeżycia aplikacji v "trudi dol jest w nim wykorzystywany, rego pomysłu może stać się źródłem Podobnie jak w układach CC400/ Projektanci układu zastosowali sukcesu. Parametry i możliwości ukła-
odbiornikie
długości 8 bitów wszelkich dotychc; do dwukierunkowej t zano efekt działania włąc; jchanizmu spectrurn shaping. częs- Piotr Zbysiński, AVT po- piotr.zbysinski@ep.co dzie CC1000 zdti ilustrujący sposób kontrolera z układf no na rys. 3. Nie /och linii, połączenia ?m CC1000 P k hemat mikro- pr; 'ć pozio ;ez nadaj Należy takż zakłc h e vrócić ograi ilektro Śanycl misji bitói generowań} ' pr r Lacza sygnał DCLK układ CC1000, tró w ustah ijąc dwa ych częste .HiwJoi rzystać dw Śa d oda tkowe sygn ał; f wy- mu jest nio żliv ,in. Ui faleni, CC1000: - LOCK -- RSSI/IF j pr, (Rei acy cyfrowy infori (zaskoku) pętl srf Signal St il ujący i PLL, renght nia i odbić CC400/900 i wo przepro^ wiednich re nagał, lowy-row. 3 każd tadach Opcjonal lie sygnał infoj sygnału odbi eranego. ny TS tylko v, SOP2 8 - P1 3nej obudc
Ł. częstotliwości pracy szybkość transmisji modulacji czuło c odbiornika wyj ci owa Dys L t j stSoyte tal. pLj j--------........"">.".m.|.l. Dodatkowe informacje i noty katalogowe uktadów CD-EP1/2002B oraz w Internede pod adresem CC400 300 500MHz 9,6kbd FSK -11 1E CC900 800 1000MHz 9,6kbd FSK -11 IE +4 1E LC1000 300 1000MHz 19,2kbd FSK -1O9d6m +1Od6m Elektronika Praktyczna 1/2002 Miniprojekty~J W Miniprojektach przedsta wiamy opisy dwóch progrc motorów ISP -słynnego Yaapa (dla mikrokontrole-rówAVR) i ByteBlastera (dl układów PLD). Str. 75, Sterownik odtwarzacza CD Długo na ten projekt czekaliśrr lo komputerowego napę-CD-ROM, który pozwala przerobić go na odtwarzacz płyt audio. ^Interaktywny, telefoniczny moduł *"~ zdalnego sterowania la str. 21 przedstawiamy
telefon, który działa nteraktywnie z operato-im, informujqc o swoim ARM - nowoczesny sposób na RISC Rejestrator telefoniczny z dekoderem CLIP Niezwykle zaawansowana konstri. nłysnqł się cały świat. Sukc tyle zaskakujqcy, że ARM , Na str. 45 p iedliwiajq jej go takiego procesora.... Tajniki sukcesu przedstaw na str. 51. _ iy drugq cześć artykułu, w któr; >wania i obsługi Uniwersalny regulator ^ obrotów silnika AC Tematyka regulacji obrotów silników elektrycznych cieszy się wśród naszych Czytelników W artykule na str. 37 przedstawiamy opis konstrukcji regulatora, który opracowali projektanci Sprzętowy terminal RS232 ' Podczas uruchamiania urzqdzeh przesyłajqcych dane prze; interfejs RS232 projektanci napotykajq z programem termina-owym. Na str. 33 f przedstawiamy krótki opis nia, progn rejestrator Zestaw edukacyjny dla mikro-kontrolerów ST62 W artykule na str. 27 przedstawiamy opis konstrukcji zestawu edukacyjne- tego typu cieszq się ogromnq popu-larnościq, co wynika z ich ogromnej uniwersalności i łatwości budowania własnych aplikacji, Elektronika Praktyczna 7/2002 SmartProg - inteligentny programator ze Słowacji Słowacki producent programat tykule na str. 59 przedstawiamy najnowsze opracowanie tej fir Flash i USBwHC08 ^ - nowe mikrokontrolery firmy Motorola Po długim letargu Motorola ofensywy. W artykule na str. 54 kontroler z rodziny HC08, który wyposażono w interfejs USB o bardzo przemyślanej konstrukc System bezstykowej identyfikacji firmy Texas Instruments System bezstykowej identyfikacji Tiris nie jest rynkowq nowościq, prezentacji na łamach EP wykorzystywane w nim podzespoły znacznie udoskonalono. Szczegó ły przedstawiamy na str. 62. v IIKA Nr 7 (115) ^ lipiec 2002 Projekty Analizator stanów logicznych ................................................ 14 Interaktywny, telefoniczny moduł zdalnego sterowania, części ....................................................................................... 21 Zestaw edukacyjny dla mikrokontrolerów ST62................... 27 Sprzętowy terminal RS232........................................................ 33 Uniwersalny regulator obrotów silnika AC............................ 37 Sterownik odtwarzacza CD ..................................41 Rejestrator telefoniczny z dekoderem CLIP, część 2 ..........45 Programator WillemProg 3.0, część 2....................................49 Yaap-programator ISP dla mikrokontrolerów AVR............ 75 ByteBlaster MV..........................................................................76 Język C dla mikrokontrolerów 8051, część 2........................ 81 ATAPI - specyfikacja standardu. Sterowanie CD-ROM-ów i dysków twardych w praktyce, część 1 ............................... 85 System operacyjny czasu rzeczywistego QNX 6.2............. 125 Step7 MicroWin 32-pierwsze kroki...................................... 127 ARM - nowoczesny sposób na RISC......................................51 Flash i USB w HC08 - nowe mikrokontrolery firmy Motorola........................................................................... 54 SmartProg -inteligentny programatorze Słowacji..............59 System bezstykowej identyfikacji firmy Texas Instruments .. 62 Nowe przyrzqdy pomiarowe dla telefonii cyfrowej 3G...... 66 Adapter do programowania mikrokontrolerów 89C51 w programatorach 89CX051 .................................................. 89 Z kraju i ze świata........................................................111 Kramik+Rynek................................................................91 Listy...................................................................................97 Ekspresowy Informator Elektroniczny.....................107 Wykaz reklamodawcow............................................110 Elektronika Praktyczna 7/2002 REKLAMA Zintegrowane przetwornice AC/DC Moc wyjściowa Dostępne konfiguracje wyjściowe Inne Rodzino TML - 5...30 W, obudowo przystosowano do montażu no PCB FML5W Wyjście I Wyjście II Wejście 85 264VAC 5W1 OA Jedno, dwa lub trzy wyjścia 12V/0,416A 15V/0 333A Zabezpieczenie termiczne 24V/0,20A +5V/0 50A -5V/0 50A + 12V/0,20A -12V/0,20A UL/cULEafetyApprovai + 15V/0,16A -15V/0,16A EMI EN55022. Class B i FCC. TML10W Wyjście I Wyjście II 12V/0,833A 15V/0,666A 24V/0,416A +5V/0,80A -5V/0,80A + 12V/0,38A -12V/0,38A + 15V/0,30A -15V/0,30A FML15W Wyjście II 5V/3 00A 12V/1,25A 15V/1,00A 24V/0 625A +5/1.50A + 12V/0 65A -12V/0 65A +15V/0 50A -15V/0 50A "5V/2,00A + 12V/0,20A '5V/2,00A -15V/0,15A -15V/0 15A TML30W Wyjście I Wyjście II Wyjście III 3 3V/6 OA 5V/6 OA 12V/2,5A 15V/2 OA 24V/1,25A +5V/3,0A -5V/3,0A + 12V/1,3A -12V/1,3A + 15V/1,0A -15V/1,0A 5V/3 OA 12W1 25A 5V/3 OA + 12V/0 63A -12W0.63A 5W3.0A + 15W0.50A -15V/0,50A TMS-6...25W, obudo a przystosowań a do montażu na PCB. FME6W Wejście 85 264VAC 5V/1 2 A Jedno lub dwa wyjścia 12V/0,5A
24V/0 25A + 12V/0,25A Znak CE. Safety Class II. + 15V/0,2A -15V/0!2A UL/cULEafetyApproval EMI EN55022 Class B i FCC TME 10W Wyjście I Wyjście II 5W2A 12V/0,9A 15V/0 7A 24V/0,45A + 12V/0 45A -12V/0 45A + 15V/0,35A -15V/0,35A FME 15W Wyjście II 5V/3A 12V/1,30A 24V/0,65A + 12V/0,65A + 15V/0,50A -15V/0 50A TME25W Wyjście I Wyjście II 5W4.6A 12V/2,0A 15V/1,6A 24V/1 OA + 12V/1,0A -12V/1,0A + 15V/0.8A -15V/0.8A Dotychczas w EP wielokrotnie przedstawialiśmy zintegrowane przetwornice DC/DC o różnej konstrukcji i mocy, które ze względu na doskonale parametry izolacyjne są często stosowane u sprzęcie pomiarowym, automatyce, systemach telekomunikacyjnych itp. Teraz innego typu - AC/DC - które można traktować jako kompletne, miniaturowe, wysokosprawne zasilacze sieciowe. bąwy^sta^nTpTaciowjcTTrkże^mocą. Zestawienie podstawowych parametrów tych przetwornic znajduje sie. w tab. 1. Rodzina TML tr=i n Md 80%), wyposażone w jedno, =AH=tU 'r trV- irciemCorazaprzewin Lird r 1 r ikresie 85...264VAC, któr-r- +- -,drdnt""dna jest stabilnn^ wszystl r rit - , "UJ niać L r I r dlr tr ii rt gwarantuje poprawna prar tr ^ rr dli 47...400Hz. Obud tr t- rr t- r 4 cych rodzina Tl IL 4 tr ł ="r d montażu na plytU r dul it i Ifot II Rodzina TMS rowa^m^duTy1 \r r^r^r * 'i 6 do 25W (spra r d J II=it . 8S...264VAC (47...63Hz) lub 100,..375VDC, dla każdej wartości w tym przedziale gwa- wych. Wszystkie modele wchodzące w skład rodziny TMS są dwuwyjściowe, wyjścia wy- bezposrednio na płytach drukowanych lub Elektronika Praktyczna 7/2002 REKLAMA F Moc wyjściowa Dostępne konfiguracje wyjściowe Inne TPM S 30W obudowa przystosowań a do montażu na ŚCB lub za poma ąśrub m TFM i Wyiście I 5W1A 12W0 42A 24W0 21A + 12V/0 25A + 15V/0 15A Wyiście II -12V/0 15A -15V/0,15A We|ście85 264VAC/ 100 375VDC. Jedno d trzywyiścia Maietętm i szumy Wbudowanez Znak CE.Eafety Class I aezpie- Fot. 2 i konekl \0 EMI EN55 22.CI.ssB FCC, Rodzina TPM TPM 10W Hlljif Wyiście II -12V/0 40A -15V/0 30A + 12V/0 12A Wyiście III -12V/0 12A wyposażone +5V/1,20A + 15V/O,1OA -15W0.10A
5V/3A 12V/1 30 A24V/0 60A + 12V/0 60A -12V/0 40A (47,..400Hz) oraz 100,..375VDC. Obudo stałe wy przetv o wartość ornic TPM rzewlekane- +5V/1 60A +5W1.60A + 12V/0 15A + 15V/0,15A + 12V/0 15A + 15V/0,15A typu śrub owego ARK TPM 30W 12W2.50A Wyiście II Wyiście III Rodzina TPL ay TPM, przetwórni- + 12V/1,20A -12V/0,40A ne do zasilania n pięciem zmi.nnyn 5W3.00A 5W3.00A +5W3.00A +5W3.00A 12V/1,2A 24V/0,60A + 12V/0,60A + 15V/0,50A + 12V/0,60A ub 60Hz) lub być większa niż IOW stałym (przysp kiem prze- Rodzina TPL - 1OW, obudowa przystoso wyjściu {tętnienia i szumyl wana do montażu na PCB, bardzo maiy poziom zakłóceń n. 5V/2,0A 12W0.9A 15W0.7A + 12V/0,45A + 15V/0,35A -12V/0,45A -15V/0,35A 120 380VDC Jedno, d tętnienia i szumy Zabe Znak CE.Eafety Class I UUcULEafetyApprova EMI EN55022, ClassB EMC-EN50081-2/EN50 FCC, 82-2, niYp,,. Obudowy przetwornic z drukowanych. necie pod adresem: http://www.trac products/sg acdc 5 30.htm. tej rodziny na płytkach power.com/ Znak CE, S l"CI,ssl spol. s.r.o., tel. (22)874-0 2-34, amte Elektronika Praktyczna 7/2002 MINIPROJEKTY Wspólnęi cechą układów opisywanych w dziale montowanie układu nie zabiera zwykle więcej nlź dw 'unasfu minut Układy z "Miniprojekiów" mogą być : ucham^aniu, cjdyz ten złożoność t inteligencja jesi i kitów AV 'odrębnionej serii "Miniprojekty" < Ymłprojekty" j&st łatwość ich praktycznej r> trzy kwadranse, a można qo uruchomić zawarta w układach scalonych, Wszystkie laboratorium AVT, Większość z nich znaj -acji zaczynającej się od 1000, Yaap - programator ISP dla mikrokontrolerow AVR Jesper Hansen s podbił se ilio wiecie. Ni Drugie ISP mikr jest to jego najbardziej okontrolerow AVR "Yaap" zedstawiamy w artykule. rażania nowych lardów sprzęto-i, a zamiast tego rzył oprogramo-e, dzięki które- ter PC wyposażony nics i z zainstalowa-dows może spełniać ISP (In System Pio- Program Yaap 0.3 umożliwia programowanie ISP następujących typów mikrokontrolerow: AT90S1200, ATtinyl2, ATtinyl5, ATtiny22, AT90S2313, AT90S2323, AT90S2333, AT90S2343, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535, AtmegalO3. Na liście obsługiwanych układów znajdują się także: ATmegal61 oraz ATmegal63, ale autor programu nie daje gwarancji ich poprawnej obsługi. udostępnia Jespera (http://wv wh przez lansena '.mypla- kż 'any Lia z podstawki) olerów AVR. Pro- i bardzo funkcjo-. ócz okna służącego do obsługi programator innych [ (rys. 1), program Yaap został jekcie". takż. ISP, gla" z zestawu STK2~00, a także interfejsu ISP ByteBłaster dla układów PLD firmy Alte- "Minipro- terminal (rys. 2), który w wersji dostępnej na płycie CD-EP7/2002B obsługuje tylko port szeregowy, ale autor zapewnia, że wkrótce będzie dostępna także wersja z obsługą portu równoległego. ga instalacji - wystarczy skopiować plik yaap.exe do dowolnego katalogu. Do pracy tem operacyjny Windows 95/ 98/Me/NT/2000/XP oraz ma klasycznego ByteBlastera konwertera kolejności wyprowadzeń jak to pokazano na rys. 4. W przypadku, gdy pro-gramator ma być stosowany AVR warto się pokusić Rys. 4 WYKAZ ELEMENTÓW Yaap Programmer Rezystory R1...R5: 100D Różne Zll: DB25M ZI2: ZWS10 Zmodyfikowana wersja ByteBtasteta Rezystory 33Q Elektronika Praktyczna 7/2002 MINIPROJEKTY ByteBlaster MV Praktycznie wszystkie współczesne układy Programowanie w syste- rej schemat montażo mie (ISP) po raz pierwszy za- pokazano na rys. stosowano w układach PLD Układ Ul jest montoi firmy Lattice. Firma ta opra- ny po^ przystosowane do cowała własny standard pro- nie powinien sprawić ".. programowania lub gramowania, który jednak nie wielkich trudności, po- konfigurowania przyjął uu^am^arie dzeń, w których Ideę p ,jął nieważ zasto; itandard JTAG (opisany SO20 o stosunkowo nia ch, rozmies nych w dogodnych dla mon- | układy znacznie się Transmisja danych w standar- tażu ręcznego odstępach. * skraca dzie JTAG odbywa się szere- Pozostałe elementy, za wyjąt- W artykule ||Wu V?* -O S "żlwana. Przez k)61 Z ^c%iSą "^h w.ane przedstawiamy naszą Schemat elektryczny pro- przylutować do płytki w spo- wersję, najnowszego gramatora ByteBlaster MV sób pokazany na rys. 4 (po l ISP firmy pokazano na rys. 2. Jest to wsunięciu płytki drukowanej - ByteBla J r MV. złącza). W podobny sposób i konfigurowania układów (BD25M), który służy do do- niskonapięciowych, w tym łączenia programatora do złą- Rys 3 układów zasilanych napię- cza Centronics. Na rys. 5 po- ciem 1,8V. kazano rozmieszczenie syg- niają programy, za pomocą Budowa programatora jest nałów JTAG na złączu ZU. których można programować 'ezwykle prosta - układ Ul ByteBlaster jest obsługiwa- oferowane przez nie układy y p y j g jest buforem separującym linie ny przez wiele programó portu Centronics od wyprowa- służących do programowani dzeń program kłd i kfii kłdó t ł p PLD bezpoś mie. Wszystkie progra mieszczamy na płyci EP7/2002B. rZbysiński, AVT biki@ p ąy pg kładu, i konfigurowania układów czone w szereg PLD, a także - co szczególnie wejściami tego interesujące - mikrokontrole- y, a zadanie ogra- rów AVR (szczegóły w po- piotr.zbysinski@ep.com.pl niczyć natężę- przednim Miniprojekcie)! nie prądu wy- Najbardziej "nat pływającego nym" programowym i wpływającego tnerem dla ByteBla do bezpiecznej są programy Max+Pl dla układu (jt dt i wartości. Prog ą g p tor zmontowa- gramatora) oraz Quartus II fir- no na niewiel- my Altera. Także firmy: At- kiej, dwustron- mel oraz Xilinx (tylko w star- nej płytce dru- szej wersji bezpłatnego pakie- kowanej, któ- tu WebPack ISE 3.8) udostęp- CD- (jest dostępna m.in. jego specjalna wersja ASAP, Rvs. 4 służąca do obsługi pro- ) Q II fi +Vcc WYKAZ ELEMENTÓW 74HC244 Rezystory R1...R8: 33Q R9...R14: 2,2kQ Kondensatory Cl: lOOnF Pólpizewodniki Ul: 74HC244 (w SO/SOP20) Różne Zll: ZWS10 ZI2: BD25M Płytka drukowana jest dostępna wAVT- oznaczeń ieAVT-1344. w formacie PDF są dostępne w Internecie pc http:iiwww.ep. c om.pl/Tpdf/ CD-EP07/2002wk ataloguPCB. Elektronika Praktyczna 7/2002 KURS Drugą część kursu poświęcimy omówieniu przykładowego programu, który umożliwia wyświetlanie informacji na standardowym alfanumerycznym wyświetlaczu LCD, sterowanym poprzez interfejs 4-bitowy. Sterowanie wyświetlaczem LCD w trybie 4-bitowym Zaczynamy od bardzo użytecznego programu. Przyda się on nam w przyszłości, dzięki czemu czas poświęcony na naukę nie będzie zmarnowany. Analizując kod poszczególnych fragmentów programu (kod źródłowy przedstawiono na list. 1) rozłożymy go na kawałeczki. To najlepsza droga do poznania całego programu . Na początku znajdują się deklaracje. Wybieramy model pamięci [ttpragma SMALL), dołączamy właściwą definicję rejestrów mikroprocesora [#inclu de ), następnie określamy, które bity sterują wyświetlaczem [sbit), jakie definicje znaków zapiszemy do wyświetlacza itp. Zwróćmy uwagę na trochę odmienny, niż w innych językach programowania, opis bitu portu. Separatorem pomiędzy nazwą portu, a numerem bitu nie jest znak kropki, lecz umowny symbol potęgi. Słowo kluczowe sbit umieszcza naszą definicję w rejestrze funkcji specjalnych SFR, w obszarze adresowania bitowego. Przyjrzyjmy się zawartości tablicy z definicjami znaków użytkownika, które będą wprowadzane do pamięci CG-ROM {Charcicter-Grciphics ROM) sterownika wyświetlacza. Zauważmy, że jej deklaracja zawiera wiele istotnych informacji dla naszego programu, praktycznie w jednej linijce: - określony zostaje typ elementów tablicy, w tym przypadku char (czyli element jednobajtowy), - tablica zostaje umieszczona w pamięci programu mikrokontrolera (słowo code), - tablica otrzymuje nazwę symboliczną [CGRom) i określona zostaje liczba jej elementów (65), - elementom tablicy nadawana jest wartość stała. Pierwszą z funkcji, którą napotkamy analizując program, jest Delay. Jest to zwykła pętla, która absorbuje mikrokontroler na wielokrotność około 1 milisekundy. Tak stanie się tylko wtedy, gdy użyjemy rezonatora kwarcowego 7,3728MHz. Jeśli stosujemy inny kwarc, procedura wy- maga zmiany. Zmieni się bowiem czas potrzebny na wykonanie pętli. Słowo void przed definicją funkcji oznacza, że funkcja nie zwraca żadnych wartości jako rezultatu działania. Tutaj wyjaśnienie: funkcja w języku C może zwracać tylko jedną wartość. Nie może zwrócić ich kilku tak, jak procedura języka Pascal poprzez var. Jeśli zachodzi potrzeba, aby funkcja zwracała więcej niż jeden wynik działania, można to zrobić na przykład przekazując, jako argument funkcji wskaźniki do zmiennych. Wówczas obliczenia wykonywane są bezpośrednio na zmiennych źródłowych. Działania wewnątrz funkcji, o ile nie są wykonywane na wskaźnikach, wykonywane są na kopiach argumentów przekazywanych w wywołaniu funkcji i dotyczą wyłącznie zmiennych lokalnych zawartych pomiędzy nawiasami klamrowymi {}, oznaczającymi jej początek i koniec. Parametr unsigned int k jest to po prostu liczba milisekund do "odczekania" . Słowo unsigned oznacza, że liczba k jest dwubajtową liczbą bez znaku, czyli przyjmuje wartości tylko dodatnie. Ciało funkcji zawiera również deklaracje zmiennych pomocniczych: ;' oraz k. Posłużą one do budowy pętli for. Interesujący jest w języku C jej zapis: for (j = 0; j < k; )++), co oznacza: - wstaw do zmiennej ;' liczbę 0 (j = 0;); - dopóki ;' jest mniejsze od k (;' < k;) zwiększaj wartość j ol (;'++), wykonuj działanie opisane za nawiasem (w tym przypadku jest to następna pętla for). Zwróćmy uwagę, że o ile w RC-51, przed deklaracją typu int musimy użyć słowa unsigned, gdy ma to być liczba bez znaku, o tyle słowo to jest zbędne w przypadku typu char. Domyślnie kompilator zakłada, że chodzi o liczbę unsigned char. Uwaga: jest to cecha kompilatora RC-51 firmy Raisonance. Używając innego można się napotkać odmienne rozwiązania (np. firma Keil stosuje typ uchar). Oczywiście, można przed typem char dopisać słowo unsigned. Wówczas jest to zgodne ze specyfikacją ANSI C i prawdopodobnie będzie działać tak samo, bez względu na typ użytego kompilatora. Po Delay występuje funkcja Wri-teByteToLcd. Tak jak Delay, jest to funkcja typu void. Jej zadaniem jest zapisanie jednobajtowej liczby X do rejestru wyświetlacza. Funkcja dokonuje podziału bajtu na połówki i zapisuje je w bezpieczny sposób -wykorzystując tylko bity b4..b7 i nie uszkadzając zawartości bO..b3 - do portu PORT. Prześledźmy ten proces. Dzięki funkcji sumy bitowej OR cztery najstarsze bity portu PORT, w tym przypadku zadeklarowanego jako P2, są ustawiane na "1". Zapis PORT I = OxFO można bowiem prze-kształcić na równoważny mu PORT=PORT I OxFO. Właściwy zapis zmiennej do portu następuje dzięki funkcji AND, jednak po uprzednim ustawieniu dolnej połówki zapisywanego bajtu na wartość "1" (X I OxOF). Zapis: PORT &= (X I OxOF); można rozłożyć na następującą sekwencję działań: temp = X I OxOF; //młodsze 4 bity //X przyjmują wartość "1" PORT = PORT & temp;//młodsze 4 bity //portu PORT pozostają niezmienione //górne przyjmują wartość X Nawias w wyrażeniu PORT &= (X I OxOF) jest konieczny, ponieważ suma bitowa OR musi być wykonana przed iloczynem zapisującym połówkę bajtu do portu mikrokontrolera. Identycznie postępujemy z dolną połówką bajtu z tym, że wykonywane jest przesunięcie w lewo (o 4 pozycje) bitów zmiennej X [X = 4, to znaczy X = X 4). Funkcja podczas zapisywania danych do LCD nie sprawdza stanu flagi busy wyświetlacza zakładając, że po 1 milisekundzie wszystkie operacje wykonywane przez kontroler wyświetlacza zostaną zakończone. Wy- Elektronika Praktyczna 7/2002 81 KURS wołanie Delay(l) wprowadza konieczne opóźnienie. Kolejnymi są funkcje o nieco przydługich nazwach WriteToLcdCtrlRegister i LcdWrite. Ich zadaniem jest zapisywanie parametru X do pamięci sterownika LCD, co wymaga wygenerowania odpowiedniej kombinacji sygnałów sterujących. Obie funkcje korzystają z omówionej wcześniej funkcji WriteByteToLcd. Ponieważ określiliśmy w deklaracjach, że zmienne LcdReg, LcdRead i LcdEnable są bitami portu wyjściowego mikrokont-rolera, podstawienie wartości "1" lub "0" odpowiada rozkazom asemblera SETB i CLPi. Prawidłowy (i szczególnie użyteczny, gdy mamy do czynienia z dużą liczbą zmiennych) jest również zapis LcdReg = LcdRead = 0;. Kompilator podzieli go na pojedyncze operacje SETB i CLR. Zapis w takiej postaci nie ma więc wpływu na wielkość generowanego kodu wynikowego, poprawia jednak czytelność programu. Dalej w listingu występują linie z tymi samymi funkcjami. Nie omawianą dotychczas spotkamy dopiero w GotoXY. Jej rolą jest obliczenie i ustawienie właściwego dla pozycji kursora x, y adresu zapisu bajtów do wyświetlacza. Wykorzystuje ona polecenie switch do rozpatrzenia poszczególnych możliwych wartości y i wyboru odpowiedniej akcji: switch (y) case 0 X + = 3x80 break case 1 X + = 3xC0 break case 2 X + = 3x94 break case 3 X + = 3xD4 Z poleceniem switch ściśle są związane słowa kluczowe case i break. Case ma znaczenie takie, jak etykieta danego warunku, a break przerywa rozpatrywanie warunków. Jeśli nie użyjemy polecenia break, wówczas nastąpi przejście do następnego warunku 1 jego rozpatrzenie. W naszym przypadku jest to tylko strata czasu. Jedynym zadaniem funkcji GotoXY jest bowiem zwiększenie wartości x tak, aby wskazywała pożądany adres - nie ma potrzeby dalszego analizowania zmiennej y. Jeśli nasz y będzie miał wartość 0, wówczas do wartości x zostanie dodana liczba 80H. Jeśli 1 - to COH, jeśli 2 to 94H i tak dalej. Kilka słów komentarza. Przechodzenie od jednego przypadku do dru- List. 1 Obsługa wyświetlacza LCD w trybie 4 bity RC-51 Raisonance Przykładowy program w jeżyku C dla EP "kratka" 0x00 pusty kwadrat 0x01 kwadrat zacz . 0x02 linia 0x03 znak w lewo 0x04 znak w prawo 0x05 znak w górę 0x06 znak w dól 0x07 jacek.boguszSep.com.pl // wybór modelu pamięci tpragma SMALL // dołączenie definicji rejestrów '51 tinclude // definicje znaków specjalnych dla wyświetlacza LCD char code CGRom[65] = { 0xAA,0x55,0xAA,0x55,0xAA,0x55,0xAA,0x55, 0xC0,0xC0,0xFF,0xFl,0xFl,0xFl,0xFF,0xC0, 0xC0,0xC0,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0, 0xE0,0xFF,0xFF,0xFF,0xE0,0xE0,0xE0,0xE0, 0xFF,0xFF,0xF9,0xF3,0xE7,0xF3,OxF9,OxFF, 0xFF,0xFF,0xF3,0xF9,0xFC,OxF9,0xF3,0xFF, 0xFF,0xFF,0xFB,0xFl,0xE4,OxEE,0xFF,0xFF, 0xFF,0xFF,0xFF,0xEE,0xE4,OxFl,0xFB,0xFF, 0x00); // port,do którego podłączono wyświetlacz LCD tdefinePORT P2 // 4 najstarsze bity, to bity danych, 4 młodsze mogą byc w dowolny sposób skonfigurowane // jako sterujące // po zmianie definicji mogą to byc również 2 różne porty,jednak w programie przykładowym // zakładam wykorzystanie tylko jednego z portów mikrokontrolera // bity sterujące LCD sbit LcdEnable = PORTA0; sbit LcdRead = PORTA3; sbit LcdReg = PORTA1; // opóźnienie około k*l milisekundy (dla kwarcu 7,3728MHz) void Delay (unsigned int k) unsigned int i,j; for (j = 0; j < k; j++) for (i = 0; i <= 296; i++); // zapis bajtu do lcd, osobna procedura dla zmniejszenia objętości kodu wynikowego void WriteByteToLcd(char X) LcdEnable = 1; PORT 1= 0xF0; PORT &= (X I 0x0F); LcdEnable = 0; LcdEnable = 1; X <<= 4; PORT 1= 0xF0; PORT &= (X I 0x0F); LcdEnable = 0; Delay(l); // ustawienie górnej połówki portu PORT na "1" // "bezkolizyjny" zapis 1-szej połówki bajtu (przez funkcje logiczna) // zapis do wyświetlacza (opadające zbocze sygnału E) // zapis 2-giej połówki bajtu // przesuniecie 4x w lewo // ustawienie górnej połówki portu PORT na "1" // zapis 2-giej połówki bajtu i maskowanie 4 młodszych bitów // opadające zbocze E - zapis do LCD // zapis bajtu do rejestru kontrolnego LCD void WriteToLcdCtrlRegister(char X) LcdReg = LcdRead = 0; // ustawienie sygnałów sterujących WriteByteToLcd(X); // zapis bajtu do pamięci obrazu void LcdWrite(char X) // ustawienie sygnałów sterujących LcdReg = 1; LcdRead = 0; LcdEnable = 1; WriteByteToLcd(X); // czyszczenie ekranu LCD void LcdClrScr(void) WriteToLcdCtrlRegister(0x01); // inicjalizacja wyświetlacza LCD w trybie 4 bity void Lcdlnitialize(void) Delay(15); PO = 0x0F; // wyzerowanie linii LcdReg,LcdRead,LcdEnable 82 Elektronika Praktyczna 7/2002 KURS for (i = 0; i<3; { LcdEnable = 1; PORT &= 0x3F; LcdEnable = 0; Delay(5); // impuls na E // ustawienie wartości inicjującej LcdEnable = 1; PORT &= 0x2F; LcdEnable = 0; Delay(l) ; WriteToLcdCtrlRegister(0x28); WriteToLcdCtrlRegister(0x0 8) ; WriteToLcdCtrlRegister(0x01); WriteToLcdCtrlRegister(0x06) ; WriteToLcdCtrlRegister(0x0C) ; // wpisanie wartości 2 do rejestru kontrolnego // tylko "górne" 4 bity // interfejs 4 bity,znaki 5x7 // wyłączenie LCD // kasowanie ekranu, powrót do pozycji home // przesuwanie kursora z inkrementacja // załączenie wyświetlacza // ustawia kursor na współrzędnych x,y void GotoXY(char x, char y) switch (y) { case 0: x += 0x80; break; case 1: x += 0xC0; break; case 2: x += 0x94; break; case 3: x += 0xD4; break; // obliczenie o ile należy zwiększyć x w zależności od wartości y // x = x + 0x8 x = x + 0xC0 // x = x + 0x9 x = x + 0xD4 WriteToLcdCtrlRegister(x); // wyświetla tekst na współrzędnych x, y void WriteTextXY(char x, char y, char *S) while (*S) // pętla działa dotąd, az napotkany zostanie znak końca łańcuch (/O) GotoXY(x, y); // wyliczenie adresu dla znaku LcdWrite(*S) ; // wyświetlenie pojedynczego znaku x++; // następna pozycja x na ekranie S++; // następna pozycja wskaźnika, tzn. następny znak napisu if (x > 19) // jeśli x>19 to następna linia // wyświetla tekst rozpoczynając od aktualnego położenia kurso void WriteText(char *S) while (*S) LcdWrite(*S); // wyswi S + +; // pętla działa dotąd,az napotkany zostanie znak końca łańcucha (/O) Śtlenie pojedynczego znaku // definiowanie znaków z tablicy CGRom void DefineSpecialCharacters(char *ptr) )ToLcdCtrlRegister(0x40); // ustawienie trybu definicji ) (*ptr != 0) // pętla wykonywana do napotkania znaku końca tablicy Write___________; while (*ptr != 0) LcdWrite(*ptr) ptr+ WriteToLcdCtrlRegister(0x80) // zapis znaku do lcd cgram następna pozycja tablicy (wskaźnika) // p // następna pozycja // przełączenie do trybu wyświetlania // program główny void main(void) char ix = 1, iy = 1, x, y, i = 0; Lcdlnitialize(); DefineSpecialCharacters(&CGRom); while (1) WriteTextXY(x, y, " "); if (ix == 1) x++; else x--; if (iy == 1) y++; else y--; if (x == 19) ix = 0; if (x == 0) ix = 1; if (y == 3) iy = 0; if (y == 0) iy = 1; WriteTextXY(x, y, 0x01); Delay(50); giego budzi trochę wątpliwości. Niewątpliwie zaletą jest to, że można definiować wiele różnych warunków dla jednej akcji. Jednak taka konstrukcja programu, która umożliwia przechodzenie od warunku do warunku, jest bardzo podatna na "rozsypanie" się podczas jej modyfikacji. Z wyjątkiem wielu etykiet dla pojedynczej akcji, przechodzenie przez przypadki, powinno być stosowane bardzo oszczędnie i zawsze opatrzone komentarzem. Do dobrego stylu programowania należy wstawianie break po ostatniej instrukcji ostatniego przypadku, mimo że nie jest to konieczne. Funkcja WriteTextXY wykorzystuje wskaźnik. Jest to wskaźnik do elementu typu char. Jego definicję możemy bardzo łatwo odróżnić po symbolu *. Zauważmy, że do funkcji jako parametr nie jest przekazywany tekst do wyświetlenia, a jedynie wskazanie (adres) do miejsca w pamięci RAM (lub ROM), gdzie ten tekst został umieszczony. Wskaźnik ma rozmiar tylko dwóch bajtów, nie tak jak tekst, który może zająć znacznie więcej komórek pamięci. Operacja S++; przesuwa wskazanie na następny znak w łańcuchu. Kompilator sam dba o to, aby zwiększanie wskaźnika powodowało wskazanie na następny znak. Nie musisz przejmować się liczbą bajtów inkrementacji jeżeli wskaźnik ma przypisane wskazanie do określonego typu elementu. Pętla while kończy się, gdy wskaźnik S pokaże znak o kodzie 0. Znak ten umieszczany jest przez kompilator zawsze na końcu tekstu. Równocześnie z S zwiększana jest współrzędna x. Jeśli wartość x przekroczy maksymalną liczbę znaków w wierszu, następuje zwiększenie y i przejście do następnej linii na wyświetlaczu LCD. Podobnie jest realizowana funkcja DefineSpecialCharacters, ale jest ona nieco prostsza, bo nie oblicza żadnych wartości x i y, a jedynie przesuwa wskazania na następny bajt tablicy. Również i tutaj w pętli while napisać można warunek while (*ptr), ponieważ pojawienie się znaku o kodzie 0, while traktuje jako warunek końca (0 jest równoważne false). Jednak dla większej czytelności programu i wyraźnego zaakcentowania w jaki sposób kończy się tablica definicji, został użyty zapis while (*ptr != 0). W funkcji DefineSpecialCharacters znaleźć możemy jeszcze dwie nowe konstrukcje, których nie używaliśmy wcześniej. W wywołaniu funkcji DefineSpecialCharacters znajdującym się w programie Elektronika Praktyczna 7/2002 83 KURS głównym, znaleźć możemy pewną konstrukcję, której nie używaliśmy wcześniej. Jest to przypisanie wskaźnikowi ptr adresu tablicy CGPiom. Jednoargumentowy operator & tym razem nie oznacza iloczynu -podaje adres tablicy CGRom w pamięci mikrokontrolera Jak już wspomniałem przy okazji omawiania przerwań, program główny w C jest to funkcja o nazwie main. W programach pisanych dla mikrokontrolerów najczęściej jest ona typu void z pustą listą parametrów (również void). Należy jednak pamiętać, że wykonywanie programu napisanego dla mikrokontrolera nigdy nie może się skończyć. Nawet jeśli zrobił on już swoje i nie ma żadnych dalszych zadań do realizacji, to funkcję main należy zakończyć pętlą nieskończoną taką, jak: while(l) albo for(;;). Mikrokontroler nie posiada bowiem żadnego systemu operacyjnego takiego jak DOS, który po zakończeniu pracy programu przejmie kontrolę. Pliki nagłówkowe (*./i) Rozważmy teraz pewną możliwość. Mamy już napisany program w języku C, mamy w nim pewne funkcje, o których wiadomo, że przydadzą się nam również w wielu innych przypadkach. Chociażby nasz pierwszy program sterujący wyświetlaczem. Z całą pewnością przyda się na również w innych aplikacjach. Pojawia się więc pytanie: czy można z takich programów stworzyć bibliotekę, którą będzie można dołączyć do własnego programu i używać zawsze wtedy, gdy jest to potrzebne? A co z modyfikacją pewnych parametrów procedur? Czy zawsze trzeba mieć dostęp do kodu źródłowego programu i szukać, nierzadko wśród kilkuset linii programu tego parametru, który ma być zmieniony? Odpowiedzią na tak postawione pytania są tak zwane pliki nagłówkowe [header files), które umożliwiają podzielenie programu na mniejsze fragmenty i mogą zawierać definicje stałych oraz zmiennych używanych zarówno przez program główny, jak i przez biblioteki funkcji. W języku C, zbiory nagłówkowe, wyróżnia rozszerzenie .h nazwy (na przykład Icd4bit.h). Tak może wyglądać plik nagłówkowy utworzony dla biblioteki funkcji wyświetlacza LCD z poprzedniego przykładu. // port, do którego podłączono // wyświetlacz LCD #define PORT P2 // bity sterujące LCD sbit LcdEnable = PORT^O; sbit LcdRead = P0RTA3; sbit LcdReg = PORTA2; // opóźnienie około k*l milisekundy // dla kwarcu 7,3728MHz void Delay (unsigned int k); // zapis bajtu do lcd void WriteByteToLcdfchar X); // zapis bajtu do rejestru // kontrolnego LCD void WriteToLcdCtrlRegister(char X); // zapis baj tu do pamięci obrazu void LcdWritefchar X); // czyszczenie ekranu LCD void LcdClrScr(void); // inicjalizacja wyświetlacza LCD // w trybie 4 bity void Lcdlnitialize(void); // ustawia kursor na współrzędnych // x,y void GotoXY(char x, char y); // wyświetla tekst na współrzędnych // x, y void WriteTextXY(char x, char y, char *S) // wyświetla tekst od miejsca, // w którym znajduje się kursor void WriteText(char *S) ; // definiowanie znaków z tablicy // wskazywanej przez ptr void DefineSpecialCharacters(char *ptr); Jak widać, jest to bardzo krótki zbiór tekstowy zawierający podstawowe definicje zmiennych i funkcji. Zbiór ten dołączamy do programu głównego za pomocą dyrektywy #in-clude, podobnie jak postępowaliśmy z definicją rejestrów mikrokontrolera (notabene też jest to zbiór nagłówkowy). W takiej sytuacji, program źródłowy naszej biblioteki nie może zawierać funkcji main(). Zostanie ona zdefiniowana w programie głównym. Tworząc pliki nagłówkowe trzeba zachować ostrożność. Można bowiem samemu stworzyć pewien "bałagan" polegający na tym, że maleńki nawet program będzie miał dostęp do wielu danych, których w praktyce nie potrzebuje. Będzie to rzutować również na rozmiar kodu wynikowego oraz utrudni zachowanie porządku w deklaracjach zmiennych i funkcji. Więcej informacji o plikach nagłówkowych przedstawimy w następnym przykładzie programu w języku C (za miesiąc w EP). Aby wykorzystać bowiem mechanizm tworzenia plików nagłówkowych, musimy się nauczyć jak tworzyć project files i do czego one służą. Jacek Bogusz, AVT jacek.bogusz@ep.com.pl Dodatkowe informacje Ewaluacyjną wersję pakietu firmy Raisonance oraz źródo programu prezentowanego w artykule zamieściliśmy naCD-EP7/2002B. 84 Elektronika Praktyczna 7/2002 KURS specyfikacja standardu Sterowanie CD-ROM-ów i dysków twardych w praktyce, część 1 Od dłuższego czasu obserwuję rosnące zainteresowanie elektroników wykorzystaniem napędów CD i dysków twardych we własnych projektach. Najczęściej są to pomysły zbudowania własnego odtwarzacza płyt CD audio łub wykorzystanie dysku twardego jako nośnika dła plików MP3. Niestety, aby tego dokonać, trzeba przebrnąć przez obszerną dokumentację standardu ATAPI oraz interfejsu IDE. "Przekopywanie" się prsez dostępną dokumentację i wybranie najważniejszych zagadnień zajęło mi wiele dni. Niewiele prsydat-nych informacji można znaleźć w Internecie. Ta niekorzystna dla konstruktorów sytuacja skłoniła mnie do napisania tego artykułu. ___ Jest dla mnie pretekstem do ^^L_ usystematyzowania wcześniej zdobytej wiedzy, niezbędnej do samodzielnego przygotowania programu dla mikrokontrolera sterującego napędami CD-ROM lub HDD. Mam nadzieję, że artykuł będzie pomocny wielu z Was podczas projektowaniu układów tego rodzaju. IDE (Integrated Disc Electronics) oznacza ^| prosty interfejs umożliwiający dołączenie dysku twardego do magistrali ISA komputera PC. ATA (AT - Attachment) jest synonimem IDE, obecnie powszechnie stosowanym przez producentów dysków twardych. Standard ATA opisuje sposób wymiany danych Ś pomiędzy sterownikiem i napędem. Sygnały sterujące w IDE Schemat blokowy ilustrujący budowę typowego dysku twardego przedstawiono na rys. 1. Dzięki temu, że w napędzie zintegrowano zaawansowane funkcjonalnie układy sterujące odczytem i zapisem danych, użytkownik ma do nich dostęp poprzez stosunkowo łatwy w obsłudze 16-bitowy interfejs IDE. W zależności od aplikacji (komputery stacjonarne, przenośne) i rozmiaru dysku twardego (2I5'73I5M) lub CD-ROM-u wyróżniamy dwa rodzaje złączy IDE Irys. 2): - 40-pinowe o rastrse 2,5mm, - 44-pinowe o rastrze 2,0 mm Ina pinach od 41 do 44 są dodatkowe linie zasilania, sposób ich podłączenia zależy od typu dysku). Maksymalna długość kabla łączącego kontroler z napędem może wynosić 46 cm. Funkcje sygnałów w IDE - CSO - Chip Select 0 - służy do wyboru rejestrów Command Błock Register s. - CS1 - Chip Select 1 - służy do wyboru rejestrów Control Błock Regis-iers. - DAl/2/3 - linie adresowe służą do wyboru jednego z rejestrów z grupy Command lub Control Błock Regisiers - możliwy jest więc dostęp do 16 rejestrów (osiem z grupy Coniroł i osiem z grupy Command). - DASP - wyjście typu OC, dołączane zazwyczaj do VCC poprzez rezystor 10kQ (nie jest konieczny). Sygnalizuje aktywność urządzenia IDE, lub obecność ursądzenia pierwszego w kanale IDE. Można podłączyć diodę LED. - DD0."15 - dwukierunkowa szyna danych 8- lub 16-bitowa. Do wpisywania danych 8-bitowych wykorsystywa-na jest mniej znacząca część (tylko do wpisywania danych do rejestrów). Transmisja "zwykłych" danych odbywa się tylko w trybie 16-bitowym. - DIOR [Device l/O Read) - opadające zbocze sygnału na tej linii powoduje wyprowadzenie danych prsez ursądze- Elektronika Praktyczna 7/2002 KURS Tab. 1. Parametry statyczne IDE Opis Min Max IOL Prąd przyjmowany przez bufor wyjściowy (1) 4 mA IOH Prąd oddawany przez bufor wyjściowy 400 nA V|H Poziom napięcia traktowany jako stan wysoki 2,0 V V|L Poziom napięcia traktowany jako stan niski 0,8 V VoH Napięcie wyjściowe w stanie wysokim (loH = -400 jiA) 2,4 V VoL Napięcie wyjściowe w stanie niskim (loL = 12 mA) 0,5 V Uwagi: 1. Prąd ioL dla DASP powinien wynosić min. 12 mA, aby zapewnić wymagane czasy narastania i opadania zboczy. 2. Prąd ioli o wartości 400 jiA jest niewystarczający w przypadku, gdy DMARQ jest typowo podłączony do masy przez rezystor 5,6 kQ. Tab. 2. Parametry dynamiczne IDE JTJpis Min Max tnse Czasy narastania zboczy sygnałów na złączu IDE (1) 5 ns t,g|| Czasy opadania zboczy sygnałów na złączu IDE (1) 5 ns Cm Pojemność wejść urządzenia sterującego (HOSTa) 25 pF Cout Pojemność wyjść urządzenia sterującego (HOSTa) 25 pF Cm Pojemność obwodów wejściowych 20 pF Cout Pojemność obwodów wyjściowych 20 pF Uwagi: 1. tnse itfaii są mierzone pomiędzy 10...90% pełnej amplitudy sygnału przy sumarycznym obciążeniu pojemnościowym 40 pF. nie IDE na magistralę DD0...15. Natomiast narastające zbocze na linii powoduje akceptację danych po stronie łiosta. Host nie powinien reagować na dane występujące na magistrali pomiędzy zboczami tego sygnału. DIOW - {Device I/O Write) - narastające zbocze tego sygnału powoduje zatrzaśnięcie danych w urządzeniu. Dopóki dane nie zostaną zatrzaśnięte sterownik napędu nie przywiązuje do nich żadnej wagi. DMACK {DMA Acknowledge) - jest sygnałem wykorzystywanym przy transmisji danych z udziałem DMA. Jest pozytywną odpowiedzią (potwierdzeniem) ze strony ho sta na żądanie DMARQ ze strony CD-ROM-u lub HDD. DMARQ {DMA Request) - sygnał jest ustawiany przez CD-ROM lub HDD, gdy jest gotowy do transmisji danych w trybie DMA. W trybie DMA żaden z sygnałów CSO/1/2 nie powinien być ustawiony. Dane są transmitowane z wykorzystaniem całej szerokości magistrali DD0...15 (w trybie 16-bito-wym). Kierunek transmisji danych jest ustalany za pomocą sygnałów DIOR, DIOW. INTRQ {Interrupt Request) - zgłoszenie żądania obsługi przerwania. Sygnał ten jest ustawiony, gdy urządzenie jest wybrane i gdy układ sterujący (host) skasował bit nIEN w rejestrze Device Control. Oczywiście, dołączony napęd musi żądać obsługi przerwania. Żądanie przerwania następuje w wyniku zakończenia wykonywania komendy i gotowości do transmisji danych w trybie PIO (z wyjątkiem pierwszego bloku). Wyczyścić żądanie przerwania można za pomocą ustawienia (na ,,1") linii RE- SET, ustawienia bitu SRST w rejestrze Device Control, zapisanie do rejestru Command przez hosta lub odczytanie rejestru Status przez hosta. - IORDY - sygnalizuje brak gotowości urządzenia do przesłania danych do/ z rejestrów urządzenia. Obsługa tego sygnału jest wymagana w trybie pracy PIO 3. - PDIAG - wyjście typu OC, które należy ,,podpiąć" do +5V poprzez rezystor 10 kQ. Sygnał na wyjściu sygnalizuje zakończenie auto diagnostyki. - RESET - stan niski zeruje sterownik napędu. Adresowanie urządzeń IDE (Master/Slave) Gdy do jednego kabla IDE są dołączone dwa urządzenia (np. dysk twardy i CD-ROM - rys. 3), to wpisy- wanie danej do dowolnego rejestru powoduje jednoczesne zapisanie rejestrów w obydwu urządzeniach. Wynika to z faktu, że w IDE nie występują specjalne linie adresowe do wyboru jednego z urządzeń Master/Slave, do lub z którego chcemy odczytać lub wpisać dane. Adresowanie odbywa się poprzez ustawienie lub wyzerowanie bitu DEV w rejestrze Device/Head. Gdy DEV=0, komunikacja odbywa się z Masterem, a gdy DEV=1 to ze Sla-vem. Rejestry Rejestry należące do tzw. bloku rejestrów poleceń {Command Registers) służą do wysyłania komend dla sterownika urządzenia i odczytywania statusu urządzenia. Rejestry należące do tzw. bloku rejestrów sterowania {Control Registers) służą do kontroli parametrów urządzenia, oraz do odczytywania alternatywnego statusu. Sposób adresowania rejestrów pokazano w tab. 4. Rcjcsłr Alternałe Stałus Adres 6hCS lh 7 6 5 4 3 2 10 W DRDY Df DSC DRQ CORR IDX ERR Dostęp - tylko odczyt. Uwaga: gdy BSY = 0, można odczytywać resztę bitów. Uwagi dodatkowe: odczyt rejestru nie powoduje skasowania przerwania od urządzenia IDE ani nie potwierdza przyjęcia przerwania. Znaczenie poszczególnych bitów -takie samo jak dla rejestru Statusu. Rejestr Command Adres 7hCS 2h 7 6 5 4 3 2 10 Dostęp - tylko do zapisu. Gdy host próbuje odczytać rejestr, odczytywany jest rejestr Statusu. Uwaga: gdy BSY = 0, DRQ = 0 i DMACK nie jest ustawiony, można zapisywać do tego rejestru. Uwagi dodatkowe: zapis do rejestru powoduje skasowanie przerwania od urządzenia IDE. Znaczenie poszczególnych bitów -brak. Układ formatujący, bufor danych, sterownik Mikroprocesor Elektronika sterująca napędu Rys. 1. Budowa typowego dysku twardego 86 Elektronika Praktyczna 7/2002 o 43 n 19 1 * E C A I IK 44 20 2 i f d b a Rejestr Device/tłead Adres óhtt 2h 7 6 5 4 3 2 I 0 Tryb CH5 I LBA I MV m HG HSl HSO Tryb LBA I LBA I MV LBA(27:24) Dostęp - zapis/odczyt. Rys. 2. Sposób wyprowadzenia sygnałów na złącze IDC40 Rejestr Cylinder tłigh Aires 5hCS 2h 7 6 5 4 3 2 1 0 CH S< Cy I i ndc r <15:8 LBA Dostęp - zapis/odczyt. Uwaga: gdy BSY = 0, DRQ = 0 i DMACK nie jest ustawiony, można zapisywać do tego rejestru. Uwagi dodatkowe: zapis do rejestru powoduje skasowanie przerwania od urządzenia DDE. Jeżeli w rejestrze Device/Head bit LBA = 0 (CD-ROM, HDD pracuje wtedy w trybie CHS - Cylinder, Head, Sec-tor), to w tym rejestrze znajduje się startowy, starszy bajt adresu cylindra -podawany jest przy dostępie do danych. Jeżeli w rejestrze Device/Head bit LBA = 1 (CD-ROM, HDD pracuje w trybie LBA - Logical Błock Address, dane adresowane są w sposób liniowy), w tym rejestrze znajdują się bity 23...16 adresu LBA. Rejestr Cylinder Low Aires 4hCS 2h 7 6 5 4 3 2 1 0 CtłCylinder(7:0))LBA(Cylinder(15:8)) Dostęp - zapis/odczyt. Uwaga: gdy BSY = 0, DRQ = 0 i DMACK nie jest ustawiony, można zapisywać/odczytywać do/z tego rejestru. Uwagi dodatkowe: zapis rejestru powoduje skasowanie przerwania od urządzenia IDE. Jeżeli w rejestrze Device/Head bit LBA = 0 (CD-ROM, HDD pracuje wtedy w trybie CHS - Cylinder, Head, Sector), to w tym rejestrze znajduje się startowy, młodszy bajt adresu cylindra - podawany jest przy dostępie do danych. Jeżeli w rejestrze Device/Head bit LBA = 1 (CD-ROM, HDD pracuje w trybie LBA - Logical Błock Address, dane są adresowane liniowo), w tym rejestrze znajdują się bity 15...8 adresu LBA. Rejestr Danych Adres 4hCS Oh 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Data (15:0) Dostęp - do zapisu i do odczytu Uwaga: gdy BSY = 0, DRQ = 0 i DMACK nie jest ustawiony, można zapisywać/odczytywać do/z tego rejestru. Uwagi dodatkowe: zawartość rejestru nie jest ważna, gdy urządzenie jest w trybie Sleep Modę. Rejestr jest 16-bitowy. Port Danych Adres brak CS brak 15 14 B 12 11 10 9 8 7 6 5 4 3 2 10 Data(15:0) Dostęp - zapis/odczyt. Uwaga: zapis i odczyt tego portu powinien odbywać się przy ustawionej linii DMACK. Uwagi dodatkowe: rejestr 16-bitowy. Rejestr Device Control Adres ćhCS lh 7 6 5 4 3 2 10 r r r r r SUSI nIEN 0 Dostęp - rejestr tylko do zapisu, w przypadku odczytu zwracana jest zawartość rejestru Alternate Status. Uwaga: zapis powinien odbywać się, gdy DMACK nie jest ustawiony. Uwagi dodatkowe: SRST jest bitem, którego ustawienie powoduje programowe zerowanie urządzenia. Bit nIEN jest odpowiedzialny za włączenie sygnalizacji obsługi przerwania przez hosta. Uwaga: rejestr może być zapisywany tylko, gdy BSY = 0, DRQ = 0 i DMACK nie jest ustawiony. Uwagi dodatkowe: DEV jest bitem odpowiedzialnym za adres urządzenia. Gdy DEV=0 wybrane jest urządzenie Master, gdy DEV=1 wybrane jest urządzenie Slave. Gdy bit LBA=0 wybrany jest tryb adresowania CHS, w przeciwnym wypadku adresowanie odbywa się za pomocą LBA. Bit 5 powinien być ustawiony ,,1" -kompatybilność. Rejestrfrror Adres lh CS 2h 7 6 5 4 3 2 1 0 r UNC MC IDHF MCR ABRI IKONf MNf Dostęp - rejestr tylko do odczytu, zapisywanie powoduje zapis do rejestru Features. Znaczenie poszczególnych bitów: - UNC (Uncorrectable Data Error) -błąd niemożliwy do skorygowania; - MC (Media Change) - nowy nośnik jest dostępny w napędzie; - IDNF (ID not found) - żądany sektor danych o podanym ID nie został znaleziony; - MCR (Media Change Reąuest) - używany przez urządzenia z wymiennym nośnikiem. Ustawienie tego bitu sygnalizuje, że urządzenie wykryło żądanie zmiany nośnika; - ABRT (Aborted Command) - wykony- Tab. 3. Zestawienie sygnałów interfejsu IDE Sygnał Ziodło Typ sterowania (patrz uwaga 1) Pul I-lip na wyjściu hosta (patrz uwaga 2) Puli-lip przy urządzeniu (patrz uwaga 2) Uwagi Reset Host TP DD(15:0) <-> TS 3 DMARQ Device TS 5,6 kn PD 4 !DI0R/!DI0W Host TS I0RDY Device TS 1,0 kił 5 CSEL Host GND 10 kn 6 DMACK- Host TP INTRQ Device TS DA (2:0) Host TP IPDIAG Device TS 10 kn !CSO !CS1 Host TP IDASP Device OC 10 kn Uwagi: 1. TS = trójstanowy, OC = otwarty kolektor, TP = Totem-poie, PU = "podpięcie" do zasiiania, PD = "podpięcie" do masy, VS = zależne od producenta. 2. Wszystkie wartości rezystorów są minimalnymi, dopuszczalnymi. 3. Urządzenia nie powinny posiadać rezystora puii-up na DD7. Poieca się by host posiadał rezystor 0 wartości 10 kQ "podpięty" do masy. Pozwala to na wykrywanie braku urządzenia podczas inicjaii-zacjipo włączenia zasiiania. 4. Standard ATA-3 definiuje tę Unię jako trzystanową, gdy urządzenie nie jest wybrane lub, gdy nie obsługuje DMA. Gdy obsługuje transfer DMA Unia powinna być ustawiana na poziomie wysokim lub niskim. 5. Sygnał powinien być używany tyiko podczas cykiu DiOR/DiOW w aktualnie wybranym urządzeniu. 6. Linia wykorzystywana jako CSEL. Powinna być podłączona do masy przez hosta. Oba urządzenia (Master/S!ave) wymagają rezystora 0 wartości 10 kQ (pu!!-up) dołączanego do zasiiania. Elektronika Praktyczna 7/2002 87 KURS HOST Adresowane bitem DEV z rejestru Devlce/Head \ DEVICEO DEVICE1
HOST
DEV 'ICE HOST
DB/ICE
Rys. 3. Możliwe sposoby dołączania napędów do sterownika wana komenda została przerwana z powodu błędnej instrukcji lub błędnego parametru - w przypadku transmisji danych, porcja danych powinna zostać odrzucona; - TKONF - ścieżka zerowa nie została znaleziona podczas rekalibracji urządzenia; - AMNF - Address Mark Not Found, znacznik adresu nie został znaleziony po znalezieniu pola o podanym ID. Rejestr feałures Adres Ih CS 2h 7 6 5 4 3 2 10 Zawartość zależna od komendy. Uwaga: rejestr ten nie jest obecnie wykorzystywany. Rejestr Sector Count Adres 2hCS 2h 7 6 5 4 3 2 10 Dostęp - zapis/odczyt. Uwaga: rejestr powinien być zapisywany, gdy BSY = O, DRQ = O i DMACK nie jest ustawiony. Uwagi dodatkowe: rejestr zawiera liczbę sektorów, które mają być przesłane/odczytane. Gdy rejestr = O wtedy będzie przesłane 256 sektorów. Gdy po transmisji danych w rejestrze błędów są błędy - w rejestrze Sector Count znajduje się liczba sektorów potrzebnych do dokończenia transmisji żądanej liczby sektorów. Rejestr Sector Number Adres 3hCS 2h 7 6 5 4 3 2 10 Tryb CH5 Sektor (7:0) Tryb LBA LBA{7:0) Dostęp - zapis/odczyt. Uwaga: rejestr powinien być zapisywany, gdy BSY = O, DRQ = O i DMACK nie jest ustawiony. Uwagi dodatkowe: rejestr zawiera początkowy adres do medium. W zależ- ności od trybu - czy ustawiony, lub skasowany bit LBA w rejestrze Device/ Head - w rejestrze Sector Number mamy 8 bitów danych CHS lub LBA. Rejestr Status Adres 7hC 2h 7 6 5 4 3 2 10 W DRDY DF DSC DRQ CORR IDX ERR Dostęp - tylko do odczytu, przy zapisie zapisywany jest rejestr Command. Uwaga: gdy bit BSY jest ustawiony, należy zignorować wartość pozostałych bitów (z wyjątkiem BSY oczywiście). Gdy BSY=O można odczytywać pozostałe wartości bitów. Uwagi dodatkowe: odczyt tego rejestru zeruje przerwanie. - BSY - wskazuje na zajętość urządzenia. Przed zapisem lub odczytem większości rejestrów powinniśmy sprawdzać stan tego bitu. Do tego celu zazwyczaj wykorzystywany jest rejestr Alternate Status, który jest zwierciadlanym obrazem rejestru Status. Odczyt tego pierwszego nie powoduje żadnych zmian w urządzeniu IDE. - DRDY (Device Ready) sygnalizuje, że urządzenie jest w stanie przyjmować komendy. - DF (Device Fault) wskazuje na uszkodzenie urządzenia. - DSC (Device Seek Complete] głowice urządzenia zostały ustawione na wybraną ścieżkę. - DRQ (Data Reąuest), urządzenie jest gotowe do przesłania porcji danych. - CORR (Corrected Data) - wskazuje na wystąpienie błędu podczas transmisji danych, który jesteśmy w stanie poprawić (np. poprzez CRC). Ustawienie tego bitu nie powoduje zakończenia transmisji. - IDX (Index) specyficzne dla producenta. - ERR (Error) wskazuje na wystąpienie błędu. Błąd wystąpił w wyniku wykonania poprzedniej komendy. Transmisja danych zostanie przerwana. Przyczynę wystąpienia tego błędu dodatkowo pokazuje rejestr Error. Paweł Dienwebel pelos@pelos.pl Tab. 4. Funkcje rejestrów 1/0 oraz przypisane im adresy Adresy Funkcje rejestrów CSO CS1 DA2 DA1 DAO Magistrala danych dla Read (DIOR) Magistrala danych dla Write(DIOW) N N X X X Wysoka impedancja Nie używana Rejestry Control Błock j N A 0 X X Wysoka impedancja Nie używana N A 1 0 X Wysoka impedancja Nie używana N A 1 1 0 Alternate Status Device Controi N A 1 1 1 (uwaga 1) Nie używana Rejestry Command Błock A N 0 0 0 Data Data A N 0 0 1 Error Features A N 0 1 0 Sector Count Sector Count A N 0 1 1 Sector Number LBA (7:0) (uwaga 2) Sector Number LBA (7:0) (uwaga 2) A N 1 0 0 Cylinder Low LBA (15:8) (uwaga 2) Cylinder Low LBA (15:8) (uwaga 2) A N 1 0 1 Cylinder High LBA (23:16) (uwaga 2) Cylinder High LBA (23:16) (uwaga 2) A N 1 1 0 Device/Head LBA (27:24) (uwaga 2) Device/Head LBA (27:24) (uwaga 2) A N 1 1 1 Status Command A A X X X Niedozwolony addres Niedozwolony addres Uwagi: 1. Ten rejestr nie jest stosowany we współczesnych sterownikach napędów. 2. Mapowanie rejestrów w trybie LBA. Oznaczenia stanów na Uniach adresowych: A - sygnał ustawiony, N - sygnał zanegowany, x-bez znaczenia Elektronika Praktyczna 7/2002 S P Od chwili rozstania z Sony, Tektronix niemal co roku przygotowuje dla swoich odbiorców interesujące nowości. Jest to pierwsza firma, która dostrzegła potencjał drzemiący w rynkowych "średniakach", a nawet "maiuchach", co zaowocowało wprowadzeniem na światowe rynki nowoczesnych, a przy tym stosunkowo tanich oscyłoskopów cyfrowych. Dła "małuchów" opracowano, opisywane już na łamach EP, oscyłoskopy z rodziny TDS200, a z mysią o "średniakach" powstała rodzina oscyłoskopów DPO - TDS3000. OOi) Rodzina oscyloskopów Tektronix Doświadczenia zebrane przez kilka lat sprzedawania oscyloskopów TDS3000 umożliwiły ich modyfikację i firma Tektronix wprowadziła na rynek w roku 2001 oscyloskopy w wersji TDS3000B. Na pierwszy rzut oka nie jest możliwe rozróżnienie oscyloskopów ze starej i nowej rodziny, co - biorąc pod uwagę aktualne trendy rynkowe - budzi zdumienie. Należy się więc spodziewać, że skoro producent nie poszedł najprostszą drogą polegająca na zrobieniu face-liftingu obudowy, to istotne zmiany wprowadzono do wnętrza oscyloskopu. Tak też jest w rzeczywistości. TDS3000 - cyfrowe oscyloskopy jak analogowe Oscyloskopy z rodziny TDS3000 są przyrządami o niewielkich gabarytach i ciężarze (co pozwala stosować je w pracach serwisowych), które mają jednocześnie bardzo dobre parametry pomiarowe (dzięki temu można je stosować w pomiarach laboratoryjnych). Walory użytkowe zwiększają bez wątpienia: kolorowy wyświetlacz LCD o wymiarach matrycy zgodnej zVGA (640x430 punktów), kontekstowe menu wyświetlane na ekranie i obsługiwane za pomocą 12 przycisków, a także szereg funkcji upraszczających obsługę oscyloskopu, praktycznie niemożliwych do zrealizowania w oscyloskopach analogowych i stosunkowo rzadko dostęp- Tab. 1. Wykaz modułów uaktywniających dodatkowe funkcje pomiarowe oscyloskopów TDS3000. x TDS3TMT - Telecom rnask TesTing apphcation module k TDS3AAM x TDS3LIM x TDS3FFT x TDS3TRG module x TDS3VID - module x TDS3SDI - I -Advancedanalysis module - Lirnit test module - Fast louner Transforrn module i - Advanced tngger apphcation - ExTended video apphcation -601 serial digital video module 70 Elektronika Praktyczna 1/2002 SPRZĘT Tab. 2. Różnice w wyposażeniu pomiędzy wybranymi oscyloskopami rodzin TDS3000 i TDS3000B. TDS3012 TDS3054 TDS3012B TDS3054B Pasmo analogowe 100 MHz 500 MHz 100MHZ 500 MHz Liczba kanałów 2 4 2 4 Częstotliwość próbkowania w każdym z kanałów 1,25 GS/s 5 GS/s 1.25GS/S 5 GS/s Funkqa automatycznego wykrywania anomalii w mierzonym przebiegu WaveAlert Brak Brak Standard Standard Oprogramowanie eScope umozhwiaiące zdalną konfigurację oscyloskopu *) *) Standard Standard Karta sieciowa Ethernet Opcja Opcja Standard Standard Wejście wyzwalania zewnętrznego Jest Brak Jest Jest Liczba automatycznie realizowanych pomiarów 21 21 25 25 FFT Opcja Standard Standard Standard Zaawansowane Tryby wyzwalania Logic/Pulse/Slew Opcja Standard Standard Standard Wskaźniki pomiarów *) *) Tak Tak KursoryX-Y *) 1 Tak Tak *) Dostępne wrazz nową wersją oprogramowania firrnware nych w oscyloskopach oferowanych przez firmy konkurencyjne. Oprócz pozornie banalnych udogodnień, jak np. automatyczne wykonywanie pomiarów podstawowych parametrów śledzonych sygnałów czy samoczynna synchronizacja generatora podstawy czasu oscyloskopu z nie-okresowymi przebiegami zewnętrznymi, a także możliwość błyskawicznego "ściągnięcia" kursorów na ekran, oscyloskopy TDS3OOO wyposażono w zaawansowany mechanizm obróbki wyników pomiarów, pozwalający traktować je na równi z wynikami uzyskiwanymi za pomocą oscyloskopów analogowych. Poważna wada klasycznych oscyloskopów cyfrowych polega na trudności wykrywania krótkotrwałych, nieregularnych zakłóceń impulsowych występujących na tle przebiegu okresowego. To powoduje, że oscyloskopy te nie mogą być traktowane jako wiarygodne przyrządy pomiarowe w bardzo wielu aplikacjach. Chcąc zlikwidować tę wadę, Tektro-nix opracował mechanizm nazwany DPO (Digital Phosphor Oscilloscope), którego zasada działania jest zbliżo- na do zasady działania stosowanych niegdyś lamp oscyloskopowych z "pamięcią", polegającą na zastosowaniu luminoforu z fosforu o długim czasie poświaty. Standardowym wyposażeniem oscyloskopów TDS3OOO jest m.in. wbudowana stacja dyskietek 3,5", którą można wykorzystać do rejestracji przebiegów (także w postaci "zrzutów" ekranu w wielu możliwych formatach); może ona spełniać także rolę podręcznej pamięci służącej do przechowywania m.in. własnych wzorów masek pomiarowych. Oscyloskop wyposażono w szereg funkcji przydatnych w specyficznych pomiarach (jak m.in. maski amplitud owo-czas owe lub fazowe dla sygnałów impulsowych, zaawansowane tryby wyzwalania czy pomiary wartości parametrów dla zadanych przez użytkownika poziomów referencyjnych). Są one uruchamiane za pomocą miniaturowych modułów-kluczy, instalowanych w specjalnych gniazdach umieszczonych z boku obudowy oscyloskopu (fot. 1). Widok przykładowej maski pomiarowej wyświetlanej na ekranie oscyloskopu pokazano na rys. 2. W przypadku korzystania z modułu TDS3LIM, przekroczenie zadanego przez użytkownika okna wartości dopuszczalnych może być sygnalizowane akustycznie, co umożliwia wykorzystanie oscyloskopu jako inteligentnego miernika kom para cyjn ego w aplikacjach przemysłowych lub śledzenia przebiegów zmieniających się w czasie. Wykaz dostępnych modułów rozszerzających możliwości pomiarowe oscyloskopów TDS3OOO zawarto w tab. 1. Gniazda wejściowe wyposażono w dodatkowe pola kontaktowe umożliwiające zasilenie aktywnych sond pomiarowych, których spory wybór (optymalizowanych dla różnych aplikacji) oferuje producent. TDS3OOOB - znacznie więcej niż kosmetyka Podstawowe możliwości i parametry oscyloskopów TDS3OOOB są podobne, co doskonale widać w skróconym zestawieniu zawartym w tab. 2. Najpoważniejsze różnice dotyczą wyposażenia oscyloskopów. Jak łatwo zauważyć, interfejs Ethernet, zaawansowane tryby wyzwalania, moduł FFT oraz wykrywanie zakłóceń w mierzonym sygnale są standardowym wyposażeniem oscyloskopów z rodziny TDS3OOOB. Także wcześniejsze upgrade'y oprogramowania sterującego pracą oscyloskopu (firm- Tab. 3. Zestawienie podstawowych parametrów oscyloskopów tworzą cyc h rodzinę TDS3000B. TDS3012B TDS3014B TDS3032B TDS3034B TDS3052B TDS3054B Pasmo analogowe 100MHZ 100 MHz 300 MHz 300 MHz 500 MHz 500 MHz Liczba kanałów 2 4 2 4 2 4 Częstotliwość próbkowaniaw każdym kanale 1,25 GS/s 1,25 GS/s 2,5 GS/s 2,5 GS/s 5 GS/s 5 GS/s Maksymalna długość rekordu próbek 10000 punktów Rozdzielczość pionowa 9 bitów Zakres czułości wejścia Y 1mV iOV/działkę Dokładność przetwarzaniatoru Y ą2% Maksymalne napięcie wejściowe 150VRMS CATI (300V CAT II z sondą pomiarową 10x) Opcjonalny ogranicznik pasma analogowego 20 MHz 20MHz 20, 150 MHz 20, 150 MHz 20, 150 MHz 20, 150 MHz Zakres podstawy czasu 4ns 10s/dz 4ns 10s/dz 2ns 10s/dz 2ns 10s/dz 1ns 10s/dz 1ns 10s/dz Dokładność podstawy czasu 20 ppm 20 ppm 20 ppm 20 ppm 20 ppm 20 ppm Wyświetlacz Kolorowy LCD VGA z podświetleniem fluorescencyjnym Elektronika Praktyczna 1/2002 71 SPRZĘT Rys. 2. ware'u) wprowadzono do rodziny TDS3000B, dzięki czemu liczba standardowych pomiarów wzrosła do 25. Dostępne są rozszerzone wskaźniki pomiarów oraz kursory w osiach X i Y. Możliwe jest także zdalne obsługiwanie oscyloskopu dzięki oprogramowaniu eScope. Wraz z wprowadzeniem do sprzedaży oscyloskopów TDS3000B zmniejszono liczbę dostępnych modułów peryferyjnych montowanych w tylnej części obudowy. Zamiast dotychczasowych dwóch modułów komunikacyjnych wprowadzono jeden - TDS3GV, w którym zintegrowano interfejsy GPIB, wyjście na zewnętrzny monitor VGA oraz RS-232. Atrakcyjne uzupełnienie możliwości prezentowanych przyrządów zapewnia także nowy moduł TDS3PRT mechanicznie kompatybilny z TDS3GV, w którym zintegrowano drukarkę termiczną. Jak wcześniej wspominano, podstawowe parametry pomiarowe nowych oscyloskopów są praktycznie identyczne z oferowanymi przez starszych "braci". Dostępnych jest 6 wariantów przyrządów 2- i 4-kanałowych o paśmie analogowym od lOOMHz aż do 500MHz (tab. 3). Dzięki zastosowaniu bardzo wysokiej częstotliwości próbkowania (ok. 10-krotnie wyższej niż górna częstotliwość pasma analogo- wego), jakość prezentowanych wyników, zwłaszcza w przypadku przebiegów nieokresowych jest wysoka. Korzystanie z przyrządu ułatwia także pamięć przechowująca do 10000 gromadzonych kolejno próbek, dzięki której można po pomiarze przeanalizować zjawiska występujące w zarejestrowanym sygnale. Pod sumowanie Wprowadzenie na rynek oscyloskopów TDS3000B trudno uznać za przełom porównywalny z wprowadzeniem TDS3000. Jest to zgodne z zamierzeniami producenta, który umiejętnie rozwija dobrze sprawdzone rozwiązania, nie epatując swoich odbiorców tak ostatnio popularnymi zmianami "gadżet owy mi". Ważne jest także, że wydatek związany z tym postępem nie jest wysoki, ponieważ oscyloskopy rodziny TDS3000B są dostępne w cenach niemal identycznych z cenami odpowiednich modeli rodziny TDS3000. Biorąc pod uwagę znacznie bogatsze (zazwyczaj kosztowne) wyposażenie standardowe, które w wielu przypadkach jest wręcz niezbędne, może się okazać, że lepiej znaczy taniej. Andrzej Gawryluk, AVT Dodatkowe informacje Oscyloskop do testów udostępniła redakcji firmaTektronixPolska, www.tektronix.pl. Dodatkowe informacje o oscyloskopach lirrny Tektronix są dostępne naptycie CD-EP1/2002B oraz w Internecie pod adresem: http://www.tek.-com/Measurement/scopes/escope/overview/ index.html. Dodatkowe informacje o systemie DPO są dostępne w Internecie pod adresem: http://www,-Tek.com/Measurement/scopes/dpo/. 72 Elektronika Praktyczna 1/2002 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 260,- zł (brutto) za 1 stronę w EP. Przysyłanych tekstów nie zwracamy. Redakcja zastrzega sobie prawo do dokonywania skrótów. Adapter do programowania mikrokontrolerów 89C51 w programatorach 89CX051 Mikrokon trolery z rodziny MCS-51 produkowane przez firmę Atmel zdobyły sobie ogromną popularność wśród elektron ikó w. Ich ogromn ą zaletą jest wbudowana pamięć programu typu Flash, umożliwiająca wielokrotne programowanie tego samego procesora. Śmiem twierdzić, że programator procesorów 89CX051 jest najczęściej spotykanym wśród hobbystów urządzeniem tego typu, a to ze względu na łatwą budowę i niskie koszty jego wykonania. Wszystkim tym, którym 20 wyprowadzeń już nie wystarczy, proponuję wykonanie przejściówki umożli wiającej zaprogramowanie procesora typu 89C51 i 89C52 (z ograniczeniem pamięci programu do 4kB) w programatorze pierwotnie przystosowanym do programowania procesorów 89C4051. Projekt 101 Budowa i działanie Aby zrozumieć zasadę działania układu warto zerknąć na tab. 1 tab. 2. Zawarto w nich zestawienie sygnałów sterujących programowaniem układów 89C4051 i 89C51/52. Widać tutaj ogromne podobieństwo, a niektóre z wyprowadzeń mają wręcz swoje dokładne odpowiedniki! W układzie 89C51 trzeba jeszcze odpowiednio wyste-rować wyprowadzenia RST i PSEN i wydawało by się, że to wszystko. Właśnie w tym miejscu tkwi pułapka. Małe mikrokontrolery ze względu na ograniczoną liczbę wyprowadzeń mają wbudowany do swego wnętrza licznik adresu wpisywanego kodu. W przypadku ich większych ,,braci" niezbędne jest podawanie na odpowiednie wyprowadzenia adresu pod który chcemy zapisać daną. Konieczne okazało się więc dodanie układu U3 (rys. 1) wraz z elementami Tl i Rl odpowiedzialnymi za jego zerowanie. Co prawda, zgod- nie z tab. 1, licznik powinien być zerowany przy narastającym zboczu na wejściu RST Ul (w proponowanym rozwiązaniu zerowanie odbywa się przy stanie niskim) eksperymenty wykazały jednak, zgodnie zresztą z oczekiwaniami, że przedstawiony obwód świetnie spełnia swoje Tab. 1. Sygnały wykorzystywane podczas programowania procesorów 89C4051 Tryb /Końcówka RST/ Vpp P3.2/ Próg P3.3/ S1 P3.4/ S2 P3.5/S S3 P3.7/S S4 Zapis danych 12V w* L H H H Odczyt danych H H L L H H Bit zabezpieczający B1 12V w* H H H H Bit zabezpieczający B2 12V w* H H L L Kasowanie pamięci programu 12V \__/** H L L L Odczyt sygnatury H H L L L L OOOh-producent 001 h- typ układu Uwagi: 1. Wewnętrzny licznik adresów jest zerowany przy przy zboczy narastającym na wejściu RST 2. Licznik jest inkrementowany dodatnim impulsem na wejściu XTAL1 * - impuls ujemny o czasie trwania 1...110u.s ** - impuls ujemny o czasie trwania 10ms Elektronika Praktyczna 7/2002 89 PROJEKTY CZYTELNIKÓW Rys. 1 zadanie. Tak, jak w małym mikrokontrolerze i tutaj stan licznika jest zwiększany przez dodatni impuls na wejściu XTAL1. Wyjaśnienia wymaga jeszcze rola zworki Jl. Jej ustawienie będzie zależne od tego czy układ, który chcemy programować wymaga napięcia programującego o wartości 12 czy 5V. Odpowiedni opis znajduje się na płytce drukowanej. Ograniczenia wprowadzane przez adapter Za pomocą prezentowanej w artykule przystawki nie będzie możliwy odczyt sygnatury układu bez zmiany oprogramowania sterującego programatorem. To samo dotyczy możliwości programowania bitu zabezpieczającego B3. W praktyce ograniczenia te nie są jednak zbyt dokuczliwe. Podczas korzystania z adaptera należy pamiętać, aby w programie obsługującym programatora ręcznie ustawić typ układu na 89C4051. W innym przypadku nie zostanie wykorzystana cała pamięć programowanego mikrokont-rolera. Montaż i uruchomienie Schemat montażowy płytki pokazano na rys. 2, a mozaikę ścieżek na rys. 3. Ze względu na chęć ograniczenia kosztów, została ona zaprojektowana jako jednostronna. WYKAZ ELEMENTÓW Rezystory Rl: 10kQ Kondensatory Cl, C2: 20...40pF Półprzewodniki U3: CMOS 4040 Różne Ul: podstawka DIL20 U2: podstawka precyzyjna DIL40 Jl: goldpin zjumperem Xl: rezonator kwarcowy 4...20MHZ Kabel piaski 20-żyłowy zakończony wtykami emulacyjnymi Pociągnęło to za sobą konieczność użycia kilku zworek oznaczonych na płytce kreskami. Od nich właśnie musimy rozpocząć montaż. Pozostałe elementy montujemy w standardowy sposób. W miejsce Ul montujemy albo podstawkę, w którą następnie wepniemy kabel zakończony z obydwu stron wtykiem emulacyjnym, albo lutujemy wtyk bezpośrednio do płytki. Radosław Koppel Tab. 2. Sygnały wykorzystywane podczas programowania procesorów 89C51/52 Tryb /Końcówka RST PSEN ALE/PROG EA/Vpp P2.6/S1 P2.7/S2 P3.6/S3 P3.7/S4 Zapis danych H L w* 12V*** L H H H Odczyt danych H L H H L L H H Bit zabezpieczający B1 H L w* CSJ H H H H Bit zabezpieczający B2 H L w* CSJ H H L L Bit zabezpieczający B3 H L w* CSJ H L H L Kasowanie pamięci programu H L \___/** CSJ H L L L Odczyt sygnatury H L H H L L L L 030h -producent 031h-typ układu 032h - napięcie Vpp pooóoóotfg ooooooooo 8051 IQQXGG81 ?noooooooooogooooooc ^ooon nooooooooooooooa o o aaooooaai Rys. 2 Rys. 3 90 Elektronika Praktyczna 7/2002 NOWE PODZESPOŁY Zintegrowany podczerwieni Do urządzeń sterowanych za pomocą podczerwieni firma ATMEL przygotowała scalony układ odbiornika o dużych możliwoS-ciach adaptacyjnych do zmiennych warunków zewnętrznego oSwietlenia i natężenia sygnału użytecznego. Układ T2525 wyposażony jest w wewnętrzne systemy automatyki, które poprawiają odbiór nawet przy pojawieniu się niekorzystnych warunków dla transmisji torem podczerwieni. Układ T2525 przystosowany jest do odbioru sygnałów modulowanych amplitudowo i częstotliwoScio-wo. Jego pasmo odbiorcze jest bardzo wąskie i z tego powodu występuje w licznych odmianach dla konkretnych częstotliwości Środkowych, w zakresie od 30kHz do 76kHz. Oprócz napięcia zasilającego 4,5...5,5V, do odbiornik Aam układu należy jeszcze dołączyć diodę odbiorczą PIN. Układ pracuje w temperaturze od -25C do +85C. Obudowy w jakich jest produkowany to SO8 i TSSO8. http://www.atmel-wm.com/upload/ doc3bcea51149ef7.pdf Przedstawicielami Atmela w Polsce są firmy: Codico (tel. (51) 642-88-00), Gamma (tel. (22) 663-83-76) i JM Elektronik (tel. (32) 339-69-00) i MSC Polska (tel. (32) 330-54-50). Rys. 1. Miniaturowy wzmacniacz audiO ^National Semiconductor Pod koniec ubiegłego roku firma National Semiconductor wprowadziła do produkcji nowy typ miniaturowego wzmacniacza audio przeznaczonego do sprzętu powszechnego użytku. Maksymalna ciągła moc wyjSciowa wzmacniacza, wydzielana w obciążeniu 8H, wynosi 1W. Układ można zasilać napięciem o wartoSci 2,2V...5,5V. GND 30k Rys. 2. Nie ma potrzeby stosowania wyjSciowego kondensatora sprzęgającego, gdyż głoSnik może być dołączany bezpoSrednio do wyjSć różnicowych wzmacniacza. Układ może być szybko wprowadzony w tryb zmniejszonego poboru mocy za pomocą dwóch linii sterujących - pobór prądu wynosi wtedy jedynie O.lmA. Układ LM4895 jest dostępny w różnego typu obudowach, m.in. w MSOP10, miniaturowej LLP i nietypowej miniaturowej obudowie 9-wyprowadzeniowej do montażu powierzchniowego. Układ może pracować w temperaturze od -40C do +85C i jest zabezpieczony przed przebiciem ładunkiem elektrostatycznym 0 potencjale do 2000V. http://www.national.com/ds/LM/ LM4895.pdf Przedstawicielami National Semiconductor w Polsce są firmy: EBV (tel. (71) 342-29-44), Macropol (tel. (22) 822-43-37) 1 Spoerle (tel. (22) 606-04-47). Elektronika Praktyczna 1/2002 73 NOWE PODZESPOŁY Nowość w klasie T Firma Tripath rozpoczęła produkcję wzmacniacza klasy T oznaczonego symbolem TA3020. Uldad jest stereofonicznym wzmacniaczem akustycznym o maksymalnej mocy wyjściowej 300W (na kanał] przy oporności obciążenia 4Q. Tak dobre parametry uzyskano dzięki znanej naszym Czytelnikom impulsowej technice sterowania dołączonego obciążenia DPP [Digital Power Processing), która łączy zalety klasy AB (wysoka jakość odtwarzania sygnału audio] i klasy D (wysoka sprawność i wynikająca z tego możliwość stosowania niewielkich radiatorów]. Współczynnik zniekształceń nieliniowych, przy mocy wyjściowej 50W, nie przekracza 0,02%, natomiast 95% to sprawność wzmacniacza dla mocy wyjściowej do 150W. Elementami mocy są tranzystory MOS-FET, które podobnie jak stosunkowo niewielka liczba dodatkowych elementów, są dołączane do wyprowadzeń układu scalonego. Do zasilania wzmacniacza niezbędne są cztery napięcia: +45V, -45V, +5V i +1OV. Układ wyposażony został w funkcję wyciszania, a jego wyjścia są zabezpieczone przed zwarciem. Istnieje także zabezpieczenie przed zbyt wysokimi napięciami zasilającymi. Układ jest montowany w 48-końcówkowej obudowie DIP. http ;//www. tripath.c oni Id ownlo a dsf TA3020_0301.pdf Przedstawicielem firmy Tripath w Polsce jest firma Elatec-Poland (teI. {12} 294-10-50}. Miniaturowe tranzystory mocy IOR IRF wykonał następny krok w kierunku miniaturyzacji kluczy prądowych MOSFET przeznaczonych do stosowania w aplikacjach niskonapięciowych, szczególnie w sprzęcie przenośnym. Nowe elementy oznaczone symbolem IRF5810 integrują w obudowie TSOP6 (wymiary 1,3x2,9mm) dwa tranzystory HEX-FET z kanałem P o dopuszczalnym prądzie drenu 2,9A. Rezystancja włączonego kanału wynosi l35mQ przy napięciu polaryzującym bramkę o wartości 2,7V i ok. 90mQ przy napięciu polaryzującym bramkę tranzystora 4,5V. http://www.irf.com/product-info/datashe-ets/data/irf5310.pdf Przedstawicielami IRF w Polsce są firmy: Dacpol (iel. {22} 757-07-13}, Fuiure {iel. {22} 813-92-02}, SE Spezial Electronic {iel. {0300} 18-00-39} i Spoerle {iel. {71} 848-52-27}. 74 Elektronika Praktyczna 1/2002 NOWE PODZESPOŁY System zarządzania zasilaniem Układ LTC1960, produkcji Linear Technology, służy do budowy systemu zarządzania zasilaniem, w skład którego wchodzą trzy źródła: dwa akumulatory i dowolne inne zewnętrzne źródło zasilania. W przypadku zaniku zasilania ze źródła zewnętrznego układ dołącza obciążenie do jednego z dwóch akumulatorów. Jeśli zewnętrzne zasilanie funkcjonuje prawidłowo, układ realizuje bardziej złożone funkcje, jak np. naprzemienne doładowywanie akumulatorów lub zaprogramowane wczeSniej okresowe rozładowywanie i ponowne ich ładowanie. LTC1960 realizuje funkcję awaryjnego przełączania zasilania w sposób autonomiczny, natomiast inne zadania wykonuje we współpracy z zewnętrznym procesorem, który programuje jego działanie. Procesor komunikuje się z układem za poSrednictwem 4-przewodowej magistrali SPI. Korzystając z niej procesor może zapisać i odczytać dane z czterech wewnętrznych rejestrów układu. Poszczególne bity rejestrów pozwalają sterować wyborem źródła zasilania, inicjować proces ładowania akumulatorów oraz wpisywać żądaną wartoSć do rejestrów dwóch przetworników cyfrowo-analogowych mających wpływ na kontrolę maksymalnego napięcia i prądu ładowania. Dodatkowo, układ może nadzorować prąd wyjSciowy i odłączać zasilanie w przypadku, gdy prąd obciążenia przekroczy ustaloną wartoSć. Napięcie zewnętrznego źródła i akumulatorów może mieć wartoSć 6...28V. Funkcję przełączników źródeł zasilania pełnią zewnętrzne tranzystory MOSFET, którymi układ steruje. Układ zamykany jest w obudowie SSOP z 36 wyprowadzeniami. Temperatura pracy powinna mieScić się w przedziale od -40C do +125C. DC-------> TECHNOLOGY http://www.linear.com/prod/datas-heet.html?datasheet=774 Przedstawicielami Linear Technology w Polsce są firmy: Eurodis (tei. (71) 301-04-00), Macropol (tel. (22) 822-43-37) oraz Memec-Insight (tel. (32) 238-03-60). -^System Power Ml kro kontro er >SMBus Rys. 4. Nowy zegar czasu rzeczywistego Układ DS1337 jest nowym w ofercie firmy Maxim scalonym zegarem czasu rzeczywistego, komunikującym się z układami ze- OSCILLATOR AND DIYEJER SGL SDA SERIAL BUS BTTERFACE CONTROL LOGIC ADDRESS REGISTER CLOC&, CALENDAR, AND ALARM REGBSTERS Rys. 5. wnętrznymi za poSrednictwem magistrali I2C. Układ zlicza sekundy, minuty, godziny, oraz podaje datę z uwzględnieniem korekty związanej z latami przestępnymi do roku 2100. Ciekawostką jest możliwoSć ustawie-^ nia dwóch niezależnych alarmów, zarówno czasu jak i daty. _ Zależnie od ustawienia bitu w wewnętrznym rejestrze sterującym, każdy z alarmów będzie sterował własnym wyjSciem IN-TA, INTB lub wystąpienie któregokolwiek z alarmów spowoduje pojawienie się poziomu niskiego na wyjSciu INTA. Przy wybraniu takiej opcji pracy, wyprowadzenie SQW/INTB wykorzystywane jest jako wyjScie sygnału prostokątnego. Częstotli-woSć impulsów na tym wyjSciu może być równa częstotliwości oscylatora zegara, /i/i/j xi/i/i czyli 32,768kHz, albo po uwzględnieniu zaprogramowanych podziałów wynosić może 8,192kHz, 4,096kHz lub lHz. Do normalnej pracy układ wymaga dołączenia z zewnątrz jedynie kwarcu o częstot-liwoSci rezonansowej 32,768kHz i zasileniu napięciem o wartoSci od 1,8V do 4V. Prąd pobierany przez zegar nie przekracza 600nA. Układ występuje w 8-wyprowadzeniowych obudowach typu SO lub [iSOP. Pracuje w temperaturze od -40C do +85C. http://pdfserv.maxim-ic.com/arpdf/ DS1337.pdf Przedstawicielem Maxima w Polsce jest firma SE Spezial Electronic (tel. (0800) 16-00-39). ATmegal28 już dostępne Rozpoczęła się sprzedaż "największego" obecnie procesora rodziny AVR produkowanego przez Atmela. Procesor ATmegal28 jest rozwinięciem układu ATmegal03 i posiada wiele dodatkowych atutów. Maksymalna częstotliwość zegara wynosi 16MHz, procesor posiada wbudowany interfejs JTAG pozwalający na programowanie oraz podłączanie emulatora JTAGICE. Podstawowe dane i wyposażenie procesora: 128kB pamięci programu Flash, 4kB pamięci EEP-ROM, 4kB pamięci SRAM, 6-kanałowy PWM, 2 timery/liczniki 16-bitowe oraz dwa 8-bitowe, sprzętowy RTC, watchdog, 2 programowane interfejsy szeregowe USART, 2-liniowy SPI (kompatybilny z I2C). Ponadto procesory wyposażono w sprzętowy układ mnożący i 8-kanałowy przetwornik A/C. Do dyspozycji konstruktora jest aż 53 programowanych linii I/O. Blok obsługi przerwań jest przystosowany do współpracy z 29 źródłami, w tym aż 8 może pochodzić z zewnątrz. Układy są oferowane w obudowie TQFP64. http://www.atmel.com/atmel/acrobat/ doc2467.pdf MmL Przedstawicielami Atmela w Polsce są firmy: Codico (tel. (51) 642-88-00), Gamma (tel. (22) 663-83-76) i JM Elektronik (tel. (32) 339-69-00) i MSC Polska (tel. (32) 330-54-50). Elektronika Praktyczna 1/2002 75 NOWE PODZESPOŁY Nowy programowany generator Układ DS1077L wyprodukowany przez firmę Maxim jest reprogramowalnym genera-torem/oscylatorem, który uzupełnia pokaźną już rodzinę tego typu elementów. Nowy układ w porównaniu z poprzednikami wyposażony został w kilka dodatkowych funkcji poszerzających jego możliwoSci. Układ jest przeznaczony do generowania fali prostokątnej w szerokim zakresie częstot-liwoSci i może być wykorzystywany jako źródło impulsów zegarowych m.in. mikrokontro-lera, a nawet szybkich procesorów. Wewnętrzny oscylator i rejestry dzielące umożliwiają, zależnie od typu elementu, generację przebiegu o częstotliwości od 66,66MHz do IINTERNAL OSCILLATOR DIV1 0M1 OMO 1M1 1M0 ENO SELO PDNO PDN1 CONTROL REdSTERS POPRESCALBR (MDIYIDBR) 0M1 OMO P1PRESCALER fMDIYIDERi 4 4 tr 4,87kHz. Impulsy podawane są na dwa wyjScia: podstawowe OUT1 i pomocnicze OUTO. Schemat blokowy układu pokazany jest na rysunku. Jak z niego wynika, częstotliwość wewnętrznego generatora zostaje wstępnie podzielona przez programowalne preskalery. Stopień podziału okreSlany odpowiednimi bitami jednego z wewnętrznych rejestrów i może być równy 1, 2, 4 lub 8. W przypadku sygnału podawanego na wyjScie główne OUT1 często tliwoSć sygnału jest dodatkowo dzielona przez dzielnik o współczynniku podziału wpisanym do rejestru "N". WartoSć tego współczynnika mieSci się w zakresie od 1 do 1025. Częstotliwość drugiego sygnału wyjSciowego SELO" Ś> ENO FDNO Selact CONTROL LOGIC M ^^ MVI ~ Ś _____Ł. _________J PROGRAMU I RnaUf Power-Down I PROGRAMMABLE "N" DIVIDER 2-WIRE INTERFACE 8DA SCL Rys. 6. CONTROL LOGIC /l/l/J XI/l/l nie jest dodatkowo dzielona. Za poSrednict-wem multipleksera i układów wyjSciowych jest on podawany bezpoSrednio na OUTO. Stan układów wyjSciowych obu sygnałów kontrolują bloki logiki. Bloki wyjSciowe zależnie od trybu pracy mogą m.in. dołączać sygnały do wyjSć OUT1 i OUTO, wprowadzać wyjScia w stan wysokiej impedancji lub obniżać pobór mocy wprowadzając cały układ w stan uSpienia. Wszystkie parametry układu programuje się przy pomocy magistrali I2C. Dotyczy to zarówno okreSlenia stopnia podziału pre-skalerów i rejestrów dzielącym jak i trybu pracy układów wyjSciowych. Konstrukcja generatora pozwala zmieniać częstotliwość impulsów wyjSciowych w czasie normalnej pracy bez koniecznoSci wyłączenia zasilania i reprogramowania układu poza systemem w którym pracuje. Nastawy zapamiętywane są w wewnętrznej pamięci EEPROM i każdorazowo odtwarzane po włączeniu zasilania. Układ DS1077 wymaga napięcia zasilającego w zakresie 2,7...3,6V i zależnie od generowanej częstotliwości i poziomu zasilania pobiera prąd do 30mA. Temperatura otoczenia w czasie pracy może się wahać od 0C do +70C. Układ wytwarzany jest w 8-wyprowadzeniowych obudowach SO i [iSOP. http://pdfserv.maxim-ic.com/arpdf/ DS1077L.pdf Przedstawicielem Maxima w Polsce jest firma SE Spezial Electronic (tel. (0800) 16-00-39). Internetowy mikrokontroler Układ IP2022 firmy Ubicom jest jednym z lepiej sprzętowo i narzędziowo "uzbrojonych" małych procesorów. Wyliczenie tylko niektórych z jego cech i właSciwoSci może przyprawić o zawrót głowy. Procesor oparty jest na RlSC-owej architekturze, a jego moc obliczeniowa sięga lOOMIPS-ów. Od strony sprzętowej wyposażony jest m.in. w 64-kilobajtową pamięć programu typu Flash, 16 kilobajtów pamięci danych i 4 kilobajty wewnętrznej pamięci RAM ogólnego zastosowania. [CustomerAgpJlcatlon! |_ Tffmf MTP/TFTP "! ! """tCPJUDP ' IP/ICMP ii [_N_etwork AccessLayerj -g ! ~~PHY~FirTnware " " ~ Oprócz tego, do dyspozycji są dwa 16-bitowe timery z preskalerami i możliwoS-cią pracy w trybie licznika lub modulatora PWM. Ponadto, dziesięciobitowy, 8-wej-Sciowy przetwornik ADC, dwa 8-bitowe liczniki-ze gary (z których jeden może pracować jako zegar czasu rzeczywistego), wewnętrzny watchdog, osiem zewnętrznych wejSć przerwań. Ogółem do dyspozycji jest 52 uniwersalnych wejSć/wyjSć pogrupowanych w 8-bitowe porty, z których jeden ma wydajnoSć prądową 24mA i nada- Chdces for Communication: HostBus Ś 10Base-T Ethernet USB 1.1 GPSI SPI UART/Modem Bluetootfi HCI Rys. 7. IP2022 ipOS Operating System S/15-Bil Parallel Slave Port internat Procassor CPU hfohSpeed 4 Serial IM1 (SERDES) 64-Kbyte Flash Memory 5 Timers 16-Kbyte Inst./Data RAM PLL Clock Multiplier 4-Kbyte Data RAM 8-lnput 10-Bit A/DC General Purpose l/O Porta ISP/ISD Interface (SERDES) ISA |2C General-Purpose l/O 10Base-T Ethernet USB 1.1 GPSI SPI UART/Modem Bluetooth HCI UBicom TM je się do bezpośredniego sterowania np. diodami LED. Układ jest zasilany napięciem 2,3...2,7V, jednak toleruje sygnały wejSciowe w standardzie 5V. Producent oferuje także silne wsparcie narzędziowe dla programistów piszących oprogramowanie dla tego procesora. Dostępny jest kompilator C i debuger wspierany udogodnieniami sprzętowymi samego procesora. Jest możliwoSć programowania procesora w systemie, co ułatwia wymianę jego oprogramowania na nowszą wersję. Wykorzystując możliwoSci sprzętowe układu i dostarczane oprogramowanie można przystosować układ do pracy z takimi interfejsami, jak: I2C, SPI, UART, USB, GPSI czy lOBase-T Ethernet. Dzięki temu procesor może być użyty jako wydajny mostek pomiędzy różnego typu szeregowymi interfejsami. Można także za pomocą protokołu sieciowego stosunkowo łatwo połączyć go z Internetem. http://www.ubicom.com/products/pro-cessors/IP2022 home.html 76 Elektronika Praktyczna 1/2002 NOWE PODZESPOŁY Zasilacz białych LED-ów Jak się okazuje, coś nowego można wnieść nawet do tak banalnego zadania, jakim jest zasilanie diod LED. Układ LTC3202 firmy LinearTechnology skonstruowany został specjalnie z myślą o zasilaniu białych diod elektroluminescencyjnych. Układ scalony, będący w istocie przetwornicą, zapewnia stałą jasność świecenia diod nawet wtedy, gdy źródła napięcia zasilania zmienia się w czasie, co dotyczy np. baterii. Do funkcjonowania układu nie są potrzebne żadne induk-cyjności a jedynie cztery kondensatory ceramiczne o pojemności l|xF. Przy zasilaniu napięciem o wartości 2,7V...4,5V układ można obciążyć diodami LED pobierającymi mak- 1M i Programowanie 10 Jasnofid Macania VIN ci+ ci- ca+ ca- DO VOJT Di LTC3202 VIN Cl QND FB Rys. 8. Prąd całkowity QdO(to125mA C4 1U 36 38 iwNL
TECHNOUOGY symalnie do l25mA. Dodatkowo można wybrać, za pomocą dwóch wejść DO i Dl, jeden z czterech poziomów jasności świecenia. Układ zapewnia tzw. "miękki start", gdy po włączeniu zasilania prąd obciążenia narasta łagodnie w czasie 200|Xs. Posiada także zabezpieczenie przeciwzwarciowe i termiczne przetwornicy. Istnieje możliwość wprowadzenia układu w stan uśpienia, w którym prąd pobierany ze źródła zasilania jest mniejszy od l|xA. Zakres temperatur w jakich układ może pracować to -40C... + 80C. Obudowa MSOP o 10 wyprowadzeniach. http;ffwww.linear. com/prod/datas-heet.html?datasheet=735 Przedstawicielami Linę ar Technology w Polsce są firmy; Eurodis {tel. {71} 301-04-00}, Macropol {tel. {22} 322-43-37} oraz Memec-lnsighi {tel. {32} 233-03-80}. Więcej niż półprzewodnikowy termometr Układ oznaczony symbolem DS1851 może spełniać podwójną rolę: - może być użyty jako 12-bitowy termometr mierzący temperaturę w zakresie od -40C do +95C, - może także służyć jako element kompensujący zmiany temperatury w złożonych urządzeniach elektronicznych - do tego Rys. 9. EKFBDM (DAC-V) (DAC-G) ----->
Uw Htwtrj celu układ wyposażono w termometr, dwa przetworniki cyfrowo-analogowe i pamięć EEPROM. Wykorzystując układ jako zwykły termometr, wartość temperatury przetworzonej na 12-bitową liczbę dwójkową można odczytać korzystając z magistrali I2C. Konwersja temperatury wykonywana jest nieprzerwanie, a wyniki zapisywane są w rejestrach do odczytu co lOms. Druga z wymienionych funkcji układu polega na wytwarzaniu przez wewnętrzne przetworniki poziomu napięcia proporcjonalnego do aktualnej temperatury zewnętrznej. Takie napięcie może być użyte do korekcji pracy innych układów, np. wysoko stabilnych generatorów lub przetworników. Istota rozwiązania oferowanego przez układ polega na tym, że zależność między zmianą temperatury, a wytwarzanym na jego wyjściach napięciem kompensacji 1 wcale nie musi być liniowa. Oba przetworniki pobierają bowiem dane do kon-. wersji z wewnętrznych, 40-bajtowych S-ł* DAC-G -WlDAC-V tablic zapisanych w pamięci EEPROM. Zmiana temperatury o 4C (obniżenie lub podwyższenie] powoduje pobranie przez przetwornik danych do konwersji z kolejnej komórki tablicy. Wartości zapisane w tablicach mogą być już wcześniej dowolnie modyfikowane i zapisane przez użytkownika. Tym samym zależność napięcia kompensującego od temperatury może być dowolnie kształtowana zgodnie z potrzebami konkretnego, korygowanego temperaturowo obwodu. Na rysunku pokazano struktura wewnętrzna układu. Dwa 8-bitowe przetworniki dostarczają napięcia kompensacji na wyjścia OutV i OutG. Zakres napięć wyjściowych zależy od poziomu napięć odniesienia dołączanych do wejść Vrg i Vrc. Do zasilania układu potrzebne jest napięcie 3...5,5V. Pobór prądu nie przekracza 3mA. Układ jest dostępny w obudowach typu TSSOP8. http;/fpdfserv.niaxini-ic .con-ifarpdff DSl35lE-010.pdf Przedstawicielem Maxima w Polsce jest firma SE Sfjezial Electronic {tel. {0300} 18-00-39). Miniaturowa antena do Bluetooth Firma Phycomp opracowała ultra miniaturową antenę ceramiczną do przenośnych systemów komunikacyjnych, ze szczególnym uwzględnieniem Bluetooth, bezprzewodowych kart sieciowych WiFi, a także innych urządzeń radiowych pracujących w pasmach 2,45/ 2,60/2,70GHz. Szerokość pasma największej skuteczności anteny wynosi lOOMHz, maksymalna rozpraszana moc wynosi lW, a impedancja falowa jest równa 50D. Phicomp A FORMER PHILIPB COMPANY Ś Najpoważniejszym atutem anteny BT245.1 są niewielkie wymiary (7,35x5,5x1,3mm], mała masa (zaledwie 0,15g], a także łatwość montażu uzyskana dzięki zastosowaniu obudowy przystosowanej do montażu powierzchniowego. http ;l Iwww.phyc omp-components.com / pdffbi245.1.pdf Przedstawicielem firmy Phycomp w Polsce jest firma Avnet Macropol {tel. {22} 322-43-37). Elektronika Praktyczna 1/2002 77 NOWE PODZESPOŁY CAN w mikrokontrolerze Microchip wprowadził do sprzedaży cztery nowe mikro kontrolery z rodziny PIClSF, które wyróżniają się na rynku przede wszystkim wbudowanym sprzętowym interfejsem CAN2.0B. Wbudowana w układy pamięć programu jest typu Flash, można ją programować 100000 razy, także w systemie poprzez interfejs CAN. Dla wygody użytkowników producent wbudował w prezentowane mi kro kontrolery Ths Embtdded Control Sotution* Compmny* nieulotną pamięć danych EEPROM o pojemności 256B, której trwałość jest określana na 1000000 cykli kasowanie-zapis. Zgodnie z dotychczasowymi trendami rozwojowymi obowiązującymi w rodzinie PIClSF, wszystkie mikrokontrolery wyposażono w szereg konfigurowalnych modułów peryferyjnych, w tym I2C, USART, SPI, ti-mery, analogowe komparatory oraz wielokanałowy, 10-bitowy przetwornik A/C itp. Zestawienie najważniejszych parametrów mi kro kontrolerów z grupy PICl8Fxx8 znajduje się w tab. 1. h ttp; ffwww. m i ero chi p. c om fdo w ni o ad /li i! plinefpicmicroffamiliesfl3fxx3f41l59a.pdf Przedstawicielami Microchipa w Polsce są firmy; Fuiure (iel. {22} 813-92-02}, Gamma (iel. {22} 883-33-78} i Memec-Uniąue {iel. {32} 233-05-80}. Tab. 1. Zestawienie iajważniejszych parametrów m k rok oitro terów PIC18Fxx8. Typ układu Pojemność pamięci programu Pojemność pamięci danych RAM Pojemność pamięci danych EEPROM Liczba 1/0 Kanały ADC (10b) Interfejsy szeregowe Moduły PWM Komparatory Timery Obudowa PIC13F243 16334kB/Flash 763B 256B 23 5 USART/I3C/SPI/CAN2OB 1 - 3x16b/1x3b/WDT DIP/SOIC23 PIC13F253 32736kB/Flash 1536B 256B 23 5 USART/I3C/SPI/CAN2OB 1 - 3x16b/1x3b/WDT DIP/SOIC23 PIC13F443 16334kB/Flash 763B 256B 35 3 USART/I3C/SPI/CAN2OB 5 r-o 3x16b/1x3b/WDT DIP40/PLCC44/TOFP44 PIC13F453 32736kB/Flash 1536B 256B 35 3 USART/I3C/SPI/CAN2OB 5 r-o 3x16b/1x3b/WDT DIP40/PLCC44/TOFP44 PIC13C653 32736kB/OTP 1536B - 52 r-o USART/I3C/SPI/CAN2OB r-o r-o 3x16b/1x3b/WDT TOFP64/PLCC63 PIC13C353 32736kB/OTP 1536B - 63 16 USART/I3C/SPI/CAN2OB r-o r-o 3x16b/1x3b/WDT TOFP30 Przetwornica jak układ scalony Przetwornice DC/DC z nowej rodziny NTA o mocy wyjściowej lW, produkowane przez firmę C&D Technologies (niegdyś Newport Components] są dostarczane w obudowach o rozstawie wyprowadzeń zgodnym z rozstawem wyprowadzeń standardowej obudowy SOPlS, stosowanej dla tradycyjnych ulda-dów scalonych. Pomimo niewielkich wymiarów napięcie przebicia pomiędzy wejściem i wyjściem wynosi aż lkV, a przetwornica może pracować z pełnym obciążeniem w całym dopuszczalnym zakresie temperatury -4O...+85C. W ramach rodziny NTA są oferowane przetwornice o nominalnym napięciu wyjściowym 3,3/5 i 12V i symetrycznym wyjściu. Szczegółowe zestawienie podstawowych da- Tab. 2. Zestawieiie lajważiiejszych parametrów pizetwonic rodziiy NTA. Typ przetwornicy Napięcie wejściowe [V] Napięcie wyjściowe [V] Prąd obciążenia ImA] Prąd wejściowy (dla obciążenia nominalnego) LmA] Sprawność [%] Pojemność przejściowa IpF] MTTF Ihx1000] NTA031 2M 3,3 ą12 ą42 390 77 40 375 NTA031 5M 3,3 ą15 ą33 392 77 42 206 NTA0505M ą5 ą100 290 69 33 1697 NTA0509M ą9 ą55 267 75 33 632 NTA051 2M ą12 ą42 260 77 44 343 NTA051 5M ą15 ą33 256 73 43 133 NTA1205M 12 ą5 ą100 121 69 50 559 NTA1209M 12 ą9 ą55 113 74 72 375 NTA1212M 12 ą12 ą42 111 75 39 243 NTA1215M 12 ą15 ą33 110 76 100 154 TECHNOLOGIES nych technicznych przetwornic znajduje się w tab. 2. http; ffwww.cdncl.c om fcdfproductsf dc_con vertersfp dffn ta .p df Przedstawicielami firmy C&D Technologies w Polsce są firmy; JM Elektronik {tel. {32} 339-89-00} oraz Memec-lnsighi {iel. {32} 233-03-80}. flTTF- średni czas pomiędzy awanami 78 Elektronika Praktyczna 1/2002 PODZESPOŁY Wzmacniacze audio klasy Na pierwszy rzut oka pomysł wzmacniania subtelnych sygnałów audio za pomocą wzmacniaczy impulsowych z zasady działania przypominających mało finezyjne przetwornice stosowane w zasilaczach, wydaje się szalony. Przez całe lata konstruktorzy wzmacniaczy wprost szaleli starając się zmusić je do maksymalnie liniowego wzmacniania sygnałów wejściowych, po drodze walcząc z szeregiem mniej i bardziej poważnych trudności. Długo przecież trwało zanim znaleziono prawdziwe przyczyny grupy projektowej zajmującej się impulsowymi układami odchylania do TV, pracujący w firmie Thomson. Swoje opracowanie pokazał publicznie w 1968 roku. Jego poważną wadą były: niska częstotliwość próbkowania sygnału (zaledwie 8kHz) oraz potężne wymiary, które ,,zawdzięczał" przede wszystkim niezbyt doskonałym rdzeniom ówczesnych dławików i transformatorów. Pomimo niedoskonałości kon strukcy j -nych i fatalnej jakości odtwarzanego dźwięku (minimalna zawartość współ- Sygnal audio Referencyjny sygnał trójkątny Komparator analogowy (modulator PWM) Referencyjny sygnał Sygnał trójkątny audio komparatora (współczynnik wypełnienia = 75%) Referencyjny sygnał Sygnał trójkątny audio \ Sygnał na wyjściu komparatora (współczynnik wypełnienia = 50%) Referencyjny sygnał Sygnał trójkątny Sygnał na wyjściu1 komparatora (współczynnik wypełnienia = 25%) Rys. 1. Wokół tematyki impulsowych wzmacniaczy audio krążymy od pewnego już czasu. Charakteryzują się one bardzo wysoką sprawnością energetyczną, znacznym skomplikowaniem konstrukcyjnym, wiele emocji wzbudzają ich parametry elektroakustyczne. Wszystko to razem powoduje, że konstrukcje tego typu mają zarówno gorących zwolenników jak i przeciwników, często opierających swoje poglądy na pobieżnej analizie not katalogowych. Aby sytuację dodatkowo zagmatwać, na rynku pojawiają się różnorodne układy prezentowane jako "cyfrowe" układy wzmacniające, będące w istocie także wzmacniaczami impulsowymi. Żeby sytuację nieco rozjaśnić przygotowaliśmy krótki cykl artykułów, w którym przedstawimy możliwości dostępnych na rynku układów wzmacniających tego typu. metalicznego (,,tranzystorowe go") brzmienia wzmacniaczy tranzystorowych, długo walczono z nienajlepszym wzmacnianiem sygnałów impulsowych (ukłon w stronę fanów HipHopu, choć nie tylko), niebagatelnym problemem było także zapewnienie odpowiedniego sterowania nowoczesnych zespołów głośnikowych, których parametry zależne od częstotliwości powodują, że są one trudne do optymalnego wysterowania. Tak, jak teorie Einsteina uznano na początku za objaw poważnej choroby, tak - wbrew pozorom konserwatywny -świat elektroników rozmiłowanych w konstrukcjach audio nie potraktował poważnie pierwszego pokazanego oficjalnie na świecie wzmacniacza audio, który zamiast optymalizowanej w pocie czoła linearyzacji ciął piękne dźwięki na prostokątne kawałki. Konstruktorem wzmacniacza o mocy 12W, wykonanego całkowicie z elementów dyskretnych (z tranzystorami 2N1O12 w końcówce mocy), był Thomas L. Spears - szef czynnika zawartości zniekształceń nieliniowych przekraczał 8%!) opracowana przez T. L. Spearsa zasada działania wzmacniaczy impulsowych, które niemal od razu zakwalifikowano jako pracujące w klasie D, niewiele do dzisiaj się zmienił. Doskonale ją ilustruje rys. 1. Komparator analogowy, którego rolę może pełnić wzmacniacz operacyjny o dużym wzmocnieniu napięciowym, porównuje ze sobą dwa sygnały: X Referencyjny trójkątny, którego częstotliwość powinna być jak najwyższa (w nowoczesnych opracowaniach sięga nawet 2MHz). Jest on zazwyczaj vcc podawany na wejście odwracające komparatora. Rys. 2. x Analogowy sygnał audio, który jest podawany na wejście nieodwracające komparatora. Jego amplituda powinna być zbliżona do amplitudy trójkątnego sygnału referencyjnego. W zależności od wartości napięcia (amplitudy) sygnału audio podawanego na wejście, sygnał na wyjściu kompara- HA Gnd Gnd2 Elektronika Praktyczna 1/2002 77 PODZESPOŁY Rys. 3. tora ma modulowane wypełnienie. Dla sygnału wejściowego o wartości równej połowie amplitudy sygnału referencyjnego współczynnik wypełnienia przebiegu wyjściowego komparatora wynosi 50%. Wraz ze wzrostem poziomu napięcia na wejściu sygnału audio współczynnik wypełnienia rośnie, wraz z jego obniżaniem się maleje także współczynnik wypełnienia. W ten sposób następuje konwersja sygnału analogowego na zmodulowany przebieg PWM {Pulse Width Modula-tion), którego uśredniona wartość niesie informację o chwilowej amplitudzie sygnału wejściowego. Jest oczywiste, że wraz ze wzrostem częstotliwości sygnału referencyjnego zwiększa się dokładność konwersji A/C sygnału audio, co znajduje silne odbicie w jakości odtwarzanego sygnału. Zwiększanie tej częstotliwości nie jest możliwe bez ograniczeń, ponieważ dławiki niezbędne do filtrowania reprodukowanego sygnału, ze względu na duże prądy płynące przez obciążenie oraz znaczną bezwładność magnetyczną rdzeni, są bardzo trudne do wykonania. Pomimo tych trudności coraz więcej firm angażuje się w produkcję scalonych wzmacniaczy lub sterowników do wzmacniaczy pracujących w klasie D. Jedną z rynkowych nowości przedstawiamy na początku krótkiego cyklu artykułów. L. RL.JQ ._ i Ś ZMuGanD / I I ^-' 1 -------TVP calCIauAS f s Y
!]lłfalaWt[W] Rys. 4. Co drzemie w Zetex'ie Angielska firma Zetex - producent m.in. szeregu nietypowych układów scalonych - w marcu ubiegłego roku wdrożyła do produkcji nowoczesny scalony sterownik do wzmacniaczy audio pracujących w klasie D - układ ZXCD1000. Jego schemat blokowy przedstawiono na rys. 2. Jak widać, wewnętrzna budowa układu nie jest skomplikowana, podobnie do schematu aplikacyjnego (przedstawiony na rys. 3), w którym układ ZXCD1000 pracuje jako wzmacniacz mostkowy. O ile moco-we parametry wzmacniacza nie należą do najbardziej intrygujących (wyjściowa moc sinusoidalna wynosi 25W), to energetyczna sprawność wzmacniacza (rys. 4) oraz jego wymiary (fot. 5) budzą prawdziwe uznanie. Niewielkie wymiary zewnętrzne udało się uzyskać projektantom wzmacniacza dzięki wysokiej częstotliwości próbkowania, sięgającej 250kHz, co pozwoliło ograniczyć wymiary rdzenia dławika wyjściowego do możliwego obecnie minimum. Pomimo niezbyt skomplikowanej wewnętrznej budowy wzmacniacza i jego bardzo prostej nocie aplikacyjnej, parametry toru audio są co najmniej zadowalające: pasmo (z nierównomier-nością -0,3dB) sięga 20kHz, maksymalne zniekształcenia nieliniowe nie przekraczają 0,2%, a odstęp od poziomu szumów będących efektem kluczowania prądów o dużych wartościach nie jest mniejszy (średnio, dla szpilek widma) od 80dB. Ponieważ układ ZXCD1000 przystosowano do współpracy z tranzystorami MOSFET w końcówce mocy, jego wzmacniacze wyjściowe są przystosowane do sterowania obciążeń pojemnościowych, dzięki czemu ograniczona do 50 ns szybkość przeładowywania kondensatora bramkowego nie wpływa na jakość odtwarzanego sygnału audio. Po- T prawe jego jakości można uzyskać poprzez wyposażenie wzmacniacza w układ sprzężenia zwrotnego, który dość znacznie komplikuje budowę wzmacniacza. Dokładna koncepcja tego układu została w nocie katalogowej układu ZXCD1000, którą można znaleźć na stronie producenta oraz na płycie CD-EP1/2OO2B. Fot. 5. Na tym kończymy wprowadzenie -za miesiąc zapraszamy do przeczytania artykułu przeglądowego, w którym oprócz klasycznych wzmacniaczy pracujących w klasie D przedstawimy także szereg nowoczesnych opracowań ze świata, które - mamy nadzieję - już wkrótce będą dostępne także w naszym kraju. Andrzej Gawryluk, AVT Dodatkowe informacje Prezentowany w artykule zestaw wzmacniacza audio z układem ZXCD1000 udostępni! nam do testów dystrybutor firmy Zetex - firma Eurodis, tel. (71) 301-04-00, wroclaw@eurodis.com.pl. Dodatkowe informacje są dostępne w Internecie pod adresem www.zetex.com oraz na ptycie CD-EP1/ 2002B. 78 Elektronika Praktyczna 1/2002 BIBLIOTEKA EP W "Bibliotece EP" prezentujemy książki dotyczące zogodnień związonych z różnymi dziedzinom! techniki, jednok zowsze przydotne w procy elektroniko iub pomocne w uprawianiu elektronicznego hobby, Nasza opinia jest oczywiście subiektywna, aie wynika z wieioietniego doświadczenia zawodowego i chyba jest zgodna z oczekiwaniami tych, którzy chcą z książek korzystać, a nie przyozdabiać nimi póiki, Aby nie marnować miejsca w EP, nie będziemy publikować recenzji książek ocenianych na jedną iub 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 Dziaie Handlowym AVT (patrz str, 137), Chcemy w ten sposób udostępnić je Czytelnikom EP, Andrzej Daniluk: "RS 232C - praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera", 321 str.f zawiera CD-ROM, Helion 2001 rócz opisu funkcji Win32 API wykorzystywanych do transmisji szeregowej, można znaleźć wiele ciekawych przykładów zaczerpniętych z używanych aplikacji. W początkowych rozdziałach książki zawarto ogólne informacje o transmisji szeregowej w komputerze PC. Oprócz definicji interfejsu można znaleźć informacje o rozkładzie wyprowadzeń łącza w komputerze. Rozdział o obsłudze RS 232C w systemie MS-DOS (przykłady w Borland Pascal oraz Borland C++) może wydawać się trochę nie na czasie, jednak można go potraktować jako łagodne wprowadzenie do bardziej zaawansowanych zagadnień. Kolejne rozdziały są poświęcone już bardziej aktualnym zagadnieniom, czyli programowej obsłudze transmisji szeregowej przez aplikacje pracujące pod kontrolą Windows. Po krótkim zaprezentowaniu sposobu korzystania z portu szeregowego w systemie Windows, Autor pokazuje, jak korzystając z funkcji Win32 API ustawić parametry transmisji szeregowej, nawiązać połączenie, wysłać pojedynczy znak lub plik przez port szeregowy itp. Wszystkie zagadnienia są bardzo obszernie dokumentowane listingami programów w Delphi oraz C++ Builderze. Na szczególną uwagę zasługuje rozdział, w którym pokazano budowę aplikacji wielowątkowej. Mniej wprawni programiści unikają pisania takich aplikacji, a jest to bardzo efektywna technika programowania, czego bardzo trafnym przykładem może być właśnie zaprogramowanie transmisji szeregowej. Mało interesujący jest rozdział poświęcony wykorzystaniu komponentów graficznych. Wydaje się, że książka o takim tytule nie jest odpowiednia na prezentację metod wizualizacji wyników pomiarów na ten temat można znaleźć odrębne, bardzo kompetentne publikacje, nie warto kupować Elektroniki Praktyoxn| Poprawne oprogramowanie transmisji szeregowej w komputerze PC jest powszechnie uznawane za dosyć trudne zadanie. Z problemem tym stykają się szczególnie często elektronicy piszący programy wymagające komunikowania się z zewnętrznymi urządzeniami. Chociaż w standardowej bibliotece Win32 API znajdują się wszystkie potrzebne funkcje do obsługi takiej transmisji, to wykorzystanie tych funkcji w oparciu o informacje zawarte w plikach pomocy jest praktycznie niemożliwe. Z pomocą przychodzi prezentowana książka, w której, op- Legenda: Prokrycane programowanie Od Pascala I C++ do Dripłit i Buildera s y / książka wybitna, polecamy! książka o dużych walorach praktycznych, polecamy! może się przydać daleka od doskonałości które co jakiś czas również prezentujemy na łamach EP. Do książki jest dołączony CD-ROM, na którym znajdują się kody źródłowe przykładowych programów zaprezentowanych w książce. Dzięki temu możliwe jest prześledzenie działania tych programów bez konieczności ich "ręcznego wklepywania". Pewną wadą wydaje się jednak brak na płycie komponentów dla Delphi i C++ Buildera, umożliwiających korzystanie z portów szeregowych. Co prawda komponenty takie są łatwo osiągalne w Interne-cie, ale mogłoby to stanowić pełne podsumowanie materiału zawartego w książce. Miękka oprawa, jak zwykle w książkach po które sięga się często, zasługuje na krytykę. Z tego powodu, mimo bardzo cennej zawartości, książkę nagradzamy tylko czterema lutownicami. 134 Elektronika Praktyczna 1/2002 BIBLIOTEKA EP Mieczysław Nowak, Roman Barlik: "Poradnik inżyniera energoelektronika"T WNT 1998 Wbrew tytułowi sugerującemu czy-sto "energetyczne" zapędy autorów książka przyda się także wszystkim elektronikom chcącym dogłębnie posnąć tajniki budowy wszelkiego typu układów przekształtnikowych (w tym niezwykle popularnych falowników), układów impulsowych duże] mocy (m.in. przetwornic napięcia i prądu), układów sterowania i regulacji przeznaczonych do stosowania w systemach konwersji napięć i prądów dużej mocy. Wiele miejsca autorzy przeznaczyli także na szczegółowe omówienie własności i parametrów elementów stosowanych w urządzeniach impulsowych dużej mocy. Oprócz profesjonalnego przedstawienia budowy i znaczenia parametrów elementów półprzewodnikowych w książce zawarto szereg informacji niezbędnych dla inżynierów-projektantów, w tym sposoby zabezpieczania elementów półprzewodnikowych przed przepięciami, przetężeniami i zbytniemu wzrostowi temperatury. Bardzo interesujący jest także fragment poświęcony materiałom magnetycznym stosowanym w przekształtnikach. Mocną - z punktu widzenia elektroników-praktyków - stroną książki są zawarte w niej przykładowe aplikacje układów sterujących elementy wykonawcze. Pomimo upływu czasu ich aktualność nie została nadwerężona, a dzięki przejrzystemu opisowi stanowią one doskonałe wsparcie dla czytelników zamierzających samodzielnie projektować moduły przekształtnikowe. Nieco miejsca autorzy przeznaczyli także na opis nowoczesnych narzędzi programo- wych do symulacji układów przekształtnikowych. Szkoda tylko, że wydawnictwo nie dołączyło do książki płyty z ewaluacyjnymi wersjami programów prezentowanych w książce, co znacznie ułatwiłoby wykonanie przez czytelników samodzielnych prób z tymi programami. Układ książki jest przejrzysty i logiczny, a wykłady (choć poparte sporą dawką matematyki) są interesujące i zawierają esencję poruszanych tematów. Janusz Szafran, Andrzej Wiszniewski: "Algorytmy pomiarowe i decyzyjne cyfrowej automatyki elektroenergetyczneju, WNT 2001 Coraz więcej, do niedawna oddzielnych, dziedzin techniki łączy się pod wspólnym "parasolem" elektroniki. Tak się stało m.in. z automatyką, która do niedawna była ściśle związana z hydro-a u to ma tyką, pneumatyką, mechaniką i elektrotechniką, a w której teraz "rozpanoszyła" się elektronika. Tak też pomiarowi cyfrawej automatyki elektraanargetycnwi dzieje się z energetyką, która jest przecież bytem bardzo odległym od mikro-prądów i mikronapięć. Autorzy, zdając sobie sprawę z tego, jak zatarły się obecnie granice tych dziedzin, zawarli w swojej książce zaawansowany wykład na temat metod analizy i obróbki sygnałów dyskretnych oraz charakterystyki cyfrowych algorytmów pomiarowych, w tym stosowanych do pomiaru amplitudy sygnałów, przesunięcia fazowego i częstotliwości. Wszystko to jest możliwe dzięki pomocy komputerów z odpowiednim oprogramowaniem lub specjalizowanych sterowników, także wymagających programowania. Jak wspo- mniano, wykład jest prowadzony na wysokim poziomie, co jest związane z bogatym "podłożem" matematycznym, które jakkolwiek nie wygląda zachęcająco, jest jednak niezbędne do dogłębnego zrozumienia zagadnień poruszanych w książce. Konrad Widelski: "Spotkanie z elektroniką", WKŁ 2001 Jest to książka dla bardzo początkujących elektroników, a nawet dla nie elektroników. Na kilkudziesięciu stronach (książka nie jest zbyt gruba) autor drobnymi kroczkami wprowadza czytelnika w tajemniczy świat elektroniki, Jego zrozumienie ułatwiają zdjęcia omawianych podzespołów oraz ich symbole graficzne wykorzystywane w schematach elektrycznych, a także omówienie ich podstawowych parametrów oraz opis własności oraz funkcji tych elementów w układach elektronicznych. Czytelników zamierzających samodzielnie wykonać proste u-kłady zainteresuje rozdział noszący tytuł "O schematach i budowie urządzeń elektronicznych", w którym autor przedstawił porównanie schematów elektrycznych ze schematem połączeń pomiędzy elementami w montażu przestrzennym, na płytce drukowanej z wytrawionymi ścieżkami oraz na samodzielnie wykonanej płytce z połączeniami ze sreb-rzanki. Spotkanie z elektroniką Konrad Widelski * Na zakończenie autor przygotował kilka bardzo prostych projektów układów, które wstępnie zaznajomiony z elektroniką czytelnik bez większego trudu i praktycznie bez żadnych nakładów może samodzielnie powtórzyć. Są to projekty dość efektowne (timer do Elektronika Praktyczna 1/2002 135 BIBLIOTEKA EP ciemni, wzmacniacz audio, radiowy odbiornik, detektorowy zasilany z ogniwa słonecznego i kilka innych), które z pewnością zachęcą do podejmowania samodzielnych prób. Niestety, autor nie wszystkie przedstawione w książce układy przemyślał "do końca", co powoduje, że naśladowcy mogą się szybko do elektroniki rozczarować, tracąc przy okazji trochę pieniędzy. W tak podstawowej książce nie powinny występować błędy korektors-kie. Na przykład zamiast znaku mnożenia jest symbol... jena, co wprowadziło pewną konsternację także w naszej redakcji (czy coś przegapiliśmy?). Anachronicznie wyglądają próby namówienia czytelników na samodzielne wykonanie z drutu podstawki do lutownicy oraz stwierdzenie, że "szczytowym osiągnięciem amatora jest uniwersalny przyrząd wielozakresowy, choć jest to sprzęt dość kosztowny". Przypomina to nieco czasy ś.p. Składnicy Harcerskiej, w której w 1985 roku multimetr Metexa kosztował średnią miesięczną pensję. Czasy się zmieniły! Władysław Paszek: "Dynamika maszyn elektrycznych prądu przemiennegou, Helion 1998 Książka niezbyt "młoda", ale zawarte w niej informacje mogą być niezwykle przydatne konstruktorom zajmującym się projektowaniem falowników i innych sterowników stosowanych w nowoczesnych napędach silników elektrycznych. Autor skupił się ma przybliżeniu metody analizy stanów nieustalonych (elektromagnetycznych i elektrodynamicznych), w której stosuje się rozwiązywanie równań stanu nieustalonego na podstawie uproszczonych modeli mate- matycznych. W istotnym dla elektroników fragmencie książki zaprezentowano właściwości regulacyjne maszyn synchronicznych i asynchronicznych, czyli zagadnienia często rozważane przez projektantów oprogramowania dla falowników. Autor zawarł w książce także analizę występujących w praktyce szczególnych przypadków pracy maszyn, tzn. stany nieustalone przy stałej prędkości wirowania silnika indukcyjnego, powtórne załączenie maszyny indukcyjnej, zasilanie silnika indukcyjnego z regulowanego źródła napięciowego itd. Wiele miejsca poświęcono także zagadnieniom związanym z pracą i zasilaniem maszyn synchronicznych. Zaletą książki jest duża liczba ilustracji, z których znaczna część przedstawia wyniki symulacji opartych na algorytmach przedstawionych w książce. A przecież jeden rysunek niesie zwykle więcej treści niż kilka stron tekstu. Jim Aspinwall: "IRQT DMA i I/O"T Wydawnictwo RM 2000 Do książki dołączono CD-ROM Problemy z przerwaniami, ustawianiem kanałów DMA i adresów w przestrzeni wejścia/wyjścia występują we współczesnych komputerach tylko nieco rzadziej, niż miało to miejsce kilka lat temu, przed wprowadzeniem do PC-tów bezobsługowych mechanizmów Ping & Play. Autor w ośmiu rozdziałach prowadzi czytelników przez tajniki konfiguracji komputerów PC (także starszych generacji), sposoby modyfikacji i kontroli zasobów komputera przez systemy operacyjne Windows 95/98/NT, wprowadza także w świat ciągle nowej specyfikacji dostępu i obsługi zasobów - PC99. Wyjaśnienia zawarte w książce będą nieocenioną pomocą dla projektantów kart pracujących w standardzie P&P oraz innych interfejsów dynamicznie modyfikujących swoją konfigurację (m.in. USB2.0). Weryfikację informacji zamieszczonych w książce ułatwią programy narzędziowe zamieszczone na dołączonej do książki płycie CD-ROM. Richard Read: "Telekomunikacja11, WKŁ 2000 Książka - czego tytuł nie sugeruje - jest bardzo bliska tematycznie poprzednio opisanej. Autor przedstawia telekomunikację (zgodnie z definicją podaną we wstępie książki) jako proces przesyłania informacji na odległość w rzeczywistym otoczeniu. Występują w nim różnego rodzaju zakłócenia, które zniekształcają przesyłany sygnał na różne, najczęściej niepożądane przez użytkowników, sposoby. Telekomunikacja RfchardRead W pięciu rozdziałach autor kompleksowo przedstawia wszystkie zagadnienia mające związek z przesyłaniem sygnału, tzn. jego przetwarzanie (m.in. filtrowanie) i modulację, wpływ szumów i innych zakłóceń losowych na jakość transmisji. Wiele miejsca autor poświęcił omówieniu zagadnień związanych z cyfrową transmisją sygnałów, w tym cyfrowych systemów zwielokrotniania. Wykłady poparte są niebagatelną dawką matematyki, która doskonale ilustruje omawiane zagadnienia. Można ją jednak przełknąć i dlatego książkę polecamy elektronikom "uczulonym" na wielopiętrowe wzory. 136 Elektronika Praktyczna 1/2002 KURS Architektura mikrokontrolerów W drugiej części artykułu kontynuujemy opis funkcji rejestrów SFR w procesorach PICl6F8x, których dobra znajomość jest niezbędna do efektywnego wykorzystywania tych mikrokontrolerów. Omówimy kolejny rejestr z obszaru SFR - TMRO REGISTER (o adresie Olh), Jest to 8-bitowy licznik, (liczący do przodu), którego zawartość można zapisywać (zakres 0...255) i odczytywać. Po wpisaniu wartości inkrementacja licznika jest zatrzymywana na czas trwania dwóch cykli instrukcyjnych, niezależnie od źródła zliczanych impulsów. Trzeba to uwzględnić przy obliczaniu wartości wpisywanej do licznika. Licznik TMRO może pracować w dwóch trybach: timera i licznika. Wybór trybu jest realizowany przez odpowiednie ustawienie bitu TOCS w OP-TION_REG (rys. 4). Należy dodać, że pomiędzy źródło impulsów a licznik można włączyć programowany preskaler (wstępny dzielnik), poprzez wyzerowanie bitu PSA w OPTION_REG. Programowanie stopnia podziału pre skal era następuje przez "ustawienie bitów FSO.. .PS2 również w OPTION_REG. W trybie timera (T0CS=0) źródłem zliczanych impulsów jest wewnętrzny sygnał o częstotliwości oscylatora mikrokontrolera podzielonej przez cztery. W trybie licznika (TOCS=1) źródłem impulsów jest sygnał zewnętrzny podawany na wyprowadzenie RA4/T0CK.I. Poprzez odpowiednie ustawienie bitu TOSE w OPTION_REG można wybrać zbocze impulsu, przy którym następuje inkrementacja licznika. Zliczanie zewnętrznych impulsów jest synchronizowane wewnętrznym sygnałem zegarowym mikroprocesora. Profliwn Dumny praBkąlar T. Występuje tutaj opóźnienie między zboczem zewnętrznego impulsu, a odpowiadającym mu zwiększeniem stanu licznika (pomiar czasu pomiędzy dwoma zboczami sygnału zewnętrznego obarczony jest błędem ą4*iosc). Synchronizacja przebiegu podawanego na RA4/ T0CK.I odbywa się poprzez dwukrotne próbkowanie wyjścia preskalera w każdym cyklu rozkazowym (fazy: Q2 i Q4). Z tego powodu poziom wysoki na wyjściu preskalera musi trwać co najmniej 2*iosc, aby mógł być w ogóle wykryty przez układ próbkowania. Przepełnienie licznika TMRO może generować przerwanie. W momencie przepełnienia ustawiana jest flaga TOIF w rejestrze INTCON. Flaga ta musi być zerowana przez procedurę obsługi przerwania. Przerwanie zostanie zgłoszone, jeżeli bit maski TOIE w INTCON REGISTER będzie jedynką. Schemat blokowy TMRO przedstawiony jest na rys. 8, a specyfikację rejestrów z nim związanych pokazano na rys. 9. Szyna danycti Przedstawmy przykład inicjalizacji licznika TMRO. Preskaler przypisany jest do TMRO i dzieli wstępnie wewnętrzny przebieg Fosc/4 przez 32. bcf STATUS,RPO bankO clrf TMRO zeruj TMRO i preskaler bsf STATUS,RPO banki bcf OPTION_REG,T0CS ;przebieg Fosc/4 bcf OPTION_REG,PSA ;preskaler do TMRO bcf OPTION_REG ,PSO ;preskaler PSout Blok ayołraiizMji z zegarem TWO
uni rpli^j kj ii i PSout po przepełnianiu TOCS PSŁFSirFSO PSA W takim pfzyptdku przabłag pottawany jaat bazpodwWo n wajfcła liczniki 7W0. Rys. 8. 4). 1/32 bcf OPTION_REG,PS1 bsf OPTION_REG.PS2 bcf STATUS,RPO ;bankO movlw stala_zliczania ;interesująca nas wartość mowff TMRO ;wpis do licznika Oczywiście można wpisać cały bajt do OPTION_REG. W przykładzie użyto celowo rozkazów bcf i bsf, aby pokazać możliwość ustawienia poszczególnych bitów. Kolejne cztery rejestry obszaru SFR: EECON1, EECON2, EEDATA i EEADR Irys. 10) obsługują 64 bajty pamięci danych typu EEPROM (od adresu OOh do adresu 3fh), które można zapisywać i odczytywać podczas normalnej pracy mikrokontrolera. Dostęp do tej pamięci jest możliwy tylko w sposób pośredni. W EEDATA zawarta jest dana, która jest zapisywana lub odczytywana. Adres tej danej wpisany jest do 8-bitowego rejestru EEADR. Ponieważ zaimplementowane są 30 Elektronika Praktyczna 1/2002 KURS Adres Bit7 Bit6 BitS Bit4 Bit3 Bit2 Bit1 BitO (D (2) 01 h TMRO TlmorOmodu s's register xot xxxx uuuu uuuu OBh INTCON QIE EEIE TOIE llłTE RBIE TOIF IMTF RBIF 0000 000x 0000 0000 81 h OPTION RBPU INTEDG TOCS TOSE PSA PS2 PSI PSO 1111 1111 1111 1111 8Eh TRISA TRSA4 TRISA3 TRISA2 TRISA1 TRSAO XMC1 1111 xxxi 1111 Uwagi x - wartoić niewiadoma u - wartość nls zmieniana (1) wartości po włączeniu zasilania (Z) wartości po reset Pola zaznaczona na szaro nie dotyczą TMRO Rys. 9. Adres Blt7 Blt6 BltS Bit4 Bit3 Bit2 Bit1 BitO (1) (2) 08h EEDATA EEPROM dęta register xxxx xxxx uuuu uuuu 09h EEADR EEPROM addnasa register xxxx xxxx uuuu uuuu 88h EECON1 EEIF WRERR WREN WR RD ---0 x000 ---0 q000 8Sh EECON2 EEPROM control register 2 Uwagi: x - wartotó niewiadoma u - wartość nie zmieniana q - wartość nie zmieniana (1) wartości po włączeniu zasilania (2) wartości po zerowaniu Rys. 10. tylko 64 bajty, to dwa najstarsze bity EEADR muszą być wyzerowane. Przed operacją zapisywania wywoływana jest procedura automatycznego kasowania zawartości komórki pamięci, do której będzie wpisywana nowa wartość. Czas zapisywania jest kontrolowany przez specjalny wewnętrzny timer i może się zmieniać w zależności od temperatury i napięcia zasilania. Ustawienie bitu zabezpieczenia przed odczytem powoduje, ze programator nie ma dostępu do pamięci EEPROM, ale mikrokontroler może realizować operacje zapisu i odczytu. Aby odczytać dane z pamięci należy wpisać adres odczytywanej komórki do EEADR. Wpisanie jedynki do bitu RD rejestru EECON1 (rys. 11) inicjuje operację odczytu z pamięci. Bitu tego nie można wyzerować programowo. Jest zerowany automatycznie po zakończeniu operacji odczytu. Dane pojawiają się w EEDATA tak szybko, że można je czytać już w następnej instrukcji. Zawartość EEDATA nie zmienia się do momentu następnego odczytu lub zapisu do pamięci. Przykład procedury odczytu komórki o adresie lOłi w pamięci EEPROM: adree equ 0x10 ; adres lOh _rdeeprom movlw adree ;adres w W movwf EEADR bsf STATUS,RPO ;bank 1 bsf EEC0Nl,RD ;inicjuj odczyt bcf STATUS,RPO ;bank 0 movf EEDATA,W ;dana z pamięci do W Zapisywanie do pamięci EEPROM nie jest już tak proste. W pierwszej kolejności należy wpisać do EEADR adres, a do EEDATA zapisywany bajt. Następnie trzeba ustawić bit WREN rejestru EECON1 (wpisać jedynkę). Bit ten jest zerowany po włączeniu zasilania. Wprowadzenie dodatkowego bitu, który trzeba ustawiać przed operacją zapisu, pomaga uniknąć błędnych zapisów do pamięci po włączeniu zasilania, zanikach napięcia lub przy błędnym wykonywaniu programu. To jeszcze nie wszystko. Należy wykonać teraz specyficzną operację wpisania sekwencji war- tości 55h iAAh do rejestru EECON2. Bez tej operacji zapis do pamięci nie rozpocznie się. Dopiero teraz wpisanie jedynki do bitu WR inicjuje operację zapisu do pamięci. Po jej zakończeniu zerowany jest bit WR i wpisywana jest jedynka do EEIF (rejestr EECON1). Jeżeli wpis do pamięci EEPROM zostanie nieoczekiwanie przerwany przez zerowanie wymuszone na wejściu MCLR lub zerowanie od watchdoga, to do bitu WRERR zostanie wpisana jedynka. W takim przypadku należy powtórzyć operację wpisu. Typowy czas zapisu wynosi ok. lOms. Istnieją dwa sposoby sprawdzenia, że bajt jest już zapisany. Pierwszy z nich polega na odblokowaniu przerwania od kompletnego zapisu EEPROM (bit EEIE=1 w INTCON REGISTER). Wówczas po zakończeniu wpisu zgłaszane jest przerwanie. W procedurze obsługi należy wyzerować flagę EEIF. Drugi sposób polega na sprawdzaniu w pętli czy EEIF=1, lub czy WR=0 (bit EEIE=0). Poniżej podano przykład procedury wykorzystującej sprawdzanie w pętli bitu WR. _wreeprom movlw adree movwf EEADR ;zapisanie adresu bit 7:5 niezaimplementowane: czytane jako 0 movf W,dana movwf EEDATA ;zapisanie danej bsf STATUS,RPO ;bank 1 bcf INTCON,GIE ;zablokowanie ;wszystkich przerwań bsf EEC0Nl,WREN ;pozwolenie ;na wpis movlw 0x55 ;konieczna sekwencja ;inicjująca wpis movwf EEC0N2 movlw Oxaa movwf EEC0N2 bsf EEC0Nl,WR ;start wpisu WR=l bsf INTCON,GIE ;odblokowanie ;przerwań _sprwrbtfsc EEC0Nl,WR ; sprawdzanie b"Ttu~WR goto _sprwr ;WR=1 bcf EECON1,WREN ;wpis kompletny ;i zablokowanie następnego bcf STATUS,RPO ;bankO Producent zaleca, aby w trakcie wykonywania sekwencji zapisywania do EECON2 były zablokowane wszystkie przerwania. Dobrym zwyczajem jest też utrzymywanie bitu WREN w stanie zero, a wpisywanie jedynki tylko na czas wpisu do pamięci EEPROM. Zaleca się też, aby po każdym zapisie wykonać procedurę weryfikacji (odczytanie zapisanego bajtu i porównanie z zapisywanym). Wszystkie przedstawione tutaj mechanizmy mają na celu uchronienie przed wpisaniem przypadkowych danych do pamięci, w której przechowywane są zazwyczaj dość istotne dane. Do omówienia pozostały jeszcze rejestry: PCLATCH (adresy Oah i 8ah), PCL (adresy 02h i 82h), INDF (adresy OOh i 80h) oraz FSR (adresy 04h i 84h). Rejestr PCL zawiera 8 mniej znaczących bitów licznika rozkazów. Można go zapisywać i odczytywać. Rejestr PCLATCH zawiera 5 bardziej znaczących bitów licznika i nie można go bezpośrednio odczytywać ani zapisywać. Na rys. 12 przedstawiono sposób tworzenie licznika rozkazów PC z rejestrów PCL i PCLATCH w dwu różnych sytuacjach. Możliwość wpisywania do rejestru PCL, i tym samym wykonywania sko- U u u R/W-0 R/W-x R/W-0 R/S-0 R/S-x EEIF WRERR WREN WR RD bit7 bit 4 EEIF 1 = operacja wpisu do EEPROM jest kompletna (musi być zerowana programowo) 0 = operacja wpisu nie jest jeszcze kompletna, lub jeszcze się nie rozpoczęła bit 3 WRERR. bit błędu EEPROM 1 = operacja wpisu nieoczekiwanie zakończona (MCLR reset lub WDT reset podczas operacji) 0 = operacja wpisu kompletna bit 2 WREN: EEPROM bit zezwolenia na wpis 1 = zezwolenie na wpis 0 = zabronienie wpisu blt1 WR. EEPROM bit wpisu 1 = rozpoczyna cykl wpisu do pamięci. Można tylko wpisać jedynkę. Jest zerowany tylko sprzętowo 0 = cykl wpisu do EEPROM jest kompletny bltORO. EEPROM bit odczytu 1 = rozpoczyna cykl odczytu z pamięci. Można tylko wpisać jedynkę. Jest zerowany tylko sprzętowo 0 = cykl odczytu nie rozpoczęty Rys. 11. bitO 82 Elektronika Praktyczna 1/2002 KURS PCH PCL 12 8 7 O PC PCLATH<4:0> T 8 PCLATH Do PCL wpisywany jBst wynik działania instrukcj np. Etddwf PCL,f PCH PCL 12 11 10 8 7 Ł 2 i PCLATH< 4:C J>
PC PCLATH Do oimiu biyow PCL i tizech PCH wpisywany jest jedenastobitowy adres skoku z kodu rozkazu. Dwa pozostałe bity PCH sa wpisywane z PCLATCH. Tak jest tworzony licznik rozkazów w wyniku działania rozkazów floto i caU. Rys. 12. ków, wykorzystywana jest w procedurach odczytywania stałych umieszczonych w pamięci programu. Przeanalizujmy to na przykładzie: z_stała equ 0x0f movlw 0x02 ;do W przesunięcie ;względem adresu _rdconst cali _rdconst moywf z_stała ;zapamiętanie ;stałej w komórce pamięci rani _rdconst addwf PCL,f ;do PCL ;wynik operacji PCL+W retlw 0x35 retlw 0x00 retlw 0x12 ;powrót z proc. ;_rconst w W zawarte 0x12 retlw 0x44 W wyniku działania tego fragmentu programu, do komórki z_stała pamięci RAM zostanie wpisana stała 12h. Gdyby w momencie wywołania _rdconst w rejestrze W była wartość np. 0, to do z_staia zostanie wpisana wartość 35h. Trzeba pamiętać, aby wartość W w momencie wywołania _rdconst nie zawierała większego przesunięcia niż ostatni rozkaz retlw. Kompilator asem-blera MPASM zawiera dyrektywę DT, która pozwala uniknąć żmudnego wpisywania retlw dla większych tablic danych. W naszym przykładzie procedurę _rdconst można zapisać inaczej: _rdconst addwf PCL,f dt 0x35,0x00,0x12,0x44, a kompilator sam już wpisze konieczne instrukcje retlw. Rejestry INDF i FSR służą do pośredniego adresowania pamięci RAM. Każdą komórkę tej pamięci można zaadresować bezpośrednio podając jej adres w kodzie rozkazu, np. movwf 0x20 - wpisz zawartość W do komórki o adresie 20h. Często jednak jest potrzebny bufor danych w pamięci RAM. Poszczególne elementy tego bufora są adresowane za pomocą wskaźnika, który jest zawarty w jakimś rejestrze. Do tego można wykorzystywać mechanizm adresowania pośredniego. Aby zaadresować komórkę pamięci należy do rejestru FSR wpisać jej adres. Jeżeli chcemy odczytać komórkę o adresie zawartym w FSR, to trzeba teraz odczytać zawartość INDF. Jeżeli chcemy wpisać daną pod adres określony w FSR, to trzeba tą daną wpisać do INDF. Pokażemy to na przykładzie odczytywania danych z bufora: movlw 0x0c movwf FSR ;do FSR adres ;początku bufora danych movf INDF,w ;do W zawartość ;komórki o adresie Och incf FSR,f ;FSR=FSR+1 następna ;pozycja w buforze movf INDF,w ;do W zawartość ;komórki o adresie Odh Na tym kończymy opisywanie rejestrów z obszaru SFR. Tomasz Jabłoński, AVT tomasz.jablonski@ep.com.pl Elektronika Praktyczna 1/2002 Siła w miniaturze' UJĘCI T51prog jest w ofercie Elneca drugim programatorem, s ostatnio opracowanych, umożliwiającym programowanie stosunkowo wąskiej grupy układów. Niemal oczywiste jest, że T51prog umożliwia programowanie wszelkich mikrokontrolerów s rodziny '51, nic natomiast nie sugeruje, że doskonale nadaje się także do programowania mikrokontrolerów AVR (w tym megaAYR). Ponieważ csęsto w aplikacjach mikrokontrolero-wych są stosowane szeregowe pamięci EEPROM, producent sa-implementował w T51progu obsługę pamięci EEPROM s wszelkimi interfejsami szeregowymi. Zgodnie z zapewnieniami producenta wszystkie procesory z tych dwóch rodzin montowa- W skład standardowego zestawu T51prog wchodzą: / programator, / dokumentacia, / oprogramowanie w wers|i dla DOS i Windows (3 dyskietki 3,5"), / kabel połączeniowy Centronics, /kabel ISP, / zasilacz sieciowy, / podstawkakalibracyina, / przykrywka antykurzowa na podstawką ZIF & A.i Rys. ne w obudowach DIL o maksymalnie 40 wyprowadzeniach są i będą (ich kolejne wersje) obsługiwane przez to niepozornie wyglądające urządzenie. Programowanie mikrokontrolerów w innych typach obudów wymaga zastosowania odpowiednich adapterów, które znajdują się oczywiście w ofercie producenta. Niespotykanym w konkurencyjnych programatorach uzupełnieniem możliwości T51pro-ga jest szeregowy interfejs ISP, którego złącze wyprowadzono na zewnątrz obudowy. Interfejs ten można wykorzystać do programowania mikrokontrolerów zainstalowanych w docelowym urządzeniu. Atutem programatora jest kontrola poprawności włożenia układu w podstawkę oraz weryfikacja jakości styku pomiędzy wyprowadzeniami układu a zaciskami podstawki. Niewielkie wymiary i łatwość dołączenia programatora do dowolnego komputera PC (poprzez standardowy interfejs Centronics IEEE1284 - maksymalna szybkość przesyłania danych wynosi lMB/s), umożliwiają traktowanie go jako urządzenia przenośnego, doskonale spełniającego typowe wymaga-^^_ nia także podczas prac serwisowych. Ważną zaletą programatora, która znalazła korzystne odbicie w jego cenie, jest uproszczony do rozsądnego minimum interfejs użytkownika - cały ciężar komunikacji przerzucono na oprogramowanie sterujące. Jest to dokładnie to samo oprog- Słowacki Ełnec przygotował kołejną atrakcyjną propozycję dla ełektroników-konstruktorów i łaboratoriów elektronicznych: miniaturowy programator T51prog. Jego nazwa od razu skojarzyła mi się ze sławnym niegdyś czołgiem T51, którego pancerz nie był (podobno) najdoskonalszy, ale za to silniki zasłynęły na całym świecie. To chyba ich moc wykorzystali konstruktorzy programatora prezentowanego w artykule... ramowanie, które jest wykorzystywane do sterowania pracą pozostałych programatorów produkowanych przez firmę Elnec. Istotną nowością, wprowadzoną w ostatnich dniach listopada 2001, jest polskojęzyczne menu (rys. 1) oraz pomoc (rys. 2) wbudowane w program. Dzięki zaangażowaniu jednego z dystrybutorów firmy Elnec, który przygotował tłumaczenie, język polski jest dostępny jako jeden z pięciu możliwych wariantów (obok angielskiego, niemieckiego, słowackiego - rys. 3 - i opcjonalnego holenderskiego). Pliki z polską pomocą i menu są dostępne pod adresem http;// www.elnec.com/swfpg4_lngf lng_pl.zip. Sposób obsługi programu sterującego pracą programatora nie uległ zmianom w stosunku do poprzednich wersji. Warto tylko przypomnieć, że większość uciążliwych zadań (jak np. konfiguro- wanie portu, czy kontrola sygnatur programowanych układów) oprogramowanie wykonuje automatycznie. Żywotność urządzenia zwiększono dzięki temu, że użytkownik może bez żadnego nakładu pracy wykonać procedury kalibracyjne, które sprowadzają się do włożenia w podstawkę odpowiedniego adaptera (który jest dostarczany wraz z programatorem) i wybrania odpowiedniej opcji w menu.,. Andrzej Gawryluk, AVT
*v#d t Wal *** 1
W* 1 1 ITi i -W- Rys. 3, Rys. 2. Dodatkowe informacje Programator do Testów wypoży-czyfa redakcji firmaEurodis. Oprogramowanie sterujące oraz pliki polskiego menu są dostępne w Internecie pod adresem www. elnec.com. Dystrybutorami lirmyElnecw Polsce są: - Eurodis Microdis, tel. (71) 301-04-00, wwtf.eurodis.com.pl - WG Electronics, Tel. (22)857-58-56, www.wg.com.pl. 84 Elektronika Praktyczna 1/2002 PROGRAMY Profesjonalny system wspomagający projektowanie układów elektronicznych W kolejnym artykule poświęconym pakietowi CAD firmy Cadence - ORCAD - kontynuujemy opis modułu LAYOUT, przeznaczonego do projektowania płytek dru ko wany ch . W tej części postaramy się bliżej przedstawić środowisko edytora oraz opiszemy czynności jakie powinien wykonać projektant podczas projektowania płytki drukowanej. Edytor płytek drukowanych, częsc 2 Prezentację modułu LAYOUT, rozpoczętą w poprzednim odcinku, zakończyliśmy na wczytaniu listy połączeń (nei-lisiy] wygenerowanej przez edytor CAP-TURE. Jej poprawne przekazanie do programu LAYOUT jest zakończone automatycznym otwarciem okna DESIGN WINDOW (rys. B), które jest podstawowym oknem programu używanym w trakcie projektowania obwodu drukowanego. Oprócz DESIGN WINDOW system uruchamia również trzy inne ok- na: COMPONENTS, NETS oraz POST PROCESS, które w pierwszej chwili są niewidoczne dla użytkownika (zminimalizowane), a których znaczenie wyjaśnimy w dalszej części artykułu. Zajmijmy się oknem DESIGN WINDOW. Jak widać na rys. 8, głównym elementem tego okna jest pole edycyjne, w obszarze którego przeprowadzamy poszczególne operacje podczas projektowania płytki. Tuż po wczytaniu netlisty, obszar edycyjny zawiera wszystkie elementy elektroniczne przewi- dziane wdanym projekcie, ulokowane zu- pełnie przypadkowo. Pasek narzędzi, które mamy do dyspozycji w LAYOUT, znajduje się w górnej części DESIGN WINDOW. Pasek ten zawiera ikony pozwalające na szybki dostęp do najczęściej wykorzystywanych funkcji. Chociaż paleta narzędzi jest w przypadku LAYOUT jednakowa dla wszystkich okien, poszczególne ikony uaktywniane są dynamicznie w zależności od aktualnie wykonywanej operacji. Ponieważ znajomość funkcji wywoływanych przez poszczególne ikony znajdujące się na pasku jest właściwie niezbędna, postaramy się przybliżyć Czytelnikom ich znaczenie: i . LV, HlHI i^. H Y Ś^>" Cl Clfrl_t !!'.-. H Ll ił Ct C ELICI d Ml n IV, s" 1 I1- r n 'i-nl -, rt. Ś.4 PU[*1 HS i ł L pi "4PI i f" 1* 1 ii H> Mi n i h".i,ł'i'i-\i', ii-uiiu ' i i MMI M i H .L i Mt Ni IU*MU l| Ś H.l U Mi Hl wnen hi n D 16 1 11 n Mt [>i *Jyw ku H U ii łn Ił ni llł e d Jt, tu 11 Mi n-i T-.--I fr, Fl* H u 1 1 Ś ll _!Ł___i M. 1>VI ll. i" III' .jh| Ś Mliii U. MM 'M| |n| | Ś> | | M 1 .1 II wi <\M- ui; uli \.Liii ji i '.w; mu iiji uli 'J-i ;i LI i ( . 1 II hi "i i rmi*ji*nr ŚŚ W-WUUWrJHH-** W ittuui i D 1X11114 m
Rys. 8. Rys. 9. Elektronika Praktyczna 1/2002 85 PROGRAMY nKa Rys. 10. Rys. & QJ TJ e arld ptV[; DtWlI grtd ptY|: Pum yrti ptY|: ,100 LIERARY MANAGER - umożliwia szybki dostęp do okna LIERARY MANAGER. EDIT - wyświetla okno pozwalające na edycję właściwości dowolnego komponentu zaznaczonego w obszarze edycyjnym. SEREADSHEET - umożliwia wybór interesującego nas okna SEREADSHEET zawierającego informacje o wszystkich elementach określonego typu, które występują w projekcie. 0.UERY - wyświetla wszystkie informacje na temat dowolnego komponentu podświetlonego w obszarze edycyjnym. COMEONENT - pozwala na zaznaczenie, dodanie, przeniesienie w obrębie obszaru roboczego, edycję i skasowanie dowolnego komponentu. FIN - pozwala na zaznaczenie dowolnego wyprowadzenia należącego do danego elementu w celu edytowania go. OESTACLE - umożliwia naniesienie właściwego obszaru roboczego, który reprezentuje projektowaną płytkę. Jest wykorzystywana również przy tworzeniu fooiprinis. Ikona pozwala również na wykonywanie operacji zaznaczania, przesuwania, edycji i kasowania zaznaczonego OESTACLE. TEXT - pozwala dodawać, kasować, przenosić wszelkie opisy i symbole tekstowe znajdujące się w danym projekcie. CONNECTION - ikona umożliwiająca działania na poszczególnych połączeniach elektrycznych występujących pomiędzy wyprowadzeniami. Fozwala na zaznaczanie, dodawanie i kasowanie połączeń. pyS 12. Hl ERROR - pozwala na zaznaczanie i usuwanie znaczników sygnalizujących błędy wykryte przez funkcję DRC (Design Rule Check). COLOR - udostępnia okno CO-LOR, w obszarze którego definiujemy kolorystykę poszczególnych warstw i komponentów. ONLINE DRC - jej użycie powoduje przejście funkcji DRC w tryb on-line. Status w jakim znajduje się funkcja pokazywany jest na bieżąco na pasku okna DESIGN WINDOW. RECONNECT - umożliwia wyświetlanie projektowanego układu w trybie reconnecil czyli bez połączeń elektrycznych lub ścieżek, o ile zostały one już wytyczone. AUTO FATH ROUTE - umożliwia ręc zne wytyczeni e dowo lnej ścieżki w trybie interaktywnym, czyli przy pełnym wsparciu autoroutera. SHOW TRACK - umożliwia ręczne wytyczenie wybranej ścieżki przy częściowym wsparciu ze strony autoroutera. EDIT SEGMENT - pozwala na edycję ręczną ścieżki w tzw. trybie segmentowym. Fo zmianie położenia ścieżki edytor automatycz- JE.
tom nie optymalizuje długość i jej kąty załamań. ^| ADD/EDIT ROUTE - pozwala na -* całkowicie ręczne wytyczenie wybranej ścieżki bez jakiegokolwiek wsparcia ze strony autoroutera. Md DESIGN RULE CHECK - urucha-JłJ mia funkcję DRC z parametrami jakie zostały zadane w oknie CHECK DESIGN RULES dostępnym z poziomu MENU>AUTO-> DESIGN RULE CHECK. * I REFRESH ALL - odświeża zawar--t-l tość okna DESIGN WINDOW. Inne elementy okna DESIGN WINDOW, na które należy zwrócić uwagę, to pasek statusu znajdujący się tuż pod obszarem edycyjnym oraz wskaźnik aktualnego położenia kursora, połączony ze wskaźnikiem rastra (gridu) ulokowany w górnej części okna. Funkcje pełnione przez te elementy są czysto informacyjne , niemniej jednak bardzo przydatne w procesie projektowania. Jak już wspomnieliśmy, otwarcie okna DESIGN WINDOW powoduje jednoczesne uruchomienie trzech dodatkowych okien: COMFONENTS, NETS i FOST PROCESS, które są początkowo niewidoczne dla użytkownika. O ich istnieniu możemy przekonać się minimalizując DESIGN WINDOW. Wymienione okna należą do grupy okien typu spreadsheeis (rys* 9). LAY-OUT udostępnia szeroką gamę okien spreadsheeis, z których każde zawiera informacje o określonym typie elementów wchodzących w skład projektu. Opisując okna należące do grupy spreadsheeis należy zwrócić uwagę, że zapewniają one nie tylko wizualną i strukturalną prezentację informacji o składnikach projektu, ale pozwalają również na edycję ich właściwości. Edycja właściwości może odbywać się przy tym na kilka sposobów. W najprostszym przypadku rozpoczynamy ją dwukrotnym kliknięciem lewym klawiszem myszki na wybranej komórce, co powoduje otwarcie kolejnego okna pozwalającego na zmianę określonych Rys. 13. 86 Elektronika Praktyczna 1/2002 PROGRAMY Libr * Rys. 14. właściwości. Wywołanie dowolnego spreadsheei możliwe jest np. poprses kliknięcie na ikonie SPREADSHEET, a następnie wybranie typu elementów 2 wyświetlonej listy dostępnych. Innym oknem które możemy wykorzystywać w procesie projektowania jest tzw. QUERY WINDOW. Okno to po-swala na natychmiastowe uzyskanie szczegółowych informacji na temat dowolnego elementu zaznaczonego na schemacie lub w którymś z okien spre-adsheeis, W celu uzyskania tych informacji należy kliknąć na ikonie QUERY, a następnie w interesujący nas element płytki. Okno QUERY zawierające informacje na temat jednego z elementów przedstawiono na rys. 10, Proces projektowania w LAYOUT najlepiej rozpocząć od ustalenia ogólnych właściwości środowiska edytora, takich jak jednostki miary oraz gridy systemowe jakie będą stosowane w edytorze. Dostęp do wspomnianych właściwości umożliwia okno SYSTEM SETTINGS (rys* 11) uruchamiane za pomocą polecenia SYSTEM SETTINGS dostępnego z poziomu menu (OPTIONS). Jeśli chodzi o jednostkę miary, jaką chcemy przyjąć w projekcie, LAYOUT zapewnia właściwie pełną swobodę. Do dyspozycji mamy milsy, cale, mikrony, milimetry, centymetry. Decydując się na daną jednostkę powinniśmy jednak być konsekwentni i nie zmieniać jej w trakcie dalszej pracy. Ustawienia giidów ustalamy wprowadzając wartości w odpowiednich polach okna SYSTEM SETTINGS. Możemy kierować się przy tym następującymi zaleceniami producenta: - najefektywniejsze działanie autoroute-ra występuje, jeśli wartości w polach rouiing grid i via grid są takie same, - "wartość "wprowadzona w polu place grid powinna być wielokrotnością rouiing grid i via grid, - rouiing grid nie powinien być mniejszy niż 5 mils, - deiail grid powinien być ustawiony na 1 mils w celu uzyskania maksymalnej rozdzielczości. W kolejnym kroku należy nanieść obrys płytki, czyli określić powierzchnię na której będziemy rozmieszczać elementy składowe projektu. W celu narysowania obrysu najlepiej użyć ikonki OESTACLE znajdującej się na palecie narzędzi, a następnie z menu podręcznego fpop-menu, uruchamiane prawym klawiszem myszki) wybrać kolejno polecenia NEW, a później PROPERTIES. Wówczas otworzy się okno EDIT OESTACLE (rys* 12), w obszarze którego mamy dostęp do wszystkich "właściwości związanych z nanoszonym obrysem. W EDIT OESTACLE sprawdzamy przede wszystkim pola OESTACLE TYPE i OESTACLE LAYER, które zawierać powinny odpowiednio parametry EOARD OUTLINE i GLOBAL LAYER. Jeżeli parametry te ustawione są poprawnie, możemy kliknąć OK i rozpocząć rysowanie. W tym celu umieszczamy kursor w miejscu obszaru edycyjnego od którego chcemy rozpocząć rysowanie i klikamy lewym przyciskiem myszki. Nanoszenie obrysu elementu możliwe jest także za pomocą klawiatury Cprzy wykorzystaniu klawiszy kierunkowych). Załamanie rysowanej linii np. pod kątem 90 zapewnia klawisz spacji lub lewy klawisz myszki. Po określeniu obszaru płytki należy zakończyć działanie funkcji OESTACLE poprzez wybór polecenia END COMMAND z pop-menu. Kolejnym krokiem, jaki powinniśmy wykonać projektując obwód drukowany, jest naniesienie otworów montażowych (dotyczy to płytek, które wymagają takich otworów). W celu umieszczenia otworu należy kliknąć na ikon-ce COMPONENT, znajdującej się na palecie narzędzi, a następnie za pomocą prawego klawisza myszki uaktywnić menu podręczne i wybrać polecenie NEW. Wykonanie tej operacji spowoduje otwarcie okna ADD COMPONENT (rys. 13), w którym powinniśmy kliknąć na przycisk FOOTP-RINT. Umożliwia on dostęp do zasobów bibliotecznych poprzez okno SE-LECT FOOTPRINT. W SELECT FOOT-PRINT pozostało juź tylko odszukać obudowę o nazwie MTHOLE, która jest standardowo dostarczana razem z LAYOUT i kliknąć OK (biblioteki edytora zawierają trzy typy otworów: MTHOLEl, 2 i 3, które znajdują się w LAYOUT.LLE -może my tworzy ć także własne). Ostatnią czynnością jest zaznaczenie opcji NON ELECTRIC w oknie ADD COMPONENT i po zamknięciu tego okna p rzyć i s ki e m OK należy umieścić wy- szarże projektowanej płytki za pomocą lewego klawisza myszy. Kolejne otwory możemy nanosić poprzez operację kopiowania. Zanim zajmniemy się rozmieszczaniem komponentów, należy jeszcze sprawdzić i w razie potrzeby ustawić pewne parametry płytki. Należy do nich m.in. liczba warstw, które zawierał będzie nasz obwód drukowany. Wszystkie informacje dotyczące poszczególny ch warstw są zawarte w LAYERS spreadsheet. Dostęp do tego okna najłatwiej uzyskać poprzez klik-nięcie ikony SPREADSHEET na palecie narzędzi i wybranie polecenia LAYERS. Modyfikacja właściwości poszczególnych warstw i ich udostępnianie czy wyłączanie możliwa jest po dwukrotnym kliknięciu lewym klawiszem myszki na wybranej komórce (właściwość). Chcąc np. wyłączyć warstwę klikamy dwukrotnie na komórce LAYER TYPE związanej z daną warstwą i w uaktywnionym w ten sposób oknie EDIT LAYER (rys. 14) wybieramy opcję UNUSED ROUTING. Innym parametrem, który powinniśmy sprawdzić przed rozmieszczeniem elementów i w zależności od potrzeb dokonać jego modyfikacji, jest tzw. glohal spacing. Parametr ten określa minimalne odstępy pomiędzy poszczególnymi obiektami na płytce. W celu zmiany opisywanego parametru należy uaktywnić okno ROUTE SPACING, co następuje po wybraniu polecenia GLOBAL SPACING z poziomu MENU>OPTIONS. Podobnie jak w przypadku okna LAYERS (rys. 15), edycja jest możliwa po dwukrotnym kliknięciu lewym klawiszem myszki w wybraną komórkę, przy czym nową wartość wprowadzamy w automatycznie uruchomionym oknie EDIT SPACING. RK Dodatkowe informacje Oprogramowanie do testów udostępniła redakcji lirrnaRK-System, Tel. (22) 724-30-39. Ewaluacyjnawersja OrCAD-a 9.1 znajduje się na ptycieCD-EP9/2001B. brany otwór w ob- pyS 15 88 Elektronika Praktyczna 1/2002 MINIPROJEKTY Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość Ich praktyczne] 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 scaionych, 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 obrotów wentylatora W handlu jest dostępnych wiele rodzajów miniaturowych wentylatorów przeznaczonych do stosowania w sprzęcie elektronicznym. W większości są przeznaczone do pracy przy napięciu roboczym 12V. Ich zadaniem jest wymuszanie przepływu powietrza w celu chłodzenia podzespołów elektronicznych. Sam wentylator nie posiada Żadnych elementów reg ula cyjnych um ożli wiają cych sterowanie natężeniem przepływu powietrza. Jest to jednak możliwe przez zmianę prędkości obrotowej wirnika wentylatora. O skonstruowanie regulatora poproszony zostałem przez kolegów. Proszono mnie również o to, aby układ był możliwe jak najprostszy i jak najtańszy. Aby obniżyć koszty układu przy jednoczesnym zachowaniu w miarę nowoczesnego charakteru regulatora, postanowiłem wykorzystać stary, lecz niezawodny układ scalony typu NE555. Zastosowanie tej kostki uprościło budowę regulatora do tego stopnia, że każdy początkujący elektronik-amator wykona go bez problemów w kilka minut. Cały układ możemy podzielić na dwa "bloczki" pokazane na rys. 1: - blok sterowania, - układ wykonawczy. +12V pon Rys. 1. W1 Blok sterowania (jego schemat pokazano na rys. 2) jest generatorem impulsów 0 zmiennym współczynniku wypełnienia. Zakres regulacji od 1% do 99%. Częstotliwość generowanych impulsów jest stała i zależna od wartości elementów POTl, C2, Rl, R2. Oczywiście wartość ta może być modyfikowana przez odpowiedni dobór wartości kondensatora C2 1 potencjometru regulacyjnego POTl. Układ wykonawczy to nic innego jak najzwyklejszy w świecie tranzystor średniej mocy NPN typu BD135 wraz z miniaturowym Rys. 2. Rys. 3. wentylatorem, sterowany z wyprowadzenia Q (wyprowadzenie 3) NE555. Z montażem i uruchomieniem układu nie powinniśmy mieć żadnych problemów. Na rys. 3 pokazano mozaikę ścieżek płytki drukowanej wykonanej na jednostronnym laminacie, na której umieszczono wszystkie elementy regulatora. Układ zmontowany ze sprawnych elementów nie wymaga uruchamiania i od razu pracuje poprawnie. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl WYKAZ ELEMENTÓW Rezystory RL R2: lkG R3: 4,7 kO POTl: 47OkD Kondensatory Cl: 10nF C2: 220nF Półprzewodniki DL D2: 1N4148 Tl: BD135 US1: NE555 Różne Wl: wentylator KD1204PFS2-8 DC12V/0/>W Złgcze śrubowe ARK: lszt Płytka drukowana jest dostępna w A VT - oznaczenie AYT-1330. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http:llwww.ep.conj.pl/7pdfl styczeitO2.htm oraz na płycie CD-EP1/2002 w katalogu PCB. Elektronika Praktyczna 1/2002 MINIPROJEKTY Aktywna bariera podczerwieni W tym projekcie postanowiłem nie wykorzystywać żadnych układów scalonych i wykonać układ przy użyciu elementów dyskretnych. Takie wykonanie ma dość duże walory edukacyjne i pozwala zapoznać młodszych Czytelników z coraz rzadziej stosowanymi układami tranzystorowymi. Schemat elektryczny układu przedstawiono na rys. 1. Promieniowanie podczerwone, w postaci fali zmodulowanej, oświetla TOR PODCZERNIENI Til I -ran. I~C2~I -cm-i ci i -CB3D- dwie równolegle połączone diody odbiorcze D3, D4, które polaryzują bazy tranzysto- rów T3 i T4 pracujących w układzie wtórników emite-rowych. Równoległe połączenie diod odbiorczych ma na celu zwiększenie kąta odbioru promieniowania podczerwonego z nadajnika oraz zwiększenie czułości odbiornika, a co za tym idzie zasięgu. Gdy diody odbiorcze są oświetlone, na wyjściu odbiornika pojawia się wysokie napięcie (o wartości bliskiej napięciu zasilania) - poziom wysoki. Układ zmontowano na dwóch jednostronnych płytkach, których schematy montażowe przedstawiono na rys. 2. Praktycznie, po zmontowaniu układ pracuje od razu i to bez żadnej regulacji. Krzysztof G órs ki, AVT krzysztof.gorski@ep.com.pl o+10V Wyjście T1 T2 BD135 BD135 Nadajnik Rys. I. Odbiornik WYKAZ ELEMENTÓW Nadajnik Rezystory Rl, R2: 15OQ R4, R3: 3,9kQ Pl: 47kQ Kondensatory Cl, C2: lOOnF Półprzewodniki Dl, D2: diody nadawcze podczerwieni Tl, T2: BD135 Odbiornik Rezystory R5, R6: lka R7: 2,2kQ R8: 3,9kQ R9: 5,lkQ RIO: lka Rl I: I5ka R12: 300kQ Kondensatory C3, C4: 220nF C5: 330nF Półprzewodniki D3, D4: diody odbiorcze podczerwieni T3...T5: BC548 T6: BC556 Płytka drukowana jest dostępna wAVT- oznaczenie AVT-1331. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp: 11 www. ep.com.pl/?p df/ styczenO2.htm oraz na płycie CD-EP1/2002 w katalogu PCB. 90 Elektronika Praktyczna 1/2002 PROJEKTY CZYTELNIKÓW DzioS "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. Układ prototypowy dla mikrokontrolerów z serii 8051, W drugiej (ostatniej) części artykułu przedstawiamy oprogramowanie układu uruchomieniowego. Jego obsługa jest uproszczona, gdyż we współpracującym komputerze PC zastosowano zwykły program terminalowy z systemu Windows. Oprogramowanie Oprogramowani9 prsygo-towan9 dla S9stawu zostało podsi9lon9 na dwi9 csęści: - oprogramowani9 płytki prototypów ej, - oprogramowani9 dla kom-put9ra PC sap9wniając9 transmisję danych s i do płytki EVM51. Oprogramowani9 płytki składa się s kilku zbiorów: programu monitora i S9sta-wów dodatkowych kom9nd dla monitora oras opis układu wyjściow9go (s buforowani9rn ssyny adr9sow9J lub nie) implementowanego w układsi9 programowalnym GAL. Dwa listingi (list. 1 i 2) sawi9rają równania Iogicsn9 opisując9 ten układ fw GAL'u). Pi9rw-ssy jest wykorzystywany w przypadku, gdy ni9 sarni9-rzarny dołączać dodatkowych pamięci esy układów rosss9- rs9ń, jak programowaln9 układy W9jścia/wyjścia, itp. Układ U8 jest wt9dy 8-bitowym por-tem W9jściowym, a układ U6 8-bitowym port9m wyjściowym. Drugi listing prs9dsta-wia równania Iogicsn9 dla układu GAL w przypadku, gdy sami9rzamy dołączać S9wnę-trsn9 układy. W tym przypadku U8 jest dwuki9runkowym bufor9m ssyny danych, a U6 jest satrzaski9m rnłodss9J csęści ssyny adr9sow9J. Nal9Ży pamiętać, że w tym prsypadku wyprowads9ni9 11 układu U6 trs9ba połącsyć s nóżką ALE mikrokontrol9ra. Chętni mogą ocsywiści9 9ksp9rym9ntować i smi9niać W9 własnym sakr9-sie równania dla układu pro-gramowaln9go GAL. Oprogramowani9 komput9-ra PC to standardowo włącso-ny do syst9mu Windows, bądź inn9go syst9mu op9racyjn9go 00 00 00 00 00 43 03 FO FF 55 55 55 55 AA AA AA AA 10 55 55 55 55 AA AA AA AA 55 55 55 55 AA AA AA AA 20 55 55 55 55 AA AA AA AA 55 55 55 55 AA AA AA AA 30 55 AO 01 EG OT OA 00 01 43 31 OF 4$ OB 00 OB AA 40 55 55 55 55 AA AA AA AA 55 55 55 55 AA AA AA AA 50 55 55 55 55 AA AA AA AA 55 55 55 55 AA AA AA AA 60 55 55 55 55 AA AA AA AA 55 55 55 55 AA AA AA AA 70 55 55 55 55 AA AA AA AA F2 33 AA FF AA AA AA AA Projekt 094 V Wykorzystanie wewnętrzne)pamięci RAMptzez monitor Komórki pamięcizaznaczone na szato są wykorzystywane przez piogiarn monitora. yL program t9rminalowy IM (Hyp9r T9rminal II w prsypadku Win-'m dows). T9stowani9 programów wymaga użycia programu, który umożliwi transfer pliku skompilowan9go fas9m-bl9r9m) do pamięci RAM i pósni9Jssą kontrolę J9go wykonania. Rolę t9go programu sp9łnia monitor. Płytka EVM51 używa programu monitora o bardso dużych możliwościach, a są to: 1. Automatycsna d9t9kcja ssybkości transmisji prs9s port ss9T9gowy. 2. Można samemu dodawać now9 kom9ndy monitora b9s potrs9by kompilacji programu monitora, esy prs9pro-gramowywania mikrokontrol9-ra 89C51. 3. Download/Upload programów w formaci9 Intel h9x (plik po kompilacji asemblerem). 4. Edycja W9wnętrsn9j pamięci RAM. 5. Edycja S9wnętrsn9j pamięci RAM (poni9waż pamięć RAM umi9sscsona na płytc9 moŻ9 być sarówno pamięcią danych jak i pamięcią programu, dołącsana kom9nda monitora umożliwia łatwą 9dy-cję obu ich rodzajów). 6. Wbudowany disass9m-bler. 7. Możliwość pracy kroko-W9J mikrokontrol9ra. 8. Ustawia ni9 pułap9k (breakpoinis). 9. Wbudowana funkcja umożliwia programowani9 pamięci Flash. Na rasi9 odblo-kowani9/sablokowani9 funkcji programowania pamięci Flash jest możliw9 tylko podesas kompilacji, a to powoduJ9 ko- Elektronika Praktyczna 1/2002 97 PROJEKTY CZYTELNIKÓW Uilcn 1o wmaRys. 5. nieczność posiadania dwóch układów 89C51 z zaprogramowanym monitorem jeśli równocześnie chcemy wykorzystywać płytkę, jako zwykłą płytkę, uruchomieniową. Standardowo wszystkie funkcje obsługujące pamięć Flash są wyłączone, a użycie ich wymaga drobnych zmian na płytce (rozkład wyprowadzeń pamięci Flash róśni się nieco od rozkładu wyprowadzeń typowej pamięci RAM. Do komunikacji z monitorem mośe służyć jeden z dowolnych programów terminalowych: ProComm (MSDOS), Seyon (Xli, Linux), Terminal (Windows 3.1) lub HyperTer-minal (Windows). Program terminala powinien być skonfigurowany do pracy w następujący sposób: 8Nl, prędkość transmisji jest ustalana automatycznie (zalecam na początek 9600 dla kwarcu ll,059MHz). Uruchomienie przeprowadzamy następująco: - Łączymy płytkę z komputerem za pomocą kabla s układem MAX232. - Uruchamiamy terminal. - Włączamy napięcie zasilające płytkę. - Naciskamy klawisz "EN-TER". Nastąpi autodetekcja szybkości transmisji i wyświetlenie komunikatu powitalnego. Wpisanie "?" wyświetli pomoc ze spisem komend (rys. 5). Program monitora w czasie wykonywania komend uśywa wewnętrznych zasobów mikro-kontrolera - niektóre zewnętrzne komendy mogą dotyczyć zewnętrznych zasobów płytki, np. zewnętrznej pamięci RAM, a więc przy wykorzystywaniu niektórych zewnętrznych komend muszą być dostępne zewnętrzne zasoby. W tym celu należy zapoznać się z dokumentacją zewnętrznych komend. Mapę wykorzystania wewnętrznej pamięci RAM mi kro kontrolera przedstawiono w tab. 2, a przeznaczenie komórek opisano w tab. 3. W zasadzie większość z nich, oprócz stosu, mośe być wykorzystywana przez programy użytkownika, a ich nadpisanie nie powinno powodować problemów w pracy monitora. Jednak jest to ingerencja w dane monitora i w pewnych sytuacjach mośe powodować dziwne zachowanie się programów. Opis standardowych komend monitora M - Lisi programs Wyświetla wszystkie programy zapisane w zewnętrznej pamięci programu (przypominam, śe pamięcią progra- Adres 00 07 10 1F 31 40 78 7B Zastosowanie Pierwszy bank rejestrów Wykorzystywane podczas lądowania programów (komenda download) Stos (uwaga zewnętrzne komendy, a zwłaszcza praca krokowa i disassembler potrzebują znacznie więcej pamięci na stos) 4 bajty przechowujące wartość wpisaną do timeraH ustalające szybkość transmisji Wykorzystywane w czasie restartu i tylko przez procedurę autodetekcji szybkości transmisji szeregowej Programy mogą "zamazywać" te komórki, ale trzeba pamiętać, ze wywołanie podprogramu monitora ustalającego szybkość transmisji przez port szeregowy, nadpiszete cztery bajty mu mośe być teś pamięć RAM umieszczona na płytce i zazwyczaj to właśnie w tej pamięci są przechowywane dodatkowe programy). Program musi się zaczynać na stronie 256 bajtowej i posiadać specjalny 64 bajtowy nagłówek. Długość programu jest dowolna. Reguły pisania programów są opisane dalej. R - Run program Wykonuje program, który ma specjalnie zdefiniowany nagłówek. D - Download Download pliku w formacie Intel hex. Plik zostaje zapisany do pamięci RAM, skąd mośe zostać uruchomiony, a jego działanie mośe być monitorowane. Komenda sprawdza poprawność transmisji i wyświetla ewentualne komunikaty o błędach. Przykład: Begin ascii transfer of Intel hex file, or ESC to a bort Download completed Summary; 249 lines receiyed 3923 bytes receiyed 3923 bytes written No errors detected U - Upload Komenda w działaniu odwrotna do poprzedniej. Prze-chwytując transmitowane da- ne do pliku mośemy "zgrać" plik po modyfikacjach na nasz komputer PC. Tą funkcją moś-na takśe zgrywać EPROM-y 2 7C256 umieszczone na płytce EVM51. Przykład pokazano na list. 3. N - New locaiion Zmienia aktualny wskaźnik do pamięci (aktualny wskaźnik jest wyświetlany po znaku gotowości). / - Jump to rnernoiy locaiion Skok do określonej lokalizacji. Umieszczony w tej lokalizacji program zostaje wykonany. Przed skokiem jest odkładany na stos adres 0000, więc jeśli program kończy się instrukcją RET to nastąpi restart monitora. Jeśli program przestaje działać, to jedyną szansą na powrót do monitora jest zerowanie mikro-kontrolera. H - Hex dump rnernoiy "Zrzuca" na ekran 256 bajtów pamięci poczynając od aktualnej lokalizacji wskaźnika pamięci. Uwaga: wykonywane jest to komendą movc. 1 - Hex dump iniernal m em ory Wyświetla zawartość wewnętrznej pamięci danych. Nie wyświetla rejestrów specjalnego przeznaczenia. E - Editing exiernal RAM Edycja zewnętrznej pamięci począwszy od aktualnego wskaźnika pamięci. List. 1. r74HC573 Jest S bitowym portem wyjściowym EqUatlons U2 45_DIR = ' (('UP_P4 i 'UP_RD 5 UP_?il5) # (UP_P4 i 'UP_RD i 'UPJH5J } r U2 45_G = ' (( 'UP_P4 i UP_?Ll5) # (UP_P4 i 'UP_?Ll 5) ) U573 CLK ( 'UP_P4 i iUP_HR 5 UP A15) # (UP_P4 i iUP_HR i 'UPJH5J r 10 WR = ' (( 'UP_P4 i iUP_HR 5 UP_?Ll5) # (UP_P4 i iUP_HR i 'UPJH5J } r I0_CS = ' (( 'UP_P4 i UP_?Ll5) # (UP_P4 i 'UP_?Ll FJlM_0E = '((UP_P4 i UP_RD i u P A15ł # ( 'UP_P4 i 'UP_RD i 'UP_ftl5) # (HIPJ5 i 'UP_PSEN i 'UP_?115Mr FJlM_HE = '((UP_P4 i UP_HR i u P_fil5) # ( 'UP_P4 i iUP_HR i 'UP_ftl5 }}r FL0M_0E = '((UP_P5 i UP_PSEN) I ( 'UP_PSEN i UP 5 M ; Ust. 2. r74HC573 ]est buforem zyny adre sowej EqUatlons U2 45_DIR = '(('UP_P4 i 'UP_RD 5 UP A15J # (UP_P4 i 'UP_RD i 'UPJH5J } r 10 RI> = '(('UP_P4 i 'UP_RD 5 UP_?il5) # (UP_P4 i 'UP_RD i 'UPJH5J } r U2 45 G = ' ( ( 'UP_P4 i UP hl5) # (UP_P4 i 'UP_?Ll 5) ) I0_CS = ' ( ( 'UP_P4 i HP_hl5) # (UP_P4 i 'UP_?Ll 5) ) 10 WR = '(('UP_P4 i iUP_HR 5 UP A15) # (UP_P4 i iUP_HR i 'UPJH5J } r FJlM_0E = '((UP_P4 i UP_RD i u P A15ł # ( 'UP_P4 i 'UP_RD i 'UP_ftl5) # (HIPJ5 i 'UP_PSEN i 'UP_?115Mr FJlM_HE = '((UP_P4 i UP_HR i u P_fil5) # ( 'UP_P4 i iUP_HR i 'UP_ftl5 }}r FL0M_0E = '((UP_P5 i UP_PSEN) I ( 'UP_PSEN i UP 5 M ; 98 Elektronika Praktyczna 1/2002 PROJEKTY CZYTELNIKÓW C - Clear rnernoiy ZapisuJ9 S9rami S9wnętrs-ną pamięć. Funkcja ułatwia wychwyc9ni9 właściwych danych w pamięci, gdyś po włączeniu zasilania pamięć RAM jest saswycsaj wyp9łniona przypadkowymi wartościami. Powyśssy opis jest bardso skrótowy i dotyczy kom9nd standardowo wbudowanych w program monitora. Ni9 zostały opisan9 funkcJ9 urnośli-wiając9 programowani9/kaso-wani9 pamięci Flash, gdyś pr9S9ntowana płytka ni9 jest przystosowana do urni9sscs9-nia t9go typu pamięci, ale przystosowani9 jej do t9go ce-lu jest bardso prost9 i ni9 wymaga więc9J niś 20 minut. Dołącs9ni9 sp9cjaln9go nagłówka do pisanych programów umośliwia wykorsysta-ni9 funkcji wbudowanych w monitor. Większość s nich to funkcJ9 obsługując9 trans-misJ9 ss9r9gową. Jak to zostało wcs9Śni9J wspomnian9, mośliw9 jest do-dawani9 kom9nd uśytkowni-ka. Aby były on9 "widsian9M prs9s monitor, mussą być właściwi9 skonstruowan9. Oto sasady pisania tych kom9nd: 1. Mussą się sacsynać na 256-bajtow9J stroni9. 2. Aby były rosposnawaln9 mussą sawi9rać sp9cjalni9 skonstruowany nagłów9k. 3. Mussą się końcsyć instrukcją RET. Punkty 1 i 3 są ocsywist9. Wyjaśni9nia wymaga konstrukcja nagłówka. Są 3 pod-stawow9 typy programów ros-posnawalnych prs9s monitor: - Normalny program. Nagłó-W9k programu pojawi się podcsas próby wykonania kom9ndy R - "run". - Start-up program. Uśyt9cs-ny wt9dy, gdy jest wbudowany w pamięć ni9ulotną (EPROM lub Flash). W tej W9rsji płytki ni9 jest wyko-rsystywany. Wykonywany jest podcsas r9startu oprogramowania płytki. - ICorn9nda. Ocsywiści9 kaśdy inny program moŚ9 być wykonany prs9s mikrokontrobr. Ni9 bę-dsi9 on J9dnak rosposnawany i wyświ9tlany prs9s program monitora. W takim prsypadku do wykonania programu nale-śy uśyć instrukcji jump monitora. Standardowo na dołącsa-ne kom9ndy prs9snacsona jest prs9strs9ń pomiędsy ad-r9sami 1000...lFFF, ale monitor wykryJ9 takŚ9 programy umi9sscson9 w inn9J lokalisa-cji, jeśli sp9łniają on9 prs9d-stawion9 tu wymagania. Pamiętać nal9Śy, że W9ktory prs9rwań mikrokontrolera są prs9ki9rowywan9 na adr9sy Normalny program . eqll locat, 0x0FFF rLucatlon for thls program .org locat .db 0X1,5 . 0xE5 , 0xE0, 0X1,5 rslgnlture bytes .db 35.255.0.0 rid (?5=prog) .db 0 0.0 0 rprompt code Vector .db 0 0.0 0 rreseryed .db 0 0.0 0 rreseryed .db 0 0.0 0 rreseryed .db 0 0.0 0 rUser deflned .db rlength and cłiecksUin (255=UnUsed) .db "Program Name",0 rmaX ?1 characters, plus the Zero .org locatłS4 ; eXeelitable code beglns here Start-up program Jak powyżej Zmienić należy jedynie id na wartość 253 Komenda . eqll locat, 0X3000 rLucatlon for thls program .org locat .db 0X1,5 , OXE5 , OXEO, 0X1,5 rslgnlture bytes .db 254, 'h' .0.0 r id (2 5 4 = eorriiiiarLd, rkey='A'- Wielka litera '') .db 0 0.0 0 rprompt code Vector .db 0 0.0 0 rreseryed .db 0 0.0 0 rreseryed .db 0 0.0 0 rreseryed .db 0 0.0 0 rUser deflned .db 255,255,255,255 rlength and ełieeksUiń (255=UnUsed) .db "Command Name",0 rrnaX ?1 characters, plus the Zero .org locatłS4 ; eXedltable code beglns here Ust. 3. First Location: 0000 last Location: 003A Saiding Intel hex fils froin 0000 to 003A Press any key: :0B003 000 016A0162215D217P21SC012B :00000001FF powyŚ9J 2000H fnp. prs9rwa-ni9 tim9ra Tl sostani9 prs9-ki9rowan9 na adr9s 201EH). Nal9Śy o tym pamiętać pissąc programy i odpowi9dnio prs9-sunąć ich pocsąt9k. Ob9cni9 dostępn9 dodat-kow9 S9stawy kom9nd sawi9-rają międsy innymi (rys* 6): - Pracę krokową. - Edytor pamięci (wymaga 9mulacji t9rminala VTl00 -więkssość programów terminala to potrafi). - Listowani9 programów sa pomocą programu disas-S9mbl9ra. - Ustawiani9 pułap9k (break-poinis). - Edycję r9J9strów sp9cjaln9-go prs9snacs9nia. Ni9 będę w tym mi9Jscu opisywał wssystkich kom9nd. Dokładni9Jssa do ku m9n tac ja jest dostępna. Jeżeli Csyt9lni-cy wy kasą saint9T9sowani9 ss9rssym opis9m prs9dstawio-n9go tu programu monitora i mośliwościami dostępn9go oprogramowania płytki, s prsyJ9mnością opissę je w następnym artykul9. Ni9-któr9 s nich stawiają p9wn9 wymagania, ale wssystkim jest w stani9 sprostać prs9d-stawiana tu płytka. Stale pisy-bywa nowych kom9nd, a fakt, że mogą być umi9sscsan9 w pamięci RAM sprawia, że jest je ni9swykl9 łatwo modyfikować i wymi9niać na inn9. Trs9ba tu takŚ9 dodać, że ta łatwość dodawania kom9nd jest bardso waśna. DysponuJ9 bowi9m programami sami9-niającymi prs9dstawioną tu płytkę w programator mikro-kontrol9rów esy programator pamięci s int9rf9JS9m I2C. Dla prsy kładu, program owa ni9 pamięci 24C04 wymaga połą-cs9nia płytki s układ9m scalonym pamięci tylko cst9T9-ma prs9wodami, a program do programowania t9go typu pamięci, podobni9 jak więkssość innych programów do opisy-wan9J tu płytki, jest dostępny wras s kodami źródłowymi sa darmo. Przemysław Dmochowski pdmochow@wp.pl I- 1- binci n*l at*nu\ HN E- ti Id leuitM
r/l. m U u \nt IW im ino im im 1MJ Rys. ó. Elektronika Praktyczna 1/2002 NA CD KATALOGI MIESIĄCA: i PHI LI PS iMP g Międzynarodowy magazyn elektroników konstruktorów 2/2002 luty 15 zł 50 gr (w tym 7% vat) \ ZABEZPIECZENIE-PORt^RÓWNOLĘGŁEGOKOMPUTiRk' ySAglN D A RZ-EM^ZAS IL A NY^S^TE RY3 NIE EMULATOR\PAI\/IIĘCI EPROM DO- A GALER - PFTOGFfAMATOR GAL-rDQ WARSZTATOWY ZASILACZ SZUFLADKOWY TIMER TELEFONieZNY^, mo AUTOMATYKA: .-.-,, _ 'RADIOMODEMY FIRMY SATEL ^PROGRAMOWANE1p^ii!ltftE-T3PERATORSKIE FIRMY OJVT SPRZĘT: ANALIZATOR EN'E... REJESTRATOR TEMPERATU, Ś _ GENERATOR ARBITRARNY SFG- (O) EPon/offLINE ISSN 771b^D 7ŁT02E DE> PRICE: B EUR BIBLIOTEKA EP W "Bibliotece EP" prezentujemy książki dotyczące zagadnień związanych z różnymi dziedzinami techniki, jednak zawsze przydatne w pracy elektronika iub pomocne w uprawianiu elektronicznego hobby, Nasza opinia jest oczywiście subiektywna, aie 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 pubiikować recenzji książek ocenianych na jedną iub dwie Jutownice", Przyjęliśmy szeroką skałę ocen, aby ułatwić Czyteinikom orientację w potencjainej przydatności książki, Uwaga! Większość prezentowanych książek można zamówić w Dziaie Handiowym AVT (patrz str, 99), Chcemy w ten sposób udostępnić je Czyteinikom EP, Simon Haykn, "Systemy telekomunikacyjne", tom litom 2, WKŁ 1998 ale już po krótkiej analizie zawartości książki widać, że zrealizowanym zamiarem autora nie było epatowanie (lub odstraszenie) czytelników, lecz profesjonalne zilustrowanie omawianych zagadnień praktycznie niemożliwe do zrealizowania inną drogą. W dwóch doskonale wydanych (twarda oprawa!) tomach znajduje się 12 rozdziałów oraz 11 dodatków, a także tablice matematyczne z informacjami dobranymi pod kątem przydatności dla czytelnika książki, rozbudowany słownik (także akronimów angielskich), rozbudowany wykaz literatury źródłowej, a także skorowidz. Na końcu każdego rozdziału umieszczono problemy do rozwiązania, które pomagają w uporządkowaniu wiedzy z danego zakresu. Warto także zwrócić uwagę, że w jednym z dodatków zamieszczonych w książce autor zajął się tematyką kryptogra-fii, w którym zawarł ogromną dawkę wiedzy niedostępnej w żadnej znanej, publicznie dostępnej, nam literaturze krajowej. Niebagatelnym atutem tej książki jest cena wynosząca ok. 70zł za dwa tomy, co jest zjawiskiem bez- Elektroniki Prokty Telekomunikacja jest dziedziną techniki bardzo modną i, jak dowodzą nasze redakcyjne doświadczenia, mało znaną. Złożoność typowych problemów, na jakie napotykają inżynierowie zajmujący się urządzeniami i systemami telekomunikacyjnymi, jest coraz większa i są one związane zarówno z cyfrową jak i analogową techniką obróbki i przesyłania sygnałów. Autor prezentowanej książki przygotował dwutomową monografię, w której omówił wszystkie istotne zagadnienia związane z technicznymi podstawami działania systemów telekomunikacyjnych. Ogromną zaletą książki jest ilustrowanie najważniejszych zagadnień (przede wszystkim związanych z obróbką przesyłanych sygnałów) odpowiednimi opisami matematycznymi. Na pierwszy rzut oka "wzorki" nieco przytłaczają, precedensowym na naszym rynku wydawniczym. Naprawdę warto! Jacek IzydorczykT Grzegorz Pionka, Grzegorz Tyma: "Teoria sygnałów - wstęp", Helion 1999 Biorąc pod uwagę podstawowy profil wydawniczy Helionu wyrażamy uznanie za to, śe wydawnictwo zaję-ło się tak. niewdzięczną i - nie ma co ukrywać - niezbyt dochodową tematyką, jaką jest teoria sygnałów. Sposób podejścia prses autorów do tematu jest - niestety - akademicki, czyli już na drugiej stronie pierwszego rozdziału atakują czytelnika skomplikowane wzory i tak jest - mniej-więcej - do końca książki. Powoduje to, śe książka nie zachęca do zgłę- bienia tematu, co jest typową przywarą ksiąśek-podręczników. Szkoda, śe na wstępie autorzy nie wprowadzili czytelników w przyczyny, dla których znajomość zagadnień prezentowanych w książce jest istotna dla elektroników, a zwłaszcza konstruktorów. Nie ma natomiast powodów aby narzekać na kompetencję wykładu zamieszczonego w książce oraz na poruszaną tematykę. Szczególnie interesujące fdla praktyków) są rozdziały poświęcone modulacjom, filtrowaniu analogowemu i cyfrowemu, a takśe opisowi liniowych układów dyskretnych. Nieco drażniące są tylko drobne błędy w kilku wzorach ftyle udało się nam wychwycić podczas po- 136 Elektronika Praktyczna 2/2002 BIBLIOTEKA EP bieżnego przeglądania). Przyswajanie informacji ułatwią przykłady ilustrujące omawiane problemy, a także proste zadania, do których - niestety - nie zamieszczono odpowiedzi. Jerzy Rydzewski: "Pomiary oscyloskopowe", WNT 1999 Pierwsze wydanie tej książki miało miejsce w 1994 roku, lecz mimo to jej zawartość nie zdezaktualizowała się. Jest to prawdziwe kompendium wiedzy na temat budowy i parametrów oscylokoskopów, a takśe zasad wykonywania pomiarów różnego rodzaju za pomocą tych przyrządów pomiarowych. Osobny rozdział autor poświęcił pomiarom kąta fazowego i mocy, pomiarom układów impulsowych, a takśe pomiarom specjalnym, jak np. pomiarom parametrów materiałów magnetycznych, obwodów rezonansowych, zasilaczy, modulatorów AM itp. Początkujących elektroników z pewnością zainteresuje pierwszy rozdział, w którym autor omawia budowę oscyloskopów analogowych i cyfrowych oraz rozdział drugi, w którym omówiono budowę sond pomiarowych. Autor nie pominął w prezentacji oscyloskopów cyfrowych mechanizmów umożliwiających obserwację nieokresowych na oscyloskopach cyfrowych fpersystencja, długie pamięci rekordów) szkoda tylko, że nie znalazł sobie miejsca wynalazek firmy Tektronix - DPO {Digital Phos-phor Oscilloscope). Książka jest bogato ilustrowana (także zdjęciami), dzięki czemu przy- swojenie prezentowanych przez autora zagadnień nie wymaga ogromnego wysiłku. James FoleyT Andries van DalmT Steven FeinerT John Hughes, Richard Phillips: " W pro wadź enie do g raf ik i komputerowej", WNT 2001 Z grafiką komputerową spotykamy się chcąc-niechąc na codzień, a wszystko wskazuje, śe wraz z upływem czasu będzie to miało miejsce coraz częściej. Prezentowana książka nie jest popularnym przewodnikiem po grafice komputerowej, ale zawarte w niej informacje mogą się przydać Andries van Dam Steven K. Feiner JohnR Hughes Richard LPhlLUps,. inżynierom zajmującym się projektowaniem sprzętowych koprocesorów graficznych obrabiających obrazy 2D/ 3D, a takśe twórcom oprogramowania do generacji i obróbki obrazów. Ze względu na specyficzną tematykę książka nie przyda się ,,każdemu" elektronikowi, stąd ocena przydatności: 4 lutownice. Jeżeli mielibyśmy ocenić merytoryczną wartość książki - zdecydowanie 5 lutownic! Adam Błaszczyk: "Encyklopedia rozszerzeń i formatów plików", Helion 2001 Jest to książka, która przyda się przede wszystkim użytkownikom programów inżynierskich oraz wszystkim użytkownikom PC, którzy chcą wiedzieć co dzieje się z plikami zapisywanymi na dysku ich komputera. Jest to unikalny zbiór opisów ponad książka wybitna, polecamy! książka o dużych walorach praktycznych, polecamy! może się przydać daleka od doskonałości nie warto kupować 3600 rozszerzeń nazw plików oraz szczegółowe omówienie ponad 50 formatów plików. Czysto ,,elektroniczną" użyteczność książki ogranicza nieco skupienie się autora na formatach najbardziej popularnych plików wykorzystywanych przez programy archiwizujące, graficzne, muzyczne, edytory tekstu itp. Prakuje wielu formatów popularnych w świecie elektronicznego oprogramowania EDA/CAD, a niektóre z opisów nie pokrywają się z ,,elektroniczną" rzeczywistością. Książka ta nie powstała jednak z myślą o nas elektronikach, a o zwyczajnych użytkownikach PC-tów, w związku z tym 4 lutownice! Encyklopedia rozszerzeń I formatów plików Elektronika Praktyczna 2/2002 137 AUTOMATYKA A TimeRy jest klasycznym reprezentantem grupy miniaturowych sterowników logicznych, wyposażonym w 6 lub 12 wejść cyfrowych oraz 4 lub 8 wyjść przekaźnikowych przystosowanych do obciążania prądem o natężeniu do 10A przy zasilaniu 250VAC. Wybrane modele sterowników wyposażono także w 8-bitowe przetworniki A/C z dwoma wejściami analogowymi. Dopuszczalny zakres napięć na tych wejściach wynosi 0...10Y, co w zupełności wystarcza do wykonania wszelkich pomiarów wielkości o charakterze analogowym. Obudowy sterowników TimeRy są przystosowane do montażu na typowych szynach DIN. Mogą one pracować w środowisku o charakterystyce opisanej normą IP20. Powiązania czasowe i logiczne pomiędzy wejściami i wyjściami sterownika można programować za pomocą języka drabinkowego. Interpreter poleceń wbudowany w TimeRy jest przystosowany do obsługi programów o długości do 240 kroków, przy czym program może się składać z maksimum 60 linii po cztery elementy w każdej z nich. Program jest przechowywany w nieulotnej pamięci typu EEPROM. Jako konfigurowane, Do grono reprezentowanych w Polsce producentów miniaturowych, zintegrowanych sterowników peryferyjnych w roku 2000 dołączyła firma Fuji Electric, W jej ofercie znajduje się rodzina sterowników ELC (Easy Logic Control) nazwanych przez producenta TimeRy, których możliwości i łatwość stosowania zadowolą nawet najbardziej ---------------- wybrednych instalatorów, ----------------- Miniaturowe sterowniki logiczne firmy Fuji Electric programowe bloki funkcyjne można stosować m.in. komparatory analogowe, timery, liczniki, zegary czasu rzeczywistego, dzięki czemu algorytmy sterowania realizowane za pomocą TimeRy mogą być dość złożone. Program można wprowadzić do pamięci sterownika za pomocą prostej, 8-przycis-kowej klawiatury lub poprzez złącze szeregowe RS232 z komputera PC. Podczas wprowadzania Elektronika Praktyczna 2/2002 139 AUTOMATYKA Tab. 1. Zestawienie podstawowych parametrów dostępnych wariantów sterowników TimeRy. Typ modufu Napięcie zasilania [V] Wejścia cyfrowe Wyjścia Wejścia analogowe Wbudowany RTC NQ2P10R-14 24(DC) 6xDC Przekaźnikowe 4x10A/250VAC Ś Ś NQ2P10R-14C 24(DC) 6xDC Przekaźnikowe 4x10A/250VAC 2x (O...1OVDC) + NO2P10R-52 85...265 (AC) 6xAC Przekaźnikowe 4x10A/250VAC Ś Ś NO2P10R-52C 85...265 (AC) 6xAC Przekaźnikowe 4x10A/250VAC Ś + NQ2P20R-14 24(DC) 12xDC Przekaźnikowe 8x10A/250VAC Ś Ś NO2P20R-14C 24(DC) 12xDC Przekaźnikowe 8x10A/250VAC 2x (O...1OVDC) + NO2P20R-52 85...265 (AC) 12xAC Przekaźnikowe 8x10A/250VAC Ś Ś NO2P20R-52C 85...265 (AC) 12xAC Przekaźnikowe 8x10A/250VAC + programu z poziomu klawiatury jest on wyświetlany na niewielkim, alfanumerycznym wyświetlaczu ciekłokrystalicznym, na którym podczas normalnej pracy sterownika są wyświetlane określone przez użytkownika komunikaty informujące np. o aktualnej wartości wybranych parametrów sterowania. W przypadku tworzenia większych programów lub chęci ich symulowania lepszym rozwiązaniem jest skorzystanie z oprogramowania narzędziowego, które jest dostępne na stronie WWW firmy Fuji Electric (link podajemy na końcu artykułu), co wymaga wcześniejszego zdobycia hasła do-stępowego po podanym na stronie WWW numerem telefonu. Program wprowadzony do pamięci sterownika można zabezpieczyć przed nieuprawnionymi modyfikacjami lub kopiowaniem za pomocą hasła. Wszystkie oferowane przez Fuji Electric sterowniki mają wbudowane zasilacze, przy czym niektóre modele są przystosowane do standardowego w instalacjach przemysłowych zasilania napięciem stałym o wartości 24V, są także znacznie bardziej uniwersalne warianty przystosowane do bezpośredniego zasilania z sieci energetycznej. Niezależnie od wersji sterownika, ich wyjścia są galwanicznie odseparowane od linii zasilających i wejściowych. Z kolei potencjały wszystkich linii wejściowych (także analogowe) są odnoszone do jednego z biegunów linii zasilającej, co znacznie upraszcza wykonanie instalacji połączeniowej. Jak widać z tego krótkiego opisu, sterowniki TimeRy są odpowiedzią firmy Fuji Electric na konkurencyjne opracowania, których promotorem była firma Siemens (producent modułów LOGO!). Ich możliwości i parametry funkcjonalne odpowiadają ustalonym w tej grupie standardom, pewien niedosyt powoduje brak podświetlenia wyświetlacza, które niewątpliwie ułatwiłoby korzystanie ze sterownika "w terenie". Tomasz Paszkiewicz, AVT Dodatkowe informacje Dystrybutorem podzespołów firmy Fuji Electric w Polsce jest Amtek sp. z o.o., tel. (22) 874-02-34, amtek@amtek.pl. Informacje o sterownikach TimeRy są dostępne w Internecie pod adresem: http://www.fujieiectnc.com/pdf/eic.pdf Oprogramowanie narzędziowe oraz jego dokumentacja są dostępne pod adresem (po wcześniejszym uzyskaniu hastadostępowego): http://www. fujieiectric. com/distr/fiies/ 140 Elektronika Praktyczna 2/2002 PROJEKTY Zabawka pojazd, AVT-5051 - programowany Nie wiem dlaczego we wszystkich pismach przeznaczonych dla elektroników obserwuje się kompletny brak zainteresowania zabawkami! Opisywane są same "strasznie mądre" rzeczy, skomplikowane przyrządy laboratoryjne, niezliczone regulatory wszystkiego, co tylko można regulować, programatory i emulatory, a praktycznie nikt nie zau ważą arcyciekawej dziedziny techniki związanej z zabawkami- Nie wiem jaka jest tego przyczyna, ale mogę jedynie domyślać się, że jest nią strach, strach przed bezlitosnymi krytykami, jakimi są dzieci. Dzieci z natury nie są grzeczne (grzeczne dziecko to chore dziecko) i taktowne, nie silą się na wymuszone komplementy i jeżeli ofiarowana im zabawka nie znajduje ich uznania, to po prostu rzucają ją w kąt! Najwyższy jednak czas przemóc ten lęk i pomyśleć o zbudowaniu ciekawej zabawki elektronicznej, jeżeli nie dla dzieci, to chociaż dla siebie. Spróbuję. PROJEKT Z OKŁADKI Budowanie zabawek ma jeszcze jeden sens. To właśnie od prostych zabawek wywodzi się wiele nowatorskich urządzeń i olśniewających pomysłowością rozwiązań konstrukcyjnych. Nie mam nawet zamiaru porównywać zbudowanej przeze mnie zabaweczki z bardzo ciekawym, choć z użytkowego punktu widzenia dość kontrowersyjnym wynalazkiem, jakim jest tak reklamowany w mediach Segway. Jeszcze raz podkreślam, źe nie porównuję obydwóch urządzeń, ale stwierdzam, źe i mnie i konstruktorowi Segway'a przyświecała ta sama idea: zbudowanie pojazdu, który byłby zdolny do sprawnego poruszania się na tylko dwóch kołach, i to w dodatku ustawionych obok siebie. Być może mój utytułowany Kolega z USA także zaczynał od budowy modelu - prostej zabawki? Na całym świecie bowiem najtęższe umysły elektroników pracują nad wymyślaniem nowych zabawek. Przemysł, nie bacząc na wysoki stopień ryzyka, inwestuje miliony w nowe pomysły, a my ciągle jesteśmy zbyt "poważni", aby zająć się "dziecinnymi" sprawami. Stan naszego rynku zabaw-karskiego jest więcej niż przerażający: odwiedzając sklepy z zabawkami widzimy głównie kosz-marki typu Barbie lub tandetne kopie urządzeń do zabijania ludzi. Zdaję sobie sprawę, że wykonanie atrakcyjnej zabawki jest sprawą bardzo trudną, głównie ze względu na problemy związane z obudową i układami mechanicznymi. Nie mamy więc większych szans, aby w warunkach amatorskich, a nawet w dobrze wyposażonym laboratorium, wykonać coś w rodzaju słynnego Furbie. Warto jednak zająć się zabawkami o prostej konstrukcji mechanicznej, których cała "inteligencja" umieszczona jest w układzie elektronicznym. Problemy z mechaniką zawsze można jakoś "obejść bokiem". Proponowany układ do zabawki jest prostym sterownikiem pojazdu mechanicznego, zrealizowanym z wykorzystaniem popularne- 14 Elektronika Praktyczna 2/2002 Zabawka - programowany pojazd go procesora AVR typu AT90S2313. Sterownik przystosowany jest do współpracy z najprostszym układem napędowym, jaki jest tylko możliwy: pojazd jest napędzany i jednocześnie kierowany za pomocą dwóch niezależnych silników. Każdy z silników napędza jedno koło, a różnica w ich prędkości obrotowej powoduje zmiany kierunku ruchu pojazdu. Rozwiązanie takie, powszechnie stosowane w pojazdach gąsienicowych, eliminuje konieczność stosowania skomplikowanego mechanizmu skręcania kół przednich pojazdu oraz mechanizmu różnicowego, bardzo trudnych do wykonania w warunkach domowego warsztatu. Konstrukcja mechaniczna pojazdu jest na tyle oryginalna, aby nie powiedzieć ekstrawagancka, że moi dowcipni Koledzy z redakcji Elektroniki Praktycznej nazwali ją Raabowozeml No cóż, niech im i tą moją krzywdę Bogowie wybaczą! Zabawka ma rzeczywiście wyjątkowo oryginalną budowę i wygląda trochę jak pojazd ze Star Wars, co z pewnością już zauważyliście na zdjęciu. Jednak wykonanie jej zespołów mechanicznych nie powinno nikomu nastręczyć większych trudności, ponieważ największy problem, jakim jest wykonanie przekładni mechanicznej możemy tym razem ominąć, stosując w roli przekładni napędowej przerobione serwomechanizmy modelarskie. Zabawka jest pojazdem dwukołowym, z tym że koła nie są ustawione tak, jak w pojazdach jednośladowych, ale umieszczone są jedno obok drugiego. Jak taki pojazd może się w ogóle poruszać? A może, wykorzystując do tego ogólnie znane prawa fizyki. Jednak to wyjaśnimy sobie nieco później, w części artykułu dotyczącej montażu zabawki. Teraz najwyższa pora wyjaśnić Czytelnikom, co właściwie potrafi robić pojazd, z którego opisem zapoznamy się za chwilę. Pojazd sterowany za pomocą naszego układu może wykonywać następujące manewry: 1. Jazda do przodu. 2. Jazda do tyłu. 3. Skręt w prawo. 4. Skręt w lewo. 12 R3 13 C3 14 R2 R1 16 C2 17 18 19 FL BIT C4 PBO(AINO) PB1JAIN1) PB2 PB3(OC1) PB4 PB5 MOSI) PB6 MISO) PB7 SCK) XTAL1 XTAL2 RESET VCC GND 20 10 C1 1MHz C2 33pF R21 100k C7 1UF nnnnnńn 8 76 5432 1 CONS Rys. 1. Schemat elektryczny układu sterownika programowanego pojazdu. 5. Skręt do tyłu w prawo. 6. Skręt do tyłu w lewo. 7. Obrót dookoła osi w prawo. 8. Obrót dookoła osi w lewo. 9. Zatrzymanie pojazdu. Możliwe jest także korzystanie z funkcji dodatkowej, np. włączania świateł lub sygnału akustycznego. Przed rozpoczęciem zabawy układ musi zostać zaprogramowany (co także jest niezłą zabawą), czyli "nauczony" jakie ruchy, w jakiej kolejności, i z jaką szybkością ma wykonać. Możliwe jest zaprogramowanie do 12 5 poruszeń, co przy najszybszym ich wykonywaniu daje całkowity czas realizacji programu równy 12 5 sekundom, czyli ponad 2 minuty zabawy. Nasze pociechy bywają bardzo roztrzepane i pozostawianie przez nie zabawek z włączonym zasilaniem jest właściwie regułą. Ponieważ dobrej jakości baterie, służące do zasilania zabawki, nie należą do najtańszych, przewidziałem odpowiedni środek zaradczy: samoczynne wyłączanie się układu w przypadku braku "zainteresowania" zabawką trwającego dłużej niż kilka minut. Zastosowanie procesora, zawierającego w sobie całą "inteligencję" sterownika, pozwoliło na Elektronika Praktyczna 2/2002 15 Zabawka - programowany pojazd Rys. 2. Schemat elektryczny układu wykonawczego programowanego pojazdu. znaczne uproszczenie pozostałej części układu, którą zaprojektowano z wykorzystaniem zaledwie garstki elementów dyskretnych. Konstruując układ elektronicznej zabawki miałem jeszcze jeden cel na uwadze: bliższe zapoznanie Czytelników z programowaniem w pakiecie BASCOM AVR, za pomocą którego przygotowałem oprogramowanie sterujące pracą sterownika. Program dla procesora AT90S2313 został napisany, w całości przetestowany w symulatorze programowym i sprzętowym oraz skompilowany w środowisku BAS-COM-a AVR. Praca ta nie zajęła mi więcej niż trzy godziny. Sądzę, że już tylko te zalety BASCOM-a -szybkość pracy i możliwość testowania większości programów w symulacji sprzętowej (w uruchamianym układzie) - powinny zachęcić Czytelników do korzystania z tego rewelacyjnego programu. Aby przybliżyć Warn zasady pisania programów w MCS BASIC, opis działania zabawki został przygotowany głównie w oparciu o obszerne fragmenty kodu źródłowego programu napisanego w tym języku. Programowanie zabawki wykonywane jest za pomocą 12-przy-ciskowej klawiatury. Gotowy program przechowywany jest w we- wnętrznej pamięci procesora przez dowolnie długi czas, nawet po wyłączeniu zasilania. Zapisany program można zmienić tylko poprzez ponowne zaprogramowanie. Opis działania układu Schemat układu elektrycznego zabawki został pokazany na rys. 1 i 2. Na rys. 1 przedstawiono sterownik zabawki, a na rys. 2 zbudowany na tranzystorach układ wykonawczy wraz z zabezpieczeniem przeciwzwarciowym. Omawianie działania układu elektrycznego zabawki rozpoczniemy od części wykonawczej. Część wykonawcza zabawki jest typowo skonstruowanym sterownikiem dwóch silników prądu stałego, sterowanych za pomocą czterech sygnałów cyfrowych. Silniki włączone są w przekątne mostków utworzonych przez tranzystory mocy typu BD139 i BD140. Do złącza CON5 jest dołączony układ mikroprocesorowy, przedstawiony na rys. 1, z którego budową zapoznamy się za chwilę. Rozpatrzmy teraz, co się stanie, jeżeli na przykład na styku 5 CON5 pojawi się wysoki poziom napięcia. Łatwo zauważyć, że wówczas będzie spolaryzowana baza tranzystora Tl, a także tranzystorów T7 i Tli. Prąd popłynie na drodze: "+" zasilania, tranzystor Tli, uzwojenie silnika dołączonego do złącza CONl, tranzystor T7 i masa zasilania. Silnik przyłączony do CONl zacznie obracać się (umownie) w stronę obrotu wskazówek zegara. Ponieważ nasz pojazd posiada dwa silniki napędowe, zacznie on skręcać (umownie) w lewo. Ustawmy teraz poziom wysoki na dwa wejścia złącza CON5: 5 i 3. Włączone zostaną dwa tranzystory: Tl i T4, co spowoduje przewodzenie także tranzystorów Tli, T7, T10 i T8 i obracanie się dwóch silników w tę samą stronę. Nasz pojazd zacznie poruszać się do przodu (lub do tyłu - kierunek ruchu zostanie ostatecznie ustalony doświadczalnie podczas montażu pojazdu). Sądzę, ze uważni Czytelnicy zauważyli już pewne niebezpieczeństwo, tkwiące w naszym układzie. Co bowiem się stanie, jeżeli poziom wysoki wystąpi jednocześnie na wejściach 5 i 4 CON5? Ano, będzie to piękne zwarcie w układzie, spowodowane jednoczesnym przewodzeniem wszystkich tranzystorów mostka! Oczywiście, przy poprawnie napisanym programie taka sytuacja nie powinna wystąpić, ale nie wszystkie programy napisane są od razu poprawnie... 16 Elektronika Praktyczna 2/2002 Zabawka - programowany pojazd List. 1. Sub m ain orogra a Re a de eprom Value, 127 ' sprawdzań ie z a wart ości adresu 127 p mięći < anyc h If Va .ue o 44 Then ' jeżeli za pisa na ta m wartość ni e jes t równa 44 t o: Ca 11 Rec ord 'wezwi; pr ogra m re] estrowania p olece ń En d If Ti mec ounter = 0 Do Ca 11 Key scan 'wezwi; po dpro gram przeszukiwań ia kl a wiatury If Digit = 10 Then ' jeżeli ciśn ięty został klawi sz o W artości 10 to : Cali Ledshort 'wygene ru; syg nał a Ś;ustyczny i optyc z ny Waitm s 100 Cali Record 'wezwi; pr ogra m re] estrowania p olece ń En d If If Digit = 11 Then ' jeżeli na ciśn ięty został klawi sz o W artości 11 to: If Va lue =44 Then ' jeżeli pa mięć dany ch została już uprzednio zapr ogramowana to : Cali Ledshort 'wygene ru; syg nał a Ś;ustyczny i optyc z ny Waitms 100 Cali Replay 'wezwi; po dpro gram odtwarzania :>olec e ń End If En d If Wa itms 50 In er Tim ecounter If Timec ounter = 2400 Then ' j eżeli zm ienn a TIMECOUNTER ma Warto s ć 2400, to: Timec ounter = 0 'zmienn a TIMECOUNTER przyjmuje Warto ś ć 0 For R = 1 To 2 0 Cali Ledshort 'wygene ru; syg nał a Ś;ustyczny i optyc z ny Next R Powerdown 'wprowa dź proc esor W stan uśpię nia En d If Lo op End Sub Aby więc zabezpieczyć się przed zwarciem i jego zwykle przykrymi konsekwencjami, do części wykonawczej zabawki dobudowany został obwód z bramkami NAND zawartymi w strukturze ICl i tranzystorem T14 zasilającym mostki tranzystorowe od strony minusa. Bramki IC2A i IC2B wykrywają stany zabronione, które mogłyby wystąpić na wyjściach części sterującej. Wystąpienie poziomu niskiego na wyjściu jednej lub obu tych bramek powoduje natychmiastowe wyłączenie tranzystora T14 i wyeliminowanie niebezpieczeństwa powstania zwarcia w układzie. Układ może być zasilany napięciem stałym o wartości 5...16VDC, zależnym głównie od typu zastosowanych silników. Z tego też względu stabilizator napięcia IC2 jest elementem opcjonalnym i w przypadku korzystania z napięcia o wartości zbliżonej do 5V nie musi być stosowany. Tranzystor T13 może włączać lub wyłączać układ dodatkowy: sygnalizator optyczny, akustyczny lub jakiś silnik realizujący dodatkową funkcję. Popatrzmy teraz na rys. 1, na którym przedstawiono mikroprocesorowy sterownik odpowiedzialny za działanie całego urządzenia. Sercem układu i jednocześnie jego jedynym aktywnym elementem jest procesor typu AT90S2313. Układ AT90S2313 jest nowoczesnym mikroprocesorem opar- tym na architekturze RISC. Z pozoru układ wygląda zupełnie podobnie jak znany Warn dobrze procesor AT89C2051. Rzeczywiście, procesory te posiadają identyczny rozkład wyprowadzeń i pełnią one w zasadzie identyczne funkcje. Już w tym momencie możemy zauważyć pierwszą zaletę 90S2313: może on bez większych przeróbek być zastosowany w każdym urządzeniu zaprojektowanym dla procesora '2051, zwiększając jego szybkość działania i pozwalając na rezygnację z niektórych elementów zewnętrznych (np. pamięci danych EEPROM). Jedyną modyfikacją jaką musielibyśmy wprowadzić wymieniając procesor byłaby zmiana sposobu zerowania układu: procesory rodziny AVR zerowane są bowiem niskim poziomem napięcia. Analiza działania układu będzie jednocześnie skrótowym omówieniem sterującego nim programu, napisanego i skompilowanego za pomocą pakietu BASCOM AVR. Program sterujący zabawką zaczyna się tak, jak każdy inny napisany w MCS BASIC: od deklaracji zmiennych i podprogra-mów. Należy jednak zwrócić uwagę na pewną istotną różnicę, wynikającą z odmienności architektury procesorów '51 i AVR. W programie pisanym dla procesora AVR musimy zawsze zadeklarować funkcje pełnione przez porty lub pojedyncze wyprowadzenia: czy mają być używane jako wejścia, czy jako wyjścia. W naszym przypadku deklaracja ta będzie wyglądała następująco: Config Pinb.0 = Config Pinb.7 = Pinb.6 = Input: = Input Config Pind.6 = Output: Input: Config Config Pinb.3 Input: Config List. 2. ustawie lic Ślika pole b record Value = 44 Licznik = 1 Digit = 255 'Wejście w pierwszą pętlę podprogr 'Wezwij przeszukiwanie klawiatury 'jeżeli naciśnięty został klawisz o warto: eprom Digit,126 'zapisz pod adresem 126 wart For R = 1 To Digit 'tyle razy, ile sekund wynosi opóźn Cali Ledshort Next R Digit = 2 55 Exit Do Cali Keys If Digit Writef jestr 10 The -ji poleceń liejszej niż 10, to Śtyle 'wygę eruj sygn End If op 'zmienna DIGIT przyjmuje 'wyjdź z pierwszej pętli akustyc wstępn :ny i Warte ptyczny ść 2 55 'Wejście w drugą pętlę podprogram Cali Keyscan 'wezwij przeszukiwanie klawiatury If Digit < 10 Then 'jeżeli naciśnięty został klawisz Writeeeprom Digit,Licznik 'zapisz wartość tego Incr Licznik Cali Ledshort 'wygeneruj sygnał akustyczny i opty Digit = 2 55 End If rejestracji pole o warto klawis; ej niż 10, EEPROM f Licznik = 125 The Writeeeprom Value Writeeeprom Liczr For R = 1 To 5 Cali Ledshort Next R Digit = 2 55 Cali Mainprogram id If 'jeż ,12 7 ik,125 Śli ięci) zmie LICZNIK przyjęła warte mięci warte tiięci inforr eruj sygnał akustyczny i ic]ę ( optye 125 (zapi ącą o jej ałej programowaniu programowanych pole 'powrót do programu głównego 'j eli Ślięty : do p do p, :ostał klawis mięci wartoś tiięci informa . o warte świadcz ję o ilo If Digit = 12 Then Writeeeprom Value,127 Writeeeprom Licznik,125 For R = 1 To 5 Cali Ledshort 'wygeneruj sygnał akustyczny i optyczny Next R Digit = 2 55 Cali Mainprogram 'powrót do programu głównego End If op ci 12 (kon :ą o jej z. Śi zaprogrs Lec zapisu), iprogramowani mowanych pole Elektronika Praktyczna 2/2002 17 Zabawka - programowany pojazd List 3. sub replay F or R = L To 3 Cali Ledshc rt 'wygeneruj sygnał aku styczr y i c ptycz ly W ext R Digit = Licznik = 1 R ea deepr )ii Dde lay,126 'odczytaj z pamięć i EEPROM W= rtc ść c P -itr ienia p omiędzy 'wykonywaniem kole jny ch poi ec eń R ea deepr )ii Ste ps, 12 5 'odczytaj z pamięć i EEPROM ile polec eń został zarej estre wany ch D Reade eprom Digit, Licznik 'odczytaj z pa nieci ro dza j ko le jn ego p Ol eceni a If Li cznik = Step s Then 'jeżeli zmi snn i LICZNIK r ówna es t lic zbie za rejestrowa łych 'poleceń to Re set P rtd. 4 Reset Portd.5: Reset Po rtd .3: Re se t E o rtd. L: Reset E ortd 0_ Re set P rtd. 2 'ustaw stan ni 3ki na wyjś ciac h st erują cy ch silnikam i Fc r R = 1 To : Cali Ledsh rt 'wygeneruj 3yg lał akus tyc zny i optyczn y We xt R Exit Do 'wyjdź z pętli pro gra mowę j C= 11 Mainprogr am 'wezwij podprogram oc zekiw= ni a r a p 1 = Cf nie z klawiatury End If Incr Licznik Reset Portd .0: Re set Portd.1: Reset Portd. 2: Reset Pc rtd .3: Rese t Portd .A: R eset P jrtd 5 Selec t Case Digit 'wybierz rodzą" re a kej i ukła iu n a od = zyta le pole cenie C= se 1 Cali Eackleft jeżeli poi sce lie mi a] o w arto śc 1 to s ko cz do pod r ogra TLU realizuj ąc sgo porus za nie się E azdu do tyłu W lew C= se 2 Cali Eack jeżeli polecę lie mi a] o w arto śc 2 to s ko cz do pod r ogra nu realizuj ąc sgo porus za nie się E azdu do tyłu C= se 3 Cali Eackright jeżeli poi =ce lie mi a] o w arto śc 3 to s ko cz do pod r ogra TLU realizuj ąc sgo poru sz ani e się po jazdu d o tyłu w r awo C= se 4 Cali Tumleft jeżeli poi lie mi a] o w arto śc 4 to s ko cz do pod r ogra TlU realizuj ąc sgo obrót P oja zdu W le WO C= se 5 Cali Sstop jeżeli poi sce lie mi a] o w arto śc 5 to s ko cz do pod r ogra nu zatrzymują -eg 3 ruch P oj a zdu C= se 6 Cali Tumright jeżeli poi sce lie mi a] o w arto śc 6 to s ko cz do pod r ogra TLU realizuj ąc sgo obrót P oj a zdu w pr awo C= se 7 Cali Lleft jeżeli poi lie mi o w arto śc 7 to s ko cz do pod r ogra nu realizuj ąc sgo porus za nie się E azdu W lewo C= se 8 Cali Forward jeżeli poi =ce lie mi a] o w arto śc 8 to s ko cz do pod r ogra TLU realizuj ąc sgo porus za nie się E azdu do przo du C= se 9 Cali Rright 'jeżeli polecę lie rtd a] o w arto śc 9 to s ko cz do pod r ogra TlU 'realizuj ąc sgo porus za nie się E azdu w prawo End S elect Cali Ledshc rt 'wygeneruj krótki syg ał akustyc zny i o ptyc zny Wait Ddelay 'zaczekaj zadaną zmie ną DDELAY lic Zbę ku nd L oop End Sub Pinb.5 = Output : Config Pinb.4 = Output : Config Pinb.2 = Output Config Pind.O = Output: Config Pind.l = Output: Config Pind.2 = Output: Config Pind.3 = Output Config Pind.4 = Output: Config Pind.5 = Output W następnej kolejności deklarujemy podprogramy realizujące poszczególne funkcje naszej bawki. za- Declare Sub Record 'podprogram rejestrowania 1 poleceń sterujących zabawką Declare Sub Replay 'podprogram odtwarzania 'programu sterowania zabawką Declare Sub Mainprogram 'podprogram oczekiwania na ' polecenia Declare Sub Keyscan 'podprogram przeszukiwania 'klawiatury Declare Sub Ledshort 'realizacja sygnalizacji 'optycznej i akustycznej Declare Sub Forward 1 ruch do przodu Declare Sub Back 1 ruch do tyłu Declare Sub Lleft 1 skręt w lewo Declare Sub Rright 1 skręt w prawo Declare Sub Backleft 'skręt do tyłu w lewo Declare Sub Backright 'skręt do tyłu w prawo Declare Sub Turnleft 'obrót dookoła osi w lewo Declare Sub Turnright 'obrót dookoła osi w prawo Declare Sub Sstop 'zatrzymanie pojazdu Bezpośrednio po włączeniu zasilania program sterujący pracą pojazdu ustala swoje parametry konfiguracyjne i następnie "wchodzi" w MAINPROGRAM, gdzie na samym początku sprawdza zawartość komórki 127 pamięci danych EEPROM. Jeżeli wartość zapisana w tej komórce nie jest równa 44, to program przechodzi do podpro-gramu rejestrowania poleceń. Jeżeli wartość ta wynosi 44, co świadczy że pamięć była już WYKAZ ELEMENTÓW Rezystory R1...R12: 300O R13...R16: l,5kQ R17: 100O R18: 3,3kQ R19: 560O R20: 4,7kn R21: lOOkO Kondensatory CL C2: 33pF C3, CA, C9: lOOnF C5, C6, C8: IOOjiF/16 C7: luf/16 Półprzewodniki Dl: dioda LED IC1: AT90S2313 IC2: 7805 IC3: 4011 Tl, T3, T4, T8, T13: BC548 T2, T5...T7: BD139 T9...T12: BD140 T14: BUZ10 Różne Q: rezonator kwarcowy 11,059200 MHz Q2: przetwornik piezo S1...S12: przycisk microswitch CON4: ARK2 (3,5mm) zaprogramowana, to wykonywany jest podprogram wyboru trybu pracy z list. 1. Należy zwrócić uwagę na rolę zmiennej pomocniczej TIME-COUNTER. Przy każdym przejściu przez pętlę programową zwiększa ona swoją wartość o 1, zliczając w ten sposób upływający czas. Jeżeli nikt nie wyda zabawce jakiegoś polecenia, to po ok. 120 sekundach (2400x50ms) przejdzie ona w stan uśpienia, z którego może się obudzić dopiero po powtórnym włączeniu zasilania. Zabezpiecza to przed wyczerpaniem baterii w przypadku porzucenia zabawki przez dziecko lub roztargnionego innego użytkownika. Rzućmy teraz okiem na podprogramy zapisu danych i ich odtwarzania, czyli sterowania ruchem pojazdu. Rejestrowanie poleceń realizowane jest przez podprogram RECORD (list. 2). Zarejestrowane polecenia możemy następnie odtworzyć we właściwej kolejności. Funkcja ta reali- 18 Elektronika Praktyczna 2/2002 Zabawka - programowany pojazd zowana jest przez podprogram RE-PLAY pokazany na list. 3. Podane fragmenty listingu programu sterującego ruchem zabawki powinny dostarczyć Czytelnikom pewnych informacji o budowie całego programu, napisanego w MCS BASIC. Program ten został napisany w najprostszy sposób, "po najmniejszej linii oporu". Zachęcam więc Wszystkich do prób jego modernizacji i ulepszania. Ciekawe mogą być eksperymenty z zastosowaniem "miękkiego startu" silników, zrealizowanego metodą PWM. Rozwiązanie takie pozwoliłoby zlikwidować "kołysanie się" pojazdu podczas rozpoczynania jazdy do przodu i do tyłu. Oczywiście, szczytem perfekcji byłoby dobudowanie do układu czujnika poziomu (np. z serii ADXL), co pozwoliłoby na precyzyjne pozycjonowanie gondoli pojazdu w stosunku do pionu i całkowite zlik-widowanie kołysania. Zbigniew Raabe, AVT Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdfZlutyO2.htm oraz na płycie CD-EP02/2002B w katalogu PCB. Elektronika Praktyczna 2/2002 19 AUTOMATYKA W drugiej części artykułu przedstawiamy najczęściej stosowane metody testowania obwodów elektrycznych, których podstawową zaletą jest możliwość weryfikacji pracy układów scałonych zamontowanych w urządzeniach (testowanie in-circuit). Agilent Technologies lnnovatingtheHPWay Część 2: Przegląd systemów ATE firmy Agilent Technologies Agilent 3070 Series 3 - wszechstronne testowanie obwodów elektrycznych na płytkach drukowanych Na testowanie typu in-circuit składa się wiele metod, których wspólną cechą jest pu do węzłów obwodu elektrycznego, Celem testów ICT jest wykrywanie wadliwych komponentów oraz sprawdzenie jakości połączeń między la na szybką lokalizację błędów montażowych oraz na ci wykonywania testów funkcjonalnych. Na rys. 6 przedstawiono podział metod testowania in-circuit. Generalnie testy ICT red i powered, czyli na wyko- odpowiednio z włączonym zasilaniem badanego układu. Kolejne gałęzie wykresu klasyfikacyjnego pokazanego na rys. 6 przedstawiają już konkretne, stosowane w testerach metody weryfikacji. Do grupy testów unpowe-red należy test impedancji międzywęzłowej, który polega - tak, jak wskazuje jego na- cji między węzłami obwodu elektrycznego, w celu spraw-dzenia czy są odpowiednie połączenia między nimi i jaka jest ich jakość. Drugi rodzaj testów z grupy unpowered to analogowe testy ICT, które obejmują testo- czonych na płytce PCB, takich jak: rezystory, kondensatory, potencjometry, przełączniki, diody, tranzystory, wzmacniacze operacyjne. Z kolei testy z włączonym nia {powered) obejmują testo- wanie układów cyfiowych oiaz testowanie z wykoizysta- analogowych i cyfiowych. du cyfrowego odpowiedniego wektoia testowego, a następ- wyjść z pizygotowanym na podstawie opisu układu wzoi-cem. Pizy pizepiowadzaniu jest odizolowanie układu badanego od innych układów cyfiowych znajdujących się na płytce. Pizy pizepiowadzaniu nałow mieszanych stosuje się powiedzi zarówno o chaiakte-ize cyfiowym jak i analogo- tizeba pamiętać w pizypadku nienie synchronizacji między sygnałami cyfrowymi i analo- metodami, któiych nazwy znajdują się w gałęziach wykresu klasyfikacyjnego metod ICT są metody specjalne. Ich iozwój został wymuszony pizez coiaz gęstsze upakowa- nych do i płyt PCB, i dostęp testowania in-circuit pi testowani m dostęp leżą: Boundary Scan (IEEE 1149.1), Vectorless Tests, Analog Boundary Scan (IEEE 1149.4) oiaz ICCT - Analog In-circuit Cluster Test. Boundary Scan to metoda testowania układów cyfio-wych, w któiych podczas pio-jektowania i piodukcji wbudowano specjalny blok zwany logiką BS. W skład tego bloku wchodzi lejesti pizesuwny, któiego poszczególne komóiki skojaizone są z wypiowadze-niami właściwego układu logicznego, lejesti obejściowy (bypass), lejesti IDCODE, le-jesti instrukcji oiaz kontiolei TAP (Test Access Port). Pizy-kładowy układ cyfiowy z blokiem BS pokazano na rys. 7. Logika BS powiększa ogólną liczbę wypiowadzeń układu scalonego opięć: TDI (Test Data Input), TDO (Test Data Output), TCK (Test Clock), TMS (Test Modę Select), TRST (Test Reset). Wykoizys-tanie wejścia TRST jest op- Rejesti pizesuwny, któiego komóiki skojaizone są z wyprowadzeniami wejściowymi końcówek bez konieczności fizycznego dostępu do nich. Układy cyfiowe zaopatrzone wBS można łączyć w łańcuchy, a skrajne końcówki ste-lujące testem wypiowadzić na łącze krawędziowe płytki PCB. Dzięki temu testowanie nie wymaga dostępu do punktów lutowniczych znajdujących się na wewnętrznej po-wieizchni płytki. Oczywiście nie zdaiza się tak, aby wszystkie układy cyfiowe wchodzące w skład uiządzenia były wyposażone w logikę BS. Dlatego też konieczne jest testowanie pozostałych ukła- metody. Może to być np. Silicon Nails - metodologia związana z techniką Boundary Scan i polegająca na do- piowadzeniu odpowiedzi od układów nie posiadających bloków BS za pomocą wypiowadzeń połączonych nych w logikę BS. Metoda Boundary Scan pozwala na weiyfikację oiienta- cji piz h ej f j pj nych układów cyfrowych, te towanie połączeń wypiowa dzeń wejściowych i wyjścio wszystkich węzłów obw elektrycznego. Do metod układu
i kontiolę tych zwaić, bądź biaku połączenia lutowniczego końcówek ukła- Testy z włączonym zasilaniem Elektronika Praktyczna 1/2002 141 AUTOMATYKA
składa się z sześciu modeli. Modele rozmą się zasoDanii, wietrznych przyrządów po-miarowycn i ni o duł o w programowych oraz rodzajem kont- albo komputer PC. Na fot. B pokazano, jako przykład, rno- Niektore modele o większej dodatkoi sądzt do todą testowania zużyciem parametrów elementów. Opis w których będą umieszczone jedno-, dwu- bądź czteromo- wektorów testowych, metoda testu jest w tej metodzie ge- węzły z dostępem elektrycz- dułowe. Każdy moduł posia- ES poprawia poziom diagnos- nerowany automatycznie na nym. Celem optymalizacji jest da 11 slotow, w których in- tyki wyprowadzeń wejścio- podstawie listy połączeń, Od- zapewnienie jak największej staluje się odpowiednie karty. Generacja testów typu Boun- klastrów, generację zbiorów bie dostępnych węzłów ukła- nia płyt PCE. Moduły są ob- daiy Scan odbywa się auto- pobudzeń, oczekiwanych od- du, co bezpośrednio przekła- ligatoryjnie wyposażone su w języku ESDL [Boandaiy i tolerancji. Wadami techniki płytki. Drugie podejście z ko- - Analog Stimalas Response iRU), ard (CC), dary Scan o testy układów testami ICT oraz duża wraź- bliskie testowaniu funkcjonał- - Fin Card. pracujących z sygnałami ana- liwość na topografię układu. nemu. Metoda ta polega na Karta ASRU zawiera źródła sane w normie IEEE 1149.4, testowania typu unpowered fragmentów urządzenia (Po- oraz detektory do pomiaru metodą Analog jest Yecłońei ~ ' " ~ ...._. ind ary Sec wyż! tak jak Test). vala > pr; przepr< Śadzer *v przypadku wymienionych da na określenie sprawnych logowych przy w sposób. Po pierwsze. Analog nia płytek z ograniczonym urządzenia, ale stworzenie na S1-1' Karta ASRU jes Boundary Scan pozwala łą- dostępem do węzłów, lecz jej podstawie wyników rapor- wyposażona w spec czyć układy analogowe stworzenie prostszej alternaty- tów diagnostycznych jest już duł MOA (Measuri. wy mi i testować ]e tak, ]ak we kt orowy ch w przy pa dku do ba dani a wzmacn z układów cyfrowych. Po dru- układów cyfrowych. Metoda testery ICT firmy CC jest sterowani; gie, umożliwia testowanie Yectorless polega| na pomia- Agilent Technologies testującą oraz koi układów nie posiadających rze pojemności między punk- Po om owi eniu rożnych z kontroler pracujących z nimi układów powinno być dołączone wy- przedstawimy teraz Boundary Scan. Norma IEEE prowadzenie układu scalone- testery ICT 3070 fir- 1.149.4 jest ciągle jeszcze go a obudową tego układu, my Agilent Technolo- w fazie rozwojowe] i je] pełna bądź tez na badaniu diod za- gies. jest jeszcze znana. nych przy końcówkach ukła- tworzą trzy rodziny, W odróżnieniu do technolo- dow scalonych. Badanie RTG które różnią się mak- gii Boundary Scan, za porno- również jest zaliczane do symalną liczbą testo- cą której testuje się urządzę- metod typu Vectorless, ale wanych węzłów oraz ter Test) służy do testowania jest poświęcona testom ICT. nych w głowicy testu- nych przy wyłączonym zasi- o dwóch podejściach do tes- łów, 1 moduł), 317x Metoda ICCT polega na testo- nym dostępem do węzłów ły), 307x (51B4 węzły, waniu klastrów elementów elektrycznych, których nie 4 moduły). W skład biernych, do których ograni- pokazano na rys. 5, ze wzglę- rodzin 307x oraz 317x czony ]est indywidualny do- du na trudność w zakwalifi- wchodzi siedem mo- stów Elektronika Praktyczna 1/2002 AUTOMATYKA e jest sprawne, Śych połączeń, z tym, że ele- tów i pr idło ]biór testów typu powered zarówno testy ICT Śn, Mixed), jak i testy fun- kia- Z właściwości tej wynika, ż( funkcjonalnych. Wszystkie caynności zwią- zane z przygotowaniem wspomagane są przez pakiet
karta t" :ypu j jedna , która esto do każdegc mych płyt. Dostos doI polega urządzenia 3070 dołącza ; poprzez porty Function Test Access. Porty te zape
) z kilkunastu dostępnych raz z systemami 3070 pro-Śamów, lecz ograniczymy się wania układów przy użyciu dowały się nad odpowiedni- nętrznym do dowolne] sondy punkcie artykułu podstawo- określonej metody. Dostępne mi węzłami obwodu elekt- testera. wych programów, które we i cyfrowe testy ICT oraz dziny 317x pokazano na rys. wych typu ICT, jak również analogowe i cyfrowe testy 9. Oprócz omówionych już umożliwiają w pewnym za- Testy funkcjonalne - funkcjonalne. elementów składowych teste- kresie testy funkcjonalne. Agilent TS-5500 2. AnalogPIus-DD - in-cii- ra, czyli modułu z kartami, Metody testowania typu un- Zadaniem testów funkcjo- logo we oraz obsługa technolo- da t kowe części s kłado we \ impedanc]i międzywęzłowych dzane w końcowe] fazie pro- gii Testjet, która zostanie sondę {Piobe), zasilacze, kar- {Shoii and Open), A.nalog In- dukcji urządzenia, jest stwier- omowiona niżej. tę systemową {System Card), ctcuit, testy typu Vectońess: dzenie, czy urządzenie działa 3. Hybrid32-DD - karta do- Debug Ports, porty sterowania Testjet Technology i Connect zgodnie ze swoim przezna-stępna tylko w modelach próżnią ( Vacuuin Port) oraz Check oraz będącą kombina- czeniem oraz określenie c]onalnosci zbliżone] do źiyb- dowy testów funkc]onalnych metodą testowani a Polanty Omawiane do te] pory testery ńdPIas-DD; {Functional Test Access Check przeznaczoną do wery- charakteryzowały się wyso- do testowania szeregowych Sonda jest wykorzystywana rów elektrolitycznych. i mało istotne były dla nich kanałów przesyłu danych. do wykrywania błędów pod- Za pomocą testowania ana- cechy funkcjonalne badanego Obsługuje zarówno linię da- czas testów cyfrowych logowego ICT sprawdzane są układu, Ważne było tylko, że- Ś Ś ' " Ś etanów logicz- elementy bierne, dyskretne by wprowadzić dane o płyt- kiaeg61nych koń- elementy półprzewodnikowe kach PCE do systemu, co po- obwodu elektrycz- tjet Technology jest metodą testów funkcjonalnych. Śrty typu debug po- przeznaczoną do wykrywania W tym przypadku, tester jest wewnętrznych głowicy pomiędzy końcówkami ukła- nej klasy urządzeń systemem u]ące], co ]est konieczne dow scalonych 3 obwodem pomiarowym. Jako przykład estow cyfrowych oraz tes- msłych pojemności (rzędu fF) przedstawimy testery telef nych, jak i z, _ tor sygnału zegarowt interfejsy fizyczne i Personality Module PPM-y dla trzech int. fizycznych: ISDN S/' U, TTL, 5. AccessPlus - prowadzenia testoW nałogowy Ch i r nie m ieszsne Por V s erow nis q pns or PT71 urn eszc 7O lent Tech noC es TS-5 T ,n,ch. Óz nią poł e s Kta- po nsd b ym elen en em. W skł d se rii TS -5 500 n sprzęt wym po- a di. Zew lętrz ne rzyrz ądy In orm jskc cze- wch odzą dwie rodziny stsr edz, k. tami Pii 3 te m i aro we erz3] ni do st lerz ns po- SZ3 - TS 5530 skłsdsj się Elektronika Praktyczna 1/2002 AUTOMATYKA i parametrów wyprodukowanego telefonu. Po pomyślnym przejściu testów funkcjonalnych urządzenie trafia już do użytkownika. Oprogramowanie Oprogramowanie przeznaczone do wspomagania proce- elektronicznych zawiera znaczną liczbę pakietów wykorzystywanych na różnych etapach projektowania testów, ich weryfikacji, integracji systemów testujących oraz wszechstronnej analizy uzyskanych wyników. W niniejszym artykule ograniczymy się jedynie do krótkiego za- CAMCAD przeznaczonego do translacji danych oraz oprog- nych i mających niewłaściwe nie pakietu AwareTest xi można podzielić na trzy fazy. W pierwszej informacje z testera 5DX dotyczące tzw. pokrycia testowego tego systemu przesyłane są do testera 3070. W kolejnej fazie za pomocą odpowiednich algorytmów wybiera się optymalny -ze względu na liczbę - zbiór węzłów elektrycznych, do których podłączone zostaną sondy systemu 3070. Te dwie pierwsze fazy odnoszą się do Ostatnia zaś dotyczy produkcji i zadaniem oprogramowania AwareTest xi podczas jej macji o wykrytych defektach Fot. 10.
3070. Czyni się to po to, aby in-circuit przed usunięciem błędów wykrytych w czasie testowania AXI. Konkludując można powiedzieć, że zaprezentowane kró- trzebny na przygotowanie testów oraz ich koszt. Usuwanie czego wykorzystuje się oprog- podobnej do AwareTest xi, jego kosztów. Podsumowanie ATE, tworzenie oprogramowa- samo projektowanie i urucha-stowych to E8452A, E8453A, E8454A). funkcjonalnością, rodzajem przyrządów pomiarowych wchodzących w ich skład oraz maksymalną liczbą jed-nocześnie poddawanych tes- powiednich przyrządów po-miarowych. Do realizacji pierwszego z nich wykorzystuje się, w zależności od standardu testowanych telefo- nych testerów RF. Jeśli testowane są telefony GSM, to Oprogramowanie CAMCAD służy do translacji danych typu CAD, generowanych przez systemy wspomagające pro- miałego dla testerów AOI, AXI oraz ICT firmy Agilent niejsza, przyjrzyjmy się jej dokładniej. Tester TS-5550, pokazany na rys. 10, składa się z szafy, w której zamontowane są przyrządy pomiarowe oraz oprogramowaniem. Tester TS-5550 wykonuje pięć rodzajów testów telefonów komórkowych. Oto one: 1. Phone Test and RF Path - badanie podstawowych funkcji radiowych telefonu, takich jak inicjacja połączenia czy utrzymywanie protokołu. 2. Audio Test - test akustyczny obejmujący badanie dów audio. 3. Battery Emulation - ba- nu w przypadku zmian napięcia zasilającego. Genero- 8922P GSM MS Multiband Test System. Jeśli natomiast tester funkcjonalny TS-5550 linii produkującej telefony pracujące w standardzie CDMA, to używa się wtedy urządzenia 8924C CDMA Mobile Station Test Set. Do testów akustycznych przeznaczony jest 16-kanałowy digi- wym E1432A (wykonany w standardzie VXI), umiesz- w szafie testera TS-5550 głównym komputerze. Digiti- około 20 formatów CAD należą między innymi: OrCAD, GenCAD, GenCAM, Cadence Allegro, PADS Power/Per-form. CAMCAD pozwala na oglądanie kompletnego layou-tu płytki PCB, jak również wyselekcjonowanych klas ele- plików wynikowych i analizę ich zawartości, CAMCAD jest w stanie dokonać pełnej kontroli błędów oraz może wygenerować raporty z tej kontroli. Dodatkowy moduł DFT wspomaga natomiast projekto-
vijaj ter dziedzina techniki. Płytki ją się coraz bardziej złóż ry- ują 4. Battery Charging Circuit-vy - testowanie obwodów ła- mórkowego. 5. Low Freąuency Measure-ment - testy niskoczęstotli- owe, w których mierzy :ią 51,2kHz, co pozwala na uzyskanie 20kHz efektyw- z wykorzystaniem specjalizowanych zasilaczy: 66311B (test Battery Emulation) i 6612C (test Battery Charging Circuitry). Do testów nisko-częstotliwościowych wykorzystywane są dwa dodatko- 6,5 cyfry E1412A, miernik częstotliwości E1420B, jak sign For Testability). Oprogramowanie AwareTest xi przeznaczone jest do integracji testerów AXI i ICT, któ- żenia kosztów testów ICT w przypadku testowania bardzo skomplikowanych i gęsto upakowanych płyt PCB. Cel ten osiąga się przez rozdzielenie rodzajów wykrywanych defektów między techniki AXI i ICT. Systemowi 5DX powierzone zostało wykrywa- koszty i krótszy czas produkcji urządzeń. Zarówno rozwój technologiczny, jak i wymaga- rom systemów ATE. Mamy nadzieję, że niniejszy artykuł przedstawił wyniki ich pracy Jacek Falkiewicz, AM Technologies Polska jacek.falkiewicz@amt.pl Raporty ze wszystkich omówionych testów pozwalają na kładności lutowniczych ora2 wi 3070 znajdowanie uszko- Dodatkowe materiały związane z tematyką poruszaną w artykule znaj-1 dują się na płycie CD-EP1/2002E Elektronika Praktyczna 1/2002 145 AUTOMATYKA Fińska firma Satel specjalizuje się od początku swojego istnienia (1987 rok) w produkcji różnego rodzaju radiomodemów, a także wysokiej jakości urządzeń transmisyjnych zintegrowanych z centralkami alarmowymi, które mogą być stosowane w systemach alarmowych ze zdalnym powiadamianiem. W artykule przedstawimy cztery rodziny typowych radiomodemów z oferty firmy Satel, które można wykorzystać do przesyłania sygnałów cyfrowych na duże odległości, a także budować radiowe sieci z ich użyciem. Bezprzewodowy interfejs RS232 ** Radiom o demy Satelline-2ASxE Satelline-2ASxE jest nowoczesnym radiomodemem przeznaczonym do asynchronicznej transmisji danych w trybie half-duplex. Jest przystosowany do pracy w paśmie częstotliwości 37O...47OMHz, przy czym producent dostarcza modem wstępnie dostrojony do żądanej przez odbiorcę częstotliwości. Możliwa jest zmiana częstotliwości nośnej, przy czym wewnętrzny syntezer radiomodemu umożliwia jej zmianę o maksimum 2MHz. Ponieważ odstęp międzykana-łowy może wynosić 12,5kHz/20kHz lub 25kHz, do dyspozycji użytkownika jest 160, 100 lub 80 kanałów. Radio modem Satelline-2ASxE jest przeznaczony przede wszystkim do lokalnego przesyłania danych drogą radiową w środowisku miejskim lub przemysłowym, czyli o silnych zakłóceniach. Dzięki swojej budowie i małym rozmiarom może być łatwo montowany zarówno na obiektach stałych, jak i poruszających się. Interfejs RS2 3 2 zapewnia łatwe połączenie z dowolnym systemem komputerowym. Satelline-2ASxE składa się z trzech głównych bloków: nadajnika i odbiornika radiowego oraz modemu. Przesyłanie w tym systemie odbywa się podobnie jak przesyłanie danych za pośrednictwem kabla RS232, z tą różnicą, że transmisja przebiega w trybie half-duplex (jednokierunkowe przesyłanie danych z szybkim przełączaniem kierunku). Moc nadajnika radiomodemu Satel-line-2ASxE jest programowana i może wynosić od 20mW do 1W, natomiast czułość odbiornika jest stała i wynosi -115dBm. Parametry te pozwalają na osiągnięcie zasięgu transmisji od 2 do 40 kilometrów. Zasięg zależy jednak w dużym stopniu od lokalnych warunków (topografia terenu, występujące zakłócenia zewnętrzne) oraz parametrów zastosowanych anten. Maksymalna szybkość transmisji wynosi 4800bd (w przypadku zastosowania odstępu międzykanałowego 12,5 lub 20kHz) lub 9600bd (w przypadku zastosowania odstępu międzykanałowego 25kHz). Satelline-2ASxE posiada wbudowane oprogramowanie z dużą liczbę Elektronika Praktyczna 2/2002 AUTOMATYKA STACJA GŁÓWNA Rys. 2. funkcji i ustawień. Pracą radiomode-mu można sterować korzystając z tabeli parametrów, które można wygodnie ustawiać z poziomu komputera PC. Satelline-2ASxE może pracować w trzech trybach: trybie przesyłania danych, trybie programowania oraz trybie testowym. Tryb programowania umożliwia łatwe ustawienie wszystkich parametrów urządzenia. Programowanie realizowane jest z poziomu komputera połączonego z ra-diomodemem łączem RS232 z zastosowaniem standardowego programu terminalowego. Z kolei tryb testowy umożliwia przetestowanie transmisji radiowej przez przesyłanie próbnych bloków danych (8OB/lOkB) lub fali nośnej. Podczas pracy radio-modemu w trybie przesyłania danych istnieje możliwość programowej zmiany adresu przyporządkowanego urządzeniu oraz kanału, na którym odbywa się transmisja. Realizuje się to przez wysyłanie łączem RS232 specjalnych poleceń programujących (komendy SL) umieszczonych pomiędzy blokami danych. Satelline-2ASxE jest zgodny z ogromną większością stosowanego na świecie oprogramowania komunikacyjnego wykorzystującego transmisję szeregową. Jest zupełnie przeźroczysty dla podłączonych do niego urządzeń. Każdy radiomodem wykorzystywany w lokalnej sieci radiomodemowej może mieć nadany adres w celu łatwiejszej identyfikacji. Części nadawczej (Tx) i odbiorczej (Rx) urządzenia może być przypisany oddzielny adres, bądź też obie części mogą używać wspólnego adresu. Satelline-2ASxE umożliwia przesyłanie danych w trybie dwuprzewodowym. Oznacza to możliwość współpracy przy połączeniach, w których nie wykorzystuje się sygnałów potwierdzenia gotowości urządzeń RTS i CTS [handshaking). Dla uzyskania maksymalnej niezawodności połącze- PODSTACJA nia zalecane jest jednak stosowanie sygnału CTS, jeżeli jest to tylko możliwe. Jeżeli istnieje potrzeba rozbudowy stosowanej sieci radiomodemowej, Sa-telline-2ASxE może pracować jako re-peater. Działanie w tym trybie polega na odbieraniu pakietu danych (o maksymalnej długości 135 bajtów) i niezwłocznej ich retransmisji. Dwa radiomodemy Satelline-2ASxE pozwalają na łatwe połączenie radiowe dwóch stacji, którymi mogą być dowolne urządzenia potrafiące przesyłać dane przez interfejs RS232. Radiomodemy Satelline-2ASxE mogą z powodzeniem pracować w systemach komunikacyjnych typu polling i multi-master, składających się z wielu ra-diomodemów. Sterowanie transmisją jest wtedy realizowane według zasad stosowanego protokołu komunikacyjnego. Radiomodemy Satelline-3AS i 3ASd Satelline-3AS (fot. 1) oraz 3ASd to najnowsze radiomodemy firmy Satel. Są one przeznaczone do transmisji danych w trybie half-duplex, w szczególności do aplikacji, w których ważna jest duża prędkość przekazu. Łącze szeregowe można skonfigurować do pracy w jednym z trybów: RS232, RS422 lub RS485. Model 3ASd wyposażono w wyświetlacz LCD dający użytkownikowi możliwość konfigurowania radio modemu bez konieczności podłączania go do komputera PC. Satelline-3AS składa się z trzech głównych elementów: nadajnika, odbiornika radiowego oraz modemu, które umieszczone są w kompaktowej aluminiowej obudowie. Radiomodemy mogą pracować na częstotliwościach paśmie 37O...47OMHz. Użytkownik może zmieniać częstotliwość nośną w zakresie ąlMHz w stosunku do częstotliwości ustawionej fabrycznie. Odstęp między- kanałowy wynosi 12,5kHz lub 25kHz. W pierwszym przypadku do dyspozycji jest 160 kanałów, w drugim 80. Moc nadajnika radiomodemu wynosi od lOmW do 1W, jej wartość można zmieniać z poziomu zwykłego programu terminalowego komputera PC. Czułość odbiornika wynosi od -HOdBm do -116dBm i podobnie jak moc, jest programowana. Maksymalna prędkość transmisji danych "w powietrzu" wynosi 9600bd (w przypadku zastosowania odstępu między kanał owego 12,5kHz) lub 19200bd (w przypadku zastosowania odstępu międzykanałowego 25kHz), natomiast prędkość transmisji "na porcie" jest programowana i wynosi 3OO...384OObd. Radiomodemy Satelline-3AS (3ASd) mogą pracować w jednym z trzech trybów: przesyłania danych, trybie programowania oraz trybie testowym - opisaliśmy je już wcześniej. Podczas pracy radiomodemu w trybie przesyłania danych istnieje możliwość programowej zmiany adresu przyporządkowanego urządzeniu oraz kanału, na którym odbywa się transmisja. Realizuje się to przez wysyłanie specjalnych poleceń programujących (tzw. komendy SL) łączem RS pomiędzy blokami danych. Radiomodemy Satelline-3AS i 3ASd wyposażone są w mechanizm korekcji błędów, co minimalizuje liczbę błędów powstałych przy transmisji. Odbywa się to przez sprawdzanie oraz korekcję paczek danych. Korekcja typu FEC [Forward Error Correction) polega na dzieleniu danych na kilka bloków. Radiomodem dodaje do tych bloków nadmiarową informację, którą można wykorzystać do korygowania błędów transmisji. Jeżeli istnieje potrzeba rozbudowy stosowanej sieci radiomodemowej, Satelline-3AS (3ASd) może pracować jako przekaźnik [repeater o maksymalnej długości bloku danych: lkB) -rys. 2. Dodatkowe informacje Artykut opracowano na podstawie materiałów firmy Astor Sp. z o.o., www.astor.com.pl: - Gdańsk,tel. (58) 552-25-42; - Katowice.tel. (32) 201-95-16; - Kraków,tel. (12) 428-63-40; - Poznań,tel. (61) 650-29-87; - Warszawa, tel. (22)865-41-41. Katalog radiomodemówfirmy Satel publikujemy naCD-EP02/2002B. 142 Elektronika Praktyczna 2/2002 AUTOMATYKA Programowane panele operatorskie z panelami dotykowymi a żądanie programu. Opro wyśw
do- korzystywanie wirtualnych przycisków, lampek i bargrafów (rys. 3), a także kompletnych, klawiatur numerycznych (rys. 4), czy też (w przypadku paneli z wyświetlaczami o większej rozdzielczości) kółek nastawczych [thubwheels - rys. 5), które doskonale współpracu-]ą z matrycami dotykowymi pokrywają-oyai .tam. de wszystkim spowodowane ich dosc wysoką ceną, Najprostsze terminale paneli op z tej grupy produkowane przez firmę proste, po : NT20S (o przekąt anie wyglądu Projekto 5") - fot. 1 i NT6D0S (9") - fot. 2. Są nie wyglądu ekranów rskich jest nad wyraz iż wszystkie standardo- graficzne wchodzą specjalnego oprogra wania [NT Sup- konfigurowalny, tzn. jego zachowa
iśyt- wisku graficznym. Grafika wyświetlana na ekranach tych terminali może być animowana, a to dzięki wykorzystaniu systemu "lampek", czyli dowolnych obiektów graficznych wyświetlanych omRon Jednym z n ajbardziej istotnych,
użytków nika, elementów nowocze snych systemów a/iio są panele operatorski . Standardem stały się już panele wyposażone w alfa tumeryczny lub graficzny wyświetlacz LCD, a także l nniej lub bardziej wyrafinow ne klawiatury lub pane le dotykowe. Szczegółów vy przegląd paneli produkow mych przez firmę Omron zol nieśdliśmy w EP6l 2000. Pretekstem do po wtóri ego zajęcia się tematem je t wprowadzenie do sprzedaży nowego 5" panela dotyków vego NT21 oraz udostępn enie przez firmę Omron n owej wersji (4.6) programu narzędziowego NT Support 'ool służącego do projektów ania wyświetlanej przez pa nel grafiki, który dzięki upr zejmości polskiego biura tej f rmy zamieszczamy na płyci & CD-EP02/2002B (dostępna tylko z EPoIoL). Elektronika Praktyczna 2/2002 AUTOMATYKAl Modicon Keyence Mitsubishi Toshiba NT11S 218x113x38,2 mm NTLmk x 20 znaków Świ2tlenem 32 kB/ Flash 250 LED NT21 190x110x53,5 mm Host Link/ 5"zpod- LCDzpod- 260x140 ekran 91 na 96kB/ 3999 NTLmk punktów dotykowy ekranie Flash (1 1/v1 N)/ LED NT31 195x142x55,6 mm Host Link/ 5,7" LCDzpod- 320x240 ekran 192 na 512kB/ 3999 High Speed kolorowy LED Flash NTLmk(115kbd)/ Memory Link NT31C 195x142x55,6 mm Host Link/ 5,7" STN LCD 320x240 ekran 192 na 512kB/ 3999 NT Link/ 8-kolo- punktów dotykowy Flash High Speed rowy NTLmk (115kbd)/ Memory Link NT600S 275x192x71 mm Host Link/ 9" STN LCD 640x400 128 na 128kB/ 500 (LCD) NTLmk zpodświet- punktów dotykowy ekranie Flash (1 1/1 N)/ C200H NT600S 275x192x71 mm Host Link/ 9" aodświetlenie 640x400 ekran 128 na 128kB/ 500 (EL) NTLmk lekrolummes punktów dotykowy ekranie Flash (1 1/1 N)/ cencyine C200H NT631 315x250x54 mm Host Link/ 9" 640x480 768 na 512kB/ 3999 NTLmk lekrolummes punktów dotykowy ekranie Flash (1 1 A/1 N)/ High Speed NTLmk (1i5KBaud)/ Memory Link/ &Multi-Vendor NT631C 315x250x54 mm Host Link/ 11,3" STN LCD 640x480 ekran 768 na 1MB/ 3999 NTLmk 8-kolo- zpodświet- punktów dotykowy Flash (1 1 A/1 N)/ High Speed NTLmk (115KBaud)/ Memory Link/ &Multi-Vendor pującymi w samym panelu (jak np. ekrć przyciskanie przycisków), jak i w jego tow i kto .dzielczości 256x128 punk- graficznych paneli operatorskich. Do . Do nikacja współpracującego PLC z siecią, tykowymi. Nowszy model NT21 ma drugiej grupy wchodzą najnowsze mo- zmiana bitów w jego rejestrach itp.), powiększony ekran do 117x63 mm, dele serii NT21/NT31 i NT631, Terrni- Także wymiary obiektów graficznych na którym można zaprogramować do nale obu rodzin dostępne są z wyś- i wyświetlanych tekstów można mody- 91 punktów dotykowych. Panel NT21 wietlaczami dwukolorowymi lub 8-ko- w typowych programach graficznych) nio w bardziej rozbudowanych modę- zachowania wierności kolorów - we rys. 6). Graficzne panele operatorskie Jak wcześniej wspomniano, Omron tomiast NT600S ma rozdzielczość ek-
atryca czujników dotykowych składa NT31/31C wyposażono w ekran LCD i ze 128 punktów dotykowych. o rozdzielczości 320 x 400 pkt. i ma- Elektronika Praktyczna 2/2002 AUTOMATYKA : Rys. S. NT620 oraz NT631/631C pozw także projektantom systemów NTST, W grupie urządzeń z wyświetla-; dodatkowych funkcji: czarni graficznymi są dostępne zaró- dzielczości 640 x 480 pkt., a matryca kresów, ficzne NT15S i NT18S, jak i zaawan- dotykowa składa się aż z 768 punk- - tworzenie historii alarmów z dokład- sowane panele z wyświetlaczami o du- tów, Pojemność pamięci wbudowanej nym ich opisem oraz histogramów aej rozdzielczości, w terminalu NT30/620 sięga 2000 występujących alarmów, Terminal NT15S może wyświetlać ekranów. W panelach NT21/31/631 - t i zapamiętać do 3999 ekranów. oraz znaków do wyświetlania (luh 40 znaków iach) i jest wy- Wss nikacji szeregowej RS232 i RS232/422. cze szeregowe zgodne zRS232 (trans- minal NT18S ma nieco większy wy- Wszelkie ustawienia paneli dokonywa- fer do l5m), RS422 (transfer do 500m) świetlacz - jego rozdzielczość wynosi ne są z menu systemowego bezpośred- lub poprzez jeden z uniwersalnych 240x128 punktów (alternatywnie 40 . Noi niki PLC jest możli- 10 metrów. Panele NT11S, NT20S o funkcjach progrs wość symulacji konsoli programującej równikami PLC firmy Omron. Nowsze TomaszPaszkiewicz, AVT dla podłączonego sterownika (dotyczy generacje (NT2/4/15/18S) mogą współ- to sterowników PLC firmy OMRON). pracować z dowolnymi sterownikami Tym sposobem możliwa jest ingerencja dostępnymi na rynku, a dla terminali do którego dostęp może być blokowa- ze sterownikami firm: AP, Mitsubishi, ny poprzez hasło. GE, Fanuc oraz Siemens. Najważniejszą cechą użytkową pa- Omron oferuje także szereg innych Elektronika Praktyczna 2/2002 PROJEKTY Emulator pamięci EPROM do Amigi i C-64 o AVT-5053 Przedstawiamy em ulator usprawniający uruchamianie sterowników mikroprocesorowych. Jak wiadomo, w sprzedaży nie ma emulatorów pamięci EPROM w wersji dla Amigi i C-64. Charakterystyka emułatora 1. Praca z każdym komputerem Amigą (OS2.04+) i C-64, za pośrednictwem portu równoległego. 2. Szybkość transferu z komputera 4kB/s. 3. Program transmisji danych napisany w as-semblerze. 4. Pełna kontrola błędów programowych. 5. Praca programu w trybie wielozadaniowym. 6. Wbudowany port Arexxa. 7. Zabezpieczenie od strony złącza emulacyjne-go buforami 74HCT245. 8. Zasilanie z uruchamianego systemu, podtrzymanie pamięci z komputera. Wielokrotne p rogram owanie i kasowanie pamięci może doprowadzić do rozpaczy nawet najbardziej wytrwałych konstruktorów. Emulator może ułatwić życie, jest bowiem takim przyrządem w pracowni elektronika, jak steto-skop w gabinecie lekarza. Emulator zastępuje pamięci ROM i EPROM podczas uruchamiania systemów mikroprocesorowych z tymi pamięciami. Pamięci tego rodzaju spełniają w nich na przykład funkcje generatora znaków. Emulator może symulować pamięci do 64kB, zarówno w wersji MOS jak i CMOS. Opis układu Schemat elektryczny emułatora pokazano na rys. 1. Współpracuje on z komputerami za pośrednictwem portu PARALLEL w Amidze lub USER w C-64. Zasilanie emułatora jest pobierane z uruchamianego systemu. Emulator łączymy z nim 28-żyłową taśmą zakończoną wtykiem emulacyjnym. Dodatkowo możemy podłączyć przewód zerujący uruchamiane urządzenie. Głównymi blokami emułatora są dwie pamięci o pojemności 32kB każda. Ponieważ emulator przewidziano do uruchamiania systemów z 8-bitową szyną danych, 32kB jest przeważnie maksymalną wielkością pamięci EP-ROM/ROM. Niektórych Czytelników zdziwi może to, że połączenia układu US11 z US6, 7, 8 od strony pamięci RAM nie są oznaczone (brak etykiet). Nie jest to błąd w druku. Po prostu wyprowadzenia te są połączone z układami US2, 3, 4, 5 znajdującymi się w lewej części schematu. Taki sposób przedstawiania niektórych połączeń przyjął się w schematach bardziej skomplikowanych urządzeń, np. mikroprocesorowych. Tak narysowany schemat jest bardziej zwarty i bardziej czytelny. Elektronika Praktyczna 2/2002 21 Emulator pamięci EPROM do Amigi i C-64 +5V nr pinów złącza PARALLEL Amigi nr pindw złącza USER w C-64 C4 C12 C6 CB C10 t nr plnów złącza emulacyjnego Rys. 1. Schemat elektryczny emulatora pamięci. Zależnie od stanu linii BUSY uaktywniane są rejestry US2, US3 (poziom niski BUSY) lub bramy US6, US7 (poziom wysoki BUSY). Przyjmijmy, że BUSY znajduje się w stanie "0". Na wyjściu bramki Bl pojawi się wówczas poziom wysoki, wskutek czego wyjścia buforów US6, US7 znajdują się w stanie trzecim, natomiast wyjścia rejestrów US2, US3 są aktywne. Liniami POUT i SEL przesyłany jest do rejestrów adres wpisywanej komórki pamięci. Następnie do postu wpisywana dana. Powoduje to automatyczną zmianę (na chwilę) poziomu linii STB na niski, co spowoduje, za pośrednictwem B2 i B3, pojawienie się impulsu na linii WR pamięci. Dzięki bramce B2 układ US5 jest w stanie aktywnym. Następstwem tego jest wpisanie danej do pamięci RAM. Następnie wysyłany jest do rejestrów kolejny adres (przeważnie o jeden większy), wysyłany daną do portu itd. Gdy wpiszemy wszystkie dane, zmieniamy poziom linii BUSY na wysoki. Spowoduje to przejście rejestrów w stan trzeci, natomiast bufory US6, US7 zostaną uaktywnione. Brama US5 zostanie również ustawiona w stan trzeci. Bramka B4 nie pozwoli na wpisy do pamięci RAM (impulsy z STB nie będą przepuszczane). Adres generowany przez mikroprocesor, z uruchamianego systemu, zostanie przeniesiony na wejście adresowe pamięci RAM. Bufory, poza funkcją odcięcia linii adresowych od procesora, likwidują zakłócenia mogące pojawić się w długim kablu sondy emulacyjnej. Następuje to za sprawą bramek Schmi-tta wbudowanych w układ. Ustawienie na liniach CE i OE poziomu niskiego, za pośrednictwem bramek B9 i B10, uaktywni wyjścia pamięci RAM (linia OE) oraz bufora US8. Po czasie określonym w katalogach jako czas dostępu, na wyjściach danych pamięci pojawi się bajt danych. Inne kombinacje wartości sygnałów OE i CE powodują przejście US8 w stan trzeci. Dzięki temu emulator zachowuje się jak "prawdziwa" pamięć EPROM. Bramki B2, Bil i B12 sterują diodami LED. Odczyt pamięci przez mikroprocesor powoduje zaświecenie diody "Read". Ponieważ są to krótkie impulsy, zastosowano kondensator C3, który powoduje przedłużenie czasu świecenia LED. Dzięki temu obserwujemy ciągłe świecenie pełną jasnością. Dioda oznaczona jako "Write" świeci podczas wysyłania danych przez port. Kondensator C2 zastosowano w tym samym celu co C3. Dioda "Load" świeci, gdy na linii BUSY jest poziom niski, a więc w czasie, gdy jest możliwy zapis danych do RAM. Obwód z tranzystorami Tl i T2 generuje sygnał "Reset" do uruchamianego Elektronika Praktyczna 2/2002 Emulator pamięci EPROM do Amigi i C-64 R6 o' ---0~* R5
R8 R? ._udOOOS nloooooooooooooooo DOOODOO -J W B W B B W W 90000 000000 ?0900000 00000000 00000000 7 V nooooooooooooo n _ Rll , Rlg' R14 R13 aoooo 01 "U "U +i 3 a a t- o o u 1= o. _i ec 3 ? ?? n DOOOOOO 300000 DOOOOOO Wolny pin złącza IDC Rys. 2. Rozmieszczenie elementów na płytce drukowanej emulatora. systemu. Dostępne jest wyjście z aktywnym poziomem niskim lub wysokim. Montaż i uruchomienie Schemat montażowy płytki emulatora pokazano na rys. 2. W pierwszej kolejności montujemy wszystkie podstawki i elementy bierne. Następnie zaciskamy złącza i sondę symulacyjną na taśmie 28-przewodowej. Zastosowano taką taśmę, aby i stniała możliwość symulowania pamięci 2716 oraz mniejszych, czy też innych, nietypowych. Typ symulowanej pamięci zależy od zastosowanego kabla. Przy kablu zaproponowanym w tym emulatorze istnieje możliwość symulowania pamięci 2764, 27128, 27256, 27512 w typowych układach aplikacyjnych. Kabel należy zacisnąć tak, aby jego pierwsza żyła była połączona z drugim wyprowadzeniem złącza IDC (rys. 3). Taśma nie powinna być zbyt długa - jej maksymalna długość nie powinna przekraczać 3 0cm. Do połączenia emulatora z komputerem użyjemy typowego przedłużacza DB25 (w przypadku Amigi) lub kabla przejściówki (w przypadku C-64). Wtyk DB25 zaciskamy na kablu i łączymy z płytą emulatora za pomocą złącza IDC34. Jeśli nie posiadamy wtyku DB25 zaciskanego na kabelu, można taśmę przylutować bezpośrednio do styków złącza DB25. Sposób połączenia przewodów ze złączem przedstawiono na rys. 4. Po doprowadzeniu zasilania, ale bez zamontowanych układów, sprawdzamy napięcie na ich wyprowadzeniach zasilaniowych. Następnie wkładamy wszystkie układy scalone. Uruchamiamy program EmulatorTest. Postępując zgodnie z jego poleceniami testujemy urządzenie. Przeprowadzone testy są kolejno wyświetlane na oknach z opisami. Przykładowe Złącze 15V Rys. 3. Sposób wykonania kabla emulacyjnego. okno pokazano na zrzucie ekranu na rys. 5. Program poinformował o wysłaniu danej S5555 do rejestrów US2 i US3 (4094). Należy wówczas sprawdzić stany logiczne na poszczególnych wyprowadzeniach układów scalonych. Okno podzielono na dwie części. W tym przykładzie wyszczególniono pierwsze wyprowadzenia, na których powinien być poziom H, w drugiej części wyszczególniono wyprowadzenia, na których powinien być poziom L. Jeśli sprawdzone poziomy są prawidłowe naciskamy przycisk "OK", a jeśli nie, wycofujemy się z testu naciskając "Cancel". Testy ułożone są w określonym porządku. Najpierw sprawdzane są linie BUSY, POUT, SEL (układy US1, US4). Jeśli wynik jest pozytywny sprawdzane są rejestry US2 i US3, następnie brama US5, a na koniec obwód zapisu RAM (bramki B3, B4 układu US4). Jeśli więc jakiś test wypadł niepomyślnie, procedurę należy przerwać i usunąć usterkę. Gdybyśmy testy przeprowadzali dalej, z pewnością ich wyniki będą negatywne, bo np. gdy uszkodzony będzie USl, nie ma mowy o poprawnym działaniu US2 i US3. Dzięki wyświetlonym podpowie- Rys. 4. Sposób wykonania kabla połączeniowego. Elektronika Praktyczna 2/2002 23 Emulator pamięci EPROM do Amigi i C-64
ŚJni f i * i. > 3 i! ".'Ś i mu A Ł1M ' ŚŚŚ 1 i. '. ł. n. z mi i Lr 1 1 Rys. 5. Widok okna programu testowego. dziom znalezienie ewentualnego błędu będzie łatwe. Po sprawdzeniu układu można uruchomić program. Pozostało jeszcze wyjaśnić rolę złącza JPl. Jeśli zastosujemy dwie pamięci (symulacja maks. 64kB) jumper należy ustawić tak, aby zwierał piny 1-2 (jumper przy napisie 64kB). Przy logicznym "0" na wejście bramki NOR, neguje ona sygnał pochodzący z linii adresowej A15. Dzięki temu do adresu $7FFF wybrany jest układ US10, a od adresu $8000 układ USll. Gdy jumper ustawimy tak, aby zwierał piny 2-3, na bramkę NOR zostanie podany poziom H (symulacja maks. 32kB). Wtedy bez względu na stan linii adresowej A15 zawsze jest wybrany układ USll. Podstawka pod USlO musi być pusta! W przeciwnym przypadku może dojść do kolizji danych pomiędzy USlO iUSll (jednoczesne wybranie obu pamięci). Mogłoby wydawać się, że JPl jest niepotrzebny, ale tak nie jest. Załóżmy, że bramka Bl3 pracuje jako inwerter, a układu USll nie ma w podstawce. Gdy np. symulowana jest pamięć 8KB, na piny 1 (Vpp) i 27 (PGM) podawany jest poziom H. Wówczas dane w emu-latorze zostaną wpisane pod adresy: $0000, $2000, $4000, $6000 oraz w nieistniejący obszar: $8000, $A000, $C000, $E000. System mikroprocesorowy wygeneruje adresy $C000...$FFFF (Vpp=Al5, PGM=A14), co spowoduje wybranie układu USll, którego przecież nie ma w podstawce. Oprogramowanie dla Amigi Obsługa programu sterującego pracą emulatora (jego okno pokazano na rys. 6) jest łatwa, a ewentualne wątpliwości rozwieje instrukcja umieszczona na CD-EP02/ 2002B. Program rozpoznaje pliki binarne i w formacie IntelHex. Wbu- dowany skrypt Arexxa umożliwia sterowanie emulatorem z zewnętrznych programów. Dołączono także program wysyłający dane z Amigi do CA80 oraz programy rozdzielające dane 16-bit na 2*8bit. Podział może nastąpić na bajty parzyste i nieparzyste lub bity parzyste i nieparzyste. Dodatkowo polecam kompilatory Fran-kenstein zawierające między innymi kompilatoiy dla 6502, 6805, 6809, 6811, 8048, 8051, 8096, Z8, Z80 oraz skrypty Arexxa ułatwiające kompilacje dla 6502, 8051 i Z80. Skrypty te po kompilacji powodują wysyłanie danych do emulatora EPROM i generowanie sygnału zerującego dla uruchamianego systemu. Dodatkowo na płycie zamieściłem skrypty umożliwiające wysyłanie danych do AVT-497, AVT-870, AVT-995, AYT-2250. Cały pakiet można ściągnąć z www.ep.com.pl lub www. hom e. m ck. pl / ~r -m ik/ko mpi -latory.htm. Jest on także dostępny na płycie CD-EP02/2002B. Szczegółowe informacje o sposobie instalacji pakietu kompilatorów znaj-dują się w pliku "Compi-ler.DokPL.". Jeśli uruchamiany mikroprocesor nie wykorzystuje całej pamięci, to nieużywane linie adresowe należy połączyć z masą lub szyną zasilania. Unikniemy w ten sposób oscylacji na niewykorzystanych liniach adresowych. Program przy emulowaniu pamięci mniejszych od 27512 wpisuje dane we wszystkie możliwe bloki. Po ustawieniu typu pamięci 27128 i wysłaniu danej z RAM Amigi pod adres $0000 zostanie ona zapisana pod adresami: $0000, $4000, $8000, $6000. Dzięki temu nie trzeba sobie "zawracać głowy" offsetami. Oprogramowanie dla C-64 Program sterujący pracą emulatora współpracującego z C64 obsługujemy z klawiatury. Klawiszami Fl, F3 ustalamy obszar w pamięci RAM komputera, który zostanie przepisany do emulatora pod adres ustawiony za pomocą F5. Klawiszem F8 jest uruchamiana transmisja. Program napisano tak, aby współpracował z innymi programami. Można więc "przechodzić" między Turboassembler, Basic, Mo- Rys. ó. Okno programu sterujqcego pracq symulatora. ni tor czy innym programem, a emulatorem. Program jest przygotowany w dwóch wersjach. Pierwsza - EMULATOR.EXE - zawiera monitor asemblera (na dane jest przeznaczony obszar $3000...$FFFF). Druga wersja -EMULATOR-A.EXE - nie zawiera monitora, wykorzystuje monitor w ActionReplay (na dane przeznaczony jest obszar $1200...$FFFF). Po uruchomieniu program zapamiętuje adres Basic. Dzięki temu przy wyjściu (klawisz strzałka w lewo) wraca do niego lub jeśli startowaliśmy z monitora (np. w Action), to do monitora. Naciśnięcie Restore spowoduje przejście do Turboassemblera (jeśli jest w RAM). Wyjście z programu przez CTRL+STOP powoduje restart Ac-tionreplay, Finał, Black Box. Wię- WYKAZ ELEMENTÓW Rezystory Rl, R3, R5...RS: R2, R4, Rló: R9, RIO: R11...R14: 47CO R15: lOOft Kondensatory Cl: lOOnF C2, C3: 2,2nF C4, Cli, C12: 47^F/1ÓV C5...C10: lOOnF Półprzewodniki Dl, D4: LED zielona D2: LED żółta D3: LED czerwona Tl; BC547 T2: BC557 US1: 74HC14 US2, US3: 4094 US4: 74HC132 US5...USS: 74HC245 US9: 74HC02 USlO, USll: Ó225Ó Różne CON1, CON2: gniazdo IDC34 JPl: listwa goldpin 1"3 Wtyki zaciskane IDC34 na kabel FLAT (2szt.) Wtyk DB25PIN-F na kabel FLAT Wtyk emulacyjny 2SDIP 24 Elektronika Praktyczna 2/2002 Emulator pamięci EPROM do Amigi i C-64 cej szczegółów można znaleźć w instrukcji (READ ME.EXE) na dyskietce dołączanej do kitu. Uwagi końcowe Jeśli zastosujemy niepełne de-kodowanie adresów, należy pamiętać o odpowiednim ustawieniu offsetu (przycisk "Adres EPROM" dla Amigi lub klawisz F5 dla C-64). Przykładowo, jeżeli w uruchamianym systemie zastosujemy pamięć 27256 (ze względu na tę samą cenę co 27128, czy 2764), procesor nadal będzie obsługiwał tylko jej początkowe 16kB. Dla pamięci 27128 linia Vpp i PGM musi być zwarta z +5V. Wejście PGM dla 27128 jest na wyprowadzeniu, na którym jest bit adresowy A14 dla 27256. Procesor wystawiając adresy SOOOO...S3FFF będzie więc odwoływał się do adresów EPROM zawartych w zakresie S4000...7FFF. W emulatorze należy więc ustawić offset =S4000. O tym offsecie należy pamiętać podczas programowania również pamięci w programatorze. Gdyby linia PGM była zwarta z masą, wtedy adresy dla 27256 zawarte byłyby w zakresie SOOOO...S3FFF. Tak jednak prawdopodobnie nigdy nie będzie, ponieważ niewykorzystane linie adresowe "większych" pamięci, a co za tym idzie linie sterujące "mniejszych" pamięci łączymy z +5V. Emulator podłączamy do komputera przy wyłączonym zasilaniu komputera i emulatora. Sondę emulacyjną można umieszczać w uruchamianym systemie tylko przy wyłączonym zasilaniu uruchamianego urządzenia. Odmienność kopii w stosunku do oryginału Emulator różni się od prawdziwej pamięci EPROM kilkoma cechami: 1. Większa obciążalność wyjść emulatora dzięki buforom 74HCT245 od rzeczywistej dla pamięci EPROM. 2. Krótszy czas dostępu do pamięci emulatora (lOOns) w porównaniu z EPROM (200ns). 3. Duża obciążalność dynamiczna, spowodowana długimi przewodami połączeniowymi. 4. Większy pobór prądu przez emulator w porównaniu do EPROM. Cechy te mogą spowodować, że urządzenie będzie działać prawidłowo z emulatorem, przestanie po zainstalowaniu pamięci EPROM. W dotychczasowej pracy nie zauważyłem jednak jakichkolwiek nieprawidłowości w pracy emulatora. Został sprawdzony w wielu systemach opartych na procesorach Z80 jak i szybkim 6502. Sławomir Skrzyński, AVT slawomir.skrzynski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdfZlutyO2.htm oraz na płycie CD-EP02/2002B w katalogu PCB. Elektronika Praktyczna 2/2002 25 PROJEKTY Emulator odbiornika DCF AVT-5050 Emulator może być przydatny przygotowującym oprogramowanie obsługujące odbiorniki sygnału DCF. Gdy program nie działa poprawnie nie wiemy jaka jest przyczyna: czy odbiornik odbiera zakłócony sygnał, czy występuje błąd w programie? Dzięki emulatorowi mamy pewność, że nadawany przez niego sygnał jest prawidłowy. Na sygnał synchronizacji z odbiornika DCF trzeba czekać nawet minutę, dzięki emulatorowi czas ten wynosi tylko kilka sekund. Emulator odbiornika DCF opisano juź na łamach EP (AVT-423). Jego budowa była oparta na EPROM-ie, co powodowało konieczność zastosowania wielu dodatkowych układów. Opisany w tym artykule emulator jest 0 wiele prostszy. Zawiera tylko jeden układ scalony (nie licząc stabilizatora). Ponadto o wiele łatwiej wpisać dane przesyłane DCF. Budowa i działanie Jak widać na schemacie elektrycznym (rys. 1), urządzenie jest banalnie proste. Napięcie zasilania z gniazda DB9 (w takie samo gniazdo są wyposażone odbiorniki DCF) jest obniżane do 5V za pomocą scalonego stabilizatora USl. Kondensatory C1...C4 filtrują napięcie zasilające. Napięcie 5V służy do zasilania procesora. Elementy C5 1 Rl formują sygnał zerujący po włączeniu zasilania. Mikrokontroler można wy zerować także ręcznie, naciskając przełącznik RESET. Elementy C6, C7 i Ql ustalają częstotliwość sygnału generatora zegarowego taktującego mikrokontroler. Tranzystory Tl i T2, wraz z elementami towarzyszącymi, tworzą obwód konwertujący sygnał o poziomach TTL na sygnał o poziomach zgodnych ze standardem RS232C. Zastosowana konfiguracja tego konwertera zabezpiecza emulator przed uszkodzeniami powodo- wanymi zwarciem wyjścia do masy czy szyny zasilania. Emulator wytwarza zarówno napięcia bipolarne jak i unipolarne, co jest zależne od budowy stopnia wejściowego zegara DCF. Z napięciami bipolarnymi będziemy mieli do czynienia, gdy emulator podłączymy do portu RS232C (np. komputer), a napięcia unipolarne są stosowane przy innych rozwiązaniach w innych konstrukcjach (np. AVT-322, AVT-5022). Dioda D3 świeci się w momentach, gdy na wyjściu RS pojawia się impuls. Na wyjściu OUT_TTL pojawiają się impulsy w standardzie TTL. Wyjście to może być użyteczne, gdy będziemy programować zegar, a nie zbudowaliśmy jeszcze części sprzętowej. Wówczas wyjście OUT_TTL łączymy w wybranym wyprowadzeniem procesora, w którym zapisano de-kodującym sygnał DCF. Emulator jest zasilany z portu RS232C. Jeśli jednak wykorzystamy wyjście OUT_TTL emulator trzeba zasilić inaczej. Możemy podać napięcie +8...15Y na wejście 12V lub napięcie +5V na wejście 5V. W pamięci procesora zapisano program generujący sygnał DCF. Program obsługujący zegar jest dość krótki, dlatego zdecydowałem się na umieszczenie jego treści w artykule (list. 1). Ważnym fragmentem programu są deklaracje pojawiające się za etykietą "dane:". Każda deklaracja Elektronika Praktyczna 2/2002 27 Emulator odbiornika DCF Ust. 2. ;Listing 1 j eden: clr LED LED - świeci
include 'INCL: 8051/8051.d ef ' setb OUT TTL OUT = +5V include 'IWCL:8051/piny_8 c2051.def ' setb OUT_ RS RS = -12V speed h equ 2 5 6-107 ; lOOms = 100000[ s]*(3.2768 [MHz]/12) = ret speed_l equ 2 5 6-170 ; 27306 cykli = 106*256+170 ; Odczekanie cza su 100msACC LED equ Pinl4 WaitlOOms: OUT_TTL equ Pinl6 jnb TFO, WaitlOOms OUT_RS equ Pinl5 mov THO, łspeed h załadowanie timerów lOOms mov TLO, #speed_l clr TFO zerowanie flagi
start: djnz ACC, WaitlOOms mov SP,#S3 0 ;Ustawienie stosu ret mov TMOD,ł%0001 ;timer 0 liczy czasy THO ftspeed h .załadowanie timerów lOOms mov TLo!ttspeedll ; Dane zawie rają setb TRO ' start timera ; 23:21 27 .05. 31 Niedziele acall impulszero ;generuje trzy impulsy zero dane: acall impulszero by te 1 s ' 60 syn chronizacja (brak impulsu) acall impulszero by te 0 1 Sta rt (0) by te 0 2 14 zer datainit: by te 0 3 mov dptr.łdane ;adres początku danych by te 0 4 mov R0,#60 ;liczba danych by te 0 5 repeat: by te 0 6 mov a,#0 ;pobranie danej by te 0 7 movc a,@a+dptr by te 0 8 cjne a,łO.repl ;czy "0" ? by te 0 9 jeden ;generowanie zera by te 0 10 mov a.łl by te 0 11 acall WaitlOOms by te 0 12 acall zero by te 0 13 mov a, #9 by te 0 14 acall WaitlOOms by te 0 15 sjmp rep4 by te 0 16 Typ anteny by te 0 17 Zap owiedź zmiany czasu repl: by te 1 18 LSB Czas letni/zimowy %01 cjne a,#l,rep2 ;czy "1" ? by te 0 19 MSB Czas letni/zimowy acall jeden ;generowanie jedynki by te 0 20 Kor ekta czasu %0 mov a, #2 by te 1 21 Poc zątek informacji %1 acall WaitlOOms acall zero by te 1 22 LSB jedności minut %0001, #1 mov a, #8 by te 0 23 jednostki minut acall WaitlOOms by te 0 24 jednostki minut sjmp rep4 by te 0 25 MSB jednostki minut by te 0 26 LSB dziesiątki minut %010, #2 rep2 : by te 1 27 dziesiątki minut cjne a,ł's' ,error ;czy synchro ? by te 0 28 MSB dziesiątki minut acall zero ^ It1 C ;generowanie synchronizacj i by te 0 29 Bit parzystości minut mov a, ffą ó WaitlOOms by te 1 30 LSB jednostki godzin %0011, #3 sjmp rep4 by te 1 31 jednostki godzin by te 0 32 jednostki godzin error: by te 0 33 MSB jednostki godzin mov a.łl ;błąd by te 0 34 LSB dziesiątki godzin %10, #2 acall WaitlOOms by te 1 35 MSB dziesiątki godzin acall zero by te 1 36 Bit parzystości godzin mov a.łl acall WaitlOOms by te 1 37 LSB jednostki dnia miesiąca %0111, #7 acall jeden by te 1 38 jednostki dnia miesiąca sjmp error by te 1 39 jednostki dnia miesiąca by te 0 40 MSB jednostki dnia miesiąca rep4 : by te 0 41 LSB dziesiątki dnia miesiąca %10, #2 inc dptr ;zwiększ wskaźnik danych by te 1 42 MSB dziesiątki dnia miesiąca djnz R0, repeat ;czy koniec by te 1 43 LSB dnia tygodnia %111, #7 sjmp datainit by te 1 44 dnia tygodnia by te 1 45 MSB dnia tygodnia by te 1 46 LSB jednostki miesiąca %0101, #5
impulszero by te 0 47 jednostki miesiąca acall jeden ;generowanie zera by te 1 48 jednostki miesiąca mov a.łl by te 0 49 MSB jednostki miesiąca acall WaitlOOms by te 0 50 dziesiątki miesiąca %0 , #0 acall zero by te 1 51 LSB jednostki roku %0001, #1 mov a, #9 by te 0 52 jednostki roku acall WaitlOOms by te 0 53 jednostki roku ret by te 0 54 LSB jednostki roku by te 0 55 LSB dziesiątki roku %0000, #0 zero: by te 0 56 dziesiątki roku setb LED ;LED - zgaszona by te 0 57 dziesiątki roku clr OUT_TTL ;OUT = 0V by te 0 58 LSB dziesiątki roku clr OUT_RS ;RS = +12V by te 0 59 Bit parzystości bitów 37...58 ret "byte" to informacja dla programu czy wygenerować "zero", "jeden" czy sygnał synchronizacji. Przyjrzyjmy się bliżej formatowi przesyłania informacji w kodzie DCF. Jedynka jest reprezentowana przez impuls trwający 200ms, z przerwą 800ms. Sygnał reprezentujący zero jest impulsem trwającym lOOms z przerwą 900ms. Jak z tego wynika nadawanie jednego bitu trwa dokładnie 1 sekundę. Bit synchronizacji jest reprezentowany przez brak impulsu, czyli przerwę trwającą 1800ms (1,8 sekundy). Po impulsie synchronizacji (w pier- wszej sekundzie) występuje bit startu 0, po nim 14 zer. 16. sekunda (16. bit) określa typ anteny (0-normalna, l-zapasowa). Bit 17. zawiera informację o zapowiedzi zmiany czasu. Na godzinę przed zmianą czasu bit ten równy jest jeden. Bity 18. i 19. zawierają informację o czasie {letni czy zimowy). Bity o wartościach %10- w kolejności starszy bit 19. młodszy 18. - oznaczają czas zimowy, a %01 oznacza czas letni. Bit 20. równy "1" oznacza zapowiedź dodatkowej sekundy. Bit 21. zawsze jest ustawiony na jeden (bit startu informacji). Bity 22...25. (w kolejności 22. bit-LSB, 25. bit-MSB) zawierają jedności minut w formacje BGD. Bity 26...28. dziesiątki minut, bit 28. jest bitem parzystości bitów 22...28. Bit parzystości oblicza się bardzo łatwo. Jeżeli liczba "jedynek" w sprawdzanym rekordzie będzie parzysta, bit sumy kontrolnej przyjmuje wartość 0. Jeżeli liczba jedynek będzie nieparzysta, bit sumy kontrolnej przyjmuje wartość 1. Bity 30...33. zawierają jedności godzin, bity 34...35. dziesiątki godzin, bit 3 6. parzystość Elektronika Praktyczna 2/2002 Emulator odbiornika DCF RESET R1 lOk 1 1 T a. 33p 011I 3.2768 MHz I-----1 I C7 33p 1G D4 US1 78L05 Ii u* i-C3 1QuF| 100n C2-100n Nunery plnów złącza DB9 I I RST Vcc OUTRS LED OUTTTL GND R2 10k R7 470 R8 22 US2 AT89C2051 Rys. 1. Schemat elektryczny emulatora. dla bitów 30...35. Bity 37...40. -jedności dni miesiąca, bity 41...42. dziesiątki dni miesiąca. Bity 43...45. nr dnia tygodnia (1-ponie-działek, 2-wtorek, 3-środa, itd.). Bity 46...49. - jedności miesiąca, bit 50. - dziesiątki miesiąca. Bity 51...54. - jednostki lat, bity 55...58. dziesiątki lat. W informacji DCF nadawane są ostatnie dwie cyfry roku. Bit 59. jest bitem parzystości bitów 37...58. Na tym kończy się nadawanie informacji DCF. Po 59. bicie następuje impuls synchronizacji i ponowne nadawanie informacji. Znając ten format możemy wpisać w programie dowolną datę i godzinę. W programie przykładowym wpisano dane zawierające datę 27 maja 2001 roku, niedziela, godzina 23:21. Jeśli zechcemy wpisać inną datę czy godzinę, należy pamiętać o odpowiednim ustawieniu bitów parzystości. Przypomnę tylko, że deklaracja "byte 0" spowoduje wygenerowanie 0, "byte 1" jedynki, natomiast "byte "s" spowoduje wygenerowanie impulsu synchronizacji. Montaż i uruchomienie Schemat montażowy płytki drukowanej pokazano na rys. 2. Montaż zaczynamy od elementów najmniejszych, kończymy na największych. Po włączeniu zasilania dioda D3 powinna sygnalizować migotaniem krótkie impulsy. Emulator podłączamy w miejsce przeznaczone na odbiornik sygnału DCF. Po uruchomieniu zegara Opcjonalnie zasilanie i wyjście sygnału DCF naciskamy przycisk RESET na emulatorze. Emulator generuje trzy impulsy "zero", następnie impuls synchronizacji i informację o czasie. Po odebraniu sygnału synchronizacji zegar DCF powinien zacząć dekodować informację. Po odebraniu całej informacji (pojawieniu się kolejnego impulsu synchronizacji), zegar powinien wyświetlić datę i czas. Jeśli czas nie pojawił się, to oznacza, że popełniliśmy błąd w programie. Należy go odszukać, a po usunięciu program ponownie skompilować i zapisać w pamięci procesora lub w pamięci uruchamianego systemu (EPROM, emulator EPROM, czy emulator CPU). Po wystartowaniu programu należy nacisnąć RESET na emulatorze DCF. Dzięki temu nie będziemy długo czekać na pojawienie się impulsu synchronizacji. Dzięki emulatorowi można znacznie skrócić czas pisania programu. Jeśli program poprawnie działa z emulatorem, należy sprawdzić go z odbiornikiem DCF. Zależnie od terytorium na którym mieszkamy, odbieranie poprawnej informacji DCF może zająć trochę czasu. Ten czas zależy od zakłóceń, poziomu sygnału, itp. Jeszcze uwaga dla piszących program obsługi DCF. Emulator generuje czysty sygnał, w którym impuls "jedynki" trwa dokładnie 200ms, "zera" lOOms. Rzeczywisty sygnał jest zazwyczaj zniekształcony, czas trwania impulsu "zera" może wahać się w grani- WYKAZ ELEMENTÓW Rezystory Rl, R2: 10kO R3, R6: 4,7kn R4: lOOkO R5, R7: 470O R8: 22Q Kondensatory Cl: 47^F/25V C2, C3: lOOnF C4, C5: 10|iF/16V Có, C7: 33pF Półprzewodniki US1: 78L05 US2: AT89C2051 Tl: BC547 T2: BC557 DL D2, D4: 1N4148 D3: LED Różne Złącze DB9F do druku Ql: 3,2768MHz RESET: mikroprzełącznik cach 80...120ms, dlatego najlepiej napisać program tak aby: - za jedynkę uznawać impuls trwający od 5 0 do 150ms, - za zero uznawać impuls trwający od 150 do 25 0ms, - za synchronizację uznawać brak impulsu przez ponad 1500ms. Tą procedurę można uprościć: - za jedynkę uznawać impuls trwający mniej niż 150ms, - za zero uznawać impuls trwający ponad 150ms, - za sygnał synchronizacji uznawać brak impulsu przez ponad 1500ms. Sławomir Skrzyński, AVT slawomir.skrzynski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdfZlutyO2.htm oraz na płycie CD-EP02/2002B w katalogu PCB.
asr TU Enula-torDCF "~ łL CC>eO01 by AVT (1 S.Skrzynskl 5j ż 3 ft^ + 13 ? + o] RESET -RT Rys. 2. Rozmieszczenie elementów na płytce drukowanej. Elektronika Praktyczna 2/2002 29 PROJEKTY Timer telefoniczny AVT-5052 Rosnące ceny połączeń telefonicznych zmuszają nas do kontrolowania wydatków na ten cel. Nawet pojawienie się kilku operatorów sieci telefonicznych nie wniosło oczekiwanej obniżki cen. Wręcz przeciwnie, gdy jeden operator podniesie ceny swoich usług, to inni nie pozostają w tyle i również je podnoszą. Koszt połączenia jest istotny dla zwykłych użytkowników, którzy w dobie komputeryzacji, coraz częściej korzystają z internetu oraz z poczty elektronicznej i muszą coraz więcej płacić za te usługi. Nie pozostaje im więc nic innego, jak tylko precyzyjnie kontrolować i ograniczyć wydatki na połączenia telefoniczne. Prezentowany układ timer a nie zapewnia darmowego połączenia, a tylko umożliwia odliczanie kolejnych minut połączenia. Do pracy timera nie jest potrzebny sygnał teletaxy wysyłany przez centralę telefoniczną, gdyż układ wskazuje czas połączenia niezależnie od wybranego numeru oraz kosztów jednostkowych połączenia. Tuner wyświetla wybierany tonów o numer, może więc służyć jako układ do sprawdzania poprawności generowanych przez telefon sygnałów DTMF. Niski pobór prądu pozwala na zasilanie układu za pomocą dwóch baterii o napięciu 1,5V. Opis układu Na rys. 1 przedstawiono schemat elektryczny timera. Jego głównym elementem jest mikrokontio-ler PIC16F84A. Program zawarty w jego pamięci programu (Flash) steruje realizacją wszystkich funkcji. Mikiokontroler jest taktowany zewnętrznym sygnałem zegarowym wytworzonym przez generator kwarcowy z rezonatorem o częstotliwości 32,768kHz. Jego pracę możliwa jest już od napięcia zasilającego 2V, przy poborze prądu około 15fiA. Znakomicie nadaje się więc do stosowania w urządzeniach zasilanych bateryjnie. Jako dekoder kodu DTMF zastosowano układ HT 3170 firmy HOLTEK. Pod względem funkcjonalnym pełni identyczne funkcje jak znany już dobrze Czytelnikom EP dekoder DTMF MT8870 firmy MtTEL. Różnią się one jedynie tym, że układ HT3170 może pracować w szerszym zakresie napięć zasilających, tj. już od 2,5V. W opisywanym timerze ma to szczególne znaczenie, gdyż przewidziano zasilanie bateryjne napięciem około 3V (dwie baterie 1,5V - "paluszki" AA). Mikiokontioler oraz odbiornik DTMF mogą być zasilane napięciem 3V, ale wyświetlacz LCD powinien być zasilany napięciem o wartości 5V. Aby uzyskać takie napięcie, a jednocześnie nie stosować większej liczby baterii należało zastosować przetwornicę napięcia. Zastosowanie przetwornicy podwyższającej napięcie zasilające całego urządzenia spowodowałoby znaczy wzrost poboru prądu z baterii. Zastosowanie przetwornicy tylko dla wyświetlacza zmniejszyłoby wprawdzie pobór prądu, ale mogłyby występować problemy związane z komunikacją procesora z wyświetlaczem (w przypadku niektórych typów), gdyż poziom napięcia logicznej jedynki wystawionej przez procesor wynosiłby 3V, a wyświetlacz "oczekiwałby" Elektronika Praktyczna 2/2002 31 Timer telefoniczny Rys. 1. Schemat elektryczny timera telefonicznego. na napięcie około 5V (napięcie progowe dla układów CMOS jest równe 0,5Vz - czyli 2,5V - a wic "zapas" nie byłby zbyt duży). Kompromisowym rozwiązaniem w dostosowaniu współpracy wyświetlacza z procesorem okazało się zastosowanie napięcia zasilającego wyświetlacz równego napięciu zasilania procesora oraz użycie przetwornicy odwracającej napięcie zasilania i zastosowanie go tylko do regulacji kontrastu wyświetlacza LCD (VREG). W takiej konfiguracji procesor i wyświetlacz mają jednakowe poziomy napięć logicznego zera i logicznej jedynki, a ujemne napięcie zasilania umożliwia dobre ustawienie kontrastu wyświetlacza. Jako przetwornicę napięcia zastosowano popularny układ ICL7660. Układ ten wytwarza ujemne napięcie przy zastosowaniu tylko dwóch kondensatorów zewnętrznych. Ponieważ timer przewidziano do pracy tylko w czasie połączenia, należy tylko wówczas włączać automatycznie zasilanie i wyłączać po jego zakończeniu, tak aby maksymalnie ograniczyć prąd pobierany z baterii. Do automatycznego włączania zasilania zastosowano transoptory TS1 i TS2, których diody LED są włączone szeregowo z aparatami telefonicznymi podają jego zasilanie w czasie, gdy jest podniesiona słuchawka. Zastosowano dwa transoptory chociaż podczas pracy używany jest tylko jeden (dla danej polaryzacji napięcia stałego w gniazdku telefonicznym). Diody LED transoptorów włączone są "przeciwsobnie", dlatego w zależności od polaryzacji napięcia linii telefonicznej przewodzi dioda transoptora TSl lub TS2. Emitery tranzystorów transoptorów są połączone z ujemnym napięciem zasilania. W momencie podniesienia słuchawki przez diodę w transoptorze płynie prąd powodując jej świecenie, w następstwie przewodzi tranzystor wyjściowy TSl (lub TS2), a tym samym podawane jest napięcie zasilające do wszystkich układów timera. Rezystor R8, włączony równolegle z diodami świecącymi powoduje, że prąd płynący przez diody ma wartość 5mA. Tak wykonany czujnik podniesienia słuchawki pozwala wykryć prąd płynący w obwodzie linii telefonicznej i aparatu przy spadku napięcia na diodach transoptorów równym około 1,2V. Spadek napięcie około 1,2V nie powoduje więc dużych zmian parametrów samej linii zarówno w czasie spoczynku jak i podczas rozmowy. Kondensator C7, o pojemności 100|iF, podtrzymuje napięcie zasilające timer w przypadku powstania krótkich przerw zasilania, któ- re mogą być spowodowane naciśnięciem przycisku "FLASH" w aparacie telefonicznym. W momencie naciśnięcia klawisza "FLASH" powstaje krótkotrwałe zwolnienie linii telefonicznej przez aparat, przez diody transoptorów nie płynie prąd, więc nie jest także podawane napięcie zasilające timer. W tym czasie cały układ zasilany jest z naładowanego kondensatora C7. Przy prądzie pobieranym przez timer, równym około l,8mA, taka pojemność kondensa- Rys. 2. Rozmieszczenie elementów na płytce drukowanej timera. 32 Elektronika Praktyczna 2/2002 Timer telefoniczny WYKAZ ELEMENTÓW Rezystory Rl, R2, R4, R5: lOOkO R3: 47kQ R6: 300kO R7: 10kO R8: 220O P: lOkO miniaturowy Kondensatory Cl, C2: 10nF/100V C3, C8: lOOnF C4, C9, CIO: 10uF/16V C5, Có, Cli, C12: 30pF C7: 100mF/16V Półprzewodniki Dl: 1N4007 US1: PIC16F84A - zaprogramowany US2: ICL 7660 US3: HT3170 TS1, TS2: PC 827 lub 2xPC817 Różne CON1...CON3: ARK2 (3,5mm) Xl: kwarc 32,768kHz (zegarkowy) X2: kwarc 3,579MHz Wyświetlacz LCD 16*1A Gniazdo goldpin 16*1 Podstawki DIL18 (2 szt.) Podstawki DIL 8(2 szt.) tora C7 jest wystarczająca do podtrzymania napięcia zasilania na wymaganym poziomie przez czas trwania przerwy w obwodzie. Kondensator C7 pełni jeszcze jedną ważna funkcje w czasie, gdy na linii telefonicznej występuje sygnał dzwonienia. Pojawienie się przebiegu przemiennego na linii telefonicznej powoduje naprzemienne świecenie diod transoptorów Tl i T2, a tym samym podawane jest napięcie zasilania do układów timera. Czasy podawania napięcia są na tyle krótkie, że nie powodują naładowanie kondensatora C7 do wartości napięcia umożliwiającej uruchomienie procesora. Gdyby pojemność C7 miała mniejszą wartość, to sygnał dzwonienia mógłby powodować krótkotrwałe uruchamianie procesora oraz pojawianie się niekontrolowanych komunikatów na wyświetlaczu. Wynika to z faktu, że procesor nie otrzymywałby sygnału zerującego o wymaganych parametrach, co prowadziłoby do jego niestabilnej pracy. Układ timera telefonicznego przewidziany jest do pomiaru czasu trwania połączenia, więc gdy słuchawka telefonu jest odłożona, to pozostaje on w spoczynku i nie pobiera prądu z baterii zasilają- cych. Po podniesieniu słuchawki zostaje włączone napięcie zasilające, a na wyświetlaczu pojawi się napis "Wybierz numer". Kolejno wybierane cyfry numeru zostają wyświetlane na wyświetlaczu (maksymalna liczba wyświetlanych cyfr jest równa 16). Po około 10 sekundach od wybrania ostatniej cyfry numeru na wyświetlaczu pojawia się czas połączenia. Zegar umożliwia odliczanie czasu połączenia do 24 godzin z rozdzielczością 1 sekundy. Format wyświetlanego czasu wygląda następująco: Rozmowa 0:26:37 W czasie wybierania numeru układ timera umożliwia dekodowa-nie wszystkich kodów systemu DTMF, także liter: A, B, C i D. Może więc być pomocny również przy uruchamianiu i testowaniu wszelkiego rodzaju nadajników DTMF. Montaż i uruchomienie Układ timera został zmontowany na płytce dwustronnej o wymiarach równych wymiarom wy- świetlacza LCD. Jej schemat montażowy pokazano na rys. 2. Montaż zaczynamy od rezystorów, następnie podstawki pod układy scalone, następnie kondensatory i złącza. Złącze wyświetlacza LCD oraz sam wyświetlacz montujemy na końcu od strony ścieżek. Uruchomienie timera sprowadza się do podłączenia linii telefonicznej do złącza CONl, aparatu telefonicznego do złącza CONl oraz napięcia zasilania 3V do złącza CON3. Dioda Dl zabezpiecza układ przed uszkodzonym podłączeniu zasilania. Po zmontowaniu układu należy tylko potencjometrem P ustawić optymalny kontrast wyświetlacza LCD i timer jest gotowy do pracy. Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdfZlutyO2.htm oraz na płycie CD-EP02/2002B w katalogu PCB. Elektronika Praktyczna 2/2002 33 PROJEKTY Zegar z kalendarzem zasilany bateryjnie AVT-5048 Pośród projektów publikowanych w EP, projekty zegarów cieszą się szczególnie dużym zainteresowaniem. Interesują się nimi elektronicy, zaró wn o amatorzy jak i profesjonaliści. Z naszych doświadczeń wynika, że każdy elektronik próbuje zbudować swój własny zegar mikroprocesorowy, tak jak niegdyś marzeniem elektronika było samodzielne zbudowanie odbiornika radiowego. Możliwości zegara / Odmierzanie czasu wraz z datą / Samoczynne uwzględnianie lat przestępnych / Obsługa za pomocą dwóch przycisków / Zasilanie bateryine (2x1,5V) / Niski pobór prądu (Typ 850|jJ\) / Dwa lormaty wyświetlania czasu (z widocznymi sekundami lub latami) Chociaż budowa i działanie układów zegarowych jest podobne, to w różnych czasopismach dla elektroników pojawiają się coraz to nowsze opracowania takich układów. Wśród nich można wyróżnić dwie grupy różniące się między sobą sposobem wyświetlania informacji. Zegary z 7-segmentowymi wyświetlaczami LED zapewniają dobrą widoczność zarówno w dzień jak i w nocy. Na wyświetlaczach takich można wyświetlać tylko cyfry, nie ma więc możliwości umieszczania dodatkowych informacji pomocnych podczas programowania, co przy wielu wbudowanych funkcjach wymaga od użytkownika znajomości "sposobu" programowania. Dodatkową wadą tych wyświetlaczy jest duży pobór prądu. Takie zegary są przystosowane do pracy wyłącznie przy zasilaniu sieciowym. Drugą grupę stanowią zegary z alfanumerycznymi wyświetlaczami LCD, które mają o wiele wiek- sze możliwości w porównaniu z wyświetlaczami LED. Przy zastosowaniu tych wyświetlaczy można budować zegary o wielu funkcjach, a przy tym łatwych w obsłudze. Dzięki możliwości stosowania tekstowego menu, ustawianie parametrów nie wymaga od użytkownika znajomości wszystkich funkcji urządzenia, programowanie odbywa się według opcji menu. Mając do dyspozycji szesnaście lub więcej znaków można budować układy, których obsługa jest "przyjazna" dla użytkownika. Wyświetlacze LCD pobierają znikomo mały prąd, więc nadają się również do stosowania w urządzeniach przenośnych. Pośród wielu zalet mają jedną wadę, a mianowicie słabą czytelność przy większych odleg- Elektronika Praktyczna 2/2002 35 Zegar z kalendarzem zasilany bateryjnie LCD 16x1 a O o U uj z u ir O > > VCC 12 3 4 5 6 R1 47k R2 47k US1 PIC16F84A Ó |0 SW1 d SW2 R3 10k 6 3 2 1 1B 17 C4 10|J 16 > RBO/INT >RA4/T0CKI RAS RA2 RA1 RAO MCLR >OSC1/CLKIN RB7< RB6 RB5 RB4 RB3 RB2 RB1 OSC2/CLKOUT X 32.768kHz 7 8 9 10 11 12 13 14 C5 C6 US2 ICL7660 D1 '1N4148 C2 ,= 10M _C1 100n NC CAP+ GND CAP- VCC OSC LV VOJT C3 10|J D2 1N414B Rys. 1. Schemat elektryczny zegara. łościach oraz są nieczytelne w ciemności. Można oczywiście zastosować wyświetlacze z podświetlaniem, ale zwiększy to pobór prądu. Tak więc decyzję o zastosowanym wyświetlaczu należy podjąć biorąc pod uwagę stopień złożoności urządzenia oraz warunki jego pracy. W zegarze przedstawionym w artykule, pomimo że nie ma on zbyt wielu funkcji, zastosowano alfanumeryczny wyświetlacz LCD, co umożliwiło wykonanie zegara zasilanego bateryjnie. Dzięki zastosowaniu procesora firmy Mic-rochip, który może pracować już przy napięciu zasilania 2V, możliwe było zastosowanie do zasilania dwóch baterii 1,5V. Całkowity pobór prądu wynosi ok. 850)iA. Opis układu Na rys. 1 przedstawiono schemat elektryczny zegara, który zbudowano z zaledwie dwóch ukła- dów scalonych, wyświetlacza i kilku elementów dyskretnych. Najważniejszym elementem urządzenia jest mikrokontroler firmy Microchip PIC16F84A. Zintegrowano w nim pamięci programu typu FLASH (lkB), pamięć RAM o pojemności 68 bajtów oraz 64 bajtów pamięci EEPROM. Budowę wewnętrzną mikrokontrolera przedstawiono na rys. 2. Na pierwszy rzut oka wydaje się, że lkB pamięci programu nie pozwala na napisanie zbyt rozbudowanego programu, ale porównując "zużycie" pamięci przez List. 1. Procedura nicjalizacji timera oraz preskalera. ŚInicjalizacja timer preskalera do pracy i odlic zania czasu dla zegara 32,768 ;przerwa iie nastepu; ls cykl zegarowy wynosi ol< . 12US ZEGAR INIT bsf STATUS.RPO ustaw banki bcf OPTIOW_REG, TOCS taktowany z wewnetrzr ego zegara fXtal/4 bcf OPTIOW_REG, PSA preskaler podłączony do timera TO bcf OPTIOW_REG, PSO preskaler 1/32 bcf OPTIOW_REG, PSI TIMERO liczy od 0 do 255 bsf OPTIOW_REG, PS 2 przy obsłudze przerw nie bcf STATUS.RPO nie trzeba ustawiać j oczątkowej wartości Timera należy tylko wyzerow ć wskaźnik przerwania od TO clrf SECOWDS początkowe wartości ekund =0 0 movlw d'01 ;minuty = 0 movwf MIMJTES movlw d'0' ;godziny = 0 movwf HOURS movlw d' 1' ;dni = 1 movwf DAYS movlw d' 1' ;miesiąc =1 movwf MOWTHS movlw D' 1' ;rok = 01 movwf YEARS clrf IWTCOW ; zablokuj wszystkie przerwania clrf TMRO ;zeruj timerO ESF IWTCOW.TOIE ; odblokuj przerwanie d TO ESF IWTCOW.GIE ;odblokuj przerwania bcf STATUS.RPO ;Ustaw bankO retum .... .......................... ............. 36 Elektronika Praktyczna 2/2002 Zegar z kalendarzem zasilany bateryjnie Pamięć programu 1024x14 Szyna danych a Pamięć EEPROM OSC2/CLKOJT MCLR VDD, VSS OSC1/CLKIN Rys. 2. Budowa wewnętrzna procesora PIC16F84A. programy pisane dla procesorów z rodziny 51, kod wynikowy dla procesorów PIC może być nawet 0 połowę krótszy. Dzięki bardzo niskiemu napięciu pracy mikrokontrolera oraz znikomo małemu prądowi zasilania (ok. 15)iA przy napięciu 2V 1 częstotliwości zegara 32kHz) można było zbudować zegar zasilany wyłącznie bateryjnie. Ponieważ oprócz napięcia zasilającego o wartości ok. 3V do zasilania wyświetlacza LCD wymagane jest jeszcze napięcie ujemne (regulacje kontrastu), zdecydowałem się zastosować przetwornicę DC/DC wytwarzającą ujemne napięcie zasilania LCD. Dzięki temu cały układ jest zasilany z dwóch baterii typu R6. Jako przetwornicę napięcia zastosowano popularny układ ICL7660. W przedstawionym układzie procesor oraz wyświetlacz LCD są zasilane napięciem 3V, a wyprowadzenie regulacji kontrastu napięciem -3V generowanym przez układ US2. W tej konfiguracji zegar może pracować już od napięcia zasilającego wynoszącego około 2V. Cały układ w czasie pracy pobiera prąd o natężeniu zaledwie 850)iA, co przy zastosowanych bateriach wystarczy na kilkumiesięczną pracę. Dzięki możliwościom jakie oferuje wewnętrzny oscylator procesora było możliwe zastosowanie rezonatora kwarcowego o częstotliwości 32,768kHz. Wewnętrzny oscylator dodatkowo może współpracować ze standardowym rezonatorem (typowo 4MHz) oraz z układem typu RC, stosowanym w sytuacji, gdy nie jest konieczna duża stabilność oraz dokładność częstotliwości. Zastosowanie częstotliwości rezonatora równej 3 2kHz znacznie uprościło procedurę odliczania czasu. Do odliczania czasu został wykorzystany wewnętrzny timer układu USl. Jego budowę przedstawia rys. 3. Jest to 8-bitowy licznik, który w połączeniu z wewnętrznym pre-skalerem może zliczać do wartości 65536, zarówno z wewnętrznego oscylatora jak i z zewnętrznego. Na list. 1 pokazano procedurę inicjalizacji timera oraz preskale- Fosc/4 TOSE TOCS Programowany preskaler List.2. Procedura obsługi przerwania od timera, ; Obsługa przerwa ia od Timera int_ mowf W_temp ; zapisz H do bufor a movf STATUS,W zapisz STATUS do bufora mowf st_temp bcf STATUS,RPO ustaw bankO bcf IWTCOW.TOIF zeruj flagę prze rwania od TO comf dwukropek zmień stan bajtu na przeciwny cali RTC skok do licznika czasu movf st_temp,w przepisz bufor o o rejestru H movwf STATUS ; orzepisz bufor do rej estru movf W_temp,w STATUS retfie ; oowrót z przerwań la ł7 PS2.PS1.PSO Rys. 3. Budowa wewnętrzna timera. ra. Przy częstotliwości kwarcu równej 32,768kHz do odliczenia 1 sekundy należy zliczyć 32768 impulsów. Przy odpowiednim skonfigurowaniu przerwanie od timera następuje dokładnie co 1 sekundę. Wartości początkowe timera i pre-skalera obliczamy następująco: ls = 32768 cykli, 256 cykli (Timer) x 32 cykle (preskaler) x 4 cykle (fosc/4) = 32768. Na list. 2 przedstawiono procedurę obsługi przerwania. W tym podprogramie następuje zerowanie flagi przerwania od timera. Wyzerowanie tej flagi informuje procesor, że przerwanie zostało obsłużone i pozwala na wykrycie kolejnego przerwania. Następnie następuje skok do podprogramu zwiększającego odliczany czas. Ponieważ timer pracuje przy swojej pełnej pojemności, nie ma potrzeby ustawiania wartości początkowej, gdyż powinna ona wynosić 0, a w czasie obsługi przerwania taka wartość już jest w rejestrze timera. Obsługa zegara Do obsługi zegara przewidziano tylko dwa przyciski. W celu ustawienia czasu należy nacisnąć i przytrzymać przycisk SW2 - po około 4 sekundach zegar przejdzie do trybu programowania. Na wyświetlaczu będzie widoczny napis: gg:mm DD-MM-01 Szyna danych -8 Synchr. z wewnętrznym zegarem Rejestr TMRO PSA Ustaw bltTOlF przy przepełnieniu Elektronika Praktyczna 2/2002 37 Zegar z kalendarzem zasilany bateryjnie Opis literowy wskazuje format wprowadzania danych. Przyciskiem SWl zwiększamy wskazywaną wartość, a przyciskiem SW2 przechodzimy do ustawiania kolejnego parametru. Parametr aktualnie ustawiany jest podkreślony. Wprowadzanie zaczynamy od roku, następnie miesiąc, dzień, godziny, minuty. Taka kolejność pozwoli prawidłowo ustawić dzień miesiąca, bez zastanawiania się ile ma dni. Program na podstawie roku i miesiąca przyjmie odpowiednią liczbę dni w danym miesiącu. Nie jest więc możliwe wprowadzenie np. daty 29 luty 2001, gdyż w tym roku miesiąc luty ma 28 dni, ale już w roku 2004 (rok przestępny) zegar umożliwi wprowadzenie liczby 29. Po wprowadzeniu daty i godziny naciskamy przycisk SW2 i wychodzimy z trybu programowania -zegar wskazuje aktualny czas. Przy pierwszym uruchomieniu zegara czas jest wyświetlany w następującym formacie: gg:mm:ss MM-DD przykładowo 12:47:30 12-10 Domyślnie na wyświetlaczu są wyświetlane sekundy. Jeżeli konieczne jest wyświetlenie roku, należy nacisnąć przycisk SWl na około 4sekundy. Teraz format wyświetlanych danych zmieni się na: gg:mm MM-DD-RR przykładowo 12:47 12-10-01 Zamiast sekund zostanie wyświetlony rok, a dwukropek pomiędzy godziną a minutami będzie pulsował w miarę upływu czasu. Montaż i uruchomienie Schemat montażowy płytki drukowanej pokazano na rys. 4. Montaż zaczynamy od rezystorów, następnie montujemy podstawki pod układy scalone, a na końcu kondensatory. Wymiary płytki zo- WYKAZ ELEMENTÓW Rezystory Rl, R2: 47kQ R3: 10kO P: lOkO - potencjometr miniaturowy Kondensatory Cl: lOOnF C2, C3, C4:10uF/16V C5, Có: 33pF Półprzewodniki Dl: 1N4004 D2: 1N4148 US1: PIC16F84A zaprogramowany US2: ICL7660 Różne LCD: wyświetlacz 16*la SWl, SW2: mikrowłączniki X: kwarc 32/768kHz (zegarkowy) CON: ARK2(3,5mm) GOLDPIN 1*16 stały dopasowane do wymiarów wyświetlacza, tak aby można było złącze wyświetlacza przylutować bezpośrednio do płytki. Wyświetlacz montujemy od strony ścieżek, dlatego wcześniej należy dokładnie sprawdzić poprawność montażu wszystkich elementów. Po zmontowaniu układu do złącza CON dołączamy zasilanie. Należy zwrócić uwagę na polaryzację, gdyż błędne podłączenie zasilania nie spowoduje wprawdzie uszkodzenia zegara, ale powstanie zwarcie. Prąd popłynie poprzez diodę zabezpieczającą Dl i nastąpi rozładowanie baterii. Jeżeli podłączymy zasilanie, to pozostaje nam jeszcze wyregulować kontrast wyświetlacza. Po tej czynności zegar jest gotowy do pracy. Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/lutyO2.htm oraz na płycie CD-EP02/2002B w katalogu PCB. Rys. 4. Rozmieszczenie elementów na płytce drukowanej. Elektronika Praktyczna 2/2002 PROJEKTY GALER - programator GAL-i do Amigi, część 2 AVT-5049 W drugiej część ańykuiu przedstawiamy język opisu układów implementowanych w strukturach PLD. Omawiamy również oprogramowanie sterujące pracą programatora oraz jego obsługę. Programy dla GALERa Zabierzmy się teraz do opisania układu, który chcemy zrealizować w GAL-u. Uruchamiamy edytor z menu {Tools/Call Editor) lub naciskając prawą Amigę+E. Następnie wpisujemy opis przykładowego układu (list. 1). Jak widać na listingu, w pierwszej linii określamy typ układu GAL, w drugiej sygnaturę (maks. 8 znaków), która zostanie wpisana do układu. Sygnaturę można odczytać wybierając z menu GAL-Disas-sembler/Read signature. W kolejnych liniach wpisujemy etykiety pinów (identyfikatory sygnałów wejściowych i wyjściowych) poczynając od 1. Niżej znajdują się równania opisujące działanie układu. Wszystko co znajdzie się za słowem kluczowym Description nie będzie interpretowane. W każdej linii można umieścić komentarz po znaku średnika. Zestaw dostępnych komend kompilatora jest dość skromny. Mamy do dyspozycji następujące operacje: - OR - w opisie źródłowym oznaczaną jako "#" lub "+", - AND - w opisie źródłowym oznaczaną jako "&" lub "*", - NOT - w opisie źródłowym oznaczaną jako "!" lub "/". Za pomocą powyższych operacji można zapisać dowolną funkcję przełączającą. Otrzymamy po skompilowaniu plik do programo- wania można po zapisaniu w GAL-u zabezpieczyć przed odczytem wybierając w menu GAL/set security bit. Wyjścia układu GAL mogą być trój stanowe. Wówczas nazwę wyjście deklarujemy z rozszerzeniem .7". Potrzebna jest też deklaracja wejścia sterującego wyjściem trój-stanowym. Przy nazwie sygnału wpisuje się wówczas rozszerzenie .E. Przykład takiego zapisu można zobaczyć na list. 1. Wyjście ANDT przyjmie stan trzeci, jeśli wejście En znajdzie się na poziomie L. Wyjścia GAL-a mogą być typu rejestrowego. Pozwala to tworzyć liczniki, zatrzaski, rejestry przesuwne itp. Przykład opisu licznika zamieszcono na list. 2. Synchronicznie z narastającym zboczem sygnału Clock zwiększa się zawartość licznika o 1. Przy poziomie Hna wejściu Clear i narastającym zboczu zegarowego sygnału zeruje się licznik, natomiast przy wysokim poziomie na wejściu Set i aktywnym zboczu Clock zostaną przepisane dane z wejść usta- Rys. 11. Okno z widokiem rozmieszczenia wyprowadzeń projektowanego układu. Elektronika Praktyczna 2/2002 41 GALER - programator GAL-i do Amigi List. 1. 3AL2 0VS rTyp Układu Bramki rSygnatura (max. S-char. ) PTC A B C D E F G H I J GND rDeklaracja plnów PTC EN ANDT NC EXNOR EXOR NOR OR NAND AND NC VCC AND = A*B rRóWnanle opl sUJa.ce bramkę AND /NAND = C* ; Równanie opl sUJa.ce bramkę NAND OR = E + F rRóWnanle opl sUJa.ce bramkę OR /NOR = G 4- H rRóWnanle opl sUJa.ce bramkę NOR EXOR = I*J + /I*/J rRóWnanle opl sUJa.ce bramkę EXOR /EXNOR = I J 4- /I*/J rRóWnanle opl sUJace bramkę EXNOR ANDT.T = A B rBramka and W wyjście trój ta nowym ANDT.E = EN rSteroWanle wyjściem trójstanowym ANDT DESCRIPTION: PTa podstaw e artykułu "Układy PLD' (EP 19/93 str.28) List 2a *: AND + : OR /: NEGACJA wiających na wyjścia. Wejście Glear ma wyższy priorytet niż wejście Set. Wyjścia rejestrowe mogą przyjąć stan trzeci (wysokiej impedancji) za sprawą sygnału IOE EN. Na list. 3 pokazano opis układu 74574. Zaletą GAL-a jest min. to, że można dość dowolnie rozmieszczać wyprowadzenia projektowanego układu, co uczyniono w tym przykładzie. Dzięki możliwości prawie dowolnego rozmieszczenia wyprowadzeń można znacznie uprościć układ ścieżek obwodu drukowanego. W pliku zawierającym archiwum (dostępny w Inteinecie na stronie www.ep.com.pl w dziale Download oraz na CD-EP1/2002B) w katalogu "Examples" znajdują się wszystkie przedstawione tu opisy i wiele innych. Znajdziecie tam m.in. opis transkodera z kodu BCD na kod wyświetlacza 7-segmentowego. Dzięki możliwości zmiany rozmieszczenia wyprowadzeń, zarówno wejściowych jak i wyjściowych, bez problemu można do transkodera podłączyć dowolny licznik i dowolny wyświetlacz, zachowując bezpośrednie połączenia na płytce. Ponadto można dowolnie zmieniać wygląd znaków. W trybie rejestrowym umiejscowienie wyprowadzeń dla sygnałów Clock i Enable jest ściśle określone. W tab. 1 zestawiono wszystkie możliwe funkcje pełnione przez poszczególne wyprowadzenia w różnych trybach. Standardowo (Modę 1) wyprowadzenia mogą też pełnić funkcję wejść, poza dwoma wyprowadzeniami, które mogą być tylko wyjściami. Jeśli wykorzystamy możliwość pracy tiójstanowej (Modę 2), wszystkie wyprowadzenia mogą być wejściami poza dwoma. W trybie rejestrowym (Modę 3) wejście sygnału zegarowego i sterowania wyjściem tiójstanowym jest przypisane na stałe do wyprowadzeń 1 i 13 dla GAL20V8 (11 dla GAL16V8). Przerzutniki są przełączone zboczem narastającym. Jeśli chcielibyśmy, aby były przełączane zboczem opadającym, należałoby wprowadzić w układzie negator i jego wyjście połączyć z wyprowadzeniem 1 układu. Każde wyjście może być wyjściem rejestrowym tiójstanowym, wyjściem kombinacyjnym tiójstano-wym lub wyjściem kombinacyjnym. Należy zaznaczyć, że dla wyjść rejestrowych stan trzeci jest wyłączany sygnałem z wyprowadzenia 13 dla GAL20V8 (11 dla GAL16Y8) - wyjścia w stanie trzecim przy poziomie H. Wyjścia, które nie są wyjściami rejestrowy- Rys. 13. Sposób umieszczenia układu w podstawce. mi mogą przechodzić w stan trzeci za sprawą sygnału z dowolnego wejścia i dowolnym poziomem (aktywny poziom niski lub wysoki). Zostało do opisania jeszcze kilka funkcji menu, o których nie wspomniałem. Menu "project/About" wyświetli okno z adresem kontaktowym do autora programu. W menu "Gal" można wybrać typ obsługiwanego układu. Menu "GAL/Copy" kopiuje układ. Najpierw jesteśmy proszeni o umieszczenie układu źródłowego, a po odczycie jego zawartości - docelowego. "GAL/Erase" kasuje zawartość pamięci układu, "GAL/Compare" umożliwia porównanie zawartości dwóch układów. "GAL/Blank test" sprawdza czy układ nie jest zapisany, "GAL/Test security bit" sprawdza stan bitów zabezpieczających. W "GAL/Write Access" możemy ustawić jakie operacje będą wykonywane: - przy programowaniu układu: - "with blank test" - sprawdzanie przed programowaniem czy czysty - polecam ustawić tę opcję, ponieważ przed zaprogramowaniem GAL-a musi być on kasowany; - "with verify"- weryfikacja poprawności zapisu; - podobnie przy kopiowaniu, - przed kasowaniem: "with blank test"- sprawdzenie, czy układ jest czysty. Rys, 12. Widok okna optymalizatora równań. List. 2. :AL2OV8 Collnter Clock DO /OE NC 20.R = 4-Blt-OUnter first llne: Used GAL second llne: any teXt (max. S char.) Set Q3 Clear NC 91 Ql NC 9.0 NC NC NC NC 21. R = /Clear /Clear * /Clear /Clear /Clear Set /Set * 22.R = /Clear + /Clear + /Clear + /Clear 23.R = /Clear /Clear /Clear /Clear /Clear * Set * Dl /Set /Set Qi * Set Ci /Set Śo /Set Śo /Set Śo * Set 1=1 /Set Śo /Set Śo /Set Śo /Set Śo 9 '90 91 Ql 90 DESCRIPTION thls ls a 4-Blt-CoUnter reglstered oUtpUts are slgned With the postflX.R Pln 'Set1 HIGH whlle clock slgnal (LOW-HIGH) at pln load QO-Q3 with state of D0-D3 Pln 'Clear1 HIGH whlle clock slgnal: QO-Q3 are cleared Śck slgnal whlle plns 'Set' and 'Clear' are LOW: lncrernent coUnter 42 Elektronika Praktyczna 2/2002 GALER - programator GAL-i do Amigi Tab. 1. GAL16V8 Modę 1 Modę 2 Modę 3 Modę 1 Modę 2 Modę 3 In In Clock 1 20 +5V +5V +5V In In In 2 19 In/C T* I n/T/R In In In 3 18 In/C In/T I n/T/R In In In 4 17 In/C In/T I n/T/R In In In 5 16 C In/T I n/T/R In In In 6 15 C In/T I n/T/R In In In 7 14 In/C In/T I n/T/R In In In 8 13 In/C In/T I n/T/R In In In 9 12 In/C T* I n/T/R GND GND GND 10 11 In In /OE GAL20V8 Modę 1 Modę 2 Modę 3 Modę 1 Modę 2 Modę 3 In In Clock 1 24 +5V +5V +5V In In In 2 23 In In In In In In 3 22 In/C T* I n/T/R In In In 4 21 In/C In/T I n/T/R In In In 5 20 In/C In/T I n/T/R !n In In 6 19 C In/T I n/T/R In In In 7 18 C In/T I n/T/R In In In 8 17 In/C In/T I n/T/R In In In 9 16 In/C In/T I n/T/R In In In 10 15 In/C T* I n/T/R In In In 11 14 In In In GND GND GND 12 13 In In /OE Legenda: In: wejście C: wyjście T: wyjście trojstanowe T*: wyjście trojstanowe (wyprowadzenie to nie może być wejściem) R: wyjście rejestrowe Clock: wejście zegarowe dla komórek rejestrowych /OE: wejście sterujące pracą buforów trójstanowych dla wyjść rejestrowych Menu "GAL-Disassembler/Gal-In-fo" wyświetla informację o producencie układu i zastosowanym algorytmie programowania. "GAL-Di-sassembler/Generate JEDEC file" odczytuje zawartość GAL-a i zapisuje do pliku z rozszerzeniem ,,.jed". Plik ten może posłużyć do zaprogramowania innego układu lub do desasemblacji. "GAL-Disassem-bler/JEDEC file parametr" pozwala ustawić opcje zapisu pliku (czy ma dodać sumy kontrolne, itp). Program jest wyposażony w deasemb-ler. Z plików z rozszerzeniem ,,.jed" (plik wynikowy do programowania GAL-a) generuje pliki źródłowe z rozszerzeniem ,,.pld". Po wybraniu tej pozycji menu, pojawi się okno z możliwością przypisania etykiet (identyfikatorów sygnałów) do fizycznych wyprowadzeń układu (patrz rys. 11). W menu "Tools" dostępne jest polecenie "Clear pi-nenames", które kasuje etykiety z okna programu. Natomiast polecenie "Show pinenames" wyświetla etykiety. Interesującą opcją jest op-timizer wybierany z menu "Tools/ Optimizer". Jeśli projektowany układ nie mieści się w GAL-u, ten program może nas uratować. Po wskazaniu pliku do optymalizacji wyświetli się okno (rys. 12), w którym jest wyświetlone równanie w postaci w jakiej znajduje się w pliku źródłowym [old eąuation) oraz w postaci zoptymalizowanej (optimized eąuation), poniżej zostanie wyświetlona zużyta na ten cel liczba bramek matrycy AND i OR. Jeśli po optymalizacji liczba bramek jest mniejsza, zmianę warto zaakceptować naciskając "use it". Po optymalizacji wybieramy plik do zapisu. Uwagi końcowe Program posiada wbudowaną pomoc. Jeśli nie wiemy co dany reąuester, gadżet, czy opcja menu robi, wystarczy wskazać opcję w menu (czy też okno/gadżet) myszką i nacisnąć klawisz "Help" (standardowe wywołanie pomocy w Amiga OS). Wtedy uruchomi się program AmigaGuide z wybranym rozdziałem, w którym opisano interesujące nas zagadnienie. Ponieważ podstawka programująca posiada 24 styki, a układy GAL16V8 zaledwie 20 wyprowadzeń, należy zwrócić uwagę na montaż tych układów w podstawce. Sposób umieszczenia takiego układu w podstawce przedstawiono na rys. 13. Do programu sterującego pracą programatora dołączono pliki z kodami źródłowymi. Program można "ściągnąć" z Aminetu. Jest on sha-reware'owy. Rejestrację należy przeprowadzić u autora: Christian Habermann Asamstr. 17 8535 6 Freising, Germany Christian.Habermann@t-online.de Za pomocą programatora prezentowanego w artykule zaprogramowałem już wiele GAL-i. Przy jakichkolwiek problemach proszę o kontakt. Sławomir Skrzyński, AVT slawomir.skrzynski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdfZlutyO2.htm oraz na płycie CD-EP02/2002B w katalogu PCB. List. 3 GAL2 0V8 ; 8- E it-Lat ch 74574 Clock Re set DO Dl D2 D3 D4 D5 D6 D7 WC GND /OE WC 20 21 Q2 Q3 Q4 Q5 26 2^ WC VCC /Q0.R _ /DO + /Rese t /Q1.R = /Dl + /Rese t /Q2.R = /D2 + /Rese t /Q3.R = /D3 + /Rese t /Q4.R = /D4 + /Rese t /Q5.R = /D5 + /Rese t /Q6.R = /D6 + /Rese t /Q7.R = /D7 + /Rese t DESCRIPTIOW - -------\ /--- ----- Clock 1 24 1 VCC Reset 1 2 23 1 WC DO 1 3 22 1 9J Dl 1 4 21 1 Q6 D2 1 5 20 1 Q5 D3 1 6 19 1 Q4 D4 1 7 18 1 Q3 D5 1 8 17 1 Q2 D6 1 9 16 1 21 D7 1 10 15 1 Q0 WC 1 11 14 1 WC GND 12 13 1 /OE
Elektronika Praktyczna 2/2002 43 Rozładowarka i miernik pojemności aku mu lat orko w Część 2 Ś klawiatura, moduł rozladowarid Opisany w pierwszej części ańykułu moduł sterujący wraz z innymi m od ułami sprzętowymi umożliwi zbudowanie w pełni funkcjonalnej roziadowarki. Są to moduły: klawiatura do wprowadzania danych oraz płytka drukowana z obwodami właściwej rozładowarki. Mogą one być sprawdzone za pomocą odpowiednich programów diagnostycznych. Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 45...49 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Klawiatura Do wprowadzania niezbędnych danych przez użytkownika jest potrzebna niewielka klawiatura. Użyto w tym celu gotowej klawiatury o 12 przyciskach, z których każdy ma po jednym indywidualnym i jednym wspólnym styku. Jej schemat jest pokazany na rys. 4. Ponad klawiszami umieszczono ich symbole, a poniżej liczby szesnas-tkowe, otrzymywane po ich naciśnięciu. Rezystory przypisane do przycisków należy przylutować bezpośrednio do styków od tyłu klawiatury. Klawiaturę dołącza się do pierwszego ze złącza K4 modułu sterującego za pośrednictwem tiójprzewodowego kabelka o długości ok. 20cm. Wspólny rezystor dzielnika o rezystancji 24,9kLi łączy się z zasilaniem +5V, wspólne wyprowadzenie styków dołącza do masy, a wyprowadzenie dzielnika z wejściem PAO mikro sterownika. Poprawne działanie klawiatury można sprawdzić za pomocą programu KEYTEST.HEX, znajdującego się na jednej z dyskietek, wchodzących w skład kitu (do- stępny tylko bezpośrednio w redakcji Elektora Elektronika). Po załadowaniu programu uruchamia się go komendą "chip". Jeśli nie jest naciśnięty żaden klawisz, zostaje wyświetlona liczba FFh lub FEh. Przy naciśniętym klawiszu jest wyświetlana liczba, umieszczona pod nim (rys. 4). Wyświetlane liczby mogą różnić się nieco od podanych, ponieważ przez program wykorzystywany jest tylko górny półbajt (bardziej znaczący), a dolny powinien mieścić się między 5 i Ah. Rozładowarka Rozładowarka, której schemat jest zamieszczony na rys. 5, składa się z trzech części. Część górną stanowi zasilacz z układem sterowania wentylatorem chłodzącym. Jako zasilacz sieciowy może posłużyć prosty niestabilizowany zasilacz wtyczkowy 6...12V/300mA. Użyto stabilizatora (ICl) o niskim spadku napięcia, który dostarcza +5V, nawet gdy na jego wejście podano napięcie zmienne o wartości 6V. Napięcie zmienne należy doprowadzić do K3, wentylator przyłączyć do K2, a przez Kl jest dostarczane napięcie zasilające moduł sterujący. Elektronika Praktyczna 2/2002 45 Rys. 4. Klawiatura z dzielnikami napięcia. Drugą częścią rozładowarki jest wzmacniacz pomiarowy. Do złącza K6 przyłącza się krótkimi przewodami napięcie pomiarowe (+aV i -aV) bezpośrednio z końcówek baterii. Dzięki temu spadek napięcia na bezpieczniku i przewodach prądowych nie wpływają na dokładność pomiaru napięcia. Sygnał ze złącza K6 jest filtrowany przez R4, C3 i obniżany następnie przez regulowany wzmacniacz o trzech zakresach, 10V (2x), 20V (4x) i 40V (8x). Najwyższa wartość każdego z nich odpowiada liczbie FFh (255d). Wzmacniacz jest sterowany sygnałami OutO i Outl, za pomocą których jest wybierany odpowiedni rezystor dzielnika. Do sprawdzania wzmacniacza służy program DIVI-TEST.HEX. Trzecia część rozładowarki służy do sterowania prądem rozładowania. Przez wejście Servol (K4) podawane są z mikrosterow-nika impulsy PWM (o modulowanej szerokości), które po filtracji przez filtr R9, C4 są doprowadzane do bramki MOSFET-a mocy (T4). W obwodzie jego źródła znajdują się prądowe rezystory pomiarowe R13...R16. Spadek napięcia na tych rezystorach jest wzmacniany przez wzmacniacz operacyjny IC2 i przez styk Input 1 (K5) jest podawany do modułu sterującego. Potencjometr Pl służy do regulacji wzmocnienia wzmacniacza (kalibracja), a P2 do kompensacji jego napięcia niezrównowa-żenia. Zmienny sygnał prądowy wpływa na współczynnik wypełnienia PWM. W MOSFET-cie mocy, pomiędzy drenem a źródłem, jest włączona polaryzowana wstecznie dioda. Jeżeli przypadkowo bateria zostałaby przyłączona odwrotnie, popłynie przez nią prąd zwarciowy i zostanie stopiony bezpiecznik Fl. W tym miejscu jest niezbędny bezpiecznik natychmiastowy. Widok płytki drukowanej rozładowarki i rozmieszczenia na niej elementów są pokazane na rys. 6. Montaż płytki jest intuicyjny. Wszystkie złącza są szpilkowe, za wyjątkiem K3, które ma zaciski śrubowe. Rezystory R13...R16 należy przylutować 4mm ponad płytką, aby ułatwić im rozpraszanie ciepła. W prototypie ścieżki prądowe, prowadzące do zacisków baterii, pokryto cyną w celu zmniejszenia ich rezystancji. Na rys. 7 przedstawiono fotografię zmontowanej płytki rozładowarki. Montaż Prototyp umieszczono w skośnej obudowie Teko typu 362. Można jednak znaleźć wiele innych nadających się dla rozładowarki obudów. Na tytułowej fotografii widać jak można rozmieścić poszczególne podzespoły. W tylnej ściance wykonano duży otwór na wentylator chłodzący radiator, a w przedniej 8 otworów Rys. 5. Schemat elektryczny rozładowarki. 46 Elektronika Praktyczna 2/2002 Rys, ó, Płytka drukowana rozładowarki rozmieszczenie elementów. średnicy 14mm dla wlotu powietrza chłodzącego. Obie płytki drukowane przytwierdzono do dna obudowy za pośrednictwem tulejek dystansowych. W płycie czołowej trzeba wyciąć odpowiednie otwory na klawiaturę i wyświetlacz. Dodatkowe otwory są potrzebne dla przełączników suwakowych i zacisków prądowych baterii. Złącze RS232 wmontowano w lewą boczną ściankę obudowy. Ro zł a do w arka jest juź niemal gotowa. Potrzebuje jednak jeszcze Jdlku wewnętrznych połączeń. Połączenia te pokazano na rys. 8. Przewody z zasilacza sieciowego należy przyłączyć do bloku zaciskowego K3 (uwaga na polaryzację!). Do MOSFET-a mocy trzeba teraz przylutować trzy przewody (grube do drenu i źródła), zakończone wsuwkami na szpilki przy T4 na płytce drukowanej. Tym samym grubym przewodem należy połączyć zaciski w płycie czołowej ze szpilkowymi końcówkami baterii na płytce. Wszystkie pozostałe złącza wykonuje się z pociętych listewek kontaktowych. Przewody do K6 muszą być przy-lutowane do podkładek lutowniczych, przykręconych pod zaciskami baterii w płycie czołowej. Do K2 przyłącza się przewody od wentylatora, a do Kl (poprzez wyłącznik) przyłącza się przewo- dy zasilające moduł sterujący. Trójżyłowym kabelkiem łączy się K5 z wejściem PAl modułu. Kablem tym doprowadza się także +5V i masę. Złącze K4 łączy się pięcioma przewodami ze złączami Kl, K2 i K4 modułu. Ostatni przewód łączy złącze K5 modułu sterującego z przełącznikiem "Chip-Auto" na płycie czołowej. Z modułem łączy się oczywiście klawiaturę i taśmowym kablem wyświetlacz. Oprogramowanie Rozładowarka może pracować w dwóch trybach: z aktywnym oraz procesorem poleceń i z działającym programem. Do komunikowania się z przyrządem lub do ładowania programów z komputera, jest potrzebny program "CHIP-TERJVT albo "VBTERM" (wersja dla Windows), a rozładowarka musi być przyłączona do portu szeregowego PC. Przed włączeniem rozładowarki przełącznik "Chip-Auto" musi zostać ustawiony w położeniu "Chip". Naciśnięciem klawiszy Alt+1 można teraz załadować program. U dołu ekranu pojawi się zachęta do podania nazwy programu. Rozszerzeniem zawsze jest "HEX". Program zostaje załadowany po potwierdzeniu klawiszem Enter. Po załadowaniu programu "KEY-TEST" można sprawdzić klawiaturę. Program zostaje wykonany rozkazem "chip", albo przez usta- wi eni e pr z ełą c znika ,, Chip -Auto'' w położenie "Auto" i włączenie rozładowarki. Także dzielnik napięcia może zostać sprawdzony. W tym celu trzeba załadować i uruchomić program "DIYITEST". Do zacisków baterii przyłącza się napięcie 5V. Powinien wtedy zostać wyświetlony napis 125 (5/10.2 ? 255) przy wzmocnieniu 2. Przy napięciu 15V powinno być 188 przy wzmocnieniu 4, a przy 25V 156 przy wzmocnieniu 8. Mierzone wartości mogą odchylać się o 2 lub 3 jednostki, jeśli jednak różnią się więcej, może to oznaczać dużą upływność tranzystorów T2 lub T3. Gdy wszystkie testy zakończą się pomyślne, można załadować program "N1CADIS". Jeśli nie liczyć kalibracji, rozładowarka jest teraz gotowa do użytku. Należy więc do niej przyłączyć baterię ogniw akumulatorowych połączoną szeregowo z amperomierzem, podać liczbę jej ogniw i ustalić natężenie prądu na 2500mA. Za pomocą potencjometru Pl wyka-librować przyrząd na 2500mA. Następnie należy ustalić natężenie na lOOmA i ponownie wykalibro-wać przyrząd na lOOmA. Prąd może nieco fluktuować wskutek działania pętli sprzężenia zwrotnego, a więc kalibrację trzeba przeprowadzić starając się możliwie najdokładniej ustalić wartość średnią prądu. Otrzymywanie krzywej napięcia rozładowania W czasie rozładowywania napięcie jest co minutę zapisywane do pamięci. Do tego celu jest używana pamięć EEPROM o adresach 600h.. .7FFh. Pod adresem Rys. 7. Widok zmontowanej płytki rozładowarki. Elektronika Praktyczna 2/2002 47 off K3 0(2) -ł12V +12V 6...12Vdc Zaslacz 1 2 3
4 5 6
7 8 9
0 # Klawiatura z zamontowanymi rezystorami BUZ100 Wentylator Rys. 8. Połączenia wewnętrzne rozładowarki. 60 0h jest zapisywana wartość wzmocnienia, a pod 601h natężenie prądu. Po skończeniu rozładowania liczby te mogą być odczytane i zapisane w pliku. W tym celu trzeba przejść do procesora poleceń i za pomocą Alt+O otworzyć plik *.LOG. Na polecenie "próg 600" zostaje wyświetlony adres 600, z dwoma bajtami da- nych. Przez naciskanie "+" będą wyświetlane kolejne dane, aż bajt danych wyniesie 00h. Oznacza to osiągnięcie końca zapisu i plik *.LOG może zostać zamknięty poleceniem ALT+C. Za pomocą programu LOGDAT.exe wartości próbek są zamieniane w wartości napięcia i numerowane. Ponadto jest przeprowadzana ich interpolacja WYKAZ ELEMENTÓW Płytka rozładowarki Rezystory Rl: R2, RIO, R12: 10kO R3: lOOkO R4: 220O R5: 16,2kQ R6: 48,7kQ R7: 97,ókQ R8: 18kQ R9: 22kQ Rl 1: 5ókQ R13...R16: 1O, 05W Pl: 25kQ, nastawczy P2: 100kQ, nastawczy Kondensatory CL C4, C5: lOOnF, ceramiczny C2: 220^F/25V, stojący C3: 100jiF/50V, stojący Có: 470pF Półprzewodniki Dl: 1N4148 D2: czerwona LED, wysokowydaj- na Tl: BC517 T2, T3: BS170 (albo BSN10A) T4: BUZI00 IC1: LP2950CZ5.0 IC2: CA3130 Różne Kl, K5: 3-stykowy pinheader SIL K2, K6: 2-stykowy pinheader K3: blok 2-śrubowy, odstęp 5mm K4: 9-stykowy pinheader Fl: bezpiecznik 3,15A, natychmiastowy, w uchwycie do druku Płytka drukowana, kod 010201-2 (wraz płytką 010201-1) Dyskietki z oprogramowaniem, kod 010201-11 Obudowa np. Teko typ 362 Radiator dla T4, Fischer SKI 32/ 37.5/SA Wentylator, 40 x 40mm, 12V= Zacisk czerwony Zacisk czarny Klawiatura, 12 klawiszy, 1 styk wspólny, 12 styków indywidualnych, np. Electronics # 03.52.1252, albo Conrad Electronics # 19-55-61 2 miniaturowe przełączniki suwakowe Listwa złączy szpilkowych żeńskich, rozstęp 2,54mm 48 Elektronika Praktyczna 2/2002 300 350 400 4fiO t[n*U Rys. 9. Krzywa rozładowywania 7-ogniwowej baterii NiCd. w celu wygładzenia krzywej rozładowania. Równocześnie obliczane są średnie napięcie i wyładowana energia. Utworzony plik *.DAT może być odczytywany przez program plotujący, a dane wykreślone w postaci krzywej. Wszystkie potrzebne informacje zawiera plik PLOTR.ZIP Analiza napięciowej krzywej rozładowywania baterii Pokazana na rys. 9 krzywa przedstawia napięcie rozładowywania 7-ogniwowej baterii NiCd o nominalnej pojemności 1900mAh. Prąd rozładowywania wynosił 190mA (0,lC), a docelo- we napięcie rozładowania 1V/ ogniwo. Bateria została całkowicie rozładowana w czasie 8 godzin i 4 minut. Jej zmierzona pojemność wyniosła 1532mAh. Jest to trochę mało, ale bateria nie była całkiem nowa. Krzywa rozładowania ma oczekiwany kształt, jednak jest w niej coś szczególnego. Przy napięciu 8,4V bateria jest juź rozładowana, a napięcie gwałtownie spada - to normalne. Jednakże przy napięciu 7,lV krzywa znowu się spłaszcza. Ponieważ różnica napięć wynosi 1,3V, okazuje się, że odwróciła się polaryzacja jednego z ogniw, które zaczyna się ładować w odwrotnym kierunku. Wkrótce potem zostaje osiągnięte napięcie końcowe. Ponieważ prąd rozładowania wynosił 0,lC, za napięcie rozładowania lepiej było przyjąć l,lV na ogniwo, i wtedy nie nastąpiłoby odwrócenie polaryzacji. Kwasowe ogniwa ołowiowe są bardziej podatne na odwracanie polaryzacji niż ogniwa NiCd lub NiMH. Zwykle za napięcie wyłączenia rozładowania przyjmuje się 70% do 80% napięcia nominalnego, zależy ono jednak także od prądu rozładowywania. B. Stuurman, EE Elektronika Praktyczna 2/2002 Gdy przeciętny człowiek wkłada wtyczkę do gniazdka sieci ełektrycznej, na ogół nie zastanawia się nad tym jaką energię dostarcza mu eiektrownia. Wystarcza mu, wiedza wyniesiona ze /.-ŚŚ szkoły, źe w gniazdku jest "prąd zmienny j__^ o napięciu 22ÓV". Mimo co najmniej średniego I wyks zta łceni a p o twierdzon ego świadectwem maturałnym, po łatach mało kto rozróżnia prąd od napięcia, prąd zmienny od prądu przemiennego. Chyba tyłko z przyzwyczajenia mówimy, źe "w gniazdku jest 220V". Mamy nadzieję, źe Czytełnicy "Ełektroniki Praktycznej" juź wiedzą o czym będzie ten artykuł. Analizator energii elektrycznej Otrzymaliśmy do przetestowania analizator energii elek-. trycznej firmy Motech ozna-fczonj symbolem MT1010. Za jego pomocą można określać parametry jedno- lub trójfazo-I "wej sieci energetycznej, a także dołączanych do niej odbiorników. Zakładając, śe przyrząd będzie często wykorzystywany w warunkach polowych, producent cały ekwipunek umieścił w poręcznym neseserku. Po jego otwarciu znajdujemy: miernik MT1010, specjalny adapter ułatwiający dołączanie badanych odbiorników do gniazda sieciowego, 3 komplety przewodów pomiarowych o różnych gruboś-Iciach i końcówkach, cęgi do ['bez stykowe go pomiaru prądu, parę bardzo solidnych chwy- taków teletechnicznych, zasilacz wtyczkowy do zasilania miernika i doładowywania akumulatorów NiMH oraz instrukcję obsługi. Opcjonalnie można zamówić specjalny adapter do dołączania odbiorników o małym poborze prądu - do 1,6A fw standardowym wykonaniu wartość ta wynosi 16A) oraz dodatkową parę przewodów połączeniowych. Niewątpliwie "najsłabszym" elementem zestawu jest instrukcja obsługi. Przygotowano ją w postaci zbindowanej broszurki w języku angielskim. Brak polskiej wersji nie jest dużą wadą, gdyż i tak znaczną część zawartości stanowią rysunki ilustrujące czynności, jakie należy wykonać, aby dokonać pomiaru 51 SPRZĘT n n n n n n n n Rys. 2. poszczególnych parametrów. Przejrzystość tych rysunków jest jednak - według mojej oceny - dość mierna. Na szczęście pomiary nie są bardzo skomplikowane i wiele można się po prostu domyślić. Należy jednak pochwalić autorów za to, że zawarli w instrukcji definicje mierzonych parametrów. Bardzo użytecznym elementem zestawu jest adapter służący do przyłączania badanego urządzenia do sieci energetycznej. Jak wiadomo, do określenia pobranej mocy, potrzebna jest znajomość wartości prądu obciążenia. Do jego pomiaru trzeba jednak włączyć szeregowo z obciążeniem amperomierz. Dzięki adapterowi nie musimy wykonywać żadnych skomplikowanych połączeń. Wystarczy, że wtyczkę sieciową badanego odbiornika włożymy do gniazda umieszczonego w górnej części adaptera i dodatkowym kablem dołączymy go do gniazdka sieciowego. Rozdzielenie obwodu prądowego i napięciowego jest zrealizowane przez wewnętrzne połączenia adaptera. Zaletą jest wyposażenie go w wyłącznik zasilania podnoszący komfort i bezpieczeństwo pracy. Pomiary z wykorzystaniem adaptera są możliwe oczywiście w przypadku sieci 1-fazowej. W sieciach 3-fazowych - choć nie tylko - na pewno przydatne będą cęgi pomiarowe, za pomocą których można mierzyć prądy do 1400ARMS. W tym przypadku, również nie ma potrzeby przerywania obwodu. Cęgami tymi obejmuje się wybrany przewód prądowy. Czułość sondy wynosi lmVRMS/lARMS. Design miernika jest typowy dla wyrobów Motecha: szara obudowa, bez zbędnych upiększeń, z wyświetlaczem o wymiarach 65x32mm, na którym w dwóch wierszach prezentowane są wyniki pomiarów (fot. 1). W ciężkich warunkach polowych z pewnością przyda się możliwość włączenia seledynowego podświetlenia wskazań, lecz może zabraknąć prawdziwego holstera. Przyrząd wyposażono jedynie w dwa plastikowe ochraniacze nasadzane na obudowę od góry i od dołu. Funkcje analizatora wybiera się za pomocą pewnie działającej klawiatury 10-przyciskowej. Każdemu przyciśnięciu towarzyszy krótki dźwięk. Jeśli jednak operator lubi pracę w ciszy, może go wyłączyć. W dolnej części miernika Tab. 1. Zakresy pomiarowe przyrządu MT1010. Częstotliwość mierzonych sygnałów 10 do 100Hz Napięcie (TrueRMS) 2,5Vdo900V(AC+DC) ą5,0doą1400V(peak) I mpedancja wejściowa 1MH Współczynnik amplitudy 1 do-5 >3,0 poniżej 460VRMS Prąd (True RMS) 250mAdo30A(AC+DC) ą500mAdoą50A(peak) I mpedancja wejściowa 10mn Współczynnik amplitudy 1 do-5 >3,0 poniżej 16ARMS Dopuszczalny czas pomiaru <30 min (10ARMSPrąd (pomiar cęgami) 10Ado1400A(AC+DC) ą20A do ą2200A (peak) Napięcie rozruchowe 1400V; 640,0V; 160,0V; 40,00V; 10,00V; 2,500V Interwał próbkowania 12,5ms Liczba próbek 16000 Prąd rozruchowy 90,00A; 76,80A; 19,20A; 4,800A; 1200A; 0,300A Interwał próbkowania 12,5ms Liczba próbek 16000 Pomiar mocy 0,001 kVA do 27,00kVA (prąd mierzony bezpośrednio) 0,025kVA do 1260kVA (prąd mierzony cęgami) Współczynnik mocy -1 do +1 Przesunięcie fazowe -180 do+180 Harmoniczne DC i podstawowa do 40-tej Maks. częstotliwość harmonicznej 4kHz znajdują się dwie pary gniazd, służących do podłączenia obwodu napięciowego i prądowego. Rozstawem pasują do wyprowadzeń adaptera pomiarowego. Jeśli się z niego nie korzysta, można odpowiednie połączenia wykonać kabelkami. Należy to robić rozważnie, gdyż pomylenie przewodów napięciowych z prądowymi może się okazać dość nieprzyjemne w skutkach. Parametry i możliwości Najwyższy już czas aby podać parametry techniczne przyrządu i omówić jego możliwości. Pomiary realizowane przez analizator MT1010 nie są trywialne. Chodzi m.in. o analizę widmową badanych przebiegów, wyliczanie prawdziwej wartości skutecznej, wartości szczytowych, obliczanie energii pobieranej przez badane odbiorniki. Aby maksymalnie uprościć budowę urządzenia, do wszystkich tych zadań zastosowano procesor DSP. Analizatorem MT1010 można mierzyć: / Częstotliwość składowej podstawowej napięć i prądów. / Wartości: true RMS, peak-to-peak, +peak, -peak, współczynnik amplitudy napięć i prądów. < Moc czynną, bierną i pozorną, zużycie energii elektrycznej, współczynnik mocy (cos ), przesunięcie kątowe, zdefiniowane jako różnica faz między podstawowymi składowymi częstotliwościowymi napięcia i prądu. x Zawartość harmonicznych napięcia lub prądu; rozkład poszczególnych harmonicznych (stosunek wartości RMS danej harmonicznej do składowej o częstotliwości pomiarowej), przesunięcie kątowe między poszczególnymi harmonicznymi a składową podstawową. x Prąd i napięcie rozruchowe. Dla wszystkich mierzonych parametrów za wyjątkiem prądu i napięcia rozruchu, miernik automatycznie dobiera zakres pomiarowy. Można mierzyć wartości AC, DC, a także AC+DC. Istnieje możliwość zatrzaskiwania wartości maksymalnej i minimalnej. Na wyświetlaczu sygnalizowany jest niski poziom napięcia akumulatorów zasilających. Miernik MT1010 wyposażono w interfejs IrDA. Aby jednak można było z niego skorzystać, trzeba dołączyć tzw. IR Module, którego nie ma w wyposażeniu standardowym. Dzięki niemu możliwa jest praca w trybie Re-mote, w którym wszystkie przełączenia przyrządu można przeprowadzać zdalnie z komputera PC. Do niego też są przekazywane wszystkie wyniki pomiarów. Obsługa analizatora jest możliwa przez dowolny program terminalowy (transmisja 9600, 8nl). Polecenia dla MT1010 wystukuje się na klawiaturze komputera. li 52 Elektronika Praktyczna 2/2002 SPRZĘT Ich składnia jest dość obszernie i na szczęście dość zrozumiale opisana w instrukcji. Przykładowa postać polecenia, mającego uruchomić procedurę pomiaru np. 7. harmonicznej przebiegu napięcia (pomiar bez składowej stałej, jako częstotliwość odniesienia będzie brana częstotliwość napięcia), jest następująca: HARMVACVR%FUWD 7. Przykładowe zaś wyniki zwracane do komputera, mogą być następujące: 0.030,7,0.01. Liczby te oznaczają, że wartość skuteczna napięcia 7. harmonicznej wynosi 0,030V, co stanowi 0,01% składowej podstawowej. Wrażenia użytkownika W czasie testów badano kilka urządzeń gospodarstwa domowego, a także trójfazowy silnik o mocy 120W. Już na początku okazało się, że bardzo brakuje funkcji pomiaru rezystancji lub przynajmniej testera przejść elektrycznych. Ujawnił się też pewien mankament. Okazało się, że jedno z dwóch gniazdek przeznaczonych do podłączenia sondy miało niecentrycznie umieszczony wewnątrz bolec. Wskutek tego, wtyku sondy nie można było umieścić we właściwym miejscu. Udało się tego dokonać dopiero po kilku próbach. Mam nadzie- ję, że była to wada jedynie testowanego egzemplarza. Wszyscy ci, którzy planują wykonywanie dokumentacji z prowadzonych pomiarów, zdecydowanie powinni zaopatrzyć się w moduł transmisji [IR Module). Szczególnie wtedy, gdy chcą przedstawiać rozkład harmonicznych. Liczba danych jest wtedy dość duża i ich ręczne spisywanie, a później opracowanie może być dość kłopotliwe. Przykładowe wyniki analizy harmonicznych przebiegu prądu, wnoszonych przez energooszczędną żarówkę 2 0W, przedstawiono na rys. 2. Na marginesie warto zwrócić uwagę na moce pobierane przez taką żarówkę. Z pomiarów analizatorem MT1010 wynika, że moc czynna wyniosła 19W, ale moc bierna była równa 28VAR, a pozorna 33VA. Zmierzona wartość współczynnika mocy wyniosła 0,5 7. Należy tu przypomnieć, że z punktu widzenia wykorzystania sieci energetycznej, współczynnik mocy odbiorników energii powinien być jak najbliższy jedności. Pod tym względem znacznie lepiej prezentuje się zwykła żarówka. Moce wymienione wyżej są charakteryzowane przez wielkości wektorowe. To co jest wyświetlane przez miernik, powinno być ich modułami, czyli długościami wektorów. Tym- czasem przy odwrotnie połączonych kablach napięciowych, co zdarzyć się nie powinno, ale może, wyświetlane wartości mają znak ujemny. Ujemna jest także wtedy - o dziwo - mierzona energia pobierana z sieci. Jest to niewątpliwie błąd oprogramowania. Wyniki pomiarów dokonanych za pomocą cęgów, w przypadku małych wartości prądów, różniły się dość znacznie od wykonanych kabelkami lub z użyciem adaptera. Jednak przy pomiarze dużych prądów pozostaną jedynym rozwiązaniem. O ile do dokumentacyjnych pomiarów sieci energetycznej użytkownicy będą szukać raczej mierników rejestrujących, to analizator MT1010 z pewnością będzie przydatnym przyrządem wszędzie tam, gdzie trzeba szybko określić parametry przebiegów związanych z dostarczaną energią elektryczną lub stan jej odbiorników. Doskonale służyć będzie ocenie skuteczności działania układów kompensacji mocy biernej i w elektrycznych pracach instalacyjnych. Jarosław Doliński, AVT Dodatkowe informacje Przyrząd do testów w redakcji udostępniła firma NDN,tel./fax. (22) 641-15-47, (22) 641-61-96, e-mail: ndn@ndn.com.pl, www.ndn.com.pl. 54 Elektronika Praktyczna 2/2002 SPRZĘT Rejestrator temperatury Chyba każdy z nas widział przejeżdżające TlR-y z termoizolowanymi komorami ładowniczymi. Znamy je s tego, że gdy w letnie, upalne dni obowiązuje zakaz poruszania się pojazdów powyżej określonej masy, one właśnie, jako jedne z nielicznych, korzystają z ,,prawa łaski". Muszą dowieźć towar na czas, w przeciwnym "bowiem razie może on ulec zepsuciu się lub znacznie pogorszyć jakość. Dotyczy to zarówno artykułów żywnościowych, jak i wyrobów chemicznych, roślin, czy wreszcie dzieł sztuki. Podczas transportu i w czasie magazynowania, artykuły te wymagają niejednokrotnie bardzo rygorystycznych warunków klima- tycznych, w tym temperatury przechowywania. Nie trzeba być specjalistą od żywienia, by zdawać sobie sprawę z tego, śe kilkukrotnie zamrażane produkty żywnościowe, powinny być wyeliminowane z użycia. Producenci wrażliwych produktów, mimo zaufania dla przewoźników, na pewno chcieliby mieć pełną kontrolę nad losem swoich wyrobów podczas transportu. Coraz więcej firm polskich i zagranicznych wychodzi im na przeciw. W artykule przedstawiamy bardzo poręczny rejestrator temperatury o nazwie LOGpen-10, oferowany przez firmę Ad-vantech. Jego niezwykle starannie wykonana obudowa z galwanicznie chro- Duże walory użytkowe przyrządów pomiarowych są na ogól kojarzone z piękną obudową, czytelnym, dużym wyświetlaczem, nienagannie działającymi klawiszami i przełącznikami. Bezpowrotnie minęły czasy topornych obudów wykonanych z bakelitu, a wychyłowe wskaźniki wskazówkowe, mimo wielu ich zwolenników, zostały prawie w 100 procentach wyparte przez wyświetlacze cyfrowe lub graficzne. Można jednak wykonać przyrząd całkowicie pozbawiony powyższych cech, a mimo to odznaczający się dużą przydatnością, o czym - mam nadzieję - Czytelniców przekonam tym artykułem. Elektronika Praktyczna 2/2002 SPRZĘT mowanej stali nierdzewnej, świadczy o tym, że konstruktorzy doskonale zdawali sobie sprawę z tego, w jakich warunkach będzie w przyszłości pracował ich wyrób. Cała elektronika schowana jest w rurce o długości 130mm i średnicy 19mm. Do jednego końca obudowy jest przykręcany mosiężny kołpak, w którym umieszcza się baterię litową rozmiaru 1/2AA, o napięciu 3,6V i pojemności 900mAh. Według producenta, powinna ona wystarczyć na ok. 1-2 lat pracy. Jej żywotność zależy od tego, jak często rejestrator będzie komunikował się z komputerem PC. Drugi koniec obudowy jest zakończony zakrętką, w której znajduje się okienko z pleksi, przez które użytkownik może obserwować migającą lampkę, sygnalizującą status urządzenia. Obok niej znajduje się gniazdko typu minijack, służące do podłączania komputera, Aby zapewnić wymaganą hermetyczność, wszystkie połączenia obudowy, posiadają gumowe uszczelki. Trzeba jednak pamiętać, że zamknięte w obudowie powietrze zawsze będzie zawierało pewną ilość pary wodnej, zasysanej dodatkowo fprzez nieszczelności) po wyjęciu rejestratora z komory chłodniczej, którego skroplenie osiądzie na elementach. Konieczność rozkręcania obudowy przy każdorazowym dołączaniu rejestratora do komputera może być na dłuższą metę dość uciążliwa, lecz wydaje się, że jest to jedyne, sensowne rozwiązanie, uwzględniające bardzo różnorodne warunki pracy urządzenia. Rejestrator LOGpen-10 nie posiada iadnych elementów sterujących. Cała jego obsługa odbywa się zdalnie, ze specjalnego programu dostarczanego przez producenta. Program ten pracuje w środowisku Windows 9x/NT i jest instalowany z jednej dyskietki. Po wybraniu portu komunikacyjnego można natychmiast przystąpić do pracy. Na początku warto przetestować poprawność połączeń i sprawność samego rejestratora, wywołując z menu LOG-pen polecenie TesiLOGpen lub kliknąć myszką na odpowiadającą mu ikonę, Jeśli wszystko jest w porządku, to na ekranie komputera powinno się ukazać okno z wyświetloną, aktualnie zmierzoną, wartością temperatury i odstęp czasowy, jaki będzie upływał między ko- Rys. lejnymi pomiarami. Należy jednak unikać nadmiernego korzystania z tego polecenia, gdyż wtedy rejestrator w sposób ciągły korzysta z portu komunikacyjnego, a to z kolei skraca żywotność baterii. Przed przystąpieniem do rejestracji należy ustalić jej parametry, do czego służy polecenie Setup. W odpowiednim oknie (rys* 1) można ustawić czas wewnętrznego zegara RTC, zawartego w rejestratorze oraz wybrać wartość górnej i dolnej temperatury alarmu. LOGpen-10 nie posiada niestety wskaźnika stanu baterii. Jedyną więc możliwością kontroli jej stanu jest określenie czasu jej wykorzystywania. Aby informacja ta nie zaginęła w trakcie 2-letniej eksploatacji, informacja o dacie wymiany jest zapisywana w wewnętrznej pamięci nieulotnej rejestratora i widoczna w oknie Setup, w którym można ponadto ustawić in-terwał między pomiarami (od 1 sekundy do 18,2 godzin), wybrać jednostkę wyświetlanej temperatury (C, F) oraz ustalić tryb rejestracji. Wszystkie pomiary są zapisywane również w pamięci nieulotnej, nie ulegają więc utracie nawet przy braku zasilania. Odłączenie baterii na dłużej niż 30 sekund, powoduje jednak zatrzymanie wewnętrznego zegara. Może się zdarzyć, że użytkownik nie zdąży odczytać danych przed czasem całkowitego zapełnienia pamięci. Możliwa liczba danych wynosi 4000 (opcjonalnie 8000), co przy próbkowaniu 1-sekundowym daje czas pomiaru równy 1 godz. 6 min 40 s. W jednym z trybów rejestrator zakończy zapisywanie wyników po zapełnieniu pamięci, w drugim zaś próbki będą cyklicznie zapisywane w całym dostępnym obszarze. Aby zagwarantować pewną identyfikację wyników, każdy egzemplarz rejestratora posiada swój własny, niepowtarzalny numer seryjny widoczny w oknie Setup i umieszczany na wydrukach oraz zapisywany na dysku wraz z danymi. Dodatkowo, w celu łatwiejszej identyfikacji wyników, użytkownik może zdefiniować dwie własne, 5-znakowe etykiety, które również będą się pojawiały razem z danymi. Po ustawieniu daty i czasu rozpoczęcia rejestracji oraz kliknięciu na klawisz Setup, rejestrator przechodzi w stan czuwania. Przez kilka sekund świeci się zielona dioda, po czym gaśnie. W tym stanie, urządzenie pozostaje do momentu, gdy czas wewnętrznego zegara RTC wskaże wcześniej ustawioną godzinę rozpoczęcia rejestracji. Od tej chwili dioda będzie co kilka sekund migać w kolorze zielonym, a jeśli zostanie przekroczona którakolwiek z ustawionych wartości temperatur alarmowych, kolor zmieni się na czerwony. Tab.1 Parametry rejestratora LOGpen-10. Zakres mierzonych temperatur -40C 80C Temperatura przechowywania -40C 80C Rozdzielczość temperatury 0,5C Dokładność pomiaru temperatury ą1C Szybkość odpowiedzi na zmianę temperatury 0,6C/mm (wpowietrzu) Maksymalna liczba próbek 4000 (możliwość rozszerzenia do 8000) Dokładność zegara <40sna miesiąc Zakres mterwalów próbkowania 1s 18,2h Zasilanie Bateria litowa 3,6V rozmiar 1/2 AA, ooiemność SOOmAh Czas pracy najednej baterii 1 2 lat (zależny od częstości komunikowania się z komputerem) Wymiary długość 130mm średnica 19mm Masa 120g Aby odczytać zarejestrowane dane, należy LOGpen-10 połączyć z komputerem, uruchomić współpracujący z nim program i wybrać polecenie Off-Load. Po kilku sekundach dane ukażą się na ekranie w postaci tabelarycznej, wraz ze wszystkimi parametrami rejestracji (rys. 2). Wybierając zakładkę ,,Trend" można przejść do graficznej prezentacji wyników (rys. 3). Widoczne w okienku dane przewija się specjalnymi klawiszami ekranowymi (suwakami) lub myszką po naciśnięciu jej prawego przycisku. Poszczególne fragmenty wykresu mogą być powiększane poleceniem Zoom. Jeśli zachodzi potrzeba ich dokładniejszej analizy, to na pewno cenną zaletą będzie możliwość bezpośredniego zapisywania tych wyników w formacie Excela, w którym użytkownik może zrobić już prawie wszystko. Program potrafi też zapisywać dane w formacie *.csv (plik tekstowy z separacją danych za pomocą przecinków). Nie trzeba chyba dodawać, że wydrukowanie wyników rejestracji nie będzie żadnym kłopotem. Program umożliwia nawet dość dowolne usytuowanie wykresu na kartce, ustalenie jego rozmiaru, orientacji wydruku i liczby szczegółów. Przystępując do testowania rejestratora zastanawiałem się, jak przyrząd ten będzie się zachowywał w sytuacji nagłej zmiany temperatury. Obudowa przyrządu wraz z wypełniającym je powietrzem, a do tego jeszcze obudowa elementu pomiarowego, stanowią układ o pewnej bezwładności termicznej. Odpowiedź rejestratora w takim przypadku, na pewno więc nie będzie natychmiastowa, a zdolność do nadążania za nagłymi zmianami temperatury może determinować przydatność urządzenia w pewnych zastosowaniach. Producent podaje, że szybkość odpowiedzi wynosi 0,6C na minutę, co mniej więcej potwierdziły eksperymenty. W praktyce wynik ten był nawet nieznacznie lepszy, bo wynosił ok. lC/min. W zasadzie można stwierdzić, że rejestrator LOGpen-10, jest wykonany prawie perfekcyjnie. Jedynym, dość irytu- 56 Elektronika Praktyczna 2/2002 SPRZĘT tn. i Tfcł-IK mil n ibim LdaC d * Lb 1 rx Tłfl 1
Rys. 2. jącyrn mankamentem jest to, śe program obsługujący go nie potrafi zapamiętać folderu, do którego użytkownik chciałby zapisywać swoje pliki. Z uporem maniaka, sawsse proponuje okienkowy pulpit. Inną niedogodnością jest brak możliwości ręcznego zainicjowania rejestracji. Mośna wprawdzie w programie określić datę i godzinę rozpoczęcia zapisywania wyników pomiarów, ale nie zawsze da się przewidzieć czas, ja- Rys. 3. ki upłynie od programowego wystartowania urządzenia do momentu, gdy powinien on zacząć rejestrować wartości temperatury. Ograniczenie to wynika jednak najprawdopodobniej z założenia zachowania maksymalnej szczelności obudowy. Na pochwałę zasługuje bardzo starannie opracowana instrukcja obsługi, wydrukowana w formacie zaledwie 11x8,5cm. W komplecie użytkownik dostaje dość nietypowy prze- wód połączeniowy rejestratora z komputerem, zakończony z jednej strony wtykiem minijack, z drugiej zaś standardowym Canonem 9-pinowym. Jarosław Doliński, AVT jdolin@optimus.waw.pl Dodatkowe informacje Przyrząd do testów w redakcji udostępniła firma Elmark,tel./lax. (22)821 3054, www.elmarkcom.pl Elektronika Praktyczna 2/2002 PROJEKTY GALER - programator GAL-i do A migi, część 1 AVT-5049 PROJEKT Z OKŁADKI W artykule przedstawiamy prawdziwy hit - programator układów GAL, do którego jest dostępn e sh areware 'owe oprogramowańie w wersji na Amigę. Prezentowany w artykule układ jest wzorowany na jednym z wielu dostępnych w Internecie. Charakterystyka i możliwości programatora z oprogramowaniem: / programuje, kopiuje, odczytuje, weryfikuje układy: GAL16V8, GAL20V8, GAL22V10, GAL20RA10, / współpracuje z wszystkimi komputerami Amiga, / jest dołączany do złącza portu Parallel, / umożliwia ustawienie bitów zabezpieczających, / wbudowany kompilator, / wbudowany deasembler, / testowanie zaprogramowanych układów. Układy programowalne typu GAL są - mimo swojej długiej historii - nadal najczęściej stosowane w aplikacjach nie wymagających stosowania układów o dużej skali integracji. Doskonale nadają się do budowania dekoderów adresowych w systemach mikroprocesorowych i na kartach komputerowych, dzięki temu, że można nimi zastąpić kilka standardowych układów cyfrowych. Ich stosowanie jest uzasadnione w urządzeniach o niewielkich wymiarach. Za ich pomocą można także zabezpieczać swoje opracowanie, wbudowując mniej lub bardziej istotny fragment "logiki" układu w zabezpieczony przed odczytem układ programowalny. Nie są to oczywiście wszystkie powody, dla których GAL-e cieszą się nieustającym powodzeniem, niemniej jednak wystarczające do tego, żeby przedstawić ten prosty w wykonaniu programator. Opis układu Układ programatora, którego schemat pokazano na rys. 1, jest nieco zmodyfikowaną wersją programatora opracowanego przez Christiana Habermanna. Zmiany wprowadzone w stosunku do oryginału są następujące: - Dodałem rezystor R17, który powoduje lekkie świecenie diody LED w czasie, kiedy miała być wyłączona. Dzięki temu widać, czy urządzenie jest włączone do sieci. - Zmodyfikowałem układ zasilania kontaktronów Kl, K2 tak, aby możliwy był wybór napięcia zasilania ich cewek pomiędzy 5 a 12V (kontaktrony na 12V w obudowie DIL są łatwiej osiągalne). - Dodałem stabilizator 7805, dzięki czemu programator można zasilić z dowolnego źródła napięcia o wartości 8...15V. - Zmodyfikowałem układ połączeń do podstawki zatrzaskowej tak, że umieszczona jest ona od strony (umownej) druku. Ułatwia to montaż płytki programatora w obudowie. Działanie układu przebiega następująco. Za pomocą sygnałów DO, Dl, D3, podawanych na wejścia A0, Al, En układu IC2, wybieramy rejestr (ICl, IC3, IC4 lub IC5), do którego będą szeregowo wpisywane dane oraz z którego wyprowadzenia programowanego układu będziemy czytać dane (IC7, ICH). Wysyłany bit pojawia się na linii D4, a sygnał zegarowy jest podawany na linię 14 Elektronika Praktyczna 1/2002 GALER - programator GAL-i do Amigi 8 o m a Rys. 1. Schemat elektryczny programatora. Elektronika Praktyczna 1/2002 15 GALER - programator GAL-i do Amigi RffO Rfil R*2 R*3 REZ4REZ5REZ6 t iiiiffi 2. Rozmieszczenie elementów na płytce drukowanej. bitu D3 (aktywne jest ujemne zbocze tego sygnału). W trakcie zapisu do rejestru 4094 dane na jego wyjściu nie zmieniają się, a to za sprawą wewnętrznego zatrzasku wyjściowego. Po ośmiu impulsach zegarowych dane zostają przepisane do zatrzasku wyjściowego narastającym zboczem sygnału z linii D2. Bity odczytane podczas odczytu są podawane na linię BUSY portu równoległego. Dane mogą pochodzić z wyprowadzenia 23 programowanego układu (bramka ICllc), wyprowadzenia 22 (bramka IClla) lub rejestru IC7. Dane do IC7 wpisywane są impulsem na linii D2 portu równoległego. Podanie adresu "01" na DO, Dl powoduje pojawienie się sygnału strobującego na wyjściu IC2 oznaczonym Sllb. W wyniku tego dane w rejestrze IC7 są przesuwane, a ponadto jest uaktywniana bramka trójstanowa ICllb. Dzięki temu dane można odczytać na linii BUSY portu równoległego. Inwer-tery układu IC8 sterują przekaźnikami kontaktronowymi załączającymi napięcie zasilania programowanego układu (Kl) oraz podającymi napięcie zasilania programowanego układu na wyprowadzenie odpowiednie dla układów w obudowach 20 i 24-wypro-wadzeniowych. Tranzystory T1...T4 załączają napięcie programujące uzyskiwane z przetwornicy impulsowej IC9 typu TL497. Pojawienie się wysokiego poziomu napięcia na wy- prowadzeniu 2 przetwornicy blokuje jej pracę. Napięcie programujące wybierane jest za pośrednictwem dekodera IC10, do którego wyjść dołączono potencjometry, za pomocą których precyzyjnie ustala się wartość napięcia programującego. Montaż i uruchomienie Sposób zamontowania podstawki i diody LED oraz sposób umieszczenia programowanego układu w podstawce pokazano na rys. 2. Elementy montujemy w tradycyjny sposób, począwszy od najmniejszych rozmiarami do największych. Pod wszystkie układy polecam użycie podstawek. Diodę LED i podstawkę zatrzaskową montujemy od strony lutowania (umownej). Jeśli programator będziemy wykorzystywać sporadycznie, stosunkowo drogą podstawkę ZIF można zastąpić podstawką tulipanową. Zależnie od napięcia zasilania programatora, dla IC12 konieczne może być zastosowanie radiatora. Na kawałku taśmy FLAT34, z której odcinamy 9 żył, zaciskamy złącze IDC34 oraz wtyk DB25-M. Jeśli nie posiadamy wtyku DB zaciskanego na taśmę, przewody można przylutować. Szczegóły montażu pokazano na rys. 3. Wtyk DB25 będzie zamocowany do obudowy, dlatego do połączenia programatora z komputerem wykorzystujemy typowy przedłużacz 2 5-przewodowy. Bez podłączenia programatora do komputera i z pustymi podstawkami pod układy scalone podłączamy do złącza ARK napięcie zasilające i sprawdzamy obecność napięcia +5V na wyprowadze-
Rys. 3. Sposób wykonania kabla połączeniowego. 16 Elektronika Praktyczna 1/2002 GALER - programator GAL-i do Amigi Ś W r-* H miii Ś"* ł * Ś
Rys. 4. Widok okna wyboru wersji programatora. niach wszystkich układów scalonych. Jeśli wszystko jest dobrze, odłączamy zasilanie, umieszczamy wszystkie układy w podstawkach, łączymy programator z komputerem i po ponownym włączeniu zasilania uruchamiamy program GalerTest. Po tekście ostrzegawczym pojawi się okno wyboru wersji programatora, wybieramy Vi.3 (rys. 4). Następnie wybieramy kolejno testy sprzętu. Pierwszy test - ustawia na wszystkich wyprowadzeniach podstawki ZIF stan logiczny 0. Do testowania poziomów napięcia najlepiej użyć sondy logicznej, ponieważ na mierniku nie odróżnimy poziomu 0 od braku napięcia. W obu przypadkach miernik wskaże 0V. Jeśli test wypadł niepomyślnie to mamy spory kłopot W pierwszej kolejności należy sprawdzić IC2 i ICl. Na wyprowadzeniu 13 ICl powinien być poziom H. Jego brak świadczy o złym sterowaniu przez IC2 lub 0 braku sygnału strobującego i danych (linie D2 i D4 portu równoległego). Aby zlokalizować przyczynę błędu podłączmy sondę logiczną do wyprowadzenia 1 ICl 1 ponownie uruchamiamy program testujący. Na wyprowadzeniu tym powinny pojawić się dodatnie impulsy. Podobnie na wyprowadzeniach 2 i 3. Brak impulsów na wyprowadzeniu 1 świadczy o zwarciu ścieżek łączących wyprowadzenia 1 układów ICl, IC3, IC4, IC5 lub uszkodzeniu (przebiciu) któregoś z wymienionych Rys. 5. Widok okna programu testujqcego. układów. Aby to stwierdzić wystarczy usunąć ICl, IC3...IC5 z podstawek. Jeśli nadal brak jest impulsów, to zwarta jest ścieżka, a jeśli impulsy pojawiły się, to uszkodzony jest jeden z układów. Umieszczając kolejno układy znajdziemy ten, który blokuje linię. Podobnie postępujemy w przypadku braku impulsów na wyprowadzeniu 2 ICl. Jeśli brak impulsów na wyprowadzeniu 3 ICl, prawdopodobnie jest uszkodzony IC2 lub zwarta ścieżka doprowadzająca dane do niego. Pojawienie się impulsów na wyprowadzeniu 15 IC2, a brak impulsów na wyjściach (wyprowadzenia 9, 10, 11, 12) świadczy o uszkodzeniu IC2. Gdy usunęliśmy usterkę lub test wypadł pomyślnie naciskamy przycisk OK. Test 2 - Sprawdzenie T5 -dioda LED powinna zaświecić. Test 3 - Zgaszenie diody LED. Test 4 - Sprawdzenie działania kontaktionu Kl - na wyprowadzeniu 24 podstawki ZIF pojawia się napięcie +5V. Test 5 - Sprawdzenie działania kontaktionu K2 - na wyprowadzeniu 22 podstawki ZIF pojawia się napięcie +5V. Test 6 - Na wszystkich wyprowadzeniach podstawki ZIF (pomijając wyprowadzenie 12) pojawia się poziom logiczny H. Test 7 - Wyprowadzenia 1, 3, 5, 7, 9, 11, 14, 16, 18, 20, 22, 24 przyjmują poziom H, pozostałe L. Test 8 - Wyprowadzenia 2, 4, 6, 8, 10, 13, 15, 17, 19, 21, 23 przyjmują poziom H, pozostałe L. Testy 6..8 umożliwiają sprawdzenie wystąpienia ewentualnych zwarć na ścieżkach doprowadzających napięcia z układów scalonych i kontaktionów do podstawki ZIF. Test 9 - Pozwala zweryfikować działanie przetwornicy IC9, dekodera IClO oraz tranzystorów T3, T4. Na wyprowadzeniach 12, 13, 14, 15 IClO powinny być logiczne zera, na wyjściu 1 napięcie rzędu 50...300mV. Napięcie większe niż 500mV świadczy o uszkodzeniu IClO. Na wyprowadzeniu 2 IC9 powinien być poziom H. Stan L oznacza uszkodzenie IC8. Na wyprowadzeniu 2 IC9 powinno wystąpić napięcie większe niż 5V (7...30Y). Napięcie to legulujemy potencjometrem R40. Na kolekto- Rys. ó. Widok głównego okna obsługujqcego programator. rze T3 powinno pojawić się właśnie regulowane napięcie. Ustawiamy jego wartość na 16,50V, kontrolując na nóżce 2 podstawki ZIFl Test 10 - Ustawiamy napięcie 15,75V Test 11 - Ustawiamy napięcie 14,50V Test 12 - Ustawiamy napięcie 14,00V Test 13 - Ustawiamy napięcie 12,00V Po naciśnięciu OK pojawi się w oknie komunikat pokazany na rys. 5. Test 14 - Kontrola napięcia 12,00V na wyprowadzeniu 4 podstawki ZIF. W ten sposób zostały sprawdzone Tl i T2. Test 15 - Sprawdzenie IC7. Program wygeneruje dane na wyjściach rejestrów, po czym odczyta je przez IC7 i ICll. Wyniki testu są przedstawiane w oknie programu. Obsługa programatora Po przetestowaniu programatora możemy uruchomić program sterujący jego pracą - Galer. Główne okno programu pokazano na rys. 6. Jeśli rozmiar wyświetlanego okna jest za mały, możemy go zmienić w standardowy sposób. W pierwszej kolejności wybieramy "Vi.3" z podmenu Hardware-Ver-sion w menu Project. Następnie w menu Tools wybieramy podmenu Select Editor. W oknie dialogowym, które pojawi się, wpisujemy nazwę używanego edytora np. CED (rys. 7). W menu GAL- Rys. 7. Okno wyboru edytora. Elektronika Praktyczna 1/2002 17 GALER - programator GAL-i do Amigi u iv ' m M II 14 IV om ii iii w Rys. S. Widok głównego okna programu sterujqcego po poprawnym zakończeniu kompilacji. Type warto zaznaczyć opcję Type-Reąuester. Dzięki temu przed każdą operacją (programowanie, kopiowanie, sygnatura) pojawi się okno umożliwiające wybór typu GAL-a. Ustawienia zapisujemy wywołując menu Projekt/Save Config. Projekty przykładowe Zanim zaczniemy pisać własne programy proponuję pobawić się przykładami. Polecam efektowny Enkoder 8 na 3, który znajduje się na płycie CD-EP1/2002B oraz na stronie internetowej EP w dziale DownIoad>Dokumentacje. W menu wybieramy GAL-Asembler, a następnie z podmenu Assemble file lub naciskamy klawisze Amiga+A. W oknie, które ukaże się, możemy zaznaczyć jakie pliki mają być generowane, i tak: - JEDEC - koniecznie zaznaczyć, opcja generuje plik z rozszerzeniem .jed. Ten plik jest wymagany do zaprogramowania GAL-a. - Fuse-Matńx - plik z rozszerzeniem .fus, pokazujący miejsca "przepaleń" matrycę bezpieczników, a właściwie matrycę łączników konfigurującycłL - Chip-Diagram - plik z rozszerzeniem .chp, zawierający widok obudowy układu z etykietami pi-nów, czyli z nazwami sygnałów przyporządkowanymi wyprowadzeniom układu GAL. - Pin-Diagram - plik z rozszerzeniem .pin, tabelka z etykietami i numerami pinów, do których są przypisane. - Autosave - polecam zaznaczyć, dzięki temu nie będziemy każdorazowo pytani o to, czy zapisać wygenerowany plik. - adjust type of gal - polecam zaznaczyć, dzięki temu program ustawi w menu taki typ GAL-a, jaki jest ustawiony w pliku. Po naciśnięciu OK pojawi się okno wyboru plików. Wskazujemy plik Enkoder 8 na 3.pld z katalogu Examples. Jeśli kompilacja przebiegła pomyślnie, w oknie pojawi się komunikat assembled file, a w pustych dotychczas okienkach pojawią się nazwy etykiet (rys. 8). Wybieramy teraz z menu GAL/Program lub naciskamy klawisze Amiga+P. Pojawi się pytanie o typ układu GAL. Jeśli zaznaczyliśmy wcześniej opcję adjust type of gal, automatycznie zostanie wybrany GAL20Y8. Jeśli nie zaznaczyliśmy, to wybieramy ten właśnie typ układu. Następnie umieszczamy układ w podstawce ZIF i naciskamy przycisk Conti-nue. W oknie, które się pojawi, wybieramy wygenerowany wcześniej plik Enkoder 8 na 3.jed. Jeśli pamięć konfguracji układu GAL będzie czysta, układ zostanie zaprogramowany, jeśli nie - pojawi się okno z komunikatem, w którym możemy wybrać czy chcemy wymazać starą zawartość, czy rezygnujemy z programowania. Po pomyślnym programowaniu automatycznie jest przeprowadzana weryfikacja. Działanie układu można przetestować za pomocą programatora. Wybieramy z menu Tools/GAL-Checker. Naciskając przycisk przy oknach z nazwami etykiet możemy ustawić poziom H lub L na wejściu GAL. Niektóre wyprowadzenia z prawej strony układu mogą być wejściami lub wyjściami. O tym jaką funkcję wyprowadzenia wybieramy decyduje przycisk z literą "O" - output lub "I"-input. Wyprowadzenia, które są wyjściami, mogą przyjąć poziom H, L lub stan wysokiej impedancji oznaczony literką "Z". Działanie enkodera jest podobne jak układu 74148. Pojawienie się poziomu logicznego L na wejściu 10 powoduje ustawienie na wyjściach A, B, C poziomu L (liczba 0). Poziom L na Ii ustawi na wyjściu liczbę 1, itd. Gdy dwa wejścia znajdą się w stanie aktywnym, ustawiona zostanie liczba tego, które ma miejszą wartość np.: przy ustawieniu wejść 16 i 13, na wyjściach ustawi się liczba 3. Wyprowadzenie En przyjmuje stan logiczny, gdy którekolwiek z wejść znajdzie się w stanie niskim. Dzięki temu można określić przypadek, w któ- WYKAZ ELEMENTÓW Rezystory Rl, R2: lkn R3...R13, Rló, R19...R2Ó: R14: ln R15: R17: R1S: R27: R2S: drabinka R29...R32: nie istnieje (usunięto podczas modyfikacji projektu) R33: R34: R35...R39: lkn R40...R44: helitrym REZ1...REZ6; do przyszłych zastosowań Kondensatory Cl: lOOpF C2: 4,7^F C3, C5...C14, Cló: lOOnF C4: 220^F/25V C15: C17: Półprzewodniki D1...D4: 1N414S LED: dowolna dioda LED Tl, T3: BC557 T2, T4, T5: BC547 IC1, IC3...IC5: 4094 IC2: 4555 ICó: nie istnieje (usunięto podczas modyfikacji projektu) IC7: 4021 ICS: 74LS0Ó IC9: TL497 IC10: 74LS145 ICH: 74HC12Ó IC12: 7805 Różne Kl, K2: EDR201C1200 (przekaźnik kontaktronowy w obudowie DIL 12V) LI: dławik lOO^H CON1: ARK-2 TEXTOGL: Podstawka zatrzaskowa 24 pin 0,3" Xl: Gniazdo IDC34 Wtyk IDC34 na kabel flat Taśma flat 34 DB25-M na kabel FLAT rym stan aktywny pojawił się na wejściu 17. Enkoder taki można zastosować jako układ wejściowy do ośmioprzyciskowej klawiatury. Na wyjściach A, B, C pojawia się informacja o numerze naciśniętego klawisza. Wyjście EN może 18 Elektronika Praktyczna 1/2002 GALER - programator GAL-i do Amigi generować sygnał strobujący. będzie miało przerwanie o nume- Z opcji testowania wychodzi- Układ ten może też pełnić fun- rze 0. Wejście przerwań CPU my wybierając w menu GAL-Chec- kcję dekodera priorytetu przerwa- musi reagować na poziom. Spo- ker/Exit lub naciskając Amiga+X. nia. Linia EN połączona jest wodowane jest to tym, że gdy Sławomir Skrzyński, AVT wtedy z linią INT CPU. Wystą- pojawią się dwa przerwania rów- slawomir.skrzynski@ep.com.pl pienie jednego z ośmiu przerwań nocześnie, po zakończeniu obsłu- wywoła obsługę przerwania przez gi tego o wyższym priorytecie, Wzory płytek drukowanych w for- CPU, w której na podstawie sta- wyjście En cały czas będzie na macie PDF są dostępne w Internecie nu wyjść A, B, C dekodera poziomie L. Poziom ten zmieni pod adresem: http:llwww.ep.com.pll nastąpi skok do odpowiedniej się dopiero po skończeniu obsłu- 7pdffstyczenO2.htm oraz na płycie procedury. Najwyższy priorytet gi drugiego przerwania. CD-EP01/2002B w katalogu PCB. Elektronika Praktyczna 1/2002 19 Warsztatowy zasilacz szufladkowy Na str. 87 przedstawiamy kolejny minipro-jektzserii "warsztatowej". a 3-kanałowy termometr MIN/MAX z zegarem Na słr. 96 przedstawiamy bardzo interesujący projekt opracowany przez jednego z naszych Czytelników. Zabezpieczenie portu równoległego komputera Za pomocq tej prostej przystawki można zabezpieczyć port równoległy przed uszkodzeniami wywołanymi przepięciami. Słr. 88. Radiomodemy firmy Satel A W artykule na słr. 141 przedstawiamy odpowiedź na często zadawane pytanie: czym zastąpić kabel w RS232? Timer telefoniczny Pomimo szeroko reklamowanego potanienia usług telekomunikacyjnych ich realne koszty sq bardzo wysokie. Jest to podstawowa przyczyna, dla której przedstawiamy nowq wersję timera telefonicznego. Słr. 31. Zegar z kalendarzem zasilany bateryjnie Konstrukcja pozornie banalna, ale na dwóch ogniwach AA może niezawodnie pracować wiele tygodni... Słr. 35. Emulator odbiornika DCF Dzięki upowszechnieniu informacji o sygnale DCF coraz większa liczba konstruktorów podejmuje samodzielne próby wykonania odbiorników do zegarów synchronizowanych DCF. Ich uruchamianie, ze względu na dość niskq jakość docierajqcego do Polski sygnału radiowego, ułatwi emulator przedstawiony w artykule. Słr. 27. Emulator pamięci A EPROM do Amigi i C-64 Kolejne na łamach EP urzqdzenie warsztatowe dla amigowców. Słr. 21 LogPen 10 -rejestrator temperatury W artykule zaczynajqcym się na słr. 55 przedstawiamy wrażenia z testów przenośnego rejestratora temperatury firmy Advantech, SFG830 - generator arbitrarny Na słr. 69 przedstawiamy wyniki testów generatora, którego możliwości sq tak bardzo ograniczone, jak wyobraźnia operatora.., Elektronika Praktyczna 2/2002 Programowane panele A operatorskie z panelami dotykowymi Na słr. 143 przedstawiamy najważniejsze zagadnienia zwiqzane z konfiguracjq i programowaniem paneli operatorskich, stanowiqcych najważniejszy fragment interfejsu operatorskiego w nowoczesnych systemach automatyki. Motorola na Flashowo Na słr. 60 przedstawiamy nowe starter kity dla mikrokontrolerów Motoroli z serii HC908. MT1010 - analizator jakości energii elektrycznej Pomiar jakości energii elektrycznej jest coraz bardziej popularny. Na słr. 51 przedstawiamy kolejny dostępny w naszym kraju przy-rzqd pomiarowy umożliwiajqcy precyzyjne zmierzenie i analizę jej najważniejszych parametrów. T IKA Nr 2 (110) luty 2002 m ^H .............14 .............21 .............27 .............31 .............35 .............41 L Zabawka- programowany pojazd, część 1 Emulator pamięci EPROM doAmigi i C-64 Emulator odbiornika DCF Timer telefoniczny........................................................................ Zegar z kalendarzem zasilany bateryjnie GALER- programator GAL-i do Amigi, część 2 Rozładowarka i miernik pojemności akumulatorków, część 2 Miniprojekty Warsztatowy zasilacz szufladkowy Zabezpieczenie portu równoległego komputera Automatyka ELC - miniaturowe sterowniki logiczne firmy Fuji Electric Radiomodemy firmy Satel, część 1......................................... Smali & Smart - programowane panele operatorskie z panelami dotykowymi........................................................... Sprzęt Analizator energii elektrycznej MT 1010................................... Rejestrator temperatury LOGpen-10........................................ Motorola na Flashowo - starter kity dla mikrokontrolerów serii HC908.................................................................................... Generator arbitrarny SF^830.................................................... Podzespoły Wzmacniacze audio klasy D...................................................... Nowe Podzespoły........................................................................ 45 87 139 141 143 51 55 60 69 63 65 OrCAD - profesjonalny system wspomagajqcy projektowanie układów elektronicznych - edytor płytek drukowanych, część 3................................................................73 Projekty Czytemff^^^^^^^^^^^^^^H 3-kanałowy termometr MIN/MAX z zegarem..........................96 Kurs ^^^^^^^^^^^^^^^^^^^^H Co w LPT-cie piszczy, część 3....................................................82 Architektura mikrokontrolerów PIClóF8x, część 3..................79 Projektowanie ^^^^HH^^^H Zalecenia projektowe dla tanich systemów, bezprzewodowej transmisji danych cyfrowych, część 1.......93 Info Świat.......................................................................123 InfoKraj..........................................................................125 ełca Kramik+Rynek..............................................................101 Listy.................................................................................107 Ekspresowy Informator Elektroniczny.....................119 Wykaz reklamodawców Elektronika Praktyc. 7 SPRZĘT Starter Kity dla mikrokontrolerów sera HC908 Zaczniemy od krótkiego scharakteryzowania rodziny HC08, której korzenie sięgają, niegdyś bardzo popularnych w naszym kraju, mikrokontrolerów HC05. Obydwie rodziny oparto na 8-bitowym rdzeniu obliczeniowym, który otaczają różnorodne bloki peryferyjne, których konfiguracja jest zależna od typu mikrokontrolera (rys* 1). Architektury mikro kontrolerów, obydwu wymienionych rodzin, są niemalże identyczne, co więcej, oprogramowanie napisane na mi kro kontrolery HC05 może być przenoszone na HC08 bez żadnych modyfikacji. W rdzeniu HC08 wprowadzono wiele udoskonaleń sprzętowych oraz znacznie rozszerzono także listę instrukcji, dzięki czemu stosowanie tych mikrokont- kule zestawów nie przekraczają 100USD, a ich możliwości są naprawdę spore. Projektanci zestawów uwzględnili jeszcze jedno przyzwyczajenie: przyzwyczajenie. Sterowanie pracą zestawów umożliwia bezpłatne oprogramowanie firmy P&E Microcomputer Systems, które znane jest fanom mikrokontrolerów Motoroli od połowy lat 80. Oczywiście oprogramowanie to ulegało przez te lata ciągłej ewolucji, ale zasady konfiguracji i posługiwania się nim są ciągle takie same. Zestawy dla każdego Inżynierowie firmy Beta Control i Motoroli opracowali trzy zestawy uruchomieniowe: 68H C9 08 ICX8 EVE (fot. 3), 68HC908JK3EYE (fot. 4), 68HC9v>8 Po długich przygotowaniach Motorola wdrożyła do produkcji mi kro kontrolery z serii HC08 wyposażone w pamięć programu typu Flash. Aby przybliżyć konstruktorom i programistom te mi kro kontrolery, firmy współpracujące z Motorola opracowały nowe narzędzia, wśród których największym powodzeniem cieszą się zazwyczaj starter-kity. W artykule przedstawiamy zestawy uruchomieniowe, które dla Motoroli opracowała czeska firma Beta ControL MOTOROLA na Flashowo | rolerów zapewnia programiście duży komfort pracy. Po wdrożeniu do produkcji pierwszych mikrokontrolerów z pamięcią programu typu Flash, Motorola bardzo szybko rozszerzyła gamę dostępnych układów, co zilustrowano na rys. 2. Nawet najlepsze mikrokontrolery wy-.magają wsparcia narzędziowego w postaci programatorów, emulatorów i zestawów uruchomieniowych fstarter kitów) najbardziej popularnych wśród początkujących użytkowników. Ważnym parametrem, często decydującym o wyborze narzędzi fi co za tym idzie - stosowanych mikrokontrolerów) jest ich cena. W Motoroli wiedzą o tym uwarunkowaniu, ponieważ katalogowe ceny prezentowanych w arty- 68HC908GP32EVB (fot. 5) umożliwiające uruchamianie aplikacji na mikrokon-trolerach: 68HC908KXS (obudowa 16-wy-prowadzeniowa), 68HC908JK.3 (obudowa 20-wyprowadzeniowa) i 68HC908GP32 (obudowa 40-wyprowadzeniowa). Wspólnym dla nich elementem jest dodatkowa płytka oznaczona symbolem DEG08 (fot 6), która umożliwia programowanie pamięci programu w każdym z wymienionych mikrokontrolerów oraz pozwala na debugowanie wszystkich rejestrów (łącznie z blokami peryferyjnymi), a także pamięci programu i danych. Na tej płytce zrealizowano układ będący interfejsem Pt^emnaśó pamięci programu zapewniającym dostęp do "wnętrza" mikrokontrolerów za pomocą dowolnego komputera PC z interfejsem RS232. Jak wcześniej wspomniano, oprogramowanie sterujące (rys. 7 i 8) jest dostępne bezpłatnie na stronie WWW firmy P&E Microcomputer Systems. Zamieszczamy je także na płycie CD-EP2/2002E. Modułowa budowa zestawów pozwala na ograniczenie kosztów ich zakupu, ponieważ płytka DEG08 może współpracować z każdą płytką bazową. Konieczne jest tylko zainstalowanie dedykowanej wybranemu mi kro kontrolerowi wersji oprogramowania sterującego. ltiK I-51 6SHC908AZ60 1 68HC908OF32 | | 68HC908AB32 . 68HC90BMR32 I 68HC908GP20 6SHC908MR24 G8HC908MR1G ÓSHC90BSR12 b 68HC9O8KX8 68HC90SJBB Ó8HC908GK& 68HC90BJK3 68HC9OBJL3 6SHC90BKX2 II 68HC90SRK2 68HC908MR4 68HC908JK1 Dostępna *ą Wde wvtf* ROM wmryMłktełt mlkrakontnilałów Elektronika Praktyczna 2/2002 SPRZĘT Fot. 3. Fot. 4. Możliwości Zestawy prezentowane w artykule mośna wykorzystać rn.in. do prac projektowych z mikrokontrolerarni HC908. Kaśda z płytek basowych jest wyposażona w uniwersalne pole lutownicze, na którym rnoś-na zmontować własne otoczenie tworzące aplikacje, mikro-kontrolera, mośna takśe wykorzystać złącza szpilkowe ZWS do dołączenia mikrokontrolera znajdującego się na płycie bazowej do urządzenia zmontowanego na innej płytce drukowanej. Na płytkach bazowych zamontowano półprzewodnikowy czujnik temperatury LM35, dwa mikroprzełączniki oraz dwie diody LED. Elementy te mośna wykorzystać we własnej aplikacji. Płytki bazowe mogą takśe spełniać role. autonomicznych sterowników mikroprocesorowych, poniewaś wyposaśono je we wszystkie elementy niezbędne do prawidłowej pracy, przy czym jedynym istotnym ograniczeniem jest niewielka wydajność prądowa zintegrowanego na płytce stabilizatora napięcia +5V flOOmA). W przypadku korzystania z płytek bazowych pracujących autonomicznie konieczna jest ręczna konfiguracja niektórych jumperów, co dokładnie opisano w dokumentacji zestawów. Najbardziej interesującą mośliwością wszystkich prezentowanych zestawów -zwłaszcza na etapie uruchamiania programu - jest mośli- Praktyczna 2/2002 61 SPRZĘT Fot. 5. wość "podglądania" tego, co dzieje się we wnętrzu pracującego mikro kontrolera. Jak już wcześniej wspomniano, niezbędna jest do tego celu płytka DBG08, dzięki której zestawy są doposaśane "w sprzę-towo-programowy debugger, który mośna skonfigurować takie do pracy jako symula- tor. Jest to - jak pokazały nasze doświadczenia -doskonałe, a przy tym dość tanie narzędzi e wspomagające uruchamianie systemów mikroprocesorowych. Najpoważniejszą niedoskonałością takiego zestawu sprzętowego jest stosunkowo niewielka szybkość pracy "podglądanego" mikrokontrolera - maksymalna częstotliwość taktowania nie przekracza kilkudziesięciu kHz. Niestety w tej klasie cenowej nie jest możliwe osiągniecie lepszych wyników, Podsumowanie Testy prowadzone w redakcji wykazały, śe możliwości zestawów prezentowanych w artykule są rzeczywiście duśe. Jako bliskie doskonałemu mośna ocenić oprogramowanie sterujące ich pracą, zwłaszcza, śe w ramach bezpłatnych pakietów jest dostarczany takśe kompilator asemblera, program obsługujący programator, a takśe windowsowy Rys. 7. Fot. ó. Rys. 8. "spinacz" wszystkich programów - In-iegraied Developmeni Environmeni. Jakość i cena tych narzędzi mośe okazać się zachęcająca nie tylko dla dotychczasowych klientów Motoroli pragnących poznać nowe mikrokontrolery tej firmy, lecz takśe dla uśytkowników mikrokon-trolerów innych rodzin, którzy będą chcieli spróbować czegoś nowego. Tomasz Jakubik, AVT Dodatkowe informacje Dodatkowe informacje oraz oprogramowanie narzędziowe są dostępne na ptycie CD-EP02/2002B orazw Internecie pod adresami: - http://www. pemicro. conVics0^index html, - http://www.beTacontrol.cz/en/vyrobky/ vyvojprostiedky/index htm, Zestawy prezentowane w arlykule udostępniła nam lirma Motorola Polska. Starter kity dostępne sąw lirmie EBV Elektronik tel. 0-713422944 62 Elektronika Praktyczna 2/2002 PODZESPOŁY Wzmacniacze audio klas część 2 cjach ujawnia się najważniejsza zaleta wz ma cni a czy impulsowych - bardzo wysoka sprawność energetyczna, dzięki której można znacznie wydłużyć czas życia baterii zasilających. Dla prsykładu, w najnowszym telefonie firmy Nokia 5510 (foŁ 6) zastosowano stereofoniczny wzmacniacz impulsowy o mocy 2x500mW i średniej sprawności 90%, który może pracować przy napięciu zasilania 3V. Jest to nieco zmodyfikowa- W drugiej części artykułu przedstawiamy przegląd rozwiązań scalonych wzm a cni a czy klasy D dostępnych na rynku. Ze względu na wygodę stosowania skupiliśmy się na najnowocześniejszych układach, przede wszystkim tych, w których zintegrowano stopień sterujący z końcówką mocy. ny wariant wzmacniacza TPA2001D2 firmy Texas Instruments, dostarczany w obudowie ChipScale (ok. 4x4mm) z wyprowadzeniami BGA, Zastosowanie w to miejsce liniowego wzmacniacza audio nie byłoby możliwe ze względu na znacznie większe straty w strukturze, co wymagałoby zastosowania dodatkowego chłodzenia i obudowy o większych wymiarach. Niestety, w wielu przypadkach jakość dźwięku odtwarzanego przez wzmacniacze pracujące w klasie D nie jest zadowalająca, co zachęciło kilka firm do badań, które zakończyły się spektakularnymi sukcesami. Napiszemy o nich za miesiąc. Klasyczna klasa D Zasadę działania klasycznych wzmacniaczy mocy pracujących w klasie D przedstawiliśmy w pierwszej części artykułu IEP1/2002). Metoda wzmacniania sygnału audio w ten sposób jest prosta, lecz - jak to zwykle bywa -nie pozbawiona istotnych wad. Najpo- Zasada działania wzmacniaczy pracujących w klasie D nie ulegała przez wiele lat zbyt istotnym zmianom. Producenci skupiali się przede wszystkim na tym, żeby zwiększyć częstotliwość próbkowania sygnału analogowego, co umożliwiało przesunięcie dokuczliwych dla słuchu zakłóceń i zniekształceń poza pasmo słyszalnych częstotliwości. Innym klasycznym nurtem rozwoju tej grupy wzmacniaczy była optymalizacja ich parametrów do stosowania w torach niskotonowych, do którego to celu nadają się doskonale. Obecnie jednym z najistotniejszych obszarów stosowania wzmacniaczy impulsowych pracujących w oparciu o klasyczne mechanizmy opisane jako "klasa D" są wszelkiego typu "urządzenia przenośne: telefony komórkowe, notebooki, palmtopy, radiotelefony, a także odtwarzacze MP3, walkmany itp. To właśnie w takich aplika- -yRIH- imanie Rys. 8. nam 1WTP BVMU LPTOO ma HOSC PIIHP FOTDO CM J_ 100n CW-I-100n~ ca 10łJ Elektronika Praktyczna 2/2002 63 PODZESPOŁY Tab. 1. Zestawienie podstawowych parametrów wybranych wzmacniaczy audio klasy D. Na żółto zaznaczono wzmacniacze pracujące w sposób klasyczny, na zielono wzmacniacze, w których zastosowano udoskonalone techniki przetwarzania sygnału. Oznaczenie układu Rodzaj układu Maksymalna moc wyjściowa [W] Pasmo przenoszenia [Hz] Współczynnik zniekształceń dla mocy maks. [%] Napięcie zasilania [V] Sprawność [%] Producent TA1101 ZKM 2x10 20...22k 0,04 12 85 Tripath TA2020-020 ZKM 2x10(2x20) 20...22k 0,03 (5) 13,5 84 Tripath TA2022 ZKM 20x90(1x100) 20...22k 0,1 (1) ą12...ą35 87 Tripath TA0102A SKM 2x150(500) 20...22k 0,1 ą28...ą49 88 Tripath TA0103A SKM 2x250 (900) 20...22k 0,1 ą35...ą60 90 Tripath TA0104A SKM 2x500 (1k) 20...22k 0,05 ą55...ą92 87 Tripath TA2021 ZKM 2x20 20...20k 0,1 13,5 85 Tripath TA2024 ZKM 2x15 20...20k 10 13,5 85 Tripath TA3020 SKM 2x350 (2x300) 20...22k 1(0,1) ą15...ą65 90 Tripath DDX2000/ DDX4000 + DDX2060 SKM+ ZKM 2x45 10...22k 10 10...36 88 ApogeeTech. DDX2000/ DDX4000 + DDX2060 SKM+ ZKM 2x45 10...22k 10 10...36 88 ApogeeTech. PS9604 SKM - - - - - Pulsus PS97O2 SKM - - - - - Pulsus LX1720 SKM 2x10 10...20k 1 10...36 92 Linfinity (MicroSemi) LM4651+ LM4652 ZKM+ SKM 135 10...6k 1 ą11...ą22 85 National Semiconductor LM4663 ZKM 2,1 b.d. 1 4,5...5,5 83 National Semiconductor TPA005D12 ZKM 2x2 20...20k 0,5 4,5...5,5 80 Texas Instruments TPA005D14 ZKM 2x2 20...20k 0,2 4,5...5,5 80 Texas Instruments TPA032D01 ZKM 10 20...20k 0,5 8...14 77 Texas Instruments TPA032D02 ZKM 10 20...20k 0,5 8...14 77 Texas Instruments TDA7480 ZKM 7(10) b.d. 1(10) ą10...ą16 85 STM TDA7481 ZKM 18(13) b.d. 1(10) ą10...ą25 85 STM TDA7482 ZKM 25(18) b.d. 1(10) ą10...ą25 87 STM TDA7490 ZKM 2x25 (50) 1O...14,5k 10 ą10...ą25 89 STM TDA7490L ZKM 2x15(28) 1O...14,5k 10 ą10...ą25 86 STM TPA032D03 ZKM 10 20...20k 0,5 8...14 77 Texas Instruments TPA032D04 ZKM 2x10 20...20k 0,5 8...14 85 Texas Instruments TPA2000D1 ZKM 2 20...20k 1 2,7...5,5 75 Texas Instruments TPA2000D2 ZKM 2x2 20...20k 0,4 4,5...5,5 80 Texas Instruments TPA2000D4 ZKM 2x2 20...20k 1 3,7...5,5 65 Texas Instruments TPA2001D1 ZKM 1 20...20k 0,4 2,7...5,5 80 Texas Instruments TPA2001D2 ZKM 2x1 20...20k 0,5 4,5...5,5 80 Texas Instruments TPA3000D1 ZKM 17 20...20k 0,1 8...18 85 Texas Instruments ML6552 ZKM 5 20...32k 1 3...10 60 Microlinear ZXCD1000 SKM 25 20...20k 0,2 12.18 90 Zetex SA07 ZKM 200 2O...42k 1 5...40 94 Apex MAX4295 ZKM 2x2 20...20k 10 2,7...5,5 87 Maxim MAX4296 ZKM 2x2 20...20k 10 2,7...5,5 86 Maxim MAX4297 ZKM 2x2 20...20k 10 2,7...5,5 87 Maxim Uwagi: ZKM - oznacza wzmacniacz zintegrowany z końcówką mocy SKM - oznacza sterownik końcówki mocy Podane wartości parametrów zaczerpnięto z dokumentacji producenta. ważniejszymi wadami wzmacniania sygnałów za pośrednictwem modulacji PWM są: / Konieczność stosowania na wyjściu wzmacniacza dolnoprzepustowych filtrów LC przystosowanych do obciążeń wysokoprądowycłi (przykład pokazano na rys. 7). Ich zadaniem jest usunięcie sygnału próbkującego i jego harmonicznych z sygnału audio. Wraz ze wzrostem częstotliwości maleją co prawda wymiary (i ciężar!) dławików, ale rośnie ich cena, co często jest poważnym argumentem podczas doboru elementów. / Konieczność stosowania kosztownych tranzystorów mocy przystosowanych do pracy impulsowej. Parametr ten jest nabiera znaczenia zwłaszcza wtedy, gdy częstotliwość próbkowania jest wysoka (powyżej lMHz). / Wysokie wymagania jakościowe dotyczące płytek drukowanych i sposobu projektowania rozmieszczenia ścieżek na nich, co w wielu przypadkach ma negatywny wpływ na możliwość wprowadzenia urządzenia do masowej produkcji. Część z tych niedogodności, przede wszystkim związanych z koniecznością stosowania filtrów wyjściowych udało Rys. 9. się zminimalizować lub wręcz usunąć, czego doskonałym przykładem są wzmacniacze serii TPA2000, TPA2001 oraz TPA3000 produkowane przez Te-xas Instruments, które są przystosowane do pracy bez filtrów zewnętrznych. Przykład aplikacyjny takiego wzmacniacza pokazano na rys. 8. Możliwość zrezygnowania z filtru wyjściowego LC udało się uzyskać inżynierom Texas Instrumets dzięki zastosowaniu zmodyfikowanego sposobu zasilania głośników, który pokazano na rys. 9. Wykorzystano tutaj naturalną właściwość ludzkiego słuchu, polegającą na tłumieniu sygnałów o wyższych częstotliwościach - czyli po prostu filtracji dolnoprzepustowej. Zniekształcenia powstające w wyniku zasilania głośników sygnałem prostokątnym lokowane są znacznie powyżej 20kHz, która to częstotliwość jest uważana za graniczną dla ludzkiego słuchu. Przesunięcie takie z jednoczesnym znacznym obniżeniem poziomu generowanych zakłóceń było możliwe dzięki ograniczeniu natężenia prądu przepływającego przez głośnik. Jak widać na rys. 9 w stanie spoczynku (bez sygnału na wejściu) głośnik jest zasilany krótkimi szpilkami prądowymi, których częstotliwość wynosi (w przypadku TPA2001D1) aż 250kHz. Wraz ze wzrostem (lub maleniem poniżej zera) amplitudy sygnału wejściowego wypełnienie impulsów zmienia się, powodując zmianę średniej wartości prądu przepływającego przez głośnik. Jakkolwiek pomysł firmy Texas Instruments uprościł praktyczne stosowanie wzmacniaczy klasy D, to ich parametry nadal nie były do przyjęcia dla audionli. O tym, jak sobie poradzili z tym producenci układów napiszemy za miesiąc. Andrzej Gawryluk, AVT dodatkowe informacje Prezentowany w artykule zestaw wzmacniacza audio z układem ZXCD1000 udostępni! nam do testów dystrybutor firmy Zetex - firma Eurodis, tel. (71) 301-04-00, wroclaw@eurodis.com.pl. Dodatkowe informacje są dostępne w Internecie pod adresem www.zetex.com oraz na płycie CD-EP1/ 2002B. Noty katalogowe większości układów zawartych w tab. 1 publikujemy na płycie CD-EP2/2002B. 64 Elektronika Praktyczna 2/2002 NOWE PODZESPOŁY Programatory operacyjnych Układy MAX5420/MAX5421 są cyfrowo przełączanymi drabinkami rezystorów, przeznaczonymi do stosowania jako programatory wzmocnienia w układach wykorzystujących precyzyjne wzmacniacze operacyjne. Mogą one służyć zarówno do korekcji napięcia i prądu nie zrównoważenia, jak i do sterowanego cyfrowo przełączania zakresu wzmocnienia. Oba możliwe zastosowania elementu pokazują rysunki. Do sterowania pracą układu wykorzystywane są dwie linie DO i Dl. Kombinacja stanów logicznych na tych wejSciach umożliwia zmianę wzmocnienia układu w czterech zakresach: 1, 2, 4 i 8. Drabinki charakteryzują się +5V VIN +5V VOUT wzmacniaczy Jest JV\JYA\JV\ dużą dokładnoScią i stabilnoScią opornoSci w funkcji temperatury, która może wynosić nawet 0,025%. Układ może być zasilany pojedynczym napięciem +5V lub symetrycznie ą5V i pobiera prąd o wartoSci 3[iA. Układ MAX5421 wyposażono w dodatkowy rezystor, który może być użyty do kompensacji prądu wejSciowego wzmacniacza. Układy pracują w temperaturach od -40C do +85C i są dostępne w miniaturowych obudowach [iMAX 8 i 10 nóżkowych. http://pdfserv.maxim-ic.com/arpdf/ MAX5420-MAX5421.pdf Przedstawicielem Maxima w Polsce jest firma SE Spezial Electronic (tel. (0800) 16-00-39). +5V /DD MATCHLH VIN 1 MATCHJ. MAX5421 Rys. I. +5V Scalony termometr z interfejsem SMBus Jest CD Układ MC1066 firmy ON Se-miconductor należy do coraz liczniejszej grupy podzespołów których zadaniem jest nadzorowanie temperatury w urządzeniach elektronicznych np. komputerach. Pewną nowoScią w stosunku do innych tego typu rozwiązań jest zastosowanie dwóch wejSć pomiarowych. Jeden sensor znajduje się wewnątrz układu scalonego i może być użyty do pomiaru temperatury otoczenia, np. w obudowie nadzorowanego urządzenia. Drugim sensorem może być dioda lub tranzystor ze zwartym złączem B-K, który znaj- ON Semiconductor Formeriy a DMsion of Motorola ADDO ADD1 duje się wewnątrz procesora komputera. Układ MC1066 posiada cztery programowane punkty alarmu dla temperatur minimalnych i maksymalnych, których przekroczenie wywołuje alarm i zmianę stanu wyprowadzenia ALERT. Układ komunikuje się z zewnętrznym sterownikiem poprzez szeregową magistralę SMBus, której protokół jest bardzo podobny do I2C. Korzystając z magistrali można programować wewnętrzne rejestry układu ustalające m.in. punkty alarmu i odczytywać zmierzone temperatury: wewnętrzną i zewnętrzną. Układ posiada ustawiany przy pomocy wyprowadzeń ADDO i ADD1 swój unikatowy adres w systemie dzięki czemu może współpracować z innymi urządzeniami dołączonymi do magistrali. Napięcie zasilania MC1066 powinno mieS-cić się w zakresie 3 - 5,5V. Pobór prądu jest bardzo mały i wynosi zaledwie 180[iA. Temperatura pracy układu to -55 C do +125 C. Obudową jest 16-wyjSciowa QSOP. http://www.onsemi.com/pub/Collateral/ MC1066-D.PDF Przedstawicielami ON Semiconductor w Polsce są firmy: Arrow/Spoerle Electronic (tel. (22) 646-52-27), Silica (tel. (22) 634-47-36) i EBV Elektronik (tel. (71) 342-29-44). Elektronika Praktyczna 2/2002 65 NOWE PODZESPOŁY Bufor I2C Firma Linear Technology specjalizuje się w produkcji układów scalonych, których działanie i zakres zastosowań są bardzo pomysłowe. Tym razem uwagę konstruktorów firmy przyciągnęła magistrala I2C. Stosując układ LTC4300-1 można funkcjonalność tego typu magistrali rozszerzyć o właściwości znane ze standardu USB! Jedną z ważniejszych cech szybkiej magistrali szeregowej USB jest możliwość łączenia ze sobą urządzeń w nią wyposażonych przy włączonym napięciu zasilania. Dzięki LTC4300-1 tą samą sztuczkę uda się wykonać z magistralą I2C, bez obawy o zakłócenie trwającej transmisji w magistrali, do której dołączany jest nowy układ. Układ LTC4300-1 jest interfejsem buforującym linie SDA i SCL, który w dodatku wpływa na polepszenie jakości sygnału w długich liniach danych i zegara I2C. Dzięki jego zastosowaniu do działającego systemu można podłączać np. nowe karty rozszerzeń z wyposażone w interfejs I2C. Wyprowadzenia SCLIN i SCLOUT są dołączane do obydwu części linii SCL natomiast SDAIN i SDAOUT do linii SDA. Warunkiem prawidłowego zadziałania układu podczas dołączania nowej karty do magistrali I2C jest kolejność zasilania poszczególnych wyprowadzeń LTC4300-1. Najpierw powinny zostać połączone masy i zasilanie karty i systemu do którego jest dołączana. Pojawienie się zasilania spowoduje, że układ wykona kilka czynności. Najpierw wewnętrzne przełączniki układu rozłączą linie SCLIN I SCLOUT oraz SDAIN I SDAOUT. Następnie na wyprowadzeniach układu scalonego od strony karty pojawi się sekwencja sygnałów STOP a na wyprowadzeniach od strony systemu napięcia na liniach SDA i SCL przyjmą poziomy przeciwdziałające pojawieniu się zakłóceń w momencie fizycznego kontaktu linii sygnałowych karty i systemu. Następnie układ czeka aż napięcie zasilania ustabilizuje się i osiągnie wartość nominalną. W tym momencie wewnętrzne przełączniki układu LTC4300-1 łącząc ze sobą wyprowadzenia SDAIN i SDAOUT oraz SCLIN i SCLOUT układu, łączą linie SDA i SCL karty i systemu. Ponieważ układ posiada mechanizmy polepszające stromość zboczy transmitowanych sygnałów, dzięki temu możliwe jest przedłużanie magistrali lub zwiększenie liczby współpracujących układów. Rysunki pokazują sposoby dołączenia układów LTC4300-1 wykorzystujące ich właściwości. Układ działa przy zasilaniu od 2,7V do 5,5V i w temperaturach od -40C do +80C. Jest 'CD TECHNOLOGY Produkowany jest w obudowie MSOP. http://www.linear.com/pdf/43001i.pdf Przedstawicielami Linear Technology w Polsce są firmy: Eurodis (tel. (71) 301-04-00), Macropol (tel. (22) 822-43-37) oraz Memec-Insight (tel. (32) 238-03-60). BACKPLANE VCC SCL- SDA ENA Rys. 5. l/O PERIPHERAL CARD 1 R2 10k ENABLE SCLOUT. VCC SDAOUT LTC4300-1 SCLIN U1 SDAIN GND READY R3 1Ok CARD_SCL lR5 iOk CARD_SDA l/O PERIPHERAL CARD 2 R6 10k ENABLE SCLOUT SCLIN GND LTC4300-1 U2 VCC SDAOUT SDAIN READY R7T 1OkL C1 10n CARD_SCL |R8 liOk CARD SDA l/O PERIPHERAL CARD 3 R9 10k ENABLE SCLOUTLTC4300-1 SCLIN U3 GND VCC SDAOUT SDAIN READY C1 10n CARD SCL R10flR11 1OkMiOk CARD SDA VCC 2-WIRE SYSTEM 1 Ś4 SCL1- TOOTHER SYSTEM 1 DEVICES R4 10k -SDA1- U1 LTC4300-1 ENABLE VCC SCLOUT SDAOUT SCLIN SDAIN GND READY -Cl -10n R5 lOk R2 1k r LONG DISTANCE BUS 2-WIRE SYSTEM 2 C2 10n R6 lOk U2 LTC4300-1 VCC ENABLE SDAOUT SCLOUT SDAIN SCLIN READY GND f VCC R8 10k SCL1> TO OTHER SYSTEM 2 DEVICES -SDA1 Rys. 4. Elektronika Praktyczna 2/2002 NOWE PODZESPOŁY CAN w mikrokontrolerze Jut CROCHIP Tfte Embedded Controł Sołutlons Company Microchip wprowadził o pojemności 256B, której trwałość jest okreś- _, do sprzedaży cztery nowe I mikrokontrolery z rodziny PIClSF, które wyróżniają się na rynku przede wszystkim wbudowanym sprzętowym interfejsem CAN2.0B. Wbudowana w układy pamięć programu jest typu Flash, można ją programować 100000 razy, także w systemie poprzez interfejs CAN. Dla wygody użytkowników pro ducent wbudował w prezentowane mikrokontrolery nieulotną pamięć danych EEPROM lana na 1000000 cykli kasowanie-zapis. Zgodnie z dotychczasowymi trendami rozwojowymi obowiązującymi w rodzinie PIClSF, wszystkie mikrokontrolery wyposażono w szereg konfigurowalnych modułów peryferyjnych, w tym I2C, USART, SPI, ti-mery, analogowe komparatory oraz wielokanałowy, 10-bitowy przetwornik A/C itp. Zestawienie najważniejszych parametrów mi kro kontrolerów z grupy PICl8Fxx8 znajduje się w tab. 1. h ttp; ffwww. mi ero chi p. c om fdo wn lo ad fli i! plinefpicmicroffamiliesfl3fxx3f41l59a.pdf Przedstawicielami Microchip a w Polsce są firmy; Fuiure (iel {22} 813-92-02}, Gamma {tel. {22} 663-33-76} i Memec-Uniąue (tel. {32} 233-05-60}. Tab. 1. Zestawieiie lajwaziieiszych parametrów mikrohoitrolerów PlU18Fxx8. Typ układu PIC13F243 Pojemność pamięci programu 16334kB/Flash Pojemność pamięci danych RAM 763B Pojemność pamięci danych EEPROM 256B Liczba 1/0 23 Kanały ADC (10b) 5 Interfejsy szeregowe USART/I3C/SPI/CAN2OB Moduły PWM 1 Komparatory Timery 3x16b/1x3b/WDT Obudowa DIP/SOIC23 PIC13F253 32736kB/Flash 1536B 256B 23 5 USART/I3C/SPI/CAN2OB 1 - 3x16b/1x3b/WDT DIP/SOIC23 PIC13F443 16334kB/Flash 763B 256B 35 3 USART/I3C/SPI/CAN2OB 5 r-o 3x16b/1x3b/WDT DIP40/PLCC44/TOFP44 PIC13F453 32736kB/Flash 1536B 256B 35 3 USART/I3C/SPI/CAN2OB 5 r-o 3x16b/1x3b/WDT DIP40/PLCC44/TOFP44 PIC13C653 32736kB/OTP 1536B - 52 r-o USART/|3C/SPI/CAN2 0B r-o r-o 3x16b/1x3b/WDT TOFP64/PLCC63 PIC13C353 32736kB/OTP 1536B - 63 16 USART/I3C/SPI/CAN2OB r-o r-o 3x16b/1x3b/WDT TOFP30 Przetwornica jak układ scalony Jast "CD Przetwornice DC/DC z nowej rodziny NTA o mocy wyjściowej lW, produkowane przez firmę C&D Technologies (niegdyś Newport Components] są dostarczane w obudowach 0 rozstawie wyprowadzeń zgodnym z rozstawem wyprowadzeń standardowej obudowy SOPlS, stosowanej dla tradycyjnych ulda-dów scalonych. Pomimo niewielkich wymiarów napięcie przebicia pomiędzy wejściem 1 wyjściem wynosi aż lkV, a przetwornica może pracować z pełnym obciążeniem w ca- lym dopuszczalnym zakresie temperatury -4O...+85C. W ramach rodziny NTA są oferowane przetwornice o nominalnym napięciu wyjściowym 3,3/5 i 12V i symetrycznym wyjściu. Szczegółowe zestawienie podstawowych danych technicznych przetwornic znajduje się| w tab. 2. TECHNOLOGIES Tab. 2. Zestawieiie lajwaiiiejszych parametrów przetwonic rodzjiirNT Typ przetwornicy NTA031 2M NTA031 5M NTA0505M Napięcie wejściowe [V] 3,3 3,3 5 Napięcie wy jści owe [V] ą12 ą15 ą5 Prąd obciążenia ImA] ą42 ą33 ą100 Prąd wejściowy (dla obciążenia nominalnego) ImA] 390 392 290 Sprawność I%] 77 77 69 Pojemność przejściowa IpF] 40 42 33 MTTF Ihx1000] 375 206 1697 NTA0509M 5 ą9 ą55 267 75 38 682 NTA051 2M 5 ą12 ą42 260 77 44 343 NTA051 5M 5 ą15 ą33 256 78 43 188 NTA1205M 12 ą5 ą100 121 69 50 559 NTA1209M 12 ą9 ą55 113 74 72 375 NTA1212M 12 ą12 ą42 111 75 89 243 NTA1215M 12 ą15 ą33 110 76 100 154 http; ffwww. cdncl.com/cd/prod u cis f dc_ c on ver tersfp dffn ta.pdf Przedstawicielami firmy C&D Technologies w Polsce są firmy; JM Elektronik {tel. {32} 339-69-00} oraz Memec-Insighi {iel. [32} 233-03-60}. 1TTF- średni czas pomiędzy awariami Elektronika Praktyczna 2/2002 67 NOWE PODZESPOŁY Zasilacz białych LED-ów Jak się okazuje, coś nowego można wnieść nawet do tak banalnego zadania, jakim jest zasilanie diod LED. Układ LTC3202 firmy Linear Technology skonstruowany został specjalnie z myślą o zasilaniu białych diod elektroluminescencyjnych. Układ scalony, będący w istocie przetwornicą, zapewnia stałą C2 IM C3 IM 7 |9 jasność świecenia diod nawet wtedy, gdy źródła napięcia zasilania zmienia się w czasie, co dotyczy np. baterii. Do funkcjonowania układu nie są potrzebne żadne induk-cyjności a jedynie cztery kondensatory ceramiczne o pojemności l|xF. Przy zasilaniu napięciem o wartości 2,7V...4,5V układ można obciążyć diodami LED pobierającymi mak- 6 Programowanie iq Jasności świecenia i VIN-3V..,4LV C1+ C1-DO CS+ C2-VOJT Di LTC3202 VIN Rys. ó. __i__ Cl IM GND FB Prąd całkowity od0cto125mA C4 36 36 36 unwL
TECHNOLOGY symalnie do l25mA. Dodatkowo można wybrać, za pomocą dwóch wejść DO i Dl, jeden z czterech poziomów jasności świecenia. Układ zapewnia tzw. "miękki start", gdy po włączeniu zasilania prąd obciążenia narasta łagodnie w czasie 200|Xs. Posiada także zabezpieczenie przeciwzwarciowe i termiczne przetwornicy. Istnieje możliwość wprowadzenia układu w stan uśpienia, w którym prąd pobierany ze źródła zasilania jest mniejszy od l|xA. Zakres temperatur w jakich układ może pracować to -40C... + 80C. Obudowa MSOP o 10 wyprowadzeniach. http;//www.linear. com/prod/data s-heet.html?datasheet=735 Przedstawicielami Linear Technology w Polsce są firmy; Eurodis {tel. {71} 301-04-00}, Macropol {tel. {22} 322-43-37} oraz Memec-lnsighi {tel. {32} 233-03-80}. Więcej niż półprzewodnikowy termometr Układ oznaczony symbolem DS1851 może spełniać podwójną rolę: - może być użyty jako 12-bitowy termometr mierzący temperaturę w zakresie od -40C do +95C, - może także służyć jako element kompensujący zmiany temperatury w złożonych urządzeniach elektronicznych - do tego Rys. 7. celu układ wyposażono w termometr, dwa przetworniki cyfrowo-a nałogowe i pamięć EEPROM. Wykorzystując układ jako zwykły termometr, wartość temperatury przetworzonej na 12-bitową liczbę dwójkową można odczytać korzystając z magistrali I2C. Konwersja temperatury wykonywana jest nieprzerwanie, a wyniki zapisywane są w rejestrach do odczytu co lOms. Druga z wymienionych funkcji układu polega na wytwarzaniu przez wewnętrzne przetworniki poziomu napięcia proporcjonalnego do aktualnej temperatury zewnętrznej. Takie napięcie może być użyte do korekcji pracy innych układów, np. wysokostabilnych generatorów lub przetworników. Istota rozwiązania oferowanego przez układ polega na tym, że zależność między zmianą temperatury, a wytwarzanym na jego wyjściach napięciem kompensacji ' wcale nie musi być liniowa. Oba przetworniki pobierają bowiem dane do kon-. wersji z wewnętrznych, 40-bajtowych W* DAC-G l-bttDAC-Y
tablic zapisanych w pamięci EEPROM. Zmiana temperatury o 4C (obniżenie lub podwyższenie] powoduje pobranie przez przetwornik danych do konwersji z kolejnej komórki tablicy. Wartości zapisane w tablicach mogą być już wcześniej dowolnie modyfikowane i zapisane przez użytkownika. Tym samym zależność napięcia kompensującego od temperatury może być dowolnie kształtowana zgodnie z potrzebami konkretnego, korygowanego temperaturowo obwodu. Na rysunku pokazano struktura wewnętrzna układu. Dwa 8-bitowe przetworniki dostarczają napięcia kompensacji na wyjścia OutV i OutG. Zakres napięć wyjściowych zależy od poziomu napięć odniesienia dołączanych do wejść Vrg i Vrc. Do zasilania układu potrzebne jest napięcie 3...5,5V. Pobór prądu nie przekracza 3mA. Układ jest dostępny w obudowach typu TSSOP8. http://pdfserv.niaxini-ic.coni/arpdf/ DSl35lE-010.pdf Przedstawicielem Maxima w Polsce jest firma SE Sfjezial Electronic {tel. {0300} 18-00-39). Miniaturowa antena do Bluetooth Jest Firma Phycomp opracowała ultra miniaturową antenę ceramiczną do przenośnych systemów komunikacyjnych, ze szczególnym uwzględnieniem Bluetooth, bezprzewodowych kart sieciowych WiFi, a także innych urządzeń radiowych pracujących w pasmach 2,45/ 2,60/2,70GHz. Szerokość pasma największej skuteczności anteny wynosi lOOMHz, maksymalna rozpraszana moc wynosi lW, a impedancja falowa jest równa 50Q. Phfcomp A FORMER PHILIPB COMPANT Ś Najpoważniejszym atutem anteny BT245.1 są niewielkie wymiary (7,35x5,5x1,3mm], mała masa (zaledwie 0,15g], a także łatwość montażu uzyskana dzięki zastosowaniu obudowy przystosowanej do montażu powierzchniowego. http://www.phycomp-components.com/ pdfZbi245.1.pdf Przedstawicielem firmy Phycomp w Polsce jest firma Avnet Macropol {tel. {22} 322-43-37). 68 Elektronika Praktyczna 2/2002 SPRZĘT Generator arbitrarn Nie mam pewności, czy określenie generator arbitrarny jest najwłaściwsze. Wynika ono bowiem z przejęcia angielskiego terminu aibitiaiy generator. Poprawniejsze (słownikowo) byłoby użycie wyrazu arbitralny, ale tytułowa nazwa - zdaje się - przyjęła się już w slangu technicznym, więc przy niej pozostaniemy. Czym charakteryzuje się ów tajemniczy przyrząd? Każdy, nawet począt- I Akwiiilitor ROHURAM Er mm* C/A -> FHTD.R Rys. kujący elektronik, zapewne spotkał się z generatorem funkcyjnym. Początkowo przyrządy te były konstruowane z wykorzystaniem elementów dyskretnych, z których budowano elementarne bloki, takie jak: generator VCO, integrator, zespół komparatorów, układ kształtujący (najczęściej diodowy), wtórnik wyjściowy. Takie bloki, odpowiednio połączone, umożliwiały stosunkowo łatwe wytworzenie sygnału prostokątnego, piło kształtnego i sinusoidalnego. Dużym atutem była możliwość płynnej regulacji częstotliwości za pomocą napięcia, a to z kolei pozwalało stosunkowo łatwo realizować układy modulacją częstotliwości. W miarę rozwoju technologii, powstało wiele odmian scalonych generatorów funkcyjnych, działających zapewne z powodzeniem do dzisiaj w wielu pracowniach. Omawiany tu generator SFG-8 30 posiada wszystkie wymienione wyżej cechy, chociaż działa na zupełnie innej zasadzie. Technika cyfrowa, wkraczająca dosłownie wszędzie, dała i tu znać o sobie. Wszystkie rodzaje sygnałów wyjściowych generowane są Generatory arbitralne, to przyrządy nowej generacji, rozwijające się m.in. dzięki nowym technologiom i rozwinięciu wcześniej stosowanych technik. Zapewniają zupełnie nową jakość w dziedzinie pomiarów, nie ty!ko wskutek swoich parametrów, ale również dzięki swym walorom funkcjonalnym. w tym przyrządzie metodami syntezy częstotliwości, przy czym zastosowano nową technikę, nazwaną: Diiect Digital Synihesis (DDS), którą zilustrowano na rys. 1. Daje ona możliwość uzyskania niezwykłej wręcz rozdzielczości częstotliwości. Kształty generowanych przebiegów są zapisane jako 12-bitowe słowa w pamięci ROM lub RAM. Możliwość wykorzystania RAM-u od razu nasuwa skojarzenie, że mogą w tej pamięci być zapisywane kształty określone przez użytkownika. I tak jest w istocie. Jest to właśnie wyróżniająca cecha gene- Elektronika Praktyczna 2/2002 69 SPRZĘT ratorów arbitrarnych. W każdym takcie zegara systemowego jest wyliczany odpowiedni adres komórki pamięci, zawierającej dyskretną wartość sygnału wyjściowego. Wyliczenie to uwzględnia adres poprzedni i specjalny współczynnik k, ustalający generowaną częstotliwość. To od niego zależy rozdzielczość częstotliwości. W SFG-830 długość słowa k wynosi 32 bity, a ponieważ krok częstotliwości opisany jest zależnością Bi=ij2k, to przy zastosowanym zegarze systemowym uzyskano parametry, jak w tab. 1. Odczytane z pamięci 12-bitowe słowo jest podawane na przetwornik cyfrowo-analogowy. Niepożądane pozostałości jego działania eliminuje filtr dolnoprzepustowy, za którym jest jeszcze dołączony wzmacniacz wyjściowy i tłumik o regulowany tłumieniu. W rzeczywistości budowa generatora jest nieco bardziej złożona, lecz dokładne jej omówienie przekroczyłoby ramy tego artykułu. Można tu jedynie powiedzieć, że generowanie przebiegu sinusoidalnego, prostokątnego i trójkątnego przebiega nieco odmiennymi torami. Dodatkowo, jako jeden z domyślnych kształtów, "zaszyty" jest też przebieg piło kształtny. Rozbudowa układu, związana jest również z możliwością uzyskiwania modulacji amplitudy, częstotliwości i fazy, a także liniowego lub logarytmicznego wobulowania częstotliwości wyjściowej za pomocą wewnętrznej fali trójkątnej lub piło kształtnej. Nie trzeba chyba dodawać, że generator wyposażony jest również standardowo w interfejs RS232 oraz opcjonalnie w GPIB (zgodny z normą IEE-E433.2 i SCPI). W instrukcji szczegółowo omówiono składnię rozkazów przesyłanych do generatora, umożliwiających jego zdalną obsługę. Zawarto także przykładowe procedury napisane w języku C, które mogą stanowić inspirację do napisania własnych procedur, uwzględniających potrzeby użytkownika. Dzięki temu, w stosunkowo prosty sposób można zbudować stanowisko pomiarowe o całkiem sporych możliwościach. Wymiary i waga generatora (214x39x37Omm, 5kg) kwalifikują go zdecydowanie do klasy przyrządów laboratoryjnych. Potwierdza to również fakt zastosowania 11-cyfrowego pola odczytowego, złożonego z 7-seg-mentowych wyświetlaczy LED o wysokości 11 mm. Konstruktorzy zdecydowali się na takie rozwiązanie, nawet mimo konieczności wyświetlania informacji tekstowych. Literki, siłą Tab. 1. Parametry generatora SFG-830. Generowane przebiegi sinus, t rój kąt. piła. prostokąt, definiowany przez użytkownika, prostokąt TTL (synchronizacja) Zakres częstotliwości sinus, prostokąt 20mHz-30MHz trójkąt 100mHz-100kHz piła 10mHz-100kHz Rozdzielczość częstotliwości sinus, prostokąt 20mHz trójkąt, piła 10mHz Dokładność częstotliwości ą10 ppm Długoterminowa stabilność częstotliwości ą5 ppm/rok Amplituda zakres 10rnV-10VPP(50 0hrn) w 8 zakresach ponadto musi być spełniony warunek IVMreJ+IVDCk5V rozdzielczość 3 cylry Ottset DC zakres ą5V(50 0hm) ponadto musi być spełniony warunek IVMreJ+IVDCk5V rozdzielczość 3 cylry Przebieg sinusoidalny harmoniczne DC-100kHz -50dBc 0,1MHz-1MHz -40dBc 1MHz^10MHz -30dBc 10MHz-30MHz -25dBc Przebieg prostokątny czas narastania/ opadamazbocza <15ns asymetria ą1% okresu+4ns Przebieg trójkątny i piloksztaltny liniowość ą0,1% pełnego zakresu wyjściowego Przebieg użytkownika. zakres próbkowania 42 949600MHZ/N, gdzieN=8,10,12, ,215 liczba próbek 12000 Wobulaqa typ li ni owa lub log arytmiczna zakres częstotliwości 200mHz-30MHz czasprzemiatama 0,01s-100s Modulacja AM sygnałem zewnętrznym, sygnałem wewnętrznym (sinus, trójkąt, piła, prostokąt) częstotliwość modulująca 10mHz-10kHz (przebiegiem wewnętrznym), <50kHz (przebiegiem zewnętrznym) napięcie modulujące ą5V(100% modulacja) impedancjawejścia zewnętrznego sygnału modulującego 100 kO FM sinus, trójkąt, piła, prostokąt częstotliwość modulująca 10mHz-10kHz dewiacja 30tnHz (100kHz dla przebiegu trójkątnego i piłokształtnego) zakres zmianylazy dla modulacji PSK 360 stopni częstotliwość modulująca 20Hz-10kHz rzeczy są nieco koślawe, ale nie pojawiają się zbyt często, więc można się do nich przyzwyczaić, tym bardziej, że wyświetlane znaki są bardzo wyraźne, niezależnie od oświetlenia zewnętrznego. Na płycie czołowej oprócz wyświetlacza, znajduje się jeszcze wyłącznik zasilania, gniazdo BNC przeznaczone dla przebiegu wyjściowego i takie samo dla sygnału synchronizacji (poziom TTL) oraz klawiatura. Z tyłu natomiast umieszczono gniazdo BNC dla zewnętrznego sygnału modulującego (modulacja AM) oraz wyjściowe gniaz- do sygnału modulującego, gdy do modulacji wykorzystywany jest jeden z wewnętrznych przebiegów. Na gnieździe wyjściowym (na płycie czołowej) występuje wtedy przebieg zmodulowany. Również z tyłu, poniżej wentylatora znajduje się 25-pinowe, żeńskie gniazdo interfejsu RS232. Niestety na wyposażeniu standardowym nie ma kabla łączącego generator z komputerem. Jest to pewne utrudnienie, gdyż gniazda 25-pinowe we współczesnych komputerach PC już nie występują, więc i zdobycie odpowiedniego kabla nie jest łatwe. 70 Elektronika Praktyczna 2/2002 SPRZĘT Rys. 2. Mimo dość "groźnie" wyglądającej płyty czołowej, obsługa generatora jest prosta, a to za sprawą bardzo czytelnie napisanej instrukcji obsługi. Klawiatura jest podzielona na cztery, wyraźnie oznakowane sekcje. Pierwsza z nich służy do wyboru rodzaju generowanego przebiegu oraz jego parametrów, takich jak: częstotliwość, amplituda, przesunięcie (offset} i faza (dla przebiegów z modulacją PSK). Po wybraniu danego parametru, można dalej ustalać jego wartość krokowo za pomocą klawiszy strzałek lub bezpośrednio wprowadzić ją z klawiatury numerycznej. Wartość kroku jest oczywiście ustalana dowolnie przez użytkownika. Dla amplitudy można określić jednostkę: Vpp, Vrms, dBm, a dla częstotliwości: Hz, kHz, MHz. W sekcji "sweepfmodulate" dokonuje się wyboru rodzaju modulacji oraz jej parametrów, takich jak np.: częstotliwość nośnej, głębokość modulacji (AM), dewiacja (FM), przesunięcie fazy (PSK). Dla sygnału wobulowanego ustala się: czas trwania wobulacji, częstotliwość początkową i końcową oraz charakter przestrajania - liniowy lub logarytmiczny, przebiegiem piłok-ształtnym lub trójkątnym. We wszystkich przypadkach wybiera się także kształt fali nośnej. Nie może nim być jednak przebieg zdefiniowany przez użytkownika. W ostatniej sekcji klawiatury zawarto blok numeryczny oraz klawisze wprowadzania jednostek, sterownia interfejsami, a także inicjowania procedury programowania własnego kształtu. Trzeba przyznać, że ostatnia z wymienionych czynności jest zajęciem dla tylko osoby cierpliwej, najlepiej na długie, zimowe wieczory. Trudno sobie wyobrazić, by komuś udało się wprowadzić dane o 12000 próbek zwłaszcza, że wewnętrzne oprogramowanie nie daje możliwości np. ich blokowego kopiowania, przenoszenia itp. Irytujące jest również to, że nie można płynnie przechodzić po kolejnych danych, trzymając cały czas naciśnięty klawisz strzałki. Każde przejście musi być zaznaczone kliknięciem. Zdając sobie sprani Dp.g b* wę ze wszystkich tych niedogodności, producent na szczęście dostarcza w standardowym wyposażeniu program do "generowania" odpowiedniego kształtu, za pomocą myszki, na ekranie komputera PC. Dane tak utworzonego przebiegu są następnie transmitowane poprzez jeden z interfejsów do generatora. Program pracujący w środowisku Windows 95/98 nie wymaga żadnej instalacji, jedynie przekopiowania do własnego foldera. Nie rzuca on swymi możliwościami "na kolana", ale wystarcza do ręcznego utworzenia dowolnego kształtu. Na pewno jest to łatwiejsze niż w przypadku ręcznego wprowadzania danych. Na rys. 2 widać ekran roboczy podczas tworzenia przykładowego przebiegu. Dużym ułatwieniem dla użytkownika jest udostępnienie w programie kilku rodzajów standardowych przebiegów. Są to: sinus, trójkąt, prostokąt, piła, sin(x)/x, rosnąca i opadająca krzywa wykładnicza, szum oraz wartość stała. Trzeba jednak pamiętać o cyfrowym pochodzeniu szumu. Wartości chwilowe, choć wygenerowane pseudolosowo, powtarzają się w najlepszym przypadku co 12000 taktów zegara próbkującego. Jak w większości okienkowych programów, można poprzez schowek kopiować lub przenosić fragmenty tworzonych kształtów. Ponadto istnieje możliwość wykonywania na fragmentach danych, operacji matematycznych, takich jak dodawanie, odejmowanie, mnożenie, a także korzystania z inwersji, odbicia lustrzanego oraz ustalenia wartości bezwzględnej. Program jest bardzo dokładnie (powiedziałbym nawet, że aż za bardzo) opisany w oddzielnej instrukcji. Podczas prób brakowało mi w nim jednak kilku elementów, jak np. powiększanie wybranego przeze mnie okienka pola roboczego, czy przesuwania go za pomocą łapki, jak w wielu programach graficznych. Przydałaby się również możliwość edycji wartości numerycznych, gdyż ruchy myszki nie zawsze są wystarczająco precyzyjne, a poprawianie danych w generatorze, jak już pisałem wyżej, nie jest zbyt wygodne. Na zakończenie trzeba wspomnieć o jeszcze jednej właściwości generatora SFG-830. Nie wiem, czy zaliczyć ją do zalet, czy wad. Producent udostępnia szereg procedur kalibrujących. Wyregulować i sprawdzić można dosłownie wszystko. Podane są nawet oznaczenia elementów, którymi "podkręca" się wybrane parametry. Część regulacji dokonuje się programowo, korzystając z klawiatury i udostępnionych kodów dla poszczególnych procedur, bez rozkręcania obudowy. Niestety, wszystko to stwarza możliwość wręcz destrukcyjnego roz-kalibrowania przyrządu. Dla podkreślenia powagi sytuacji wymienię choćby kilka parametrów, na które ma wpływ użytkownik. Są to np. tłumienie wartości dodatnich i ujemnych (niezależnie), amplituda dla każdego rodzaju przebiegu, offset, symetria fali prostokątnej, wzmocnienie stałoprą-dowe w poszczególnych trybach pracy. Wszystko to odbywa się czasami w kilkudziesięciu podzakresach, a parametry zapisywane są jako 11-bito-wa dana ze znakiem. Podczas testowania generatora odniosłem bardzo pozytywne wrażenie związane z jego funkcjonalnością. Dech w piersi zapierały również parametry techniczne. To naprawdę duża przyjemność, gdy można ustawić np. częstotliwość 123456,78Hz. Co do przydatności własnych przebiegów w pomiarach, poza typowymi, nie mam już tak jednoznacznej opini-i, ale taki jest ogólnoświatowy trend, więc coś w tym musi być. Jedno z możliwych zastosowań, jakie mi się nasuwa, to symulowanie prawie dowolnej odpowiedzi układu na zadane wymuszenie. Przydałoby się do tego jednak jeszcze, gdyby własny przebieg mógł być generowany jednorazowo, np. pod wpływem jakiegoś sygnału wyzwalającego lub po wyzwoleniu ręcznym z klawiatury. Ale to jest tylko takie moje marudzenie. Sprzęt jest naprawdę rewelacyjny. Jarosław Doliński jdolin@optimus.waw.pl Dodatkowe informacje Przyrząd do testów w redakcji udostępnitaf irma NDN, tel./lax. (22) 641-15-47, (22) 641-61-96, e-mail: ndn@ndn.corn.pl., www.ndn.corn.pl 72 Elektronika Praktyczna 2/2002 PROGRAMY Profesjonalny system wspomagający projektowanie układów elektronicznych Zapraszamy do lektury ostatniej już części artykułu o systemie ORCAD. Mamy nadzieję, że cykl artykułów pozwolił naszym Czytelnikom wyrobić sobie własny pogląd na temat prezentowanego oprogramowania. Ułatwił także pierwszy kontakt z tym produktem. Kontynuujemy prezentację edytora PCB. Podobnie jak w dwóch poprzednich częściach, opiszemy kolejne czynności prowadzące do otrzymania pełnej dokumentacji projektu obwodu drukowanego. Edytor płytek drukowanych, częsc 3 Po ustawieniu parametrów i właściwości projektowanej płytki, możemy rozpocząć rozmieszczanie elementów, Edytor LAYOUT umożliwia rozmieszczanie ręczne lub automatyczne przy wykorzystaniu funkcji auioplacemeni. Niezależnie od tego, czy stosować będziemy funkcję auioplacemeni, czy też poszczególne komponenty układać będziemy ręcznie, w LAYOUT mamy do dyspozycji kilka funkcji wspomagających ten etap projektowania. W przypadku stosowania trybu auio w pierwszym kroku należy wybrać strategię rozmieszczenia elementów, definiowaną w odpowiednim pliku z opisem strategii (siraiegy file). Edytor LAYOUT zawiera w bibliotekach kilka plików strategii determinujących działanie funkcji automatycznego rozmieszczania komponentów w zależności od różnych parametrów. Opis wszystkich dostępnych plików tego typu dostarczany jest w dokumentacji edytora LAYOUT. Wybór pliku strategii dokonywany jest za pomocą polecenia LOAD dostępnego ^ z poziomu MENU>FILE. Wygląd okna programu po wczytaniu przykładowej listy połączeń pokazano na rys. 16. Układanie elementów na płytce może być realizowane na różne sposoby. Możemy mianowicie wybrać polecenie auioplace w odniesieniu do wszystkich elementów projektu, rozmieścić elementy ręcznie wykorzystując możliwość ich grupowania lub ułożyć je indywidualnie. Pierwszy sposób może być stosowany do szerokiej gamy różnych projektów, niezależnie od stopnia ich skomplikowania, i jest całkowicie automatyczny. W tym przypadku edytor sam troszczy się o poprawne rozmieszczenie komponentów, uwzględniając przy tym gęstość połączeń, z jaką będzie musiał poradzić sobie autorouter. Alternatywną metodą projektowania jest samodzielne połączenie wybranych komponentów w grupy. Część lub całość pracy wykonujemy wówczas ręcznie. Grupowanie dowolnej liczby elementów - reprezentujących specyficzną część układu elektronicznego, np. obwód zasilający -gwarantuje nie tylko minimalizację długości połączeń, ale pozwala również na ulokowanie powiązanych funkcjonalnie komponentów w tym samym i__i "" __la^Oki__!__i__ -es i i __1__1__B__ 1rŚł t iZziS-------a Rys. 17. Elektronika Praktyczna 2/2002 73 PROGRAMY Rys. 18. obszarze płytki. W przypadku projektowania płytki z zastosowaniem grupowania elementów możemy wspomagać się funkcją auioplacemeni. Trzecim sposobem rozmieszczania elementów jest tzw. individual compo-neni placemeni. Położenie dowolnego elementu możemy w tym przypadku określić samodzielnie, przy czym ewentualne wsparcie funkcji auioplacemeni polega na automatycznym przesuwaniu komponentów znajdujących się już na płytce, gdy aktualnie nanoszony element powoduje z nimi kolizję. Uruchomienie funkcji auioplacemeni w odniesieniu do wszystkich komponentów danego projektu jest bardzo proste. W tym celu wystarczy kliknąć na poleceniu EOARD znajdującym się w MENU>AUTO>PLACE. Działanie tej funkcji jest realizowane w pięciu fazach głównych, które powtarzane są określoną liczbę razy, a każde powtórzenie może przy tym zawierać kilka prób. Główne fazy realizacji funkcji to: - Faza 0 - PROXIMITY PLACE - analiza powiązań elementów z uwzględnieniem występujących pomiędzy nimi połączeń elektrycznych. - Faza 1 - ASSIGN CLUSTERS - połączenie elementów powiązanych elektrycznie w grupy, tzw. clusiers. Proces ten nie dotyczy komponentów zgrupowanych przez użytkownika oraz umocowanych (pojęcie to omówimy za chwilę). - Faza 2 - PLACE CLUSTERS - analiza połączeń elektrycznych między po- r Firn* Rys. 19. szczególnymi (wyznaczonymi wcześniej) grupami elementów oraz pomiędzy grupami elementów, a elementami umocowanymi. - Faza 3 - PROXIMITY PLACE - rozmieszczenie elementów na płytce przeprowadzone na podstawie analiz wykonanych w poprzednich fazach. - Faza 4 - SWAP COMPS - zamiana miejscami elementów sąsiadujących ze sobą i sprawdzenie czy można wówczas zredukować długości połączeń i liczbę skrzyżowań wytyczanych ścieżek. - Faza 5 - ADJUST COMPS - sprawdzenie i ewentualna korekta położenia elementów nachodzących na siebie. Poza opisanymi powyżej, w LAYOUT dostępne są jeszcze inne fazy działania funkcji auioplacemeni. Ich aktywacja oraz zmiana parametrów działania poszczególnych faz realizowana jest poprzez okno PLACE PASS (rys. 17), które uruchamiamy poleceniem P LA CEMENT STRATEGY z poziomu ME-NU>OPTIONS. Edycja właściwości związanych z poszczególnymi fazami jest możliwa po dwukrotnym kliknięciu lewym klawiszem myszki na wybranej komórce okna PLACE PASS. Wykonanie tej operacji powoduje bowiem uruchomienie okna EDIT PLACE PASS (rys. 18), pozwalającego modyfikować parametry realizacji opisanych faz. Po uruchomieniu funkcji auioplacemeni, proces rozmieszczania elementów realizowany jest automatycznie, a procentowy postęp wykonania jest odzwierciedlany na pasku statusu w dolnej części okna głównego. W przypadku, gdy projektowany obwód drukowany zawiera komponenty, których położenie na płytce jest ściśle określone, przed wykonaniem funkcji auioplacemeni powinniśmy je odpowiednio "zabezpieczyć". Dotyczy to najczęściej takich elementów, jak różnego rodzaju złącza, otwory montażowe, itp., które ze względów mechanicznych lub termicznych (lokalizacja radiatorów) muszą być ulokowane w określonym miejscu. Jeżeli nasz projekt zawiera podobne elementy, powinniśmy je najpierw umieścić w żądanym miejscu ręcznie, a następnie (przed wykonaniem funkcji auioplacemeni} zaznaczyć jako FIXED lub LOCKED. Operacja "kotwiczenia" elementu (grupy elementów) polega na jego zaznaczeniu lewym klawiszem myszki i wybraniu polecenia FIX lub LOCK z pop-menu. Polecenie LOCK działa w sposób tymczasowy, a zdjęcie blokady następuje po kliknięciu w zakotwiczony element, a następnie wybraniu polecenia OK "w uaktywnionym wówczas okienku dialogowym. W przypadku polecenia FIX, proces odkotwi-
00 Cn 1 mu TOP 1 HBor WJw PIH |
r~~\ fr 1 i"W 1 Rys. 20. czania jest nieco bardziej złożony i możliwy tylko z okna EDIT COMPO-NENT, które otwieramy np. poprzez kliknięcie na interesującym nas elemencie lewym klawiszem myszki i wybraniu polecenia PROPERTIES. W uaktywnionym w ten sposób oknie dialogowym EDIT COMPONENT (rys. 19) należy usunąć znacznik w polu FIXED. Jak łatwo się domyślić, komenda FIX skierowana jest raczej do tych fragmentów projektu, których lokalizacja na płytce powinna być stała (np. otwory montażowe) natomiast LOCK dla tych elementów, które chcemy "zabezpieczyć" chwilowo. W przypadku "ręcznego" rozmieszczania, elementy projektowanego układu możemy układać indywidualnie lub grupami. W celu zgrupowania określonych elementów należy je zaznaczyć lewym przyciskiem myszki przy wciśniętym klawiszu CTRL, otworzyć okno EDIT COMPONENT (w sposób opisany powyżej), a następnie w polu GROUP podać numer, który będzie definiował daną grupę elementów. W celu umieszczenia grupy w określonym miejscu płytki należy kliknąć na ikonie COMPONENT (na palecie narzędzi), wybrać komendę SELECT ANY z pop-menu i w otwartym w ten sposób oknie COMPONENT SELECTION CRITERIA (rys. 20) w polu GROUP NUMEER wprowadzić odpowiedni numer grupy i kliknąć OK. Wybraną grupę elementów ustawiamy w żądanym miejscu za pomocą myszki, po wybraniu z pop-menu polecenia MAKE. Należy zwrócić uwagę, że poszczególne grupy elementów w trybie RECONECT prezentowane są na monitorze jako okręgi o określonej powierzchni (uruchomienie trybu RECONECT następuje po wciśnięciu ikony RECONECT, znajdującej się na palecie narzędzi). Po ręcznym ustawieniu grupy w wybranym miejscu na płytce, elementy składowe możemy rozdzielić poleceniem EREAK dostępnym z poziomu pop-menu. Edytor LAYOUT pozwala również na automatyczne ustawianie elementów zgrupowanych. Należy w tym wypadku kliknąć lewym klawiszem myszki na żądanej grupie, a następnie wybrać komendę QUICK PLACE dostępną pod 74 Elektronika Praktyczna 2/2002 PROGRAMY ge: St-
JtsŁ. Rys. 21. prawym klawiszem. Po rozłożeniu elementów możemy przejść do wytyczania ścieżek połączeniowych. Zanim rozpoczniemy ten etap warto przeanalizować gęstość połączeń występującą przy przyjętym rozkładzie elementów oraz sprawdzić czy na bieżącym etapie projekt nie zawiera błędów. Analiza gęstości połączeń przeprowadzana jest przez edytor automatycznie, a odpowiednią funkcję odzwierciedlającą wyniki analizy uruchamiamy za pomocą polecenia DENSITY GRAPH dostępnego z poziomu MENU>VIEW. Użycie tego polecenia powoduje uruchomienie okna DENSITY (rys. 21), które w sposób graficzny prezentuje zagęszczenie połączeń na projektowanej płytce. Sprawdzenie projektu pod kątem ewentualnych błędów w zakresie rozmieszczenia elementów przeprowadzamy za pomocą polecenia DESIGN RU-LE CHECK dostępnego z poziomu ME-NU>AUTO. Użycie tego polecenia powoduje uaktywnienie okna CHECK DESIGN RULES, w którym należy zaznaczyć pole PLACEMENT SPACING VIO-LATIONS, a następnie kliknąć OK. W przypadku stwierdzenia błędów, edytor automatycznie zaznacza je odpowiednimi znacznikami i sygnalizuje dodatkowym komunikatem. LAYOUT umożliwia wytyczanie ścieżek połączeniowych między elementami ręcznie lub automatycznie. Zanim rozpoczniemy wytyczenie ścieżek należy jeszcze: określić warstwy, na których będą wytyczane ścieżki, zdefiniować przelotki pomiędzy warstwami, ustawić właściwości ścieżek i załadować odpowiedni siraiegy file (określić strategię wytyczania). Wybranie warstw, które będą wykorzystywane podczas wytyczania ścieżek może być przeprowadzone w oknie LAYERS, które jest uaktywniane poleceniem SELECT FROM SPREADSHEET dostępnym z poziomu MENU>TO-OL>LAYER. W celu włączenia lub Rys. 22. wyłączenia danej warstwy należy w oknie LAYERS (rys. 22) kliknąć dwukrotnie na odpowiednim wierszu, a następnie w uruchomionym w ten sposób oknie EDIT LAYER (rys. 23) zaznaczyć opcję ROUTING LAYER lub UNUSED ROUTING. W przypadku płytek dwu i więcej warstwowych należy sprawdzić jakiego typu przelotki zostaną zastosowane do połączeń między warstwami. Weryfikację i ewentualną zmianę parametrów przelotek umożliwia okno PADSTACK, które możemy wywołać poleceniem SELECT FROM SPREADSHEET z MENU->TOOL>PADSTACK. Po dwukrotnym kliknięciu lewym klawiszem myszki na wybranym wierszu okna PADSTACK następuje uaktywnienie okna EDIT PADSTACK LAYER umożliwiającego wprowadzenie zmian parametrów wybranej przelotki (via). Kolejną sprawą, na którą powinniśmy zwrócić uwagę zanim rozpoczniemy wytyczanie połączeń to ustawienie parametrów ścieżek. Dostęp do właściwości ścieżek realizowany jest z poziomu okna NETS, które możemy otworzyć poleceniem SELECT FROM SPREADSHEET dostępnym w MENU->TOOL>NET. Podobnie jak w przypadku przelotek, określenie poszczególnych parametrów ścieżek jest możliwe po uruchomieniu okna EDIT NET (rys. 24) przez dwukrotne kliknięcie lewym klawiszem myszki w obszarze okna NETS. Szerokość wybranej(-ych) ścieżek ustalamy podając wartości parametrów MIN WIDTH, GON WIDTH i MAX WIDTH. Definiują one odpowiednio: szerokość minimalną, preferowaną i maksymalną. W obszarze okna EDIT NET możliwa jest również zmiana priorytetu danej ścieżki lub grupy ścieżek w procesie wytyczania połączeń. Określa to parametr WEIGHT. Im wyższa jest wartość wprowadzona w polu WEIGHT, tym wyższy priorytet ścieżki. Ostatnią czynnością jaką należy wykonać przed uruchomieniem autoroutera jest wybór pliku strategii. Odbywa się to tak samo jak w przypadku funkcji auioplace-meni z tym, że pliki strategii definiujące działanie autoroutera mają rozszerzenie *.SF. Edytor LAYOUT pozwala na modyfikację parametrów określonych Rys. 23.
fJrlHinc
Śu | u V "M^ 34, >"^ Śc*Sp|
Rys. 24. f ŁfUi fcfita ihh I
5 Óf$ntie ^4iik ? Opfnlia ihiiid Uu
Rys. 25. 76 Elektronika Praktyczna 2/2002 PROGRAMY Rys. 26. Rys. 27. w plikach strategii *.SF. Dostęp do ustawień tych parametrów możliwy jest z poziomu MENU>0 PTIO NS->ROUTE STRATEGIES. Nieumiejętna zmiana ustawień domyślnych może jednak, wpłynąć negatywnie na pracę autoroutera. Uruchomienie funkcji automatycznego wytyczania ścieżek fdla wszystkich elementów i połączeń, które są udostępnione dla routera) odbywa się za pomocą polecenia EOARD znajdującego się w MENU>AUTO>AUTOROUTE, Proces możemy również przeprowadzić dla wybranych ścieżek lub elementów. Jeżeli chcemy np. wytyczyć ścieżki związane z pojedynczym elementem, należy wybrać polecenie COMPONENT z MENU>AUTO>AUTOROUTE, a następnie wskazać element myszką. Automatyczne wytyczanie ścieżki dla wybranego połączenia możliwe jest po kliknięciu ikony AUTOPATH ROUTE MODĘ na palecie narzędzi, zaznaczeniu połączenia i wybraniu polecenia FI-NISH z pop-menu. Dowolny komponent lub ścieżkę możemy również zablokować dla routera. W przypadku komponentu odbywa się to w oknie EDIT COMPONENT poprzez usunięcie znacznika w polu ROUTE ENAELED, natomiast wyłączenie ścieżki odbywa się w ten sam sposób, ale w oknie EDIT NETS. W LAYOUT wytyczanie ścieżek może odbywać się całkowicie ręcznie lub przy wsparciu autoroutera. Wybór trybu odbywa się za pomocą ikon AUTOPATH ROUTE MODĘ, SHO-YE TRACK MODĘ, EDIT SEGMENT MODĘ, ADD/EDIT ROUTE MODĘ. Więcej informacji na ten temat można znaleźć w systemie pomocy i dokumentacji systemu. Po wytyczeniu ścieżek połączeniowych warto skorzystać z pożytecznej funkcji CLEANUP DESIGN dostępnej % poziomu MENU>AUTO, która optymalizuje trasy ścieżek i usuwa błędy, które mogły ewentualnie pojawić się podczas działania autoroutera. Parametry funkcji określamy w oknie CLEANUP DESIGN (rys. 25). Widok zaprojektowanej płytki drukowanej pokazano na rys. 26. Ostatnim etapem projektowania obwodu drukowanego jest wykonanie dokumentacji produkcyjnej. LAYOUT zapewnia wygenerowanie plików dokumentacyjnych (do naświetlania) w popularnych formatach: GERBER RS-274D, ex-tended GERBER 274x, GenCAD, Gen-CAM, IPC-D-356 oraz interfejsy mechaniczne Orcad Yisual CADD 2D Drafting (kompatybilny z DXF/DWG ACAD v.l2), Pro/ENGINEER, SDRC, Solid Edge, CA-TIA (IDF 2.0). Przed wykonaniem dokumentacji należy wywołać funkcję BACK ANNOTATE z poziomu MENU>AUTO, która pozwala na automatyczne zaktualizowanie schematu utworzonego w edytorze CAPTURE pod kątem zmian wprowadzonych w edytorze LAYOUT. Projekt możemy ponadto uzupełnić o informacje dodatkowe, np. wymiary płytki, otworów montażowych itp. które mogą być pomocne na etapie produkcji. Większość funkcji związanych z wykonaniem dokumentacji produkcyjnej, włączając podgląd poszczególnych warstw, jest dostępna w oknie POST PROCES, które wywołujemy poleceniem POST PROCESS SETTINGS z poziomu MENU>OPTIONS. Dwukrotne kliknięcie lewym klawiszem myszki na wierszu związanym z daną warstwą uruchamia okno POST PROCESS SETTINGS pozwalające na edycję danych. Podgląd wybranej warstwy umożliwia polecenie PREVIEW dostępne w pop-menu (rys. 27). Wykorzystując funkcję PREVIEW możemy sprawdzić czy poszczególne warstwy "wyglądają" poprawnie i zawierają wszystkie elementy składowe. Do generowania zbiorów wynikowych służy polecenie RUN POST PROCES-SOR dostępne wMENU>AUTO. Po Cdi? Brttn lłł fTłAil tom Uir Crntt"------" Pul Uil (Pir*r| F 1l,r I'ŚŚ'rTJKtJ Rys. 28. uruchomieniu tej funkcji odpowiednie pliki tworzone są automatycznie, zgodnie z parametrami ustawionymi w oknie POST PROCESS SETTINGS. Edytor LAYOUT umożliwia wygenerowanie raportów zawierających informacje dotyczące poszczególnych elementów projektu. Typ(-y) raportu określamy w oknie GENERATE RAPORTS (rys. 28), które wywołujemy poleceniem CREATE RAPORTS z poziomu MENU>AUTO. Edytor LAYOUT zawiera wiele innych funkcji ułatwiających projektowanie obwodów drukowanych, których nie udało nam się tutaj zaprezentować. Wszystkich zainteresowanych uzyskaniem szerszych informacji na temat możliwości ORCAD'a odsyłamy do dokumentacji tego produktu, która jest dostępna również w postaci elektronicznej. RK Dodatkowe informacje Oprogramowanie do testów udostępniła redakcji lirrnaRK-System, Tel. (22) 724-30-39. Ewaluacyjnawersja OrCAD-a 9.1 znajduje się na ptycieCD-EP9/2001B. 78 Elektronika Praktyczna 2/2002 KURS Architektura ^_ mikrokontrolerów W trzodo), ostatnio) już części krótkiego kursu, przedstawiamy kolejne, istotno dla projektantów systemów mikroprocesorowych na mikrokontrolerach PLClGF, zagadnienia: obsługa przerwań, watchdog, obniżony pobór mocy i możliwe konfiguracje generatora zegarowego. Zajmijmy się nieco szerzej przerwaniami. Przy okazji omawiania portów, ti mera/licznika TMRO, pamięci EEPROM oraz rejestru INTCON, zagadnienia te zostały częściowo omówione. Przypomnijmy więc, że PIC16F84 posiada cztery źródła przerwań: - przerwanie zewnętrzne (wyprowadzenie RBO/INT), - przerwanie od przepełnienia timer/ licznika TMRO, - przerwanie od zmian na wyprowadzeniach RB4...RB7 portu B (maski i flagi zgłoszenia od tych przerwań zawarte sa w rejestrze INTCON, który pokazano na rys. 5), - przerwanie generowane w momencie zakończenia operacji wpisu do pamięci EEPROM (flaga zgłoszenia tego przerwania znajduje się w rejestrze EECON1 - rys. 11), natomiast maska w rejestrze INTCON. Cały system przerwań może być zablokowany lub odblokowany zależnie od wartości bitu GIE w rejestrze INTCON (rys. 5). Po zerowaniu mikrokon-trolera bitu GIE jest również zerowany, co powoduje, że system przerwań jest zablokowany. Każde ze źródeł przerwań może być indywidualnie maskowane. Kiedy przerwanie jest zgłaszane, bit GIE jest zerowany. Zapobiega to zgłaszaniu dalszych przerwań w trakcie wykonywania procedury obsługi danego przerwania. Na stos zapisywany jest adres powrotu, a do licznika rozkazów wpisywana jest wartość 0004h. Procedura obsługi przerwania musi (rozróżniać poprzez testowanie odpowiednich część flag) jakie jest źródło przerwania. Jeżeli flaga jest ustawiona na jeden, to w sekwencji obsługującej ace przerwanie trzeba wyzerowafi tę flagę. Procedura obsługi przerwania musi kończyć się rozkazem reifie. Wykonanie tego rozkazu powoduje ustawienie GIE na 1 i wpisanie ze stosu do licznika rozkazów adresu powrotu. Wśród instrukcji mikrokontrolerów PC16F nie ma rozkazów operacji na stosie typu push lub pop. W procedurach obsługi przerwania należy zadbać o zachowanie modyfikowanych rejestrów w pamięci RAM. Dotyczy to szczególnie rejestrów W i STATUS. Poniżej pokazano przykład inicjowania i obsługi przerwania od licznika TMRO. Wszystkie inne przerwania sa zamaskowane. org 000 0 goto _inic org 000 4 goto _int _inic . ;tutaj instrukcj e ;inicjujące TMRO clrf INTCON ;zeruj wszystkie ;maski i flagi bsf INTCON,T0IE ;odblokowanie VDD ł VDD !Ś i- Rys. 13. R1 T T A--------------- VDD fl------' VDD "0 UCLH UCLR FfflH \\ĄOk PKltCXX A RC1KXX Rys. 14. ;przerwania od TMRO bsf INTCON,GIE ;odblokowanie ;systemu przerwań _int movwf w_temp ;zachowaj ;rejestr W movf STATUS,W ;STATUS do W moywf st_temp ;zachowaj rejestr ;STATUS bcf STATUS,RP0 ;ustawienie banku 0 bcf INTCON,T0IF ;zerowanie flagi ;przerwania od ;przepełnienia TMRO movlw czas ;ładuj licznik ; (jeżeli przerwanie ;ma być wywoływane movwf TMRO ;sekwencyjnie) movf st_temp,w movwf STATUS ;odtworzenie STATUS movf w_temp,w ;odtworzenie W retfie Mikrokontroler PIC16F84 jest szczególnie odpowiedni do wszelkiego rodzaju układów sterowania. Od takich układów oczekuje się ciągłej pracy, często bez nadzoru i przy narażeniach różnego rodzaju (przepięcia, udary termiczne itp.)Ś Mikrokontroler może być w takich przypadkach narażony na "wytracenie" z normalnej pracy. Aby, przywrócić go do prawidłowego wykonywania programu sterującego zastosowano układ licznika nadzorującego, tzw. watchdoga WDT. Licznik ten ma swój wewnętrzny Elektronika Praktyczna 2/2002 79 KURS CP PWRTE WDTE F0SC1 FOSCO bitia P-bit programowalny R-Ut który można czytać U-bit niezaimplementowany u-blt nie zmieniany po włączaniu zasilanie Rys. 15. bit 13:5 niezaimplementowany, czytany jako 11 Ut 4 CP: bit zabezpieczenia przed odczytam z pamięci programu i EEPROM użytkownika 1 = brak zabezpieczenia 0 = pamięć zabezpieczona Ut 3 PWRTE: zezwolenie na opóźnienia generowane przez PWRT 1 = opóźnienia odblokowane 0 = opóźnienie zablokowane Ut 2 WDTE: odblokowanie watchdoga 1 = WDT odblokowany O = WDT zablokowany Ut 1:0 FOSC1:FOSCO: bity wyboru oscylatora 11 =oscylator RC10 = oscyletor HS 01 = oscylator XT 00 = OBcylator LP generator RC. Czas zliczania wynosi ok. 18ms. Jak wspomniano przy okazji omawiania licznika TMRO, jest możliwe przyłączenie preskalera do WDT. Nie jest wtedy przyłączony do TMRO. Przy maksymalnym stopniu podziału 1:128 można uzyskać czas odmierzania wynoszący ok. 2,3s. Przepełnienie licznika powoduje wygenerowanie sygnału zerującego. Program sterujący powinien być tak napisany, żeby do tego nie dopuścić. Zerowanie licznika odbywa się przez wykonanie instrukcji clrwdt. Napisanie programu, który dobrze wykorzystuje mechanizm watchdoga nie jest sprawą prostą i wymaga pewnej praktyki. Uruchomienie WDT uzyskuje się przez ustawienie bitu (wpisanie jedynki) WDTE specjalnego rejestru konfiguracji CONFIGURATION WORD. Rejestr ten będzie opisany niżej. Do prawidłowego startu i późniejszej pracy niezbędne jest prawidłowe zerowanie (reset) mikrokontrolera. Jest on wykonywane po włączeniu zasilania mikrokontrolera, podaniu stanu niskiego na wejście MCLR lub w wyniku działania watchdoga WDT. Impuls zerujący po włączeniu zasilania (POR) jest generowany w momencie, kiedy napięcie zasilania wzrośnie do wartości 1,2...1,7V (wyprowadzenie MCLR musi być połączone z napięciem zasilania bezpośrednio lub przez rezystor). Eliminuje się w ten sposób zewnętrzne elementy RC, zazwyczaj potrzebne do generowania impulsu zerującego. Szybkość narastania napięcia zasilania musi być większa od pewnej minimalnej wartości określonej przez producenta(5 0mV/ms). Jeżeli napięcie rośnie wolniej, to do generowania impulsu zerowania potrzebne są zewnętrzne elementy RC dołączone do wej- Tryb Częstotllw. OSC1/C1 0SC2/C2 LP 32kHz 200 kHz 68-100pF 15 - 33 pF 68-100pF 15-33pF XT 100 kHz 2MHz 4MHz 100-150pF 15 - 33 pF 15 - 33 pF 100-150 pF 15-33pF 15-33pF HS 4MHz lOMHz 15 - 33 pF 15 - 33 pF 15-33pF 15-33pF Rys. 16. ścia MCLR. Na rys. 13 przedstawiony jest zewnętrzny obwód zerujący, zalecany do stosowania dla wolno narastającego napięcia zasilania. Przez ustawienie bitu PWRT w CO-FIGURATION WORD można odblokować wewnętrzny timer PWRT. Odmierza on opóźnienie ok. 72ms od momentu wygenerowania impulsu POR i generuje impuls PWRT TIME OUT. Od tego momentu startuje kolejne opóźnienie wynoszące 1024 cyklów zegara mikrokontrolera (nie dotyczy to oscylatora RC). Po odliczeniu tego opóźnienia generowany jest właściwy impuls zerujący mikrokontroler. Jak widać proces generowania impulsu zerowania jest dość skomplikowany. Zerowanie musi być zatem dobrze przemyślane, gdyż ma duże znaczenie dla poprawnej pracy mikrokontrolera. Jednym z krytycznych momentów jest chwilowe obniżenie napięcia do wartości minimalnej, ale nie równej zero. Jeżeli jest możliwe wystąpienie takiego przypadku, to trzeba zastosować zewnętrzny obwód zerowania, którego dwa możliwe warianty przedstawiono na rys. 14. W rejestrze STATUS REGISTER są dwa bity - TO i PD - których wartość określa, jaki rodzaj zerowania ostatnio wystąpił. Jeżeli TO i PD są jedynkami, to przyczyną ostatniego zerowania było włączenie zasilania (POR) lub na wejściu MCLR pojawił się poziom niski. Jeżeli T0=0 i PD=1, to nastąpiło przepełnienie licznika WDT (watchdog). Kombinacja T0=l i PD=0 informuje, że wystąpił na wejściu MCLR poziom niski lub wystąpiło przerwanie podczas trwania stanu uśpienia po wykonaniu instrukcji sleep. Dla T0=0 i PD=0 nastąpiło ,,wybudzenie" ze stanu uśpienia przez układ watchdoga. Przy okazji omawiania układu watchdoga oraz układu zerowania wspomnieliśmy o rejestrze konfiguracji CONFIGURATION WORD (rys. 15). Jest on umieszczony w specjalnej przestrzeni adresowej pamięci służącej do konfi-gurowania i testowania (2OOOh...3FFFh) pod adresem 2007h. Ta przestrzeń jest dostępna tylko dla programatora układu. Bity FOSCO i FOSC1 ustalają jedną z czterech możliwych konfiguracji oscylatora taktującego rdzeń mikrokontrolera PIC16F84. Tryby pracy HS, XT i LP dotyczą konfiguracji z rezonatorem kwarcowym lub ceramicznym, jak to pokazano na rys. 16. Ponadto, we wszystkich trybach można zabito miast rezonatora podłączyć do wejścia OSC1/ CLKIN sygnał taktujący z zewnętrznego oscylatora. W trybie RC możliwe jest taktowanie mikrokontrolera poprzez dołączenie do wyprowadzenia OSC1 rezystora i kondensatora, co zilustrowano na rys. 17. Zalecane wartości tych elementów mieszczą się w przedziałach: 3kD20pF. Mikrokontroler PIC16F84 można wprowadzić w stan obniżonego poboru energii za pomocą rozkazu sleep. Jeżeli WDT jest uruchomiony, to w momencie wykonania rozkazu sleep zostaje wyze-rowany, ale nie jest zatrzymywany. Oscylator mikrokontrolera zatrzymuje się, bit PD jest zerowany, a bit TO jest ustawiany na 1 (STATUS REGISTETR). Wejście MCLR musi być na poziomie wysokim. Wyjście z stanu obniżonego poboru energii następuje w momencie zerowania (zerowanie zewnętrzne przez poziom niski na MCLR lub od watchdoga WDT) lub w momencie przyjęcia przerwania zewnętrznego: od zmian na liniach portu B oraz końca zapisu do pamięci EEPROM. Przerwanie od przepełnienia TMRO nie ,,wybudza" mikrokontrolera, ponieważ w trybie sleep TMRO jest zatrzymywany. Dokładny opis działania trybu obniżonego poboru energii zawarty jest w notach katalogowych firmy MICROCHIP. Na tym można zakończyć opisywanie głównych właściwości mikrokontrolera. Rodzina mikrokontrolerów PIC16Fxx jest tak pomyślana, że programy napisane dla PIC16F84 można stosunkowo łatwo przenosić na inne mikrokontrolery. Łączy je ta sama lista rozkazów i podobny rdzeń. Różnice mogą dotyczyć układów peryferyjnych (rejestrów SFR z nimi związanych), pamięci RAM itp. Pojawiają się też kompilatory języka C - profesjonalne oraz niekomercyjne. Te ostatnie udostępniane w wersji freeware lub za drobną opłatą rejestracyjną. Wszystko to razem może przemawiać za alternatywnym, w stosunku do innych rodzin mikrokontrolerów, wykorzystaniem PIC-ów. Oczywiście, Microchip wzbogaca swoją ofertę o inne rodziny mikrokontrolerów. Przykładem są układy PIC17xx i - ostatnio szeroko reklamowane -PIC18Cxx, bardzo szybkie i bogato wyposażone mikrokontrolery. Tomasz Jabłoński, AVT tomasz.jablonski@ep.com.pl VDD Rext Cext OSC1 Wewnętrzny p. sygnał zegarowy PIC16FXX OSC2/CLKOUT 80 Elektronika Praktyczna 2/2002 KURS Co w LPT część 3 W ostatniej części krótkiego cyklu artykułów przedstawiamy najbardziej rozwinięty tryb pracy interfejsu Centronics - ECP (Extended Capabilities Port). W stosunku do dwóch wcześniej przedstawionych, ECP jest prawdziwym "kombajnem" możliwości i szybkości, co niestety nieco komplikuje jego obsługę. Tryby SPP/ECP/EPPj)d strony praktycznej Interfejs ECP opracowano w celu zwiększenia jego elastyczności, zapewnienia możliwości dynamicznego modyfikowania kierunku przepływu danych, a także jak najlepszego dostosowania do interfejsu ISA, co wpływa na jego sprzętowe implementacje. W odróżnieniu od standardów SPP i EPP, w ECP użytkownik ma stosunkowo niewielki (bezpośredni) wpływ na stany logiczne na wyprowadzeniach portu - są one obsługiwane sprzętowo przez specjalizowane zaimplementowane w interfejs. ECP - skomplikowana potęga Szybkość transmisji danych przesyłanych przez port LPT w trybie ECP jest do 5 0 razy większa Rys. 10. niż w przypadku SPP, co osiągnięto dzięki zastosowaniu następujących mechanizmów: - buforów FIFO dla kolejek wejściowych (dane odczytywane przez komputer) i wyjściowych (dane przesyłane z komputera na zewnątrz), - transferu danych do/z portu za pomocą kanału DMA (Direct Memory Access), - zastosowaniu kompresji przesyłanych danych, która działa on-line. Zastosowany w ECP algorytm kompresji (RLE - Run Length Enco-ding) nie jest zbyt wydajny, ale wymaga niewielkich mocy obliczeniowych i doskonale nadaje się do kompresowania bloków danych składających się z ciągów podobnych znaków, czyli danych typowych dla drukowania w trybie graficznym lub przesyłania obrazów ze skanera lub faksu do PC (i z PC do faksu). Maksymalny stopień kompresji danych wynosi 64:1, w praktyce nie przekracza wartości 58:1. Twórcy standardu ECP (Hewlett Packard i Microsoft) przewidzieli także możliwość adresowania urządzeń dołączanych do portu, dzięki czemu port równoległy można wykorzystać jako dwukierunkowy uniwersalny interfejs, umożliwiający HostCIk PerlphAck HostAck DataO. Rys. 11. dołączenie do PC wielu urządzeń bez konieczności stosowania dodatkowych kart zwiększających liczbę portów równoległych. Z założenia port Centronics z trybem ECP musi być kompatybilny z wcześniejszymi postami z trybem: SPP i EPP. W związku z tym, pomimo znacznie bardziej złożonego protokołu, wykorzystywane są takie same (jak w SPP i EPP) złącza, istnieje także zazwyczaj możliwość przełączenia portu w jeden z tych trybów pracy. W tab. 5 znajduje się zestawienie sygnałów występujących w ECP wraz z ich przypisaniem do wyprowadzeń złącza. Funkcje sygnałów są następujące: - HostCLK - sygnał informujący urządzenie zewnętrzne niskim poziomem, że komputer wystawił dane na Data 0..7. Narastające zbocze tego sygnału powinno zatrzaskiwać dane w odbiorniku. - Data 0...7 - dwukierunkowe linie danych. - PeńphCLK - niski poziom tego sygnału informuje komputer, że na Data 0...7 są dane do odebrania. Narastające zbocze tego sygnału powinno zatrzaskiwać dane w buforze wejściowym interfejsu komputera. - PeńphAck - spełnia podwójną rolę: 82 Elektronika Praktyczna 2/2002 KURS Tab. 5. Nazwy wyprowadzeń interfejsu ECP. Numer styku wDB25 Numer styku w 3 6-stykowym zfączu Centronics Nazwa sygnafu ECP Kierunek Dostęp poprzez rejestr 1 1 HostCLK wy - CSI 2 DataO we/wy Data EPP 3 3 Data 1 we/wy Data EPP 4 4 Data 2 we/wy Data EPP 5 5 Data 3 we/wy Data EPP 6 6 Data 4 we/wy Data EPP 7 7 Data 5 we/wy Data EPP 8 8 Data 6 we/wy Data EPP 9 9 Data 7 we/wy Data EPP 10 10 PeriphCLK we - 11 11 PeriphAck we - 12 12 nAckReverse we - 13 13 X-Flag we - 14 14 HostAck wy - 15 32 PeriphRequest we - 16 31 nReverseRequest wy - 17 36 1284 Active wy - 18...25 19...30 GND - podczas przesyłania danych z komputera do odbiornika zewnętrznego (Forward Modę) jest wejściem sygnału potwierdzającego przyjęcie danych przez odbiornik, - podczas przesyłania danych z urządzenia zewnętrznego do komputera (Reverse Modę) sygnał ten przyjmuje poziom wysoki podczas przesyłania danych (Data Cycle), a niski podczas przesyłania polecenia (Command Cycle). nAckReverse - tą linią urządzenie zewnętrzne potwierdza przyjęcie żądania przełączenia się w tryb transmisji Reverse Modę. X-FIag - sygnał wykorzystywany podczas negocjowania rodzaju transmisji przez interfejs ECP. Ustawienie tego sygnału przez urządzenie zewnętrzne na poziom H oznacza, że obsługuje ono żądany przez komputer tryb pracy. W standardzie IEEE1284 opisano cztery tryby: ECP, ECP Device ID, ECP with RLE compression oraz ECP Device ID with RLE compression. HostAck - spełnia podwójną rolę: - podczas transmisji z komputera do urządzenia zewnętrznego (Forward Modę) logiczna jedynka na tej linii sygnalizuje transfer danych, natomiast logiczne zero informuje o przesyłaniu liniami danych polecenia (Command Cycle), - podczas transmisji z urządzenia zewnętrznego do komputera spełnia rolę linii potwierdzającej odbiór danych przez komputer. - PeńphReąuest - ustawienie przez urządzenie zewnętrzne tej linii w stan logicznego zera sygnalizuje żądanie odczytania przez komputer danych wystawionych przez to urządzenie (żądanie obsługi). - nReverseRequest - żądanie zmiany kierunku transmisji na urządzenie zewnętrzne->komputer. Jest on ustawiany przez komputer. - 1284 Active - wyjście sygnalizujące logiczną jedynką pracę interfejsu w trybie ECP. Przez 8-bitowy port danych przesyłane są w obydwu kierunkach dane oraz polecenia, wśród których są rozróżniane: informacje o adresie urządzenia docelowego oraz polecenia związane z kompresją przesyłanych danych. Rodzaj informacji przesyłanych liniami danych (w trybie Command Cycle) jest sygnalizo- nRevarae Requeat nAckReverse PerlphCIk HostAck PwipłiAck Data 0...7 Rys. 13. wany stanem logicznym linii Data 7 (dla "1" liniami Data 0...6 przesyłany jest adres urządzenia, a dla "0" liniami Data 0...6 przesyłane jest słowo informujące o liczbie powtarzających się w pakiecie identycznych znaków). Taki sposób przesyłania danych powoduje, że długość słowa przesyłanego przez post danych zmniejsza się do 7 bitów. Zanim omówimy przebiegi ilustrujące role poszczególnych sygnałów interfejsu w różnych trybach pracy, przedstawimy graf przejść (zmian) stanów interfejsu ECP. Przedstawiono go na rys. 10. Jak widać, przejścia pomiędzy możliwymi stanami zostały szczegółowo zdefiniowane w opisie standardu ECP. Zmiana kierunku przesyłania danych z Forward na Reverse i odwrotnie jest możliwa w każdej chwili, o czym decydują odpowiednie kombinacje stanów logicznych na wejściach sterujących kierunkiem przepływu danych. Interfejs domyślnie jest uruchamiany w trybie Compatib-le Modę, w którym to zachowuje się jak klasyczny SPP. W trybie Nego-tiate jest ustalany obsługiwany przez urządzenie zewnętrzne tryb przesyłania danych (ECP, ECP Device ID, ECP with RLE compression lub ECP Device ID with RLE compression), natomiast Setup służy tylko do zapewnienia stabilizacji poziomów sygnałów z buforów wyjściowych (np. po przełączeniu z trybu Open Col-lector do Push-PuII). Handshaking w ECP Na rys. 11 pokazano sekwencję zmian stanów sygnałów podczas przesyłania danych z komputera do urządzenia współpracującego (Forward Data Cycle). Cykl zaczyna się od wystawienia przez komputer da- nReverse Request nAcłcReyerse PeripłiCIk HostAck PeriphAck Data 0...7 Rys. 14. 84 Elektronika Praktyczna 2/2002 KURS Tab. 6. Mapa rejestrów interfejsu równoległego pracującego w trybie ECP. Adres Nazwa rejestru Kierunek Bazowy + 0 Data Port (w trybie SPP) Zapis ECPAddress FIFO (w trybie ECP) Zapis/Odczyt Bazowy +1 Status Port Zapis/Odczyt Bazowy + 2 Control Port Zapis/Odczyt Bazowy + 400h Data FIFO (w trybie ECP) Zapis/Odczyt Data Fl FO (w trybie Parallel Port FIFO) Test FIFO (w trybie Test) Configuration Register A (w trybie Configuration) Bazowy + 401 h Configuration Register B (w trybie Configuration) Zapis/Odczyt Bazowy + 402h Extended Control Register Zapis/Odczyt nych na linie Data O...7. Jak wcześniej wspomniano, przesyłanie danych wymaga ustawienia linii HostAck na "1". Następnie urządzenie zewnętrzne jest informowane sygnałem HostkCIk=0 o wystawieniu ważnych danych. Narastające zbocze sygnału HostCIk powoduje zatrzaśnięcie danych w rejestrze wejściowym urządzenia zewnętrznego. W odpowiedzi na zmianę sygnału HostCIk z logicznej "1" na "0", urządzenie zewnętrzne potwierdza gotowość odebrania danych, co jest sygnalizowane zmianą stanu logicznego PeriphAck z "0" na "1". Podobnie przebiega przesyłanie polecenia z komputera do urządzenia zewnętrznego (For-ward Command Cycle), z tą różnicą (rys. 12), że sygnał HostAck przyjmuje stan logicznego "0". Nieco inaczej przebiega przesyłanie danych z urządzenia zewnętrznego do komputera (Reverse Modę). Na rys. 13 są widoczne przebiegi występujące podczas przesyłania danych w trybie Reverse Modę. Transfer rozpoczyna komputer zerując sygnał nReverseRequest, co wymusza na urządzeniu współpracującym potwierdzenie (lub jego brak w przypadku braku możliwości obsługi żądania) zmianą sygnału nAckReverse na logiczne "0". W kolejnym kroku, po potwierdzeniu przez współpracujące urządzenie możliwości transferu danych do komputera, wystawia ono na linie Data 0...7 dane, co jest sygnalizowane zmianą stanu linii PeriphAck z "0" na "1" (w przypadku przesyłania polecenia - Command Cycle - sygnał ten przyjmuje stan logicznej "1" - rys. 14). Gotowość wystawionych danych urządzenie zewnętrzne sygnalizuje zmianą stanu logicznego na linii PeńphCIk z "1" na "0". Komputer potwierdza gotowość do odbioru danych zmieniając stan logiczny linii HostAck z "0" na "1". Następnie, narastające zbocze sygnału PeńphCIk wyznacza moment wpisania przesyłanych danych do rejestru wejściowego portu komputera. Odbiór danych przez komputer jest potwierdzany zmianą stanu logicznego na linii HostAck z "1" na "0". Pomimo tego, że liczba "kroków" niezbędnych do transferu danych w trybie ECP jest znacznie większa od liczby kroków koniecznych do transferu danych w trybie SPP (zaledwie 5), szybkość pracy ECP jest większa, a to dlatego, że ta procedura jest realizowana sprzętowo. Rejestry Ze względu na odmienne mechanizmy wykorzystywane przez in-terefejs pracujący w trybie ECP, zupełnie inną strukturę niż dla trybu SPP i EPP mają rejestry interfejsu. W tab. 6 podano mapę adresów rejestrów niezbędnych do poprawnej pracy portu ECP. Dostęp do rejestrów konfiguracyjnych A i B jest możliwy tylko w trybie konfiguracji interfejsu. Rejestry konfiguracyjne A i B służą do ustawiania parametrów pracy interfejsu "od strony" złącza ISA (ustawiane przerwania, uaktywnianie kanałów DMA, spo- Tab. 7. Funkcje bitów rejestru ECR (base + 402h). Bity Funkcja 7...5 Wybór trybu pracy interfejsu: 000 - Standard Modę 001 - Byte Modę 010- Parallel Port FIFO Modę 011 -ECP FIFO Modę 100-EPP Modę 101 - zarezerwowane 110-FIFO Test Modę 111 - Configuration Modę 4 ECP Interrupt 3 DMA Enable 2 ECP Service 1 FIFO Fuli 0 FIFO Empty sób pracy FIFO itp.), natomiast rejestr ECR (tab. 7) odpowiada za: - ustawienie trybu pracy interfejsu (w tym przełączenie go w tryb konfiguracji), - uaktywnienie obsługi DMA i przerwań, - kontrolę stanu bufora FIFO (pusty/pełny). Szczegółowy opis funkcji tych rejestrów pominiemy, ponieważ jest on ściśle związany z oprogramowaniem komputera sterującego pracą interfejsu. Opis przedstawiony w artykule umożliwia natomiast samodzielną realizację urządzenia wyposażonego w interfejs zgodny z ECP wykonany programowo lub sprzętowo (np. w układzie PLD). Czytelników zainteresowanych opisem funkcji rejestrów zachęcam do odwiedzenia naszego działu Download (www.ep.com.pl) lub sięgnięciu po płytę CD-EP02/2002B, na której publikujemy wybrane materiały źródłowe związane z tematyką interfejsów równoległych SPP/EPP i ECP. Tomasz Jakubik, AVT Dodatkowe informacje Dodatkowe informacje można znaleźć w Internecie pod adresami: - httpyAvww.beyondlogic.org/pardebug/pdebug.htm, - httpy/www.beyondlogic.org/spp/parallel.pdf, - httpy/www.beyondlogic.org/epp/epp.pdf, - httpy/www.beyondlogic.org/ecp/ecp.pdf, - http//www.lvr.com/parport. htm, - httpy/www.Ipt.com/Downloads/downloads.htm. 86 Elektronika Praktyczna 2/2002 MINIPROJEKTY Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość Ich praktyczne] 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 scaionych, 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, Warsztatowy zasilacz szufladkowy Jeżeli w swoim warsztacie (laboratorium) nie masz dużo miejsca, a masz metalową szafkę z szufladkami na elementy, proponujemy Ci wykonanie prostego zasilacza, który można zamontować w miejscu jednej szufladki. Szafka może być bowiem doskonałym stelażem dla różnego rodzaju przyrządów warsztatowych. Budowę zasilacza oparto na specjalizowanym układzie stabilizacyjnym TDAS13S, który jest przeznaczeny do zasilania prostych systemów mikrokomputerowych. Układ TDAS13S dostarcza wysoko-stabilnych napięć +5V i +12V, przy obciążalności każdego z wyjść prądem o natężeniu do 1A. Niewątpliwą zaletą stabilizatora jest odporność na przeciążenia uzyskane dzięki wbudowaniu zabezpieczenia przeciwzwar-ciowego oraz zabezpieczenia termicznego, wyłączającego obciążenie po osiągnięciu przez stabilizator temperatury ok. 125C. Układ TDAS13S występuje w obudowie (rys. 1) jednorzędowej SIP9 lub HEPTA- Rys. 1. WATT. Niezależnie od wariantu zastosowanej obudowy, układ w wersji oznaczonej TDA8138 wyposażono w dwa stabilizatory napięcia, wejście blokady napięcia 12V oraz wyjście sygnału RESET, które można wykorzystać do zerowania zasilanego systemu cyfrowego. Układy oznaczone literą "A" (czyli TDA3133A) nie posiadają wyjścia sygnału RESET, a TDA3133B nie posiadają wejścia blokowania napięcia +12V. Na rys. 2 przedstawiono schemat elektryczny zasilacza. Napięcie z transformatora, po wyprostowaniu przez mostek Ml i filtracji tętnień (zespół kondensatorów C1...C6), jest podane na wy- prowadzenia wejściowe 1 i 2 stabilizatora. Napięcia wyjściowe o wartościach +5V i +12V są dostępne na wyprowadzeniach 7 i 6, do których dołączono kondensatory C8...C11 filtrujące napięcia wyjściowe stabilizatora. Mozaikę ścieżek płytek drukowanych pokazano na wkładce wewnątrz numeru, a rozmieszczenie elementów na rys. 3. Jak widać, wzór mozaiki nie jest zbyt skomplikowany, nie powinno więc być kłopotów z samodzielnym wykonaniem płytek. Montaż układu możemy podzielić na dwa etapy: - pierwszy, to montaż elementów elektronicznych, - drugi, to złożenie trzech płytek drukowanych w całość przypominającą szufladę. Na płycie czołowej zasilacza zamontowano cztery zaciski laboratoryjne, włącznik zasilania oraz diody LED sygnalizujące występowanie napięć roboczych +5V i +12V. W celu zabezpieczenia druku przed zwarciem, dolną płytkę zasilacza zabezpieczono dodatkową płytką umocowaną za pomocą śrub z tulejkami U1 TIMS13S(7) WYKAZ ELEMENTÓW Kondensatory CL C7: 220nF C2...CÓ: 1000^F/25V C9, CIO: 220^F/25V C8, Cli: lOOnF Półprzewodniki DL D2: LED Ml: mostek prostowniczy 1A Ul: TDA8138A Różne Transformator TS12/004 Bl: bezpiecznik lóOmA Zaciski laboratoryjne (4szt.) Włącznik miniaturowy (1 sit.) Złgcze śrubowe ARK2 (2 sit.) Złqcze śrubowe ARIO (1 szt.) Płytka drukowana jest dostępna w A VT - oznaczenie AYT-1332. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http://www.ep.conj.pl/7pdff IutyO2.htm oraz na płycie CD-EP02/2002 w katalogu PCB. -2L0V Rys. 2. DIS NG IN1 IN2 OUT2 22Qn Elektronika Praktyczna 2/2002 87 MINIPROJEKTY dystansowymi. Miejsce przeznaczone na transformator zostało celowo tak wybrane, aby nie "wiązać" zasilacza z konkretnym typem transformatora. Daje to możliwość wybrania transformatora stosownie do swoich potrzeb i możliwości. Oczywiście, rozmiar transformatora jest ograniczony rozmiarami ca- łego układu i nie może wystawać poza krawędzie płytek. Przy wyborze typu transformatora należy również pamiętać o maksymalnym prądzie jaki będzie pobierany z zasilacza. W układzie modelowym użyto transformatora typu TS12/004 dostarczającego napięcia 2xl2V 0,5A. Do układu stabilizatora nale- ży koniecznie przykręcić ra-diator, który możemy wykonać z kawałka blachy aluminiowej , nadając mu taki kształt jak zaznaczono (rysunek) na płytce drukowanej. Nie jest to może najlepszy ra-diator, ale dla naszych potrzeb zupełnie wystarczy. Płytę czołową z zaciskami mocujemy do płytki zabezpie- czającej druk dwoma kątownikami przykręcanymi śrubami. Przypominamy o zachowaniu szczególnej ostrożności przy podłączaniu zasilacza do sieci 22OVAC. Zasilacz może być zamontowany w miejsce szufladki magazynowej o wymiarach 135x57x64mm. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl 88 Elektronika Praktyczna 2/2002 MINIPROJEKTY Zabezpieczenie portu równoległego komputera Przedstawiam układ pchełkę, który powinien zainteresować komputerowców. Prosty układ zabezpiecza port równoległy naszego komputera przed ładunkami el ektro sta tycznymi (ESD). Małe wymiary i niska cena przy dużej skuteczności to jego walory. Rys. I. W nowych komputerach, zgodnych z IBM PC, układ sterujący portem równoległym jest zamontowany na płycie głównej. W przypadku jego uszkodzenia często jest konieczna (ze względów ekonomicznych) wymiana płyty głównej. Układ może być zastosowany także w nowszych komputerach Amiga, w których układ obsługujący port równoległy jest wykonany w technice SMD (właściwie PLCC wlutowany w płytę). Budowa i działanie Konstrukcja układu jest banalnie prosta. Wszystkie sygnały z portu są doprowadzone do specjalizowanego układu ochrony przed ładunkami elektrostatycznymi (ESD) - schemat elektryczny pokazano na rys. 1. Układ ten zawiera 18 transili, chroniących przed przepięciami do 3kV. Układ BAZ100 jest stosowany przeważnie w drukarkach w celu zabezpieczenia obwodów wejściowych przed szkodliwym działaniem ładunków elektrostatycznych. Powstające przy rozładowywaniu tych ładunków impulsy są zwierane do masy. Dzięki temu na ochranianym układzie nigdy nie występuje napięcie mogące go uszkodzić. 10 13 Montaż i uruchomienie W pierwszej kolejności lutujemy układ scalony do płytki, której schemat montażowy pokazano na rys. 2. Ze względu na to, że jest on wykonany w technice SMD, należy posłużyć się lutownicą z cienkim grotem. Najpierw lutujemy jedno wyprowadzenie układu. W tym celu najlepiej nanieść niewielką ilość cyny na pole lutownicze, po czym położyć układ i podgrzać wyprowadzenie. Następnie poprawiamy ułożenie układu tak, aby wszystkie nóżki równo leżały na polach lutowniczych. W razie konieczności można podgrzać przylutowane wcześniej wyprowadzenie. Następnie lutujemy pozostałe wyprowadzenia, po czym wpychamy złącza DB25 na krawędź płytki (rys. 3), ale nie lutujemy ich styków. Dopasowujemy płytkę do przejściówki DB25. Po poprawnym ułożeniu złącz (tak, aby bez problemu obu- BZAIOO
Wtuk - Komputer orallel sort ^ecurity Sławomir >krzynsk| Gniazdo Drukarka dowa zamknęła się) lutujemy styki złącz do płytki. Po zamknięciu zabezpieczenia w obudowie umieszczamy je pomiędzy gniazdem w komputerze, a wtyczką drukarki czy innego urządzenia. Sławomir Skrzyński, AVT s I a wom i r. s krzyn s ki@ep. co m. pl WYKAZ ELEMENTÓW Półprzewodniki US1: BZA100 (SMD) Różne CON1: DB25pin-M (do lutowania przewodów) CON2: DB25pin-F (do lutowania przewodów) Obudowa przejściówki DB25 4szt. wkrętów do złqcz D-SUB 2szt. nakrętek do złqcz D-SUB Płytka drukowana jest dostępna w AVT - oznaczenie AYT-1333. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http:llwww.ep.conj.pl/7pdfl IutyO2.htm oraz na płycie CD-EP02/2002 w katalogu PCB. Rys. 2. Rys. 3. 88 Elektronika Praktyczna 2/2002 AUTOMATYKA bezpieczeństwo J ) w systemach automatyki Szybkie przeobrażenia zachodzące w świecie współczesnej techniki, pojawianie się z dnia na dzień nowych technologii oraz coraz nowszych maszyn i urządzeń, pociągają za sobą coraz większe zagrożenia dla życia i zdrowia osób pracujących przy ich obsłudze oraz osób postronnych, które mogą się znałeźć w pobłiżu. Dziś, aby zapewnić bezpieczeństwo pracującemu, nie wystarczą gumowe kalosze, rękawice oraz czerwony przycisk zatrzymujący maszynę. Wszędzie tam, gdzie mośe nastąpić uszkodzenie ciała, trwałe kalectwo czy śmierć człowieka w wyniku pracy ruchomych części maszyn, gdzie istnieją strefy niebezpieczne oraz tam, gdzie obecność ludzi mośe zakłócić parametry produktu, potrzebne są systemy bezpieczeństwa, które wyeliminują zagrożenia samoczynnie. Odpowiednie zabezpieczenia przynoszą teś wymierne korzyści tym, którzy je stosują, w postaci kom- Rys. 2. fortu pracy oraz uwolnienia się od płacenia wysokich odszkodowań i kar będących następstwem wypadków. Również Polska, która przez długie lata pomijała problem bezpieczeństwa, wreszcie wydała odpowiednie akty prawne normalizujące te kwestie. W lipcu 2001 roku weszła w śycie nowa norma zgodna z normą Unii Europejskiej: PN-EN954-1 oraz zaktualizowana została dyrektywa maszynowa: 98/37/EC. Nakazuje się ich stosowanie wszędzie tam, gdzie mośe być narażone ludzkie zdrowie lub śycie. Czujniki stykowe dla systemów bezpieczeństwa Elementami czujnikowymi stosowanymi w systemach bezpieczeństwa, współpracującymi z systemami automatyki, są rn.in.: ochronne szyny przełącznikowe, maty ochronne oraz zderzaki oporowe. Wszystkie te urządzenia wykorzystują specjalny czujnik, którego zasadę działania wyjaśniono na rys. 1 i rys. 2. Sensor ten jest odpowiednio wyprofilowanym elementem elastomer o-kauczukowym, którego przeciwległe powierzchnie są pokryte warstwami będącymi przewodni karni prądu elektrycznego. Są one utrzymywane w pewnej odległości od siebie dzięki specjalnemu kształtowi tego elementu. Gdy nastąpi zetknięcie się obu warstw przewodzących następuje przewodzenie sygnału elektrycznego, Fot. 3. co stanowi kryterium alarmu dla sterownika współpracującego z czujnikiem. W profesjonalnych systemach zabezpieczających czujnik jest połączony 4-śyłowym przewodem z jednostką szacującą. Wzbudzenie czujnika lub przerwa w zasilaniu systemu sprawia, śe układ szacujący (fot. 3) natychmiast wyłącza przekaźnik znajdujący się na wyjściu, powodując przerwanie np. niebezpiecznego ruchu maszyny. Czas reakcji systemu wynosi poniżej 20ms. Szynami przełącznikowymi rnośna zabezpieczyć drzwi automatyczne pojazdów lub maszyn, różnego rodzaju podnośniki fw przemyśle samochodowym, papierniczym, tekstylnym itp.), wszelkiego rodzaju pojazdy poruszające się po hali produkcyjnej oraz roboty - tam, gdzie działanie systemu mośe stwarzać zagrożenie dla człowieka. Szyny zainstalowane na podłodze mogą wspomagać ruch pojazdów fnp. przy wjeździe pojazdu na listwę mośe nastąpić zamknięcie lub otwarcie drzwi czy włączenie systemu alarmowego). Ta sama szyna mośe ułatwić obsługę np. ciągu maszynowego, gdzie odległość od jednego do drugiego punktu jest du-śa. Wówczas naciśnięcie stopą w dowolnym miejscu wyzwoli sygnał, w wyniku którego nastąpi natychmiastowe wyłączenie całego ciągu maszyn, Ta sama zasada mośe być wykorzystana do zamknięcia lub otwarcia odległych drzwi itd. Fot. 4 146 Elektronika Praktyczna 1/2002 AUTOMATYKA Fot. 5. Maty ochronne mają podobne zastosowanie. Zabezpiecza-ją teren, na którym występuje bardzo wysoka temperatura fnp. huty), szkodliwe promieni owanie fnp. pracownie RTG), wysokie napięcia i pola elektromagnetyczne fnp. rozdzielnie wysokiego napięcia), szybki ruch maszyn fnp. w drukarniach), cięcie materiału fnp. tartaki) itp. Wykorzystywane są we wszelkiego rodzaju dźwigach i windach fwejście na matę wyzwala sygnał ruchu lub zatrzymania jak pokazano na fot. 4). Maty mają zastosowanie takśe w systemach informujących, np. o obecności materiału w maszynie produkcyjnej, często są stosowane takśe jako czujniki wspomagające w systemach alarmowych fnp. w bankach). Sprawdzają się takśe w monitoringu przemieszczających się obiektów fnp. na płytach lotnisk). Rys. 8.
Rys. ó. Rys. 7. Innym rodzajem czujników są zderzaki oporowe (fot 5), które są wykorzystywane wszędzie tam, gdzie maszyna potrzebuje długiej drogi hamowania. Umieszczane są na rampach czy na pojazdach bezzałogowych fnp. w kopalniach). Z oczywistych powodów przedstawione urządzenia cechuje bardzo wysoka niezawodność i trwałość. Są one odporne na uszkodzenia mechaniczne, wpływ warunków atmosferycznych oraz substancji ropopochodnych i śrą-cych. Czujniki optoelektroniczne dla systemów bezpieczeństwa Uzupełnieniem powyśszych systemów bezpieczeństwa mogą być urządzenia optoelektroniczne, jak na przykład: bariery świetlne lub skanery laserowe. Kurtyny świetlne są wykorzystywane do zabezpieczania stref o róśnych kształtach, jak to przykładowo pokazano na rys. 6, 7 i 8. Bariera jest tworzona przez ochronne pole promieniowania podczerwonego pomiędzy nadajnikiem a odbiornikiem o rozdzielczości od 14 do 40mm. Kiedy to pole jest naruszone, sygnalizowana jest konieczność zatrzymania ruchu maszyny. Gdy pole ochronne nie jest naruszone lub system bezpieczeństwa zostanie wy-zerowany, maszyna rusza ponownie. Skaner laserowy (fot. 9) jest autonomiczną jednostką monitorującą swoje otoczenie bez konieczności stosowania dodatkowych elementów, np. folii refleksyjnych lub specjalnych odbiorników. Kontury pola ochronnego definiowane są dowolnie przez uśytkownika, ściśle z kształtem niebezpiecznego obszaru. Stosowana podczerwona wiązka laserowa skanera dostrzega przedmioty lub osoby wchodzące w jego pole działania i uruchamia funkcje ochronne. JP Fot. 9. Dodatkowe informacje Dodatkowe informacje są dostępne na ptycie CD-EP1/2002B oraz w Intern ecie pod adresem: - http//www. ssz-grnbh.de/ do wn I o ad/c o nt roi I e rrn an u al. pdl, - http//www. ssz-grnbh.de/ do wn I o ad/s ai ety rn ats. pdl, - http://www.ssz-grnbh.de/down- loacfkat-ge.pdf. Dystrybutorem urządzeń produkowanych przez Sicherheits-Systeme Zimmermann GmbH jest lirma Lemi-Bis.tel.: (71)339-00-29/30, lax: (71)339-05-01,www.techno-logie.com.pl.___________________ Elektronika Praktyczna 1/2002 147 PROJEKTOWANIE Zalecenia projektowe dla tanich systemów, bezprzewodowej transmisji danych cyfrowych, część 1 Wprowadzenie: pasma LPRD Wdrażanie systemów bezprzewodowej transmisji danych jest łatwiejsze dzięki dostępnym od niedawna jedno układowym trans ceiv erom w.cz., wykorzystującym do transmisji danych pasma prze-znaczone dla urządzeń radiowych małej mocy LPRD [Low Power Radio Device). Pasma 433MHz oraz 868MHz (nie wymagają licencji lub homologacji) mogą być wykorzysty-wane przez projektantów systemów elektronicznych w Europie już od kilku lat. Koncepcja takich systemów była wcześniej ściśle strzeżona przez projektantów układów w,cz, Obecnie wiele firm dystrybucyjnych ma w swojej ofercie tego rodzaju elementy, począwszy od prostych nadajników z modulacją On/Off Keymg, aż po zaawansowane, wielokanałowe terminale na-dawczo-odbiorcze GMSK. IAI 433.05MHZ ->-------- 1,74P*4z 434.79MHZ ------4- Transmisja danych bez licencji: gdzie, co i jak? Na rys. 1 przedstawiono stosowane w Europie pasma LPRD, których ogromną zaletą jest możliwość stosowania urządzeń bez specjalnych licencji . Jedynym wymogiem upoważniającym do korzystania z tych urządzeń jest gwarancja producenta systemu bezprzewodowego zapewniająca, że jego produkt nie łamie przepisów dotyczących tych pasm. Owe przepisy zawarte są w dokumencie CEPT/ERC recommendaiion 70-03. CEPT {European Con-ference of Posiał and Tele-comunicaiions Adminisira-iions) jest instytucją, która w krajach europejskich wydaje prawne regulacje w tej dziedzinie. Większość dostępnych na rynku scalonych układów nadawczo-odbiorczych odpowiada tym przepisom, oczywiście pod warun- STOMHz ------4- 2MHz kiem, że są użyte zgodnie z zaleceniami katalogowymi Itzn. stosuje się właściwą impedancję anteny i zewnętrzne elementy zgodnie ze specyfikacją). Jednakże jest kilka ważnych parametrów, które pozostają pod kontrolą użytkownika: Przeznaczenie Pasmo 868MHz dzieli się na podpasma, z których pewne częstotliwości przeznaczone są do zastosowań alarmowych. Nie mogą na nich pracować urządzenia nie należące do tej kategorii. Moc wyjściowa Maksymalna dopuszczalna moc wyjściowa różni się dla poszczególnych częstotliwości (kanałów). Szerokość pasma w kanale Niektóre podpasma wolno stosować tylko w bardzo wąskopasmowych kanałach, podczas gdy inne mają dowolną szerokość. Roboczy cykl transmisji W celu zmniejszenia ryzyka kolizji kilku urządzeń używających tej samej częstotliwości, określono maksymalny dopuszczalny cykl roboczy transmisji. Oznacza się procentowo czas transmisji w stosunku do godziny. Maksymalny dopuszczalny czas transmisji w ciągu godziny, w przypadku pasma 433MHz, wynosi 6 minut. Stanowi on sumę wszystkich okresów transmisji w ciągu godziny Itab. 1). Mimo, że dostępność gotowych elementów znacznie upraszcza projektowanie systemów bezprzewodowych, od W artykule omawiamy podstawowe zagadnienia związane z konstruowaniem i praktycznym wykorzystywaniem łączy b ezprze wo dowy ch. Zostaną przedstawione ich typowe niedogodności wraz z praktycznymi wskazówkami, które wyjaśniają ograniczenia tego sposobu transmisji, mające wpływ na jej zasięg. Zawarto także kilka porad przydatnych w ocenie parametrów katalogowych układów w.cz., które należy brać pod uwagę przy p oró wny wani u specyfikacji różnych produktów. Sprawdzenie bowiem kilku podstawowych parametrów układu może oszczędzić nam wiele czasu i frustracji, jeśli szybko ocenimy, że dany układ nie odpowiada naszym wymaganiom. Zaaięg trtnamiaji Straty Pasmo 433MHz Pasmo 86BMHz GuUK Czułość RX Rys. 1. Rys. 2. Elektronika Praktyczna 2/2002 93 PROJEKTOWANIE Moc MOC wyjściowa nadajnika Straty transmisyjne pomiędzy nadajnikiem i odbiornikiem _______Moc sygnału na wejściu odbiornika Headroom Próg czułości '.__________odbiornika Próg czułości demodulatora ;------------------------Poziom szumu '_______________gdbiomi ka Rys. 3. projektanta wymagana jest jednak podstawowa wiedza w zakresie związanych z transmisją radiową parametrów, które mają wpływ na całą pracę systemu. Połączenie bezprzewodowe -podstawy Na system połączenia bezprzewodowego składają się: nadajnik z anteną, droga transmisji oraz odbiornik z anteną. Dla tych elementów systemu ważnymi parametrami są: moc wyjściowa nadajnika oraz czułość odbiornika. Na rys. 2 pokazano schemat blokowy typowego toru transmisyjnego. Istotnym parametrem odbiornika jest jego czułość, która oznacza minimalną wartość mocy, przy której otrzymane na wyjściu dane cechuje zadowalający współczynnik błędu w bitach (BER - Bit Error Ratę, zwykle na poziomie 10~3). Różnicę między mocą otrzymanego sygnału a czułością określa się jako bezpieczny margines transmisji {headroom). Jest on redukowany przez kilka czynników, takich jak: długość drogi transmisji, skuteczność anteny, częstotliwość nośna oraz fizyczne cechy przeszkód na drodze transmisji. Czułość i moc wyjściową określoną w specyfikacji katalogowej układów w.cz. podaje się dla charakterystycznej im-pedancji obciążenia, co jest optymalnym rozwiązaniem dla wejściowego wzmacniacza nis-koszumnego (LNA) i wzmacniacza mocy wyjściowej. Oznacza to, że impedancja użytej anteny musi być równa obciążeniu określonemu w specyfikacji katalogowej, w przeciwnym razie pojawia się niezgodność i zmniejszenie bezpiecznego marginesu transmisji. Na rys. 3 pokazano rozkład mocy sygnału przekazywanego pomiędzy nadajnikiem i odbiornikiem. Antena: niech cię usłyszą Antena przekształca moc wyjściową nadajnika w energię elektromagnetyczną, która jest emitowana z anteny zależnie od jej charakterystyki promieniowania. W przypadku pasm LPRD maksymalną moc wyjściową określa się parametrem poziom mocy sygnału emitowanego przez antenę (EIRP - Effective Isotropic Radiated Power). Izotropowy element promieniujący, to hipotetyczna bezstratna antena wytwarzająca jednakowe promieniowanie we wszystkich kierunkach. Oznacza to, że nie można zwiększać zasięgu transmisji używając anteny kierunkowej. Jeśli zysk anteny przekracza 1 (OdB) w jakimś kierunku, moc wyjściowa musi być odpowiednio zmniejszona. Na przykład, w niskim zakresie pasma 868MHz maksymalny, dozwolony poziom mocy sygnału Tab. 1. Wykaz pasm oraz warunki korzystania z nich Zakres częstotliwości [MHz] Moc wyjściowa [mW] Szerokość kanału [kHz] Współczynnik zajętości [%] 433,050...434,790 <10 Opcjonalnie Wysoki <10% 868,000...868,600 <25 Opcjonalnie Maty <1 % 868,600...868,700 <10 25kHz Bardzo maty <0,1% 868,700...869,200 <25 Opcjonalnie Bardzo maty <0,1% 869,200...869,250 <10 25kHz Bardzo maty <0,1% 869,250...869,300 <10 25kHz Bardzo maty <0,1% 869,400...869,650 <500 25kHz Bardzo maty <0,1% 869,650...869,700 <25 25kHz Wysoki <10% 869,700...870,000 <5 Opcjonalnie Bardzo duży, do 100% emitowanego przez antenę wynosi 25mW (14dBm). Gdyby użyć anteny kierunkowej 0 zysku lOdB na danym kierunku, nadajnik umieszczony na tym kierunku odebrałby sygnał na poziomie 24dBm. Wobec tego, aby spełnić wymogi ETSI [European Teleco-munications Standard Institu-te), moc wyjściową należałoby obniżyć do 4dBm. Zaznaczyć trzeba, że tego rodzaju antenę stosować można w odbiornikach nie ryzykując złamania przepisów. Obliczenie zysku anteny 1 charakterystyki promieniowania jest w rzeczywistości zadaniem dość skomplikowanym. Co więcej, na uzyskane wyniki ogromny wpływ mają otaczające antenę elementy. Umieszczenie jej w pobliżu powierzchni przewodzących prawdopodobnie zniekształci charakterystykę promieniowania i zmniejszy jej wydajność, co jest jednak nieuniknione w większości praktycznych zastosowań. Zysk energetyczny anteny: skorelowanie oczekiwań z rozmiarem i częstotliwością... W bilansie energetycznym toru transmisyjnego najważniejszym parametrem anteny jest zysk energetyczny (kierunkowy) anteny (antenna gain - Gant). Interpretuje się go jako zdolność anteny do przekształcania mocy wyjściowej w emitowaną energię. Zysk kierunkowy anteny jest w zasadzie proporcjonalny do jej fizycznego rozmiaru, bowiem podstawową zależnością w teorii anten jest: gdzie Ae oznacza powierzchnię skuteczną anteny, zaś X to długość fali sygnału częstotliwości nośnej. W przypadku pasma LPRD 433MHz, długość fali wynosi w przybliżeniu 0,69m oraz około 0,35m dla pasma 868MHz. Inaczej rzecz biorąc, w celu uzyskania zysku anteny na poziomie 1 (OdB) dla pasma 43 3MHz, jej konieczna powierzchnia skuteczna musi być równa O,O38m2 (0,19m x 0,19m), zaś dla pasma 868 MHz -0,001m2 (0,lm x 0,lm). Ponieważ w większości zastosowań tak duża antena okazuje się całkowicie niepraktyczna, ograniczyć się trzeba zwykle do znacznie mniejszej anteny. Oznacza to, że w rzeczywistości antena wykazuje straty w całkowitym bilansie transmitowanej energii. Anteną powszechnie stosowaną w urządzeniach radiowych małej mocy, która jest mała i tania w wykonaniu jest antena pętlowa. Tego rodzaju anteny mogą być wytrawione bezpośrednio na płytce drukowanej nie powodując wzrostu kosztów poza niewielkim zwiększeniem powierzchni płytki. Na rys. 4 pokazano płytkę drukowaną układu nadawczo-odbiorczego LPRD (z układem nRF903) dla pasma 868MHz z anteną Rys. 5. Elektronika Praktyczna 2/2002 PROJEKTOWANIE 0 -a i 1 E -80 3 s.
ż -no Rys. 6. 10 100 Odległość pomiędzy nadajnikiem I odbiornikiem [m] 1000 o wymiarach 9,5x9,5mm. Ma ona typowy zysk około -20...-25dB. Rozważmy model nadajnika pokazany na rys. 2, emitującego jednakową energię we wszystkich kierunkach (czyli zakładając, że zasila on antenę izotropową). W odległości r od anteny gęstość strumienia przenikającego powierzchnię kuli (rys. 5) jest dana wzorem: F = P-.-G. 4-ff-r2 [W/m2] Świadczy to o tym, że gęstość mocy zmniejsza się z odwrotnością kwadratu odległości, jeśli energia rozchodzi się na większym obszarze. Można udowodnić, że ilość otrzymanej przez odbiornik (rys. 3) energii wyraża się wzorem: W równaniu tym należy zauważyć, że o tym, co określa się jako straty transmisyjne (path loss), decydują: odległość pomiędzy nadajnikiem i odbiornikiem oraz częstotliwość transmisji. Aby odbiornik mógł demodulować sygnał, to moc otrzymanego sygnału musi być równa lub wyższa od mocy określający granicę czułości. Na rys. 6 przedstawiono zależność spadku mocy sygnału docierającego do odbiornika w funkcji odległości pomiędzy nadajnikiem i odbiornikiem. Jak łatwo zauważyć, czterokrotne (o 6dB) zwięk- szenie mocy wyjściowej (lub czułości odbiornika) powoduje podwojenie rzeczywistego zasięgu. Propagacja energii elektromagnetycznej: co może się nie udać? Margines bezpiecznej transmisji [headroom) zmniejsza się wraz ze wzrostem zasięgu. W związku z tym zwiększa się prawdopodobieństwo utraty komunikacji ze względu na zjawisko wie-lodrożności (multipath pheno-menon) i przeszkody w otoczeniu. W przypadku łączności w paśmie 868 MHz (jak zilustrowano na rys. 6), margines ten jest mniejszy niż 15dB dla zasięgu lOm. Oznacza to utratę możliwości komunikacji, jeśli dodatkowe tłumienie sygnału na drodze transmisji przekracza 15dB. Powodowane jest ono właśnie zjawiskiem wielodroż-ności i przeszkodami w otoczeniu. Nieidealna droga transmisji powoduje zanikanie sygnału w odbiorniku, jeśli dociera wieloma drogami do anteny odbiorczej. Ponieważ TÓżne drogi propagacji mają różne długości, połączone sygnały docierają do odbiornika w niezgodnych okresach, czego wynikiem jest osłabienie sygnału, a także ,,zamazanie" otrzymanego sygnału w domenie czasu powodując zakłócenia w odczycie zakodowanego znaku (rys. 7). Długości fal w pasmach 434MHz i 868MHz wynoszą odpowiednio 0,69 metra i 0,35 metra, wobec czego zanikanie sygnału może wahać się w krótkich odcinkach czasu, jeśli jedno lub oba urządzenia radiowe są w ruchu. Pamiętać należy również, że zanikanie sygnału mogą powodować poruszające się w pobliżu przedmioty (ludzie, meble, maszyny) pomimo spoczynku urządzeń radiowych. Zjawisko wielodrożności powodowane jest przez odbicia, dyfrakcję i rozpraszanie sygnału. Odbicie powstaje, gdy transmitowana energia ,,odskakuje" od powierzchni przedmiotu, który jest stosunkowo duży w porównaniu z długością fali nośnej (np. ściany, budynki, podłoże itp.). Dyfrakcja oznacza ugięcie fali na ostrych, nieregularnych krawędziach obiektów stojących na drodze transmisji. Z kolei rozproszenie odpowiada dyspersji energii spowodowanej przez przedmioty stosunkowo małe wobec długości rozchodzącej się fali. Ważnym czynnikiem, z którym należy się liczyć (albo raczej być na niego przygotowanym), jest strata powodowana przez przeszkody znajdujące się w otoczeniu, takie jak podłogi, ściany, budynki i okna. Wielkość straty zależy w znacznej mierze od fizycznych cech tych obiektów. Na przykład, ściany żelbetonowe przyczyniają się do większych strat niż drewniane czy gipsowe. W porównaniu ze zwykłymi oknami, ogromną przeszkodę dla sygnału stanowią przy- Tab. 2. Typowe wartość strat powodowanych przez typowe obiekty Obiekt Wartość strat [dB] Ściana wewnętrzna 10...15 Ściana zewnętrzna 2...38 Podłoga 12...27 Okno 2...30 ciemniane okna z pokryciem warstwą metalizacji. W tab. 2 przedstawiono typowe wartości strat transmisji w pasmach 433MHz i 868MHz. Wyobraźmy sobie system pracujący w paśmie 868 MHz, o mocy wyjściowej 10 dBm, sprawności anteny (zysku) - 20 dB oraz czułości -105 dBm (rys. 2). Układ ten dysponuje teoretycznie zasięgiem ponad 100 metrów, jednak w typowych zastosowaniach, obarczonych wyżej wymienionymi niedogodnościami, rzeczywisty zasięg spada do zaledwie kilku metrów. To powód, dla którego należy z dystansem podchodzić do określeń w rodzaju ,,zasięg aż po horyzont". Trzeba również pamiętać, że margines transmisji (headroom) zmienia się także w czasie w związku ze zjawiskiem wielodrożności. Frank Karlsen. Nordic VLSI Artykuł publikujemy za zgodą autora i firmy Nordic VLSI. Za pomoc w przygotowaniu publikacji dziękujemy Panu Witoldowi Baryckiemu z firmy Eurodis, która jest dystrybutorem firmy Nordic w Polsce. powierzchnia przewodząca Rys. 7. Elektronika Praktyczna 2/2002 95 PROJEKTY CZYTELNIKÓW DzioS "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. 3-kanałowy termometr MIN/MAX z zegarem ~ Projekt 095 Opublikowano już wiele projektów różnego rodzaju termometrów. W handlu jest także ich duży wybór. Szczególnie tanie są te z Dalekiego Wschodu. Jestem jednak przekonany, że są tacy elektronicy, którzy chcą mieć "własny" termometr. Budowę takiego właśnie chciałbym zaproponować. Jest bardzo czytelny, ponieważ wykonany z użyciem wyświetlacza alfanumerycznego, oraz dość tani, bo jako czujniki temperatury zastosowano tanie iermisiory KTYlO-6 firmy Philips. W modelowym termometrze zastosowałem do wyświetlania wyników pomiarów bardzo dobrej jakości wyświetlacza LCD 2*20. Budowa i działanie Schemat elektryczny termometru przedstawiono na rys. 1. Jego "sercem" jest mikroprocesor AT89C4051 oprogramowany za pomocą programów zawartych w pakiecie EASCOM 8051. Zastosowanie mikroprocesora o pamięci 4kE uwarunkowane jest bardzo "pamięciośernyrn" programem sterującym i koniecznością przechowywania sporej liczby danych. Do linii Pl.O procesora dołączony jest kondensator C7 oraz końcówki: 1, 3 i 9 przełącznika analogowego 4066 (U3). Do wyprowadzenia 2 układu 4066 dołączony jest czujnik ICTYlO-6, który mierzy temperaturę zewnętrzną (oznaczony OUT). Do końcówki 4 tegoż układu dołączony jest czujnik, który mierzy temperaturę wewnętrzną (oznaczony IN], Natomiast do końcówki 8 jest przyłączony czujnik o nazwie baby room lub dowolnej innej nazwie, nadanej zgodnie z zindywidualizowanym zastosowania. Czujniki są przyłączane do procesora przez podanie stanu logicznego 1 na poszczególne wejścia sterujące kluczami zawartymi w układzie 4066. W celu jak największej czytelności wyświetlanych wyników pomiarów, nie wszystkie dane wyświetlane są jednocześnie. Program po załączeniu zasilania "krąży" w głównej pętli pomiaru temperatury OUT i IN, a takśe odczytu czasu i daty z zegara czasu rzeczywistego PCF8583. Ponowne naciśnięcie SW3 powoduje powrót programu do pętli głównej. Przycisk SWl [set iime) słuśy do ustawiania czasu i daty. Pierwszym komunikatem wyświetlanym po naciśnięciu tego mikroprzełącznika jest set datę. Przyciskiem SWl ustawiamy miesiąc, a SW2 dzień tego miesiąca. Wpis akceptujemy przyciskiem SW3, po którego naciśnięciu pojawia się komunikat set iime i przystępujemy do ustawiania aktualnego czasu. Tym razem przyciskiem SWl ustawiamy godzinę, a SW2 minutę. Wpis akceptujemy takśe przyciskiem SW3, licznik sekundy jest w tym momencie zerowany, a program powraca do pętli głównej. Zegar RTC PCF8583 ma dodatkowe zasilanie w posta- ci baterii litowej o napięciu 3V, dzięki czemu jest odporny na zaniki napięcia zasilania. Dokładność wskazań zegara regulujemy dobierając wartość kondensatora C8. Potencjometr montażowy PRl słuśy do regulacji kontrastu wyświetlacza LCD. Oprogramowanie Odczyt rezystancji czujników ICTYlO-6, a tym samym temperatury, dokonywany jest poleceniem programowym EASCOM-a Getic(pin). Rezystancja czujnika jest zależna od temperatury w jakiej się on znajduje. A oto wydruk jedego z podprogramów pomiarowych: Sub Pomiar_l W = Getrc(pl.O) W = W - 82 4 A = W / 6.50 Result _ 1 = Fusing ( a , # # #- # ) Return End Sub Z powyższego listingu wynika, śe od odczytanej wartości zmiennej W, zadeklarowanej jako Inieger, odejmowana jest pewna liczba, w tym przypadku 824, która jest przesunięciem dla temperatury 0C. Następnie otrzy- Elektronika Praktyczna 2/2002 PROJEKTY CZYTELNIKÓW LCD 2*20 VCC Rys. 1. maną wartość A, zadeklarowaną jako Single, dzieli przez współczynnik skali (6,5). Otrzymaną w ten sposób wartość zmiennej Result_l, zadeklarowanej jako String, procesor poleceniem Fusing zaokrągla do jednego miejsca po przecinku i wynik pomiaru jest już gotowy do wyświetlenia na LCD. Rozdzielczość otrzymanych wyników pomiarów przy C7=1,5jj.F i Yl=ll,0592MHz wynosi 0,3C. Oprócz tych czynności procesor wykonuje jeszcze jedną ważną, a mianowicie porównuje wyniki pomiarów czujnika OUT i zapisuje w pamięci RAM wartość najniższą i najwyższą. Jednocześnie zapamiętuje godzinę i minutę wystąpienia tych wartości. Po naciśnięciu przełącznika SW2 program ,,wchodzi" w pętlę wyświetlania minimalnej i maksymalnej wartości temperatury, a także czasu ich pomiaru. Na wyświetlaczu można wówczas zobaczyć: minOut -3,9C 04:02 maxOut 2,2C 15:54 Następnie, jeżeli chcemy zachować te dane to ponownie naciskamy przycisk SW2 i wówczas pojawia się napis: zachowano min_max, a procesor powraca do poprzednich czynności. Jeśli natomiast chcemy wykasować te dane, to naciskamy przycisk SW3 i wtedy pojawia się napis: skasowano min_max, a procesor powraca do pętli głównej i zapamiętywanie najniższych i najwyższych wartości temperatury zaczyna od początku. Skalowanie Niestety, skalowanie termometru jest niezbdne, gdyż poszczególne egzemplarze zarówno czujników KTY 10-6, mikroprocesorów AT89C4051 jak i rezonatorów kwarcowych różnią się od siebie. Po przeprowadzeniu doświadczeń okazało się, że nawet małe różnice między wartościami niektórych parametrów różnych egzemplarzy danego elementu powodują znaczne różnice między odczytywanymi wynikami. Jednak w największym stopniu wyniki pomiarów zależą od napięcia zasilania mikroprocesora. Na przykład, różnica pomiędzy napięciami wyjściowymi różnych egzemplarzy LM7 805 o wartości 0,2V powoduje różnicę w odczycie temperatury aż o 1C. Tak więc każdy ka- nał najlepiej wy skalować osobno. Należy przeprowadzić to w ten sposób, że napisany program modyfikujemy tak, aby zamiast daty wyświetlana wartość była zmiennej W. Umieszczamy czujnik w wodzie z lodem i ten sposób ustalamy jaką liczbę należy odjąć od zmiennej W, aby termometr wskazywał temperaturę w tych warunkach 0C. Następnie umieszczamy ten czujnik w znanej nam temperaturze (zmierzonej innym termometrem) i ustalamy przez jaką liczbę należy podzielić zmienną A, żeby wynik wskazań był prawidłowy. Reakcja KTYlO-6 na zmiany temperatury jest dość powolna, dlatego podczas skalowania należy przetrzymać w danych warunkach przez co najmniej kilka minut. Przedstawiony termometr był skalowany dla temperatury 37C. Według mojej oceny, po prawidłowym wy-skalowaniu termometru można uzyskać dokładność wskazań rzędu ą0,3C. Przypomnę, że czujniki są dołączane do procesora poprzez klucze analogowe (4066), które mają swoją rezystancję wewnętrzną. Wynosi ona w stanie włączenia WYKAZ ELEMENTÓW Rezystory Rl: 10kQ R2...R3: 4,7kQ PR1: 4,7kQ (miniaturowy potencjometr montażowy) Kondensatory Cl: 1000^F/16V C2: 470^F/10V C3, C9: lOOnF C4, C5: 33pF Có: 4,7^F C7: 1,5^F (tantal) C8: 27pF (dobrać) Półprzewodniki Ul: LM7805 U2: AT89C4051 (zaprog ra m owa ny) U3: 4066 U4: PCF8583 Dl, D2: 1N4148 Różne Yl: 11,059 MHz Y2: 32,768 kHz TH1...TH3: KTY 10-6 LCD: wyświetlacz alfanumeryczny 2 * 20 znaków BT1: CR2032 (bateria litowa 3V) SW1...SW3: mikroprzełgczniki Elektronika Praktyczna 2/2002 97 PROJEKTY CZYTELNIKÓW około 190H. Tak więc odczytywana wartość rezystan-cji czujnika jest sumą wartości rezystancji termis-tora i wewnętrznej rezystancji klucza z układu 4066. Nie ma to jednak większego wpływu na otrzymany wynik temperatury. Ważne uwagi Modelowy termometr zmontowany został w obudowie typu Z19 i jest przeznaczony do umieszczenia na ścianie. Jednakże nic nie stoi na przeszkodzie, aby zastosować inny typ obudowy. Termometr j est zasilany z zewnętrznego stabilizowanego zasilacza +5V o wydajności prądowej 200mA. Zastosowany wyświetlacz LCD posiada fabrycznie dołączone podświetlacz poprzez rezystor o wartości 6,8H. Dzię- ki temu pobiera tylko około 12 Om A prądu. Pobór prądu przez cały układ termometru wynosi około 140mA, więc zastosowany zasilacz jest całkowicie wystarczający. Jak już wspomniałem, wyniki pomiarów zależą od napięcia zasilania procesora, tak więc dane urządzenie należy wyskalować wraz z przeznaczonym do niego zasilaczem. Jeżeli natomiast chcielibyśmy zastosować funkcję włączania i wyłączania podświetlenia LCD, to należy zastosować drugi zasilacz. Bardzo ważne jest także zastosowanie dobrej jakości złącz, zarówno zasilacza jak i złącza łączącego czujniki temperatury z płytką procesora. W prototypie zastosowano złącze typu Cannon DB15, zapewniające dobry styk czujnika z układem. Czujniki KTY10-6 dołączone są do płytki przewodem ekranowanym, który może mieć długość nawet kilkanaście metrów. Zalecałbym jednak, aby dany czujnik wyskalować z daną długością przewodu. Czujnik pomiaru temperatury wewnątrz pomieszczenia [IN] jest dołączony do układu przewodem o długości około Im, ażeby mierzyć rzeczywistą temperaturę w pomieszczeniu, a nie temperaturę urządzenia. Należy także wspomnieć o roli kondensatora C7. Musi to być kondensator o dobrych parametrach, gdyż jest on bezpo- średnio odpowiedzialny za temperaturę odczytywaną przez mikroprocesor. Może to być na przykład kondensator tantalowy. Jeśli chcemy, żeby wartości najniższej i najwyższej temperatury nie były tracone wraz z zanikiem zasilania, to możemy wykorzystać do ich zapaiętywania pozostałą pamięć RAM (2 40B) układu PCF8583. Jest przecież zasilany bateryjnie. Dla osób pragnących wykonać samodzielnie wyżej opisany termometr udostępniam program, który znajduje się na płycie CD-EP2/2002B. Jarosław Tymiński 98 Elektronika Praktyczna 2/2002 NA CD KATALOGI MIESIĄCA: i PHILIPS SANYO g Międzynaro a:' ' * j /
agazyn elektroniko marzec 15 zł 50 gr PROJEKTY CZYTELNIKÓW DzioS "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. Przestrajany konwerter pasma amatorskiego 80m (3,5...3,8MHz) na pasmo CB Konwerter umożliwia przesłuchanie całego, najbardziej popularnego wśród krótkofalowców pasma 3,5...3,3MHz. Jego wykonanie chciałbym polecić posiadaczom radiotelefonów CB z możliwością odbioru sygnałów z modulacją jednowsięgową. Dzięki wbudowanemu wzmacniaczowi w.cz. układ charakteryzuje się dużą czułością, a więc nie wymaga rozbudowanych systemów antenowych - wystarczy "kawałek drutu". Przesirajany ręcznie oscylatoi uwalnia operatora od ciągłego przełączania kanałów CB i dostrajania pokrętłami radiotelefonu (ich żywotność jest przecież ograniczona}, dając jednocześnie komfoń płynnego (bez luk} wybierania częstotliwości. Projekt 096 Schemat elektryczny konwertera pokąsano na rys. 1, natomiast na rys. 2 przedstawiono schemat blokowy głównego elementu konwertera - układu TCA440. Jest to scalony odbiornik AM, który wśród zarnienników posiada również - jeszcze dostępny -krajowy UL1203N. Zastosowanie go znacznie uprościło budowę, strojenie i uruchomienie konwertera. Działanie konwertera Sygnał uzyskany z anteny i wydzielony w obwodzie Li, C2 zostaje wzmocniony we wzmacniaczu w.cz., a następnie podany do mieszacza. Wzmacniacz w.cz. zawarty USl ma możliwość regulacji wzmocnienia. Maksymalne uzyskujemy zwierając wyprowadzenie numer 3 do masy. Można w tym celu zastosować potencjometr, ale taki regulator ma zazwyczaj wbudowany odbiornik CE (RF GAIN). Na drugie wejście mieszacza podany jest sygnał he-terodyny, której zewnętrznymi elementami są: L2, C3, C4 i warikap Dl. Napięcie prze-strajające, ograniczone do wymaganego poziomu potencjometrem montażowym R2, pobrane jest z potencjometru R3 i poprzez Rl podane na Dl. Obciążeniem mieszacza jest dławik DŁl, z którego sygnał, przez kondensator C6, podany jest na wyjście konwertera. Napięcie zasilania jest stabilizowane i wygładzone w obwodzie zawierającym elementy R4, D2, C5 i C7. Diody D3 można nie stosować, bowiem zabezpiecza ona 16 1G| 14 TCA440 Rys. 1. I C7 T T hO Da ndateltfanu CB i,hs T BOOhm L1TXT(t22) Widok od dołu (od strony (frricu) Elektronika Praktyczna 3/2002 101 PROJEKTY CZYTELNIKÓW 14 12* stabilizator napita zasilania 3,5V| Rys. 2. tylko przed odwrotnym podłączeniem zasilania. Również rezystor R5 pełni rolę zabezpieczającą - stanowi obciążenie nadajnika. Należy zaznaczyć, śe włączanie nadawania z przyłączonym konwerterem jest niedopuszczalne, a zabezpieczenie rezystorem R5 fz uwagi na jego moc) raczej chwilowe. Montaż i uruchomienie Urządzenie zmontowałem na jednostronnej płytce drukowanej o wymiarach 35x50mm, której widok od strony elementów przedstawiono na rys. 3. Dławik Li to fabryczny filtr 7x7 o oznaczeniu 422. Jest to obwód wejściowy fal krótkich. Cewkę. L2 niestety trzeba nawinąć samemu. Na korpusie filtru 7x7 wyłamu- et 15* 114 134 trzystopniowy wzmacniacz pcz, wzmacniacz ARW 9 jemy środkową przegrodę., dzięki czemu zyskamy nieco więcej miejsca na uzwojenie. Używając przewodu DNE 0,1...0,2mm układamy najpierw uzwojenie z odczepem, a nad nim uzwojenie sprzęgające i zabezpieczamy klejem. Ważne jest zachowanie właściwego kierunku uzwojeń, bo w przeciwnym przypadku oscylator nie wzbudzi się. Początki uzwojeń zaznaczyłem kropkami. Pozostałe szczegóły wykonania L2 znajdziemy na schemacie. Całość najlepiej zaekranować w pudełku z cienkiej, pocyno-wanej blachy. Obudowę potencjometru R3 połączyć z masą układu, a pokrętło wyposażyć w jak największą gałkę, która znacznie ułatwi obsługę. Do przyłączenia anteny wystarczy gniaz- czwarty stopłert wzmacniacza pcz, dko bananowe. Z radiotelefonem łączymy ją odcinkiem współosiowego przewodu 50H zakończonego wtyczką. Podłączamy zasilanie, najlepiej wspólne z urządzeniem CE. Potencjometr R2 ustawiamy w środkowym położeniu, natomiast ślizgacz R3 skręcamy w skrajne położenie w kierunku masy. Teraz musimy zdecydować, który kanał wykorzystamy do pracy z konwerterem. Ja wybrałem dwudziesty. Do tego kanału musimy dostroić konwerter. W tym celu na wejście podajemy z generatora sygnałowego sygnał o górnej częstotliwości odbierany przez konwerter - z wielkim zapasem (3,850MHz). Pokręcając rdzeniem obwodu L2 doprowadzamy do odbioru sygnału z generatora przez radiotelefon. Następnie ustawiamy generator sygnałowy na 3,450MHz (sygnał o dolnej częstotliwości odbierany przez konwerter). Potencjometr R3 skręcamy w przeciwne skrajne położenie. Regulując suwakiem R2 doprowadzamy do odbioru sygnału generatora przez radiotelefon. Można znaleźć WYKAZ ELEMENTÓW Rezystory Rl: lOOkO R2: 220kO (montażowy) R3: 22kQA (potencjometr) R4: 220D R5: 47...5ÓD/1W Kondensatory Cl: 5,1 pF C2: 300pF C3: 27 pF C4: 20pF C5: lOOnF Có: l,5pF C7; 100^F/10V Półprzewodniki US1: TCA440 Dl: BB105G D2: BZPÓ33/C5YÓ D3: 1N4001 Różne Dłl: ó,8...10nH gniazdo bananowe LI: filtr 7x7 (422) L2: filtr 7x7 (szczegóły na schemacie) przewód koncentryczny 50a ok. 0,5m wtyk UC1 właściwe położenie rdzenia L2 nie dysponując generatorem, gdyż dolna cze.sc pasma zajęta jest przez telegrafię, a w górnej usłyszymy rozmowy krótkofalowców. Filtr wejściowy Li stroimy na największą moc odbieranego sygnału w środku pasma, lub nieco powyżej, gdy nie znamy alfabetu Morse'a. Powinniśmy pamiętać, że najlepsze warunki odbioru są późnym wieczorem. Wzmacniacz w.cz. zawarty w strukturze USl pracuje do 50MHz, dlatego zmieniając Li i L2 uzyskamy możliwość odbioru w pozostałych pasmach amatorskich na falach krótkich. Ważne podczas pracy z konwerterem: pamiętajmy, aby radiotelefon ustawić na kanał, dla którego stroiliśmy obwód heterodyny L2. Mirosław Sadlak Rys. 3. AlŁ 102 Elektronika Praktyczna 3/2002 BIBLIOTEKA EP W ^Bibliotece EP" prezentujemy książki dotyczące zagadnień związanych z różnymi dziedzinami techniki, jednak zawsze przydatne w pracy elektronika iub pomocne w uprawianiu elektronicznego hobby, Nasza opinia jest oczywiście subiektywna, aie 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óiki, Aby nie marnować miejsca w EP, nie będziemy publikować recenzji książek ocenianych na jedną iub 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 Dziaie Handlowym AVT (patrz str, 25), Chcemy w ten sposób udostępnić je Czytelnikom EP, Paul Kimmel: "Delphi 6 dla profesjonalistów", 674 str.f zawiera CD-ROM, Wydawnictwo RM 2001 Elektroniki ProKty W księgarniach można znaleźć całe mnóstwo książek o programowaniu w Delphi. Zjawisko to jest jak najbardziej pożądane, jednak, jak to zwykle bywa, ilość nie przekłada się na jakość - coraz trudniej znaleźć książkę naprawdę wartościową i wartą wydania pieniędzy. W ramach Biblioteki EP staramy się prezentować tylko te książki, które naszym zdaniem są godne polecenia. Jedną z takich książek jest "Delphi 6 dla profesjonalistów". Sugestia zawarta w tytule, że jest to książka dla profesjonalistów, nie do końca jest zgodna z prawdą. Przy tak rozbudowanych możliwościach, jakie oferuje najnowsza wersja Delphi, niemożliwe jest zawarcie dokładnych informacji na zaledwie 674 stronach, a zawodowi programiści oczekują jak najbardziej kompletnych informacji. Bardziej trafny wydaje się oryginalny tytuł "Buil-ding Delphi 6 Aplications", gdyż, jak można przeczytać we wstępie do książki, autor chce pokazać jak, korzystając z Delphi, poprawnie tworzyć zaawansowane aplikacje. Po krótkim wprowadzeniu w środowisko IDE Delphi oraz pobież- nym przypomnieniu podstaw języka Pascal (rozdział ten jest przeznaczony dla zaawansowanych programistów rozpoczynających dopiero pracę w środowisku Delphi), czytelnik jest rzucany na głębokie wody - projektowanie klas, polimorfizm, dziedziczenie, budowa i działanie programów w systemie Windows, dokładne omówienie podstawowych klas Delphi, obsługa zdarzeń i komunikatów i inne zaawansowane techniki programowania obiektowego. Następnie jest przedstawiony powód stosowania bibliotek dynamicznych oraz pokazany sposób ich tworzenia i korzystania z funkcji w nie wbudowanych. Dużo miejsca autor poświęcił tematowi tworzenia komponentów oraz ich testowania. Kolejne rozdziały są poświęcone wykorzystaniu standardowych komponentów Delphi w tworzonych aplikacjach. Autor starannie i z wyczuciem dobrał przykłady ilustrujące wykorzystanie poszczególnych komponentów - charakteryzują się nie tylko walorami edukacyjnymi, ale są również ciekawe. Do książki jest dołączona płyta CD-ROM, na której znajdują się kody źródłowe przykładów opisywanych w książce. Dodatkowo na płycie znajduje się demonstracyjna (180-dniowa) wersja oprogramowania Nokia WAP Toolkit v. 2.0, umożliwiająca programowanie aplikacji wykorzystujących protokół WAP oraz demonstracyjna wersja oprogramowania DELPHI 6 dla Virtual Team Server firmy Starteam, wspomagającego tworzenie aplikacji przez grupy robocze. Książka jest przeznaczona dla programistów o przynajmniej średnim stopniu znajomości języka Ob-ject Pascal, chociaż bardziej zaawansowani programiści również znajdą w niej wiele interesujących informacji. Na słowa krytyki zasługuje miękka oprawa książki, która z pewnością nie wytrzyma próby czasu. Janusz Pieniak: "Anteny telewizyjne i radiowe", WKŁ 2001 Anteny są elementami niezbędnymi we wszelkiego rodzaju radiowych systemach teletransmisyjnych, stosowanymi od chwili powstania pierwszych odbiorników radiowych. Pomimo swojej długiej historii, zarówno teoria jak i zasady budowy i stosowania anten są słabo spopularyzowane, co powoduje, że większość nawet doświadczonych elektroników, traktuje anteny jako elementy pochodzące z ,,krainy czarów". O tym, śe anteny to jednak realny element ze świata techniki mogą przekonać się czytelnicy prezentowanej książki. Jest to już czwarte wydanie, a więc nie trzeba jej rekomendować. Autor w uporządkowany sposób wprowadza czytelników w teorię an- ten, omawia najważniejsze zjawiska mające wpływ na ich działanie, definiuje parametry i omawia ich znaczenie dla działania zarówno samych anten, jak i kompletnych systemów na-dawczo-odbiorczych. Przedstawia także budowę najczęściej stosowanych rodzajów anten. Osobne rozdziały poświęcono omówieniu zagadnień związanych z antenami i instalacjami do odbioru sygnałów telewizyj nych fw tym satelitarnych) oraz radiowych. 136 Elektronika Praktyczna 3/2002 BIBLIOTEKA EP telewizyjne i radiowe JTJU- W grupie "radiowej" znalazły się takie anteny do CP oraz do urządzeń krótkofalarskich. Prezentację zagadnień teoretycznych autor uzupełnia niezbędnymi wzorami, które wbrew pozorom ułatwiają, a czasami wręcz umożliwiają, zrozumienie zjawisk występujących w antenach i w urządzeniach, do których są dołączone. Autor nie unika takśe praktycznych aspektów budowy anten - kilkoma przykładami ilustruje, w jaki sposób mośna samodzielnie wykonać dobrej jakości antenę. Przydatne są takśe tablice zawierające m.in. wykazy częstotliwości nadajników telewizyjnych (uwzględniające nowy podział administracyjny), takśe satelitarnych. Co równieś istotne dla praktyków, autor wielokrotnie odwołuje się do urządzeń dostępnych w sieciach handlowych w naszym kraju, co powoduje, śe prezentowaną ksiąśkę mośna potraktować jako poradnik dla osób chcących samodzielnie zbudować dobrej jakości system antenowy. Nieco miejsca przeznaczono takśe dla specjalistów zajmujących się pomiarami parametrów anten. Całość wiedzy zawarto w pięciu rozdziałach na 192 stronach, które z efektowną okładką kosztują 32 zł. Warto! Lesław Topór Kaminski: "Wzmacniacze elektroniczne w układach aktywnych", Wydawnictwo Politechniki Śląskiej 2000 Na krajowym rynku wydawniczym brakuje ksiąśek poświęconych nowoczesnym układom analogowym, w tym najbardziej popularnym w praktycznych aplikacjach wzmacniaczom operacyjnym. W pewnym stopniu tę lukę wypełnia prezentowana ksiąśka, cho-ciaś jej specyfika (jest to bowiem podręcznik akademicki) nie zachęci ,, my ślących lutownicą" praktyków do jej zgłębiania, jakkolwiek silne nasycenie ksiąśki teorią (i oczywiście wzorami) nie jest wcale jej wadą. iesuw tohw uikd UJZMRCNIflC2 ^UKTftONICZHE Ul UKŁflDRCH AKTflUWjGt Ksiąśkę podzielono na osiem rozdziałów, w których przedstawiono osiem rodzajów wzmacniaczy analogowych, przy czym rozwaśania oparto (w większości przypadków) na ich modelach idealnych. Poziom zaawansowania wykładu prowadzonego w ksiąśce wymaga od czytelnika dobrego przygotowania z podstaw elektroniki, teorii obwodów i układów elektronicznych. Przyda się takśe od-świeśenie wiadomości z algebry i rachunku całkowego. Naszym zdaniem jedyną wadą tej ksiąśki jest brak odwołań do realnych układów elektronicznych, co zdecydowanie ułatwiłoby adeptom elektroniki zrozumienie celu angaśowania aparatu matematycznego do wykładu o elektronice analogowej. Zenon Jagodziński: "Przetworniki ultradź wieko we", WKŁ1997 Róśnego rodzaju elementy piezoelektryczne są juś na stałe stosowane przez elektroników. Jednym z najbardziej klasycznych obszarów ich stosowania są przetworniki elektroakustyczne (stosowane np. w głośnikach wysoko to nowych lub popularnych ,,brzęczykach") oraz przetworniki ultradźwiękowe, które są najczęś- książka wybitna, polecamy! książka o dużych walorach praktycznych, polecamy! może się przydać daleka od doskonałości nie warto kupować ciej stosowane w czujnikach ruchu w systemach alarmowych, w głowicach nadawczo-odbiorczych systemów echo-lokacyjnych, a takśe modulatorach światła laserowego, stosowanych od niedawna w telekomunikacji. Prezentowana ksiąśka jest monografią, w której omówiono wszystkie najwaśniejsze zagadnienia związane z budową nowoczesnych piezoelektrycznych przetworników ultradźwiękowych, a takśe ich stosowaniem w docelowych urządzeniach. Nieco miejsca autor poświęcił filtrom piezoelektrycznym. P a rdzo interesujące jest takśe wypunktowanie analogii między elementami piezoelektrycznymi i układami mechanicznymi. Zenon JagodzJnsJd Przetworniki ultradźwiękowe Elektronika Praktyczna 3/2002 137 BIBLIOTEKA EP Pomimo złożoności tematyki przedstawionej w książce, przyjęty prses autora sposób narracji jest atrakcyjny i pozwala na łatwe zrozu-rnienie prowadzonego wykładu. "Poznajemy Protel 99SE"T zawiera CDT Evatronix 2001 Protel 99SE cieszy się w naszym kraju ogromnym powodzeniem. Jedną z przyczyn sukcesu tego oprogramowania jest łatwy dostęp do jego, w pełni funkcjonalnych, wersji ewaluacyj-nych, których ,,czas życia" fnie ma co ukrywać) indywidualni użytkownicy często wydłużają ze standardowych 30 dni do nieskończoności, za pomocą łatwo dostępnych ,,cracków". Poznajemy Protel W ii Proteł Jeden z dystrybutorów firmy Al-tium (aktualny właściciel Protela) -gliwicka firma Evatronix - zdecydował się na przetłumaczenie i wydanie dla wersji 99SE (do końca pierwszego kwartału 2002 ma pojawić się nowa wersja Protela) broszurki Firsi Sieps, czyli popularnego przewodnika po zakamarkach Protela. Książeczka jest bardzo efektownie wydana - wydano ją na dobrej jakości papierze kredowym, a wszystkie ilustracje są kolorowe. Doskonałą pracę wykonał tłumacz, który najwyraźniej zna nie tylko języki: angielski i polski, ale także Protela. Autorom publikacji rzeczywiście udało się zrealizować obietnicę z okładki, na której napisano, że jest to ,,Praktyczny podręcznik wprowadzający do projektowania w programie Protel 99SE". Należy jednak uświadomić sobie, że na 36 stronach formatu A5 nie da się zawrzeć odpowiedzi na wszystkie istot- ne pytania użytkowników, którzy w pewnym momencie będą skazani na korzystanie z wbudowanej w Protel 99SE pomocy. Zachęcamy zatem do podjęcia próby wydania kompletnego podręcznika użytkownika, może już do nowej wersji programu? Stefan J anu s zew sk i, Henry k Świątek: "Nowoczesne przyrządy po Iprz e wo d nik o w e w energoelektronice", WNT 1994 Gdy czyta się tak wiele pytań 0 kryteria doboru i parametry półprzewodnikowych elementów mocy, jakie otrzymujemy od naszych czytelników, to dochodzi się do wniosku, że prezentowana książka jest zdecydowanie za słabo popularyzowana. Chociaż 7 lat jakie upłynęły od chwili jej wydania może wydawać się wiecznością, to okazuje się, że w elementach mocy czas płynie nieco wolniej i informacje zawarte w książce praktycznie się nie zdezaktualizowały. Autorzy w kolejnych rozdziałach omawiają wszystkie podstawowe rodzaje elementów mocy, m.in. diod prostowniczych (także ,,energetycznych"), lawinowych i unipolarnych, tranzystorów (w tym IGPT 1 elektrostatyczne), tyrystory i układy scalone mocy. Zwracają także uwagę na główne cechy oraz parametry układów sterujących i zabezpieczających stosowanych w sterownikach półprzewodnikowych stopni mocy. Pomimo sporej dawki wiedzy teoretycznej (w najlepszym tego słowa znaczeniu), prezentowaną książkę powinien mieć u siebie na półce każdy inżynier zajmujący się elektronicznymi urządzeniami sterującymi o dużej mocy wy- Stcftn Janmiewiki Henryk Lwi#łtlt Nowoczesne przyrządy półprzewodnikowe w energo- Ś elektronice jściowej. Sposób ,,podania" tej teorii jest naprawdę inżynierski, co dość rzadko zdarza się w takich publikacjach. Janusz A. Dobrowolski: " Mo nol ity cz ne m ikro fal o w e układy scalone", WNT 1999 Technika mikrofalowa, zwłaszcza oparta na klasycznych (jak mawiają studenci wydziałów elektroniki - ,.hydraulicznych") rozwiązaniach, nie cieszy się wśród elektroników zbyt dużą popularnością. Jest to efekt m.in. trudnego dostępu do wiedzy w tej dziedzinie, a także trudności w zdobyciu podzespołów stosowanych w zakresie mikrofalowym. Podobnie jak i w innych dziedzinach elektroniki, do pracy w zakresie mikrofalowym coraz monolityczne1 mikrofalowe układy scalone modelowanie projektowanie pomiary częściej są stosowane układy scalone, najczęściej produkowane z arsenku galu. O technologii i sposobach ich produkcji, właściwościach elementów i układów wykonywanych w technologiach charakterystycznych dla MMUS (Monolitycznych Mikrofalowych Układów Scalonych), stosowanych w nich rozwiązaniach układowych itp. pisze w interesujący sposób autor w prezentowanej książce. Jest to więc bardzo użyteczne kompendium wiedzy na temat nowoczesnych układów mikrofalowych, dzięki któremu można zgłębić podstawy ich budowy i działania, co może stanowić doskonałe wprowadzenie do ich praktycznego stosowania. Co prawda nadal brakuje książki pozwalającej kontynuować edukację ,,mikrofalową", ale jest od czego zacząć. 138 Elektronika Praktyczna 3/2002 AUTOMATYKA cjt&roy/nihi Ł 0 G01 doćć dluyo nl&fjodzl&I111& Icruluju 1111 Tynku mulycli -jt&roy/iilkóy/ loylcznycli* W Ico/wu ubl&yl&yo roku cjl&iii& y/pruy/udzll 11 u ryn&k kul&jn ^ Imioy/ucj^ tych 111 ulycli 111 udulóy/* y/ l&j dzl&dzlnl^ /&L/ y/yiiui^z&ni&ui -iij^ktukiilurny ólis j&-}l fukt&iii y/urtym zuuy/uż&nlu* i z ŁO GO! SIEMENS Do sterowników nowej rodziny LOGO! wprowadzono dwie zmiany, niezwykle istotne z punktu widzenia użytkowników: K Przewidziano możliwość łączenia ze sobą sterowników za pomocą specjalnych złącz ulokowanych w bocznych ściankach obudowy, dzięki czemu rozbudowanie bazowego sterownika (obecnie dostępne tylko w krótkich obudowach) o dodatkowe moduły I/O lub komunikacyjne nie wymaga wykonywania żadnych połączeń zewnętrznych pomiędzy nimi (rys. 1). Ze względu na zastosowanie modułowej koncepcji budowy systemów sterowania opartych na LOGO!, producent zwiększył liczbę dostępnych modułów roz- szerzających (ekspanderów), wśród których pojawiły się min. dwa moduły komunikacyjne umożliwiające włączenie LOGO! do sieci Instabus oraz ASL K Sterowniki oferowane są w dwóch wariantach: LOGO! Basic i LOGO! Pure. Wyposażenie sterowników wersji LOGO! Basic (fot. 2) jest podobne do starszych wersji sterowników. W ich obudowie zintegrowano panel operatorski składający się z 6-przy-ciskowej klawiatury i alfanumerycznego wyświetlacza LCD. Sterowniki wersji LOGO! Pure (fot. 3) zostały tego interfejsu pozbawione. Jedynym elementem sygnalizacyjnym, w jaki wyposażono sterowniki Rys, LOGO! Pure, jest dwukolorowa dioda świecąca sygnalizująca aktualny stan pracy sterownika. Zestawienie podstawowych parametrów dostępnych sterowników LOGO! oraz współpracujących z nimi ekspanderów zamieszczono w tab. 1. Ekspandery, podobnie do sterowników, są przystosowane do montażu na szynie DIN, a jedynym elementem sygnalizacyjnym w jaki je wyposażono jest dioda świecąca. Na fot. 4 pokazano widok modułu ekspande-ra wejść analogowych AM2, a na fot. 5 wygląd modułu komunikacyjnego CM KNX. Maksymalna liczba wejść cyfrowych (wraz Elektronika Praktyczna 3/2002 AUTOMATYKA O Q O Ś.BW! ,FreJ/M i ParJnhOl Fot, 2, z ekspanderami) nie może być większa niż 24, wejść analogowych może być co najwyżej 8, a maksymalna liczba wyjść wynosi 16. Podczas dobierania modułów do zestawu sterującego należy pamiętać, że wszystkie muszą być przystosowane do zasilania takim samym napięciem, co oznacza, że nie jest możliwe "mieszanie" w ramach jednego systemu elementów zasilanych zarówno bezpośrednio z sieci, jak i z zasilacza 12 lub 24VDC. Oprócz przedstawionych modyfikacji, udoskonalono także funkcjonalność sterowników, wprowadzając do ich systemu operacyjnego kilka istotnych modyfikacji: Fot, 3 / zegar czasu rzeczywistego RTC samoczynnie uaktualnia swój stan zgodnie z czasem zimowym i letnim, /dostęp do menu sterownika (w wersji LOGO! Basic) jest znacznie łatwiejszy niż w starszych sterownikach (nie wymaga jednoczesnego przyciskania kilku przycisków), /zastosowano zaawansowane mechanizmy ochrony programu opracowanego przez użytkownika przed odczytem przez nie-upr a wni ony ch, /programy przechowywane w pamięci sterownika i zewnętrznych modułach pamięci można nazywać, dzięki temu identyfi- Tab. 1. Zestawienie podstawowych parametrów dostępnych sterowników LOGO! oraz współpracujących z nimi ekspanderów. Typ Zasilanie Wejścia binarne Wejścia analogowe Wyjścia Inne wyposażenie 24 24VDC 8x24VDC 2x(0 10)V tranzystor LCD, klawiatura 24RC 24VAC 8x24VAC - przekaźnik RTC,LCD,klawiatura 12/24RC 12/24VDC 6x12/24VDC 2x(0 10)V przekaźnik RTC, LCD, klawiatura 230RC 230VAC/DC 8xAC/DC230V - przekaźnik RTC,LCD,klawiatura 24RC0 24VAC 8xAC 24V - przekaźnik RTC 12/24RCO 12/24VDC 6x12/24VDC 2x(0 10)V przekaźnik RTC 230RCO 230VAC/DC 8xAC/DC230V - przekaźnik RTC LOGG Wejścia analogowe Typ Zasilanie Wejścia binarne Wyjścia DM8 24 24VDC 4x24VDC - 4 x tranzystorowe DM812/24 R 12/24VDC 4x12/24VDC - 4 x przekaźnikowe DM8 230R 230VAC/DC 4x230VAC/DC - 4 x przekaźnikowe AM 2 12/24VDC - 2x(0 .10)W (0 20)mA(10b) - LOGO! Moduły komunikacyjne Typ Zasilanie Wejścia binarne Wejścia analogowe Wyjścia binarne CMKNX(lnstaBus) 24VDC 16x24VDC 8 12 CMASi 24VAC/DC 4x24VDC - 4 Elektronika Praktyczna 3/2002 AUTOMATYKA Fot, 4 kacja wersji nie będzie sprawiać takich trudności jak wcześniej, /wprowadzono możliwość wyświetlania podczas pracy sterownika (fot. 6) komunikatów definiowanych przez użytkownika, /do zestawu 30 wbudowanych funkcji dodano programowy emulator przycisku o wybieranej przez użytkownika charakterystyce czasowej (tzw. softkey). Jak wynika z tego krótkiego opisu, udoskonalenia wprowadzone do nowych LOGO! nie zmieniają koncepcji systemu, w związku z czym nie zmuszają użytkowników do zmiany dotychczasowych przyzwyczajeń, ale w dość istotnym stopniu poprawiają walory użytkowe sterowników. Pewne udoskonalenia wprowadzono do opro gr am o w ani a . Fot, 6. Elektronika Praktyczna 3/2002 Fot, 5, LOGO! Soft Comfort 3.0 Podobnie do starszych wersji, jest to bardzo komfortowy program narzędziowy, za pomocą którego można przygotowywać i symulować działanie programów dla sterowników LOGO!. Na rys. 7 pokazano widok głównego okna tego programu. Wprowadzenie schematu logicznego jest bardzo łatwe, głównie dzięki kontekstowo zmieniającemu się paskowi menu narzędziowego (widoczne w dolnej części okna, tuż nad oknem komunikatów). Bardzo podobnie wygląda okno symulatora (rys. 8), z tą różnicą, że na pasku narzędziowym są wyświetlane wykorzystywane w projekcie wejścia, wyjścia, a także zdefiniowane przez użytkownika punkty testowe pomocne SIEMENS DirJv-Kl Par4_l ŚOlg RalJ_JhQ Par-LJ ŚQU R Jn. Parl O O) o AUTOMATYKA L* ^na
I BOI It
1 Rcm OfT
Rys, 7, naw OhwHm|____________ Ś RS - Ś Ś-- Ś Ś Q1 I ... I Rwrt"O1T '------' GD3 D Ś G2 12 i DD.35m+ - JTL _n Q
J1-25m DO: 0 tim Śpil k *A t* S a 1 Śi T**t Pn l/i Rys, 8, podczas testowania wybranych fragmentów projektu. Program LOGO! Soft Comfort umożliwia programowanie i ustawiania parametrów (w tym nastaw zegara RTC) wszystkich dotychczas produkowanych przez Siemensa sterowników z rodziny LOGO! W zależności od zastosowanych w projekcie modułów (i oczywiście ich liczby), program automatycznie dobiera możliwe do zastosowania sterowniki. Ich lista jest wyświetlona w oknie Device Selection pokazanym na rys. 9. Podsumowanie Udoskonalenia wprowadzone przez producenta do sterowników LOGO! nowej generacji trudno uznać za rewolucyjne, co jednak dobrze świadczy o dojrzałości produktu wprowadzonego na rynek klika lat temu. W odróżnieniu od większości opracowań konkurencyjnych, LOGO! są stworzone dla elektroników, ponieważ program sterujący ich pracą jest definiowany za pomocą schematu logicznego z wykorzystaniem standardowych funktorów logicznych Ho Pr ESC Th I4I4S 06.21 61 1 1 >ST0P Prt Nm* jF ro^ r &iHt, Cloch St^rt 4 >Ldit Prt Pr? Ha*? Pauwrd
^ 4 > T A Ą s spotykanych w technice cyfrowej. Nie ma więc konieczności uczenia się nowego języka programowania (zazwyczaj drabinkowego), co jest nie lada atutem systemu. Piotr Zbysińskj, AVT piotr.zbysinski@ep.com.pl Rys, Dodatkowe informacje Dodatkowe informacje o LOGO! orazewalua-cyjną wersję oprogramowania LOGO! Solt Comfort można znaleźć w Internecie pod adresem: http://www1.ad.siemens.de/logo/index_76.htm jorazna płycie CD-EP3/2002B.________________ Elektronika Praktyczna 3/2002 PROJEKTY Internetowy interfejs dla mikrokontrolera, część 1 AVT-5055 Jesteś ciekaw jak za pomocą 8-bitowego mikrokontrolera poszaleć w Internecie? Chciałbyś samodzielnie zbudować serwer internetowy, odbierać i nadawać e-maile? Chcesz nadążyć za modnymi zakamarkami współczesnej techniki mikroprocesorowej? W ańykule opisujemy sposób wykorzystania ultranowoczesnego układu scalonego, który spełnia rolę sprzętowego stosu TCP IIP. O możliwości wykorzystania Internę tu do przesyłania danych przez mikroprocesorowe sterowniki słychać coraz częściej i coraz głośniej. Firmy produkujące mik-rokontiolery oferują zestawy ewa-luacyjne pozwalające na połączenie się z Siecią - większość z nich opisywaliśmy juź w EP. Na przykład takimi spektakularnymi aplikacjami mogą być opisywane juź opracowania Atmela, Ziloga, Mic-rochipa czy firmy Ubicom (dawniej Scenix). W tym ostatnim wykorzystano nowo opracowane mik-rokontiolery z odpowiednio wydajnym rdzeniem oraz "dużą" pamięcią danych i programu. Przy takiej koncepcji, obsługa wszystkich protokołów sieciowych niezbędnych do połączenia z Interne-tem i przesyłania informacji realizowana jest programowo. Takie rozwiązanie ma oczywiście wiele zalet Po poznaniu modułów programowych systemu, można w miarę elastycznie dostosowywać go do własnych wymagań. Jednak z drugiej strony, implementacja sieciowa zajmuje dużo mocy obliczeniowej i pamięci mikrokontrolera. Nie bez znaczenia jest też fakt, że trzeba stosować nowe mikrokontiolery, a to wiąże się zawsze z wprowadzeniem nowych narzędzi (kompilatorów, programatorów, emulato-rów itp.), a więc ze zwiększeniem kosztów. Cóż zatem zrobić, aby nie narazić się na dodatkowe koszty i nie popaść w uzależnienie od konkietnego mikiokontiolera? Od tych dylematów uwalnia nas oferta firmy Seiko - układ S7600A. Jest to specjalizowany układ 14 Elektronika Praktyczna 3/2002 Internetowy interfejs dla mikrokontrolera ? ? 9 Q 3CÓ t e a s 2 s I ^ ^ Q P S
M B * U ]H Bi z q a u. - z z Jt o a S
n ^ 10 iii
a 8 S S 8 5 S Rys. 1. Schemat elektryczny interfejsu. Elektronika Praktyczna 3/2002 15 Internetowy interfejs dla mikrokontrolera RESETX ( 16-byte FIFO 1-byte BUFFER Rys. 2. Schemat blokowy układu S7600A. umożliwiający szybkie i bezproblemowe połączenie z siecią, praktycznie dowolnego, obecnie produkowanego mikrokontrolera. Przykładem niech będzie opisywany tutaj system, w którym doskonale wszystkim znany i niezbyt wydajny mikrokontroler AT89C51 wraz z układem S7600A pracuje jako klient poczty elektronicznej. Opis układu Schemat interfejsu pokazano na rys. 1. Najważniejszym jego elementem jest oczywiście S7600A - układ wielkiej skali integracji (VLSI) zawierający w swojej strukturze kompletny, sprzętowy stos TCP/IP wraz z zaimplementowa-nym protokołem PPP, interfejs łącza szeregowego UART z 16- List. 1. Procedura zapisu danych do układu S7600A przez magistralę równoległą. Void zapis_ichip unsi ned char adres, unsi ned char dana) { cs-1' rs=0; //adres na magistrali readx=l; writex=0; P0=adres; //adres na magistrale writex=l; rs=l; //dane n a magistrali readx=0; cs-1' readx=l; writex=0; P0=dana; //dana n a magistrale writex=l; readx=0; while(busyx==0); //czeka] } na nieaktywne busyx bitowym odbiorczym buforem FIFO, lOkB pamięci RAM oraz rozbudowany szeregowo - równoległy interfejs MPU do połączenia z mikrokontrolerem (rys. 2). Przez ten interfejs mikrokontroler zapisuje lub odczytuje informacje do/z wewnętrznych rejestrów S7600A. Układ zasilany jest napięciem 0 wartości z zakresu 2,4V...3,6V 1 pobiera minimalny prąd w czasie pracy: 0,9mA w trakcie transmisji i tylko 150|iA w stanie oczekiwania na transmisję. Tak niski pobór mocy wskazuje na to, że konstruktorzy przewidywali jego pracę przy zasilaniu bateryjnym. Układ jest taktowany zewnętrznym sygnałem zegarowym. Producent zaleca częstotliwość 2 56KHz, ale maksymalna jej wartość może wynosić nawet 5MHz. Układ S-7600A zawiera dwa interfejsy MPU: równoległy i szeregowy. W trybie interfejsu równoległego można połączyć magistrale danych rodziny x80 firmy Intel lub 68K firmy Motorola. Poprzez te interfejsy następuje wymiana informacji pomiędzy mikrokontrolerem a układem. Jak widać zadbano, aby maksymalnie ułatwić pracę projektantom. Wybór interfejsu równoległego następuje poprzez wymuszenie wysokiego poziomu na wejściu PSX. Poziom wysoki na wejściu C86 określa tryb pracy interfejsu dla Tab. 1. Sposób obsługi rejestrów układu S7600A dla dwóch możliwych konfiguracji interfejsu. RS Motorola R/WX Intel Funkcja READX WRITEX 1 1 0 1 Czytanie rejestru 1 0 1 0 Zapis rejestru 0 1 0 1 Czytanie rejestru indeksowego 0 0 1 0 Zapis rejestru indeksowego procesorów Motoroli, a poziom niski dla procesorów Intela. W tab. 1 zawarto zestawienie stanów logicznych na wejściach sterujących zapisem i odczytem dla obu ro dzaj ów magi strali. Ponieważ w projekcie wykorzystywana jest magistrala Intela, to ją postaram się opisać dokładniej . Zainteresowani sterowaniem S7600A poprzez magistralę Motoroli mogą znaleźć odpowiednie dane w dokumentacji firmowej. Tryb magistrali Intela jest wprowadzany, kiedy na wejściu C86 jest poziom niski "L", a na PSX poziom wysoki "H". Dane oraz magistrala adresowa są multiplek-sowane. Każdy cykl rozpoczyna się od ustawienia na magistrali adresu. Adres ten jest zatrzaskiwany w wewnętrznym rejestrze podczas narastającego zbocza WRI-TEX. Poziom niski na RS wskazuje, że strobowanie WRITEX dotyczy fazy adresu na magistrali. W następnej fazie dane mogą być zapisywane lub odczytywane poprzez wygenerowanie odpowiednich zboczy sygnałów WRITEX lub List. 2. Procedura odczytu danych z układu S7600A przez magistralę równoległą. r odczyt_ichip (unsigned char adres) isigned char ds isigned char di. cs=l' rs=0; readx=l; writex=0; P0=adres; writex=l; cs=0; rs=l; CS=1 ' rs=0; P0=0xff; readx=0; dana_p=P( readx=l; rs=l; //adres wpisany //ustaw jako wejściowy //odczytanie adresu while(busyx==0); //czekaj na nieaktywne busyx cs=l' readx=0; dana=P0; //odczytanie danych readx=l; while(busyx==0) ; //czekaj na nieaktywne busyx retum (dana); 16 Elektronika Praktyczna 3/2002 Internetowy interfejs dla mikrokontrolera es RS READX WRITEX SD7toO BUSYX CLK Rys. 3. Przebiegi czasowe sygnałów podczas zapisu do interfejsu równoległego. READX WRITOC SD7toO BUSYX CLK Rys. 4. Przebiegi czasowe sygnałów podczas odczytu do interfejsu równoległego. READX. Układy logiczne interfejsu generują w tej fazie sygnał BUSYX po opadającym zboczu sygnału WRITEX lub READX. Sygnał ten staje się nieaktywny, gdy S7600A zakończy operację zapisu lub odczytu. Mikrokontroler powinien próbkować sygnał BUSYX. Może on zainicjować kolejny cykl zapisu/odczytu dopiero wtedy, gdy BUSYX staje się nieaktywny. Przebiegi czasowe dla zapisu i odczytu przez magistrale równoległą pokazano na rys. 3 i 4. W prezentowanym projekcie obsługa magistrali jest realizowana programowo. Procedury zapisu i odczytu w języku C przedstawione są na list. 1 i list. 2. Jak już wspomniałem, oprócz interfejsu równoległego można wykorzystać też interfejs szeregowy. Pozwala to połączyć S 7 600 A z mikrokontrolerami za pomocą niewielkiej liczby linii, co ma ogromne znaczenie na przykład dla mikrokontrolerów podobnych do PIC16F84. Ten tryb jest wy- bierany przez wymuszenie na wejściu PSX poziomu niskiego. Linia SD6 magistrali danych jest wtedy wejściem sygnału zegarowego. Linia SD5 to wejście danych, natomiast SD7 wyjście danych (patrząc od strony S7600A). Kierunkiem przepływu danych steruje wejście WRITEX. Poziom wysoki na wejściu WRITEX oznacza odczyt danych, a poziom niski zapis danych. Przebiegi czasowe inter- es RS WRITEX (R/WX) Tab. 2. Przestrzeń adresowa Banku 0. Adres Rozmiar Zawartość 0x0000-0x07ff 2k Kieszeń 0 bufora odbioru 0x0800-0x0bff ik Kieszeń 0 bufora nadawczego OxcOOO-OxOfff ik Dane bazowe TCP 0x1000-0x13ff ik Bufor IP Tab. 3. Przestrzeń adresowa Banku 1. Adres Rozmiar Zawartość 0x0000-0x07ff 2k Kieszeń 1 bufora odbioru 0x0800-0x0bff ik Kieszeń 1 bufora nadawczego OxcOOO-OxOfff ik Bufor PPP 0x1000-0x13ff ik Bufor PAP fejsu szeregowego pokazano na rys. 5 (cykl zapisu) i 6 (cykl odczytu). W strukturze układu S7600A umieszczony jest kompletny port szeregowy UART. Tor odbiorczy zawiera 16-bajtowy bufor FIFO. Dane przesyłane asynchronicznie mają następujący format: 1 bit startu, 8 bitów informacyjnych i 1 bit stopu, bez bitu parzystości. Zasadniczym blokiem układu jest jednak sprzętowy stos TCP/ IP. Zawiera on moduły TCP/UDP, moduł IP, oraz moduł PPP. Z protokołami TCP/UDP/IP/ i PPP są związane 2 kieszenie umieszczone w wewnętrznej pamięci RAM. Cóż to takiego te kieszenie? Otóż są to obszary pamięci RAM, w których umieszcza się dane do przesyłania za pomocą protokołu TCP/ IP. Oprócz kieszeni, w pamięci RAM podzielonej na banki po 5kB umieszczone są bufory pomocnicze protokołów TCP, IP, oraz PPP. Podział pamięci pokazano w tab. 2 i 3. Może się zdarzyć, że przy takim podziale pamięci SD7 (Sl) BUSYX CLK Rys. 5. Przebiegi czasowe sygnałów szeregowego. podczas odczytu dla interfejsu Elektronika Praktyczna 3/2002 17 Internetowy interfejs dla mikrokontrolera Tab. 4. Rejestry układu S7600A. Adres Rejestr Definicja bitu 0x00 Revision Numer wersji rdzenia S-7600A 0x01 General Control - - - - - - - SW_RST 0x02 General Socket Location 0 0 0 0 0 0 S1 SO 0x04 Master Interrupt - - - - - PT INT Link INT Sock IN 0x08 Serial Port Config S_DAV DCD Dsr Hwfc CTS Rl DTR RTS SCTL 0x09 Serial Portlnt PTJnt - - - - - - - 0x0 a Serial Portlnt Mask PINT EN DSINT _EN - - - - - - 0x0b Serial Port Data Rejestr danych portu szeregowego 0x0 c 0x0d Baud Ratę Div Rejestry określające prędkość transmisji 0x10-0x13 Our IPAddress Adres IP serwera dostępowego 0x1 c Clock Div Low Rejestr Clock Divider 0x1 d Clock Div High 0x20 Ind ex Rejestr indeksowy kieszeni 0x21 TOS Pole TOS 0x22 Socked Config status Low TO Buff Emty Buff Fuli D A /RST - Protocol Type 0x23 Socked Status Mid URG RST Term Conu Stan TCP 0x24 Socked Activate - - - - - - S1 SO 0x26 Socked Interrupt - - - - - - 11 10 0x28 Socked Data Avail - - - - - - Dav1 Dav0 0x2 a Socked Interrupt Mask Low TOEn Buff E En Buff Fuli DataA En - - - - 0x2b Socked Interrupt Mask High Urg_En RST-En Term En ConU En - - - - 0x2 c Socked Interrupt Low TO Buff_ Empty Buff Fuli Data Avail - - - - 0x2d Socked Interrupt High URG RST Term Conu - - - - 0x2 e Socked Data 8-bitowe dane kieszeni 0x30 TCP data Send Wpisanie dowolnej wartości rozpoczyna wysyłanie danych 0x30-0x31 Buffer Out Lenght Wielkość bufora wyjściowego (dla czytania tych rejestrów) 0x32-0x33 Bufer In Wielkość bufora wejściowego (dla czytania tych rejestrów) 0x34-0x35 Urgent Data Pointer Wskaźnik ważnych danych w buforze wejściowym/ wielkość datagramu UDP 0x36-0x37 Their port Numer portu docelowego 0x38-0x39 Our port Numer portu źródłowego 0x3 a Socket Status High - - - - - - - Snd-bsy 0x3c-0x3f Their IP address Adres IP docelowy 0x60 PPP Control Status PPP Int Con Val Use PAP TO Dis PPP Int En Kick PPP En PPP Up SRset 0x61 PPP Interrupt Code Kod błędu PPP 0x62 PPP Max Retry - Maks. liczba powtórzeń config request 0x64 PPP String Nazwa użytkownika i hasło mogą występować konflikty przy dostępie, tzn. 2 lub więcej modułów może chcieć w tym samym momencie odwoływać się do jednego wspólnego obszaru. Zadaniem arbitra dostępu do pamięci (rys. 7) jest właśnie bezkonfliktowe przydzielanie jej zasobów do poszczególnych modułów stosu. Układ S-7600A zawiera dwa 5-kilobajtowe banki pamięci (O i 1), jak to pokazano w tab. 2 i 3. Rejestry wewnętrzne S-7600A są podzielone na 3 grupy: globalne, bezpośrednie i indeksowe. Rejestry globalne zajmują przestrzeń adresową od adresu 0x00 do Oxld, oraz od 0x60 do 0x6f. Pośrednie WYKAZ ELEMENTÓW Rezystory Rl: 2,7MQ R2...R11: 3,3kQ Potencjometr 4,7kQ Kondensatory C1...C5, C12, C13: lOOnF Có, C7: 33pF C8: 2,2|iF/16V C9, CIO: 33pF Cli: 1000^F/16V C14, C15: 10^F/16V Półprzewodniki Ml: 1A/1OOV Ul: S7600A U2: 89C51 - zaprogramowany U3: MAX3241 U4: CD4001 U5: CD4027 Uó: MAX604 U7: 7805 Różne Xl: rezonator kwarcowy 12MHz X2: rezonator kwarcowy lMHz Wyświetlacz alfanumeryczny 2x20 znaków Zl Złącze szufladowe 9-pinowe Podstawka 40 DIL SW1 przycisk typu switch Płytka drukowana i bezpośrednie rejestry zajmują przestrzeń od adresu 0x20 do 0x3f. Użycie rejestrów indeksowych wymaga wcześniejszego zdefiniowania indeksu kieszeni. Zależnie od tej definicji, dane w rejestrach indeksowych dotyczą kieszeni 1 lub 2. W tab. 4 pokazano zestawienie wszystkich rejestrów S7600A. Układ S7600A jest przystosowany do fizycznego połączenia z Internetem za pośrednictwem modemu. Interfejs warstwy fizycznej wyposażony jest w związku z tym we wszystkie sygnały sterujące łącza RS232, potrzebne do prawidłowej współpracy z modemem. Sygnały te mają poziomy napięć standardu TTL, a jak wiadomo modemy wymagają poziomów zgodnych ze standardem RS23 2. Odpowiedni konwerter zbudowany jest w oparciu o układ U3 MAX3241. Zasilanie układu S7600A napięciem +3,3V wymusiło zastosowanie konwertera również zasilanego tym napięciem. Złącze Z2 jest 9-pinowym męskim złączem szufladowym. Sygnały na Z2 dołączone są do jego pinów 18 Elektronika Praktyczna 3/2002 Internetowy interfejs dla mikrokontrolera es RS WRITEX SD6 SD7 SD5 BUSYX CLX Rys. 6. Przebiegi czasowe sygnałów podczas zapisu dla interfejsu szeregowego. zgodnie ze standardem stosowanym w komputerach PC. Można bez problemu podłączyć do układu dowolny modem zewnętrzny za pomocą standardowego kabla używanego do połączenia modemu z komputerem. Sygnał o częstotliwości lMHz, wytwarzany w generatorze zbudowanym ze zlinearyzowanej bramki U4A i rezonatora X2, jest następnie dzielony przez 4 w dwu prze-rzutnikach U5A i U5B. Układy U4 i U5 są również zasilane napięciem +3,3V. Prostokątny przebieg o częstotliwości 250kHz i amplitudzie zbliżonej do napięcia zasilania podawany jest na wyprowadzenie 3 Ul. Mikrokontroler U2 też jest zasilany napięciem +3,3V. Do portu P2 dołączony jest wyświetlacz alfanumeryczny 2x2 0 znaków. Dość trudno jest znaleźć taki wyświetlacz zasilany obniżonym napięciem, dlatego zastosowano popularny wyświetlacz zasilany napięciem +5V. Linie portów mikrokontrolera zasilanego napięciem niższym niż +5V mogą być "podciągane" do +5V bez szkody dla układu. Stabilizator U6 7805 dostarcza napięcia +5V, a układ U5 MAX604 napięcia +3,3V. Montaż układu Płytka drukowana interfejsu pokazana jest na rys. 8. Układ S7600A jest umieszczony w 48-pinowej obudowie typu QFP przystosowanej do montażu powierzchniowego. Niestety przylutowa-nie układu jest dość trudne. Odległość między nóżkami obudowy wynosi tylko 0,5mm! Przed lutowaniem układ należy przykleić do płytki drukowanej, najlepiej klejem typu Poxipol i dokładnie ustawić nóżki układu na polach lutowniczych, nie zapominając o prawidłowej ich kolejności. Po związaniu kleju można przystąpić do lutowania. Trzeba się wyposażyć w lutownicę z odpowiednio cienkim grotem i dobrą lupę, najlepiej na statywie. Montaż nie jest łatwy, ponieważ obudowy QFP zaprojektowano do montażu automatycznego, gdzie jest możliwe zachowanie wysokiej precyzji pozycjonowania i jakości lutowania. Po zakończeniu lutowania trzeba dokładnie sprawdzić, czy nóżki S7600A są dobrze przylutowa-ne. Z doświadczenia wiem, że niektóre luty trzeba poprawiać kilka razy. Poprawki trzeba robić bardzo delikatnie, bo łatwo uszkodzić cienkie ścieżki lub wygiąć bardzo delikatne nóżki układu. Układ U3 jest produkowany również tylko w obudowie przystosowanej do montażu powierzchniowego, ale jego montaż nie nastręcza takich problemów jak to jest w przypadku S7600A. Rozstaw nóżek i ich grubość są zdecydowanie większe. Układ U3 również najlepiej jest wstępnie przykleić do płytki, zwracając uwagę na ustawienie nóżek na polach lutowniczych. Płytka jest tak zaprojektowana, że U3 trzeba przylu-tować na umownej stronie lutowania (pod spodem płytki). Montaż pozostałych elementów nie powinien sprawiać kłopotów. Tomasz Jabłoński, AVT tomasz.jablonski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/marzecO2Jitm oraz na płycie CD-EP03/2002B w katalogu PCB. Stos sprzętowy TCP/UDP
Arbiter dostępu do pamięci Interfejs SRAM SRAM IP <
PPP t ___________ P szere r Śgowy ? : ? X3 IH J 8r=J D OC6 gC?ż CD! X2 D 0 Rys. 7. Ilustracja kontrolowanego dostępu do pamięci. Rys. 8. Rozmieszczenie elementów na płytce drukowanej. Elektronika Praktyczna 3/2002 19 AUTOMATYKA W drugiej części artykułu przedstawiamy kolejne modele radiomodemów firmy Satel, wśród których znajdują się urządzenia wyposażone w system "inteligentnych" anten, dzięki któremu jest minimalizowane ryzyko fazowego zanikania sygnału nośnej. To jeszcze nie wszystkie atrakcje oferowane przez prezentowane urządzenia - przekonajcie się sami! Bezprzewodowy interfejs RS232 Radiom o demy Satelline-3AS EPIC Satelline-3AS EPIC (fot. 3) jest najnowszym z rodziny radiomodemów Satelline. Podobnie jak poprzednicy, jest on przeznaczony do transmisji danych w trybie half-duplex. Radio-modemy Satelline-3AS EPIC są w pełni kompatybilne z modelami 3AS(d), jednak posiadają kilka dodatkowych cech, które tutaj omówimy. Na zewnątrz aluminiowej obudowy wyprowadzone jest gniazdo portu szeregowego oraz dwa złącza antenowe typu TNC. Na obudowie umieszczono zestaw diod LED informujących o stanie linii sygnałowych portu szeregowego. Wbudowane dwa odbiorniki mogą równocześnie odbierać przychodzące sygnały, a specjalny mechanizm porównawczy powoduje wybór w danym momencie silniejszego sygnału (rys. 4). Dzięki temu istnieje pewność, że w trudnych warunkach pracy transmitowane dane nie zostaną utracone. Wyeliminowane zostaje w ten sposób zjawisko tzw. fadingu, czyli fazowego wytłumiania fal radiowych. Odległość pomiędzy antenami na każdym z odbiorników powinna wynosić 3/4 długości fali, czyli w przypadku pasma 400MHz około 75cm. Radio modemy Satelline-3 AS EPIC wyposażono w mechanizm korekcji błędów oraz mechanizm sprawdzania sumy kontrolnej, co minimalizuje liczbę błędów powstałych podczas transmisji. Satelline-3AS EPIC można skonfigurować także do pracy jako repeater, przy czym są możliwe dwa tryby takiej pracy: - wyłącznie odbieranie i natychmiastowe przesyłanie dalej pakietów danych (o maksymalnej długości pojedynczego bloku - lkB), - radiomodem skonfigurowany jako repeater może także być podłączony do innego urządzenia (np. sterownika PLC). Wówczas dane są przekazywane do portu (jeżeli dotyczą tego urządzenia) lub są re-transmitowane dalej. Istnieje możliwość stosowania więcej niż jednego repea tera, dzięki czemu odległość, na którą transmitowane są informacje można wydatnie zwiększyć. Ponadto możliwe jest budowanie rozległych sieci w architekturze mas-ter-slave (rys. 5). Nadajnik radiomode-mu Satelline-3AS EPIC ma maksymalną moc wyjściową aż IOW. Pozwala to na komunikację Fot. 3. SATEL Elektronika Praktyczna 3/2002 AUTOMATYKA Pomiar Jnkofcl co 1 lii) 12 bajtów Mnte prawdopodobieństwo JedYioczeinsgo zanlcu obydwu aygnattw Rys. 4. w terenie płaskim na odległość do 80km, oczywiście w zależności od zastosowanych anten. Moc nadajnika jest programowo konfigurowalna i może wynosić: 1/2/5W lub IOW. Czułość odbiornika jest także programowalna i może wynosić od -SOdBm do -113 dBm. Radiomodemy Satelline-5AS Satelline-5AS (fot. 6) jest przeznaczony do lokalnego przesyłania danych oraz informacji alarmowych drogą radiową, szczególnie w środowisku miejskim lub przemysłowym. Dzięki swojej konstrukcji i małym rozmiarom może być łatwo montowany i przyłączany zarówno na obiektach stałych, jak i poruszających się. Wbudowany interfejs RS232 zapewnia łatwe połączenie z dowolnym systemem komputerowym oraz innymi urządzeniami. Satelline-5 AS może pracować na częstotliwościach z zakresu 13O...21OMHz. Możliwe jest zastosowanie odstępu między kanałowego o wartości 12,5kHz lub 25kHz. W pierwszym przypadku do dyspozycji jest 80 kanałów, natomiast w drugim 40. Maksymalna moc nadajnika radiomodemu Satelline-5AS wynosi 5W, natomiast czułość odbiór- t REPEATEH1 SLAVE1 SUWE2 i SUWE3 HASIEH REPEATER2 = SUWE4 Rys. 5. nika -llOdBm. Parametry te pozwalają na osiągnięcie maksymalnego zasięgu transmisji od 10 do 50 kilometrów. Maksymalna szybkość transmisji wynosi 1200bd. Każdy radiomodem wykorzystywany w lokalnej sieci radiomodemowej może mieć nadany adres w celu łatwiejszej identyfikacji. Oddzielny adres może mieć część nadawcza (Tx) i odbiorcza (Rx) urządzenia, bądź też obie części mogą używać wspólnego adresu. Jeżeli istnieje potrzeba rozbudowy zasięgu sieci radiomodemowej, Satelline-5 AS może pracować jako repeaier (maksymalna długość pakietu danych 123B). W radiomodemy Satelline-5 AS wbudowano oprogramowanie umożliwiające ich konfigurowanie. Parametry pracy radiomodemu można ustawiać z poziomu komputera PC za pośrednictwem łącza RS232. Zmiana niektórych parametrów (m.in. kanału, na którym odbywa się transmisja, adresu przyporządkowanego urządzeniu w sieci radiomodemowej, itp.) realizowana jest także bez przerywania pracy, za pomocą specjalnych poleceń wysyłanych przez łącze RS2 3 2 pomiędzy blokami danych (tzw. komendy SL). Satelline-5 AS oferuje dwa tryby przesyłania danych. W trybie podstawowym dane są wysyłane w takiej samej postaci, w jakiej zostały odebrane, niezależnie od stosowanego protokołu. Oznacza to, że dane transmitowane są drogą radiową dokładnie tak samo, jak za pośrednictwem zwykłego kabla połączeniowego. Z kolei w trybie zaawansowanym wykorzystywany jest specjalny protokół komunikacyjny, udostępniający wiele dodatkowych funkcji adresowania (wykorzystywane podczas pracy w sieci radiomodemowej) oraz wykrywania błędów. W trybie tym przesyłane dane są grupowane w ramki, do których dodawane są też dodatkowe informacje np. parametry wyżej wspomnianych funkcji. Na bazie radiomodemów Satelline-5AS możliwe jest zbudowanie rozproszonego systemu przesyłania informacji o alarmach. Urządzenie wyposażone jest w pięć wejść alarmowych, które podlegają ciągłemu monitorowaniu oraz jedno wejście typu bypass, które służy do zerowania wejść alarmowych. Wejścia alarmowe - 20mA (zastosowano pętlę prądową o natęże- SATEL] ***** IATILLINI S i H Ś Fot. ó. niu lmA) są kompatybilne z większością dostępnych na rynku czujników alarmowych. Działanie układu opiera się na wykorzystaniu mechanizmu odpytywania (polling). Radiomodem pracujący jako stacja bazowa wysyła cyklicznie serię zapytań do wszystkich pozostałych modemów systemu (tzw. podstacji). Informacje o stanie wejść alarmowych przesyłane są do stacji bazowej kolejno ze wszystkich podstacji, jako odpowiedzi na zapytanie. Dodatkowe informacje Artykuł opracowano na podstawie materiałów firrny Astor Sp. z o. o., www.astor.corn.pl: - Gdańsk, tel. (58)552-25-42; - Katowice, tel. (32)201-95-16; - Kraków, tel. (12) 428-63-40; - Poznań,Tel. (61)650-29-87; - Warszawa, Tel. (22)865-41-41. Katalog radiomodemów lirmy Satel opublikowaliśmy na CD-EP02/2002B. 144 Elektronika Praktyczna 3/2002 PROJEKTY Zamek elektroniczny karty chipowe na AVT-5054 Coraz częściej jesteśmy zmuszani do ochrony swojego mienia. Stosowane są przeróżne urządzenia: od standardowych zamków mechanicznych po wymyślne konstrukcje elektroniczne. Wraz z dynamicznym rozwojem elektroniki, do zabezpieczeń coraz częściej stosuje się właśnie układy elektroniczne. jedno z nowoczesnych, a przy tym bardzo modnych rozwiązań przedstawiamy w ańykule. Coraz częściej widzimy, źe w drzwiach zamiast typowych wkładek mechanicznych znajduje się klawiatura. Ma to wielką zaletę, gdyż nie trzeba nosić przy sobie kluczy i nie ma ryzyka przypadkowego zatrzaśnięcia drzwi, co się często zdarza akurat wtedy, gdy zapomnimy zabrać ze sobą klucza. Stosowane są również zamki na karty magnetyczne - to z kolei uwalnia nas od noszenia pęku kluczy dzwoniących w kieszeni. Zabezieczenia tego rodzaju są stosowane również w samochodach. Zarówno producenci samochodów jak i alarmów samochodowych prześcigają się w konstruowaniu coraz to bardziej skomplikowanych systemów. Od podstawowego, sterowanego pilotem radiowym ze stałym kodem, poprzez piloty ze zmiennym kodem, aż po komunikację dwukierunkową, w której wykorzystuje się skomplikowane algorytmy kodujące. Jako dodatkowe zabezpieczenie może być stosowany dodatkowy układ umieszczony w kabinie samochodu. Wówczas stosowane są klawiatury, pastylki Dallas, karty magnetyczne itp. Kolejnym, chyba najwygodniej-szym w stosowaniu, sposobem zabezpieczenia jest wykorzystanie komunikacji bezstykowej za pomocą fal elektromagnetycznych. Układ takiego zabezpieczenia składa się z odbiornika, w którym znajduje się antena nadawczo-odbiorcza oraz układu nadajnika. Stosowane są nadajniki o różnych wymiarach. Najmniejsze obecnie stosowane mają wymiary 12x6mm, co pozwala na umieszczenie ich na przykład w kluczyku. Układ odbiornika wytwarza pole elektromagnetyczne, które indukuje w cewce nadajnika napięcie zasilające jego układy wewnętrzne. Komunikacja pomiędzy nadajnikiem i odbiornikiem odbywa się wskutek modulacji pola magnetycznego - wystarczy tylko zbliżyć nadajnik do odbiornika. W zależności od rozmiarów anteny nadawczo-odbiorczej oraz nadajnika uzyskuje się różne odleg- Elektronika Praktyczna 3/2002 21 Zamek elektroniczny na karty chipowe Rys. 1. Wygląd oraz opis wyprowadzeń karty X24026. łości, przy których możliwa jest wymiana informacji (od kilku centymetrów nawet do kilku metrów). Komunikacja bezstykowa jest dziedziną stale rozwijającą się. W przyszłości będzie można na przykład zapłacić za przejazd autostradą przejeżdżając pomiędzy specjalnymi bramkami bez konieczności zatrzymywania się lub kupić bilet do kina przechodząc przez drzwi. Ale do czasu kiedy to nastąpi musimy zadowolić się rozwiązaniami konstrukcyjnymi stosowanymi obecnie. Coraz częściej mamy przy sobie różne karty, czy to telefoniczne czy płatnicze. Nawet dowód osobisty czy obecnie stosowane prawo jazdy ma wymiary karty płatniczej. Jak widać karta płatnicza została przyjęta jako standard wszelkiego rodzaju nośników danych. Karty można podzielić na dwie grupy: karty magnetyczne i karty chipowe. W kartach magnetycznych nośnikiem informacji jest pasek magnetyczny. Pomimo, że ten rodzaj karty jest obecnie najbardziej rozpowszechniony, to posiada on wiele wad. Przede wszystkim na karcie można zapisać niewiele informacji, ponadto są one mało odporne na uszkodzenia mechaniczne, a także na działanie pola magnetycznego. Kartę magnetyczną można łatwo uszkodzić. Karty chipowe mogą mieć, w zależności od potrzeb, dowolną pojemność pamięci różnego rodzaju, np. EPROM, EEPROM, RAM czy też Flash, do której dostęp może być zabezpieczony hasłem. Mogą być wyposażone w wewnętrzny procesor, dzięki któremu wymiana informacji pomiędzy czytnikiem może wymagać specjalnych algorytmów. Zastosowanie procesora znacznie utrudnia dostęp osób niepowołanych do danych zawartych w pamięci karty. W prezentowanym elektronicznym urządzeniu identyfikującym została zastosowana łatwo dostępna karta chipowa firmy Xicor X24026. Nie jest to rozbudowana karta mikroprocesorowa, bowiem zawiera w swojej strukturze tylko 256 bajtów nieulotnej pamięci EEPROM, ale do pracy z naszym urządzeniem jest w zupełności wystarczająca. Na rys. 1 przedstawiono widok karty oraz opis jej wyprowadzeń. Jest to karta o wymiarach standardowej karty płatniczej. Komunikacja pomiędzy pamięcią wbudowaną w kartę i otoczeniem odbywa się za pomocą magistrali PC. Dla procesora jest ona zwykłą pamięcią EEPROM o rozmiarze 256 bajtów i adresie bazowym B10100000. Można ją więc traktować jako pamięć umieszczoną w nieco nietypowej obudowie. Karta nie ma żadnego kodu, który by ją identyfikował, jak to jest w przypadku pastylek Dallas, gdyż każdy układ ma swój unikalny numer seryjny. Za pomocą tego numeru można identyfikować dany układ, a tym samym nadawać mu określone uprawnienia. Nowa karta jest zwykłą pamięcią EEPROM, w której wszystkie komórki mają wartość FFh, a zatem karty nie różnią się niczym między sobą. Dlatego każdą kartę przed użyciem należy zaprogramować. Można to uczynić za pomocą programatora kart, co wymagałoby dobudowania do prezentowanego w artykule urządzenia dodatkowego programatora. Ponieważ identyfikator ma funkcjonować jako niezależne urządzenie, dlatego konieczne stało się wbudowanie w niego programatora, który w czasie programowania generuje ciąg przypadkowych liczb służących później jako hasło dostępowe. Generowany kod (hasło) może być 10 lub 2 0-bajtowy, w zależności od wybranej opcji. Próba "złamania" kodu o takiej liczbie bajtów jest raczej niemożliwa, a przynajmniej bardzo czasochłonna. Dla porównania pastylki Dallas zawierają kod 8-bajtowy, który jest niemal niemożliwy do złamania. Oczywiście, można skopiować zawartość pamięci karty, ale ten mankament dotyczy wszystkich urządzeń wykorzystujących kod stały. Dlatego należy strzec karty, aby nie dostała się w niepowołane ręce. W celu zaprogramowania karty zastosowano metodę ręcznego generowania kodu dostępu. Można zastosować programowy generator liczb pseudolosowych, ale takie generatory wykazują dużą powtarzalność generowanych liczb. Mogłoby to spowodować wygenerowanie takiego samego kodu przez dwa różne zamki elektroniczne, a co za tym idzie dostęp do chronionego urządzenia osób niepowołanych. Ręczne generowanie kodu polega na cyklicznym zatrzymywaniu licznika zawartego w procesorze, w różnych odstępach czasu. Zasada jest podobna jak w elektronicznej kostce do gry. Taki sposób wydaje się być najbardziej przypadkowy, gdyż nie można przewidzieć, w którym momencie obsługujący zatrzyma licznik, a nie zna on stanu licznika w danym momencie, więc nie może celowo wybrać konkretnej wartości. Sposób programowania zostanie opisany w dalszej części artykułu. Wyjście sterujące zamka może pracować w jednym z trzech trybów: 1. Po włożeniu karty z prawidłowym kodem przekaźnik jest załączony przez czas, gdy karta jest w czytniku - po wyjęciu karty przekaźnik zostaje zwolniony. 2. Po każdorazowym włożeniu właściwej karty stan przekaźnika zmienia się na przeciwny. 3. Po włożeniu karty przekaźnik zostaje załączony na określony czas, następnie powraca do stanu spoczynkowego. Czas załączenia może być regulowany w zakresie od 1 do 50 sekund. Wybór odpowiedniego trybu jest zależny od indywidualnych potrzeb użytkownika. Budowa układu Na rys. 2 przedstawiono schemat elektryczny zamka. Głównym elementem jest procesor PIC16F84A, który zawiera w swojej strukturze wszystkie niezbędne elementy wymagane do sterowania funkcjami zamka. Wewnętrzna, nieulotna pamięć mikrokontrolera typu EEPROM umożliwia zapamiętanie kodu uprawnionej karty, również w przypadku braku zasilania. Do zasilania całego układu wymagane Elektronika Praktyczna 3/2002 Zamek elektroniczny na karty chipowe R3 330 D2 1R4 U81 J330 PIC16F84A 6 Rys. 2. Schemat elektryczny zamka. jest napięcie 5V, które uzyskuje się z wyjścia stabilizatora (układ US3). Do zabezpieczenia układu przed odwrotną polaryzacją napięcia zasilającego zastosowano diodę prostowniczą Dl. Ponieważ identyfikator ma służyć do zabezpieczania, musi więc być niezawodny. W tym celu musi posiadać niezawodne źródło sygnału zerującego, które uniemożliwi zawieszenie się programu przy spadku napięcia zasilającego. Do tego celu zastosowano scalony układ zerujący US2 (DS1813). Układ ten zeruje mikrokontroler, gdy napięcie zasilające spadnie poniżej napięcia progowego i umożliwia ponowną pracę po około 150ms od chwili, gdy napięcie wzrośnie powyżej określonego progu. Jako układ wykonawczy zastosowano miniaturowy przekaźnik z dwoma parami styków o prądzie przewodzenia równym 1A. Do złącza CON2 są dołączone wyprowadzenia styków przekaźnika. Możliwe jest więc zarówno załączenia, jak również przerwanie obwodu wyjściowego w stanie aktywnym zamka elektronicznego. Dwukolorowa dioda LED sygnali- zuje stan pracy zamka. W zależności od stanu może świecić na zielono, czerwono, pomarańczowo lub błyskać. Dzięki dużej wydajności prądowej portów procesora można bezpośrednio sterować diodami świecącymi. Porty procesora mogą byś obciążane prądem 20mA, zarówno przy poziomie niskim jak i wysokim. Takie właściwości portów są rzadko spotykane w procesorach innych producentów. Przeważnie wyjścia portów można obciążać dużym prądem tylko, gdy na jego wyjściu jest niski poziom napięcia. Jako źródło sygnału zegarowego procesora zastosowano generator RC, gdyż nie ma potrzeby bardzo precyzyjnego odliczania czasu. Ponieważ wewnętrzny układ generatora, po odpowiednim skonfigurowaniu, może współpracować z generatorem RC, został on zastosowany, co pozwoliło zmniejszyć koszt układu. Montaż i uruchomienie Schemat montażowy płytki zamka pokazano na rys. 3. Montaż zaczynamy od rezystorów, następnie montujemy podstawkę pod układ USl oraz przekaźnik. Układ stabilizatora US3 oraz kondensatory Cl i C3 montujemy na leżą-co. Na końcu montujemy złącza CON1, CON2 i CON3. Ponieważ urządzenie nie zawiera zbyt wielu elementów, montaż nie powinien być kłopotliwy. Po zmontowaniu ze sprawnych elementów, układ zamka jest gotowy do pracy, tzn. do programowania, bo od tego należy zacząć jego użytkowanie. Do zasilania można wykorzystać dowolny zasilacz o napięciu wyjściowym równym około 9V i prądzie około lOOmA. Obsługa zamka Przed rozpoczęciem pracy układ należy odpowiednio skonfigurować, w zależności od zamka z jakim ma współpracować. Zaczynamy od zaprogramowania kodu karty. W tym celu zwieramy zworkę JP3. Jeżeli kod zabezpieczający ma być 20-bajtowy, zwieramy również zworkę JPl (w przeciwnym przypadku kod będzie 10-bajtowy). Następnie włączamy zasilanie - dioda świeci pomarańczowo - i wkładamy kartę do złącza CON3. Jeżeli wybraliśmy kod 10-bajtowy, to błyska dioda Elektronika Praktyczna 3/2002 23 Zamek elektroniczny na karty chipowe a oo ? C o Rys. 3. Rozmieszczenie elementów na płytce drukowanej zamka. zielona, jeżeli zaś kod 20-bajtowy, to błyska dioda czerwona. Teraz musimy 10 lub 20 razy, w zależności od wybranego rozmiaru kodu, rozwierać i zwierać zworkę JP3 w różnych odstępach czasu. W czasie gdy zworka jest zwarta, wewnętrzny licznik procesora nieustannie zwiększa swoją zawartość, a w momencie rozwarcia stan licznika zapisywany jest do wewnętrznej pamięci EEPROM jako kolejna cyfra kodu. Ponieważ nie znamy zawartości licznika w chwili zatrzymania zliczania, generowane liczby są zupełnie przypadkowe. Po 10 lub 20 krotnym wykonaniu tej operacji zapala się dioda zielona, sygnalizując koniec zapisywania kodu. Wszystkie liczby kodu z wewnętrznej pamięci procesora zo- stają przepisane do pamięci karty. Gdy wyciągniemy kartę, to zapali się dioda czerwona. Jeśli chcemy używać tylko jednej karty, to proces programowania został zakończony. Jeżeli zaś chcemy, aby uprawnienia miało więcej użytkowników, to wkładamy do czytnika kolejną kartę. Procesor ponownie skopiuje zawartość kodu z wewnętrznej pamięci EEPROM do pamięci karty. W czasie programowania dioda będzie błyskała w kolorze pomarańczowym. Proces programowania dodatkowych kart można powtarzać wielokrotnie, a zatem liczba uprawnionych osób do otwierania zamka nie jest ograniczona. Wszystkie karty mają zapisany ten sam kod, nie ma więc możliwości "cofnięcia" uprawnień jednej karty, jeżeli chcemy zmienić liczbę uprawnionych kart, to musimy ponownie wykonać procedurę programowania. Po zaprogramowaniu kart wyłączamy zasilanie i wyciągamy wszystkie zworki. Do zakończenia ustawiania parametrów początkowych pozostaje nam jeszcze określenie sposobu reakcji zamka na włożenie uprawnionej karty. Przekaźnik może być załączany na jeden z trzech sposobów, w zależności od ustawienia zworek JPl i JP2. Jeżeli zworki JPl i JP2 są zwarte, to po każdorazowym włożeniu uprawnionej karty stan przekaźnika jest zmieniany na przeciwny. Jeżeli JPl jest zwarta, a JP2 rozwarta, to po włożeniu karty przekaźnik jest załączony, gdy karta znajduje się w czytniku - po wyciągnięciu karty przekaźnik powraca do stanu spoczynkowego. Jeżeli zworki JPl i JP2 są rozwarte, to włożenie karty powoduje załączenia przekaźnika na określony czas, po czym przekaźnik zostaje zwolniony. Domyślny czas załączenia jest ustawiony w zaprogramowanym procesorze na około lOs, ale może być zmieniany w zakresie od 1 do 50 sekund z rozdzielczością lOOms. Aby zmienić WYKAZ ELEMENTÓW Rezystory Rl, R2: 4,7kn R3, R4: 330O RP: 8*10kQ Kondensatory CL C3: 100|iF/lóV C2, C4: lOOnF C5: 33pF Półprzewodniki Dl: 1N4007 D2: dioda LED 5mm dwukolorowa T: BC547 US1: PIC16F84A zaprogramowany US2: DS1813 US3: 7805 Różne CON1: ARK2 (3,5mm) CON2: ARK3 (3,5mm) CON3: złącze kart np. LM08 JP1...JP3: goldpin 1x2 + jumper PK: przekaźnik OMRON 5V typ G6H Karta X24026 czas załączenia przekaźnika należy, przy wyłączonym zasilaniu, zewrzeć zworki JPl, JP2 i JP3, a następnie włączyć zasilanie. Po włączeniu zasilania procesor przechodzi do procedury zmiany czasu załączenia przekaźnika i zapala się dioda czerwona. Następnie odłączamy zworkę JP3 i rozpoczyna się proces mierzenia czasu, po każdej odmierzonej sekundzie błyska dioda czerwona sygnalizując upływający czas. Po upłynięciu wymaganego czasu zwieramy ponownie zworkę JP3. Czas pomiędzy rozwarciem, a ponownym zwarciem zworki JP3 zostaje zapisany w pamięci procesora. Od tej pory (w trybie trzecim) po włożeniu karty przekaźnik będzie załączany na zaprogramowany przez nas czas. Zaprogramowany czas będzie "pamiętany" również p o wyłączeniu zasilania. Zmiana czasu załączenia przekaźnika będzie szczególnie przydatna przy zastosowaniu zamka do uruchamiania rygla elektromagnetycznego, na przykład w drzwiach. Możemy wówczas dobrać czas zwolnienia blokady drzwi. Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/marzecO2Jitm oraz na płycie CD-EP03/2002B w katalogu PCB. Elektronika Praktyczna 3/2002 Radio reakcyjne Słuchanie w stylu retro to robią inni? JME(& Łza się w oku kręci. Imponujące cewki, jarząca się lampa, zadziwiające drewniane chassis. Czyżby kolekcjonerski odbiornik z dawnych czasów? Nie, to radio można z łatwością zbudować w domu i używać do odbioru na falach średnich. Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 27...32 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Wiatach 1930...1960 popularnym zajęciem majsterkowiczów było samodzielne budowanie własnego radioodbiornika. Początkowo wszystko trzeba było wykonywać samemu, ale wraz ze zwiększaniem się liczby radiostacji można było nabyć coraz więcej gotowych podzespołów. Zmontowanie odbiornika kryształkowego, lub jed-nolampowego, stało się wtedy bardzo łatwe. Wysupływało się oszczędności, kupowało wszystkie części i montowało odbiornik według jednego ze sprawdzonych schematów. Teraz, amator chcący zbudować proste, średniofalowe radio lampowe napotyka na ścianę. Potrzebne podzespoły są niemal nie do zdobycia. Transformator sieciowy, transformator głośnikowy, cewki średniofalowe, kondensator strojeniowy - skąd je wziąć? W opisanym odbiorniku zastosowano kombinację starego z nowym. Buduje się go według starego schematu, ale z nowych elementów. Potrzebne podzespoły są dostępne, a konstrukcja prosta. Podzespoły Jak juź wspomniano, wysokonapięciowe transformatory lampowe są obecnie trudno osiąganie. Można jednak zastosować zwykły transformator niskonapięciowy. Również słuchawki o impedancji 2000Li stały się rzadkością. Ale współczesne słuchawki do "walkmana" (32Li) nie są drogie, a ich jakość jest niezła. W opisanym układzie napięcie anodowe nie musi być wysokie, użyto więc zwykłego, niskonapięciowego transformatorka sieciowego. Dzięki temu nie jest w nim potrzebna szczelina magnetyczna. Do strojenia najlepiej nadają się kondensatory obrotowe z powietrznym dielektrykiem, jednak znalezienie takiego jest obecnie niemal niemożliwe. Są jednak na szczęście niskoprofilowe konden-satorki strojeniowe z plastikowym dielektrykiem. Szkoda, że mają wykrój kołowy, o liniowej zależności pojemności od kąta obrotu. Dawne kondensatory obrotowe miały wykrój "nerkowy", o liniowej zależności długości odbieranej fali od kąta obrotu. Elektronika Praktyczna 3/2002 27 Rys. 1. Sercem odbiornika jest podwójna trioda ECC82. Dużo kłopotów nastręczają cewki. Po eksperymentach zdecydowano się na stary, ale sprawdzony rodzaj cewek "pajęczynowych". Są one łatwe do nawinięcia, ich dobroć jest niezła, a pojemność własna mała. Pojemność ta jest ważna, ponieważ pasmo fal średnich rozciąga się od 550kHz do 1600kHz (545...187m) i duża pojemność własna skróciłaby zakres strojenia. Na decyzję o wyborze tych cewek wpłynął także ich imponujący wygląd. Schemat Dla odbiornika wybrano staroświecki i prosty schemat układu reakcyjnego, z podwójną triodą ECC82 (rys. l). Włókna żarzenia obu połówek tej lampy są połączone szeregowo z odczepem w środku na 6,3V. W szeregowym połączeniu napięcie żarzenia wynosi 12,6V, przy prądzie 150mA. Do zasilania odbiornika użyto transformatora z podwójnym uzwojeniem wtórnym 2 x 18V, 133mA. Jedna z połówek uzwojenia służy do zasilania żarzenia lampy poprzez rezystory R7 i R8 obniżające napięcie do 12,6V. Niewielkie przekroczenie nominalnego prądu w jednej połówce uzwojenia jest rekompensowane bardzo małym (kilkumiliamperowym) obciążeniem drugiej. Wykorzystanie wtórnego uzwojenia w połączeniu szeregowym z prostownikiem Dl i filtrem C12, R6, Cli, pozwala uzyskać napięcie stałe 50V. Napięcie pracy kondensatorów elektrolitycznych może zatem wynosić 63V. Kondensator CIO służy do tłumienia wysokich częstotliwości. Trioda Via pracuje jako detektor siatkowy. Obwód detekcyjny (LD, C3) jest połączony z siatką lampy kondensatorem sprzęgającym o małej pojemności, a siatka z masą poprzez rezystor polaryzujący Rl. Katoda jest bezpośrednio połączona z masą. W czasie odbioru, sprzężony z anteną strojony obwód rezonansowy (LA, Cl) indukuje w obwodzie detekcyjnym sygnał wielkiej częstotliwości. Dzięki ładunkowi przestrzennemu przy braku sygnału, potencjał siatki triody wynosi około 0V. Przy wystąpieniu sygnału w.cz. kondensator C5 w czasie każdego dodatniego półokresu nieco ładuje się ujemnie, ponieważ układ siatki działa jak prostownik. Jej średni potencjał staje się równy szczytowemu napięciu sygnału w.cz. Jak wiadomo, sygnały radiofoniczne na falach średnich są modulowane amplitudowo. Kondensator C5 rozładowuje się przez rezystor Rl, dzięki czemu średni potencjał siatki od-wzorowuje obwiednię sygnału w.cz. Zatem, prąd anodowy lampy zmienia się wraz z modulacją, a na rezystorze R2 pojawia się wzmocniony sygnał, zarówno małej, jak i wielkiej częstotliwości. Składowa w.cz., w odwróconej w stosunku do obwodu siatkowego fazie, poprzez Pl i P2 jest kierowana do cewki reakcyjnej LR. Cewka ta jest włączona odwrotnie w stosunku do LD, dzięki czemu sygnał anodowy jest w fa- zie z sygnałem siatkowym, zapewniając dodatnie sprzężenie zwrotne zwiększające wzmocnienie i podwyższające dobroć Q obwodu rezonansowego. Jeżeli jednak jego tłumienie zostanie zbytnio zredukowane, układ zaczyna oscylować i odbiornik staje się nadajnikiem, a inne znajdujące się w pobliżu odbiorniki (nastrojone na tę samą radiostację) zaczną odbierać irytujące gwizdy. Trzeba się więc starać, aby do tego nie dochodziło. Przy właściwym ustawieniu Pl i P2 wzrasta czułość odbiornika, i równocześnie selek-tywność. Jeżeli obwód nie został idealnie dostrojony, wtedy sygnał maleje. Optymalne warunki odbioru otrzymuje się więc manipulując równocześnie strojeniem i sprzężenie zwrotnym, zwanym przed laty reakcją. Sygnał audio jest kierowany przez C7 i R3 do triody Vlb, wzmacniacza niskiej częstotliwości. Filtr C6, R3, C8 tłumi składową w.cz., pozostawiając sygnał audio. Przetransformowana impe-dancja anodowa tego stopnia wynosi około 10kQ, a C9 uwydatnia nieco charakterystykę przenoszenia przy 5kHz. W celu utrzymania niskiego poziomu zniekształceń nieliniowych ujemne sprzężenie zwrotne występujące na nie blokowanym rezystorze katodowym. Montaż Do radioodbiornika zaprojektowano płytkę drukowaną, przedstawioną na rys. 2. Mieszczą się na niej niemal wszystkie elementy. Elektronika Praktyczna 3/2002 Rys. 2. Widok płytki drukowanej. Jeżeli użyje się zalecanych elementów, wszystko będzie dokładnie pasować, wystarczy tylko staranne lutowanie. Aby zapewnić płytce niewielkie rozmiary, dwa z otworów (dla mocujących ją śrub) znalazły się na skośnie przeciwległych jej rogach, pod transformatorami. Otwory te należy pogłębić stożkowo, aby można było w nich umocować śruby M3 z łbem stożkowym (długości 5mm] płasko z powierzchnią płytki. Płytkę należy zapełnić elementami, za wyjątkiem transformatorów. W otwory oznaczone Gnd, D i R, o średnicy l,3mm, wlutowuje się szpilkowe końcówki kontaktowe. W standardowym gniazdku Kl dla słuchawek (3,5mm) lewy i prawy kanał łączy się szeregowo, otrzymując impedancję 16Li. Złącze K2 jest blokiem śrubowym do druku o rozstawie lOmm. Rezystory R7 (pionowo!) i R8 montuje się w pewnej odległości od płytki, wydziela się w nich bowiem sporo ciepła. Po wmontowaniu wszystkich elementów, od strony lutowania dwoma wpuszczanymi wkrętami przykręca się dwa słupki dystansowe (M3xl0mm). Wtedy można do płytki umocować transformatory i przykręcić nakrętkami z podkładkami pozostałe dwa słupki dystansowe. Na rys. 3 pokazano schemat montażowy płytki drukowanej. Zestaw cewek montuje się na chassis, a kondensatory obrotowe, potencjometry reakcji (Pl dokładnie i P2 zgrubnie) oraz gniazdka anteny i uziemienia na płycie czołowej. Dobrym materiałem na chassis jest bukowa deska do krajania chleba o wymiarach około 33x20x1,2cm. Trzeba od niej odciąć 7-centymetiowy pasek, zostawiając 33xl3cm. Sklejkową deseczkę bukową płyty czołowej przykręca się do przyciętego boku chassis. Górne narożniki płyty czołowej należy zaokrąglić papierem ściernym. W ten sam sposób wygładza się całą drewnianą konstrukcję i lakieruje lakierem bezbarwnym. Zestaw cewek przykręca się z lewej strony chassis, a płytkę drukowaną z prawej. Cewkę antenową (LA) i cewkę detekcyjną (LD) łączy się końcami A, a cewkę reakcyjną (LR) końcem B bezpośrednio ze zwartymi rotorami kondensatorów Cl i C3. Rotory zaś łączy się następnie drutem z masą na płytce drukowanej za pośrednictwem końcówki wsuwanej na szpilkę Gnd. Końcówką wsuwaną łączy się także koniec B cewki LD oraz stator C3 ze szpilką D na płytce. Koniec A cewki LR łączy się z potencjometrem Pl, a suwaki Pl i P2 ze sobą. P2 natomiast ze szpilką R na płytce drukowanej. Na koniec gniazdko wejściowe anteny łączy się kondensatorem z końcem B cewki LA i statorem Cl. Potencjometry Pl i P2 powinny być tak połączone, aby przy pokręcaniu w prawo, ich rezystancja malała. Obsługa W ciągu dnia autor odbierał (używając kaloryfera jako uziemienia i linki powieszonej na balkonie jako anteny) w swoim mieszkaniu niedaleko Amsterdamu w Holandii około sześciu stacji. Odbiór wszystkich stacji holenderskich i BBC był dobry, Brukseli średni. Przy umiarkowanym użyciu reakcji jakość dźwięku była zaskakująco dobra. Przy użyciu dwóch obwodów strojonych oraz redukcji tłumienia można regulować głośność odbioru, a selektywność pozwala odbierać słabe stacje w pobliżu silnych lokalnych. Wieczorem i w nocy liczba odbieranych stacji ogromnie rośnie. Słuchanie tego radia dostarcza jedynych w swoim rodzaju wrażeń. Przy kręceniu jego gałkami doświadcza się uczucia, jakiego nie daje żadne nowoczesne radio. Tak brzmiało i było strojone tuż po narodzinach. Cewki pajęczynowe Dla otrzymania rozsądnego współczynnika dobroci Q, cewka powietrzna musi być duża i nawinięta stosunkowo grubym drutem. Częstotliwości średniofalo-we nie są bardzo duże, nie zachodzi więc potrzeba używania licy. Pojemność własna cewki powietrznej jest mała, gdy zawiera ona możliwie dużo powietrza, a taką właśnie jest cewka pajęczynowa, podobnie jak cewka ulowa, którą jednak jest znacznie trudniej wykonać. Do opisywanego radia można użyć trzech identycznych cewek zmieniając tylko odległość, a zatem sprzężenie, pomiędzy nimi. Rys. 3. Rozmieszczenie elementów na płytce drukowanej. Elektronika Praktyczna 3/2002 Rys. 4. Widok szablonu do wykonania karkasów cewek. Do wykonania cewek będzie potrzebna szpulka drutu emaliowanego o średnicy 0,4mm i płyta zABS grubości l,5mm. Płytę taką można dostać w sklepach modelarskich. Karkasy cewek wykonuje się łatwo posługując się zamieszczonym na rys. 4 szablonem. Należy wykonać trzy jego kserokopie i przykleić do płyty za pomocą dwustronnej taśmy samoprzylepnej lub kleju. Następnie z płyty wycina się wyrzynarką trzy kwadratowe karkasy cewek. Każdy z nich trzeba przeciąć wzdłuż 26 linii od zewnątrz do koła w środku i za pomocą dwu-milimetiowego śrubokręta usunąć powstałe paski. Otrzymuje się karkasy o 13 segmentach. W ich narożnikach i w środku należy wywiercić otwory o średnicy 3mm oraz dwa mniejsze otwory w miejscach A i B do przewlekania drutu. Usuwa się teraz papierowe szablony (i klej lub etykiety), a brzegi nacięć starannie wygładza nożem. Po umyciu w wodzie z mydłem karkasy są gotowe do użycia. Drut wsuwa się w otwór A od tyłu płytki, pozostawiając po przedniej stronie koniec około 16cm długości, który należy zwinąć i przycisnąć płasko do płytki, aby nie przeszkadzał. Od tyłu drut przekłada się następnie przez wycięcie pod segmentem 1 na przednią stronę, a potem pod segmentem 2 na tylną i tak kolejno wielokrotnie, nawija się drut ściśle naokoło karkasu. Przez każde kolejne przecięcie przechodzi on na przeciwną stronę płytki, aż do 53 pełnych zwojów. Liczba segmentów karkasu jest nieparzysta, więc w każdej szczelinie kolejne zwoje krzyżują się ze sobą, a dzięki stosowaniu silnego naciągu drutu całość cewki tworzy płaską, ścisłą i sztywną konstrukcję. Po nawinięciu 53. zwoju drut należy uciąć, pozostawiając 16cm odcinek, który trzeba przewlec przez otwór B. Oba końce drutu cewki należy tak nagiąć, aby nie miały tendencji do wysuwania się z otworów A i B. Muszą one wystawać z tej samej, przedniej strony cewki. Jeśli tak nie jest, to znaczy, że nastąpiła pomyłka w liczeniu zwojów. Nawinięte trzy cewki mają in-dukcyjność 200uH, małą pojemność własną (dodaje się ona do pojemności kondensatora strojeniowego) i niezłą dobroć Q, wynoszącą około 60. Cewki montuje się w taki sposób, aby były sprzężone indukcyj-nie. Po lewej stronie odbiornika znajdzie się cewka antenowa (LA), lOcm od niej w prawo cewka detekcyjna (LD), a 5cm od niej dalej w prawo cewka reakcyjna (LR). Dla uproszczenia konstrukcji zespołu cewek robi się dla nich drewniany uchwyt. Do drewnianej podstawy, w odstępach lOcm i 5cm, przykleja się trzy pary drewnianych listewek (0,5x0,5xl0cm) tworzących szczeliny o szerokości l,5mm. W szczeliny te wstawia się cewki wyprowadzeniami z przodu, skierowanymi w prawo. W środkowy i górne narożne otwory karkasów wsuwa się trzy pręty pleksiglasowe średnicy 3mm (można je dostać w sklepach modelarskich) i długości około 18cm i przykleja kroplami kleju. Po jego stwardnieniu cewki odwraca się i w podobny sposób wkleja dwa pręty w pozostałe otwory karkasów. Zespół cewek przytwierdza się do chassis za pośrednictwem dwóch listewek pleksiglasowych (110 x 5 x lOmm) w sposób widoczny na fotografii zamieszczonej w artykule. Przepisy bezpieczeństwa Wszystkie urządzenia zasilane z sieci energetycznej muszą spełniać określone wymagania bezpieczeństwa. Odpowiednia norma, obejmująca większość urządzeń audio, dotyczy bezpieczeństwa urządzeń technologii informatycznej (European Harmonized Bńńsh Standard BS EN 60950:1992). Bezpieczeństwo elektryczne według tej normy odnosi się do zabezpieczenia przed: - niebezpiecznym napięciem, czyli większym od wartości szczytowej napięcia zmiennego 42,4V, albo 60V napięcia stałego, - niebezpieczną energią, zdefiniowaną jako zmagazynowana energia o wartości >20j, albo stała energia 240 lub więcej VA, pod napięciem 2V lub więcej, - jednostkową wadą izolacji, mogącą wywołać niebezpieczeństwo ze strony elementu przewodzącego, - pierwotnym źródłem niebezpiecznego napięcia, 30 Elektronika Praktyczna 3/2002
Rys. 5. Zasady bezpiecznego wykonania odbiornika. l.Użyć kabla sieciowego zzaprasowaną wtyczką. 2. Użyć zgiętki do kabla. 3. Na zewnątrz obudowy, koło wprowadzenia kabla sieciowego, nakleić etykietkę z typem urządzenia, napięciem lub zakresem napięcia, częstotliwością lub zakresem częstotliwości oraz poborem lub zakresem poboru prądu. 4. Użyć dwuobwodowego wyłącznika sieciowego, będącego "urządzeniem odłączającym". 5. Przewody przed przylutowaniem powinny być wsunięte w oczko lutownicze. 6. Dla dodatkowej ochrony należy używać koszulek osłonnych. 7. Odległość końcówek transformatora od jego rdzenia i innych części nie powinna być mniejsza niż 6mm. 8. Należy używać odpowiednich wymiarów i przekrojów kabli sieciowych i przewodów montażowych. 9. Płytka drukowana, podobnie jak inne podzespoły, powinna być dobrze zabezpieczona. Wszystkie złącza i połączenia powinny być dobrze wykonane i starannie przylutowane, wytrzymałe mechanicznie i elektrycznie. Przewody sieciowe nigdy nie powinny być lutowane do płytki drukowanej bez pośrednictwa końcówek lutowniczych. Dobrą praktyką jest także stosowanie końcówek zaciskanych. Nawet w przypadku użycia transformatora Klasy II, zadaniem wyłącznika sieciowego urządzenia pozostaje izolowanie niebezpiecznego napięcia (czyli wejścia sieciowego) od obwodu pierwotnego. Izolacja obwodu pierwotnego od obwodu wtórnego transformatora nie pełni i pełnić nie może tego zadania. - wtórnym źródłem niebezpiecznego napięcia, izolowanym od pierwotnego i zasilanym z dowolnego wewnętrznego źródła, także napięcia stałego. Zabezpieczenie przed wstrząsem elektrycznym osiąga się przez użycie wyposażenia dwóch klas. W wyposażeniu Klasy I używa się izolacji podstawowej, a części przewodzące urządzenia, które w razie gdy ta izolacja zawiedzie, mogą się stać niebezpieczne, muszą być połączone z uziemieniem ochronnym zasilacza. W wyposażeniu Klasy II, gdy brak ochronnego uziemienia zasilacza, używa się podwójnej lub wzmocnionej izolacji (stosuje się w elektronarzędziach, rzadziej w urządzeniach elektronicznych). Preferowane jest używanie transformatorów izolacyjnych Klasy II, ale trzeba pamiętać, że stosowanie ich do urządzeń Klasy I samo w sobie nie zapewnia im Klasy II. Przewodzące obudowy, używane do izolacji i ochrony napięciowo niebezpiecznych zasilaczy przed dostępem użytkownika, muszą być ochronnie uziemiane, niezależnie od tego, czy transformator sieciowy jest klasy I czy II. Odległość części pozostających pod napięciem od innych części powinna być możliwie największa i nigdy mniejsza niż konieczna. Jeśli tylko możliwe, należy używać gniazdek sieciowych zintegrowanych z oprawą bezpiecznika i wyłącznikiem. Jeśli nie jest to możliwe, należy w miejscu wprowadzenia przewodu zastosować zgiętkę wejściową (rys. 5, uwaga 2). W takim przypadku bezpiecznik powinien zostać włączony za dwubiegunowym wyłącznikiem sieciowym, chyba, że jest on typu Touchproof lub podobny. Przy każdej oprawie bezpiecznika musi być umieszczona etykieta z typem i nominałem bezpiecznika. Oddzielny wyłącznik (rys. 5, uwaga 4), musi być dwubiegunowym odłącznikiem (do odłączania fazy i zera zasilania jednofazowego). W przypadku zasilania trójfazowego wszystkie trzy fazy i zero (jeśli użyte) muszą być odłączane równocześnie. Jako element odłączający może być uznany włączany wtyczką aparatową kabel sieciowy. W pozycji rozwarcia wyłącznika odległość pomiędzy jego stykami nie może być mniejsza od 3mm. Wyłącznik sieciowy musi być połączony możliwie najkrótszym przewodem z punktem wprowadzenia sieci do obudowy. Wszystkie elementy pierwotnego obwodu transformatora, jak oddzielny bezpiecznik sieciowy i oddzielne elementy filtru sieciowego, muszą się mieścić w odłączanej części obwodu pierwotnego. W przeciwnym wypadku elementy umieszczone przed wyłącznikiem, po wyłączeniu urządzenia znalazłyby się pod niebezpiecznym napięciem. Jeżeli w urządzeniu znajduje się otwarty zasilacz, nieosłonięty uziemionym ekranem metalowym ani osłoną izolacyjną, wszystkie jego przewodzące elementy muszą być uziemione zielonym przewodem z żółtymi wąskimi paskami. Przewody uziemiające nie mogą być łączone łańcuchowo od jednej uziemianej części do drugiej. Każda przewodząca część musi być oddzielnie, bezpośrednio połączona z jednym głównym punktem uziemiającym, umieszczonym możliwie najbliżej wejściowego gniazda sieciowego, albo wprowadzenia kabla sieciowego. Dzięki temu odłączenie uziemienia jednej z przewodzących części nie Elektronika Praktyczna 3/2002 31 spowoduje odłączenia uziemienia od innych elementów. Trzeba zwrócić szczególną uwagę na metalowe osie przełączników i potencjometrów. Jeśli można ich dotknąć, muszą zostać uziemione. Trzeba jednak wiedzieć, że te podzespoły, które zostały wykonane zgodnie z normami brytyjskimi, w pełni spełniają wszystkie wymagania izolacyjne. Temperatura dających się dotknąć części nie może być na tyle wysoka, aby powodować niebezpieczeństwo pożaru lub oparzenia. Większość niebezpieczeństw da się wyeliminować przez użycie odpowiednich bezpieczników, dostatecznie wytrzymałej konstrukcji, poprawnego doboru i użycia materiałów izolacyjnych i dostatecznego chłodzenia odpowiednimi radiatorami i wentylatorami wywiewnymi. Urządzenie musi być wytrzymałe. Kilkakrotne zrzucanie go z wysokości 50mm nie może powodować uszkodzeń. Silniejsze uderzenia nie powinny luzować transformatora sieciowego, kondensatorów elektrolitycznych, ani innych podzespołów. Nie należy używać niepewnych lub łatwopalnych materiałów, uwalniających trujące gazy. Należy skrócić śruby, które zbliżają się za bardzo do innych podzespołów. Części i przewody, znajdujące się pod napięciem sieci, nie powinny znajdować się w pobliżu otworów wentylacyjnych, aby przypadkowo wprowadzony śrubokręt lub upadający metalowy przedmiot nie mógł ich dotknąć. Otwarcie urządzenia naraża nas na liczne niebezpieczeństwa. Większość nich można wyeliminować przez odłączenie urządzenia od sieci przed jego otwarciem. Jeżeli jednak sprawdzanie wymaga jego ponownego włączenia, dobrze jest (i bezpiecznie) użyć w obwodzie sieciowym RCD [re-sidual current device) o nominale nie większym niż 30mA (czasem można je umieścić wewnątrz obudowy złącza sieciowego albo wie-lowyjściowego gniazdka). Powyższe wskazówki zostały zestawione przez zespół redakcyjny miesięcznika Elektor Electronics. Autorzy nie biorą na siebie żadnej odpowiedzialności za ja- WYKAZ ELEMENTÓW Rezystory Rl, R4: lMn R2: 68kQ R3: 10kO R5: 2,2kQ R6: 470O R7: Ó8Q, 1W R8: 150O, 0,5W Pl: lkQ, potencjometr liniowy Pl: 10kQ, potencjometr liniowy Kondensatory Cl, C3: kondensator strojeniowy płaski 500pF (np. Conrad Electronics # 482323, Digital Electronics (Holland) #02.84.500p C2, C4...CÓ, C8: lOOpF polistyrenowy albo polipropylenowy (np. Conrad Electronics # 458686) C7: lOnF, MKT (Siemens), rozstaw 7,5 lub lOmm C9: 500pF (470pF) lOOpF polistyrenowy albo polipropylenowy (np. Conrad Electronics # 458767) CIO: lOOnF, MKT (Siemens) rozstaw 7,5 lub lOmm Cli, C12: 470^F/63V Różne Dl: 1N4001 LA, LD, LR: indukcyjności (zobacz opis) VI: ECC82 Tl: transformator sieciowy 230/9V, 1,5VA T2: transformator sieciowy 230/2 x 18V, 4,8VA Kl: gniazdko słuchawkowe stereo do druku 3,5mm K2: blok śrubowy do druku, rozstęp 1 Omm podstawka lampowa 9-stykowa Noval do druku Zacisk antenowy czerwony Zacisk uziemienia czarny 2 pokrętła wskazujące 15 x 33mm do osi ómm 2 pokrętła wskazujące 13 x 20mm do osi ómm Przewód sieciowy Słuchawki 32Q kiekolwiek straty lub szkody, bezpośrednie lub pośrednie, spowodowane przez błędne odczytanie tych wskazówek lub ich zaniechanie, a wynikłych z zaniedbania, przypadku lub innych przyczyn. B. Stuurman, EE 32 Elektronika Praktyczna 3/2002 PROJEKTY Zamek szyfrowy do sejfu 99 Ucho od śledzia panie Kwinto 99 AVT-5042 Kwinto podszedł wolnym krokiem do czają cej się w kącie bankowego skarbca bestii, którą był dla niego sejf znienawidzonego Kramera. Obecni, szeregowi pomocnicy od wykonywańia czarnej roboty w rodzaju wysadzania dynamitem ściany skarbca, wstrzymali oddech, kiedy mistrz położył ręce na lśniących pokrętłach zamka szyfrowego, arcydzieła domin ującej w świecie, szwajcarskiej mechaniki precyzyjnej. Przez dłuższą chwilę było słychać jedynie cich u tki terkot obracanych przekładni. Nagle dał się słyszeć niezbyt głośny trzask, potem drugi, trzeci... Kwinto pociągnął za uchwyt i drzwi sejfu zaczęły się powoli otwierać... Piękna scena, piękne czasy! Czasy, w których królami przestępców nie byli zwykli bandyci, ale genialni kasiarze, otwierający każdy zamek bez używania siły i robienia komukolwiek krzywdy. Mechaniczne zamki do sejfów były prawdziwymi cudami ówczesnej techniki, obecnie zastąpionymi przez bezduszne zamki elektroniczne. Spróbujemy jednak zbudować elektroniczny odpowiednik szyfrowego zamka do sejfu, który przy obecnym stanie elektroniki powinien być układem banalnie prostym . Tylko, że tym razem: ucho od śledzia, panie Kwinto, ucho od śledzia! Tego zamka nie otworzy nawet najgenialniejszy kasiarz, ani Pan ani nawet sam mistrz Szpic-bródka! Nawet najlepszy słuch i największe "czucie" w palcach są bezradne wobec nowoczesnej elektroniki! Prezentowany w artykule zamek może być zarówno niezwykle efektowną zabawką, jak i w pełni użytecznym urządzeniem zabezpieczającym dostęp, może nie do skarbca bankowego, ale do domowego sejfu czy skrytki. Może być także łatwym w obsłudze i trudnym do otwarcia przez niepowołane osoby zamkiem do drzwi wejściowych domu lub innego pomieszczenia. Kluczem do zamka jest dowolny ciąg liczb (nie cyfr!) dwucyfrowych. Dowolny, ponieważ ich maksymalna liczba wynosi 125, co znacznie przekracza możliwoś- ci pamięciowe przeciętnego człowieka. Nawet przy wykorzystywaniu kilku liczb odgadnięcie klucza jest praktycznie niemożliwe, a w każdym razie wymaga więcej szczęścia niż wylosowania "szóstki" w Toto Lotku. Dokładne skopiowanie w sposób elektroniczny klasycznego zamka szyfrowego do sejfu nie miałoby chyba większego sensu. Prowadziłoby to do zastosowania kilku pokręteł, czyli do niepotrzebnego komplikowania konstrukcji oraz zwiększenia kosztów wykonania. Dlatego też w układzie zastosowałem tylko jedno pokrętło (impul-sator obrotowy) oraz podwójny wyświetlacz siedmiosegmentowy LED, na którym jest prezentowane aktualne położenie pokrętła zamka. Nawet najlepszy zamek szyfrowy niewiele byłby wart bez układów wykonawczych. Układ naszego zamka został wyposażony w dwa wyjścia. W jednym zastosowano zwykły przekaźnik o dużej obciążalności styków, za pośrednictwem którego możemy sterować dowolnym urządzeniem elektrycznym nie pobierającym więcej niż 8A przy 220VAC. Natomiast do drugiego wyjścia możemy dołączyć typowy serwomechanizm modelarski. Po otwarciu zamka wał napędowy serwa ustawiany jest w jednym ze skrajnych położeń, a po zamknięciu, w przeciwnym, po obróceniu wału o 180. Serwomechanizm modelarski charakte- Elektronika Praktyczna 1/2002 21 Zamek szyfrowy do sejfu Rys. 1. Schemat elektryczny zamka. ryzuje się znacznym momentem obrotowym, co umożliwia przesuwanie nawet bardzo ciężkich zasuw, a nawet ich zespołów. Układ zamka szyfrowego do sejfu nie jest skomplikowany i jest możliwy do wykonania nawet przez zupełnie początkujących konstruktorów . Opis działania układu Schemat elektryczny układu zamka do sejfu pokazano na rys. 1. Najważniejszym elementem, decydującym o jakości działania, jest zaprogramowany procesor typu AT90S2313, RlSC-owy odpowiednik popularnego '2051 . Procesor '2313 ma wbudowaną nieulotną pamięć danych EEPROM, co zwalnia z konieczności przechowywania w pamięci zewnętrznej liczb wchodzących w skład klucza. Drugim atutem procesora '2313, który przesądził o zastosowaniu go w układzie zamka, jest jego sprzętowy watchdog. Zgodnie ze swoim przeznaczeniem, układ zamka szyfrowego ma działać w stanie czuwania całe miesiące i lata. W ciągu tak długiego czasu zawieszenie procesora na skutek chociażby zakłóceń zewnętrznych jest więcej niż prawdopodobne. Przed takim właśnie przypadkiem strzeże nas sprzętowy watchdog. Wszystkie wyjścia portu B procesora zostały wykorzystane do sterowania segmentami wyświetlaczy siedmiosegmentowych DPl i DP2. Wspólne anody tych wyświetlaczy są zasilane za pomocą tranzystorów Tl i T2. Bazy tych tranzystorów są wy ster o wy w ane z wyjść 0 i 1 portu D. Do wprowadzania danych zastosowano obrotowy impuls a tor, który podczas obracania jego ośką generuje impulsy na dwóch wyjściach. Kolejność występowania tych impulsów jest taka, źe dołączony do wyjść impulsatora procesor może z łatwością nie tylko je zliczyć, ale także określić kierunek obrotu ośki impulsatora. Wewnętrzny oscylator procesora stabilizowany riFMmit i ht^^m jest rezonatorem ;- b* l^ kwarcowym o częstotliwości podstawowej 8MHz. Jako ele-m ent wyk ona w -czy, dołączany do złącza C0N2, zastosowano przekaźnik ELi, którego cewka zasilana jest przez tranzystor T3, wy sterowy w any z wyjścia PD6 procesora. Złącze CON3 służy do dołączenia do układu serwomechanizm u m o delar ski eg o. Układ zasilany jest napięciem stałym o wartości około 12VDC, doprowadzonym do złącza CONl. Napięcie to jest następnie obniżane i stabilizowane na poziomie 5VDC za pomocą scalonego stabilizatora napięcia ICl. Układ DS1813 zapewnia pewny start procesora po włączeniu zasilania i zabezpiecza przed niekontrolowanym działaniem procesora w przypadku obniżenie napięcia zasilania poniżej dopuszczalnej wartości. Analizę działania układu rozpoczniemy od momentu pierwszego włączenia napięcia zasilającego. Pierwszą czynnością, jaką wy- ŚŚŚ L > I.H OC Ś: 'U ip Gł ") 3 f * * -F- ',: * 11 m si " r' " " rł n i> *t -TiFirniFiinffiiFiirBnitPfl -t ff H ffFFFTFf*FFTffH=FSTFTF=ff| ir rr n T rt t n f| rt " rr i( it łf FFFTITFFFTPfFFTnnWFFFFFEfF FFFTfffFFFFTFFffffFfffFFFFFfF ' n n n rr rr f rr ff n rr rr rr ir n Rys. 2. Zawartość pamięci danych EEPROM podczas działania podprogramu rejestracji kodu. 22 Elektronika Praktyczna 1/2002 Zamek szyfrowy do sejfu List 1. Sub Wumb ers registr ati 'podpro gram reje stracji k odu dos tępU E epro m_address = 1 'wstępn e ustawie nie adres u pamię ci d an ych EEPROM na 1 F or T empl = 1 To 10 Fl ash_flag = Not Flas h_flag 1 zml eń wartoś ć zmier nej PC mocr iczej FLASH_ FLAG na 'przeciwną. Efekt działań ia tego fra gm entu programu mo Że my ' prześ] edzić ana lizuj ąc p odprogr am s te rowa nia multiple ._ owanym 'wyświe tlaniem d anych Wa itms 100 W ext Templ D SWitch_scan ' Wezwi" podprogr am badanj a stanu stykó W im pulsatora. Pro cedura ta 'został a omówi on a w EP5/2001 (re gula to r obrotów silnik ów DC) If Eutton_fla g = 1 Th en 'jeżeli został n aciśnięty przy ci sk i mp ulsa tora, to: Hriteeepr m Disp, Eeprom_address ' z apisz w pam ię ci d anych EEPROM a ktualnie 'prezen _owaną na wyświetl aczach liczbę Flash_fla = 0 'Włącz wyświetla nie krope 1 dzies iętn yc h na wyświetlacz ac h LED Waitms 10 Flash_fla = 1 'wyłącz wyświetl anie krop ek dzie slęt ny ch n a wyświetlać za ch LED Wait 1 Set Portd 3 'spróbuj ustawić stan wys oki na przy ci sku impulsatora If Pind.3 = 0 Ther ' jeżeli próba ni eudana, c o oznac za Ż e przy cisk jest na ci śnięty ' dłużę; niż 1 se kundę, to Writee epr m Ee jrom_addre ss, 126 ' z apisz w pam ię ci d anych EEPROM i nformację ' o iloś ci wprowa dzonych liczb Templ = 133 'zmienn a pomocni cza TEMP przyjmuje w artośc 13 3 ' (patrz opis pro cedury ba dania s tanu P amię ci EEPROM) Writee epr m Te npl, 127 zap isz tą w= rtość r od = dresen 12 7 Waitin 'wezwi; podprogr am oczekiwania n a po da nie Ś;odu dostępu End If Incr Eepr m a ddres s 'zwięks z wartość adresu p amięci EEPROM o 1 L End En d If Sub konuje procesor jest sprawdzenie, czy w pamięci danych EEPROM znajduję się liczby, wchodzące w skład klucza: Readeeprom Temp, 127 If Temp o 133 Then Number s_r egi st rat ion Endlf Całkowicie umowna liczba "133" jest zapisywana w pamięci EEPROM pod adresem 127 po zarejestrowaniu kodu klucza. Stwierdzenie innej wartości pod tym adresem powoduje automatyczne przejście do podprogramu rejestracji kodu klucza otwierającego zamek (list. l). Efekt działania podprogramu rejestracji klucza można zobaczyć na rys. 2, gdzie pokazana została zawartość pamięci danych EEPROM. Zostały tam zapisane daty bitew pod Grunwaldem i Auster-litz, data urodzin autora tego projektu i kilka innych liczb. Szczerze polecam taką metodę "komponowania" kodu klucza, ułatwiającą jego zapamiętanie. W układzie zamka zastosowano multipleksowane wyświetlanie danych, realizowane z częstotliwością ok. 488Hz. Multipleksowanie taktowane jest za pomocą timeraO, którego konfigurację sprzętową i programową określają polecenia: Config TimerO=Timer, Prescale=64 On TimerO Multiplexing Wyświetlanie danych realizowane jest za pomocą podprogra- mu MULTIPLEXING, wywoływanego przez przerwanie pochodzące od timeraO (list. 2). Po zarejestrowaniu kodu klucza dostępu, podobnie jak po otwarciu i ponownym zamknięciu zamka program przechodzi do podprogramu oczekiwania WAITING. Nie dzieje się tam nic szczególnego, ponieważ jedyną funkcją wykonywaną przez program jest sprawdzanie, czy przycisk impulsatora nie został przypadkiem naciśnięty oraz zerowanie sprzętowego watchdoga. Sub Waiting 'podprogram oczekiwania na 1 wybranie kodu dostępu Disable TiinerO 1 zawieś obsługę przerwania 1timeraO Set Portd.0: Set Portd.1 1 wyłącz wyświetlacze Wait 1 ' zaczekaj sekundę Do Set Portd.3 'sprawdź stan przycisku 'impulsatora If Pind.3 = 0 Then 'jeżeli przycisk został 'naciśnięty, to: Verification Endlf Reset Watchdog Loop End Sub Naciśnięcie przycisku impulsatora powoduje natychmiastowe przejście do podprogramu identyfikacji wprowadzanego kodu klucza. Włączone zostają wyświetlacze i trzykrotnym błyskiem kropek dziesiętnych jest sygnalizowana gotowość układu do przyjmowania wprowadzanych liczb. Dla wygody układ startuje z początkową wartością równą 50 (list. 3). Montaż i uruchomienie Na rys. 3 pokazano rozmieszczenie elementów na płytce drukowanej, wykonanej na laminacie dwustronnym z metalizacją otworów. Montaż tak prostego układu nie wymaga chyba szczegółowych komentarzy, z wyjątkiem jednego: wyświetlacze siedmiosegmentowe LED oraz impulsator obrotowy muszą zostać zamontowane od umownej strony ścieżek, czyli od strony lutowania. Pozwoli to na łatwiejsze umieszczenie układu w obudowie. Zmontowany ze sprawdzonych elementów układ zamka nie wymaga regulacji i po zaprogramowaniu kodu klucza nadaje się do eksploatacji. Po pierwszym włączeniu zasilania układ automatycznie przechodzi do trybu rejestracji kodu klucza dostępu, o czym jes- List. 2. "Iultiplexing 3e t Portd.0: S et Po rtd.l 'Wstępn ie wyłącz obydwa wyświet: acze Po rtb = 2 55 'wyłącz wszystki e segmenty wyświ etlac zy Di git_number = W Dt Digit nu mber 'zmień numer aktywnego wyświetla cza rf Digit_num be r = 0 Then 'jeżeli aktywny oędzie wyświetla cz 0, to Temp = Di sp / 10 'oblicz Wartość dziesiątek wyświ etlan ej liczby Portb = L kup(t emp, 7se gment) ' przeko dowanie otrzyman ej wa rto ś ci na tod wyświetlacza 'siedmi osegmento We go If Flash_ fl ag = 1 Then S et Portb.7 ' jeżeli punkty dziesięt ne wy świ e tlaczy nie mają Śmigota ć, to ust aw stan wysoki n a pin ie 7 portu E Reset Portd .1 'Włącz pierwszy wyświetlacz En d If rf Digit_num be r = 1 Then ' jeżeli aktywny oędzie drugi wyś Wietl acz to: Temp = Di sp / 10 'oblicz Wartość jednostek wyświe tlane j li czby Temp = Te mp * 10 Temp = Di sp - Te mp Portb = L oo kup(t emp, 7se gment) ' przeko dowanie o trzymanej wartoś ci na ko d wyświ etlacza 'siedmi osegmento We go If Flash_ fl ag = 1 Then S et Portb.7 ' jeżeli punkty dziesięt ne wy świ e tlaczy nie mają Śmigota ć, to ust aw stan wysoki n a pin ie 7 portu E Reset Portd .0 'Włącz drugi wyś Wietlacz En d If Re turn 7s egment: Da ta 64, 121 36 4 8, 25, 1 8, 2, 120, 0, 16 Elektronika Praktyczna 1/2002 23 Zamek szyfrowy do sejfu List. 3 3ub V erification Di sp = 50 ustaw Wstępną wartość wyświetlanej liczby na 50 En abl 3 TimerO Włącz wyświetlacze Fo r T smpl = 1 To 3 Fl ash_flag = Wot Fla sh_flag 'zmień wartość zmiennej pomocni :zej FLASH _FLAG na przeciwną. Efekt działania tego fragmentu programu możert y prześledzić analizując podprogram sterowania multipleksowa nym wyświe tlaniem danych Wa itms 200 We xt Templ Ti me ^ounter = 0 wyzeruj licznik upływu czasu Ee pro n address = 1 ustaw wstępnie adres pamięci danych EEPROM na 1 Co de flag = 1 zakładamy, że wprowadzany kod jest poprawny Re a de sprom Wumbers 126 odczytaj z pamięci EEPROM ilość liczb w kodzie Do SWitch_scan Wezwij podprogram badania stanu styków impulsa tora. Proc edura ta została omówiona w EP5/2001 (regulator obrotów silników DC) If Eutton_flag - 1 Then 'jeżeli został naciśnięty przycisk impul satora, to Time_counter = 0 'wyzeruj licznik upływu czasu Readeeprom T empl, Eeprom_address 'odczytaj z pamięci EEPROM wartość kolej lej liczby kodu If Templ o Disp Then Code_flag = 0 'jeżeli odczytana Wartość nie jest równa wartości wprowadzonej, to wyzeru zmienną 'poprawności kodu . Od tego momentu wprowadzanie dalszych liczb r ie odnosi już Żadnego 'skutku If Code_flag = 1 And Eeprom_address = Wumbers Then Opening 'jeżeli wszy stkie Wprowadzone liczby są poprawne, zostały podane W prawidłowej 'kolejności i Żad na liczba nie została do kodu dodana, to wezwi podprogram otwierania Incr Eeprom addre ss 'zwiększ wartość licznika adresu pamięci EEPROM o 1 Flash_flag = 0 'wygeneruj krótki błysk punktów dziesięt łych wyświ etlaczy Waitms 2 55 Flash flag = 1 En d If If Time_counter > 12000 Then Exit Do End S '] eżeli licznik czas J osiągnął wartość 12000, to powróć do stanu oc zekiwania op ub teśmy zawiadamiani dziesięcioma błyskami kropek dziesiętnych na wyświetlaczach. Kolejność postępowania podczas programowania kodu klucza jest następująca: 1. Za pomocą pokrętła impulsatora ustawiamy na wyświetlaczach pierwszą liczbę wchodzącą w skład kodu. 2. Krótkie naciśnięcie przycisku impulsatora powoduje wprowadzenie ustawionej liczby do pamięci i automatyczne przejście do programowania kolejnej liczby. Potwierdzane jest to krótkim błyskiem kropek dziesiętnych na wyświetlaczach. Rys. 3. Rozmieszczenie elementów na płytce drukowanej. 3. Czynności opisane w punktach 1 i 2 powtarzamy tyle razy, ile liczb mamy zamiar zaprogramować. Może ich być maksymalnie 125. 4. Po ustawieniu na wyświetlaczach ostatniej liczby kodu klucza przytrzymujemy przycisk dłużej niż uprzednio, przez okres około 1 sekundy. Spowoduje to zapisanie do pamięci ostatniej liczby, wyłączenie wyświetlaczy i przejście układu w stan czuwania, o czym zostajemy zawiadomieni za pomocą pięciu błysków punktów dziesiętnych na wyświetlaczach. Otwieranie zamka przebiega w sposób podobny do jego programowania. Pierwsze naciśnięcie przycisku impulsatora powoduje włączenie wyświetlaczy i przygotowanie układu do wprowadzenia kodu klucza. Za pomocą pokrętła impulsatora ustawiamy na wyświetlaczach kolejne liczby kodu i potwierdzamy to krótkim naciśnięciem przycisku. Następnie, w identyczny sposób wprowadzamy kolejne liczby. Jeżeli wszystkie liczby wchodzące w skład kodu zostaną wprowadzone we właściwej kolejności, to zamek otworzy się natychmiast po podaniu ostatniej liczby. Zamek pozostanie otwarty aż do ponownego naciśnięcia przycisku impulsatora. Wprowadzenie błędnej liczby lub liczby wchodzącej w skład WYKAZ ELEMENTÓW Rezystory Rl, R2: 3,3kn R3, R4, R5: lkn Kondensatory Cl: 47O^F/1ÓV C2, C3: lOOnF C4: 100^F/10V C5, Có: 27pF Półprzewodniki Dl: 1N4148 IC1: 7805 IC2: AT90S2313 (zaprogramowany) IC3: DS1813 Tl, T2: BC557 T3: BS107 Różne CON1: ARK2 (3,5mm) CON2: ARK3 CON3: 3xgoldpin DPI, DP2: wyświetlacz siedmiosegmentowy LED, wsp. anoda Ql: rezonator kwarcowy 8MHz RL1: przekaźnik RM96 Sl: impulsator obrotowy kodu klucza, ale podanej w niewłaściwej kolejności powoduje unieważnienie całej operacji wprowadzania kodu, a otwarcie zamka staje się niemożliwe. Należy wtedy odczekać ok. 2 0 sekund, po czym wyświetlacze zostaną wyłączone, a my możemy rozpocząć kolejną próbę wprowadzenia poprawnego klucza. Podczas eksploatacji zamka może zajść konieczność zmiany ustawionego uprzednio kodu klucza. Ponowne przejście w tryb rejestracji kodu wymuszamy następująco: 1. Wyłączamy zasilanie zamka. 2. Naciskamy przycisk impulsatora 3. Trzymając cały czas przycisk impulsatora naciśnięty ponownie włączamy zasilanie. Po wykonaniu tych czynności układ automatycznie przejdzie w tryb rejestracji nowego kodu dostępu. Zbigniew Raabe zbigniew.raabe@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/styczenO2.htm oraz na płycie CD-EP01/2002B w katalogu PCB. Elektronika Praktyczna 1/2002 PROJEKTY Cyfrowa kamera pogłosowa HiQ AVT-5057 Na łamach EP przedstawiliśmy dotychczas wiele różnych rozwiązań an alogowych i cyfrowych kamer pogłosowych (elektronicznych ech), których parametry elektroakustyczne nie zawsze były najlepsze. Były on e wynikiem stosowania tanich podzespołów, które z natury rzeczy nie gwarantowały uzyskania bardzo dobrych efektów. W artykule przedstawiamy elektroniczne echo, którego parametry pozwalają zakwalifikować je do gron a urządzeń o, co najmniej, dobrej jakości przetwarzania sygnału audio. Jak widać w tytule artykułu, zaryzykowaliśmy nawet stwierdzenie, że AVT-5057 m ożn a zaliczyć do gron a urządzeń HiQ (High Quality). I to prawie za grosik... No dobrze, zapytają co bardziej dociekliwi Czytelnicy: jakim to cudem udało się obejść dotychczasowe niemożności, które utrudniały, czy też uniemożliwiały zaprojektowanie i wykonanie taniego urządzenia pogłosowego, które mogłoby zapewnić przyzwoitą jakość dźwięku? Ten cud to po prostu specjalizowany układ scalony opracowany przez firmę Taiwan Memory Technology. Nosi on nazwę T62M0002A. Od razu uprzedzam: nie pytajcie mnie o in-ternetowy adres strony tej firmy, ponieważ pomimo poszukiwań nie udało mi się jej znaleźć. Na płycie CD-EP3/2002B zamieszczamy natomiast notę katalogową naszego "bohatera", która - niestety - nie wyjaśnia wszystkich wątpliwości rasowego konstrukto- LPF1 IN LPF1 OUT LPF2 OUT LPF2 IN OP2 OUT OP2 IN OP1 IN OP1 OUT CCO CC1 -------r>-----------------r>---------------------o-----------------C--------O---------------O---------C---------------O----------O----------O------------ 4,7kO 4,7kfl DOO DO1 MO Mi CLOCK A T 1 t 32kb RAM vco -Jt- VCC REF AGND DGND OSC O VCO Rys. 1. Schemat blokowy układu T62M0002A. ra, ale zawiera przynajmniej podstawowe dane techniczne i elektryczne układu T62M0002A. 16-nóżkowy bohater W niewielkiej obudowie DIL16 układu T62M0002A producentowi udało się upakować wszystkie elementy toru audio, tzn.: - dwa wzmacniacze operacyjne, które są przeznaczone do zbudowania filtrów dolnoprzepusto-wych zapobiegających zniekształceniom sygnału audio podczas przetwarzania A/C i C/A, - dwa wzmacniacze operacyjne ulokowane w stopniu wyjściowym toru przetwarzania sygnału audio - spełniają one rolę in-tegratorów-filtrów usuwających z sygnału wyjściowego ślady przetwarzania C/A, - źródło napięcia masy pozornej (1/2VCC), które odpowiada za poprawne spolaryzowanie wzmacniaczy operacyjnych zasilanych napięciem niesymetrycznym, - komparator analogowy stanowiący element 1-bitowego, przyrostowego przetwornika A/C, - sterowane źródła prądowe, które pracują w torze przetwarzania C/A, - blok automatycznego zerowania, który zapewnia poprawny start układu po każdorazowym włączeniu zasilania, - generator sygnału zegarowego, Elektronika Praktyczna 3/2002 33 Cyfrowa kamera pogłosowa HiQ Vln LPF1 Vout > A/D --------> Opóźn. --------^ D/A --------> LPF2 Rys. 2. Schemat blokowy cyfrowej kamery pogłosowej. który wykonano jako VCO [Vol-tage Controlled Oscillator), którego częstotliwość pracy zmienia się za pomocą pojedynczego rezystora lub potencjometru, - automat zarządzający pracą przetwornika A/C i C/A oraz obsługą pamięci SRAM, która spełnia w układzie T62M0002A rolę cyfrowej linii opóźniającej. Prezentowany układ jest zasilany napięciem o wartości 5V, a maksymalny pobór prądu nie przekracza 30mA. Zgodnie z danymi udostępnionymi przez producenta, współczynnik zniekształceń sygnału wyjściowego nie przekracza 0,3...1% w paśmie 3O...16kHz, a poziom sygnału szumowego w sygnale wyjściowym nie jest większy od -80dbV. Wartości te podaję bez pewności co do ich słuszności, ponieważ uproszczone obliczenia jakie wykonałem sugerują nieco mniej optymistyczny punkt widzenia, ale wyniki eksperymentów odsłu-chowych (w końcu to one decydują o tym, jak ostatecznie oceniamy jakość dźwięku) wypadły pozytywnie. Dla zapewnienia dobrych warunków pracy toru przetwarzania sygnału impedancja obciążenia wyjścia układu nie powinna być mniejsza niż 47kQ, a napięcie sygnału wejściowego nie powinno przekraczać 0,6Vrms (przy napięciu lVrms współczynnik zniekształceń rośnie do 10%). Opis układu Układ T62M0002A jest, tak naprawdę, półprzewodnikową linią, opóźniającą sygnał analogowy, przy czym długość opóźnienia można regulować. Aby uzyskać efekt echa (pogłosu) konieczne jest zsumowanie sygnału podawanego na wejście urządzenia z sygnałem opóźnionym o amplitudzie nieco mniejszej niż oryginalny. Schemat blokowy typowej kamery pogłosowej pokazano na rys. 2. Na rysunku uwzględniono wszystkie elementy toru audio charakterystyczne dla cyfrowych kamer pogłosowych (m.in. filtry antyaliasingowe, cyfrową linię opóźniającą, przetworniki), które zastosowano także w prezentowanym urządzeniu. Kamery pogłosowe są zazwyczaj wyposażane w dwa elementy regulacyjne: - regulator czasu opóźnienia, który pozwala ustalić dystans czasowy pomiędzy sygnałem oryginalnym i jego echem, - regulator poziomu sygnału echa, którego zadaniem jest ustalenie głośności echa słyszalnego w sygnale wyjściowym kamery pogłosowej. Dzięki zastosowaniu tych regulacji, po przeprowadzeniu kilku doświadczeń, można symulować sobie w domu nieźle brzmiące echo leśne... Opis układu Schemat elektryczny kamery pogłosowej pokazano na rys. 3. Jak widać, jest to niezbyt skomplikowane urządzenie, które zawiera tylko jeden element półprzewodnikowy - układ ICl -T62M0002A. Jest to jego typowa aplikacja, z elementami o wartościach zalecanych przez producenta. Przeprowadzone przez nas próby dowiodły, że modyfikowanie ich wartości nie ma większego sensu, co jest wynikiem silnego wyspecjalizowania układu T62M0002A, którego najważniejsze bloki wykonano całkowicie w krzemie. Jedynym elementem, którego modyfikowanie wartości ma sens, jest potencjometr Pl. Służy on do regulowania czasu pogłosu. Niestety, w danych katalogowych układu T62M0002A nie podano dopuszczanych przez producenta wartości rezystancji dołączanej do wyprowadzenia 6 (VCO), wartości podane na schemacie dobrano eksperymentalnie. Ze względów bezpieczeństwa nie należy CE3 JP2 JP1 330nFl~~330nF T62M0002A Rys. 3. Schemat elektryczny cyfrowej kamery pogłosowej. 34 Elektronika Praktyczna 3/2002 Cyfrowa kamera pogłosowa HiQ Rys. 4. Rozmieszczenie elementów na płytce drukowanej. zmniejszać sumarycznej wartości rezystancji rezystorów dołączonych do wyprowadzenia VCO poniżej lkQ. Drugim elementem regulacyjnym zastosowanym w urządzeniu jest potencjometr P2. Służy on do regulowania amplitudy sygnału zwrotnego (echa). Zmniejszenie wartości jego rezystancji poniżej 47kQ spowoduje znaczny wzrost poziomu zniekształceń w sygnale wyjściowym linii opóźniającej, co WYKAZ ELEMENTÓW Rezystory Rl, R7: 4,7kn R2: 20kQ R3: lOOkO R4, RIO: 10kO R5, R8, Rl 1: 18kQ R6: 5,ókQ R9: 20kQ Pl: 22kO/A P2: 47kO/B Kondensatory Cl, C8, C9: lOOnF C2, C3: 330nF C4, CIO: 4,7nF C5, C7: 560pF C6: lOnF CE1: 100^F/16V CE4, CE5, CEÓ: 1jiF/16V CE2: 47^F/16V CE3: 4,7^F/1ÓV Półprzewodniki IC1: T62M0002A Różne JP1: 2 lub 3 kolki srebrzone JP2, JP3: pojedyncze gniazda chinch do druku - sprawdziłem! - powoduje fatalne brzmienie odtwarzanego sygnału. Montaż i uruchomienie Ogromna prostota układowa umożliwiła opracowanie dla kamery pogłosowej niewielkiej, jednostronnej płytki drukowanej, której schemat montażowy przedstawiono na rys. 4. Tradycyjnie widok ścieżek publikujemy na wkładce wewnątrz numeru, a wzór płytki jest dostępny w formacie PDF na naszej stronie internetowej oraz na płycie CD-EP3/2002B (także w formacie Auto trax owego PCB). Montaż układu nie wymaga specjalnego omawiania, doświadczenia pokazały, że warto się zatroszczyć o podstawkę pod układ ICl. Obydwa potencjometry są montowane poza płytką, należy je dołączyć do niej za pomocą możliwie krótkich przewodów. Na jedną z krawędzi płytki wyprowadzono także punkty złącza JPl, do których należy doprowadzić zasilanie (stabilizowane napięcie 5V). W celu obniżenia wzajemnego (niekorzystnego!) wpływu mas: cyfrowej i analogowej wyprowadzono je na złącze oddzielnie (rys. 5), w związku z czym podczas uruchamiania urządzenia należy pamiętać o tym, aby obydwie masy połączyć ze sobą - najlepiej bezpośrednio przy źródle zasilania. Jeżeli te masy nie zostaną ze sobą połączone, urządzenie nie będzie działało! Do sprawdzenia działania kamery pogłosowej niezbędne będą: źródło sygnału audio (odtwarzacz CD, magnetofon itp.) oraz dowolny wzmacniacz audio. Ponieważ opisana w artykule kamera pogłosowa jest monofoniczna, w przypadkach wymagających "uecho-wienia" sygnału stereofonicznego konieczne jest zastosowanie Masa Stabilizowane .cyfrowa' +5V Masa "analogowa" dwóch takich modułów. Ich pracę można zsynchronizować w taki sposób, żeby regulację czasu opóźnienia i regulacja poziomu sygnału zwrotnego odbywały się dla obydwu kanałów jednocześnie. Najskuteczniejszym i najtańszym sposobem ich synchronizacji jest zastosowanie podwójnych potencjometrów sterowanych jedną ośką. Rozwiązania "czysto" elektroniczne, jakkolwiek możliwe do realizacji, powodują niepotrzebny wzrost kosztu wykonania kamery pogłosowej. Sposób umieszczenia na płytce gniazd JP2 i JP3 umożliwia jej wygodny montaż w obudowie. Jeżeli jest ona wykonana z metalu warto jest połączyć ją z analogową masą urządzenia. Miłej zabawy leśnym echem! Andrzej Gawryluk, AVT Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/marzecO2Jitm oraz na płycie CD-EP03/2002B w katalogu PCB. Rys. 5. Wyprowadzenie zasilania z rozdzieloną "masa". Elektronika Praktyczna 3/2002 35 PROJEKTY Tester aparatów telefonicznych AVT-5056 Naprawić aparat telefoniczny nie jest łatwo, zwłaszcza gdy m amy aparat nowego typu, w którym stosowane jest wybieranie tonowe. Prezentowany układ będzie pomocny właśnie przy naprawach. Uzupełni zarówno wyposażenie pracowni młodego elektronika jak i warsztatu serwisowego. J** Tester powstał w celu usprawnienia naprawy aparatów telefonicznych CA z wybieraniem tonowym. Umożliwia on sprawdzenie głównych obwodów aparatu telefonicznego bez podłączania go do linii telefonicznej, a mianowicie: - wybierania tonowego, - dzwonka, - obwodów rozmownych. W układzie zastosowano scalony odbiornik kodu DTMF typu MT8870 oraz mikrokontroler ST6225. Oprogramowanie dla mik-rokontrolera zostało napisane (w zasadzie narysowane) za pomocą znanego Czytelnikom EP programu ST6-Realizer. Scalony dekoder DTMF typu MT8870 został opracowany kilka lat temu przez kanadyjską firmę Mitel. Układ ten integruje w swoim wnętrzu wszystkie bloki funkcjonalne, niezbędne do prawidłowego zdekodowania sygnałów DTMF przesyłanych linią telefoniczną. Opis układu Tester został wykonany na jednostronnej płytce drukowanej, na której umieszczone są wszystkie elementy układu. Jego schemat przedstawiono na rys. 1. Zawiera on następujące bloki funkcjonalne: - układ liniowy, - odbiornik DTMF, - procesor ST6225, - wyświetlacz LCD (alfanumeryczny), - wyświetlacz LED (jedna cyfra), - zasilacz +5VDC/+12VDC/24VAC. Zadaniem układu liniowego jest zasilanie aparatu telefonicznego z linii, tak jak odbywa się to po dołączeniu aparatu do centrali automatycznej, a także wysyłanie sygnału dzwonienia do badanego aparatu. Zadaniem odbiornika DTMF -jak sama nazwa wskazuje - jest odebranie sygnału DTMF pochodzącego z aparatu telefonicznego z wybieraniem tonowym. Mikrokontroler ST62T25 jest "sercem" układu odpowiedzialnym za poprawną pracę testera. Na wyświetlaczu alfanumerycznym LCD wyświetlane są komunikaty o stanie pracy układu. Zamiast wyświetlacza alfanumerycznego można zastosować opcjonalnie wyświetlacz LED. Zasilacz dostarcza napięć zasilających tester: +5V dla części cyfrowej, +12V dla układu linio- Tab. 1. Składowe częstotliwości sygnałów DTMF przypisane poszczególnym przyciskom klawiatury. Częstotliwość [Hz] 1209 1336 1477 697 1 2 3 770 4 5 6 852 7 8 9 941 0 # Elektronika Praktyczna 3/2002 37 Tester aparatów telefonicznych Rys. 1. Schemat blokowy testera. wego oraz napięcie dla obwodu wywołania 24VAC. W układzie testera można wyróżnić dwie grupy bloków funkcjonalnych: - telefoniczne, to jest blok liniowy i odbiornik DTMF, - cyfrowe, to jest mikroprocesor, wyświetlacz LCD (LED), zasilacz. Na rys. 2 przedstawiono schemat elektryczny kompletnego testera. Do komunikacji pomiędzy procesorem a układem dekodera DTMF wykorzystano sześć wyprowadzeń mikrokontrolera. Dane z wyprowadzeń dekodera Ql...Q4 podane są na wejścia PB6, PB7, PC4, PC5 skonfigurowane jako pull-up. Sygnały sterujące STD i TOE dekodera podane są na wejścia PC6 [pull-up) i PB5, skonfigurowane jako wyjście push-pull. Kolejnych siedem wyprowadzeń PA0...PA6 skonfigurowanych jest jako wyjścia push-pull. Służą one do sterowania alfanumerycznym wyświetlaczem LCD lub jednocyfrowym wyświetlaczem LED. Przyciski sterujące Pl (zew) i P2 (praca) są dołączone do wejść PB2 i PB3 skonfigurowanych jako wejścia z rezystorem podciągającym [pull-up). Diody sygnalizacyjne Dl i D2 są sterowane z wyprowadzeń PBO i PBl (wyjścia push-pull). Transoptory OPTl i OPT2, wchodzące w skład obwodu liniowego, są połączone z wyprowadzeniami PB4 i PC7 skonfigurowanymi jako wejścia pull-up. Przekaźnik podający napięcie zewu (24VAC) na testowany aparat sterowany jest z wyjścia PA7 [push-pull) za pośrednictwem tranzystora Tl. Do sprzęgnięcia odbiornika DTMF z obwodem liniowym został użyty transformator telefoniczny 1:1 600Q. W opisywanym układzie procesor i dekoder korzystają z oddzielnych rezonatorów kwarcowych, 8MHz dla mikrokontrolera i 3,579MHz dla dekodera. Działanie układu Opis działania testera omówimy w dwóch częściach, oddzielnie dla części "telefonicznej" i "cyfrowej". Część telefoniczna Głównym zadaniem części telefonicznej jest symulacja centrali telefonicznej, a właściwie niektórych jej obwodów takich jak: obwód wywołania, zasilania aparatu, odbioru sygnałów wybierania tonowego. Aby aparat telefoniczny można było poddać testowaniu musi być odpowiednio zasilony, tzw. napięciem z linii. W naszym układzie jest to realizowane poprzez następujący obwód: +12V, rezystor bocznikujący transoptor OPT2, styki przekaźnika PKl, złącze śrubowe, żyła A linii, aparat telefoniczny (testowany), żyła B linii, złącze śrubowe, styki przekaźnika PKl, rezystor bocznikujący transoptor OPTl, rezystor RX, transformator 600Q, masa układu. Po podniesieniu słuchawki w wymienionym obwodzie popłynie prąd zasilający wewnętrzne układy aparatu powodując zadziałanie diod trans op torów OPTl i OPT2. Zadziałanie transoptorów spowoduje podanie sygnałów do procesora, informujących o podniesieniu słuchawki. Wysyłanie sygnału wywołania do badanego aparatu następuje w wyniku zadziałania przekaźnika PKl, który pod- łącza aparat do źródła napięcia przemiennego. Zgodnie z normą obwody wywołania nie powinny zadziałać przy napięciu niższym niż 16VY 25Hz, a powinny pracować poprawnie przy napięciu od 40V do 90V/25Hz lub 50Hz. W naszym układzie, ze względów bezpieczeństwa, napięcie wywołania zostało celowo obniżone do wartości 24V/50Hz. Przy tym napięciu powinien zadziałać obwód wywołania w większości aparatów telefonicznych. Wysyłanie sygnału wywołania następuje po naciśnięciu przycisku P2 (ZEW) i tylko wtedy, jeżeli słuchawka aparatu nie jest podniesiona. Wysyłanie sygnału jest przerywane w chwili podniesienia słuchawki. Odbiór sygnałów DTMF jest jednym z najważniejszych zadań testera. Opis tych sygnałów, generowanych przez aparat telefoniczny po wciśnięciu każdego przycisku, zestawiono tab. 1 WYKAZ ELEMENTÓW Rezystory Rl, R2, Ró, R7, R15: 3,9kQ R3, R4: lOOkO R5: 300kQ R8...R14: 560O (opcjonalnie) Rló, R17: 820O R18, R19: 100O POT1: 10kO Kondensatory Cl: 1000|iF/40V C2: 220^F/40V C3, C4, C7...C9: lOOnF C5, Có: 30pF CIO: ljiF Półprzewodniki DL D2: LED dowolne Ml: mostek L5A LCD: Wyświetlacz LCD 1X16 Tl: BC237 US1: MT8870 US2 ST62T25C: zaprogramowany US3: 7805 OPTL OPT2: CNY17F-4 Różne PKl AZ850-5 TRI 1:1 600O Xl: 3,589MHz X2: 8,000MHz Pl, P2: przyciski miniaturowe Złącza śrubowe ARK 1x2 (3 szt.) Gniazdo gold-pin 1x16 Listwa gold-pin 1x16 Elektronika Praktyczna 3/2002 Tester aparatów telefonicznych Każdemu przyciskowi przyporządkowań o sygnały o dwóch częstotliwościach, jedna z wiersza a druga z kolumny tablicy. Tolerancja generowanych częstotliwości nie powinna być większa niż ą1,5%. Czas trwania sygnału wysyłanego z aparatu oraz przerwy pomiędzy poszczególnymi sygnałami powinien być nie krótszy niż 55ms. W tabeli prawdy (tab. 2) podano stany na poszczególnych wyprowadzeniach układu dekodera MT8870 po prawidłowym zde-kodowaniu sygnału. Wyprowadzenia Ql...Q4 są trój stanowymi wyprowadzeniami danych z układu dekodera. Dane te pojawiają się na wyjściu po prawidłowym zdekodowaniu sygnału DTMF przez układ. Czyli wówczas, gdy zostaną spełnione wymagania dotyczące czasu trwania, amplitudy i składowych częstotliwościowych sygnału DTMF. Niski poziom na wejściu sterującym TOE powoduje wprowa- Tab. 2. Tablica prawdy dla układu MT8870. Sygnał TOE INH EST Q4 Q3 Q2 Q1 weisciowy Dowolny L X H Z Z Z Z 1 H X H 0 0 0 1 2 H X H 0 0 1 0 3 H X H 0 0 1 1 4 H X H 0 1 0 0 5 H X H 0 1 0 1 6 H X H 0 1 1 0 7 H X H 0 1 1 1 8 H X H 1 0 0 0 9 H X H 1 0 0 1 0 H X H 1 0 1 0 H X H 1 0 1 1 # H X H 1 1 0 0 A H L H 1 1 0 1 B H L H 1 1 1 0 C H L H 1 1 1 1 D H L H 0 0 0 0 A H H L Wartość nie jest określona (podtrzymanie poprzedniej danej) B H H L C H H L D H H L Rys. 2. Schemat elektryczny testera. Elektronika Praktyczna 3/2002 39 Tester aparatów telefonicznych dzenie wyjść danych Ql...Q4 w stan wysokiej impedancji. W standardzie DTMF mamy możliwość zakodowania aż 16 znaków, lecz zazwyczaj wykorzystanych jest 12. Układ MT8870 ma możliwość zdekodowania wszystkich 16 znaków. Aby wejść w ten tryb pracy należy na wejście INH podać odpowiedni poziom napięcia i tak dla: INH="H" - tryb pracy 12 znaków, INH="L" - tryb pracy 16 znaków. Po poprawnym zdekodowaniu sygnału wejściowego DTMF, na wyjściu STD pojawia się poziom wysoki. Wyjście to najczęściej jest stosowane do informowania współdziałającego z dekoderem mikrokontrolera. Pozwala to na bieżące śledzenie pracy dekodera. Opis działania programu mikro- kontrolera współpracującego z dekoderem przedstawimy w kolejnej części. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/marzecO2Jitm oraz na płycie CD-EP03/2002B w katalogu PCB. 40 Elektronika Praktyczna 3/2002 Zasilacz laboratoryjny sterowany cyfrowo, część 1 W każdym laboratorium elektronicznym jest potrzebny zasilacz o dużej mocy i regulowanym napięciu na wyjściu. W zasilaczu opisanym w ańykule wszelkie nastawy są monitorowane przez mikrokontroler. Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 41...44 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Istnieje wiele rodzajów zasilaczy laboratoryjnych, od bardzo prostych do niezwykle złożonych. Od liniowych analogowych zasilaczy z regulacją jedynie napięcia, do zasilaczy impulsowych, z mikroprocesorową stabilizacją napięcia i prądu, z programowalnymi przebiegami sygnałów i rozmaitymi funkcjami monitorowania oraz z interfejsem GPIB. Prezentowany zasilacz należy do grupy plasującej się pośrodku. W zależności od wersji, napięcie wyjściowe wynosi O...25V, przy prądzie wyjściowym do 2,5A lub 0".20V, przy maksymalnym prądzie wyjściowym lA. Napięcie i natężenie prądu są nastawialne cyfrowo, każde za pomocą czterech przycisków (dwoma zgrubnie i dwoma dokładnie), z rozdziel- Tab. 1. Skrócone dane techniczne zasilacza laboratoryjnego Parametr wersja 2,5A wersja 1A Napięcie zasilania 230VAC -0/+10% przy 25V, 2.5A ą10% przy 24V. 2.5A 230VAC ą10% przy 20V, 1A Dokładność ustalonego napięcia Typowo +30rnV Typowo +30rnV Dokładność ustalonego ograniczenia prądu Typowo +5rnA Typowo +5rnA Tętnienia napięciowe na wyjściu 5rnV (stabilizacja napięcia) 10rnV (stabilizacja prądu) 5rnV (stabilizacja napięcia) 25rnV (stabilizacja prądu) Elektronika Praktyczna 3/2002 41 CM \
Rys. 1. Schemat zasilacza 2,5A. W nawiasach podano wartości dla zasilacza 1A. 42 Elektronika Praktyczna 3/2002 czością 100mV i lOmA. Zadane i faktyczne wartości napięcia i prądu są wyświetlane na podświetlanym wyświetlaczu ciekłokrystalicznym. Zasilacz może być sterowany zdalnie przez wbudowany interfejs RS232, a mierzone wartości napięcia i natężenia prądu są przesyłane przez ten interfejs w sposób ciągły. W protokole komunikacyjnym są używane tylko znaki ASCII, zatem w najprostszym przypadku do wyświetlania i regulacji wystarcza Hyp er Terminal. Odpowiedni program sterowania zasilaczem jest dostępny bezpłatnie z autorskiej witryny www.pic-ba-sic.de. Kod źródłowy także został tam opublikowany, a więc program ten może być modyfikowany do innych aplikacji. Do sterowania zasilaczem służy miki o sterownik PIC16F84 firmy Microchip z programem napisanym w PIC-Basic 1.3. Kod źródłowy, listing asemblera i szesnas-tkowy "zrzut" kodu maszynowego tego programu są także udostępnione bezpłatnie pod wyżej podanym adresem. W tab. 1 zawarto główne dane techniczne zasilacza. Klasyczna stabilizacja analogowa Układ składa się z bloku analogowego i cyfrowego (schemat pokazano na rys. 1), mieszczących się na jednej płytce drukowanej. Jedynie tranzystory szeregowe, moduł wyświetlacza i transformator sieciowy (wraz z doprowadzeniem sieci i wyłącznikiem) umieszczono poza płytką. Schemat klasycznego stabilizatora analogowego został unowocześniony przez zastosowanie układu scalonego LT1491. Jest to poczwórny wzmacniacz operacyjny o identycznych wyprowadzeniach i takich samych (jeśli nie lepszych) parametrach jak legendarny LM324. Dzięki użyciu precyzyjnych rezystorów warstwowych o małych tolerancjach, wzmacniacze pracują na tyle dokładnie, że nie potrzeba wielu punktów kalibracyjnych. W zasilaczu wyjściowe napięcie i prąd są nieustannie mierzone i porównywane z wymaganymi za pomocą komparatorów. Napięcie wyjściowe jest w tym celu pobierane bezpośrednio z zacisku wyjściowego i za pośrednictwem dzielnika rezystancyjnego (z po- minięciem rezystancji ścieżek i styków) dostosowywane do wymagań napięciowych komparatora. Pomiar prądu jest nieco bardziej złożony, ponieważ w pętli sprzężenia zwrotnego musi znaleźć się prądowy rezystor szeregowy. Jego rezystancja musi być możliwie mała, aby zbytnio nie ograniczać zakresu napięcia wyjściowego i zachować niskie straty mocy. Z drugiej strony jednak, rezystor szeregowy musi mieć na tyle dużą rezystancję i musi być dokładny, aby odkładający się na nim (proporcjonalny do prądu) spadek napięcia był mierzalny przez komparator i nie został zdominowany przez napięcie polaryzacji i szumy. Rezystor szeregowy jest utworzony z dziesięciu połączonych równolegle rezystorów lLi o tolerancji 1% (R24...R33). Tak powstały rezystor jest tańszy od rezystora O,lLi/1%, a oczekiwana dokładność porównywalna. Elementy zostały tak rozmieszczone na płytce drukowanej, aby rezystancja skróconej do minimum ścieżki obwodu tego rezystora możliwie najmniej wpływała na pomiar. Przy prądzie obciążenia 2,5A, spadek napięcia na rezystorze wynosi 0,25V. Wzmacniacz operacyjny IClC w wersji 2,5A wzmacnia go 20-kiotnie, a w wersji lA 40-kiotnie. Wzmocnione napięcie jest przez Rl4 doprowadzone do komparatora. Jednakże na pomiar napięcia wpływa również prąd. Wzmacniacz operacyjny IClB dzieli spadek napięcia na rezystorze szeregowym przez cztery i odwraca go, wytwarzając napięcie -0,0625V. Je- żeli napięcie na zaciskach wyjściowych (czyli na obciążeniu) wynosi 25V, to na zacisku dodatnim względem masy zasilacza powstaje 25,25V. Całkowita rezystancja dzielnika napięcia (R7 + R8 + Rl5) wynosi 50kLi a odkłada się na nim napięcie 25,25V + 0,0625V = 25,3125V. Cztery piąte tego napięcia odkłada się na R7 i R8, a na Rl5 jedna piąta, czyli 5,0625V. W miejscu połączenia R8 i Rl5 występuje zatem dokładnie 5V względem masy. Napięcie na wyjściu dzielnika wynosi więc zawsze dokładnie 1/5 napięcia wyjściowego, niezależnie od natężenia prądu, pobieranego przez obciążenie i płynącego przez rezystor szeregowy. Bez takiej kompensacji spadek napięcia na rezystorze szeregowym wpływałby na napięcie wyjściowe zasilacza. Wzmacniacze operacyjne ICl wymagają także ujemnego napięcia względem masy zasilacza, muszą więc być zasilane odpowiednio ujemnym napięciem. Wystarczającego do tego celu napięcia dostarcza dioda Dl. Podzielone, wzmocnione i skompensowane napięcia pomiarowe są następnie kierowane do wejść odwracających wzmacniaczy operacyjnych IClD (przez R9) i IClA (przez R14), działających jako komparatory. Komparatory te porównują aktualne napięcie i aktualny prąd z wartościami wymaganymi, otrzymywanymi z mikio-sterownika PIC16F84 (IC3). Może on generować dwa analogowe sygnały napięciowe za pośrednictwem filtrów RC: Rll, C9 i R12, C8. Napięcia te powstają przez całkowanie sygnałów z modulacją szerokości impulsów z wyjść mik- Elektronika Praktyczna 3/2002 43 rokontrolera. Rozdzielczość tych przetworników cyfro wo-analogo-wych wynosi 8 bitów. Dzięki pojemnościom C6 i C7 charakterystyki komparatorów są dolnoprzepustowe. Ich wyjścia przez D6 i D5, połączone w układ sumy galwanicznej [wired OR), sterują bazami tranzystorów szeregowych stabilizatora. Jeśli jedna z wielkości mierzonych przekroczy wartość wymaganą, potencjał baz jest obniżany do poziomu masy, a nawet nieco poniżej, i tranzystory szeregowe są blokowane. Jeżeli wymagane napięcie lub wymagany prąd nie są osiągane, stałoprądowe źródło Tl dostarcza prądu bazy 2mA (w zasilaczu 2,5A) lub 360|iA (w zasilaczu lA), niezależnie od napięcia wyjściowego. Tak niewielki prąd w zupełności wystarcza, ponieważ T2, T3 i T4 są tranzystorami Darlingtona. W zasilaczu 2,5A użyto trzech tranzystorów szeregowych. Dla zapewnienia równomiernego rozdziału prądu pomiędzy nimi, w ich obwodach emiterowych umieszczono rezystory 0,51Q. Gdy napięcie na jednym z nich wzrośnie powyżej 0,65V (przy około 1,3A), odpowiadający mu jeden z tranzystorów T5, T6 i T7 zacznie przewodzić i przerwie przepływ prądu w tranzystorach Darlingtona. W ten sposób układ jest skutecznie zabezpieczony przed impulsami prądowymi, wywoływanymi zwarciami obciążenia, które mogłyby zniszczyć tranzystory szeregowe. W zasilaczu 1A użyto tylko jednego tranzystora Darlingtona, więc rezystory emi-terowe i układ zabezpieczający stają się zbędne. Do zasilacza 2,5-amperowego jest potrzebny radia-tor 0.6K/W, a w 1-amperowym zastosowano radiator 2.4K/W. Przy maksymalnym obciążeniu - czyli przy zwartym wyjściu i maksymalnym możliwym prądzie - zostanie osiągnięta temperatura 80C. Obie wersje zasilacza można więc bez ograniczeń eksploatować przy pełnym obciążeniu (bez aktywnego chłodzenia). Napięcie i prąd ustalane przez mikroKontroler Elementem wspólnym części analogowej i cyfrowej zasilacza jest mikrokontroler IĆ3. Do do- WYKAZ ELEMENTÓW Wersja 2r5A (wersja 1A w nawiasach) Rezystory (' warstwowe metalizowane 1%) Rl: 220O, 5W R2: 330O, 0,5W R3: 150O R4: lOOkO R5: 330O (l,8kQ) R6: lkQ, 0,5W R7, R18, R23: lkQ* R8, R17: 39kQ* R9, RIO, R13, R14, R40, R41, R43: 10kO Rl 1, R12: 47kQ R15, R16: 10kQ* R19: 8,2kQ R20, R39: lkn R21: lkn" (On) R22: 18kQ* (39kQ*) R24-R34: ln", 0,6W R35-R38: 100kQ* R42: 47kQ R44: 3,3kn R45...R47: 0,510, 0,5W (nie potrzebne) Pl: 100 wieloobrotowy, nastawczy P2: 500O nastawczy płaski P3: 2,5kQ nastawczy płaski Kondensatory Cl: 10000|iF/50V (4700jiF/35V) leżący C2: 470jiF/50V, stojący C3, C13...C17, C20: 10jiF/16V C4, C7, Cli, C18: lOOnF, ceramiczny, rozstaw 5mm C5: 10nF, ceramiczny, rozstaw 5mm C6: lnF, ceramiczny, rozstaw 2,5mm C8, C9: IOjiF, tantalowy, kroplowy CIO: 4,7nF, FKS-2 C12: 4,7^F/63V, MKS-4 C19: 10|iF/63V Półprzewodniki Bl: B80C5000 (B80C1500) Dl: P600D (1N4007) D2: dioda Zenera 12V/1,3W D3...D6: 1N4148 kładnego pomiaru i dostarczania dokładnego napięcia jest oczywiście potrzebne dokładne i stabilne napięcie wzorcowe. Otrzymuje się je za pomocą diody Zenera D2 (stabilizacja wstępna 12V) i następnie stabilizatora 5V, IC7. Napięciem 12V zasila się także IC2. Za pomocą R3 i Pl napięcie stabilizatora IC7 można nastawić IC1: LT1491 IC2: TLC272 IC3: PIC16F84A-04P, zaprogramowany, kod 000166-42 IC4: 4066 IC5, IC6: 74HC164 IC7: 78LO5 IC8: MAX232 Tl: BC557B T2...T4: TIP142 (tylko jeden) T5...T7: BC547B (nie potrzebne) Różne Fl: bezpiecznik 2A, zwłoczny F2: bezpiecznik 4A, zwłoczny (2A, zwłoczny) S1...S8: przycisk, C&K 3FTL6 + IS09 22.5, albo zwykły 10xl0x20mm, rozstęp 5mm TRI: toroidalny transformator sieciowy 24V. 80VA, np. UI39/1721 V, 2571 mA Xl: rezonator ceramiczny 4MHz, 3 wyprowadzenia moduł LCD 16x1, z podświetlaniem oprawka bezpiecznika do druku oprawka bezpiecznika do chassis, albo aparatowe gniazdko sieciowe z bezpiecznikiem dwa zaciski prądowe, czerwony i czarny Fll: filtr sieciowy 2A Kl: 9-stykowy pinheader SIL ze złączem D-9 (żeńskim) do chassis K2: 5-stykowy pinheader K4, K5: blok dwuśrubowy do druku, rozstęp 5mm 14-stykowa podstawka układu scalonego 18-stykowa podstawka układu scalonego 12 szpilek lutowniczych radiator 180x75x48mm, 0,6K/W (100x50x31mm, 2,4K/W) obudowa (szer x głęb x wys) 200x180xl00mm, np. Telet typu LC950 wyłącznik sieciowy przewód sieciowy płytka drukowana kod 000166-1 na 5,12 V (w rzeczywistości 5,14...5,16V). Rezystor R3 jest głównym obciążeniem IC7 i przez Pl płynie około 33mA. Prąd ten został tak dobrany, aby dziesięciokrotnie przewyższał prąd odprowadzany do masy przez sam stabilizator IC7. Dzięki temu zależność jego napięcia od obciążenia jest bardzo mała. 44 Elektronika Praktyczna 3/2002 W rezultacie tych zabiegów napięcie wzorcowe jest bardzo stabilne i zmienia się tylko pod wpływem normalnego starzenia się elementów. Zaleca się więc, jak w przypadku wszystkich elektronicznych przyrządów pomiarowych, rekalibrować zasilacz po kilku latach. Napięcie wzorcowe jest także wykorzystywane w przetworniku ampli tudowo-cyfrowym delta-sigma, utworzonym z IC2. Korzystając z takiego sposobu konwersji A/C, z niewielu podzespołów można zbudować przetwornik o wysokiej precyzji, za pomocą którego można dokonywać bardzo dokładnych i powtarzalnych pomiarów, niezależnie od tolerancji elementów. Jednak w celu uproszczenia kalibracji napięcia za pomocą potencjometru P2, użyto rezystorów 1%. W procesie konwersji oczywiście bierze także udział mikroprocesor. Konwersja przebiega w następujących etapach: w stanie początkowym końcówka A2 mikrosterownika (ustawiona jako wejście) jest w stanie wysokiej impedancji, a końcówka A3 (wyjście) na poziomie niskim. Mierzone napięcie jest doprowadzone do wejścia nieodwracające-go IC2B, a ponieważ działa on jako bufor, pojawia się również na jego wyjściu. Załóżmy, że napięcie to wynosi dokładnie 1,2 8V. Zatem wyjście integratora IC2A jest na potencjale dodatniego bieguna zasilania wzmacniacza. Wejście A2 interpretuje to jako stan wysoki. Gdy ma być dokonany pomiar, mikrosterownik zmienia poziom na wyjściu A3 z niskiego na wysoki (czyli 5,12V) i czeka aż napięcie A2 zmieni się na niskie. Mikrosterownik za pomocą przełączania napięcia na wyjściu A3 utrzymuje wyjście integratora w połowie jego zakresu. Zmieniający się sygnał wyjściowy integratora będzie interpretowany przez mikrosterownik jako wysoki lub niski. Teraz jest mierzony współczynnik wypełnienia sygnału integratora. Można sprawdzić, że wyjście A3 musi utrzymywać się na poziomie wysokim trzykrotnie dłużej niż na niskim, jest tak wtedy, gdy średnie napięcie na wejściu odwracającym integratora jest takie samo, jak napięcie na jego wejściu nie odwracającym, czyli 2,56V. Potrzebne jest zatem dodatnie napięcie polaryzacji tego wejścia za pomocą P2, bowiem ten rodzaj przetwornika A/C nie może działać przy napięciach ujemnych -algorytm mikrosterownika tego nie dopuszcza. Jako IC2 wybrano TLC272 z wejściami MOS, ponieważ przetwornik A/C jest dokładny tylko wtedy, gdy prądy wejściowe są znacznie mniejsze niż w bipolarnych układach scalonych. Za tę zaletę trzeba było jednak zapłacić stosunkowo wysokim napięciem polaryzacji. W tym jednak przypadku, gdy regulacja i tak jest konieczna, nie jest to niekorzystne. Układ IC4 jest przełącznikiem elektronicznym, doprowadzającym do bufora IC2B sygnał pomiaru napięcia lub prądu. Interfejsy Mikrosterownik jest wyposażony w szereg interfejsów. Interfejs klawiatury został zrealizowany za pomocą IC5, a interfejsem wyświetlacza ciekłokrystalicznego jest układ IC6. Są to 8-bitowe rejestry przesuwające typu 74HC164 z szeregowym wejściem i równoległym wyjściem. Mikrosterownik ładuje dane cyfrowe do rejestrów za pomocą RB5 (dane) i RB6 (taktowanie). W przypadku IC6 dane te są poleceniami sterującym i kodami znaków, przesyłanymi do modułu wyświetlacza w trybie 8-bitowym z użyciem sygnału strobującego z wyjścia RB7. W przypadku IC5 dane tworzą układy bitów pozwalające mikroprocesorowi identyfikować (za pośrednictwem RB4) naciśnięty klawisz. Potencjometr P3 służy do regulacji kontrastu wyświetlacza. Suwak na potencjale masy odpowiada kątowi patrzenia 10 do 20 powyżej pionu, który jest zalecany, gdy zasilacz jest używany na stole. Wyprowadzenia mikrosterownika RBO, RB2, i RB3 wykorzystano do komunikacji szeregowej. Dzięki dobrze znanemu układowi MAX232 (IC8) poziom sygnałów mieści się w granicach ą10V od strony RS232, a w granicach poziomów TTL od strony mikrosterownika. Oprócz koniecznych wyprowadzeń dla sygnałów nadawanych i odbieranych (RXD i TXD) jest także wyprowadzony sygnał CTS (Clear To Send). Interfej s RS232 umożliwia zarówno zdalne wyświetlanie, jak i zdalne sterowanie. Opis oprogramowania i działania zasilacza zostanie przedstawiony w następnej części artykułu. R. Pagel, EE Elektronika Praktyczna 3/2002 45 PROJEKTY Zabawka - programowany pojazd, część 2 AVT-5051 Kończymy opis budowy "Raahowozu". W tej części ańykuiu omawiamy sposób montażu elektrycznego i mechanicznego, a także uruchomienia całości. Montaż i uruchomienie Na rys. 3 pokazano rozmieszczenie elementów na trzech płytkach drukowanych wykonanych na laminacie jednostronnym. Zaprojektowana została jeszcze czwarta płytka, na której nie montujemy żadnych elementów elektronicznych, ale może ona być zastosowana jako w miarę efektowna płyta czołowa klawiatury (jej widok zamieściliśmy na wkładce). Nie sądzę, aby ktokolwiek z Was miał jakiekolwiek trudności ze zmontowaniem tych trzech malutkich płytek i połączenia ich ze sobą za pomocą goldpinów i złącz szufladkowych (z możliwością rozłączania płytek) lub po prostu za pomocą odcinków srebrzanki. Szczegóły montażu "kanapki" złożonej z tych trzech płytek oraz czwartej - płyty czołowej z naniesionymi na nią napisami - widoczne są na zdjęciu. Skomentowania wymaga jedynie zastosowanie stabilizatora napięcia 7805, którego wykorzystywanie jest opcjonalne i zależne wyłącznie od napięcia zasilania układu wykonawczego. Jeżeli zastosujemy układy napędowe wykonane z przero- bionych serwomechanizmów, to napięcie zasilania nie może przekroczyć 6VDC (z czterech baterii AA3) i stabilizator nie musi być stosowany (procesor AT90S2 313 może pracować przy tym napięciu!). Jeżeli jednak do zasilania silników będzie potrzebne wyższe napięcie, np. 12V, to należy wlutować w płytkę stabilizator IC2. Dyskusyjne jest także zastosowanie sygnalizatora akustycznego. W najprostszym przypadku może to być zwykła blaszka piezo zamocowana w jakiejś okrągłej obudowie. Jednak w wielu przypadkach uzyskiwane natężenie dźwięku może okazać się zbyt małe i zamiast elementu piezoceramicz-nego można wtedy zastosować mały głośniczek o impedancji 8Li. Po zmontowaniu płytek musimy powziąć decyzję o sposobie wykonani a ukł adu nap ę do w ego pojazdu. Możliwości są dwie: albo spróbujemy wykorzystać do jego budowy silniki z przekładniami adaptowane z popsutych zabawek, albo wykorzystamy idealny ele- Elektronika Praktyczna 3/2002 47 Zabawka - programowany pojazd ' iooooooooooi m1- O O d? o o o oa o oN o o3 o ol o cPg o o o Ob O o" o oa o s o o O O oa o Oo O oa o - m O O o o oB o om o 01 o o Rys. 3. Rozmieszczenie elementów na płytce drukowanej. ment napędowy jakim jest zmodyfikowany serwomechanizm modelarski. Jak wiecie, większość serw mechanizmów modelarskich może obracać się o kąt równy 60 lub 90, a stosując wydłużanie i skracanie impulsów sterujących, poza normę przewidzianą dla aparatur RC, możemy uzyskać zwiększenie tego kąta maksymalnie do 180. Na wale napędowym serwa znajduje się specjalny występ uniemożliwiający jego obrócenie się o większy kąt. Stosowanie takiego zabezpieczenia jest absolutnie niezbędne w sprawnym serwomechanizmie, ponieważ bez niego mogłoby dojść do uszkodzenia styków potencjometru. Jeżeli więc zdecydujemy się na zastosowanie serwomechanizmów jako układów napędowych zabawki, to będziemy musieli dokonać ich przeróbki. Mechanizm rozkładamy na części, zapamiętując wzajemne położenie kółek zębatych i usuwamy występ na wale napędowym ograniczający kąt jego obrotu. Usuwamy niepotrzebny już potencjometr, a przewody zasilające lutujemy bezpośrednio do wyprowadzeń silnika i starannie składamy z powrotem serwo. Tak wykonany układ napędowy będzie charakteryzował się znakomitą sprawnością i bardzo dużą trwałością. Mamy już zatem gotowe podstawowe elementy składowe zabawki i pozostaje tylko połączenie tego wszystkiego ze sobą. Możemy teraz wzorować się na zdjęciu, na którym pokazano ekstrawagancką konstrukcję "Raabowozu". Jak w ogóle coś takiego może się poruszać? Tajemnica polega na położeniu środka ciężkości pojazdu bardzo nisko i użycia w tym celu jako najniżej zawieszonego balastu akumulatorów, bądź baterii zasilających zabawkę. Po włączeniu silników środek ciężkości pojazdu przesuwa się do przodu (lub do tyłu) co powoduje poruszanie się zabawki (rys. 4). Jako koła, z konieczności o jak największej średnicy zasto- sowane zostały dwie uszkodzone płytki CD. Płytki zostały przykręcone do wałów napędowych serw za pomocą trzech małych wkrętów i założono na nie "opony" wykonane z odcinków przeciętej wzdłuż gumowej rurki. Nie cierpię prac mechanicznych, piłowania, wiercenia, szlifowania i innych tego rodzaju okropności. Chciałbym więc zaoszczędzić ich też Czytelnikom i dlatego przygotowałem jeszcze dwie płytki, które mogą posłużyć jako gotowe podzespoły do wykonania zabawki. Wzory tych płytek pokazano na wkładce. To co napisałem na temat budowy mechanicznej pojazdu nie oznacza bynajmniej, że chcę w ten sposób wymusić na Was wykonanie właśnie takiego pojazdu. Równie dobrze możecie wykonać zabawkę bazując na gotowym modelu pojazdu gąsienicowego lub zastosować jeszcze inne, trudne do przewidzenia rozwiązanie. Także użycie serwomechanizmów jako układów napędowych nie jest obligatoryjne: z gorszym skutkiem, ale za to przy mniejszych nakładach finansowych możemy układy napędowe wykonać samodzielnie albo adaptować z popsutych zabawek elektromechanicznych. Omówmy jeszcze, w największym skrócie, posługiwanie się zabawką. Pierwszą czynnością, jaką program wykona po włączeniu zasilania, będzie zawiadomienie nas o jego poprawnym działaniu dziesięcioma błyskami diody LED i sygnałami akustycznymi, co jednocześnie jest wezwaniem do podania wartości opóźnienia, z jakim będzie realizowany rejestrowany program. Klawisz 1 faza programowania Wprowadzanie czasu opóźnienia 2 faza programowania Programowanie ruchu pojazdu 1 7 sekund Zakręt do przodu w lewo 2 8 sekund Jazda do przodu 3 9 sekund Zakręt do przodu w prawo 4 Brak funkcji Rozpoczęcie rejestrowania poleceń 5 4 sekundy Obrót dookoła osi w lewo 6 5 sekund Stop 7 6 sekund Obrót dookoła osi w prawo 8 Brak funkcji Rozpoczęcie odtwarzania programu 9 1 sekunda Zakręt do tyłu w lewo 10 2 sekundy Jazda do tyłu 11 3 sekundy Zakręt do tyłu w prawo 12 Brak funkcji Przerwanie rejestracji lub odtwarzania programu 48 Elektronika Praktyczna 3/2002 Zabawka - programowany pojazd Rys. 4. Zasada działania napędu zabawki. Czas trwania opóźnienia, czyli przerwy w realizacji kolejnych poleceń zmiany kierunku ruchu zależy od budowy mechanicznej zabawki, a ściślej mówiąc od szybkości, z jaką będzie się poruszać. Czas opóźnienia możemy wybrać z przedziału od 1 do 9 sekund, nastawiając go z numerycznej części klawiatury, zgodnie z tab. 1. Naciśnięcie jednego z dziewięciu przycisków, którym przypisane zostały wartości liczbowe, zostanie potwierdzone tyloma błyskami diody i sygnałami akustycznymi, ile wynosiła podana liczba. Następnie program przechodzi do fazy rejestracji poruszeń. W tabeli pokazano rozkład klawiszy służących do rejestracji kolejnych ruchów pojazdu. Każde naciśnięcie odpowiedniego klawisza zostanie potwierdzone przez program krótkim sygnałem akustycznym i błyskiem diody LED. Każde zarejestrowane polecenie zostaje zapisane pod kolejnym adresem w pamięci EEPROM. Po zarejestrowaniu całego programu naciskamy klawisz oznaczony napisem END, co powoduje przejście programu do procedury oczekiwania na kolejne polecenie. Możemy teraz albo powtórzyć programowanie, albo przejść do odtwarzania zarejestrowanych poleceń. Jeżeli wybierzemy drugą możliwość i naciśniemy przycisk REPLAY, to program przystąpi do odczytywania danych zapisanych w pamięci EEPROM i sterowania ruchami pojazdu zgodnie z zawartą w nich informacją. Zbigniew Raabe, AVT Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/marzecO2Jitm oraz na płycie CD-EP03/2002B w katalogu PCB. Elektronika Praktyczna 3/2002 49 PODZESPOŁY II I_____ 'unner Jedną z najpoważniejszych wad współczesnych układów programowainych (PLD) jest stosunkowo duży pobór mocy. Wynika on z ich budowy wewnętrznej, opartej na anaiogowych wzmacniaczach-komparatorach, które zapewniają dużą szybkość pracy układów, aie powodują znaczny wzrost pobieranej energii. Wadą tę udało się wyeiiminować inżynierom z francuskich iaboratoriów firmy Phiłips, którzy w 1996 roku opracowaii układy PLD, których konfigurowaine matryce iogiczne są wykonywane w technoiogii FZP (Fast Zero Power). Klika tygodni temu firma Xih'nx, która przejęła grupę PLD firmy Phiłips, wdrożyła do masowej produkcji układy PLD koiejnej generacji, produkowane w tej nowoczesnej technoiogii - CoołRunner II. Ich architekturę przedstawiamy w artykuie. Układy CoołRunner wzięły swoją nazwę od znikomo małego poboru prądu, przy jednocześnie dużej szybkości pracy. Philips reklamował je prezentując działanie prostego licznika wykonanego na jednym z układów tej serii z dołączonym wyświetlaczem LCD - cały zestaw był zasilany z ogniwa chemicznego, którego elektrody były wbite "w grejpfrut. Doświadczenie powtórzyliśmy w redakcyjnym laboratorium - okazało się, śe rzeczywiście jest to możliwe! Ograniczenie poboru prądu przez układ było możliwe dzięki zastosowaniu opracowanej przez firmę Philips technologii konfigu- rowania matryc logicznych w układach PLD w sposób całkowicie cyfrowy (FZP), w związku z czym stosowanie analogowych wzmacnia-czy-komparatorów pobierających stosunkowo dużo prądu przestało hyć konieczne. O oszczędnościach energetycznych uzyskanych dzięki tej technologii niech świadczy wykres pokazany na rys. 1. Zilustrowano na nim pobór prądu w funkcji częstotliwości taktowania przez układ X2C64, z którego wynika, śe przy częstotliwości zegara taktującego 5 OMHz pobór prądu wynosi zaledwie 3,6mA, przy lOOMHz -7,6mA. W trybie pracy sta-
15
10
s
n O BO 1DD 16Q 200 ZfiD BOD Rys. 1. Elektronika Praktyczna 3/2002 51 PODZESPOŁY Wejścia PLA ABC Wejścia ABC Programowane matryce ORIAND Programowana matiyca AND i na stałe skonfigurowana matryca OR x - oznacza możliwość zrealizowania zwarcia" (połączenia programowane) ^ Y Wyfśda Rys. 2. x - oznacza możliwość zrealizowania .zwarcia" lub .rozwarcia" (połączenia programowana) BSCPath 1/OPInES Clocfcand Control Sipnąls 16 T Functlon MCI MCL MC18 Błock 1 PLA 16FB Fattlnputs AIM 18FB 4-t Functlon T Blockg I PLA MC1 MC2 16 Faat Inputs BSC/ISP E^I/OPin tTo PTA, PTB, PTC of Faednck to AIM Rys. 4. tycsnej pobór prądu nie przekracza BOOfiA, co powoduje, śe układy CoolRunner II stają się naprawdę alternatywne do klasycznych rozwiązań na elementach dyskretnych. Jest tylko jedno ,,ale": ze względu na zastosowanie do produkcji tych układów ultranowoczesnej technologii półprzewodnikowej fO.lBfim!) ich napięcie zasilania wynosi 1,8V. Ich stosowanie w naszej 5-wolto-wej rzeczywistości nieco ułatwia fakt, śe wszystkie wyprowadzenia I/O są przystosowane do współpracy z otoczeniem zasilanym napięciem o maksymalnej wartości 3,6V. Nie rozwiązuje to oczywiście wszystkich problemów, ale musimy się liczyć z tym, śe współczesna elektronika staje się coraz bardziej ,, nisko napięci owa". Architektura rodziny CoolRunner II Układy CoolRunner II ze względu na swoją złośoność należą do grupy CPLD (Complex Fiogiarnrnahle Logic Devices), czyli układów programowalnych o dość duśych zasobach logicznych. Ich architektura jest nieco odmienna od większości układów dostępnych na rynku, poniewaś funkcje logiczne są tworzone w matrycy PLA, a nie PAL jak w większości współcześnie oferowanych układów CPLD. Róśnice pomiędzy tymi matrycami pokazano na rys. 2. Jasno z niego wynika, śe PLA są bardziej elastyczne, a to ze względu na możliwość programowania połączeń zarówno w matrycy wejściowej fna wejściach bramek AND) jak i wyjściowej fna wejściach bramek OR). Producenci układów programowalnych dość szybko zarzucili stosowanie w swoich układach matryc typu PLA ze względu na ich spore rozmiary w strukturze układu i wiążące się z nimi opóźnienia w propagacji sygnałów. W układach CoolRunner wada ta przestała hyć istotna, a to ze względu na zastosowanie technologii FZP. 52 Elektronika Praktyczna 3/2002 PODZESPOŁY ibAlM Rys, 5, Na rys. 3 pokąsano architekturę układów CoolRunner II na przykładzie architektury układu X2C32. Makrokornór-ki logiczne MC są pogrupowane po 16 w bloki funkcjonalne Funciion Błock, a sygnały dostarczane na ich wejścia są wytwarzane w programowalnej matrycy PLA. Połączenia pomiędzy blokami funkcjonalnymi zapewnia matryca AIM (Advanced In-ierconneci Matrix), która dostarcza do każdej PLA 40 sygnałów, a zwrotnie z każdego bloku funkcjonalnego dociera do niej 16 sygnałów. Jakkolwiek, dzięki specyficznej budowie, AIM nie wprowadza istotnego opóźnienia w propagacji sygnałów, twórcy układów CoolRunner II przewidzieli dodatkowe 16 dwukierunkowych, szybkich linii przekazujących sygnały pomiędzy matrycą AIM, a makrokomórkami i komórkami I/O (I/O Blocks). Pudowe makrokomórki układu CoolRunner II pokazano na rys. 4. Charakteryzuje się ona dużą uniwersalnością, którą zwiększa możliwość skonfigurowania prze-rzutnika do trybu pracy Du-alEDGE, w którym przekaźnik reaguje na obydwa zbocza sygnału zegarowego - rzecz niespotykana "w jakichkolwiek innych układach PLD tej klasy. W wymianie informacji pomiędzy otoczeniem układu i makrokomórkami uczestniczą także konfigurowalne komórki I/O, których budowę pokazano na rys. 5. W układy o liczbie komórek powyżej 128 wbudowano komparator analogowy z wewnętrznym źródłem napięcia odniesienia, dzięki czemu interefjs wejściowy jest zgodny ze standardami HSTL-1, SSTL2-1 i SSTL3-1. W przypadku, gdy układ pracuje w otoczeniu o duśym poziomie zakłóceń, przydatny mośe się okazać wejściowy przerzutnik Schmitta fz his-terezą), który mośna włączyć w tor sygnału wejściowego. Jak wcześniej wspomniano, bufory I/O w układach CoolRunner II są przystosowane do współpracy z układami zasilanymi napięciem innym niż rdzeń układu. Konieczne więc było rozdzielenie obwodów zasilania buforów od obwodu zasilania rdzenia układu. Z tego powodu na rys. 5 narysowano linię doprowadzającą zasilanie bufora I/O, oznaczona VCC|0. Aby zapewnić możliwość stosowania tych układów w urzą- Tab. 1. Zestawienie wybranych parametrów układów z rodziny CoolRunner II Parametr XC2C32 XC2CG4 XC2C12B XC2C25G XC2C384 XC2C512 Liczba rna-krokornórek 32 64 128 256 384 512 Tpd [ns] 3,5 4,0 4,5 5,0 6,0 6,0 WsIMHz] 303 270 244 222 204 204 Liczba rejestrów 32 64 128 256 384 512 Liczba banków I/O 1 1 2 2 4 4 Elektronika Praktyczna 3/2002 53 PODZESPOŁY MCI MCa EMiGATE AuBrtkin Rai AIM PLA MCI uc?
MCifl
PLA MCI MCZ
MCI fl Rys. ó. dseniach, w których zastosowano kilka napięć zasilania (dla poszczególnych fragmentów urządzenia), w układach o 128 i 256 rnakroko-rnórkach, komórki I/O podzielono na dwa niezależnie zasilane banki, natomiast w układach o 384 i 512 mak-rokomórkach są as cztery niezależnie zasilane grupy komórek I/O (banki). Dzięki temu jest możliwe zastosowanie układ ów CoolR unner II m.in. w roli interfejsów napięciowych pomiędzy systemami zasilanymi napięciami (przykładowo) 2,5 i 3,3V, czy też 1,5 i 2,5V lub w innej ich kombinacji, oczywiście w zakresie napięć dopuszczalnym. Interesującym, a do tego niespotykanym w innych układach PLD rozwiązaniem zastosowanym w tych Cool-Runnerach są dodatkowe bramki-klucze {DaiaGATE} włączone pomiędzy bufory wejściowe i wejścia matrycy AIM (rys. 6). Są one sterowane jednocześnie za pomocą sygnału cyfrowego podawanego na linię DaiaGATE Asseriion Raił, który mośe być doprowadzany z wybranego wyprowadzenia układu lub mośe hyć takie wytwarzany w którejś z makroko-mórek. Zastosowanie tych kluczy umożliwia odcięcie w określonych przez użytkownika sytuacjach wnętrza układu od zmian sygnałów na wyprowadzeniach (stany To AIM To AIM poprzednie są podtrzymywane w przerzutnikach Laich), dzięki czemu prąd pobierany przez układ jest minimalizowany. Projektant układu ma oczywiście możliwość wybrania, które linie wejściowe mają być w ten sposób separowane, a które nie. Kolejną nowością, na którą warto zwrócić uwagę w układach CoolR unner II jest wbudowanie w nie dzielnika częstotliwości zegarowej o współczynniku podziału programowanym na jedną z wartości: 1:2/4/6/8/ 10/12/14/16. Podziałowi może być poddany sygnał podany na wejście zegarowe GCK2 (rys. 7), który następnie jest rozprowadzany wewnątrz układu globalnymi liniami zegarowymi. Ponieważ zmniejszenie wewnętrznej częstotliwości taktowania ma Parametr CoolRun-nerll CoolRun-nerXPLA3 XC9500 XL/XV Napięcie zasilania rdzenia [V] 1,8 3,3 3,3/2,5 Podział 1/0 na banki t - -/+ Liczba globalnych sygnałów zegarowych 3 4 3 Zaawansowane sposoby "obróbki" sygnału zegarowego CoolCLOCK, dzielnik częstotliwości, DoubleEDGE Standardy 1/0 LVTTL, LVCMOS, HSTL.SSTL LVTTL, LVCMOS LVTTL, LVCMOS Liczba rnakrokornórek 32 512 32 512 36 288 wyraźnie korzystny wpływ na wartość prądu pobieranego przez układ, ale jednocześnie obniża jego szybkość pracy, twórcy CoolRunnerów II przewidzieli następującą możliwość obniżenia poboru mocy przy utrzymaniu szybkości pracy układu: częstotliwość sygnału zegarowego jest dzielona w dzielniku wejściowym, a przerzutniki w makrokomórkach pracują w trybie DualEDGE. Jeżeli w takim przypadku częstotliwość sygnału zegarowego jest dzielona przez 2, to układ z punktu widzenia użytkownika pracuje tak szybko, jakby nie była ona dzielona, a pobór mocy spada. Taką konfigurację producent nazwał CoolCLOCK. Równie przydatnym, lecz już klasycznym, wyposażeniem układów, znacznie zwiększającym współczynnik wykorzystania zasobów logicznych, są 3 linie globalnych sygnałów zegarowych, uniwersalna linia SET/RE-SET oraz cztery (maksymal- nie), także globalne, sygnały uaktywniające trójstanowe bufory wyjściowe. CoolRunner II - kwintesencja nowoczesności Jak widać z powyższego opisu, inżynierowie firmy Xilinx włożyli sporo pracy w opracowanie rodziny układów CoolR unner II. Ponieważ ich pamięć konfigu-rująca jest typu Flash (Easi-Elash), przewidziano oczywiście możliwość ich progra- Dodatkowe informacje Dodatkowe informacje o układach CoolRunner II można znaleźć w Inter-necie pod adresem: hTTp://www.xilinxcorn/publications/ products/cool2/ds_pdl/ds092.pdl, atakże naptycie CD-EP3/2002B. Polskim dystrybutorem uktadów firmy Xilinx jest Memec Insight, Tel. (32)238-03-60, hTTp://www.atesT.-corn.pl/insight.htrn. Uwaga! Obecnie jedynym pakietem narzędziowym umożliwiającym realizację projektów z uktadami CoolRunner II jest bezpłatny WebPackISE v. 4.1WP30, dostępny po uprzednim zarejestrowaniu się na stronie www.xsisnx.corn w dziale Support->Software> WebPack. Ponieważ objętość pliku instalacyjnego z kompletnym oprogramowaniem (w Tym symulator VHDL/Ve-rilog ModelSIM) wynosi aż 151MB zamieściliśmy je na naszej ptycie CD-EP3/2002B. Archiwum zostało zaszylrowane - hasto jest udostępniane bezpłatnie po wystaniu e-maila na adres cd@btc.pii następującymi danymi: imię i nazwisko, nazwa i adres lirmy, telefon kontaktowy i adres e-mail. Informacje Te zostaną niezwłocznie przekazane lirmie Memec Insight Sp. z o.o. i nie będą udostępniane nikomu innemu. 54 Elektronika Praktyczna 3/2002 PODZESPOŁY GCK2I +2 +4 Clodc +fl In +10 +12 +14 +1B BynchRit Rys. 7. mowania w systemie. I tu prawdziwa nowość: zastosowano w nich bowiem interfejs umożliwiający zarówno testowanie układów w systemie (BST - Boundary Scan Tesiing) jak i ich programowanie (ISP - In System Pro-gramming). W trybie BST jest on całkowicie zgodny zJTAG-iem (IEEE1149), natomiast w trybie programowania z najnowszym interfejsem ISP, opisanym w normie IEEE1532. Dzięki te- mu możliwe jest uzyskanie znacznie doskonalszego ni2 w klasycznych układach ISP zabezpieczenia pamięci konfi-gurującej układu przed nieuprawnionym odczytem. Skrócono także czas programowania układu, na co pozwalają mechanizmy wymagane przez IEEE1532, oraz zwiększona maksymalna dopuszczalna częstotliwość taktowania interfejsu JTAG do 66M!Hz. Programowanie pamięci konfigurującej jest oczy- wiście możliwe przy nominalnym napięciu zasilania wynoszącym, jak już wcześniej wspomniano, zaledwie 1,8V. W tab. 1 zestawiono podstawowe parametry układów tworzących rodzinę Cool-Runner II (według danych producenta, w pierwszych dniach lutego dostępne były tylko układy X2C64), a w tab. 2 zawarto porównanie najważniejszych właściwości układów z rodzin Co-olR unner II, CoolRunner XPLA3 oraz XC9500XLfXV. PiotrZbysiński, AVT piotr.zbysinski@ep.com.pl 56 Elektronika Praktyczna 3/2002 SPRZĘT GSJt firmy ittntnrnln Motorola jest jednym z liderów rynku telefonii komórkowej, szczególnie dbającym o szybką komunikację cyfrową :Ś;: w systemie GPRS. Oprócz standardowych telefonów, Motorola produkuje także niezwykle interesujące uniwersalne moduły GSMiDCS, z których jeden - jak na razie najbardziej uniwersalny - opisujemy w artykule. GPRS dla każdego Moduł gl8 jest kompletnym telefonem komórkowym, który wyglądem go, co prawda, nie przypomina (fot. 1), ale nie o efektowny wygląd chodziło jego konstruktorom. Moduł gl8 jest bowiem przeznaczony do stosowania jako transceiver GSM/DCS/PCS w dowolnych urządzeniach wymagających zdalnego, dwukierunkowego interfejsu bezprzewodowego. Z tego powodu gl8 nie został wyposażony w klawiaturę, wyświetlacz, mikrofon, głośnik i obudowę. Ele- Podstawowe parametry modułu g18: Ą- wymiary DVDIN 40x80x7,5rnrn, DVShm 44,3x88,5x10,4rnrn, DVG(zGPS) 44,5x88,4x17,6rnrn, -t ciężar DVDIN 22g, DVShm 35,5g, DVG(zGPS) 49g, 4-zakres temperatur pracy -30 +60C, Śf zakresy GSM 900MHz, DCS 1800MHz, PCS 1900MHz, Śf napięcie zasilania 3 6V, Śf średni pobór prądu podczas nadawania 300mA, Śf moc wyjściowa nadajnika 5,5 33dBm(GSM), 0 30dBm(DCSi PCS) menty te do jego pracy nie są niezbędne, a wydatnie wpływają na koszt modułu. Komunikację modułu z otoczeniem zapewnia 9-styko-wy interfejs RS23 2 (napięciowo niezgodny ze standardem, ponieważ maksymalne napięcie wyjściowe wynosi 2,5V), za pomocą którego można sterować telefonem, a także modemem: CSD (Circuit Switched Data) lub GPRS (General Packet Radio Service). Zastosowany w module interfejs wymaga obsługi sygnałów sterujących CTS/ RTS przez współpracujące urządzenie. Standardowy zakres przepływności danych przez ten interfejs mieści się w przedziale 9,6...19,2kbd (szybkość transmisji jest wykrywana automatycznie), ale można ją zwiększyć komendami AT do 57,6kbd. Na to samo złącze wyprowadzono sygnał interfejsu umożliwiającego dołączenie zewnętrznego (opcjonalnego) czytnika kart SIM oraz zestawu audio (hand-set), który umożliwia wykorzystanie wszystkich funkcji standardowego tele- fonu GSM. Do pakietu usług dostępnych w gl8 należy także możliwość wysyłania i odbierania wiadomości SMS. Jednak podstawową zaletą modułu gl8 (oprócz uniwersalności wynikającej z zastosowania trzypasmowego transceivera, dzięki czemu bez żadnych przeróbek można go stosować praktycznie na całym świecie) jest możliwość szybkiego transferu danych w szybkim trybie GPRS, który uzupełnia standardową dla większości typowych telefonów usługę modemową CSD, dla której maksymalna prędkość transmisji danych wynosi 9,6kbd. Sterowanie modułem gl8 umożliwiają polecenia AT rozszerzone zgodnie z zaleceniami GSM07.07 oraz GSM07.05 (dla transmisji CSD) i GSM07.60 (dla GPRS). Dzięki temu współpraca modułu Elektronika Praktyczna 3/2002 57 SPRZĘT z otoczeniem jest praktycznie identyczna, jak klasycznego modemu telefonicznego. Moduły g!8 występują w trzech wariantach różniących się obudową i możliwościami: - DV DIN, który pokazano na fot. 1, jest właściwie pozbawiony obudowy. Wszystkie sygnały (za wyjątkiem antenowego) są wyprowadzone na 28- lub 36-stykowe złącze ZEF (Zero Jnsertion Force). - DV DIN, będący obudowanym modułem gl8. Wszystkie sygnały, oprócz antenowego, wyprowadzono na 36-stykowe złącze ZIF. - DVG, w którym zintegrowano moduł gl8 z odbiornikiem GPS. W tej wersji, na 36-stykowe złącze wyprowadzono także standardowe sygnały GPS: TxD, RxD, 1PPS, RTCM, a także zasilanie aktywnej anteny GPS. Podsumowanie Na koniec należy wspomnieć, że oprócz przedstawionego w artykule modułu gl8, Motorola oferuje także nieco mniej uniwersalne moduły GSM: - dlO w obudowie zgodnej ze standardem PCMCIA IE (bez złącza), przystosowany do pracy w paśmie 900MHz, - dl5, który może pracować we wszystkich trzech pasmach GSM (900MHz/l,8 i l,9GHz). GPRS w skrócie Skrót ten pochodzi od angielskiej nazwy General Packet Radio Service i w swobodnym tłumaczeniu oznacza transmisję pakietową w sieci telefonii komórkowej GSM. Transmisja pakietowa umożliwia przesłanie danych wielu użytkowników w postaci pakietów poprzez współdzielone kanały - analogicznie jak w sieciach komputerowych, gdy wiele komputerów jednocześnie wykorzystuje zasoby sieci. Dzięki GPRS żadnemu użytkownikowi nie rezerwuje się kanału na czas trwania połączenia, lecz umożliwia się transmisję dokładnie w chwili wysyłania i odbierania danych. Dostęp do sieci GPRS teoretycznie zapewnia prędkość transmisji w przedziale 9,05...171,2kbd. Rzeczywiste prędkości uzależnione są od typu telefonu (liczba obsługiwanych kanałów) oraz od warunków propa-gacyjnych panujących w danej lokalizacji. Obecne telefony umożliwiają transmisję GPRS wykorzystując 1...3 kanałów, co daje maksymalne prędkości transmisji odpowiednio 13,4...57,6kbd. Jak widać z tego krótkiego przeglądu, w ofercie Motoroli znajduje się wiele uniwersalnych modułów GSM o możliwościach pokrywających praktycznie wszystkie typowe potrzeby użytkowników. Niebagatelną zaletą tych modułów jest łatwość ich konfigurowania i obsługi, dzięki czemu można je stosować także w systemach automatyki, telemetrii, a nawet w systemach alarmowych ze zdalnym powiadamianiem. Andrzej Gawryluk, AVT Dodatkowe informacje Dodatkowe informacje nt. prezentowanych rno-dutów można znaleźć w Internecie pod adresem: http://www. mot orol a. c orn/ie s/tele rnati es/ htmls/daTamodules/products.html. Dodatkowe informacje o systemie GPRS można znaleźć w Internecie pod adresami: http://wiAfw.ericsson.com/technology/GPRS.shtrnl, http://www.mobilewhiTepapers.com/ download_ours.asp, a Także na płycie CD-EP3/2002B. 58 Elektronika Praktyczna 3/2002 Zasilacz laboratoryjny sterowany cyfrowo Ogromne możliwości, dobre parametry regulacji i do tego sterowanie mikroprocesorowe - to krótka charakterystyka zasilacza, którego opis zamieściliśmy na słr. 41. Zamek elektroniczny na karty chipowe Mniej lub bardziej zaawansowane technicznie karty chipowe cieszq się coraz większq popularnościq wśród użytkowników. Przystępna cena pozwala stosować je także w "domowych" aplikacjach - w artykule na słr. 21 przedstawiamy opis programatora-czytnika kart chipo-wych, który może pracować jako elektroniczny sterownik zamka. Miniprojekty W tym miesiqcu trzy miniprojekty -każdy znajdzie coś dla siebie! Str. 87. t Projekty Czytelników Przedstawiamy niezwykle starannie zaprojektowany i wykonany projekt przestrajanego konwertera pasma amatorskiego 80m (3,5,..3,8MHz) na pasmo CB. Słr. 101. Tester aparatów telefonicznych W projekcie prezentowanym na słr. 37 mikrokontroler steruje pracq zaawansowanego testera aparatów telefonicznych. Radio reakcyjne - słuchanie w stylu retro Prosta (elektrycznie) budowa, słaba jakość dźwięku, ale co za klimat... Słr. 27. HiTESTER - cyfrowy multimetr laboratoryjny HiTester to nowoczesny multimetr laboratoryjny. Jego możliwości przedstawiamy w artykule na słr. 61. CoolRunner II - nowa generacja układów CPLD firmy Xilinx Xilinx ciqgle unowocześnia swojq ofertę. O nowej rodzinie układów CPLD tej firmy piszemy na słr. 51. T Cyfrowa kamera pogłosowa HiQ Sięgnęliśmy po kolejny nieznany dotychczas Ś mj w Polsce układ scalony, dzięki któremu wykonanie dobrej jakości kamery pogłosowej jest tak proste jak widać to na zdjęciu, Słr. 33, Elektronika Praktyczna 3/2002 LOGO! na nowo Najnowsze opracowania firmy Siemens z rodziny LOGO! przedstawiamy na słr. 139. GPRS dla każdego ^ W artykule na słr. 57 opisujemy moduł telefoniczny GSM z GPRS firmy Motorola. Wens 700S - pomiarowy kombajn Mała obudowa, ale jakie możliwości! Szczegóły na słr. 69. Analogowe FPGA W artykule na słr. 75 znajdziecie opis układu - kwintesencji współczesnej elektroniki: cyfrowo konfigurowany tor analogowy firmy Anadigm. Nowość na polskim rynku! IKA Nr3 (111) marzec 2002 Projekty Internatowy interfejs dla mikrokontrolera, cześć Zamek elektroniczny na karty chipowe................. Radio reakcyjne-słuchanie w stylu retro.............. Cyfrowa kamera pogłosowa HiG........................... Tester aparatów telefonicznych ............................. Zasilacz laboratoryjny sterowany cyfrowo, cześć Zabawka - programowany pojazd, cześć 2 ......... Miniprojekty Sygnalizator zmiany temperatury................... Inteligentny sterownik wentylatora................ Detektor sygnałów w,cz.................................. Automatyka LOGO! na nowo............................................... Radiomodemy firmy Satel, cześć 2................ Sprzęt] gl8- GPRS dla każdego- moduły GSM firmy Motorola HiTESTER - cyfrowy multimetr laboratoryjny...................... Pomiarowy kombajn - wielofunkcyjny przyrzqd laboratoryjny Wens 700S.................................................... Jpdzespoły CoolRunner II - nowa generacja układów CPLD firmy Xilinx................................................................................ Analogowe FPGA - analogowe układy programowalne firmy Anadigm........................................................................ Nowe Podzespoły..................................................................... Wzmacniacze audio klasy D................................................. 1 Programy] PIC-owe C - tani kompilator firmy CCS............ Projekty Czytelnikóv Przestrajany konwerter pasma amatorskiego 80m (3,5...3,8MHz) na pasmo CB...................... Zalecenia projektowe dla tanich systemów, bezprzewodowej transmisji danych cyfrowych, cześć 2.. 14 21 27 33 37 41 47 Ś .87 .87 139 143 Ś ,57 .61 .69 ,51 .75 .85 .63 101 ..97 Info Świat.......................................................................123 InfoKraj..........................................................................125 Biblioteka 11 ^^^^^^^^^^Ł ' J Kramik+Rynek..............................................................103 Listy.................................................................................109 Ekspresowy Informator Elektroniczny.....................11 Wykaz reklamodawcow............................................122 Elektronika Praktyczna 3/2002 7 SPRZĘT HiTESTER Popularność przenośnych mierników uniwersalnych oraz ich bogactwo asortymentowe powoduje, że w zapomnienie odeszły stacjonarne mierniki laboratoryjne. Stan ten pogłębiają coraz większe możliwości funkcjonalne mierników przenośnych. Jednak mierniki laboratoryjne nadal będą niezastąpione na stanowiskach produkcyjnych oraz w serwisie. Mierniki laboratoryjne charakteryzują się jedną niezaprzeczalną zaletą: na ogół mają swoje stałe miejsce na stole i rzadko są stamtąd zabierane. Nie trzeba ich więc nerwowo szukać wtedy, gdy są pilnie potrzebne. Zasilanie sieciowe uwalnia użytkownika od pamiętania o wymienianiu baterii, a bardzo czytelny wyświetlacz powoduje, ie czasami wystarczy dosłownie ,,rzut oka" aby - niemal podświadomie - odczytać wynik pomiaru. Jakie to jest ważne, gdy obie ręce są zajęte, a do- Tab. 1. Parametry techniczne multimetru HiTESTER 3238. Mierzone wielkości: napięcia i prądy DC i AC (wartość True RMS), pomiar prądu cęgami, rezystancja - pomiar zwykły i niskonapięciowy, Tester połączeń elektrycznych, Tester diod, miernik częstotliwości Funkcje pomiarowe: komparator, ustalanie zera, automatyczny dobór zakresu, uśrednianie wyniku, różne metody wyzwalania, blokowanie klawiatury, sygnalizacja dźwiękowa, zachowywanie 30 ustawień panelowych Zasilanie: 100/120/220/240YAC, 50/60Hz, 15VA Temperatura i wilgotność pracy: 0 40C,<80%, dokładność gwarantowana dla23ą5C,<80% Interfejsy: RS232C, GPIB, External l/O, drukarka Wymiary i waga: 215x80x256rnrn, 2,6kg tarcie do punktu pomiarowego wymaga głębokiego skłonu, wiedzą tylko ci, co przez to kiedyś przeszli. Gdyby jeszcze zajmowały trochę mniej miejsca... Wtedy zapewne stałyby się miernikami przenośnymi i utraciłyby swoje zalety. HiTESTER fmodel 3238) japońskiej firmy HIOKI można bez wątpienia zakwalifikować do multimetrów laboratoryjnych . Ma ,, poważne" wymiary: 2l5x80x256mm, waży 2,6 kg i jest zasilany z sieci. Jego wybrane parametry elektryczne zestawiono w tab. 1. Testom redakcyjnym został poddany model 3 228, będący rozbudowaną wersją modelu 3237 (posiada więcej funkcji pomiarowych), Jak przystało na współczesny przyrząd, HiTESTER wyposażono w interfejsy RS232C oraz GPIB, pozwalające wykorzystywać go na stanowiskach zautomatyzowanych pomiarów. Dla osób przygotowujących na nich oprogramowanie, dużym ułatwieniem będzie na pewno możliwość zmiany złożonej konfiguracji przyrządu za pomocą jednego tylko polecenia. Mośna bowiem zachować w jego pamięci nieulotnej do 30 ustawień miernika, uwzględniających wszystkie możliwe parametry. Zmiany takiej mośna dokonać również ręcznie z klawiatury. Nie sadzę jednak, by miało to większe zastosowanie praktyczne, gtłyż poszczególne konfiguracje są rozpoznawane tylko po oznaczeniach liczbowych, a nie za pomocą mnemoniko w, łatwiejszych do zapamiętania przez operatora. HIOKI Wszystkich przełączeń dokonuje się za pomocą klawiatury wyposażonej w gumowe klawisze. Podczas prób wydawało mi się, śe działa ona zbyt twardo. Odnosiło się wrażenie, śe po naciśnięciu klawisza cała obudowa ,,odjeżdża", a żadnego efektu nie widać. Udogodnieniem może być ustawienie potwierdzenia naciśnięcia klawisza krótkim dźwiękiem buzzera. Na pewno należy zadbać o to, aby miernik stał na chropowatej powierzchni. Działanie klawiatury w zakresie ustawiania funkcji przyrządu i jego zakresów pomiarowych może być zablokowane. Blokada nie jest zdejmowana nawet po wyłączeniu i ponownym włączeniu zasilania. Musi być w tym celu naciśnięta odpowiednia sekwencja klawiszy. Klawiatura jest podzielona na dwa bloki (rys. 1). W jednym zmienia się rodzaj wykonywanego pomiaru, w drugim dokonuje pozostałych ustawień. Bloki są rozdzielone zespołem wskaźników informujących o niektórych nastawach związanych z trybami pracy przyrządu. Nad klawiaturą umieszczone jest 6-cyfrowe pole odczytowe z 15 mm wyświetlaczami LED. 7-segmentowe wyświetlacze nie zapewniają dużej czytelności znaków podczas wyświetlania informacji alfanumerycznych (te jednak pojawiają się jedynie podczas ustawiania konfiguracji, a więc nie za często). Elektronika Praktyczna 3/2002 61 SPRZĘT A teras najważniejsze: co i jak. moś-na tym przyrządem mierzyć? Jak. w każdym szanującym się multimetrze, tak i w HiTESTER-ze mamy możliwość pomiaru: napięcia i prądu przemiennego, rezystancji i częstotliwości. Dostępny jest tester przejść elektrycznych, sygnalizujący dźwiękiem połączenia o rezystancji mniejszej niż 50O., a także tester diod (złącz półprzewodnikowych). Na uwagę zasługuje specjalny, niskoprądowy tryb pomiaru rezystancji, zwiększający szansę ,,przeżycia" badań przez wrażliwy element. Gdy miernik jest ustawiony w tryb pomiaru częstotliwości, dopuszczalna wartość napięcia podana na zaciski wynosi 600VDC lub 700VEM&AC. Istnieje możliwość pomiaru natężenia prądu specjalnymi cęgami pomiarowymi, bez konieczności rozłączania połączeń badanego obwodu. HiTESTER jest dostosowany do 3 typów cęgów produkowanych przez firmę HIOKI, Odpowiedni typ powinien być wybrany przed pomiarem z menu konfiguracyjnego. Akcesoria te nie są jednak na wyposażeniu standardowym. Przyrządem można wykonywać pomiary z trzema, wybieranymi przez użytkownika, okresami próbkowania (FAST, MEDIUM, SLOW). Istnieje też możliwość ustawienia ręcznego wyzwalania. W tym trybie pomiar następuje tylko po naciśnięciu przeznaczonego do tego celu klawisza lub po pojawieniu się impulsu wyzwalającego na specjalnym wyprowadzeniu gniazda EXT I/O. Dodatkowo, jeden z parametrów pozwala na ustalenie opóźnienia między sygnałem wyzwalającym, a momentem dokonania pomiaru. Zakres pomiarowy jest wybierany ręcznie lub automatycznie. W praktyce może się zdarzać, że wskazania przyrządu będą ulegać wahaniom wynikającym np. z niestabilności źródeł referencyjnych lub być następstwem zmiany kabli połączeniowych. W takiej sytuacji użytkownik może z klawiatury ,,wywołać" procedurę regulacji zera. Wskazane jest wykonanie tej operacji zawsze na początku serii pomiarów. Przy okazji należy w tym miejscu wspomnieć, że w mierniku HiTESTER można wprowa- Tab. 2. Zakresy pomiarowe multimetru HiTESTER 3238. Mierzona wielkość Zakresy Napięcie DC 199,99mV, 1999,99mV, 19,9999V, 199,999V, 1000,00V Napięcie AC 1999,99mV, 19,9999V, 199,999V, 750,00V Prąd DC 199,99mA,1999,99mA Prąd AC 199,99mA,1999,99mA Prąd (pomiar cęgami) w zależności od Typu cęgów pomiarowych od 10Ado 1000A Częstotliwość 10Hz .30kHz(2000mV 700V) Rezystancja 199,999n, 1999,99n, 19,9999kn, 199,999kn, 19999,99kn, 19,9999Mn,100Mn Rezystancja (pomiar niskoprądowy) 1999,99n, 19,9999kn, 199,999kn, 19999,99kn Test połączeń elektrycznych 2000n, 100uA,0,45V, sygnał dźwiękowy dla połączeń o rezystancji mniejszej od50n Test diod 2000mV, 1mA dzić własną wartość poziomu serowego, pełniącego rolę poziomu odniesienia, co umożliwia wykonywanie pomiarów względnych. Szkoda tylko, że wyniki nie mogą być wtedy wyświetlane w skali logarytmicznej fw dB). W trybie ,,FAST", miernik dokonuje fco 30 minut) automatycznie autokalib-racji wzmocnienia i offsetu, co trwa ok. 65ms. Jest więc niezauważalne przez użytkownika. Wyświetlany jest wynik uśrednienia kilku pomiarów. Liczbę tę można ustalać w granicach od 2 do 100. Oprócz wymienionych wyżej funkcji pomiarowych, za pomocą HiTESTER-a można również kontrolować, czy badana wielkość nie przekracza wcześniej ustalonych przez użytkownika wartości progowych. Jest to doskonałe udogodnienie np. podczas selekcji elementów ze względu na wartość jakiegoś parametru lub sprawdzania parametrów strojenia urządzeń na taśmie produkcyjnej. Komparator - na przekroczenie zakresu - zawsze reaguje zapaleniem odpowiedniej lampki oraz wystawieniem sygnału Hi, Lo lub In w gnieździe EXT I/O (opcjonalnie sygnałem dźwiękowym). Błąd może być sygnalizowany, gdy wartość badanego parametru wykracza poza ustawione progi, jak i wówczas, gdy wartość parametru mieści się w tym zakresie. Możliwość sterowania przyrządem poprzez łącza RS232C lub GHB Ś to HIOKI BflfBL Hfl Sflflflflflfl&S STATUS łADJUTKJGAUTO COMPtEY NEW FAST KD8LOW JWE LOCK RMTHIFT Rys. naprawdę olbrzymia zaleta współczesnej aparatury pomiarowej, a więc i HiTESTER-a. Za ich pomocą, można wybrać każdy tryb pracy przyrządu, ustawić dowolny parametr lub zakres pomiarowy. Bogata lista rozkazów jest bardzo dobrze opisana w instrukcji. Opisy są ilustrowane licznymi przykładami. Zamieszczono także dwa króciutkie programy pokazujące jak można samodzielnie stworzyć zautomatyzowane stanowisko pomiarowe. Nieco dziwny wydaje się być tylko zastosowany język, jakim jest N88BASIC. Ale BASIC, jak to BASIC. Już sama nazwa wskazuje, że nie powinien mieć z nim trudności nawet początkujący elektronik. HiTESTER łączy się z komputerem poprzez gniazda łącz RS232C lub GPIB znajdujące się z tyłu obudowy. Tam też jest złącze EXT I/O, przez które można sterować przyrządem za pomocą sygnałów elektrycznych, a nie za pomocą transmitowanych do niego poleceń, jak w przypadku RS232C i GPIB. Nie daje to oczywiście pełnego komfortu obsługi. Funkcje pomiarowe są wybierane w tym przypadku na zasadzie wywołania jednego z trzydziestu zaprogramowanych ustawień panelowych, o których była mowa wcześniej. Poprzez złącze EXT I/O można dołączyć specjalną drukarkę, dokumentującą wyniki pomiarów w trakcie ich przeprowadzania. Myślę, że laboratoryjny miernik uniwersalny HiTESTER raczej nie zainteresuje elektroników amatorów. Ci będą wyhierać przyrząd dla siebie spośród dużo mniejszych multimet-rów przenośnych. Na pewno jednak odda on nieocenione usługi w laboratoriach szkolnych i uczelnianych, warsztatach, serwisach i zakładach produkcyjnych. Jarosław Doliński, AVT jdolin@optimus.waw.pl Dodatkowe informacje Przyrząd do testów w redakcji udostępnitaf irma Labimed, tel./fax: (22)642-16-23. 62 Elektronika Praktyczna 3/2002 !!!!!! MlCROCHIP Y L PIC18C801 tlltllttllltflllt Tani kompilator firmy CCS Takie były początki, Potem było już snacsnie lepiej, ale sacsąłern poszukiwać narsędsi poswałających snacsnie ssybciej tworsyć programy, Po sbadaniu sasobów Internetu okasało się, ie istnieje kilka firm oferujących kompilatory języka C dla mikrokontrolerów Microchi-pa. Najłatwiej jest snalesć taki kompilator dla najbardsiej popularnego, 14-bi-towego rdsenia frodsiny 16xx), ale oferowane są też kompilatory dla rodsin 12xx, 17xx i 18xx. Jedną s firm, oferujących kompilatory C dla wssystkich rodsin mikrokontrolerów PIC fs wyjątkiem PIC 17xx), jest Gustom Computer Servi-ces, bardsiej snana jako CCS. W ofercie tej firmy snajdują sie. trsy podstawowe ftab. 1) kompilatory, osna-csone jako: - PCE dla rdsenia 12-bitowego PIC 12xx, - PCM dla rdsenia 14-bitowego PICl6xx, - PCH dla rdsenia 16-bitowego PICl8xx. Każdy s tych kompilatorów występuje oddsielnie i trseba je osobno sakupić. Ul* Mt I H Użytkownicy sespolonych środowisk projektowych, takich jak Eascom, esy kompilatory C firm ICeil lub IAR, byliby najprawdopodobniej nieco sawiedseni prsy pierwssym setknięciu s tymi trsema produktami CCS. Kompilatory w wersjach PCE, PCM i PCH są wywoływane prses ręcsnie wpisywane komendy. Nie ma tu żadnego dedykowanego edytora, menedżera projektu, esy - rsecs już prawie standardowa - programowego symulatora wykonywanego programu. Jednak wymienione niedogodności nie dyskwalifikują tych kompilatorów. Producenci oprogramowania narsę-dsiowego dla mikrokontrolerów Micro-chipa są w tej komfortowej sytuacji, że mają do dysposycji bardso dobre i darmowo rosprowadsane środowisko projektowe MPLAE. Zapewnia ono możliwość edycji plików źródłowych, tworse-nia własnych projektów oras sawiera doskonały symulator programowy s możliwością krokowego wykonywania programu, podglądania wartości zmiennych, rejestrów i obssarow pamięci RAM, ROM i EEPROM użytkownika, Współpraca MPLAE s kompilatorami Rys. Kiedy po raz pierwszy zetknąłem się mikrokontrołerami PIC16xx firmy Microchip przeczytałem w dokumentacji firmowej, że mają one tyiko 35 instrukcji. Niezłe - pomyśiałem - łatwo się będzie tego nauczyć. Ałe rzeczywistość okazała się troszkę inna. Po pierwszych próbach praktycznego wykorzystania instrukcji BTFSC, BTFSS, INCFSZ itp. zacząłem z rozrzewnieniem wspominać łistę rozkazów Z-80, czy nawet 8051. MlCROCHIP Rys. 2. Elektronika Praktyczna 3/2002 63 PROGRAMY liwtude Poih Cm\ | M|Jn| UdNttk t.npi' naiir ..... ., " .. 1 1 'I
Rys. 3. CCS musi być poprzedzona jego odpowiednią konfiguracją. Po utworzeniu własnego projektu, z zakładki Opiions->Developmeni Modę trzeba wybrać rodzaj procesora i narzędzie do symulacji (rys* 1). Następnie trzeba zainstalować kompilator, który później mośe być używany jako standardowo dla języka opisu projektu (rys. 2). W nowo utworzonym projekcie trzeba określić rodzaj kompilatora, ścieżki dostępu do plików nagłówkowych i bibliotecznych oraz typy plików źródłowych (rys. 3). Klikając na nazwie pliku z rozszerzeniem hex w polu Project Files, a następnie na podświetlonym przycisku Node Propeńies, uzyskujemy dostęp do ustawień samego kompilatora (rys. 4), Moś-na tu ustawić rodzaj używanego kompilatora i włączyć generowanie pliku Tre-e. W polu Addiiional Command Linę Opiions mośna wpisać dowolne komendy kompilatora, szczegółowo opisane w dokumentacji firmowej. Od tego momentu MPLAE jest skonfigurowany i mośna rozpocząć tworzenie własnego programu. Za jego pomocą mośna takśe symulować działanie tworzonego programu korzystając z wbudowanego programowego symulatora (rys. 5) lub sprzętowego emulatora, np. opisywanego juś w EP zestawu MPLAE-IDE 2000. Firma CCS ma w swojej ofercie rów-nieś własne środowisko IDE-PCW. Działa ono w systemie operacyjnym Windows 95/98 (rys. 6) i umośliwia tworzenie własnych projektów oraz edycję plików źródłowych z mośliwością włączenia kontroli syntaktycznej (wyświetlanie w róśnych kolorach słów kluczowych i komentarzy). Standardowo, pakiet ma wbudowane kompilatory PCE i PCM, a za dodatkową opłatą mośna doinsta-lować kompilator PCH. Kreator projektów ma wbudowaną funkcję automatycznego tworzenia pliku nagłówkowego o nazwie projektu. W pliku źródłowym automatycznie przygotowywane jest wywołanie szeregu funkcji bibliotecznych obsługujących peryferia mikro-kontrolera. Pakiet PCW umośliwia równieś Właściwości kompilatora PIC C firmy CCS: Wbudowane biblioteki obsługi RS-232, I2C, przetwornika A/D, bitowej obsługi I/O, generowania opóźnień, obsługi układów licznikowych, SSP, PSP, USB. Mośliwość integracji z MPLAE-em oraz innymi edytorami i symulatorami urnoś-liwiającymi debbuging kodu źródłowego. Format pliku HEX i pliku debug zapewnia kompatybilność z większością dostępnych programatorów i debuggerów. Funkcja prinif umośliwia formatowanie i wyświetlanie w postaci dziesiętnej lub heksadecymalnej. Dzięki mechanizmowi wywoływania funkcji istnieje mośliwość głębszego za-gnieśdśania, niś wynika to z głębokości stosu sprzętowego. Dostępność źródłowych plików procedur do obsługi typowych LCD, klawiatur w postaci matryc, szeregowych EEPROM-ów serii 24XXX oraz 93XXX, zegarów czasu rzeczywistego DS2223 i NJU6355, szeregowych SRAM-ów, przetworników A/D, cyfrowych potencjometrów i innych. 1/8/32-bitowe zmienne stałoprzecinkowe oraz 32-bitowe zmienne zmiennoprze-cinkowe. Instrukcje asemblerowe mogą być wstawiane inline oraz mogą odnosić się do wszystkich zmiennych. Stałe (równieś łańcuchy i tablice) są pamiętane w pamięci programu. Standardowy typ bitowy [Short Ini) umośliwia generowanie bardzo wydajnego, bitowo zorientowanego kodu. #EIT i #EYTE pozwalają na zorientowanie zmiennych C na komórki pamięci o określonym adresie bezwzględnym. Umośliwia to obrazowanie rejestrów specjalnych poprzez zmienne C. oglądanie danych katalogowych wybranego w projekcie mikrokontrolera i deasemb-lację plików z rozszerzeniem *.hex. Z zakładki Tools mośna uruchomić narzędzie Device Ediior umośliwiające edycję pliku bazy danych mi kro kontrole rów devi-ces.dai. Znajduje się tam teś Serial Poii Monitor (umośliwiający komunikację poprzez port szeregowy RS232 pomiędzy tworzoną aplikacją a komputerem), disa-sembler oraz programy umośliwiające porównywanie plików, wybór mikrokontrolera, szybkie przejście do pakietu MPLAE i zaprogramowanie mikrokontrolera. Ta ostatnia czynność wymaga oczywiście odpowiedniego programatora. Kompilator, w trakcie kompilacji pliku źródłowego (oprócz pliku wynikowego z rozszerzeniem *.hex] generuje teś kilka plików pomocniczych. Z zakładki View mośna otwierać i analizować plik listingu c/asm. Zawiera on listing programu źródłowego wC wraz z odpowiadającymi mu sekwencjami wasemblerze. Plik ten jest szczególnie przydatny w sytuacji, kiedy naleśy przeanalizować fragment jakiegoś programu. Kompilator generuje teś plik Cali Tre-e, w którym pokazane są (w postaci drzewa) wszystkie funkcje wraz z ich wywołaniami. Dodatkowo zawarta jest tam informacja o uśyciu przez funkcje pamięci programu i pamięci lu_i^lllm RAM. Z zakładki View mośna teś oglądać plik wynikowy w postaci hexadecymalnej lub ASCII, plik MAP określający mapę zajętości pamięci RAM w ostatnio kompilowanym programie, plik z rozszerzeniem COD uśywanym przez symulator programowy, plik Valid Fu-ses informujący o stanie rejestru bezpieczników oraz pliki Valid Inierrupis i Status Linę. Dość przydatną mośe być funkcja Data Sheei, równieś uruchamiana z View. Umośli- katalogowych w trakcie pisania programu. Jest to przydatna funkcja, szczególnie w momencie tworzenia aplikacji niewystarczająco poznanego mikrokontrolera. Całość jest dość uśytecznym środowiskiem projektowym, ale ma jedną dość istotną wadę - brak jest tam jakiegokolwiek symulatora programowego. W pewnym sensie lukę tę wypełnia odwołanie się do pakietu MPLAE. MPLAE uruchamia się wtedy z otwartym projektem przygotowanym z poziomu PCW i mośna korzystać wtedy z symulatora. Większość producentów kompilatorów dla mikrokontrolerów deklaruje zgodność swoich produktów z normą ANSI. Norma ta określa przede wszystkim składnię deklaracji i definicji funkcji, cechy arytmetyki, mośliwości preprocesora, definicję standardowej biblioteki itp. Znormalizowanie języka umośliwia w miarę proste przenoszenie oprogramowania. Z mikrokontrolerami sprawa nie jest tak prosta. Oprócz standardowych konstrukcji językowych, kompilatory dla mikrokontrolerów muszą być wyposaśone w rozszerzenia pozwalające przede wszystkim na zaprogramowanie układów peryferyjnych. W przypadku kompilatora CCS rozszerzenia te mogą być realizowa- wia ona przeglądanie danych Rys. 4. 64 Elektronika Praktyczna 3/2002 PROGRAMY _J rtfp rt^łłC HKł IM IM l5 ccmitf łff ii U.1 Rys. 5. Rys. ó. ne poprzez komendy preprocesora i niestandardowe funkcje biblioteczne. Preprocesor, oprócz standardowych komend typu #IE, #ELSE, #LIST itp.. za-wiera komendy pozwalające na sterowanie rozszerzeniami spotykanymi tylko w mikrokontrolerach PIC. Komenda #bit pozwala na definiowanie zmiennej bitowej w dowolnym rejestrze. Rejestrem tym mośe być komórka SFR lub obszaru pamięci GPR. Sterowanie liniami portu mośe się odbywać poprzez ich zdefiniowanie, np. #bit led=6.2, gdzie 6 to adres rejestru SFR PORTE. Wyzerowanie tej linii wygląda bardzo prosto: led = 0;. Bitowe flagi definiuje się tak samo, Obsługa przerwań jest zawsze związana z rozszerzeniem języka C. W przypadku kompilatora CCS funkcje obsługi przerwania są poprzedź one komendą #INT_xx, gdzie xx jest parametrem określającym przyczynę zaistnienia przerwania. Na przykład, komenda #ini_ńcc poprzedzająca procedurę powoduje, śe w przypadku wystąpienia przerwania od licznika To zostanie wywołana ta właśnie procedura. Wielu Czytelników zapewne doceniło wbudowane w kompilator Eascom funkcje obsługi magistrali PC, wyświetlacza LCD czy nawet niektórych układów scalonych. Do tej pory, producenci kompilatorów C niechętnie umieszczali takie funkcje w swoich pakietach projektowych. Przykładem mośe być opisywany na łamach EP bardzo dobry kompilator dla 8051 firmy ICeil, który nie ma śad-nej bibliotecznej funkcji wspomagającej obsługę chociaśby magistrali \2C, za wyjątkiem standardowych funkcji znakowych np. printf. Zaczyna się to powoli zmieniać, czego przykładem jest opisywany tutaj kompilator. Komendy preprocesora #use delay clock, #use PC, #use RS232 pozwalają na wykorzystanie funkcji bibliotecznych obsługujących magistralę \2C i programowy port szeregowy RS232. Szczególnie ten ostatni wydaje się przydatny, poniewaś wiele PIC-ów z rodziny 16xx nie posiada szeregowego portu sprzętowego. Ściśle ze środowiskiem sprzętowym związane są komendy #DEVIGE określające typ mikrokontrolera i #FUSES po- H Tab. 1. Porównanie różnych wersji kompilatorów oferowanych przez CCS. Właściwości PCB PCM PCH PCW PCWH Command Lme Compiler / / / / / Built-in Functions / / / / / Example Programs / / / / / DeviceDnvers / / / / / MPLAB Interlace / / / / / Windows IDE / / CAware Editor / / Wbudowany kreator projektu / / Zaawansowana optymalizacja kodu wynikowego / / Device Selector/Editor / / Cali Tree and Memory Map / / / / / Ctdtuotuh / /
| Special Viewers / / H Narzędzia obsługi portu szeregowego / / *^B 1 " 1 1 1 1 "1 1 1 1 7 -Jr- t---- Ki uosfuga rodzin i^-Diiowycn ^ubiiuga rodzin 14-bitowych Ul Obsługa mikrokontrolerów PIC18 / zwalające programować łączniki (bezpieczniki) konfiguracyjne (typ oscylato-ra, protekcje, odczytu itp.). Komenda #ORG pozwala na umieszczenie kodu programu w określonej przestrzeni pamięci programu, Dołączana standardowo do kompilatora biblioteka zawiera, oprócz powszechnie spotykanych funkcji matematycznych i wejścia wyjścia, wiele dodatkowych funkcji pozwalających szybko i łatwo tworzyć programy obsługujące port szeregowy, magistralę I2C i SPI oraz Parallel Slave Port (PSP). Dość rozbudowane są funkcje pozwalające w prosty sposób "manipulować" bitami - ustawiać jako wejście lub wyjście, odczytywać poszczególne bity, ustawiać rejestry TRIS itp. Dodatkowo, są dostępne funkcje rotacji i przesuwania bitów w słowie. Ze sterowaniem mikrokontro-lerem związane są funkcje sleepf} pozwalające uzyskać rozkaz sieep, re-sei_cpu(}, disable_inieirupis, enable_in-terruptsf) czy exi_ini_edge(}. Dostępne są teś funkcje sterowania timerami i watchdogiem, przetwornikiem A/D i analogowym komparatorem. Możliwe jest takśe łatwe zapisywanie i odczytywanie wewnętrznej pamięci EEPROM dzięki funkcjom read_eeprom i wii-ie_eeprom. Ważniejsze funkcje biblioteczne, związane ze specyficzną obsługą mikrokontrolera imagistrali, pokazano w tab. 2. Korzystając z wbudowanych funkcji, mośna szybko tworzyć własne aplikacje. Trzeba tu jednak pamiętać, śe z przeniesieniem tak napisanych programów na mikrokontrolery innych producentów będą tym większe trudności im więcej korzystamy z wbudowanych, niestandardowych funkcji kompilatora. Oczywiście, zawsze decyzja należy do programisty: czy wykorzysta np. funkcje obsługi magistrali \2C, czy napisze sobie własne, łatwo przenoszone procedury. Przedstawiony tutaj kompilator wydaje się być dobrym narzędziem dla większości profesjonalnych i oczywiście amatorskich (ze względu na atrakcyjną cenę! 1 zastosowań. Niewątpliwie na Elektronika Praktyczna 3/2002 PROGRAMY uwagę zasługuje rozbudowana biblioteka procedur i dość dobra dokumentacja, Nie bes snacsenia jest teś fakt, że dostępne są trzy, prawie nie różniące się w obsłudze, kompilatory dla głównych rodzin mi kro kontrole rów Microchip'a w dość przystępnej cenie. Każdy z kompilatorów mośna dostać u krajowego dystrybutora za cenę zbliżoną do ceny pakietu Eascom. Jak juś wspomniałem. jest to tylko sam kompilator, ale możliwość pełnej współpracy z darmowym MPLAE całkowicie tę niedogodność eliminuje. Wersja PCW jest juś zdecydowanie droższa, ale daje możliwość korzystania ze wszystkich trzech kompilatorów w jednolitym środowisku IDE, Wersja testowa pakietu PCW rozprowadzana jest razem z pakietem MPLAE. Mośna ją teś ściąg- Tab. 2. Zestawienie ważniejszych funkcji bibliotecznych. ^^^K RS232 [?C SPI1/0 Parallel Slave GetcH I2C_startn Letup_spi0 Letup_pspO Putc() I2C_stopH Spi_readO Psp_input_full () putsn I2_read() Lpi_write() Psp_output_full[) Frintf() I2C_write() Spi_data_i5_in() Psp_oyerflowO Kbhitn I2C_polln Let_uart_speed0 Timers&delay EEPROM Procesor Operacje bitowe Delay_us() Read_eeprom() SleepO Shi ft_right() Delay_riis() Write_eeprorii() Reset_q}u() Shift_left() Delay_cycle5() Read_calibration 0 Di sable_interrupts() Rotate_right() Letup_tiriier_K () Enable_interrupts() Rotate_leftn Let_tiraer_K () Ext_int_edge() Bit_clear() Get_tiraer() Bit_set() Letup_counters () Bit_test() Letup_wdt() Swap() Restart_wdt() nąć ze strony Microchipa, co teś jest pewną rekomendacją produktów CCS. Pewną niedogodnością kompilatorów CCS jest brak możliwości kompilowania i lin-kowania więcej niś jednego pliku. Przy rosnących rozmiarach pamięci programu, pliki źródłowe mogą osiągać duśe rozmiary i dzielenie ich na mniejsze części znacznie ułatwiają pracę. Na stronie www.ccsinfo.com mośna znaleźć wiele interesujących, dodatkowych informacji dotyczących kompilatora. Godny polecenia jest mały test porównawczy kompilatorów CCS z produktami innych firm, znajdujący się na stronie www.ccsinfo.com/compare.himl. Tomasz Jabłoński, AVT tomasz.jablonski@ep.com.pl Ceny kompilatorów PCB dla 12bit...... .................................99USD PCM dla 14 bit..... .................................99USD PCHdlaPIC18..... .................................99USD PCW dla 12 i 14 bit ............................... 350USD Dodatkowe informacje Kompilatorylirmy CCS udostępniła redakcji firma Gamma, Tel. (22) 663-83-76, www.gamma.pl. Dodatkowe informacje o olercie lirmy CCS można znaleźć w Interneciepodadresem: www.ccsinlo.com. 63 Elektronika Praktyczna 3/2002 1109.0002** 0.909 SPRZĘT j I J J inj i/ Co można jeszcze zmieścić w obudowie multimetru? Prezentowany w artykule przyrząd mógłby być reklamowany jako ten, bez którego rozwój laboratorium pomiarowego nie jest możliwy - taki pomiarowy kombajn. Jest to dość śmiałe stwierdzenie, ale myślę, że walory przyrządu w pełni je usprawiedliwiają. Wens 700 S przypomina wyglądem nieco przerośnięty przenośny multimeti* Złudzenie mija natychmiast po włączeniu zasilania: duży, podświetlany wyświetlacz graficzny o rozdzielczości 160x160 punktów wyraźnie wskazuje na ponadprzeciętne możliwości tego przyrządu. I tak jest w rzeczywistości, Wens 700S integruje bowiem w sobie następujące możliwości funkcjonalne: Multimetru uniwersalnego, za pomocą którego można mierzyć wszystkie typowe wielkości elektryczne: rzeczywiste wartości (trueRMS) napięć stałych i zmien- nych (do 700VAC i 1000VDC) z dokładnością podstawową 0,3% oraz prądu (do 20A), rezystancję (do 40MLi), pojemność (do lOOfiF), częstotliwość (do 5MHz), poziom sygnału (dBm) dla 16 różnych wartości impedancji obciążającej, temperaturę, wilgotność względną oraz prądy większe niż 20A przy zastosowaniu dodatkowych przystawek i czujników. Można także nim sprawdzać ciągłość obwodów i mierzyć spadek napięcia na złączach półprzewodnikowych. Na rys. 1 pokazano wygląd wyświetlacza przyrządu podczas pracy w trybie multimet- WENS ru. Wyniki pomiarów są odświeżane 4 razy w ciągu sekundy, bar-grafu - 7 razy na sekundę. Bargraf (wskaźnik analogowy) może być wyskalowany w wartościach zakresowych lub procentach zakresu. Dodatkową interesującą możliwością oferowaną przez przyrząd w tym trybie pracy, jest możliwość rejestrowania wartości minimalnych, maksymalnych wraz ze HUTO 4U 29-73 0.998 kHz , In uli mim iii mim i Im ii milmil 0 20 40 TIME:09hl6nt -32.?3dBm REL Peak Hołd | Limit || MIN-MAX| Rys, KRNGE 40@U 129.5 mUac 38.5rnUac @00 flUG 136.0mUac 0:00=58 MIH= 12?.lmUac 6=00:42 Rys, 2, J 842.5mUacp/p 7-143kHz Rys, 3, Elektronika Praktyczna 3/2002 69 SPRZĘT 9SkHz Rys. 4. znacznikami czasowymi umożliwiającymi ich identyfikację oraz wartości średniej próbek pomiarowych w określonym odstępie czasu. Wyniki mogą być prezentowane graficznie w postaci histogramu - trendu (przykład pokazano na rys. 2). Z innych, przydatnych w praktyce, cech miernika można wymienić możliwość pomiarów względnych w stosunku do wprowadzonej uprzednio do pamięci wartości odniesienia (REL) czy funkcję komparatora okienkowego (LIMIT) przydatną podczas selekcji podzespołów lub kontroli mierzonych parametrów. Oscyloskopu cyfrowego o paśmie pomiarowym O...5MHz, uzyskiwanym przy częstotliwości próbkowania 20MHz. Użytkownik ma do dyspozycji jeden kanał pomiarowy zabezpieczony do 600Vp-p (czułość 10mV...200V/ dz.), a wyniki pomiarów są rejestrowane w jednej z 15 pamięci próbek o długości 256 punktów każda. Przyrząd wyposażono w kursory read-out, przesuwne niezależnie w obydwu osiach, ułatwiające dokładny odczyt parametrów wybranego fragmentu analizowanego przebiegu. Wartość napięcia wyznaczająca poziom synchronizacji przyrządu może być programowana przez użytkownika, podobnie jak zbocze synchronizu-jące badanego sygnału. Pomiary można wyzwalać także zakłócę- W skład standardowego wyposażenia przyrządu Wens 700$ wchodzą: ^>instrukcja obsługi, ^kable pomiarowe, ^dyskietka 3,5" z oprogramowaniem dla systemu Windows 95/98/Me, ^baterie i zasilacz sieciowy, ^osłona typu holster, Śfuterał. 1100.0002 0.909 nsec 1.0000002 kHz 0.999 OUER TIME:01h26m GflTE= 10S Rys. 5. niami występującymi w mierzonym sygnale, których wartość napięciową (tzw. limit) ustala użytkownik. Funkcjonalność oscyloskopu znacznie zwiększyłaby się przy możliwości synchronizowania przebiegu sygnałem zewnętrznym, podawanym na dodatkowe wejście sygnału wyzwalającego pomiar. Widok ekranu wyświetlacza przyrządu pracującego w trybie oscyloskopu pokazano na rys. 3. Jednokanałowego analizatora stanów logicznych, który umożliwia rejestrację sygnałów TTL oraz CMOS3/5V. Możliwości konfiguracji analizatora (choćby trybów wyzwalania) nie są zbyt duże, a najpoważniejszą wadą jest brak możliwości obserwacji co najmniej dwóch kanałów jednocześnie, co pozwoliłoby śledzić pracę układów logicznych synchronizo-wanych sygnałem zegarowym lub kontrolę reakcji wyjścia układu logicznego na zmianę sygnału na wejściu. Generatora przebiegów funkcyjnych, który generuje trzy standardowe przebiegi: sinusoidalny, trójkątny i prostokątny o programowanej częstotliwości (w zakresie 40Hz...5MHz), amplitudzie (do 10Vpp) i wypełnieniu (25...75%). Impedancja wyjściowa generatora wynosi 600Q. Wszystkie informacje o przebiegu generowanym na wyjściu przyrządu są wyświetlane na ekranie wyświetlacza, jak to widać na rys. 4. Miernika częstotliwości, którego parametry stawiają go na równi z wieloma przyrządami laboratoryjnymi niższej i średniej klasy. Zakresy pomiarowe wynoszą 5Hz...40MHz i 40MHz...l,3GHz, Podstawowe parametry pomiarowe przyrządu Wens 700$ (zakresy pomiarowe): /pomiar napięcia stałego: 400mV...1000V, /pomiar napięcia zmiennego (TrueRMS):400mV...700V, /pomiar prądu stałego: 40mA...20A, /pomiar prądu zmiennego (TrueRMS): 40mA...20A, /pomiar pojemności: 40nF...100|iF, /pomiar rezystancji: 400Q...40MQ, /częstotliwość próbkowania w torze Y oscyloskopu DSO:20MHz, /pasmo analogowe DSO:5MHz, /pojemność pamięci próbekDSO: 256 próbek, /czułość kanału Y:10mV...200V/dz., /podstawa czasu DSO:250ns...2s/dz., /pomiar częstotliwości: 5Hz...1,3GHz, /częstotliwości generowanych sygnałów funkcyjnych: 40Hz...5MHz, /zakres regulacji wypełnienia przebiegów generowanych przez generator funkcyjny: 25...75%, /maksymalna amplituda napięcia na wyjściu generatora funkcyjnego: 10Vpp, /impedancja wyjściowa generatora funkcyjnego: 600Q, /czas skanowania analizatora stanów logicznych: 250ms...2s. liczba wyświetlanych cyfr znaczących wynosi 8, a czasy wykonywania pomiarów mogą przyjmować następujące wartości: 0,1, 1 lub lOs. Kanał pomiarowy dla zakresu 5Hz...40MHz ma impe-dancję 1MQ, a jego czułość wynosi 100mV (w zakresie częstotliwości wejściowych 5Hz...lOMHz) i 200mV (dla częstotliwości 10MHz...40MHz). Z kolei kanał pomiarowy dla sygnałów o częstotliwościach z zakresu 40MHz...l,3GHz ma impedancję 50Q, a jego czułość zwiększa się wraz ze wzrostem częstotliwości sygnału wejściowego (dla częstotliwości 80MHz...l,3GHz wynosi 200mV). Jak widać na rys. 5, w tym trybie pomiarowym na ekranie przyrządu wyświetlane są jednocześnie: zmierzona częstotliwość i okres przebiegu, przy czym pomiar okresu odbywa się tylko dla sygnałów o częstotliwości do lOOMHz. Podczas pomiarów przyrząd wyświetla czas od momentu włączenia przyrządu. Wyboru funkcji pomiędzy różnymi trybami pracy przyrządu 70 Elektronika Praktyczna 3/2002 SPRZĘT Interfejs RS232 Włącznik analizatora logicznego Kontekstowe klawisze funkcyjne Przycisk zapisu do pamięci lub drukowania Włącznik / oscyloskopu * Przyciski / sterujące * położeniem kursonów Rys. 6. Gniazdo zasilania zewnętrznego Włącznik pomocy 4 Generator funkcyjny _. Pomiar częstotliwości i okresu ' Pomiar pojemności fm W tym położeniu przełącznika obrotowego jest uaktywniany Setup można dokonać za pomocą obrotowego przełącznika, który spełnia jednocześnie rolę wyłącznika zasilania (fot. 6). Dodatkowe funkcje, w tym uruchamianie wbudowanej w przyrząd interaktywnej pomocy, są dostępne dzięki wyposażeniu przyrządu w 12 przycisków funkcyjnych, spośród których funkcje czterech są automatycznie zmieniane w zależności od aktualnie wykonywanych pomiarów. Wyniki prowadzonych pomiarów można zapisać do wbudowanej w przyrząd pamięci nieulot-nej, która umożliwia przechowanie do 15 rekordów stron graficznych lub tekstowych. Przyrząd wyposażono także w interfejs RS232, za pomocą którego można dołączyć go do komputera z odpowiednim oprogramowaniem lub drukarki. Szybkość i format ramki transmisji danych, a także wiele innych parametrów związanych z pracą przyrządu użytkownik może ustalić za pomocą specjalnego menu. Przyrząd wyposażono także w kontekstową pomoc uruchamianą za pomocą jednego z przycisków znajdujących się na panelu operatora. Dołączone na dyskietce oprogramowanie ułatwia współpracę przyrządu z komputerem rozszerzając jeszcze możliwości przyrządu. Miernik może być zasilany z baterii, pakietu akumulatorów lub zasilacza sieciowego, będą- cego jednocześnie ładowarką. Miernik jest wyposażony w wyłącznik czasowy. Przyrząd jest zabezpieczony przed uszkodzeniami, w tym z powodu pomyłek użytkownika. Po włączeniu dokonuje samo diagnozy, której wyniki są wyświetlane na ekranie. Przyrząd uzyskał wiele międzynarodowych certyfikatów, a producent - firma WENS - certyfikat ISO9001. Wiele z zastosowanych w przyrządzie rozwiązań jest chronionych patentami. Jak widać z tego krótkiego opisu, Wens 700S jest jednym z najbardziej uniwersalnych, spośród dostępnych na naszym rynku, przyrządów pomiarowych. Jak wykazały testy, jego walory użytkowe są bardzo duże, lecz niektóre z jego cech użytkowych (jak wspomniane: analizator sygnałów logicznych, czy brak w oscyloskopie możliwości wyzwalania zewnętrznego) są mocno ograniczone funkcjonalnie. Prawdopodobnie Wens 70OS - jako pierwszy tak zaawansowany przyrząd w ofercie firmy Wens - będzie rozwijany i wymienione w artykule niedogodności zostaną usunięte. Życzymy tego zarówno użytkownikom, jak i producentowi. Andrzej Gawryluk, AVT Dodatkowe informację Przyrząd do testów dostarczyła firma Merser-wis.tel. (22) 831-42-56, www.merserwis.com.pl. 72 Elektronika Praktyczna 3/2002 PROJEKTY Zdalnie sterowana karta przekaźników AVT-5046 i Układy tak uniwersalne, jak prezentowany w ańykule, cieszą się wśród naszych Czytelników ogromnym powodzeniem- Bezprzewodowo sterowany zespół przekaźników może bowiem znaleźć bardzo wiele zastosowań. Czekamy na Wasze opinie i przykłady aplikacji. Stosowanie kart rozszerzających o budowie podobnej do przedstawionej w artykule pozwala na zwiększenie możliwości systemów sterowania, np. zwiększenia liczby portów procesora czy zwiększenia wydajności prądowej wyjść sterujących. Można także zrezygnować z komunikacji przewodowej i sterować przekaźnikami, a więc włączać i wyłączać jakieś urządzenia bezprzewodowo. Mamy wtedy możliwość zmiany położenia nadajnika czy odbiornika, jest także możliwe sterowanie jednego modułu odbiorczego z kilku nadajników. W pewnych warunkach, gdy nie ma możliwości ułożenia kabla lub gdy jest to z jakichś powodów bardzo kłopotliwe, sterowanie radiowe jest jedynym możliwym rozwiązaniem. Prezentowane w artykule urządzenie umożliwia sterowanie ośmioma urządzeniami za pomocą klasycznych przekaźników elektromechanicznych o dużej obciążalności styków. Komunikację pomię- dzy kartą a urządzeniem sterującym można zrealizować trzema sposobami: - za pomocą portu szeregowego (bezprzewodowo), - za pomocą portu równoległego lub innego interfejsu (bezprzewodowo), - za pomocą portu równoległego lub innego interfejsu dołączonych bezpośrednio (przewodowo). Zastosowanie transmisji bezprzewodowej ma jeszcze oprócz wielu zalet, jedną warną właściwość: nadajnik nie ma połączenia galwanicznego z odbiornikiem, nie ma więc możliwości uszkodzenia nadajnika w przypadku uszkodzenia układów wykonawczych odbiornika. W przypadku zastosowania karty jako sterownika świateł, można odbiornik umieścić pxzy żarówkach, np. na zewnątrz budynku, i sterować nimi z domowego komputera. Można zmieniać sposób sterowania (szeregowe lub równo- Elektronika Praktyczna 1/2002 27 Zdalnie sterowana karta przekaźników CON1 +5V A18/D8 A17/D7 A16/D6 A15/D5 A14/D4 A13/D3 A12/D2 A11/D1 Rys. 1. Schemat elektryczny nadajnika. +12V Rys. 2. Schemat elektryczny odbiornika. Elektronika Praktyczna 1/2002 Zdalnie sterowana karta przekaźników ? zastosowano zintegrowany moduł nadajnika 433MHz (układ US4). Aby sygnały wysyłane drogą radiową były rozróżnialne tylko przez współpracujący z nadajnikiem odbiornik niezbędne było zastosowanie kodowania transmisji. Do tego celu zastosowano układ UM3758-108A. Posiada on 10 wejść kodujących oraz możliwość przesłania wraz z kodem identyfikującym jednego bajtu danych. Dodatkową zaletą tego układu jest możliwość pracy zarówno w układzie nadajnika jak i odbiornika, w zależności od poziomu napięcia występującego na wejściu MOD. W przypadku zastosowania układu w nadajniku zwieramy wejście MOD do plusa zasilania. Na wyjściu TRO pojawia się wówczas ciąg bitów reprezentujący stany logiczne na wejściach D1...D8 oraz wejściach kodujących A1...A10. Sygnał cyfrowy z wyjścia TRO układu US2 moduluje sygnał nośny układu nadajnika RTl. Ponieważ sygnały wejściowe mogą być podawane zarówno równolegle jak i szeregowo, zastosowano dwa złącza przystosowane do pracy w danej konfiguracji. W przypadku sterowania równoległego dane wejściowe należy doprowadzić bezpośrednio do złącza CON3. W tym przypadku układ procesora USl należy zdemontować. Sygnały sterujące mogą pochodzić np. z portu Rys. 3. Rozmieszczenie elementów na płytce drukowanej nadajnika. ległe) bez ingerencji w moduł wykonawczy. Ma to szczególnie znaczenie, gdy karta steruje urządzeniami zasilanymi napięciem 220V, ponieważ użytkownik nie ma kontaktu z napięciem niebezpiecznym dla życia. Opis układu System sterowania przekaźnikami składa się z dwóch modułów: nadajnika i odbiornika. Schemat elektryczny nadajnika przedstawiono na rys. 1. Zadaniem nadajnika jest przetworzenie sygnałów sterujących (podawanych szeregowo, bądź równolegle) na falę elektromagnetyczną. Zbudowany jest on z czterech układów scalonych oraz kilku elementów biernych. W układzie zasilania zastosowano stabilizator napięcia +5V (układ US3) oraz kondensatory filtrujące Cl, C2 i C3. Dioda prostownicza D2 zabezpiecza układ przy nieodpowiedniej polaryzacji napięcia zasilania. Jako element przetwarzający napięcie elektryczne na falę elektromagnetyczną RyS 4 Rozmieszczenie elementów na płytce drukowanej odbiornika. równoległego lub z dołączonej klawiatury. Jeżeli zachodzi potrzeba sterowania poprzez port szeregowy, należy zamontować układ USl. Procesor ma za zadanie zamianę danych pochodzących z portu szeregowego RS232 do postaci równoległej. W celu konwersji sygnałów RS232 (-15V, +15V) na sygnały o poziomach napięcia +5V, 0V, zastosowano transoptor TS. Wraz z rezystorem Rl i diodą Dl stanowi on konwerter poziomów odwracający jednocześnie fazę. Rezystor Rl ogranicza prąd płynący przez diodę transoptora, a dioda Dl zabezpiecza ją przed przebiciem przy polaryzacji wstecznej. Stosowanie wyspecjalizowanego konwertera napięć, na przykład układu MAX232, okazało się zbędne, gdyż dane przesyłane są tylko w jedną stronę, od komputera do procesora z prędkością 1200b/s. Zastosowany transoptor doskonale spełnia swoje zadanie, a przy tym uzyskuje się izolację galwaniczną pomiędzy komputerem a układem nadajnika. Pozwoliło to również na zmniejszenie wymiarów płytki nadajnika. Na rys. 2 przedstawiono schemat modułu odbiorczo-wykonaw-czego. Głównym elementem (oprócz odbiornika US3) jest układ USl zastosowany również w nadajniku. Tutaj, po zwarciu wejścia MOD do masy, pełni rolę dekodera identyfikującego kodowany Elektronika Praktyczna 1/2002 29 Zdalnie sterowana karta przekaźników Ś**** f zl Rys. 5. Konfiguracja portu szeregowego. sygnał z nadajnika. Na wejściach kodujących Al.. A10 ustawiamy kod, taki jak w nadajniku, wyprowadzenia Dl."D8 pełnią funkcję wyjść danych. Do wejścia RXI doprowadzony jest sygnał z odbiornika radiowego (układu US3). Dekoder UM3758 odbiera i analizuje sygnały pojawiające się na wejściu RXL Jeżeli dwa kolejne pakiety danych są identyczne, a nastawiony kod odbiornika jest zgodny z kodem nadajnika, wtedy następuje przepisanie bajtu danych na wyjścia DI.lJDSl W wersji A układu UM3758-108 dane są zatrzaskiwane w wewnętrznych buforach i przetrzymywane do czasu kolejnego poprawnie odebranego pakietu danych. Tak więc, nawet po zaniku sygnału z nadajnika, stany wyjściowe pozostają bez zmian. Jest to szczególnie ważne w przypadku krótkotrwałych zaników transmisji między nadajnikiem a odbiornikiem. Sygnały z wyjścia D1...D8 są podawane na wejście wzmacniaczy tranzystorowych - w układzie ULN2803A. Układ US2 zawiera osiem tranzystorów o prądzie wyjściowym 500mA. Wewnątrz układu znajdują się również diody zabezpieczające tranzystory przed przepięciami, umożliwiając bezpośrednie sterowanie układów indukcyjnych, w tym przypadku przekaźników. Dodatkowe złącze CONlO umożliwia bezpośrednie sterowanie przekaźnikami, bez wykorzystywania transmisji radiowej. Jako układy wykonawcze zastosowano przekaźniki P1...P8 o prądzie znamionowym 10 A. Diody świecące Dl.. .D8 pełnią funkcję sygnalizacyjną - świecą, gdy przekaźnik jest załączony. Napięcie 5V, potrzebne do zasilania odbiornika radiowego i dekodera, pobierane jest z wyjścia stabilizatora 7805. Montaż i uruchomienie Schemat montażowy płytek drukowanych pokazano na rys. 3 i rys. 4. Montaż zaczynamy od płytki nadajnika. Najpierw montujemy elementy o najmniejszych gabarytach, poczynając od rezystorów, a kończąc na złączu CONl. Pod układ USl należy obowiązkowo zastosować podstawkę. Po zmontowaniu nadajnika rozpoczynamy montaż płytki odbiornika. Według przyjętej zasady, montujemy rezystory, podstawki itd., a kończymy na wlutowaniu przekaźników. Uruchomienie zaczynamy od modułu odbiornika. W czasie wstępnego uruchomienia wyjmujemy układ USl, a do złącza CONl podłączamy napięcie zasilające o wartości około 12V. Do styków 1...8 złącza CONlO kolejno doprowadzamy napięcie 5V. W zależności od tego, do którego wyprowadzenia dołączymy napięcie, powodujemy włączenie odpowiedniego przekaźnika. Diody LED sygnalizują zadziałanie przekaźnika. Jeżeli wszystkie przekaźniki zadziałały, to wstępne uruchomienie możemy uznać za zakończone. W przeciwnym przypadku należy jeszcze raz sprawdzić poprawność montażu. Następnie wkładamy układ USl w module odbiornika, na wejściach kodujących A1...A10 ustawiamy dowolny kod, zwierając wejścia A1...A10 do masy lub do plusa, a do pola lutowniczego oznaczonego jako antena przylu-towujemy odcinek przewodu około lOcm. W fazie testów może się okazać przydatny wskaźnik poprawności transmisji. W tym celu należy wyprowadzenie 23 układu USl połączyć z plusem zasilania poprzez diodę LED z szeregowo włączonym rezystorem o wartości około 470Li (zaznaczone na schemacie w obwiedni linią przerywaną). Tak wykonany wskaźnik będzie sygnalizował świeceniem diody poprawny odbiór transmisji. Moduł odbiornika jest już przygotowany do pracy. W module nadajnika wyjmujemy układ USl, na wejściach kodujących A1...A10 ustawiamy taki sam kod jak w module odbiornika. Następnie pod- łączamy zasilanie o napięciu około 12V do obydwu modułów. Po włączeniu zasilania w odbiorniku powinna świecić się dioda sygnalizacyjna dołączona do wyprowadzenia 23 układu USl sygnalizując "widzenie" się modułów. Teraz do wyprowadzeń 1...8 złącza CON3 modułu nadajnika dołączamy kolejno napięcie 5V, na płytce odbiornika powinien zostać załączony odpowiedni przekaźnik. Jeżeli wszystko przebiegło poprawnie, to przechodzimy do kolejnego etapu - uruchomienia interfejsu z wykorzystaniem portu szeregowego komputera. Do tego celu WYKAZ ELEMENTÓW Nadajnik Rezystory Rl: 4,7kft R2...R4: 10kn R5: ln Ró: lOOkn Kondensatory Cl: 220^F/25V C2, C7: lOOnF C3: 1OO^F/1ÓV C4, C5: 33pF Có: 10^F/lóV CS: lOOpF Półprzewodniki Dl: 1N414S D2: 1N4004 TS: SFHÓ1O2 USl: ATS9C2051 zaprogramowany US2: UM375S-10SA US3: 7805 US4: moduł nadawczy RT1 Różne CONl: DB9 - żeńskie CON2: ARK2 (3,5mm) CON3: Goldpin 2x5 Odbiornik Rezystory R1...RS: lkn R9: lOOkn RIO: 10n Kondensatory Cl: 220^F/25V C2, C4...CÓ: lOOnF C3, C7: 1OO^F/1ÓV Półprzewodniki D1...DS: diody LED 5mm USl: UM 375S-10SA US2: ULN 2S03A US3: moduł odbiorczy RR3 Różne CONl: ARK2(5mm) CON2-CON9: ARK3(5mm) CONlO: Goldpin 2x5 P1...PS: RM 9ÓP/12 30 Elektronika Praktyczna 1/2002 Zdalnie sterowana karta przekaźników CON CONI Złącze szeregowe komputera Złącza szeregowe na płytce nadajnika CON10 GOLDPIN 5x2 1 2 3 4 5 6 7 8 9 10 WE2 WE4 WE6 WEB Złącze równoległe komputera Złącze równoległe komputera Złącze CON10 na płytce przekaźników Rys. 6. Schematy możliwych połączeń karty nadajnika z komputerem. będzie potrzebny program Hyper Terminal znajdujący się standardowo w systemie Windows. Program należy skonfigurować do pracy z prędkością 1200 bodów. W tym celu tworzymy nowe połączenie. W Menu>Plik, ustawiamy rodzaj połączenia - bezpośrednie połączenie do COMl; następnie w okienku konfiguruj ustawiamy parametry portu jak na rys. 5. Pozostaje jeszcze ustawienie typu emulacji. W tym celu wybieramy w menu Plik>Właściwoś-ci>Ustawienia i wybieramy typ VT1OO. Terminal został skonfigurowany. Teraz do płytki nadajnika wkładamy układ USl i podłączamy moduł nadajnika do portu komputera. W programie Hyper Terminal w menu Wywołaj wybieramy Połącz. Od tej chwili każde naciśnięcie dowolnego klawisza klawiatury komputera będzie powodowało załączenie odpowiednich przekaźników w module odbiornika. Na rys. 6 pokazano schematy połączeń karty z komputerem w zależności od sposobu sterowa- nia. Na rys. 6a przedstawiono schemat połączeń przy sterowaniu poprzez port szeregowy komputera. Dane są odbierane szeregowo przez procesor i zamieniane do postaci równoległej, a następnie wysyłane drogą radiową do odbiornika. Schemat z rys. 6b przedstawia sposób połączenia karty bezpośrednio z portem równoległym komputera. Przy takim podłączeniu procesor USl należy wyjąć z podstawki. Na rys. 6c przedstawiono schemat sterowania przez port równoległy przy bezpośrednim połączeniu kablowym komputera z modułem odbiornika. W tym układzie nie stosujemy modułu nadajnika, a w odbiorniku usuwamy USl. Po przeprowadzeniu tej procedury uruchomienia karta jest gotowa do pracy. Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl UWAGA! W przypadku występowania problemów z synchronizacją modułów radiowych lub zbyt małej odległości pomiędzy modułami zapewniającej poprawną pracę należy w układzie nadajni- CON3 GOLDPIN 5x2 1 2 3 4 5 6 7 8 9 10 Złącze CON3 na płytce nadajnika ka dobrać wańość kondensatora C8 w zakresie od 47 do 220pF. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdf/styczenO2.htm oraz na płycie CD-EP01/2002B w katalogu PCB. Elektronika Praktyczna 1/2002 31
kUlLL Tak naprawdę, w ofercie firmy Anadigm znajduje się obecnie tylko jeden analogowy układ programowalny oznaczony symbolem AN10E40. W nomenklaturze producenta układy z planowanej do wdrożenia rodziny AN10E należą do tzw. FPAA, czyli Field-Program-mable Analog Array, których wewnętrzna budowa przypomina budowę klasycznych układów FPGA, co doskonale widać na rys. 1. Nieprzypadkowo zastosowane w nich rozwiązania przypominają nieco rozwiązania stosowane w analogowych układach programowalnych wdrażane niegdyś przez firmę Motorola - większość projektantów tych układów pracuje obecnie w firmie Anadigm. Confiflurłtion Dat* Shrft Ftegtełer CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB CAB Rys, 1 XI Y Zl1X1 Y 2 1X1 Y Zl1X1 Y Z 1X1 Y 2 I IM firmy Anadigm programowalna Podobieństwo architektury układów prezentowanych w artykule do architektury układów FPGA już na pierwszy rzut oka fest bardzo duże, ale zarówno obszar aplikacji jak i działanie tych układów są zupełnie różne. Analogowe układy programowalne dopiero raczku/ą i dotychczas nie ustalił się żaden standard ich architektury. Mamy więc niepowtarzalną okazję obserwować ich rozwój i śledzić pomysły producentów. Po wcześniejszej prezentacji układów ispPAC firmy Lattice tym razem zajmiemy się układami firmy Anadigm. Elektronika Praktyczna 3/2002 PODZESPOŁY Wejścia globalne^
Pamięć konfiguracji (SRAM) Rys. 2. Za obróbkę sygnałów analogowych w układzie odpowiadają kon-figurowalne bloki analogowe CAB {Configurahle Analog Blocks) ułożone w matrycę o wymiarach 4x5. Komunikację pomiędzy tymi blokami zapewniają podwójne pionowe i poziome globalne linie sygnałowe oraz znaczna liczba linii lokalnych, które umożliwiają przesyłanie sygnałów w dowolnym kierunku. Do linii globalnych są dołączane także wejścia i wyjścia komórek I/O, których w układzie AN10E40 jest 13. Budowę komórki CAB pokazano na rys. 2. Jej podstawowym elementem jest szybki wzmacniacz operacyjny (szybkość narastania sygnału na wyjściu wynosi 2 0V/u.s, pasmo przenoszenia 5MHz), w którego pętlę sprzężenia zwrotnego włączono szereg kluczowanych pojemności. Spełniają one w układzie rolę konfigurowanych elementów reaktancyjnych, których wartość zależy od częstotliwości. Dzięki takiemu sposobowi konfigurowania bloków CAB, parametry fazowo- Rys. 3. Wyjścia globalne Wyjścia lokalne OpAmp AN10E40 SERIAL EEPROM MODE[1] F[0] - BFRb F[3] - PWRUP F[2] - MEMCEb DATA[0] DCLK
CEb RST/OEb Data OłJt CLK
| RESETb >------- ------- RESETb ERRb-F[1] END-F[4] CFGLCLK POR M0DE[2]
Rys. 5. częstotliwościowe każdego z nich można modyfikować w szerokim zakresie wartości. Pojemność kondensatorów jest regulowana z rozdzielczością 8-bitową, a informacje o nastawach są przechowywane w wewnętrznej pamięci SRAM. Klucze przełączające kondensatory są sterowane z jednej z czterech wewnętrznych linii zegarowych, dla których niezależnie można ustalić stopień podziału (w zakresie 1:1...62 z krokiem 2) częstotliwości podawanej na specjalne wyprowadzenie wejściowe. Maksymalna częstotliwość sygnału zegarowego podawanego na to wejście nie powinna przekraczać 2 0MHz. Ponieważ układ AN10E40 jest przystosowany do zasilania napięciem asymetrycznym, do prawidłowej pracy wzmacniaczy operacyjnych konieczne było wyposażenie układu w źródło napięcia referencyjnego o wartości równej połowie napięcia zasilania. Zostało ono wykorzystane także do wytworzenia pomocniczego napięcia odniesienia, którego wartość można programować z rozdzielczością 8 bitów. Interesująca jest budowa komórek wejściowo-wyjściowych (rys. 3), których podstawowym zadaniem BtoW zaimplementowane w układzie AN10E40 -> FSP Dwupołówkowy FDP prostownik jest umożliwienie komunikacji wnętrza układu z otoczeniem. Wyprowadzenia X, Y i Z są dołączone do fizycznych wyprowadzeń układu i spełniają (odpowiednio) funkcje: wejścia uniwersalnego, wejścia bufora i wyjścia bufora. Wyprowadzenia oznaczone jako I i O znajdują się we wnętrzu układu i służą do dołączenia komórki wejściowo-wyjściowej do wewnętrznych linii komunikacyjnych. Najczęściej stosowane konfiguracje komórki wejściowo-wyjściowej pokazano na rys. 4. W przypadku skonfigurowania jej jako bufora wejściowego klucz łączący wyprowadzenia X i Y jest rozwarty, a sygnał wejściowy należy podać do wyprowadzenia Y. Z kolei, gdy komórka wejściowo-wyjściowa pracuje jako bufor wyjściowy, sygnał z wnętrza układu jest podawany na wyprowadzenie I, przez zwarty klucz analogowy na wejście bufora i dalej na wyjście Z. Taka budowa makrokomórek wejściowo-wyjściowych zapewnia ich dużą elastyczność i wynikającą Krótka charakterystyka układu AN10E40: Rys. 4. k technika obróbki sygnałów analogowych oparta na kluczowanych kondensatorach, k 20 konfigurowalnych komórekanalogo- wych, k 13 konfigurowalnych komórek wejściowo-wyjściowych, x 22 globalne linie połączeniowe, k wbudowane źródło programowanego napięcia referencyjnego, k pamięć konfiguracji typu SRAM, x cztery niezależnie programowane sygnały zegarowe, k maksymalna częstotliwość zewnętrznego sygnału zegarowego: 20MHz, k zakres napięć wejściowych: O...5V, x napięcie zasilania: 5V lub ą2,5V, k maksymalny pobór prądu: 120mA, 76 Elektronika Praktyczna 3/2002 PODZESPOŁY AN10E40 z niej możliwość budowania prostych układów filtrujących bez konieczności wykorzystywania wewnętrznych zasobów układu. Za sterowanie kluczami oraz przechowywanie sygnałów kon figurujących pozostałych elementów układu odpowiada wbudowana w układ pamięć konfigurująca. Jak już wspominano, jest to pamięć typu SRAM, której zawartość "znika" po wyłączeniu zasilania. W związku z tym każdorazowo po jego włączeniu konieczne jest odtworzenie zawartości tej pamięci, co jest możliwe dwoma sposobami: - za pomocą pamięci ROM/EPROM z interfejsem szeregowym, której zawartość odczytuje specjalny interfejs wbudowany w układ AN10E40 (rys. 5), - za pomocą mikrokontrolera, który konfigurację układu wpisuje przez 8-bitowy, równoległy port danych, jak to pokazano na rys. 6. Dzięki zastosowaniu takich sposobów odtwarzania zawartości pamięci kon figurującej, parametry torów analogowych zaimplementowa-nych w układzie można modyfikować "w locie", dostosowując je do bieżących wymagań aplikacji. Projektowanie Anadigm przygotował specjalne oprogramowanie narzędziowe Anadigm Designer, za pomocą którego można bardzo łatwo przygotowywać rozbudowane projekty bez konieczności zgłębiania tajników ar- I HLJH Rys. 7. chitektury układów. Oprogramowanie jest udostępniane bezpłatnie, wymaga tylko zarejestrowania się na stronie internetowej producenta. W odpowiedzi przesyłane jest e-mailem hasło umożliwiające poprawne zainstalowanie programu. Na rys. 7 pokazano główne okno programu, w którym jest wyświetlona "makieta" wnętrza układu AN10E40. Konfigurowanie bloków CAB nie wymaga ręcznej modyfikacji parametrów sterowania każdego zespołu kondensatorów, ponieważ producent przygotował wiele kon-figurowalnych bloków IP (Intelectu-a! Property). Zawierają one, możliwe do zrealizowania na wzmacniaczach operacyjnych, analogowe blo- 78 Elektronika Praktyczna 3/2002 PODZESPOŁY Rys. 9. sji oprogramowania (począwszy od 1.2.4) jest wbudowany program Filter Designer (rys. 10), za pomocą którego można graficznie zdefiniować niemal dowolną charakterystykę filtru, a następnie wygenerować opis konfiguracji układu AN10E40 w oparciu o standardowo dostępne moduły IP. Nie jest to, co prawda, całkowicie zautomatyzowany proces projektowania, ale i tak projektowanie filtrów o skomplikowanych Rys. 10. ki funkcjonalnych, w tym różnego rodzaju filtry, prostowniki, wzmacniacze, źródła napięcia itp. Są one dostarczane wraz z oprogramowaniem bezpłatnie, a pełna ich lista znajduje się na stronie internetowej producenta pod adresem: http:// www.anadigm.com/function-Iib-rary.html. Anadigm Designer wyposażono w symulator umożliwiający symulację zaprojektowanego układu, widok okna symulatora pokazano na rys. 8. Do dyspozycji projektanta są cztery wirtualne sondy oscyloskopowe umożliwiające podglądanie do czterech sygnałów (w wybranych punktach) jednocześnie, a także maksymalnie cztery źródła sygnałów wymuszających. Można stosować różne sygnały o predefi-niowanych kształtach (rys. 9) i ustawianych parametrach. Istnieje także możliwość zdefiniowania przebiegu o dowolnym kształcie. Dodatkową pomocą dla projektanta, dostępną w najnowszej wer- lub optymalizowanych charakterystykach jest za pomocą Filter Designera znacznie łatwiejsze niż "ręcznie". Projekt po symulacji można poddać kompilacji, w wyniku której powstają pliki (w zależności od wyboru użytkownika): binarne, w formacie Motorola Sl, Motorola S2 lub AHF. Anadigm Designer umożliwia także przesłanie pliku konfigurującego przez port szeregowy bezpośrednio do pamięci kon-figurującej zestawu ewaluacyjnego opracowanego przez producenta. Andrzej Gawry luk, AVT Dodatkowe informacje Dodatkowe informacje oraz oprogramowanie Anadigm Designer (wraz z Filter Designerem) można znaleźć w Interencie pod adresami: - http://www.anadigm.eom/AD1.2.4-FD1.5.1.exe, - http://www.anadigm.com/anadigmdesigner.pdl, atakże naptycie CD-EP3/2002B. Dystrybutorem lirmy Anadigm w Polsce jest Fu-Ture Electronics, tel. (22) 618-92-02 , http:// www.lutureelectronics.com. 80 Elektronika Praktyczna 3/2002 NOWE PODZESPOŁY Miniaturowe przetwornice DC/DC o mocy 1W iesl Firma C&D Technologies (niegdyś New-port Components] nieustannie udoskonala produkowane przez siebie przetwornice, zwiększając ich sprawność i wartość konwertowanej mocy z jednostki objętości, poprawiając odporność na przebicia pomiędzy wyjściem i wejściem, jednocześnie zmniejszając wymiary oraz masę. Do najnowszych przetwornic o wydatnie ograniczonej masie należą przetwornice serii NKE, charakteryzujące się mocą wyjściową lW, sprawnością dochodzącą do 81%, zakresem dopuszczalnych temperatur pracy-40...+85C. Napięcie przebicia izolacji pomiędzy wejściem i wyj- 'TECHNOLOGIES Tab. 1. Zestawieiie podstawowych parametrów przetwonic z serii NKE. Typ przetwornicy Nomin. napięcie wej. IV] Napięcie wyj. [V] Prąd wyj. ImA] Sprawność [%] NKE0303S 3,3 3,3 303 75 NKE0305S 3,3 5 200 76 NKE0503S 5 3,3 303 75 NKE0505SE 5 5 200 78 NKE0505E 5 5 200 69 NKE0509S 5 9 111 75 NKE0512S 5 12 83 77 NKE0515S 5 15 66 78 NKE1205S 12 5 200 71 NKE1209S 12 9 111 78 NKE1212S 12 12 83 79 NKE1215S 12 15 66 81 ściem wynosi aż 3kV, co jest nie lada osiągnięciem, gdyż te przetwornice są oferowane w miniaturowych obudowach SIL4. Zestawienie podstawowych parametrów przetwornic z serii NKE zawarto w tab. 1. h ttp; /7www. c d n c 1. c o m fc d /p r o d uc ts / d c_c on vsrtsrs/p df/n ks.pdf Przedstawicielami firmy C&D Technologies w Polsce są firmy; JM Elektronik (tel. (32} 339-89-00} oraz Memec-Insighi {tel. {32} 233-03-80}. Półprzewodnikowy przekaźnik optyczny jBSt Firma Clare, w ramach rodziny przekaźników optycznych OptoMOS, wprowadziła do produkcji nowe elementy (m.in. CPC1017N], charakteryzujące się niewielką rezystancją wyjściową (poniżej 16Q), napięciem przebicia izolacji 2l00VAC 3k, niewielkim wymaganym prądem wejściowym (do ImA] i obciążalnością półprzewodnikowych "styków" do lOOmA (przy napięciu CLARE wyjściowym do 60VDC]. Zaletą CPC1017N są niewielkie wymiary obudowy (SOP4 do mon- Micro Chips. tażu SMD], sto- MACRO SOLUTIOHS. sunkowo krótki czas załączania/wyłączania (po lOms] i duża dopuszczalna moc tracona - do 400mW. Elementy te nadają się szczególnie do stosowania w czujnikach alarmowych, elektronicznych systemach pomiarowych i akwizycji danych, a także w sprzęcie medycznym. http;ffwww.clare .-c o m fh o m e f P DF s. n sf f www/CPCl0l7N.pdff $File/CPCl0l7N.pdf Przedstawicielem firmy Clare w Polsce jest firma Radiotechnika Marketing {tel. {71} 327-70-75}. Elektronika Praktyczna 3/2002 81 NOWE PODZESPOŁY Nowe interfejsy RS422/485 Uldady MAK3460...MAX3464 firmy MA-XIM należą do rodziny szybkich nadajników i odbiorników współpracujących z liniami różnicowymi. Uldady mogą pracować w standardach RS485 i RS422. Szybkość transmisji może dochodzie do 20Mbps. W obudowie układu scalonego mieści się jeden nadajnik i jeden odbiornik. Nadajniki linii są wewnętrznie zabezpieczone przed zwarciem wyjść różnicowych i przed przegrzaniem. Dodatkowym usprawnieniem jest ustawianie wyjścia odbiornika na poziomie wysokim, gdy jego wejścia różnicowe są zwarte lub pozostają nie podłączone. Poszczególne układy rodziny różnią się między sobą m.in. zastosowaną obudową (8 lub 14 wyprowadzeń], możliwością zmiany fazy transmitowanych sygnałów i obecnością wyjścia do sprzętowego wprowadzania układu w stan zmniejszonego poboru mocy, w którym pobierany prąd nie przekracza l|lA. Układ zasilany jest napięciem +5V i pobiera prąd ok. 2,5mA. Zależnie od wersji, układy pracują w temperaturach od -40C do +85C. Są dostępne w obudowach DIP14 iSOl4 lub DIP8 i SOS. http://pdfssrv.inaxiin-ic.coin/arpdf/ MAX3 4 80 -MA X34 S4.pdf Jest -CD DALLAS SEMICONDUCTOR Przedstawicielem Ma xi ma w Polsce jest firma SE Spezial Electronic {tel. 18-00-39}. Microchip (jeszcze) bardziej analogowo CD & Microchip Pod koniec ubiegłego roku Microchip wdrożył do produkcji kolejne niskonapięciowe wzmacniacze operacyjne, różniące się od dotychczas produkowanych przez tą firmę szerokim pasmem przenoszenia (w rodzinie MCP602x GBWP wynosi lOMHz] lub bardzo małym poborem prądu (w rodzinie MCP604x pobór prądu nie przekracza 600nA, a zakres wartości napięcia zasilania wynosi 1,4...5,5V]. W ramach obydwu wymienionych rodzin są dostępne pojedyncze, podwójne i poczwórne wzmacniacze operacyjne. Wdrożone przez Microchipa dwie nowe rodziny wypełniły lukę w ofercie, w której dotychczas znajdowały się stosunkowo wolne wzmacniacze, o stosunkowo dużym poborze prądu. h ttp: //www. mi ero chi p. c om /do wrd o ad /Ii t! plin e lan alo g/lin e ar/op am p s/21835a.pdf Przedstawicielami Microchipa w Polsce są firmy: Euture (tel. {22} 813-92-02}, Gamma (iel {22} 883-33-78} i Memec-Uniąue {tel. {32} 233-05-80}. Miniaturowy sterownik końcówki mocy klasy D Specjalnie do stosowania w wysokospraw-nych końcówkach mocy w sprzęcie audio kina domowego, w urządzeniach związanych z Internetem i do samochodowych zestawów muzycznych, firma Texas Instruments przygotowała scalony wzmacniacz sterownik końcówki mocy pracujący w klasie D, oznaczony symbolem TAS5100. Maksymalna moc wyjściowa na obciążeniu QD. lub 4Q może wy-
TAS6100 L-C Hlter DtytalAurio TAS3001 TAS5000 Loft Ł F
DSP ___k w ŚSPDIF 1394 TAS5100 k LC Rltar -> w Rys. 1. nieść nawet 30W. Układ zapewnia dużą dynamikę sygnału, sięgającą 93dB i niskie zniekształcenia - ok. 0,08%. Zasada działania wzmacniacza jest inna niż tradycyjnych wzmacniaczy akustycznych. W TAS5100 zastosowano technikę przetwarzania dźwięku z zastosowaniem modulacji PWM (klasa D). Układ przeznaczony jest do współpracy z innymi elementami systemu, tworzącymi kompletną końcówkę mocy, w szczególności zTAS5000, który zamienia sygnał o częstotliwości akustycznej na modulowane impulsy PWM ste- J?Texas Instruments rujące wzmacniaczem mocy TAS5100. Proponowaną przez firmę Texas Instruments aplikację systemu przedstawiono na rysunku. Wewnętrzne układy wzmacniacza zasilane są napięciem 3,3V natomiast wyjściowe układy mocy potrzebują napięcia o wartości ok. 22V. Układ może pracować w temperaturze 0...70C i jest dostępny w 38-stykowej obudowie PowerPAD. http://www-s.ti.com/sc/ds/tas5l00.pdf Przedstawicielami Tsxas Instruments w Polsce są firmy: Contrans {tel. {71} 325-28-21}, EBV {iel. {71} 342-29-44}, Eurodis {tsl. {71} 30l-04-00| Silica {iel. {22} 834-47-38} i Spoerle {tel. {22} 848-52-27}. 82 Elektronika Praktyczna 3/2002 NOWE PODZESPOŁY Miniaturowy wzmacniacz mocy Jest National Semiconductor wprowadził do produkcji wzmacniacz akustyczny nowego typu oznaczony symbolem LM4840. Jest to stereofoniczny wzmacniacz o mocy wyjściowej do 2W, przeznaczony do stosowania w przenośnym sprzęcie elektronicznym, jak np. komputery, zestawy multimedialne, monitory komputerowe nowej generacji itp. Ze względu na przewidywany zakres zastosowań, sterowanie głośnością odbywa się cyfrowo za pomocą trzech linii sterujących. Jedna z nich jest linią zegarową, na którą są podawane impulsy taktujące a pozostałe dwie sterują funkcjami i,głośniej" i "ciszej". Układ może także samo- dzielnie generować impulsy taktujące bez konieczności podawania ich z zewnątrz. W tym celu należy do wyprowadzenia zegarowego dołączyć kondensator, którego pojemność wpływa na częstotliwość wytwarzanych przez układ impulsów taktujących. Inna użyteczna funkcja układu umożliwia pamiętanie ostatniej nastawy głośności sprzed wyłączenia zasilania. W tym celu trzeba jedynie podać na wyprowadzenie Vaux napięcie o wartości większej od 2,3V "podtrzymujące" zapis w pamięci. Układ pracuje przy napięciu zasilającym o wartości większej od 2,7V, lecz nie prze- National Semiconductor kraczającej 5,5V. Wprowadzony w stan oszczędzania energii pobiera prąd do 2|iA. Temperatura pracy mieści się w przedziale -40C do +85C. Układy są oferowane w obudowach typu TSSOP. ii iip 'J/www.n ational. com /ds/LM/LM4340. pdf Przedstawicielami National Semiconduc- ior w Polsce są firmy; EBV (iel. {71} 342-29-44], Macropol {tel. {22} 322-43-37] i Spoerle {tel, {22} $08-04-47}. ToControl Plnon Hoedphano Juk HPSerae Left2 Audio Input Clicie md Pop Supprewlon Cirturtry 5lseve Headphone Jack Rys. 2. Shutdown Nowe scalone konwertery DC/DC Japońska firma Torex wprowadziła do produkcji trzy nowe, ultraminiaturowe układy sterujące do przetwornic PWM oraz PWM/ PFM, za pomocą których można zbudować konwertery napięcia przetwarzające napięcie wejściowe o wartości 1,8...1OV na napięcie 1,5...30V. Typowy schemat aplikacyjny układów XC9lO3...5 pokazano na rysunku. W miniaturowych obudowach SOT2 3-5 lub USP6B zintegrowano wszystkie elementy niezbędne do wykonania przetwornicy, za wyjątkiem końcowego tranzystora mocy. Częstotliwość kluczowania, w zależności od wersji układu, może wynosić 100/180/ 300 lub 500kHz. Układy XC9lO3...5 różnią się między sobą sposobem stabilizowania napięcia wyjściowego, i tak: w XC9lO3 zastosowano klasyczną modulację PWM, - w XC9lO4 zastosowano automatycznie wybierany przez układ tryb pracy PWM/PFM, - układ XC9lO5 pozwala użytkownikowi ręcznie ustalić tryb pracy: PWM lub PFM. h ttp ;f fwww.iorex.co. jpfcgi-bi n fennftorexf check.p?URL=Je-newfe_xc91030405.pdf Przedstawicielem firmy Torex w Polsce jest firma Elaiec-Poland {iel. {12} 294-10-50}. VIN 01 rvw 3,3V Elektronika Praktyczna 3/2002 83 NOWE PODZESPOŁY LED-y jak żarówki Niemiecka firma EBT jest producentem szerokiej gamy lampek i oświetlaczy wykonanych w oparciu o nowoczesne, energooszczędne diody LED. Oprócz klasycznych, dostępnych na naszym rynku od dłuższego juś czasu lampek sygnalizacyjnych (często dostępnych w specjalnych, pyłoszczelnych obudowach umożliwiających ich montaż na płytach czołowych urządzeń przemysłowych), EBT oferuje takśe elementy mogące zastąpić standardowe żarówki. Standardowo spełniają one wymagania norm IP40 i IP67, dzięki czemu mośna je stosować na panelach czołowych urządzeń przemysłowych. Ze względu na ogromną różnorodność oferowanych cokołów fw tym są m.in.: bagnetowe, gwintowe, haczykowe, zatrzaskowe, ,,drutowe" itp.), za pomocą LED-owych lampek mośna zastąpić praktycznie dowolne żarówki stosowane jako elementy podświetlające panele i deski rozdzielcze w samochodach, przyrządach pomiarowych, czy sprzęcie audio. Dzięki temu, śe dostępne są ultra jasne ,,żarówki" świecące na biały kolor, mośna je stosować takśe w lampach pomocniczych w samochodach, lampach rowerowych, latarkach, a nawet jako lokalne oświetlacze wystaw w sklepach. Diody sygnalizacyjne LED są oferowane w oprawkach o średnicach 6, 8, 12, 14 i 22mm. Są one przystosowane do pracy z napięciem zasilającym mieszczącym się w zakresie od 6 do 230VAC/DC fw zaleśności od wersji). Zastosowane w ,,śarówkach" diody LED są starannie wyselekcjonowane i dobrane pod względem jasności świecenia i koloru. Producent dostarcza je świecące na kolory: biały, niebieski (470 i 475nm), zielony (625 i 675nm), czerwony (625 i 660nm), śółty (690 i 687nm), śółtozielony (676nm) tylko w wersji zasilanej napięciem 230VAC) i pomarańczowy (625nm oraz 610nm w wersji zasilanej napięciem 230VAC), są takśe oferowane wersje o bardzo du-śej jasności świecenia. EBT oferuje takśe multidiody na różnorodnych cokołach, świecące na różne kolory, które doskonale nadają się jako elementy zastępujące śarówki
EBT w lampach o niewielkiej mocy. W ofercie znajdują się dwie rodziny takich elementów, nazwane MultiLED (4.. .6 struktur LED w jednej obudowie) oraz StarLED. Spektrum dostępnych kolorów świecenia jest praktycznie identyczne jak w przypadku ,,śarówek" sygnalizacyjnych. Elementy te są dostępne w wariantach dla napięć zasilania: 6, 12, 24, 28, 36, 48 i 60V. Niektóre warianty StarLED-ów są oferowane takśe dla napięć: 12, 24, 28, 130 i 230VAC. Oprócz duśej trwałości (producent deklaruje śywotność opisywanych elementów na co najmniej 100000 godzin), niewielkiego poboru prądu, wysokiej sprawności energetycznej, a takśe mechanicznej oraz elektrycznej kompatybilności ze standardowymi śarówkami, atutem LED-owych ,,śarówek" są m.in.: mośliwość modulowania emitowanego przez nie światła ze stosunkowo wysokimi częstotliwościami, a takśe mośliwość łatwego wyposaśenia ich w dodatkowe układy sterujące, jak np. wbudowany multiwib-rator powodujący ich miganie (w obudowach 8 mm). Przedstawicielem firmy EBT w Polsce jest firma Amiek (iel. (22) 374-02-34). 84 Elektronika Praktyczna 3/2002 PODZESPOŁY Wzmacniacze audio klasy Pierwszym poważnym ostrzeżeniem dla przeciwników audiofiliskich wzmacniaczy pracujących w klasie D było opracowanie firmy Tripatłi - DPP (Digital Power Processing), w wyniku wdrożenia którego pojawiły się na rynku scalone wzmacniacze audio z serii TA. Niestety do dnia dzisiejszego firma Tripatłi nie ujawniła żadnych istotnych szczegółów umożliwiających zrozumienie zasady pracy wzmacniaczy z procesorem DDP, które są określane mianem pracujących w klasie T. Jedyne co wiadomo na pewno, to fakt, że rozbudowana struktura wewnętrzna tych wzmacniaczy, którą w uproszczeniu przedstawiono na rys. 10. Z informacji udostępnionych przez producenta wynika, że technika obróbki sygnału audio DPP - w uproszczeniu - polega na podwójnym modulowaniu sygnału cyfrowego, który steruje wyjściowe tranzystory mocy. W zależności od składowych częstotliwości sygnału wejściowego oraz jego amplitudy jest zmieniany zarówno współczynnik wypełnienia sygnału wyjściowego, bardzo dobre wyniki, wśród których szczególną uwagę zwracają bardzo małe zniekształcenia wprowadzane przez wzmacniacz do sygnału wyjściowego. Na rys. 11 przedstawiono przykładową zależność sprawności energetycznej wzmacniacza od mocy wyjściowej. Na wykresie uwzględniono wszystkie straty energii powstałe we wzmacniaczu, łącznie z powstającymi w tranzystorach końcówki mocy. Jak widać sprawność 70% wzmacniacz osiąga już przy mocy wyjściowej ok. 70W, a dochodzi ona do 82% przy mocy wyjściowej 2 2OW. Kolejny wykres (rys. 12) przedstawia zależności pomiędzy całkowitym współczynnikiem zniekształceń sygnału wyjściowego a mocą wyjściową, z uwzględnieniem różnych impedancji obciążenia. Łatwo zauważyć, że w tym przypadku znacznie korzystniejszy przebieg ma charakterystyka wzmacniacza obciążonego mniejszą impedancją, ponieważ 1% zawartość harmonicznych w sygnale wyjściowym wzmacniacz TA0102A osiąga Wejście wzmacniacza I Procesor kształtujący sygnał wyjściowy Analizator sygnału wejściowego zpredykcja, Wyciszanie Wykrywanie uszkodzeń Detektor przeciążeń Konwersja cyfrowa Stopnie wyjściowe, filtry I obwody sprzężenia zwrotnego Zasilacz Rys. 10. jak i jego częstotliwość. Najwyższą częstotliwość (do l,5MHz) ma przebieg wyjściowy dla sygnałów o niewielkich amplitudach, natomiast przy pełnej mocy wyjściowej spada ona do 200kHz. Wbudowany w strukturę wzmacniacza procesor sygnałowy analizuje zachowanie tranzystorów wyjściowych, elementów filtrujących, a także zasilacza i automatycznie dostosowuje charakterystykę sterowania tranzystorów w taki sposób, aby uzyskać najbardziej korzystne dla słuchacza brzmienie dźwięku. W wyniku zastosowania tak skomplikowanej techniki sterowania stopni końcowych mocy udało się uzyskać część 3 Jak wynika z opracowanej przez nas prezentacji dostępnych na rynku rozwiązań (EPl..3/2002), współczesne wzmacniacze imp ulsowe swoimi parametrami elektroakustycznymi coraz bardziej zbliżają się do bliskich doskonałości rozwiązań kla sycznych. Wyróżniają się natomiast wysoką spra wn ością i możliwością zintegrowania w niewielkiej obudowie kompletnego wzmacniacza o mocy nawet powyżej 200W. W ostatniej części cyklu uchylamy rąbka tajemnicy - na dwóch obecnie najdoskonalszych technicznie przykładach pokażemy w jaki sposób konstruktorzy z dwóch firm zintegrowali w układach scalonych same zalety... przy swo|e] mocy nominalnej 170W. Kolejny przykładowy wykres ^ przedstawiamy na rys. 13. Pokazano 90 80 70 #60 50 na nim poziom 5 40 zakłóceń intermo- oj dulacyjnych, które powstają w wyniku impulsowego sterowania obciążenia. W tradycyj-nych wzmacniaczach impulso- Ry
Ś .---------- --- / / 20Hz...22kHz BW t=1kHz BBM = 14E ns \l R. =4 Vs = +/-45 Av = 20.75 STSTP19 MB20 MOSFET 50 100 150 Moc wyjściowa [W] 200 250 11. Elektronika Praktyczna 3/2002 85 PODZESPOŁY 10 5 2 1 gO.5 | 0L 0,1 0.05 0,02 0,01 1 2 Rys. 12. - 20Hz..Z2kHzBW - f=1kHz - BBM = 25na - Vł-+/-l5V Av=14.8 : ST STP1BNB20 M0SFE1 / i
i j i I i / i i J
Ś i ł J- !^ H =4:
KbuyoBiy wzMunuK cyfro*? 10 20 CO Moc wyjściowa [W] 100 200 OWnk Rys. 15. +10 40 -10 -20 Ś-60 r -70 -60 -eo -100 1 IB 'a * j r Hz MfcHzB W :1 anrw 11 -4 1 (Hz,S0kHz, m-26ni ut = 30Wfchi -4/-46V 3r-11Vmw = 14.8 QTTHUIDV 1 p V n *
j : : . .,-/^ ^^. ^-"-Ś- *S - -1---^ A V- Syanat o bardzo nuto| amplitudzie Wycteont* 80 100 200 600 1k Rys. 13. lOk 20k 30k V- iniiiiiiiiii Rys. ló. wych pracujących w klasie D zakłócenia te są tak dokuczliwe dla częstotliwości ok. lkHs i powyżej, że niezbędne jest silne ograniczanie pasma przenoszenia końcówek mocy. Alternatywa W inny sposób ogranicza zniekształcenia we wzmacniaczach cyfrowych firma Apogee, w laboratoriach której powstała technika impulsowego wzmacniania sygnałów audio, nazwana DDX [Di-lect Digital Amplificaiion). Jest to zaawansowana technika wzmacniania, opracowana z myślą o stosowaniu w au-diofilskich wzmacniaczach z wejściem cyfrowym. Wielu producentów wzmacniaczy, którzy stosują układy firmy Apogee Ifot. 14) w swoich opracowaniach, nazywa je często wzmacniacza- Fot. 14. mi cyfrowymi, co jest oczywiście reklamowym nadużyciem, ale dość wiernie oddaje sposób ich pracy. Schematy blokowe: standardowych wzmacniaczy z wejściem cyfrowym i wzmacniaczy DDX pokazano na rys. 15. Jak widać, we wzmacniaczach DDX pominięto przetwornik C/A i odpowiednio przygotowany sygnał cyfrowy jest podawany od razu na wejście stopnia końcowego dużej mocy. Dzięki pominięciu jednego etapu konwersji sygnału z pewnością można było zmniejszyć wypadkowe zniekształcenia sygnału audio, ale zabieg ten tłumaczy jeszcze tego w jaki sposób udało się konstruktorom firmy Apogee uniknąć zniekształceń typowych dla wzmacniaczy impulsowych. Opatentowane szczegóły tego rozwiązania są skrzętnie przez producenta ukrywane, ale odrobinę tajemnicy ujawniono: stopień końcowy pracuje znacznie bardziej "rozsądnie" niż w klasycznych rozwiązaniach, w których podczas odtwarzania sygnałów o bardzo małej amplitudzie lub ciszy, przez filtr wyjściowy i obciążenie płyną w dwóch kierunkach impulsy prądu o bardzo dużym natężeniu (lewa strona rys. 16). We wzmacniaczach DDX (jak widać na prawej części rys. 16) prąd ze stopnia końcowego płynie prsez obciążenie tylko wtedy, kiedy jest odtwarzany sygnał audio. Odebranie energii zgromadzonej w filtrze wyjściowym i cewce głośnika jest możliwe dzięki zwarciu obciążenia do masy. To proste rozwiązanie zapewnia obniżenie poziomu zakłóceń harmonicznych o co najmniej 16dB w stosunku do rozwiązań klasycznych. Podsumowanie Krótki przegląd nowoczesnych wzmacniaczy impulsowych dowodzi, że do historycznych należą czasy, kiedy jedynym sensownym miejscem ich aplikowania był sprsęt przenośny, w którym najważniejszą rolę odgrywa wysoka sprawność energetyczna i możliwość pracy bez radiatora, a jakość odtwarzanego dźwięku mogła być niezbyt wysoka. Innowacje wprowadzone przez firmy Tripath i Apogee otworzyły wzmacniaczom impulsowym drogę do sprzętu audio najwyższej klasy, czego przykłady publikowaliśmy już w EP. Czekamy na kolejne ciekawe rozwiązania, które z pewnością przedstawimy w EP. Andrzej Gawryluk, AVT Dodatkowe informacje Dodatkowe informacje można znaleźć pod adresem: http://www.puredigitalaudio.org' digitalamplif iers/index.shtml. Noty katalogowe impulsowych wzmacniaczy audio, które zostaty opisane w cyklu artykułów opublikowaliśmy na CD-EP2/2002B. 36 Elektronika Praktyczna 3/2002 MINIPROJEKTY Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość Ich praktyczne] 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 scaionych, 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, Sygnalizator zmiany temperatury Jest to bardzo prosty sygnalizator, wykonany w oparciu o znany układ czasowy typu NE555. Przy jego użyciu można wykonać interesujące układy, które zaskakują prostotą i funkcjonalnością. Jest nim również prezentowany układ sygnalizatora, który ma ostrzegać o nagłym wzroście temperatury ochranianego urządzenia, co może spowodować jego awarię. Czijnk Rys. 1. Budowa sygnalizatora jest niezwykle prosta, składa się on bowiem z (rys. 1): - półprzewodnikowego czujnika temperatury, - generatora sygnału akustycznego. Jako czujnik temperatury można zastosować diodę lub jedno złącze tranzystora PNP. Układ NE555 pracuje jako generator astabilny. Jest to jedno ze standardowych zastosowań tego układu. Schemat elektryczny sygnalizatora przedstawiono na rys. 2. W normalnym trybie pracy układu, kiedy alarm nie jest aktywowany, wejście Re-sei (R) układu NE555 jest zwarte do masy poprzez wprowadzony w stan przewodzenia tranzystor Tl. Po zwiększeniu się temperatury w otoczeniu czujnika, napięcie na diodzie czujnikowej jest na tyle małe, że tranzys- +B...12V tor przestaje przewodzić i uruchamia się generator akustyczny wykonany na układzie USl. W głośniku lub słuchawce usłyszymy dość głośny akustyczny sygnał ostrzegawczy. Dioda użyta jako czujnik temperatury jest diodą germanową. Pozwala ona na obniżenie temperatury zadziałania układu alarmowego do około 80C. Dla diod germanowych maksymalna temperatura pracy wynosi około 80C, a dla krzemowych 160C. Montaż i uruchamianie nie powinno nastręczać żadnych kłopotów, ponieważ (jak to widać na rys. 3) schemat montażowy układu jest bardzo przejrzysty. Praktycznie zaraz po zmontowaniu układ zaczyna pracować. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl AVT 7T1 oceho pan GQRSKT Rys. 2. Rys. 3. WYKAZ ELEMENTÓW Rezystory Rl: lOOkO R2: lkQ R3: R4: POT I: 47 OkD Kondensatory Cl: lOOnF C2: 47nF C3: 22^F Półprzewodniki Dl: diodo germanowa Tl: BC517 USl: NE555 Płytka drukowana jest dostępna w A VT - oznaczenie AYT-1334. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http:llwww.ep.conj.pl/7pdfl marzecQ2.htm oraz na płycie CD-EP03/2002 w katalogu PCB. Elektronika Praktyczna 3/2002 87 MINIPROJEKTY Inteligentny sterownik wentylatora Sterowanie pracą wentylatorów stało się obecnie sztuką porównywalną ze stosowaniem systemów mikroprocesoro wych. Wszystkie związane z tym problemy starają się rozwiązać producenci układów scalonych. Do grona producentów takich sterowników dołączył Microchip - jego opracowania przedstawiamy w ańykule. Komutację silnika wentylatora, gdy wirnik kręci się od bieguna do bieguna, można obserwować poprzez impulsy pobieranego prądu. Właściwość tę wykorzystano w układach TC652 i TC653 (scalonych sterownikach wentylatorów) produkowanych przez firmę Microchip Technology. Ich właściwość, nazwana przez producenta "FanSense", polega na generowaniu sygnału błędu na podstawie analizy impulsów komutacji. Ich brak jest odbierany jako zablokowanie wentylatora lub jego uszkodzenie. Rezystor pomiarowy RSENSE (rys. 1) tak powinien być dobrany, aby pod wpływem nominalnego prądu występował na nim spadek napięcia około 0,5V. Wentylator jest sterowany przez tranzystor pobudzany sygnałem impulsowym o częstotliwości 15Hz z modulacją szerokości impulsów (PWM). Układ scalony Tab.1. TC652/3 pod wpływem temperatury zmienia współczynnik wypełnienia sygnału. Poniżej wewnętrznie ustalonego progu temperaturowego współczynnik ten jest ustalony na 40% i wzrasta do 100% w sześciu pośrednich stopniach. Próg temperaturowy jest ustalony przez producenta. Układy są oferowane dla zakresów temperatury zawartych w tab. 1. Litera A B C D E LJ_ G Temperatura C 25 30 35 40 45 50 55 Elektronika Praktyczna 3/2002 87 MINIPROJEKTY Litery te wchodzą w skład kodu zmówienia układu. Pierwsza litera oznacza próg temperaturowy dla współczynnika wypełnienia 40%, a druga 100%. Preferowane są następująco oznaczone układy (652 i 653): TC652AC 25Cdo35C TC652AE 25Cdo45C TC652BE 30Cdo45C TC652AG 25Cdo55C Układ TC653 ma dodatkowy tryb wyłączenia (współczynnik wypełnienia 0% zamiast 40%). Układy TC652 i TC653 wyposażono w sygnalizację przekroczenia górnego progu temperaturowego o 10C. Układ działa przy napięciu zasilania od 2,8V do 5,5V i pobiera mniej niż IOOjiA (nie licząc prądu pobieranego przez obciążenie dołączone do wyjścia PWM). EE +Vfan I C1 100n FAN SHDN TOVER PWM IC1 TC652 TC653 FAULT SENSE Rys. 1. WYKAZ ELEMENTÓW Kondensatory Cl, C7: 220nF C2...C6: 1000^F/25V C9, C10: 220^F/25V C8, Cli: lOOnF Półprzewodniki Dl, D2: LED Ml: mostek prostowniczy 1A Ul: TDA8138A Różne Transformator TS12/004 Bl: bezpiecznik lóOmA Zaciski laboratoryjne (4szt.) Włgcznik miniaturowy (1 szt.) Złgcze śrubowe ARK2 (2 szt.) Złgcze Śrubowe ARK3 (1 szt.) Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 87...88 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. 88 Elektronika Praktyczna 3/2002 MINIPROJEKTY Detektor sygnałów w.cz. Ten prosty wskaźnik służy do detekcji sygnałów wielkiej częstotliwości generowanych przez urządzenia radiowe. Za jego pomocą możemy m.in. lokalizować ukryte mikro nad ajn iki (pluskwy), testować telefony komórkowe, radiotelefony i telefony bezprzewodowe. Maksymalna częstotliwość sygnału w.cz wykrywanego przez wskaźnik wynosi około lOOMHz. Testy wykazały, że układ doskonale sprawuje się również przy wyższych częstotliwościach. Na rys. 1 przedstawiono schemat elektryczny układu. W detektorze możemy wyodrębnić dwa bloki: - obwody wejściowe z anteną, - wzmacniacz ze wskaźnikiem poziomu. Ze względu na niski pobór prądu przez detektor zasilanie realizowane jest z ba- Układ został zmontowany na płytce drukowanej wielkości pudełka do zapałek. Mozaikę ścieżek płytki drukowanej wraz z rozmieszczeniem elementów przedstawiono na rys. 2. Jak widać nie ma skomplikowanego wzoru, więc nie powinno być kłopotów z jej wykonaniem oraz ze zmontowaniem i uruchomieniem układu. Krzysztof G órs ki, AVT +9V Rys. 1. terii o napięciu 9V. Jako wskaźnik poziomu zastosowano wyjęty ze starego magnetofonu wskaźnik wystero-wania. Natomiast jako antenę możemy zastosować najzwyklejszy kawałek przewodu o długości około 50cm lub fabryczną antenę teleskopową. Rys. 2. WYKAZ ELEMENTÓW Rezystory Rl: 1MQ R2: lkQ R3, R4: lOOka R5: 100Q Kondensatory Cl: 5,6pF C2: lOOnF C3: lOOpF C4, C5: 10^F Có: 15nF Półprzewodniki D1...D4: 1N4148 US1: TLC272 Różne LI: l^H Ml: wskaźnik 50m.A A: antena teleskopowa (przewód 50cm) Płytka drukowana jest dostępna wAVT- oznaczenie AVT-1335. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp: 11 www. ep.com.pl/?p df/ marzecO2.htm oraz na płycie CD-EP03/2002 w katalogu PCB. 88 Elektronika Praktyczna 3/2002 PROJEKTOWANIE Zalecenia projektowe dla tanich systemów bezprzewodowej transmisji danych cyfrowych, część 2 Parametry systemu radiowego: co trzeba wiedzieć? Prsy projektowaniu systemu radiowego do transmisji danych należy znać kilka podstawowych parametrów. Dzięki temu projektant lepiej uświadomi sobie czynniki wpływające na prace, takiego łącza oraz na jego niezawodność. Omówiono dotychczas takie główne parametry systemu jak moc wyjściowa nadajnika i czułość odbiornika. Do pozostałych należą: - zakres dynamiczny odbiornika, - tłumienie niepożądanych sygnałów w kanale, - selektywność sąsiednich kanałów , - stabilność częstotliwości wzorcowej, - blokowanie odbiornika, - tłumienie odbicia lustrzanego, - parametry modulacji. Są to wszystkie ważne parametry, które wprawdzie nie wpływają bezpośrednio na jakość połączenia, ale są ściśle związane z niezawodnością transmisji w systemie o wielu nadajnikach. Kluczowe pytanie brsmi: "Jak zachowa się system, jeśli w środowisko jego pracy wyemituje energie, "obcy" nadajnik"? Zakres dynamiczny (dynamie rangę} określa maksymalną zmianę, mocy wejściowej odbiornika, prsy której sygnał zostanie prawidłowo zdemo-dulowany. Innymi słowy, poziom danego sygnału może wahać sie. od granicy czułości do sumy granicy czułości i zakresu dynamicznego. Tłumienie niepożądanych sygnałów w kanale (CCR -co-channel rejeciion} charakteryzuje zdolność odbiornika do demodulacji właściwego sygnału bez przekroczenia Rys. 8. pewnego poziomu ]ego zniekształcenia spowodowanego obecnością innego, niepożądanego sygnału, jeśli oba sygnały używają nastawionej częstotliwości odbiornika. Parametr ten podaje się w dB. Poziom lOdB oznacza, że jeśli właściwy sygnał ma poziom o co najmniej lOdB wyższy niż sygnał niepożądany, to jego demodulacja zostanie przeprowadzona prawidłowo (współczynnik błędu w bitach poniżej 10~3). Jeśli tego parametru nie podano w specyfikacji katalogowej, można przyjąć jego wartość na około 12...14dB I typowy próg demodulatora FSK). Na rys. 8 przedstawiono typowy model systemu transmisyjnego. Rozważmy układ zawierający wiele nadajników używających tej samej częstotliwości. W jakiej odległości powinien znajdować się niepożądany nadajnik, aby dany odbiornik zdemodulo- 20 10 -10 -20 0,1 Rys. 9, W drugiej części artykułu omawiamy n aj ważni ejs ze parametry układów stosowanych w torach radiowych, które mają istotne znaczenie dla jakoś ci i niezawodn oś ci transmisji danych. wał właściwy sygnał? Zależności między odebranymi mocami są następujące: a w decybelach: Przyjmując, że oba nadajniki mają takie same anteny: JU " W Ś kłfnpif*,) Z PM -20- kefnura)+ CCR skąd po redukcji: +20- JcJ !?*L. U cat Wyrażenie to ilustruje ważną relację w środowisku CCR
Częste* hvość [Wiz] Rys. 11. wielu nadajników. Ustalając eliminację obcych sygnałów w kanale na poziomie 12dB oraz przyjmując, że nadajniki mają identyczną moc wyjściową i zysk kierunkowy anteny, otrzymuje się zależność między tłumiennością a odległością pokazaną na rys. 9. Aby odbiornik prawidłowo demodulował sygnał właściwy TXi bez interferencji ze strony sygnału TX2, to stosunek range2 do ranget musi być co najmniej czterokrotny. Selektywność sąsiednich kanałów (ACS - adjacent channel selectivity) odbiornika definiowana jest przez ETSI jako zdolność do demodulacji otrzymanego sygnału na granicy czułości, przy składowej sinusoidalnej (rys. 10). To znaczy, że jeśli parametr ACS w systemie kanałowym 25kHz przyjmuje wartość 30dB, de-modulacja właściwego sygnału na poziomie granicy czułości może zachodzić przy składowej sinusoidalnej o mocy wyższej o 30 dB niż moc odbieranego sygnału o częstotliwości sąsiedniego kanału. Stabilność częstotliwości wzorcowej (reference freąuen-cy stability) ma wpływ na selektywność sąsiednich kanałów. Odchylenie od idealnej częstotliwości wzorcowej spowoduje odpowiednie odchylenie transmitowanej częstotliwości oraz przesunięcie częstotliwości pośredniej (IF) w odbiorniku. Objawi się to przesunięciem środkowej częstotliwości filtru pośredniej częstotliwości (rys. 10). Blokowanie odbiornika (blocking performace) to parametr służący do opisania zdolności odbiorników do poprawnego działania, mimo wpływu silnie interferującego sygnału RF. Jest on blisko związany z selektywnością sąsiednich kanałów, lecz dotyczy interferencji sygnału du- żej mocy z pasma leżącego względnie blisko częstotliwości właściwego sygnału (zwykle 10...200MHz od używanego kanału). Na przykład wpływ sygnału GSM o częstotliwości nośnej 900MHz na urządzenie pracujące w paśmie 868MHz. Definiuje się wiele parametrów związanych z tłumieniem, spośród których większość opisuje liniowość i zysk energetyczny w pierwszych stadiach odbioru sygnału. Wyobraźmy sobie urządzenie zakłócające dużej mocy powodujące nasycenie wejściowego wzmacniacza. ,,Nałożony" na sygnał tego urządzenia sygnał właściwy nie jest zauważalny dla odbiornika, ponieważ z powodu nasycenia wzmacniacza wejściowego przez sygnał inter-ferujący traci się informację o fazie i/lub amplitudzie sygnału właściwego. Na skutek nieodłącznej nieliniowości wzmacniaczy i mieszacza odbiornika, rzeczywisty wpływ tego zjawiska na demodulację zależy zarówno od częstotliwości jak i amplitudy sygnału interferującego. Zwykle przeciwdziała się blokowaniu przez użycie między odbiornikiem i anteną wąskopasmowych filtrów SAW. Niestety, jest to drogie rozwiązanie. Antena i obwód dopasowujący mają ograniczone pasmo przepustowe, zwykle jednak zbyt szerokie, aby osiągnąć pożądany efekt. Dobre rozwiązanie tego problemu polega na zidentyfikowaniu wszelkich potencjalnych źródeł interferencji dużej mocy, które mogą występować w konkretnym zastosowaniu oraz sprawdzenie parametrów odbiornika pod względem blokowania danych częstotliwości. Na przykład, w przypadku pasma 43 3 MHz, potencjalnie zakłócającym może być system komunikacji Tet-ra (41O...4 3OMHz), którego maksymalna moc wyjściowa wynosi 25W (44dBm). Dużo informacji daje pomiar czułości w funkcji przesunięcia częstotliwości źródła interferencji. Na rys. 11 przedstawiono wyniki takiego pomiaru dla jednoukładowego transceivera nRF401. Krzywa pokazuje różnicę między mocą źródła interferencji, a odebranym sygnałem, przy standardowym poziomie czułości (0 dB). Środkowa częstotliwość odbiornika ustawiona jest na 433,92MHz. Jak łatwo zobaczyć, transmisja nie zostanie przerwana, jeśli in-terferujący sygnał 420MHz nie będzie miał poziomu wyższego o 65dB niż sygnał właściwy. Przy czułości -HOdBm, sygnał zakłócający nie może przekroczyć poziomu -45dBm na wejściu anteny. Dla środkowej częstotliwości sygnał urządzenia interferującego musi mieć poziom niższy o 9dB od właściwego, co odpowiada parametrowi eliminacji ,,obcych" sygnałów w kanale. Tłumienie odbicia lustrzanego (MIA - mirror image at-tenuation) określa, w jakim stopniu tłumiona jest częstotliwość odbicia lustrzanego w odbiornikach superhetero-dynowych (odbiornikach z częstotliwością pośrednią). Odbiorniki superheterodyno-we stosuje się często ze względu na dużą selektywność, lecz podczas ich stosowania trzeba uważać, aby uniknąć interferencji z odbiciem lustrzanym. We wszystkich odbiornikach heterody-nowych występuje częstotliwość odbicia lustrzanego na danym kanale, co może powodować wewnętrzne interferencje (rys. 12). Odbicie lustrzane, znajdujące się poniżej częstotliwości generatora lokalnego, pojawi się również na częstotliwości pośredniej obok sygnału właściwego. W związku z tym, aby uniknąć zakłóceń lub utraty czułości, częstotliwość odbicia lustrzanego musi być wytłumiona. W tym celu stosowano zwykle zewnętrzny filtr na wejściu anteny, zaś od niedawna wykorzystuje się specjalne metody filtracji w torze odbiorczym. Ponieważ odbicie lustrzane pojawia się po zmieszaniu sygnałów wewnątrz pasma filtru , częstotliwości pośredniej, to maksymalna, zapewniająca demodulację różnica mocy Rys. 13. Częstotliwość generatora lokalnego (LO) Rys. 12. między obydwoma sygnałami jest określana różnicą poziomów tłumienia odbicia lustrzanego oraz tłumienia ,, obcych" sygnałów w kanale. To znaczy: jeśli poziom tłumienia odbicia lustrzanego wynosi 35dB, zaś poziom tłumienia obcych sygnałów w kanale 12dB, to w porównaniu z sygnałem właściwym moc sygnału odbicia lustrzanego nie może przekraczać 23 dB (35dB-12dB). Przy wyborze odpowiedniego, dla konkretnego systemu, układu nadawczo-odbior-czego należy również rozważyć metodę modulacji. Do niedawna, w niewymagających licencji pasmach LPRD stosowane były metody kluczowania amplitudy (ASK, znane także jako kluczowanie dwu-pozycyjne - on-off keying, OOK). Mimo tego, że są to rozwiązania proste o umiarkowanych kosztach, ich wadą jest duża zawodność w przypadku interferencji wewnątrz pasma. W systemach ASK/ OOK odpowiednikiem znaku ,,1" jest sygnał częstotliwości nośnej, zaś znaku ,,0" - jego brak. Nie trzeba więc przekonywać, że w zależności od czułości odbiornika, obecność w kanale choćby bardzo słabego niepożądanego sygnału może zostać zinterpretowana jako znak ,,1". Kluczowanie częstotliwości z przesuwem (FSK) jest zupełnie odmiennym podejściem, w którym każdemu z dwóch znaków logicznych odpowiadają wartości częstotliwości: - DATAFSK="1" ->f"l" = fcentre+f, > Czas >Czas 98 Elektronika Praktyczna 3/2002 PROJEKTOWANIE Modulncla GM8K Modulacja FSK i?-60 I"80 8-100 & -120
1 N t lit- 1 "i Xi, 1* 1 H
S8 Częstotmotó [kHz] Rys. 14. - DATAFSK="0" ->f"0"=fcentre-f. Modulacie GMSK i GFSK, to rozszerzone wersje kluczowania częstotliwości z przesunięciem stosowane w celu optymalizacji szerokości pasma, to znaczy zapewnienia maksymalnej liczby bitów/Hz transmitowanych w kanale. W kluczowaniu z przesuwem częstotliwości z filtracją Gaussa (GFSK), przed modulacją przebiegu nośnego dane są filtrowane przez filtr Gaussa. Na rys. 13 zilustrowano zasadę jego działania. Efektem zastosowania tego filtru jest węższe spektrum mocy modulowanego sygnału, co z kolei pozwala na zwiększenie szybkości transmisji w tym samym kanale. Kluczowanie pTZesuwu z minimalną filtracją Gaussa (GMSK) oznacza kluczowanie, w którym szybkość transmisji zwiększa czterokrotna dewiacja częstotliwości. Przykładowe widma transmisji z modulacjami GMSK i FSK pokazano na rys. 14. Interpretacja danych katalogowych układów RF Mimo, że celem specyfikacji danych katalogowych jest prezentacja parametrów układów, nie zawsze tak jest. Duża konkurencja na rynku doprowadziła do wypracowania bardzo pomysłowych sposobów przedstawienia definicji parametrów, tak aby wydawały się ,,lepsze" niż w rzeczywistości. Kluczowym wymogiem dla projektanta systemu jest zatem znajomość pracy układu, dzięki czemu jest on w stanie dokonać porównania między różnymi opcjami. Duża liczba sprzedawców elementów systemów bezprzewodowych zmusza do ostrożnej oceny parametrów zawartych w specyfikacjach katalogowych. Przyda się S -ao f "" g -60 B1 i "^ g-100 0. -120
1 V / 1 i i 1
i i * 8 s g Częstotliwość [kHz] więc umiejętność rozszyfrowywania ,,sprytnie" napisanych specyfikacji. Jeśli nie zostały podane warunki pomiaru jednego lub kilku ważnych parametrów, może mieć to swoje uzasadnienie. Sprawdzenie kilku podstawowych parametrów może oszczędzić nam wiele czasu i frustracji, jeśli zdamy sobie od razu sprawę, że dany układ nie odpowiada wymogom naszego systemu. Wobec tego sprawdzić należy: Szybkość transmisji danych Parametr ten powinien przedstawiać rzeczywistą szybkość, z jaką dane są przesyłane torem radiowym. Niektóre systemy przy transmisji danych z maksymalną szybkością używają kodowania Manchester (rys. 15). Pojęcia takie jak szybkość transmisji danych [datarate, chiprate), szybkość transmisji w bodach [haudrate] oznaczają ilość informacji, jaka może być przesyłana w układzie RF w jednostce czasu. Należy upewnić się co do sposobu, w jaki producent układów definiuje ten parametr. Czułość (sensivity) W obliczeniach szybkości transmisji czułość jest ważnym parametrem. W przypadku systemów, w których występuje wiele szybkości przesyłania danych i szerokości pasma filtru częstotliwości pośredniej, czułość powinna być podana przy maksymalnej (lub żądanej) szybkości przesyłania danych. Czułość w zasadzie spada wraz z szerokością pasma filtra częstotliwości pośredniej. Selektywność sąsiednich kanałów (ACS) Należy upewnić się, że parametr ten określono dla sąsiedniego kanału, a nie dla kanału znajdującego się dalej od kanału, na którym odbierany jest sygnał. Parametr ten wyznaczony dla bardziej odległych częstotliwości jest zwykle lepszy niż w rzeczywistości. Niektórzy sprzedawcy podają parametr tłumienia sygnału z sąsiednich kanałów [adjacent channel attenuation - ACA), co nie oznacza tego samego, co selektywność sąsiednich kanałów (ACS). ACA określa jedynie tłumienie sygnału w danym odstępie od używanego kanału, nie zaś dopuszczalną moc tego sygnału, przy której demodulacja nie zostaje przerwana. Zwykle parametr ACS ma mniejszą wartość niż ACA. Pobór mocy Sprawdzić trzeba, czy pobór mocy podano dla pasma częstotliwości, w którym urządzenie ma pracować, a także jaki jest pobór prądu stałego w każdym trybie pracy. Często, w celu przyciągnięcia uwagi nabywcy, podaje się pobór mocy w cyklu nadawanie-odbiór o określonym przez producenta współczynniku wypełnienia. Wymagania w stosunku do zastosowanych podzespołów Dotyczą one przede wszystkim parametrów oscy-latora wzorcowego. Jego stałość częstotliwości jest określana maksymalnym dopuszczalnym odchyleniem (w ppm) od wartości częstotliwości nominalnej. Należy upewnić się, czy wartość katalogowa określona jest dla danej szerokości pasma w kanale i dewiacji częstotliwości. W przypadku niektórych układów nadawczo-odbior-czych obniża się wymagania w stosunku do jakości kwarcu. Odbiornik ,,śledzi" odbierany sygnał ,,dopasowując" się tak, aby odnaleźć transmitowany sygnał. Chociaż podejście takie zapewnia dobrą komunikację 1/DATARATE DATA DATA zakodowane w kodzie Manchester między dwoma urządzeniami, dryft częstotliwości nadajnika musi zgadzać się z odstępem kanałów w systemie. To znaczy, że użycie kwarcu ą30ppm w systemie 868MHz z 25kHz odstępem między kanałami ustali w najgorszym przypadku dryft częstotliwości nadajnika na 26kHz. Należy pamiętać, że koszt oscyla-tora kwarcowego jest proporcjonalny do zakresu temperatury, w którym gwarantowane są jego parametry. Czas przełączania (switching time) W specyfikacji katalogowej powinien być podany czas przełączania między różnymi trybami pracy (to znaczy między trybem transmisji a odbioru, stanem wyłączenia a trybem odbioru itp.). Trzeba też doliczyć czas na ,,rozgrzewkę" lub wstępne sekwencje. Niektóre z odbiorników, w celu uruchomienia lub synchronizacji demodulatora, potrzebują długich sekwencji synchronizujących, np. "10101010...". Podsumowanie Intencją autora było przybliżenie problematyki stosowania gotowych, zintegrowanych układów RF. Zazwyczaj pierwszy krok ku poszerzeniu wiedzy jest związany z umiejętnością formułowania właściwych pytań. Autor ma nadzieję, że udało mu się choć w pewnym stopniu uchylić drzwi prowadzące do fascynującego świata bezprzewodowej komunikacji. Frank Karlsen. Nordic VLSI Artykuł publikujemy za zgodą autora i firmy Nordic VLSI. Za pomoc w przygotowaniu publikacji dziękujemy Panu Witoldowi Baryckiemu z firmy Eurodis, która jest dystrybutorem firmy Nordic w Polsce. 1 1 Rys. 15. Elektronika Praktyczna 3/2002 99 ELEKTROMELJHANICZNŁEFEKT AUDJ LESLIE INTERNETOWY INTERF m DLA MIKROKONTROLERA iy smowo -WEK Hriteir story FIRMY F^H iJJlŁll SPRZĘT: JEJ IDENTYFIKACJI BMICONDUCTORS łŚSKOP CYFROWY BIBLIOTEKA EP IV ^Bibliotece LP" 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 polki, 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, 93), Chcemy w ten sposób udostępnić je Czytelnikom EP, Andrew Bateman, lain Paterson-Stephens: "The DSP Handbook Prenitence Hali 2002, zawiera CD-ROM warto informację o budowie procesorów sygnałowych oraz sposobach ich komunikacji z otoczeniem. Autorzy omawiają mikroprocesory sygnałowe różnych rodzin, dzięki czemu czytelnik może zorientować się, do jakich celów należy stosować DSP określonych rodzin (m.in. DSP56xxx firmy Motorola, TMS320C54x/C6xxx/ C62xx/C67xx firmy Texas Instruments i 2106x SHARC firmy Analog Devices). Drugą część książki poświęcono omówieniu przykładowych aplikacji z zastosowaniem podstawowych algorytmów cyfrowej obróbki sygnałów (np.: generacja sygnałów, operacje arytmetyczne, demodulacja sygnałów, filtry różnego rodzaju, analizy sygnałów widma, FFT, a także efekty audio: kompresja i dekompresja sygnałów audio). Ostatnia część książki nosi intrygujący tytuł: "Theory and practice". W dwóch rozdziałach zawarto, podany w bardzo przyjazny sposób, prezentację teorii niezbędnej do zrozumienia działania systemów DSP. Ten, czysto teoretyczny wykład, wzbogacono przykładem procesora audio wykonanego w oparciu o gotowy zestaw ewaluacyjny C6xxxEVM. Do książki dodano CD-ROM z przykładowymi programami (w wersjach pełnych i ewaluacyjnych), których zadaniem jest zilustrowanie możliwości cyfrowej obróbki sygnałów. Część z tych programów wykorzystuje do konwersji A/C i C/A karty dźwiękowe PC, co znacznie obniża koszt prowadzenia samodzielnych prób. " Elektroniki RraktyomoJ Po raz pierwszy prezentujemy w "Bibliotece EP" książkę w języku angielskim, wydaną przez jedno z największych wydawnictw edukacyjnych - Prenitence Hali. Książka poświęcona jest fascynującej, lecz mało upowszechnionej tematyce DSP (Digital Signal Processing), prezentację której przeprowadza dwóch wysokiej klasy specjalistów. Autorzy - jak wynika z not biograficznych są specjalistami w tej dziedzinie, co potwierdza wyczerpujący i bardzo przejrzysty wykład poprowadzony w książce - doskonale łączą swoje umiejętności praktyczne z teorią, dzięki czemu możliwe jest bezproblemowe zrozumienie przez przeciętnego Czytelnika trudniejszych fragmentów wykładu. Niestety, przy założeniu, że czytelnik dobrze posługuje się językiem angielskim. Książkę podzielono na trzy części zawierające 10 rozdziałów. Wstęp pod tytułem "DSP - what is it?" wprowadza czytelnika w obszary aplikacyjne DSP. Zawarto w nim także podstawowe informacje ułatwiające orientowanie się czytelnika w świecie DSP. W drugim rozdziale zawarto informacje o sprzęcie potrzebnym do prowadzenia eksperymentów z procesorami sygnałowymi. W dwóch kolejnych rozdziałach za- Po kilkunastu sesjach spędzonych z prezentowaną książką muszę podzielić się następującymi uwagami: - nie ma wśród krajowych specjalistów chętnych do tak przyjaznego przedstawienia tej trudnej tematyki, - tak wartościowe książki nie są zbyt często wydawane w języku polskim, - cena oryginalnego wydania książki jest, jak na krajowe warunki, wysoka - taka jakość musi koszto- Więcej informacji można znaleźć na stronie: www.pearsoneduc.com. Książka jest dostępna w Polsce dzięki firmie Alfine (www.alfine.com pl). AL Williams: "Programowanie Windows 2000", 576 str., zawiera CD-ROM, Helion 2001 Pisanie programów pracujących pod kontrolą systemów Windows jest obecnie łatwe, szybkie i przyjemne. Dzieje się tak dzięki systemom pro grami stycz- nym, umożliwiającym pisanie nawet zaawansowanych aplikacji niedoświadczonym programistom (na szczęście minęły czasy, gdy napisanie programu zawierającego jakiekolwiek menu budziło powszechne uznanie]. Niestety, korzystanie z tych systemów programistycznych, oprócz niezliczonych zalet, powoduje m.in. rozleniwienie programistów. Objawia się to zanikającym pociągiem do dalszego kształcenia się (po co mam uczyć się nowych rzeczy, skoro wszystko w moich programach działa!], czego efektem jest niewykorzystywanie możliwości najnowszych systemów operacyjnych, a więc tworzenie nieefektywnych aplikacji. Książka nie jest kompletnym podręcznikiem programowania dla Windows 2000, jednak porusza najistotniejsze zagadnienia, charakterystyczne dla tego systemu (czasem również dla wcześniejszych wersji Windows]. Tworzenie wąt- Elektronika Praktyczna 4/2002 133 BIBLIOTEKA EP Legenda: ków i procesów, synchronizacja, niutek-sy, semafory, komunikacja między procesami, gniazda, zaawansowane metody operacji wejścia-wyjścia na plikach, współdzielenie pamięci, korzystanie ze stosu i stery, tworzenie aplikacji konsoli, korzystanie z rejestru, pisanie programów usługowych - to tylko niektóre hasła, które przestaną byc tajemnicą po przeczytaniu książki. Przykładowe programy zawarte w książce są napisane w języku Visual C++. Do książki jest dołączona płyta CD-ROM, na której, oprócz kodów źródłowych przykładowych programów z książki, można znaleźć testowe wersje narzędzi wspomagających pracę programisty. Wybór programów na płycie wydaje się raczej niewłaściwy, gdyż w książce nie poświęcono zbyt wiele miejsca programowaniu baz danych, a znaczna część płyty zawiera aplikacje SQL-owe. Miejsce na płycie można było wykorzystać znacznie lepiej! Książka jest przeznaczona dla programistów chcących wykorzystywać w tworzonych aplikacjach możliwości oferowane przez Windows 2000 (a więc i Windows XP]. Z pewnością może byc również atrakcyjną propozycją dla innych programistów, gdyż można w niej znaleźć omówienie sposobu działania kilku najistotniejszych podsystemów systemu operacyjnego, a np. wiedza o sposobie zarządzania pamięcią operacyjną może czasem wskazać najwłaściwsze rozwiązanie danego problemu. Dużą zaletą książki jest sposób "sprzedawania" informacji przez autora - mimo dosyć trudnej tematyki, książkę czyta się naprawdę lekko. "Pomiary parametrów instalacji elektrycznych w teorii i praktyce", Merserwis 2002 / Firma Merserwis, która jest dystrybutorem firmy Metrel, podjęła się trudnego zadania - samodzielnie wydała bowiem książkę będącą tłumaczeniem opracowania firmy Metrel, w którym przedstawiono teoretyczne i praktyczne aspek- vrv-^^" t t NMURY PARAMETRÓW INSTALACJI ELEKTRYCZNYCH w icwu i praktyce ty różnego rodzaju pomiarów elektrycznych, a także ich specyfikacje zgodne z normami europejskimi. Przedstawiono sposoby pomiaru wszystkich parametrów związanych z energiąi elektryczną (łącznie z analizą harmonicznych] oraz opisano osprzęt elektrotechniczny, jak np. wyłączniki różnicowoprądowe, zabezpieczenia przepięciowe, uziomy itp. Zarówno zawartość merytoryczna, jak i szata edytorska książki są bez zarzutu. Jedynym mankamentem książki jest jej ukierunkowanie na prezentację oferty firmy Metrel. Nie jest to oczywiście wada, ponieważ metody wykonywania pomiarów są uniwersalne dla wszystkich przyrządów, niezależnie od tego, kto jest ich producentem. Za kryp to reklamę 1 lutownicę mniej niż wynikałoby z obiektywnej oceny zawartości książki. Żyta Zachara, Krzysztof Wojtuszewicz "PSpice - symulacje wzmacniaczy dyskretnych", zawiera dyskietkę, Mikom 2 001 Legendarna juś spółka autorska przygotowała dalszy ciąg prezentacji możliwości programu symulacyjnego PSpice, tym razem związanych z projektowaniem i analizą działania różnego rodzaju wzmacniaczy budowanych z elementów dyskretnych. Jak dowodzą listy przychodzące do redakcji, tematyka podjęta przez autorów cieszy się dużym zainteresowaniem wśród elektroników, którzy od wielu już lat są pozbawieni rzetelnych opracowań poświęconych tej tematyce. Operując doskonale dobranymi przykładami, autorzy prezentują m.in. sposoby ustalania punktu pracy elementów półprzewodnikowych (także we wzmacniaczach z tranzystorami polowymi], wpływ wartości elementów pasywnych na pracę wzmacniaczy, różne układy pracy tranzystorów, wraz najważniejszymi parametrami tak zbudowanych wzmacniaczy, metody przesuwania poziomu napięcia stałego we wzmacniaczach wielostopniowych, przyczyny powstawania i metody książka wybitna, polecamy! książka o dużych walorach praktycznych, polecamy! może się przydać daleka od doskonałości nie warto kupować pomiaru zniekształceń. Wiele można się także dowiedzieć na temat przyczyn ograniczania pasma przenoszenia. Prezentowana książka powinna z pewnością zainteresować wszystkich użytkowników symulatora PSpice (w dowolnym jego wydaniu], a także wszystkich konstruktorów zainteresowanych poznaniem tajników konstruowania wzmacniaczy budowanych z elementów dyskretnych. O profesjonalizmie i poważnym traktowaniu autorów czytelników świadczy m.in. ujęcie w zestawieniu klas pracy wzmacniaczy klasy T (nieopisywanej w większości krajowych publikacji], a także wielu klas stosowanych w bardzo specyficznych aplikacjach lub już nieużywanych. Motto książki: "Książkę dedykujemy tym wszystkim, którzy chcą nie tylko wiedzieć więcej, ale i umieć lepiej" jest bardzo trafione. Polecamy! WZMACNIACZY 134 Elektronika Praktyczna 4/2002 AUTOMATYKA Firma Automatic System wprowadziła do sprzedaży mikroprocesorowy moduł wejść analogowych współpracujący z magistralą MODBUS RTU. W artykule przedstawiamy jego podstawowe parametry i możliwości. Moduł wejść analogowych serii W układach automatyki ważnymi elementami są czujniki pomiarowe umożliwiające pomiar zarówno wielkości elektrycznych (prąd, napięcie, częstotliwość, itp.) jak i nieelektrycznych (przepływ, ciśnienie, pH, gęstość). Czujniki te są połączone z przetwornikami zamieniającymi niestandardowy sygnał z czujnika na standardowy sygnał elektryczny, prądowy lub napięciowy, Sygnał prądowy jest częściej stosowany ze względu na większą odporność na zakłócenia, ale łatwiej jest wygenerować w przetworniku sygnał napięciowy niż prądowy. Z wyjściem prądowym nie ma żadnych problemów w układach ze wspólnym plusem zasilania (rys. l). Natomiast przy wspólnej masie układ wyjściowy zaczyna się nieco komplikować. Układy wejść prądowych również wymagają sporych ,,zabiegów" konstrukcyjnych i programowych. Mimo takich problemów, w module wejść analogowych MWA812 zrezygnowano z wejść napięciowych, a skupiono się na wejściach prądowych o zakresie od Odo 20mA. Standardowo moduł jest wyposażany w wejścia /wyjść i a analogowe/cyfrowe. Istnieje jednak możliwość zrezygnowania z niektórych funkcji, co Fta ma wpływ na obniżenie ceny. Moduł jest jednym z serii modułów AS-Line, zaprojektowanych z zastosowaniem najnowocześniejszych podzespołów elektronicznych renomowanych firm światowych. Główną funkcją modułu jest przetwarzanie sygnału z wejść analogowych. Pozostałe funkcje są dodatkowymi. Moduł w postaci karty został umieszczony w obudowie serii Combi-Norm firmy Bopla. Na płycie czołowej został umieszczony wyświetlacz LCD oraz czteroprzyciskowa klawiatura. Sygnały analogowe Moduł MWA812 przeznaczony jest do przetwarzania standardowego sygnału analogowego 0...20mA lub 4...20mA na sygnał cyfrowy przesyłany łączem RS485. Jest wyposażony w osiem wejść prądowych, dwa wyjścia analogowe, sześć wejść i dwa wyjścia cyfrowe. Wejścia analogowe mogą pracować jako wejście niesymetryczne względem wspólnej masy lub jako wejścia różnicowe i są przystosowane do pracy z czujnikami pasywnymi i aktywnymi (rys. 2). Wejścia różnicowe są przewidziane do współpracy z przetwornikami, które nie mogą pracować w układzie wspólnej masy sygnałowej. Ponadto posiadają większą odporność na sygnały zakłócające pochodzące np. od kabli energetycznych położonych blisko przewodów sygnałowych. Jeżeli zakłócenia są bardzo duże, uniemożliwiające wręcz odczyt, wówczas należy zwiększyć wartość współczynnika filtracji. Zakres nastawy współczynnika wynosi od 1 do 20. Układ wyjścia analogowego wymaga podłączenia zewnętrznego źródła napięcia. Nie ma znaczenia sposób włączenia obciążenia - zarówno od strony plusa jak i masy układ pracuje poprawnie. Dopuszczalne jest odwrotne pod- łączenie napięcia zasilającego do wyjścia prądowego. Sygnały cyfrowe Wejścia cyfrowe są odizolowane galwanicznie od układu mikroprocesorowego. Przykładowy schemat podłączeń pokazano na rys. 3. Do każdego wejścia cyfrowego jest przypisany licznik programowy umożliwiający wykorzystanie wejść jako sumatorów. Mogą one być wykorzystane np. w układach pomiaru przepływu, w których wymagamy jest odczyt zarówno przepływu chwilowego, jak i po zsumowaniu. Korzystając z modułu możemy odczytywać sygnały cyfrowe o wartościach mierzonych za pomocą komputera lub innego urządzenia wyposażonego w protokół MODBUS RTU oraz port RS485. W przypadku zaniku napięcia zasilającego moduł zapamiętuje ostatnie wartości liczników w pamięci danych EEPROM i po ponownym włączeniu zasilania odczytuje dane. Dostęp do nastaw typu: prądu wyjścia analogowego, załączenie wyjścia cyfrowego czy kasowanie liczników jest możliwe poprzez urządzenie nadrzędne. Kasowanie liczników odbywa się poprzez ustawienie odpowiednich bitów w słowie danych do zapisu. Wyjścia cyfrowe mogą być obciążone Możliwości modułu MWA&12 / możliwość ustawiania adresu urządzenia w sieci RS435 od 1 do 32, / ustawianie prędkości Transmis|i od 1200 do 19200b/s, / ustawianie zakresu wartości przesyłane] do urządzenia nadrzędnego (od -10000 do + 10000), / ustawianie Typu wejść prądowych (0 20mAlub4 20mA) programowo, / wyświetlanie wartości mierzonych analogowych i cylrowych, / ustawianie współczynnika filtracji wejść analogowych Elektronika Praktyczna 4/2002 135 AUTOMATYKA Tabela. 1. Podstawowe dane techniczne modułu MWA812. Napięcie zasilania.......................230VAC/50Hz Wejścia analogowe.......0...20mAlub 4...20mA Liczba wejść...................................................8 Dokładność..................................0,2% zakresu Rezystancja wejść.....125n dla wspólnej masy 25n dla wejść różnicowych Liczba wyjść analogowych.............................2 Zakres wyjścia analogowego.............4...20mA Zakres przelicznika wartości analogowej..........................................0...4000 Dokładność..........0,2% zakresu przy 4...20mA Zasilanie wyjścia analogowego........8...36VDC Liczba wejść binarnych..................................6 Pojemność liczników..............................65535 Prąd polaryzacji.....................2mA przy 24VDC Liczba wyjść binarnych..................................2 Maksymalny prąd obciążenia..................0,15A Wbudowany interfejs.............................RS485 Protokół transmisji....................MODBUS RTU Maksymalna częstość zapytań........colOOms Pamięć danych...................................EEPROM Separacja.................................................1,5kV Temperatura pracy..............................O...55C Stopień ochrony........................................IP20 Wymiary...................................106x90x58mm prądem rzędu 0,15A przy zasilaniu 24VDC. Wyjście tranzystorowe jest zabezpieczone przed zwarciem do masy oraz przepięciami pochodzącymi od załączanych elementów indukcyjnych takich jak przekaźniki, styczniki. Sposób podłączenia pokazano na rys. 4. Sygnały transmisji Układ pomiarowy modułu jest izolowany galwanicznie od układu transmisji. W module został zaimplemento-wany protokół MODBUS RTU, dzięki któremu można zdalnie odczytywać informację o poziomie sygnału wejściowego. Standardową funkcją odczytu grupy rejestrów jest O3H lub 04H. Zapis grupy rejestrów umożliwia funkcja 0 kodzie 1OH. Przy odczycie rejestrów danych należy pytanie dzielić na dwie części, najpierw wejścia analogowe (od 1 do 8), a później cyfrowe (od 9 do 15). Taki podział gwarantuje, że trans- ^ (3 w myj < < < < < !3 (D S <<< SS8 388 588 MWA812 o i- oi m FIQ FIQ 24VDC- 24VDC" T1AHL LIAHL OBIEKT B1 24VDC 0 0 mm Q Q = n w S!S!5 Z Z D O O ODO O (D MWA 812 Rys. 2. Rys. 3. misja dojdzie do skutku i nie będzie przekłamań. Należy również pamiętać o ustawieniu odpowiedniego czasu odpowiedzi w urządzeniu nadrzędnym. Menu Wszystkie nastawy, dane konfigura-cyjne itp. możemy wpisywać korzystając z klawiatury i wyświetlacza LCD. Układ menu jest bardzo przejrzysty. Został podzielony na dwie części: na zmienne odczytywane oraz modyfikowane. Dostęp do pierwszych jest po wciśnięciu klawisza Up lub Dn. Mamy wówczas podgląd zmiennych analogowych i cyfrowych. Zmienne konfigura-cyjne są zabezpieczone hasłem wywoływanym klawiszem Menu. Mamy wówczas dostęp do parametrów ustalających adres urządzenia, prędkość transmisji, rodzaj wejścia analogowego, współczynnik filtracji, wartość zakresu górnego Hi i dolnego Lo. Możemy tak ustawić wartości Hi i Lo, że dla najmniejszej wartości sygnału wejściowego wartość wyświetlana będzie równa + 10000, a dla maksymalnej -10000. Podświetlenie wyświetlacza załącza się wówczas, gdy zostanie naciśnięty któryś z klawiszy. Wyłącza się automatycznie po około 30 sekundach od ostatniego naciśnięcia klawisza. Zasilanie Moduł jest zasilany z sieci napięcia przemiennego 220VAC. Zastosowano standardowe rozwiązanie sposobu zasilania - liniowy regulator napięcia. Układ zasilacza jest wyposażony w zabezpieczenia przepięciowe i przeciwzakłóceniowe. Ze względu na brak dostępu do wnętrza modułu należy zastosować zewnętrzny bezpiecznik w obwodzie zasilania modułu (o wartości 160mA). Testy Do testów wykorzystano oprogramowanie wizualizacyjne WIZCON wersja 7.5 firmy Axeda Systems Inc. (do nie- B1 24VDC 0 0 0 W rf w co S a + ż Rys. 4. dawna eMation). Tryb demo umożliwia odczytanie 10 zewnętrznych zmiennych przy użyciu dowolnego protokołu komunikacyjnego. W tym przypadku użyto MODBUSA RTU. Program ten umożliwia archiwizację danych w postaci wykresów. Podłączenie do modułu wykonano przy użyciu karty RS485 CI 132 firmy Moxa, ale może być to dowolny port RS485. Inną możliwością jest wykorzystanie oprogramowania Modscan firmy Win-Tech. Wersja 30 dniowa jest dostępna na stronie inter-netowej http://www.win-tech.com. Program umożliwia odczyt i zapis grupy rejestrów, zmiennych dyskretnych, ustawianie adresu urządzenia, liczby zapytań na sekundę, czasu odpowiedzi, itp. Jedyną niedogodnością jest brak cyklicznego odpytywania kilku urządzeń włączonych do sieci RS4 85. Pracę w sieci można uzyskać łącząc moduły ze sterownikiem PLC wyposażonym w port RS485 oraz protokół Modbus RTU. Przykładowy zestaw to: sterownik serii Micro TSX3 7, karta PCMCIA SCP114 oraz oprogramowanie do sterownika PL7 Pro V3.4 firmy Schneider Electric. W trybie serwisowym istnieje możliwość podłączenia modułu do komputera poprzez RS232. Przedstawiony w artykule moduł wejść analogowych może znaleźć zastosowanie w systemach, w których główny nacisk kładzie się na minimalizację kosztów pracy ludzkiej oraz sprzętu. Sławomir Kacprzak Dodatkowe informacje Dodatkowe informacje o module MWA812 można znaleźć w Internecie pod adresem www.asys.com.pl oraz na ptycie CD-EP3/2002. Producentem urządzenia przedstawionego w artykule jest firma Automatic System, tel. (58) 683-51-70/71. 136 Elektronika Praktyczna 4/2002 PROJEKTY Szeregowy interfejs do wyświetlaczy LCD AVT-5047 Sterowanie alfan umerycznym wyświetlaczem LCD jest dość kłopotliwe. Trzeba znać rozkazy sterujące pracą kontrolera wyświetlacza, dość kłopotliwa jest procedura inicjalizacji, występuje odwieczny problem z polskimi znakami, a do sterowania wyświetlaczem trzeba użyć minimum 7 linii procesora. W ańykule przedstawiamy układ umożliwiający zmniejszenie liczby tych linii do jednej. Wprawdzie linię RW można na stałe podłączyć do poziomu "L", oszczędzając jedną linię procesora, ale takie sterowanie ma jednak poważną wadę - małą prędkość. Spowodowane jest to tym, że nie można stwierdzić, kiedy wyświetlacz zakończył wykonywać poprzednią komendę i przed wysłaniem następnej trzeba zawsze odczekać maksymalny czas katalogowy, który z reguły jest dużo dłuższy niż rzeczywisty czas wykonania komendy. W artykule przedstawiamy szeregowy interfejs do wyświetlaczy LCD. Interfejs ten jest sterowany jedną linią procesora. Ponadto omijają nas kłopoty związane z inicja-liz a c j ą wy ś wie tl a cz a, wpis ani em wzorów polskich znaków i nietypową obsługą wyświetlaczy 1x16 znaków. Układ interfejsu jest więc udoskonaloną wersją układów scalonych EDE700 iEDE702 opisanych w EPll/99, a przy tym zgodny z nimi programowo. Budowa i zasada działania Schemat interfejsu pokazano na rys. 1. "Sercem" układu jest mik-rokontioler z wewnętrzną pamięcią programu. Po załączeniu zasilania procesor jest zerowany za pomocą obwodu różniczkującego składającego się z kondensatora C3 i rezystora R5. Układ można wyzero-wać podając napięcie o niskim poziomie logicznym na wyprowa- dzenie 4 złącza CONl. Informacja podawana szeregowo w standardzie RS232 z wyprowadzenia 3 złącza CONl jest kierowana do wejścia RxD procesora bezpośrednio (sygnał TTL) lub za pośrednictwem konwertera na tranzystorze Tl (sygnały zgodne z poziomami RS232C). Wyboru standardu sygnału dokonujemy jumperem JPl. Jeśli zwarte będą jego styki 1-2, to interfejs akceptuje poziomy TTL, jeśli natomiast zwarte będą styki 2-3 akceptowane będą poziomy RS232C. Najczęściej będziemy korzystać z pierwszej możliwości, dlatego można nie montować elementów Rl i Tl. Wyświetlacz LCD jest dołączony do złącza CON2. Istnieje możliwość włączenia podświetlenia wyświetlacza LCD (jeśli takie posiada). W tym celu należy dobrać wartość rezystancji R6. Zależy ona od typu podświetlania LCD. Dla podświetlania LED wartość R6 nie przekracza 22Li. Potencjometrem PRl regulujemy kontrast wyświetlacza. Zworką BAUD ustalamy prędkość transmisji. Dla zworłd rozwartej ustawiana jest prędkość transmisji na 2400bd i format ramki 8Nl, dla zwartej -prędkość 9600bd i format ramki 8Nl. Zworkę lxl6A zakładamy, gdy zastosowaliśmy wyświetlacz 1x16 znaków. W rzeczywistości jest to wyświetlacz 2x8 znaków połączonych tak, aby tworzyły jedną linię. Wyświetlacz taki łatwo poznać po tym, że zawiera tylko jeden układ Elektronika Praktyczna 1/2002 33 Szeregowy interfejs do wyświetlaczy LCD CON2 Wy LCD Rys. 1. Schemat elektryczny szeregowego interfejsu do wyświetlacza LCD. scalony. W takim przypadku interfejs dodatkowo przesuwa kursor do drugiej linii po przekroczeniu 8 znaku. Dzięki temu na wyświetlaczu widoczne jest 16 znaków bez dodatkowych kombinacji z położeniem kursora. Wyjście OUT jest sterowane odpowiednimi rozkazami wysyłanymi przez RS232 i może służyć np. do włączenia podświetlenia. Montaż i uruchomienie Schemat montażowy płytki drukowanej interfejsu pokazano na rys. 2. Jego montaż rozpoczynamy od wlutowania zwory, a następnie pozostałych elementów, od najmniejszych aż do największych. Złącze CON2 lutujemy od strony druku. Dzięki temu po wlutowa-niu w wyświetlacz drugiej części złącza, całość można złożyć w "kanapkę". Zworką 1x16A wybieramy typ wyświetlacza (1x16A/pozostałe). Po załączeniu zasilania na wyświetlaczu pojawią się komunikaty powitalne, a po chwili na wyczyszczonym ekranie migający kursor. Zworką JPl ustalamy napięciowy standard sygnałów sterujących TTL/RS232C, a zworką BAUD prędkość transmisji. Wstępnie uruchomiony interfejs można dołączyć do procesora lub do portu RS232C komputera. Na stronie internetowej EP (w dziale Download> Dokumentacje) dostępne są skrypty demonstrujące możliwości wyświetlacza. Skrypty są dostępne dla komputera Amiga [demo.exe) i komputerów zgodnych z IBM PC {demo.bat). Obsługa interfejsu Do sterowania wyświetlaczem wystarczą w zasadzie podstawowe komendy akceptowane także przez wcześniej wspominane układy z serii EDE. Wysyłając kody ASCII znaków do wyświetlania powodu- WYKAZ ELEMENTÓW Rezystory Rl: 33kQ R2, R3, R5...R8, PR1: 10kO R4: 220kQ Kondensatory Cl: 100^F/16V C2: lOOnF C3: 10p.F/16V CA, C5: 27pF Półprzewodniki Tl: BC238 (BC547) T2: BC308 (BC557) US1: Zaprogramowany AT89C2051 Różne CON1: Listwa goldpin 4*1 CON2: Gniazdo do listwy goldpin 16*1 listwa 16*1 do wyświetlacza LCD JPl: Listwa goldpin 3*1 + jumper OUT: Listwa goldpin 2*1 BAUD: Listwa goldpin 2*1 + jumper lxl6A: Listwa goldpin 2*1 + jumper Ql: Kwarc 11.0592MHz jemy pojawianie się ich na wyświetlaczu; kursor będzie przesuwał się w prawo. Wysłanie kodu sterującego Enter spowoduje przeniesienie kursora do drugiej linii wyświetlacza. Zastosowano także kilka innych kodów specjalnych, których zestawienie znajduje się w tab. 1. Dzięki temu, że interfejs jest wyposażony w bufor wejściowy o wielkości 64 bajtów, po wykonaniu np. rozkazu czyszczenia wyświetlacza nie musimy zawieszać transmisji danych do czasu, aż wyświetlacz wykona tę operację. Przychodzące dane zapisane Tab. 1. Znaczenie kodów specjalnych. Wartość Znaczenie $00 kod NULL (nie jest drukowany) $08 kod litery "ą" $01 lub $09 kod litery "ę" $02 kod litery "ć" $03 lub $0B kod litery "ł" $04 kod litery "ń" $05 kod litery "ó" $06 lub $0E kod litery "ś" $07 lub $0F kod litery "i" (ze względu na matą pamięć znaków nie ma litery "i") $0A kod znaku LF przesuwa kursor do drugiej linii wyświetlacza $0C kod znaku CLS - czyści wyświetlacz, ustawia kursor w lewym górnym rogu $0D kod znaku CR znaczenie jak kodu LF $10...$FD kody ASCII sterownika HD44780 zawarte w ROM $FF kod danych, następny bajt zostanie zapisany do pamięci danych sterownika LCD, umożliwia to tworzenie własnych znaków, np. sekwencja kodów: FE 40 FF 00 FF 04 FF 08 FF 1F FF 08 FF 04 FF 00 FF 00 zmieni wygląd pierwszego znaku z CGRAM (litera "ą") na strzałkę skierowaną w lewo. $FE kod sterujący, następny bajt będzie zinterpretowany przez sterownik LCD jako rozkaz (zestawienie rozkazów znajduje się w tab. 2). 34 Elektronika Praktyczna 1/2002 Szeregowy interfejs do wyświetlaczy LCD Tab. 2. Kody rozkazów. Rys. 2. Rozmieszczenie elementów na płytce drukowanej. zostaną do bufora, a gdy tylko wyświetlacz skończy wykonywać poprzednią operację, dane zostaną do niego wysłane. Standardowa konfiguracja sterownika Po włączeniu zasilania, po wykonaniu rozkazu $FE, $FE lub $FE, $FF sterownik zostanie ustawiony następująco: - Function Set=%OOlllOOO (dwie linie, matryca znaku 5*7 punktów). - Entiy Modę Set=OOOOOllO (kur-sor przesuwany w prawo, skro-lowanie danych wyświetlacza wyłączone) . - Display ON/OFF control = %00001111 (włączony wyświetlacz, widoczny kursor, miganie znaku w pozycji kursora). - Do pamięci CG_RAM zostaną skopiowane polskie znaki. Dzięki temu, źe mamy dostęp do wszystkich rozkazów sterownika HD44780, z wyświetlaczem możemy zrobić wszystko to, co umożliwia sterownik. W układach serii EDE nie ma dostępu do pamięci danych, co wyklucza możliwość tworzenia własnych znaków. Sławomir Skrzyński slawomir.skrzynski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http:ffwww.ep.com.plf 7pdffstyczenQ2Jttm oraz na płycie CD-EP01/2002B w katalogu PCB. Wartość binarna %0 O O O O O O 1 %00 O O 00 1 x %0 0 0 0 0 1 Opis Clear display Return home Entry modę set Funkcja kasuje wyświetlacz i ustawia kursor pod adres 0 ustawia kursor pod adres 0 Entry rnode set = ustawia kierunek przesunięcia kursora oraz włącza lub wyłącza przesuwanie danych wyświetlacza - i/d = 1 (incrernent) zwiększa] (+1) adres kursora po każdym wpisie lub odczycie danych, - i/d = O(decrement) zmniejsza) (-1) adres kursora po każdym wpisie lub odczycie danych, - s=1 przesunięcie wyświetlanych znaków na wyświetlaczu Poniżej pokazano przykładowe elekty działania różnych ustawień Na wyświetlaczu znajduje się napis "Ala", następnie kursor jest ustawiany na pozycję 81 wpisywany jest napis "Kot" Entry modę set =$05 Entry modę set =L06 Entry modę set ="" Ś ' ~ Ś Cursor and display shitt s/c=1 -obrót danych wyświetlacza s/c=O -przesunięcie kursora r/l=1 -obrót/przesumęciew prawo r/l=0 -obrót/przesunięcie w lewo Cursor and display Cursor and display shift=L14 shift=L18 rzeczywistości dane w pamięci me są przesuwane zmienia się tylko adres tzw okna wyświetlania (jak na rysunku obok) --------------------------------------- t"t 14*4*1 *L!Ś LCD i i %0 0 1 dln lxx %01a5a4a3a2a1a0 %1aBa5a4a3a?a1aO 1111101 1111100 1 1 1 1 1 10 1 1 1 1 1 1 1 Function set Set CG_RAM address SetDD_RAM address Interlace reset dl=1 - 8-bitowa szyna sterująca dI =0 - 4-bitowa szyna sterująca n=1 - 2 linie wyświetlacza n=0-1 linia wyświetlacza 1=1 -znaki 5x10 punktów 1=0 -znaki 5x7punktów Ustawienie adresu generatora znaków w liczniku adresów Po tej operacji można pisać lub czytać generator znaków z pamięci RAM Ustawienie adresu danych w liczniku adresów (ustawienie kursora na wybraną pozycję) Sekwencja znaków FE 82 30 31 FE 8A 32 33 da następujący elekt na wyświetlaczu Ustawia wyjście OUT w stan wysoki Ustawia wyjście OUT w stan niski Inicjahzacja sterownika Wysłanie sekwencji rozkazów FE, FE spowoduje zerowanie sterownika, ustawi się standardowa konfiguracja, bulor RS zostanie wyczyszczony, pojawi się komunikat powitalny Inicjahzacja sterownika LCD (sekwencja FE FF) Elektronika Praktyczna 1/2002 35 REKLAMA PowerCassette - konfekcja, ale szyła na miarę Zastosowana w zasilaczach PowerCassette architektura torów zasilających (nazwana przez producenta CsIIuIaiPowsi) pozwala na szybkie dostosowanie parametrów (dotyczy to wartości napięcia wyjściowego i prądu obciążenia] każdego z nich do indywidualnych wymagań użytkowników nie wymaga szczególnych zabiegów ze strony producenta. Według oficjalnych informacji firmy Unipower przygotowanie zasilaczy PowerCassette zgodnych z indywidualnymi specyfikacjami nie wiąże sie. z dodatkowymi kosztami, a czas oczekiwania na wykonanie takiego zasilacza (łącznie ze zindywidualizowaną dokumentacją] nie przekracza jednego tygodnia. W ramach podstawowej oferty firmy Unipower jest dostępna cała gama zasilaczy 0 mocach z przedziału 600...1200W z napięciami i prądami wyjściowymi dobranymi do najczęściej spotykanych wymagań na rynku. Według szacunków producenta, zasilacze wchodzące w skład oferty podstawowej spełniają ponad S0% wymagań typowych aplikacji telekomunikacyjnych - z myślą o tym rynku optymalizowano parametry i właściwości prezentowanych zasilaczy. Napięcia wyjściowe zasilaczy użytkownik może samodzielnie modyfikować w zakresie ą5%. Zasilacze PowerCassette charakteryzują się dużą gęstością przetwarzanej mocy przypadającej na jednostkę objętości obudowy - typowe wartości wynoszą od 6,S W/cal3 (m.in. rodziny PCH iTPCH] do IOW/cal3 (rodziny PCM 1 TPCM], co wymaga oczywiście zastosowania specjalnych systemów chłodzenia - stąd duża liczba wentylatorów ulokowanych w obudowie. Niebagatelne znaczenie dla łatwości stosowania zasilaczy ma takt wbudowania wtór zasilania sieciowego aktywnych korektorów współczynnika mocy PFC [Power Facics- Correction), dzięki czemu spełniają one zalecenia normy EN61000-3-2. Na wejściu zasilaczy zastosowano także filtry redukujące zakłócenia elektromagnetyczne, które zapewniają spełnienie wymogów przemysłowej klasy B. Standardowym wyposażeniem zasilaczy PowerCassette jest specjalne złącze umożliwiające włączanie go i wyłączanie pod napięciem (hot-plug), bez ryzyka uszkodzenia złącza i obwodów wejściowych zasilacza. Jest ono kompatybilne z wymaganiami standardu CompactPCI. Zasilacze PowerCassette mogą być zasilane napięciem zmiennym o wartości z przedziału S5...264VAC, dostępne są także warianty uniwersalne, przystosowane do zasilania także napięciem stałym. Napięcie wyjściowe jest stabilizowane z dokładnością ok. ą2%. Obwody wyjściowe są zabezpieczone przed przeciążeniem, a cały zasilacz zabezpieczono przed przekroczeniem maksymalnej dopuszczalnej temperatury. Interesującym wyposażeniem niektórych modeli zasilaczy z rodziny PowerCassette jest interfejs I2C, za pomocą którego użytkownik ma dostęp do: - pamięci EEPROM zawierającej sygnaturę zasilacza (oznaczenie modelu, nazwę producenta, oznaczenie fabryczne typu, wersję sprzętu, kraj produkcji], - portu równoległego odczytywanego przez PC, za pomocą którego można sprawdzić czy prawidłowo działają wentylatory, czy temperatura wewnątrz zasilacza przekroczyła próg ostrzegawczy lub alarmowy, a także poprawność zasilania na wejściu i stan wyjść, - informacji o napięciu wyjściowym i prądzie pobieranym przez obciążenie. W ofercie firmy Unipower znajdują się także specjalne, 19-calowe ramy montażowe, przystosowane do montażu zasilaczy Power- PowerCassette to nowa rodzina zasilaczy przemysłowych produkowanych przez amerykańską firmę Unipower. Charakteryzuje się ona nietypową konstrukcją, opartą na całkowicie niezależnych torach zasilania dla każdego wyjścia, których może być od 1 do 6. Zasilacze tej serii są montowane w obudowach przystosowanych do instalacji w szafach typu rack (19 ). Niezależnie od sumarycznej mocy wyjściowej zasilacza, obudowy mają standardową wysokość wynoszącą 1U (pojedynczy panel), dzięki czemu można je instalować w szafach dowolnego typu. Cassette. Ich budowa pozwala zamontować jednocześnie dwa zasilacze o mocy do 600W, które mogą pracować w jednym z dwóch trybów: - jako pojedynczy moduł zasilający o mocy wyjściowej 1200W, - jako moduł zasilania z redundancją o mocy 600W. Budowa tych rarn została zoptymalizowana pod kątem montażu paneli zasilających, wyposażono je m.in. w złącza hot-plug, bezpieczne doprowadzenie napięcia zasilającego i specjalny system doprowadzanie powietrza do obudowy zasilaczy. SR Dodatkowe informacje Dystrybutorem podzespołów firmy Unipower w Polsce jest Amteksp. z o.o., tel. (22) 874-02-34, arntek@arntek.pl. Elektronika Praktyczna 4/2002 137 AUTOMATYKA Sterowniki! Łączcie się! W artykule przedstawiono złożony system automatyki i wizualizacji zastosowanej w elektrociepłowni Energetyka Cieszyńska Sp. z o.o. Podstawowymi elementami systemu są sterowniki SIMATIC firmy SIEMENS, które dzięki swym zaletom stają się na polskim rynku dominującymi sterownikami w swojej klasie. Przedstawiono strukturę systemu oraz jego działanie, a także podstawowe zadania urządzeń automatyki. Pokazano, że warto jest stosować standardowe rozwiązania komunikacyjne (jak np. PROFIBUS) oraz dostosowane do nich sterowniki i nadrzędne oprogramowanie funkcjonalne. Przedstawiony system, spójny i niezawodny, jest tego dobrym przykładem. Minęły czasy, gdy wytwarzanie ciepła było stosunkowo prostym procesem, a obsługujący kocioł ustawiał jego parametry pracy w oparciu o swoje wyczucie i doświadczenie. W nowoczesnych ciepłowniach i elektrociepłowniach do wytwarzania ciepła stosuje się najnowsze technologie, które wymagają odpowiedniej obsługi technicznej. Coraz częściej też, jako produkt skojarzony, wytwarza się energię elektryczną, którą sprzedaje się do krajowej sieci energetycznej. Aby zapewnić współpracę tych wszystkich elementów, nieodzownym staje się zastosowanie nowoczesnych systemów sterowania i wizualizacji zbudowanych w oparciu 0 techniki komputerowe. Niezwykle ważna jest przy tym możliwość integracji i wzajemnej komunikacji urządzeń wytwarzanych przez różnych producentów, które mają często własne, autonomiczne systemy automatyki. Modernizacja źródła ciepła Podczas prowadzonej w latach 2000/ 2001 modernizacji źródła ciepła zakupiono nowy kocioł typu OR-35N, turbinę parową przeciwprężną 4,8MW (typu G22A) wraz z całym jej wyposażeniem i dodatkowy kocioł olejowy Se-fako 4,5MW oraz postawiono stację uzdatniania wody i rozdzielnię elektryczną. Wszystkie te elementy zostały włączone w spójny system sterowania 1 wizualizacji wykonany przez firmy Introl S.A. z Katowic i Zakład Elementów i Systemów Automatyki Przemysłowej MikroB S.A. z Ostrzeszowa. Działanie i struktura systemu W systemie wyróżnić można trzy funkcjonalne części związane z zadaniami realizowanymi przez główne sterowniki. Są to: - stacja uzdatniania wody i kocioł olejowy, - kocioł OR-35N, - rozdzielnia energii elektrycznej i część maszynowa związana z turbiną. Sterowniki połączone są ze sobą magistralą przemysłową, a nad całością czuwa nadrzędny system komputerowy. Dane z procesów technologicznych dostępne są zarówno na stacjach operatorskich i tablicy synoptycznej w dyspozytorni, jak również w zakładowej sieci komputerowej i - poprzez łącza teletransmisyjne - w stacjach oddalonych. Schemat systemu sterowania przedstawiono na rys. 1. Sterowniki Podstawowymi sterownikami realizującymi funkcje automatycznego sterowania procesami technologicznymi są trzy sterowniki SIMATIC S7 firmy Siemens w odpowiednich konfiguracjach: - stacja uzdatniania wody i kocioł olejowy - Simatic S7-400 z podłączonym do niego modułem zdecentralizowanego sterowania - ET200S, - kocioł parowy OR-35N - Simatic S7-400, - rozdzielnia elektryczna i część maszynowa związana z turbiną - Simatic S7-400 z podłączonymi do niego dwoma modułami zdecentralizowanego sterowania - ET200S. Wymienione sterowniki sterują pracą całego systemu. Oprócz tego, niektóre urządzenia mają lokalne, specjalizowane sterowniki, które poprzez odpowiednie magistrale podłączone są do systemu nadrzędnego. Należą do nich: - sterownik turbiny - Woodward 505, - sterownik zabezpieczeń turbiny -Mitsubishi, - dwa sterowniki tablicy synoptycznej - Micro PLC. System nadrzędny Systemem integrującym i sprawującym kontrolę nad pracą wszystkich urządzeń jest oprogramowanie wykona- ne na bazie PRO-2000 przez firmę MikroB S.A. Zainstalowane zostało na trzech komputerach: dwóch stacjach przetwarzających SDl i SD2, które pełnią również rolę stacji operatorskich oraz na stacji SO, która jest stacją operatorską i równocześnie spełnia rolę stacji inżynierskiej (oprogramowanie PRO-2000 i STEP-7). Każda stacja wyposażona jest w dwa monitory operatorskie 21", na których są wyświetlane obrazy synoptyczne, wykresy, raporty itp. Stacje SDl i SD2 pracują pod kontrolą systemu operacyjnego QNX, natomiast stacja operatorsko-inżynierska SO jest stacją dwusystemową: może pracować pod QNX lub Windows NT, w zależności od funkcji jaką aktualnie spełnia. Dla zwiększenia niezawodności pracy systemu, stacje SDl i SD2 pracują z redundancją. Dzięki temu, jedna z nich może natychmiast przejąć kontrolę nad systemem w sytuacji awarii lub wyłączenia drugiej. Oprócz współpracy ze sterownikami SIMATIC, PRO-2000 komunikuje się ze sterownikiem turbiny i ze sterownikiem jej zabezpieczeń. Zbiera informacje o parametrach pracy turbiny i wysyła sterowania nadrzędne do jej sterownika. Jako system nadrzędny, PRO-2000 obsługuje również wyświetlanie odpowiednich wielkości i stanów procesu na tablicy synoptycznej, która przedstawia w uproszczeniu cały proces technologiczny w elektrociepłowni. Komunikacja W systemie istnieje kilka rodzajów komunikacji, zarówno wewnętrznej między urządzeniami systemu jak i na zewnątrz do zdalnego śledzenia pracy obiektu. Komunikację zapewniają: - PROFIBUS FMS - główna magistrala systemu, do której podłączone są trzy sterowniki SIMATIC S7, stacje prze- 138 Elektronika Praktyczna 4/2002 AUTOMATYKA Rys. STACJA KOCIOŁ ZnJCTNIANIA OLEJOWY WODY KOCIOŁ ROZDZIELNA CZEŚĆ TURBNA OR-3SN ENERGETYCZNA MASZYNOWA twarzająco-operatorskie SDl i SD2 oraz stacja operatorska SO. Poprzez to łącze sterowniki komunikują się ze sobą i z systemem nadrzędnym PRO-2000. Dla zwiększenia niezawodności, również tutaj wprowadzona została redundancja - dwie równouprawnione magistrale A i B, z tym samym protokołem PROFIBUS FMS. - PROFIBUS DP - tym protokołem transmisyjnym przesyłane są dane między sterownikami S7-400, a modułami zdecentralizowanego sterowania ET200S. - RS485 - MODBUS RTU - za pomocą tego łącza system nadrzędny PRO-2000 komunikuje się ze: - sterownikiem turbiny - WOOD-WARD 5 05, - sterownikiem zabezpieczeń turbiny - Mitsubishi, - dwoma sterownikami mozaikowej tablicy synoptycznej - Micro PLC. -= z siecią Ethernet - w sieci lokalnej pracują wszystkie trzy stacje komputerowe, co daje możliwość dostępu do pełnych zasobów systemu na każdej stacji. Poprzez łącze światłowodowe sieć lokalna łączy się z siecią zakładową, umożliwiając wgląd odpowiednim służbom zakładu w pracę obiektu. Dzięki serwerowi WWW podłączonemu do sieci, oglądanie obrazów synoptycznych pracy obiektu może odbywać się za pomocą popularnych przeglądarek stron WWW. Istnieje też możliwość komunikowania się przez modem z komutowaną siecią telefoniczną. Poprzez łącze telefoniczne możliwe jest zdalne monitorowanie pracy obiektu, a także zdalna diagnostyka systemu. Zadania automatyki Podstawowe funkcje elementów systemu są następujące: Sterowniki SIMATIC: - S7-400 - obsługujący stację uzdatniania wody i kocioł olejowy. Do jego zadań należy: sterowanie cyklem pracy trzech filtrów (płukanie, filtrowanie, w pracowanie złoża), utrzymywanie odpowiednich poziomów wody w zbiornikach wody przefiltro-wanej i zdemineralizowanej, regulowanie ciśnienia w rurociągach wody do odgazowywaczy i do uzupełniania sieci, dawkowanie chemikaliów do wody, kontrola pracy kotła olejowego, a także sterowanie przepływem wody do filtrów (ET200S) i sterowanie przepływem powietrza do filtrów (ET200S). - S7-400 - obsługujący kocioł OR-35N. Do jego zadań należy: regulacja nadmuchu (sterowanie dmuchawami i przepustnicami powietrza), regulacja prędkości poruszania się rusztu i grubości warstwy węgla, regulacja podciśnienia w komorze paleniskowej, regulacja poziomu wody w walczaku, sterowanie wentylatorem spalin, regulacja tempera- tury pary wylotowej z kotła, sterowanie zdmuchiwaczami popiołu, sterowanie odmulaniem kotła, a także sterowanie podajnikami węgla i sterowanie wózkiem rewer-syjnym. - S7-400 - Sterownik obsługujący część maszynową i rozdzielnię. Do jego zadań należy: sterowanie pompami zasilającym kocioł OR-35 N, sterowanie pompami skrop-lin z wymienników, sterowanie pompami zwie kszającymi obieg wody grzewczej i technologicznej, sterowanie pompami wody uzupełniającymi obieg wody grzewczej i technologicznej, sterowanie wyłącznikami rozdzielni 15 kV, 6kV, 0,4kV, monitorowanie stanów wyłączników, odłączników i roz-łączników rozdzielni l5kV, 6kV, 0,4kV, a także sterowanie synchronizacją generatora turbiny z siecią energetyczną. Zadania pozostałych sterowników są następuące: - WOODWARD 505 - sterowanie turbiną, - MITSUBISHI - sterowanie zabezpieczeniami turbiny, w tym trzy obwody zabezpieczeń z logiką 2 z 3, zabezpieczenia przed przekroczeniem temperatury, obrotów, przesuwu wirnika, awarii urządzeń okołoturbino-wych, - Micro PLC - sterowanie wyświetlaniem na tablicy synoptycznej (wizualizacja rozdzielni, wizualizacja części technologicznej). System nadrzędny PRO-2000 Oprogramowanie PRO-2000 autorstwa ZEiSAP MikroB S.A. jest profesjonalnym oprogramowaniem systemu SCADA, pracującym w setkach obiektów w kraju i poza jego granicami. Jest nie tylko oprogramowaniem dla aplikacji, lecz również środowiskiem do ich tworzenia, oferującym konstruktorom wiele różnych narzędzi. Użytkownicy cenią je za stabilność pracy, dużą liczbę wbudowanych mechanizmów i funkcji, łatwość modyfikacji i nieograniczone możliwości rozbudowy. Również w tej elektrociepłowni PRO-2000 integruje wiele urządzeń o różnych protokołach komunikacyjnych. Dominującymi są sterowniki SIMATIC S7-400 i protokół PROFIBUS FMS, niemniej jednak równie skutecznie zostały włączone do systemu pozostałe sterowniki i urządzenia. Do najważniejszych zadań oprogramowania nadrzędnego PRO-2000 należą: 140 Elektronika Praktyczna 4/2002 AUTOMATYKA
Ś ł -c L
e-% ?LfH?K-Q < | +m *Ś*Ś Rys. 2. - przetwarzanie zmiennych procesowych, - odczytanie i przetwarzanie wyników pomiarów, - rozpoznawanie sytuacji awaryjnych, - badanie wiarygodności, - określanie stanu i rejestrowanie zdarzeń, - obliczanie wartości tendencji zmian dla punktów analogowych, - wizualizacja wartości parametrów i danych w czasie rzeczywistym, - obrazy synoptyczne, - obrazy zdarzeń, - wykresy zmian wartości, obrazy pojedynczych punktów, wizualizacja danych archiwalnych, przegląd zdarzeń wg. wybranego kryterium, wykres wartości chwilowych dla punktów analogowych, wykres wartości 15-minutowych dla punktów licznikowych, wykres wartości godzinowych, oddziaływanie na proces, sterowanie ręczne z konsoli (zawory regulacyjne, falowniki), zmiana nastaw regulacji i wartości zadanych, - włączanie i wyłączanie urządzeń (pompy, napędy, wyłączniki w rozdzielni), - obsługa i rejestracja zdarzeń z zarejestrowaniem daty, czasu i pełnej identyfikacji ich wystąpienia, - zdarzenia technologiczne, - alarmy, - ostrzeżenia, - usterki urządzeń (diagnostyka), - sygnalizowanie przekroczenia granic ostrzeżeń i alarmów, - realizacja obliczeń technicznych i ekonomicznych, - drukowanie raportów, protokołów, wykresów w postaci graficznej i alfanumerycznej (bilanse wody, raporty zmianowe i dobowe turbozespołu itp.). Przykładowe obrazy synoptyczne obiektu przedstawione zostały na rys. 2. Niezawodność i bezpieczeństwo Niezwykle istotnym czynnikiem charakteryzującym system automatyki jest jego niezawodność i bezpieczeństwo pracy. Wysokie wskaźniki tych parametrów osiągnięto dzięki zastosowaniu szeregu rozwiązań zapewniających dużą stabilność pracy systemu. Do najważniejszych z nich należą: - zastosowanie jako platformy systemowej sieciowego systemu operacyjnego czasu rzeczywistego - QNX, - zbudowanie redundantnej sieci PRO-FIPUS FMS łączącej sterowniki Sl-MATIC i stacje komputerowe, - zainstalowanie redundantnych stacji przetwarzających (SDl, SD2) - praca stacji w ,,gorącej" rezerwie, - zapewnienie niezawodnego i buforowanego układu zasilania, - zastosowanie separacji galwanicznej w najważniejszych obwodach pomiarowych, - wykorzystanie odpornych na zakłócenia połączeń światłowodowych, - zastosowanie wielopoziomowej struktury uprawnień dostępu do stacji operatorskich, zabezpieczającej system przed nieuprawnioną ingerencją. Podsumowanie Przedstawiona aplikacja ilustruje możliwość niezawodnej współpracy wielu urządzeń i systemów na jednym obiekcie. Jest to możliwe, gdyż wykorzystano profesjonalne i sprawdzone technologie: renomowane sterowniki Simatic S7-400, system komunikacji przemysłowej Profibus oraz niezawodne oprogramowanie nadzorujące i integrujące PRO-2000. mgr inż. Janusz Gogół ZEiSAP MikroBS.A. www.mikrobsa.com.pl Elektronika Praktyczna 4/2002 141 PROJEKTY Domowa stacja meteo ze zdalnym pomiarem temperatury, część 1 AVT-5060 Niektóre urządzenia cieszą się szczególną popularnością w czasopismach dla elektroników. Niegdyś bywały to zegary, układy zapłonowe do maluchów i systemy alarmowe. Dołączyły do nich różne rozwiązania barometrów. No cóż, pogoda płata nam ostatnio różne figle, trzeba się więc jakoś bronić. Długo zastanawiałem się, czy opis urządzenia, które w różnych rozwiązaniach juź opisywano w EP, nie będzie dla Czytelników zbyt nudny. Wielu z Was - jak sądzę - nie od razu po kupieniu nowego numeru miesięcznika chwyta za lutownicę. Skłonny jestem nawet zaryzykować twierdzenie, źe większość Czytelników szuka jedynie inspiracji w układach prezentowanych w EP. Wychodząc z tego założenia zdecydowałem się zamieścić opis wykonanego przeze mnie urządzenia. Aby go uatrakcyjnić, wprowadziłem opcję rejestracji wyników i ich prezentację na ekraniku wyświetlacza graficznego. Trochę o prognozowaniu pogody - podejście górala spod Tatr Przewidywanie pogody jest sztuką. Jedni robią to na podstawie bólu głowy i łamania w koś- ciach, inni analizując skomplikowane symulacje prowadzone na Cray'ach. Oczywiście nie jest możliwe przewidzieć, jaka będzie pogoda w najbliższym czasie bez dostępu do wielu różnorodnych danych mierzonych tuż przy ziemi, ale i w górnych rejonach toposfery. Prognozowaniem zajmują się wyspecjalizowane jednostki wykorzystujące technikę o najwyższym poziomie zaawansowania, choćby wspomniane już superkomputery, sieci satelitów meteorologicznych, r a dary doppl er o w skie, sp e ej alne sondy meteorologiczne wypuszczane na balonach, statki przeznaczone do badania pogody, a także bezobsługowe stacje automatyczne. To tylko kilka przykładów. Przeciętny człowiek może liczyć jedynie na pomiary temperatury, ciśnienia, wilgotności powietrza, ewentualnie siły i kierunku wiatru. Ma jednak tę przewagę, że pomiarów dokonuje bezpośrednio 14 Elektronika Praktyczna 4/2002 Domowa stacja meteo ze zdalnym pomiarem temperatury w otaczającym go rejonie. Ale o tym, co będzie za chwilę w danym miejscu, może decydować np. układ baryczny odległy o kilkadziesiąt, czy kilkaset kilometrów. Ważne jest zatem, żeby wyniki pomiarów, otrzymywanych z własnej stacji, łączyć z obserwacjami nieba oraz niektórych zjawisk przyrodniczych (stąd góralskie podejście), a wszystko to konfrontować z informacjami o pogodzie podawanymi przez radio, telewizję, telegazetę oraz pogodowe serwisy internetowe. Dwa przykładowe: www.cnn.com/ WEATHER/eu/Poland/ WarsawEPWA.html, weather.noaa.gov/weather/ current/EPWA.html. ADuC812 -wspaniały, choć kapryśny Bogactwo dostępnych na rynku mikrokontrolerów stwarza zawsze dylemat dla konstruktora - którego z nich użyć tym razem? Pozostając wiernym rodzinie '51, postanowiłem zastosować produkt firmy, która do niedawna specjalizowała się jedynie w układach analogowych. ADuC812 to mikrokontroler skonstruowany w laboratoriach Analog Devices. Decyzja o wyborze właśnie tego elementu była poparta moimi wcześniejszymi z nim doświadczeniami oraz dostrzeżeniem pewnych walorów dydaktycznych, jakie być może uda mi się zaprezentować w tym artykule. ADuC812, to naprawdę wartościowy mikrokontroler oparty na rdzeniu '51, choć ni ep o zbawiony pewnych wad. Co dziwne, jak dotąd nie zdobył on należnej sobie popularności wśród konstruktorów. Świadczy o tym choćby to, że ten projekt jest chyba pierwszym, spośród zamieszczanych w "Elektronice Praktycznej", w którym zastosowano ten właśnie procesor. To, że ADuC812 został skonstruowany w firmie 1. Schemat elektryczny stacji meteo. Elektronika Praktyczna 4/2002 15 Domowa stacja meteo ze zdalnym pomiarem temperatury GN1 VDD Rys. 2. Schemat elektryczny sondy pomiaru temperatury. Analog Devices każe przypuszczać, że w środku (obok rdzenia '51) użytkownik znajdzie jakiś blok analogowy. I rzeczywiście, do wykorzystania jest w nim rewelacyjny, 12-bitowy, 8-kanałowy przetwornik analog owo-cyfro wy o częstotliwości próbkowania 200kHz, dwa 12-bitowe przetworniki cyfrowo-analogowe z wyjściem napięciowym, czujnik pomiaru temperatury oraz wewnętrzne źródło referencyjne o napięciu 2,5V i stabilności termicznej 40ppm/C. W strukturze zawarto także blok DMA (sic!), 640 bajtów pamięci flash/EE (wraz z pompami ładunkowymi, dzięki którym nie są wymagane dodatkowe napięcia programujące), 256 bajtów pamięci RAM oraz 8kB pamięci programu Flash. Do dyspozycji są również typowe dla rodziny '51 (a konkretnie dla '5 2) trzy 16-bitowe timery, 32 linie I/O, interfejs szeregowy UART, interfejs 2-wire (kompatybilny z PC) oraz SPI, watchdog, system zarządzania poborem mocy i 9 wektoryzo-wanych przerwań o dwóch poziomach priorytetów. Powyższe parametry mogą być powodem do dumy dla konstruktorów firmy. Jednak procesor ma też wady, które mogą dać się we znaki użytkownikom. Niektóre z nich świadczą o tym, że prace konstrukcyjne przebiegały w pośpiechu, bez dostatecznie dokładnego sprawdzenia produktu przed jego wypuszczeniem na rynek. Potwierdzeniem tego było pojawienie się w niedługim odstępie czasu dwóch wersji rdzenia procesora, a i tak niektóre mankamenty nie zostały usunięte. Wydaje się, że już w założeniach popełniono pewien błąd, bo jak wytłumaczyć fakt umieszczenia w strukturze tylko 8kB pamięci programu? Czy tylko problemami technologicznymi? Bloki, które zawarto w strukturze mikrokontrolera predestynują go do zastosowań w dość złożonych systemach, a wówczas oprogramowanie tworzy się często w języku C. Taka ilość pamięci jest więc wręcz kompromitująca. Z pamięcią tą związany jest jeszcze inny mankament. Otóż można ją zaprogramować w układzie docelowym, np. poprzez interfejs RS232, wykorzystując dostępny, asynchro-niczny port szeregowy. Jeśli w swoim systemie użytkownik przewidział jego zastosowanie - co zdarza się dość często - to jest to bardzo wygodna metoda. Aby zainicjować programowanie, podczas restartu systemu, wejście PSEN, powinno być zwarte do masy poprzez rezystor lkQ. Tym samym jest uaktywniana specjalna procedura [boot code) realizująca obsługę transmisji przez port szeregowy, a następnie zapis programu do pamięci. Niestety, zdarza się, że boot code nie chce wystartować, a użytkownik jest w tej sytuacji całkowicie bezsilny. No, może nie zupełnie. Pozostaje mu jeszcze - za radą producenta - schłodzić swój mik-rokontroler poniżej 25C. Pozostawiam to bez komentarza. Znawcy procesorów rodziny '51 wiedzą, że gdy rozmiar programu przekroczy dostępną wielkość pamięci wewnętrznej, to następny adres jest automatycznie pobierany z pamięci zewnętrznej. Tak jest i w ADuC812, tyle tylko, że na skutek błędu w jego rdzeniu, na granicy tych obszarów koniecz- 16 Elektronika Praktyczna 4/2002 Domowa stacja meteo ze zdalnym pomiarem temperatury ne jest "ręczne" zerowanie rejestru PO. Jest to dość uciążliwe dla piszących oprogramowanie w języku wysokiego poziomu (np. C). Kompilator przecież nie wie, że musi taką operację wykonać. Jak już pisałem, mikrokontroler ADuC812 zawiera w swojej strukturze przetwornik A/C. Może on być zasilany z innego zasilacza, niż ten, który jest przeznaczony dla bloków cyfrowych. W obudowie przewidziano specjalne do tego celu wyprowadzenia, oznakowane jako AVDD i AGND. Jednak, nie zawsze można zastosować takie zasilanie. Jestem pewien, że w większości przypadków zasilanie części analogowej i cyfrowej będzie realizowane z jednego zasilacza. I tu kryje się kolejne niebezpieczeństwo. Pojawienie się napięcia na wyprowadzeniu AVDD wcześniej, niż na wyprowadzeniach DVDD, grozi nieodwracalnym uszkodzeniem przetwornika! Aby temu zapobiec producent radzi stosować indukcyjność rzędu 10nH, pomiędzy DVDD i AVDD. Nie jest to, niestety, koniec niedogodności opisywanego mikro-kontrolera. Aby nie zanudzać Czytelników, odsyłam do szczegółowych informacji, które można uzyskać na stronach Analoga -w szczególności: www.analog.com/ microconverter/erratasheets.html. Mikrokontroler ADuC812 ma jeszcze jedną cechę, która nie jest już błędem konstrukcyjnym, lecz czasami może być kłopotliwą dla konstruktorów. Otóż poprzez wyprowadzenia portu Pl, doprowadzane są analogowe sygnały dla przetwornika ADC. Niewykorzystywane wyprowadzenia mogą pracować w trybie cyfrowym, lecz jedynie jako wejściowe. Jak znam życie, często okaże się, że właśnie tych kilku wyjść cyfrowych brakuje. Nie ukrywam, że w tym projekcie tak właśnie było. Na szczęście ekwi-librystycznymi sposobami udało się jakoś wyjść z opresji. Z kilku założeń projektowych niestety musiałem zrezygnować. Opis budowy - stacja bazowa Schemat elektryczny stacji bazowej jest przedstawiony na rys. 1, a na rys. 2 schemat sondy wykorzystywanej do pomiaru temperatury zewnętrznej. Stacja cyklicznie dokonuje pomiaru temperatury wewnętrznej, temperatury zewnętrznej (poprzez łącze radiowe), ciśnienia atm o sferycznego i wilgotności względnej powietrza w pomieszczeniu, a następnie zapisuje wyniki w pamięci RAM, podtrzymywanej baterią litową. Aby można było jakoś wykorzystać zgromadzone dane, istnieje możliwość transmitowania ich do komputera PC. Plik jest zapisywany w formacie tekstowym, więc dane łatwo jest zaimportować w dowolnym edytorze lub arkuszu kalkulacyjnym. Przykład wykresu sporządzonego w Excelu przedstawiono na rys. 3. Całym urządzeniem steruje mikrokontroler ADuC812. Przystępując do projektowania stacji, od początku wiedziałem, że program na pewno nie zmieści się w 8kB pamięci wewnętrznej. Dlatego uwzględniłem na schemacie zewnętrzną pamięć typu Flash. Brak linii wyjściowych, o czym pisałem wyżej, ogranicza możliwy do wykorzystania obszar do 32kB. Taką wartość uznałem za bezpieczną. W wyniku tych założeń, linie A15 i A16 pamięci programu (U14) zostały na stałe dołączone do masy. Wszystkie dane, jakie są mierzone przez stację, są zapisywane w pamięci RAM (U8), którą w modelowym egzemplarzu była D43256BCZ produkcji NEC-a. Obszar od adresu O do 04FFH (nieco ponad lkB) jest przeznaczony dla zmiennych systemowych, a w pozostałej części (prawie 31kB) są umieszczane wyniki pomiarów. W najgorszym przypadku (rejestracja co godzinę), wystarczy to do zarejestrowania 1574 rekordów, co odpowiada ok. 65 dniom. Po zapełnieniu bufora danych dalszy zapis jest blokowany aż do zwolnienia pamięci. Aby podczas zaniku zasilania dane nie uległy zniszczeniu, RAM jest podtrzymywany baterią litową o napięciu 3V, wlutowywaną w płytkę. To jednak nie wystarczy. Przy zanikach napięcia na liniach sterujących, w szczególności CS, mogą pojawiać się impulsy powodujące losowy zapis danych. Podtrzymanie zasilania baterią niewiele więc by tu pomogło. Całkowicie zapobiega temu układ tzw. superviso-ra, którym jest MAX691 (Ul). Oprócz blokowania linii CS podczas nieustabilizowanej wartości napięcia zasilającego VDD, dba on również o to, by pamięć RAM "nie zauważyła" kłopotów z zasilaniem. Po prostu w krytycznym momencie, zamiast 5V, dostanie ona 3V z baterii, co w zupełności wystarczy jej do zachowania swojej zawartości. W tym stanie pamięć pracuje w trybie "standby", a ponieważ jest wykonana w technologii CMOS, pobór prądu jest bardzo niewielki. Dodatkową korzyścią, wynikającą z zastosowania supervisora, jest to, że wystawia on prawidłowy sygnał zerowania po włączeniu układu. Wszystkie rekordy danych, zapisywane do pamięci, powinny być zaopatrzone w sygnaturkę zawierającą datę i czas rejestracji. Dokładnym odmierzaniem czasu astronomicznego zajmuje się układ DS1307 (U5) wraz z kwarcowym rezonatorem (tzw. zegarkowym o częstotliwości 215Hz - X2). Jest on dołączony do mikrokontrolera poprzez interfejs PC. W ADuC-u są do tego celu przewidziane oddzielne wyprowadzenia: SDATA i SCLOCK. Jeśli zegar U5 jest ustawiony i uruchomiony, to na jego wyjściu SQW występuje przebieg prostokątny 0 częstotliwości lHz, powodujący migotanie LED-a D2, generujący jednocześnie przerwania dla procesora. Procedura obsługi tego przerwania odczytuje informacje o dacie i czasie, które następnie pojawiają się na ekranie wyświetlacza. Do pomiarów temperatury służą układy MAX65 77 (U4 w stacji bazowej i U4 w sondzie). Według danych katalogowych, dokładność pomiaru tych układów wynosi ą0,8C, chociaż w najgorszym przypadku w temperaturze +25C może ona dochodzić aż do ą3C. Są one jednak dość wygodne w użyciu w systemach mikroprocesorowych, gdyż wartość temperatury przetwarzają na falę prostokątną o częstotliwości proporcjonalnej do niej. Pomiar częstotliwości przez procesor nie stanowi już większego problemu. Zależność pozwalająca dokładnie obliczyć zmierzoną temperaturę jest przedstawiona poniżej: T[C]=f[Hz]/m[Hz/K] - 273,15[K], gdzie m jest współczynnikiem zależnym od połączenia wejść TSO 1 TSl oraz może przybierać wartości 4, 1, 1/4 i 1/16. W połączeniach jak na schemacie, współczynnik m jest równy 1. Elektronika Praktyczna 4/2002 17 Domowa stacja meteo ze zdalnym pomiarem temperatury Układ U 7 jest typowym dla systemów MCS-51 buforem przełączanej szyny adresowej i danych. Pracuje tutaj w typowej konfiguracji, podobnie zresztą jak układ Ul3, realizujący sprzętową część interfejsu RS232. Jak widać transmisja jest jednokierunkowa - tylko do komputera. Odbiornik portu szeregowego zawarty w ADuC-u odbiera dane otrzymywane drogą radiową z sondy pomiaru temperatury zewnętrznej. W torze radiowym zastosowano znane już bardzo dobrze Czytelnikom układy Telecontrolli: RT2 - nadajnik i RR3 (Uli) - odbiornik. Sygnał wyjściowy z tego ostatniego jest dwu-drożnie doprowadzony do procesora. Z jednej strony - poprzez dwa inwertery U16A i U16B, pełniące funkcję buforów poprawiających nieco kształt sygnałów - do wejścia RxD portu szeregowego, z drugiej do wejścia Pl.2. Zostało to podyktowane koniecznością programowego wyłączania odbiornika w chwilach przerw w transmisji, wynikających z faktu, że na wyjściu OUT układu Uli w takiej sytuacji występuje poziom niski. Transmisja asynchroniczna wymaga zaś, by pomiędzy nadawanymi znakami występował poziom wysoki. Jeśli nawet następują bezpośrednio po sobie, to poziom niski jest interpretowany jako bit startu, a bitu stopu odbiornik nie znajduje, gdyż - przypominam - powinien mieć wartość logicznej jedynki. Krótko mówiąc, jeśli odbiornik SIO nie będzie wyłączony, to będzie on permanentnie generował przerwania, powodujące zawieszanie się systemu. Dlatego też stan wyjścia układu Uli jest systematycznie "podglądany" przez procesor i gdy rozpozna on sygnał przy- pominający sensowne dane, włącza odbiornik. Do pomiaru wilgotności względnej służy czujnik pojemnościowy RH25 (Sl). Jest to specyficznej budowy kondensator, którego okładki wykonane są z nieprzewodzącej folii, pokrytej napyloną warstwą złota. Stała dielektryczna tej folii zmienia się pod wpływem wilgotności. Obudowa elementu jest tak skonstruowana, że chroniąc mechanicznie okładziny kondensatora, zapewnia jednocześnie swobodny przepływ powietrza wokół nich. W rezultacie, w wyniku zmian wilgotności powietrza, zmienia się również pojemność elektryczna kondensatora. Czujnik jest włączony jako pojemność w typowej aplikacji układu 4060 (U10) - scalonego generatora i 14-bitowego licznika. Rezystory R12, R13 oraz pojemność czujnika Sl wyznaczają częstotliwość drgań oscylatora na niecałe lOkHz. Sygnał odbierany z wyjścia Q1O jest więc symetryczny i ma częstotliwość ok. lOOHz. Procesor mierzy długość jego półokresu i na tej podstawie określa wilgotność względną. Na skutek rozrzutu parametrów wymienionych wyżej elementów, czas trwania impulsów na wyjściu Q1O może się zmieniać. Aby nie wpływało to na wynik pomiarów, oprogramowanie stacji umożliwia wprowadzenie odpowiednich współczynników kalibrujących. Ważne jest jednak, by czas trwania impulsu (czas półokresu) nie był dłuższy od ok. 70ms. Do omówienia pozostał jeszcze pomiar ciśnienia atmosferycznego. W projektach prezentowanych w EP, czujniki ciśnienia występowały już kilkukrotnie. Tutaj przy- ! j ; 5 5 5 ? J a ; C Union I* Rys. 3. Przykładowy wykres zarejestrowanego ciśnienia. pomnę więc tylko krótko zasadę ich działania. MPX4115A - taki zastosowałem w stacji - to piezo-rezystywny czujnik ciśnienia, skompensowany termicznie, z wewnętrznym układem formującym sygnał wyjściowy. Nie wymaga więc żadnych dodatkowych układów. Można go dołączyć bezpośrednio do przetwornika A/C. Elementem czynnym czujnika jest cienka folia metalizowana, poddawana z wierzchu działaniu ciśnienia Pl, a od spodu ciśnienia P2 - w wersji pomiaru względnego lub tylko działaniu ciśnienia Pl w wersji pomiaru absolutnego. Jest ona zabezpieczona specjalnym elastycznym żelem, chroniącym ją przed szkodliwym wpływem otoczenia, takim jak wilgoć, żrące opary itp. Literka A przy nazwie oznacza, że w stacji jest wykorzystany czujnik mierzący ciśnienie absolutne. Piezorezystywna folia jest połączona odpowiednio w układzie mostkowym, tworząc czujnik, który współpracuje dalej z półprzewodnikowym układem wzmacniającym napięcie oraz zapewniającym kompensację termiczną. Na uwagę zasługuje bardzo dobra liniowość charakterystyki elementu w całym zakresie pomiarowym. MPX4115A mierzy ciśnienia od 150 do 1150hPa. Jak na potrzeby stacji pogodowej, to sporo za dużo. Do ustalenia zakresu pracy służą wzmacniacze operacyjne U3A i U3B, wchodzące w skład układu OP491. Wzmacniacz U3A powoduje "wycięcie" odpowiedniego fragmentu charakterystyki czujnika, a U3B zapewnia ustawienie offsetu tak, aby przetwornik analogowo-cyfrowy mógł pracować w całym swoim przedziale roboczym (O...2,5V). Poszczególne parametry reguluje się potencjomet-rami Pl i P2. Dokładne omówiono to w dalszej części artykułu. Wyniki wskazań poszczególnych czujników, mierzone o każdej pełnej godzinie, są rejestrowane w pamięci. Taki jest domyślny tryb pracy, choć można go zmienić w poleceniach konfiguracyj-nych wywoływanych z menu. Procesor dokonuje pomiarów jednak dużo częściej. Temperatura wewnętrzna i wilgotność są mierzone co 3 sekundy, ciśnienie co 30 sekund. Oszczędność baterii ogranicza częstotliwość pomiaru 18 Elektronika Praktyczna 4/2002 Domowa stacja meteo ze zdalnym pomiarem temperatury OAAH 055H b1 b2 b3 b4 CRC 55H...55H...55H... dana dana dana dana dana dana dana dana sekwencja rozruchowa dane Rys. 4. Format ramki danych. temperatury zewnętrznej do niecałych 3 minut. Bezpośrednio po odświeżeniu wskazań poszczególnych czujników, wyniki są wyświetlane na wyświetlaczu graficznym LCD o rozdzielczości 128x64 punkty - WM-G1206A (U9). Jest to dość popularny model wyświetlacza, wyposażony w sterownik zgodny z HD61202. Wymaga on tylko jednego napięcia zasilającego, a dodatkową zaletą jest możliwość podświetlania wskazań. Czytelnicy, którzy czytali już kiedyś artykuły opisujące podobne wyświetlacze pamiętają być może, że dla mikrokontrolerów są one niestety dość powolne. Na tyle powolne, że podsyłając kolejne dane do wyświetlenia procesor musi upewniać się (interpretując specjalny bit w statusie), czy aby na pewno sterowniki wyświetlacza są gotowe do przyjęcia nowego zadania. Jeśli nie, to niestety musi czekać. Wyświetlacz ma jeszcze jedną wadę. Informacji o jego braku gotowości nie można uzyskać poprzez np. wydzieloną do tego celu linię. Trzeba odczytywać słowo stanu. Ze względu na brak wolnych linii w procesorze stacji pogodowej, nie bada on jednak statusu wyświetlacza, a przed każdą operacją zapisu do niego, odczekuje przez pewien czas, po którym wyświetlacz na pewno jest gotów do przyjęcia danej. W rezultacie linia R/W jest na stałe dołączona do masy. Operacja zapisu do wyświetlacza odbywa się dwustopniowo. W pierwszym kroku procesor wpisuje daną do rejestru 74HCT3 74 (U15), który jest widoczny w całej przestrzeni adresowej zewnętrznego RAM-u procesora. W drugim kroku generowany jest odpowiedni impuls strobujący dla wyświetlacza, powodujący odczyt wcześniej zatrzaśniętej w Ul5 danej. Niewprawne, chociaż bystre oko początkującego miłośnika procesorów zauważy zapewne, że przecież nastąpi tu konflikt między pamięcią RAM, a rejestrem U15, który zajmuje dokładnie tę samą co pamięć przestrzeń adreso- wą. W rzeczywistości tak jest, ale wystarczy odrobina dyscypliny podczas pisania programu, by problemu nie było. I tak: informacje zapisywane do rejestru Ul5, przesyłane są zawsze pod jeden adres, znajdujący się w obszarze zmiennych systemowych. Dokładnie jest to 04FFH. Pamięci to jak widać nie zaszkodzi. A co będzie, gdy procesor będzie zapisywał daną do RAM-u. Z powyższego wynika, że trafi ona również do rejestru U15. Ale wtedy procesor nie będzie wystawiał impulsu strobującego, więc wyświetlacz "nic nie zauważy". Na wstępie napisałem, że wyświetlacz ma organizację 12 8x64 punkty. Fizycznie jednak jest widziany jako dwie matryce 64x64, wybierane niezależnymi sygnałami na liniach CSl i CS2. Rzadko się jednak zdarza, by zapisywać jednocześnie identyczną informację do dwóch obszarów wyświetlacza. Wykorzystując to po dodaniu inwer-tera U16D, udało się zaoszczędzić drogocenną linię wyjściową z procesora. Rezystor R8 i kondensator C28 służą do zerowania sterownika w wyświetlaczu po włączeniu zasilania, potencjometrem P3 reguluje się kontrast, a przełącznikiem SW5 można włączyć podświetlenie ekranu. Rezystor R7 ogranicza prąd podświetlania. Poszczególne bloki stacji pogodowej są zasilane ze stabilizatora 7805 (U12). Dioda Dl zabezpiecza całość przed uszkodzeniem w przypadku odwrotnego podłączenia zasilania do gniazda GNl. Dławik Li jest zastosowany zgodnie z zaleceniami producenta mik-rokontrolera ADuC812, o czym pisałem wyżej. Budowa sondy do pomiaru temperatury zewnętrznej Stacja pogodowa ma możliwość pomiaru temperatur w dwóch punktach. Przyjąłem, że temperatura będzie mierzona w pomieszczeniu, gdzie jest zainstalowana stacja oraz na zewnątrz. Aby nie trzeba było ciągnąć przewodów oraz wykonywać odpowiednich przepustów w oknie, postanowiłem wykonać sondę z radiową transmisją danych do bazy. Hybrydowy nadajnik RT2 (U5 - rys. 2) pracuje na częstotliwości 433,92MHz. Jest to układ w wersji, wymagającej dołączenia anteny zewnętrznej, przy czym w zupełności wystarczy tu kawałek przewodu. Może to być odcinek o długości odpowiadającej 1/ 4 długości fali, czyli ok. 17cm. Antenę dołącza się do wyprowadzenia 4 nadajnika. Równie dobrze (a może nawet lepiej, można zastosować nadajnik typu RT2), który ma już napyloną antenę na warstwie ceramiki. Ciągła praca sondy byłaby bardzo niewskazana. Z jednej strony zupełnie niepotrzebnie nadajnik emitowałby nośną, z drugiej mocno skracałoby to żywotność baterii zasilającej. Dobrze znany generator 4060 (U3), będzie pełnił tu rolę układu okresowo włączającego sondę, tym bardziej, że jest wykonany w technologii CMOS. Jest on zasilany bezpośrednio z baterii, jednak sam pobiera bardzo niewielki prąd. Elementy R4 i C2 ustalają częstotliwość drgań oscylatora na ok. 49Hz. Diody D3 i D4 oraz rezystor Rl realizują bramki AND. Na anodach tych diod wystąpi poziom wysoki tylko wtedy, gdy na obu wyjściach Q8 i Q14 też będzie poziom wysoki. Sytuacja taka będzie występowała co mniej więcej 2 minuty i 40 sekund, gdyż anody diod są połączone z wejściem zerującym układu U3. Na niespełna 3 sekundy przed wyzerowaniem, wyjście Q14 ustawi na poziomie wysokim. Jeśli zworka JPl będzie założona tak, by wyjście Q14 U3 było połączone z wejściem SD układu U2, to na jego wyprowadzeniach 1, 2 i 3 wystąpi napięcie +5V. Układ U2 jest bowiem miniaturowym stabilizatorem Iow dro-pout. Cenną jego zaletą, oprócz bardzo małej różnicy napięć między wejściem a wyjściem (tylko 200mV), jest możliwość wprowadzania go w stan shutdown, w którym pobiera prąd o wartości tylko Im A. Funkcję przełączania stanu pełni właśnie wejście SD. Jeśli jest na nim wysoki poziom, to pracuje normalnie. W przeciwnym razie pozostaje w stanie uśpienia. Trzy Elektronika Praktyczna 4/2002 19 Domowa stacja meteo ze zdalnym pomiarem temperatury sekundy aktywności stabilizatora wystarczą na to, by mikrokontroler AT89C2051 (Ul), dokonał pomiaru temperatury, a wynik przesłał do stacji bazowej. Transmisja jest asynchroniczna, odbywa się poprzez port szeregowy procesora i jest prowadzona z szybkością 12OObd. Na rys. 4 pokazano format wysyłania danych. Sekwencja powtarzanych na początku bajtów 0 wartości 55H jest związana z koniecznością włączenia odbiornika w stacji bazowej, o czym pisałem wcześniej. Wartość ta odpowiada symetrycznej fali prostokątnej 1 dlatego właśnie została użyta. Procesor stacji sprawdza wszystko co dociera z odbiornika radiowego. Gdy wykryje 50 kolejno po sobie występujących impulsów o czasie trwania odpowiadającym czasowi transmisji jednego bitu dla prędkości 1200bd, to włącza odbiornik. Zniekształcenia czasowe impulsów wnoszone przez tor radiowy spowodowały, że trzeba było dopuścić 30% tolerancję czasu trwania bitu 0 wartości 1. Oczywiście może się zdarzyć, że włączenie odbiornika nastąpi jeszcze w czasie trwania sekwencji rozruchowej. Pierwsze odebrane dane będą więc zupełnie bezwartościowe. Dodatkowo istotne jest, aby bezbłędnie rozpoznać początek właściwych danych. W tym celu między sekwencją rozruchową, a danymi występuje krótka przerwa, pozwalająca na prawidłowe zidentyfikowanie bitu stopu. Dzięki temu bit startu pierwszej odbieranej danej będzie również prawidłowo zinterpretowany, co poprawnie zsynchronizuje transmisję. Gdyby się jednak tak nie stało, to każdy rekord danych jest zaopatrzony w nagłówek (bajty OAAH, 55H - patrz rys. 4), po którym następują cztery bajty z informacją o temperaturze. Rekord -dla przysłowiowego świętego spokoju - kończy bajt zawierający sumę kontrolną, obliczaną bez nagłówka. Procesor w stacji przeszukuje wszystkie odebrane dane pod kątem wykrycia sekwencji OAAH, 05 5H. Gdy to nastąpi, zaczyna liczyć sumę mod 2 kolejnych czterech bajtów i sprawdza, czy jest ona identyczna z odebranym, piątym bajtem. Jeśli tak, uznaje że odebrany rekord jest prawidłowy 1 przystępuje do jego interpretacji. Jeśli nie uda się odebrać ani WYKAZ ELEMENTÓW Stacja bazowa Rezystory R1...R4, RIO, R17, R18: 10kO R5, R9: lkO Ró, R8: 5,lkQ R7: 3,30 Rll: 30kQ R12: 15kQ R13: 43kQ R14: 330O R15: 3kQ R16: 1,ÓQ Pl: 2,2kQ wieloobrotowy potencjometr montażowy P2: lOOka wieloobrotowy potencjometr montażowy P3: 22ka potencjometr montażowy Kondensatory C1...C4, Có, C27: 10jiF/25V C5: 100|iF/16V C7...C11, C14...C18, C23...C25: lOOnF C12, C13: 33pF C19: OJjiF C20: 0,33|iF C21, C22, C28, C29, C31: 47nF C26: 4,7^F/1ÓV C30: lOnF Półprzewodniki Dl: 1N4001 D2: LED (dowolna dioda świecąca) Ul: MAX691 U2: MPX4115A czujnik ciśnienia U3: OP491 U4: MAX6577 U5: DS1307 Uó: ADUC812 U7: 74HCT573 U8: 43256 U9: G120ÓA wyświetlacz graficzny 64x128 U10: 4060 Uli: RR3 moduł odbiornika radiowego U12: LM78O5 U13: MAX232 U14: 28C1001 (zaprogramowany flash EPROM) jednego rekordu, cała transmisja jest ignorowana. Tym samym tracimy próbkę, ale następna będzie już za niespełna 3 minuty. Nadajnik U5 jest zasilany napięciem z baterii, lecz w chwilach przerw jest ono odcinane przez tranzystory Tl i T2. Dioda świecąca Dl sygnalizuje aktywność nadajnika. Jej montowanie nie jest konieczne, zwłaszcza gdy chcemy maksymalnie oszczędzać baterię. U15: 74HCT374 U16: 4069 Tl: BC547 Różne BT1: 3V bateria litowa do druku GN1: ARK2 (5mm) GN2: DSUB9 (żeńskie) JP1: goldpin 2 LI: dławik 20^H Sl: RH25 czujnik wilgotności względnej SW1...SW5: mikroprzycisk do druku Xl: rezonator kwarcowy 11.0592MHZ X2: rezonator kwarcowy 32768Hz Sonda pomiaru temperatury zewnętrznej Rezystory Rl: lOOkO R2, R5: lkn R3: 15kO R4: 51 Oka R6: 10kO R7: 4.7kO Kondensatory Cl: ln-F C2: 20nF C3, C4: O,ln.F C5, Có: 33pF C7: 10p.F/16V Półprzewodniki Dl: LED D2: 1N5819 D3, D4: 1N4148 Ul: 89C2051 (zaprogramowany) U2: ADP3335 U3: 4060 U4: MAX6577 U5: RT2-433 moduł nadajnika radiowego Tl: BC547 T2: BC557 Różne GN1: ARK2 (5mm) JP1...JP3: Goldpin + zworka Xl: rezonator kwarcowy ll,0592MHz Dla zaspokojenia ciekawości mogę podać, że w stanie standby, sonda pobiera prąd ok. 280|iA, a w stanie aktywnym ok. 12mA, co daje średnie zużycie ok. 460|iA. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflkwiecienO2.htm. Elektronika Praktyczna 4/2002 PROJEKTY Elektromechaniczny efekt audio typu LESLIE AVT-5061 Efekt LESLIE został po raz pierwszy zrealizowany w przystawcie do elektroniczna-mechanicznych organów Hammonda już w latach czterdziestych. Zasada działania klasycznego generatora tego efektu jest bardzo prosta, ale uzyskiwane efekty niezwykle interesujące. Efekt LESLIE jest uzyskiwany za pomocą czterech głośników umieszczonych we wspólnej obudowie pod kątem 90 do siebie tak, że głośniki patrzą na cztery strony świata. Na tym jednak oczywiście nie koniec. Tak specyficznie skonstruowana kolumna głośnikowa umieszczona jest na obrotowej podstawie i wraz nią wiruje dookoła własnej osi. Liczba obrotów na minutę, wykonywanych przez zespół głośnikowy, może być różn a i zwykle wah a się pomiędzy 50 a 500obr./min. Niestety, zbudowanie prawdziwego układu generującego efekt LESLIE, który z założenia jest prawie wyłącznie urządzeniem mechanicznym, a nie elektronicznym, wydaje się być, jak na razie zbyt trudnym zadaniem. Napotkalibyśmy tu na rozliczne i trudne do przezwyciężenia trudności: zapewnienie bezszelestnej pracy napędu zespołu obrotowego, przezwyciężenie skutków działania siły odśrodkowej na głośniki (wynikają z tego zjawiska niepożądane zniekształcenia dźwięku), doprowadzenie przewodów elektrycznych do wirującej części urządzenia. To tylko część problemów jakie musi rozwiązać konstruktor. Pozwoliłem sobie przytoczyć obszerne fragmenty artykułu napisanego kilka lat temu (EP01/99) i udowodnić, że pewne niemożności można pokonać dzięki dobremu pomysłowi i niekonwencjonalnemu wykorzystaniu powszechnie znanego elementu. Głównym problemem, na jaki napotkałem podczas prób projektowania urządzenia realizującego , efekt LESLIE było oczy- \ wiście zdobycie silnika, a właściwie całego zespołu napędowego, który wprawiałby w ruch obrotowy głośniki. Taki zespół napędowy musiałby charakteryzować się praktycznie bezszelestną pracą, przy rozwijaniu sporej prędkości obrotowej i momencie obrotowym pozwalającym na poruszenie dość ciężkich głośników. Ale właściwie dlaczego te głośniki muszą być ciężkie? Przecież efekt typu LESLIE nie służy do bezpośredniego słuchania, ale jedynie do odbierania go za pośrednictwem mikrofonu i dalszej obróbki tak zarejestrowanego sygnału. Tak więc zastosowane w urządzeniu głośniki wcale nie muszą mieć zbyt dużej mocy i w zupełności możemy zadowolić się głośnikami o mocy nawet ułamka wata, ale o przyzwoitej jakości. Takie głośniki, nawet wyposażone w prostą obudowę, wcale nie muszą być ciężkie i nie będziemy musieli stosować zespołu napędowego o zbyt wielkiej mocy. Nierozwiązany został jeszcze problem zapewnienia cichej pracy zespołu napędowego. Przez pewien czas myślałem o zastosowaniu silnika indukcyjnego od starego gramofonu, aby napędzać tarczę z umieszczonymi na niej głośnikami za pośrednictwem przekładni pasowej, ale jakoś "nie miałem serca do takiego rozwiązania". Pomysł na wykonanie układu napędowego był dla mnie pewne- Elektronika Praktyczna 4/2002 21 Elektromechaniczny efekt audio typu LESLIE Rys. 1. Schemat elektryczny urządzenia. go rodzaju olśnieniem. Przecież potrzebny układ mechaniczny był cały czas dosłownie w zasięgu ręki! Możemy go zdobyć bez większego trudu, "zagospodarowując" urządzenie przeznaczone już do złomowania. Urządzeniem tym jest stacja dysków 5,25", obecne nie przedstawiająca już najmniejszej wartości użytkowej, ale będąca źródłem cennych podzespołów: silników krokowych. Jeden z nich, silnik wolnoobrotowy napędzający głowicę stacji, był już wykorzystywany w naszych konstrukcjach. Opracowaliśmy też wiele układów do jego sterowania. Drugi silnik, służący do bezpośredniego napędu dyskietki nie był, z uwagi na swoją specyficzną budowę, jak dotąd wykorzystywany. Silnik krokowy napędzający dyskietkę w stacji dysków 5,25" jest dość nietypowym przedstawicielem tej grupy silników. Przeznaczony jest do pracy ze stałą prędkością obrotową i w jednym kierunku. Układ elektroniczny sterujący jego pracą współpracuje z rezonatorem kwarcowym, co zapewnia bardzo dobrą stabilizację prędkości obrotowej, nieosiągalną w przypadku stosowania silników komutatorowych, a niezbędną dla prawidłowego działania stacji dysków. Pomimo tego bardzo specyficznego dla silników krokowych systemu sterowania, silnik ten możemy wykorzystywać jako zwykły silnik krokowy, z wynikającymi z tego szerokimi możliwościami. Niestety, niezbędne będą pewne, na szczęście łatwe przeróbki. Elektronika Praktyczna 4/2002 Elektromechaniczny efekt audio typu LESLIE Głośniki Mikrofon Komora pogłosowa Wzmacniacz wyjściowy Wzmcnacz głośnikowy Rys. 2. Zasada działania generatora efektu LESLIE z dwoma głośnikami podłączonymi równolegle. Zanim jednak przystąpiłem do opracowywania sterownika do silnika krokowego, mającego pracować jako napęd wirujących głośników w naszym generatorze efektu zbliżonego do LESLIE, poczyniłem stosowne próby, mające wykazać ewentualną przydatność silnika do nowego, postawionego przed nim zadania. Po wymontowaniu całego zespołu napędowego - składającego się z silnika i sterującego nim układu elektronicznego - z wnętrza stacji dysków, dołączyłem do niego właściwe napięcie zasilające (12VDC) i podałem na wejście sterujące układu napięcie o poziomie wysokim. Zgodnie z oczekiwaniami, silnik zaczął obracać się z sporą prędkością, nie wydając przy tym praktycznie żadnego dźwięku. Kolejna próba polegała na obciążeniu tarczy silnika masą zbliżoną do masy dwóch małych głośniczków. Próba ta zakończyła się jedynie częściowym powodzeniem: dodatkowo obciążony silnik nie chciał samodzielnie rozpocząć pracy i ruszył dopiero po delikatnym "popchnięciu", szybko osiągając nominalną prędkość obrotową. Wyniki prób były jednak na tyle zachęcające, że postanowiłem opracować specjalny sterownik przeznaczony do sterowania silnikiem krokowym wykorzystywanym do napędu wirujących głośników. Wyniki tej pracy po- zwalam sobie obecnie przedstawić Czytelnikom Elektroniki Praktycznej. Opis działania Schemat elektryczny proponowanego układu został pokazany na rys. 1, a na rys. 2 przedstawiono zasadę działania generatora efektu LESLIE wykorzystującego dwa połączone ze sobą równolegle głośniki. Schemat elektryczny, który w pierwszej chwili może wydać się nieco skomplikowany, możemy podzielić na dwa, praktycznie niezależne i połączone ze sobą tylko wspólnym zasilaniem bloki funkcjonalne. Dla zwiększenia czytelności rysunku zostały one oddzielone od siebie linią przerywaną i oznaczone jako "A" i "B". W pierwszej kolejności zajmijmy się układem służącym do bezpośredniego sterowania silnikiem krokowym. Najpierw powinienem wytłumaczyć się Czytelnikom, dlaczego namawiam Ich do budowy nowego sterownika silnika krokowego, zamiast zaprogramować wykorzystanie układu zintegrowanego z samym silnikiem, który w dodatku stosowany był z powodzenie podczas pierwszych eksperymentów z mechanicznym napędem do efektu LESLIE. Otóż układ umieszczony w obudowie silnika napędzającego dyskietkę w stacji dysków elastycznych nie posiada żad- nej możliwości zmiany prędkości obrotowej. Taka możliwość jest nam niezbędna, i to z dwóch powodów. Po pierwsze, regulując prędkość wirowania głośników możemy zmieniać w szerokim zakresie rodzaj uzyskiwanego efektu akustycznego. Po drugie, jak już wspomniałem, zastosowany silnik ma spore trudności z samodzielnym "ruszeniem z miejsca" i należy go powoli rozpędzać, aż do osiągnięcia maksymalnych obrotów. Zasada działania silników krokowych, będących idealnym "przełożeniem" pomiędzy elektroniką a mechaniką, była już kilkukrotnie opisywana na łamach Elektroniki Praktycznej. Dlatego też przypomnimy ją sobie jedynie w największym skrócie. W dużym uproszczeniu silnik krokowy zbudowany jest z magnesu - wirnika umieszczonego pomiędzy dwoma cewkami. Przepływ prądy przez cewki powoduje powstanie wirującego pola magnetycznego i w konsekwencji obracanie się wirnika. Schemat budowy takiego silnika oraz sposób zasilania jego cewek pokazano na rys. 3. W rzeczywistości wewnątrz silnika krokowego umieszczonych jest kilka-kilkanaście cewek połączonych ze sobą w dwie grupy, a i w wirniku znajduje się znacznie więcej magnesów. Wiemy już jaką rolę ma spełniać nasz sterownik: włączać kolejno prąd w cewkach silnika oraz zmieniać kierunek jego przepły- L1 L2 Kroki Krok 2 Krok 3 Krok 4 Kolejność i kierunek przepływu prądu w cewkach silnika krokowego Rys. 3. Schemat budowy silnika krokowego oraz sposób zasilania jego cewek. Elektronika Praktyczna 4/2002 23 Elektromechaniczny efekt audio typu LESLIE fEABER-ł Rys. 4. Rozmieszczenie elementów na płytce drukowanej. wu. Zobaczmy, czy udało mi się zrealizować postawione zadanie. Generator zbudowany z wykorzystaniem popularnego układu NE555 - IC2 wytwarza ciąg impulsów prostokątnych, których częstotliwość możemy zmieniać w szerokim zakresie ca pomocą potencjometru Pl. Impulsy te podawane są na wejście zegarowe licznika Johnsona ICl -4017 zliczającego do 4. Rozpatrzmy teraz, co się stanie w momencie pojawienia się wysokiego poziomu napięcia na pierwszym wyjściu tego licznika - Q0, czyli w pierwszym kroku cyklu pracy silnika. Skutkiem tego będzie przewodzenie tranzystora Tl, a w konsekwencji także spolaryzowanie baz tranzystorów T5 i T3. Przez pierwszą z cewek silnika krokowego dołączoną do zacisków 1 i 2 złącza CON4 popłynie prąd, umownie w kierunku zgodnym z wskazówkami zegara. Pojawienie się wysokiego poziomu napięcia na wyjściu Ql ICl spowoduje z kolei przepływ prądu w tym samym kierunku przez drugą z cewek, a tym samym wykonanie drugiego kroku pracy silnika. Uaktywnienie wyjścia Q2 ICl spowoduje włączenie tranzystorów T6 i T2 i prąd popłynie tym razem znowu przez pierwszą cewkę, lecz w przeciwnym kierunku co uprzednio. W ostatnim, czwartym kroku cyklu pracy silnika trzeba zasilać drugą cewkę, także w przeciwnym kierunku niż w kroku 2. Opisany cykl pracy silnika będzie powtarzał się aż do wyłączenia zasilania, powodując obracanie się silnika w jednym kierunku, z prędkością regulowaną za pomocą potencjometru Pl. Tak więc układ sterujący pracą silnika krokowego spełnia przyjęte założenia i należy sądzić, że będzie pracował poprawnie. Druga cześć schematu, oznaczona jako "A", zawiera schemat typowo skonstruowanego wzmacniacza m. cz. średniej mocy, przeznaczonego do zasilania głośników. W układzie zastosowałem popularny i, co bardzo ważne, tani scalony wzmacniacz mocy typu TDA2030. Przy napięciu zasilania 16VDC jest on w stanie dostarczyć mocy ok. 12W, co nawet znacznie przekracza nasze potrzeby. Natężenie dźwięku docierającego do głośników możemy regulować za pomocą potencjometru P2. Montaż i uruchomienie Montaż części elektronicznej urządzenia nie nastręczy z pewnością nikomu większego kłopotu. Natomiast pomęczymy się trochę z częścią mechaniczną, ale zaręczam Warn, że uzyskane efekty będą warte tego zachodu. Na rys. 4 pokazano mozaikę ścieżek płytki obwodu drukowanego oraz rozmieszczenie na niej elementów. Płytkę zaprojektowano na laminacie jednostronnym, co niestety pociągnęło za sobą konieczność zastosowania kilku, tak przez nas nie lubianych zworek. Od nich właśnie rozpoczniemy montaż układu, lutując w dalszej kolejności elementy o coraz większych gabarytach. Po wlutowaniu kondensatora CIO przystąpimy do montażu scalonego wzmacniacza mocy - IC3. W pierwszej kolejności musimy przykręcić układ scalony do radiatora (nie zapominając o zastosowaniu pasty poprawiającej kontakt termiczny pomiędzy tymi elementami), a następnie włożyć wyprowadzenia układu w przeznaczone na nie otwory w punktach lutowniczych na płytce. Kolejną czynnością będzie przylutowanie radiatora do płytki, a następnie wyprowadzeń układu scalonego. Układ zmontowany ze sprawnych elementów nie wymaga jakiegokolwiek uruchamiania ani regulacji i działa natychmiast poprawnie. No, a teraz najgorsze: mechanika. Na szczęście zastosowanie silnika krokowego uwolniło nas od konieczności budowania przekładni mechanicznej i uprościło znacznie konstrukcję urządzenia, ale i tak natkniemy się na przynajmniej jeden problem do rozwiązania. Problemem tym będzie doprowadzenia zasilania do wirujących głośników. Wagę problemu znacznie powiększył fakt, że obie części silnika: wirnik i podstawa są, wbrew oczekiwaniom, elektrycznie odizolowane od siebie. Pierścienie ślizgowe wykonane z blachy mosiężnej i zamocowane do spodniej części wirnika silnika Do głośników, Do wzmacniacza IC3 Styki (najlepiej wymontowane z uszkodzonego przekaźnika) z złoconymi końcówkami. Rys. 5. Sposób wykonania styków ślizgowych. Elektronika Praktyczna 4/2002 Elektromechaniczny efekt audio typu LESLIE WYKAZ ELEMENTÓW Rezystory Pl, P2: potencjometr obrotowy lOOka R1...R3, R5, R6, Rll, R16, R21...R23: 820O R4, R9, RIO, R12: 200O R7, R8: 560O R13, R14, R18: 10kO R15, R19, R20: lOOka R17: 30O Kondensatory Cl, C3, C5, C6: 220nF C2, C9: 1000jiF/16V C4: 22nF C7, Cli: 470nF C8: 22jiF/16V CIO: 2200|iF/25V Półprzewodniki BR1: mostek prostowniczy 3A D1...D10: 1N4148 lub odpowiednik IC1: 4017 IC2: NE555 IC3: TDA2030 IC4: 7812 Tl, 17, T4, T10: BC548 lub odpowiednik T2, T3, T8, T9: BD139 lub odpowiednik T5, T6, Tli, T12: BD140 lub odpowiednik Różne CON1, CON2, CON3: ARK2 Radiator typ 3 Jest to prawdopodobnie spowodowane zastosowaniem w konstrukcji łożysk kulkowych, na których ułożyskowany jest wirnik silnika, z tworzywa sztucznego. Tak więc musimy doprowadzić do wirujących silników aż dwa przewody. Perfekcyjnym rozwiązaniem stającego przed nami zadania byłoby... nie doprowadzanie do głośników żadnych przewodów, lecz doprowadzenie do nich sygnału drogą radiową lub za pomocą podczerwieni. Rozwiązanie takie jest jednak nie do przyjęcia ponieważ nie tylko spowodowałoby drastyczny wzrost kosztów, ale także zwiększyłoby znacznie masę (konieczność zastosowania zasilania akumulatorowego lub bateryj-nego) i wymiary wirującej części urządzenia. Pozostaje nam zatem wykonanie styków ślizgowych, od których jakości zależeć będzie w znacznym stopniu jakość dźwięku dostarczanego do głośników. Sposób wykonania takich styków został pokazany na rys. 5 i nie wymaga chyba żadnych dodatkowych komentarzy. Należy teraz wspomnieć parę słów na temat sposobu korzystania z wykonanego urządzenia. Zasada postępowania jest prosta: eksperymentować, eksperymentować i jeszcze raz eksperymentować! Eksperymenty te mogą dotyczyć wielu elementów urządzenia, jego obudowania lub zrezygnowania z obudowy i innych. Na przykład, w układzie modelowym zastosowano dwa głośniki, a także wykonano próby z jednym głośnikiem. W obydwóch przypadkach uzyskiwane efekty były bardzo interesujące, lecz różne. Przy próbach, w których nasz generator efektu LESLIE pracował bez obudowy, uzyskiwany efekt był w zasadzie czystym "Dopplerem", bez jakichkolwiek domieszek. Prawdziwa zabawa rozpoczęła się jednak po umieszczeniu urządzenia w skrzynce wykonanej z pleksiglasu o grubości 5 mm (szczegóły widoczne na fotografii). Uzyskiwane efekty były bardzo interesujące, lecz trudne do opisania dla kogoś, kto nie potrafi nawet rozpoznawać instrumentów muzycznych. W każdym razie była to zawsze mieszanka efektu Dopplera i złożonego pogłosu, powstającego w wyniku odbijania się fali dźwiękowej od ścianek obudowy. Do wszystkich prób wykorzystywany był mikrofon elektretowy połączony z typowym przed-wzmacniaczem mikrofonowym i wzmacniaczem słuchawkowym. Należy jeszcze wspomnieć parę słów na temat koniecznych przeróbek silnika. Silnik napędzający dyskietkę w stacji dysków 5,25" zblokowany jest w jedną całość z układem elektronicznym sterującym jego pracą. Przed wykorzystaniem w naszym urządzeniu, silnik należy rozebrać i zlokalizować wyprowadzenia zespołów cewek, do których następnie należy dołączyć wyjście nowo zbudowanego sterownika. Zbigniew Raabe, AVT Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflkwiecienO2.htm. Elektronika Praktyczna 4/2002 25 PROJEKTY Cyfrowy tester żarówek AVT-5059 Na pomysł zaprojektowania testera wpadłem podczas kupowania żarówek w sklepie elektrycznym- Podglądając pracę sprzedawcy podczas kontroli sprzedawanych żarówek zauważyłem, że do tego celu używa on prostego układu składającego się z zestawu oprawek podłączonych do sieci poprzez wyłącznik, I to wystarczy. Spróbuję jednak zaprezentować układ na miarę XXI wieku. Taki układ wydał mi się nieco przestarzały, aczkolwiek dość skuteczny do przeprowadzenia prostego testu. Dużą wadą układu jest jednak to, źe obsługujący może przez nieuwagę zostać porażony prądem z sieci, co jest bardzo niebezpieczne. Tester oparto na popularnym i znanym czytelnikom EP mikiokontrolerze ST62T20C. Jego wielką zaletą jest to, że zawiera w swojej strukturze przetwornik analogowo-cyfrowy Budowa układu Schemat blokowy testera pokazano na rys. 1. Na rys. 2 przedstawiono schemat elektryczny testera. Wynika z niego, że nie jest to układ zbyt skomplikowany co pozwala na sprawne wykonanie go przez mniej zaawansowanych elektroników hobbystów. W testerze wykorzystano fizyczne właściwości włókien wolframowych, będących najbardziej istotnym elementem żarówek, decydującym o ich sprawności. Podstawowymi parametrami każdej żarówki są: znamionowe napięcie zasilania oraz moc. Nas najbardziej będzie interesowała moc żarówki i wynikająca z niej rezystancja włókna w stanie zimnym. Każdy kto obliczał jakiekolwiek obwody elektryczne i korzystał z prawa Ohma od razu zauważy, że podane w tab. 1 rezystancje włókien są bardzo małe w stosunku do mocy nominalnej żarówek. Jeżeli rezystancja włókien byłaby rzeczywiście tak mała, to moc żarówek byłaby znacznie większa, niż wynika to z danych katalogowych. Prześledźmy zatem, co się dzieje w momencie włączenia żarówki 100W do sieci o napięciu 230V. Przy rezystancji zimnego włókna równej 36Li popłynie prąd o wartości ponad 6 amperów, co trwa jednak bardzo krótko, gdyż włókno wolframowe, rozgrzewając się pod wpływem tak dużego prądu, szybko zwiększa swoją rezystancję. Jej wzrost powoduje zmniejszenie natężenia prądu do wartości odpowiadającej znamionowej mocy żarówki. Zjawisko takie zachodzi w każdej żarówce, niezależnie od tego czy jest to żarówka przeznaczona do zasilania z sieci, czy też zwykła żaróweczka do latarki. Przy eksploatacji żarówek należy pamiętać, że częste włączanie i wyłączanie skraca ich żywotność, ponieważ przy każdym włą- Dbwód Ba Badana pomiarowy żarówka ___ IE Mik Rys. 1. Schemat blokowy układu pomiarowego. Elektronika Praktyczna 4/2002 27 Cyfrowy tester żarówek +5V R7 nR8 riR9 nmo 820 U 820 U 820 U 820 +5V Rys. 2. Schemat elektryczny testera. czeniu występuje potężny udar mechaniczny rozgrzewającego się włókna. W tab. 1 podano rezystancje włókien wolframowych. W zależności od mocy żarówki podano również napięcia występujące na wejściu przetwornika analogowo cyfrowego (wyprowadzenie PB5 mikrokontrolera) podczas testu. Działanie układu i programu sterującego pracą mikrokontrolera prześledzimy w oparciu o schemat programu (rys. 3), który stworzono za pomocą ST6 - Realizera. Jak widzimy, sam program nie jest skomplikowany i wykorzystuje niewielką część pamięci procesora. Działanie programu opiera się na wykorzystaniu przetwornika A/C i zastosowaniu tabeli referencyjnej. Po włączeniu zasilania układ mikrokontrolera jest zerowany, a program znajduje się w stanie początkowym START. Wówczas zostaje spełniony warunek WLACZ i program przechodzi do stanu PRACA, w którym znajdować się będzie do chwili wyłączenia zasilania. Po przejściu w stan PRACA, na wyjściu cyfrowym sterującym tranzystorem Tl pojawia się wysoki poziom uaktywniający zewnętrzny blok pomiarowy testera. Wówczas zaświeci się również dioda Dl sygnalizująca wolne wejście pomiarowe. Gaśnie ona w chwili dołączenia do wejścia pomiarowego testowanej żarówki. Jeżeli wejście pomiarowe zewrzemy lub przyłączymy żarówkę o większej mocy niż 100W, to natychmiast zaświeci się dioda D2. Jak już wspomniałem, program mikrokontrolera bazuje przede wszystkim na przetworniku ana-logowo-cyfrowym, z którego dane WLACZ WLACZ PRACA, POMIAR UBYTE POIAR ŻARÓWEK A B>A B A=B=C C BA B>A B A=B=C C BDl 15W LOOKUP Q(0 BIT LOOKUP 0(1) BIT LOOKUP 0(1) BIT 40W 0(1) BIT 60W 0(1) BIT 75W L00K11P. Od) BIT 100W 15W 25W 40W 60W 75W P_\D_2 D2 ]i5_W i Ww f 40_W f |eo_w r 75_W F lioo_w 100W Rys. 3. Uproszczony schemat działania programu. Elektronika Praktyczna 4/2002 Cyfrowy tester żarówek e* D 31,1 22,1 33,1 24,11 36,1 36,1 Rys. 4. Przykładowa zawartość tabeli dla żarówki o mocy 75W. po przetworzeniu w postaci słowa ośmiobitowego podawane są do tabel (look up tobie) typu BIT. Każda z tabel ma oczywiście inną zawartość, a zależy ona od mocy żarówki, dla jakiej dana tabela została skonfigurowana. Jeżeli na wejściu tabeli pojawią się dane, które są w niej zawarte, to na wyjściu tejże tabeli pojawi się poziom wysoki. Spowoduje to zaświecenie się (na zewnątrz układu) diody sygnalizacyjnej LED odpowiadającej mocy żarówki jaka została przyłączona do wejścia pomiarowego. Na rys. 4 przedstawiono zawartość tabeli dla żarówki o mocy 75W. Dobieranie zawartości tabel nie jest trudne, a cała konfiguracja zależy od wartości spadku WYKAZ ELEMENTÓW Rezystory Rl, R2, Rll: R3...R10: R12: 30CO R13, R14: POT1: Kondensatory Cl: 10CąiF/lóV C2: 470^F C3: lOOnF C4, C5: 30pF Có: l^F Półprzewodniki D1...DS: LED dowolne Ml: mostek 1,5A Tl: BC550C T2: BC557B USl: STÓ2T20C US2: 7805 Różne Xl: SMHz Złqcze ARK napięcia mierzonego na badanej żarówce przez przetwornik A/C. W tab. 1, oprócz mocy i rezystancji włókna, podano wartości spadków napięć, które zostały zmierzone następująco (bez mikiokon-tiolera w podstawce): 1. W miejsce wejścia przetwornika PB5 (wyprowadzenie 10 USl) dołączamy miernik uniwersalny. 2. Wyprowadzenie 11 podstawki układu USl zwieramy do plusa zasilania i włączamy zasilanie. 3. Obserwując wskazania miernika potencjometrem POTl ustawiamy wartość napięcia 4,00V (bez obciążenia). 4. Następnie, zaopatrzywszy się w szereg żarówek od 15W do 100W, możemy przystąpić do przeprowadzenia testów. Po wykonaniu pomiarów napięcia, uzyskane wyniki należy podzielić przez 0,02. Otrzymamy wówczas wartość dziesiętną liczby do wpisania w tabelę. Na przykład dla żarówki 75W zmierzone napięcie na PB5 wyniesie 0,48V. Po podzieleniu przez 0,02 otrzymamy wynik 24. Wiadomo, że poszczególne egzemplarze żarówek tej samej mocy różnią się między sobą, więc musimy przyjąć jakiś przedział tolerancji i w tabeli (oprócz danej którą otrzymaliśmy z obliczeń) musimy wpisać liczby mniejsze od uzyskanego wyniku oraz większe. Montaż i uruchomienie Mikiokontioler możemy zaprogramować multiprogramatorem AVT-993 (EP01/2000) lub nabyć zaprogramowany układ w AVT. Schemat montażowy testera pokazano na rys. 5. Jak widać, płytka nie jest skomplikowana, więc nie powinno być kłopotów z jej wykonaniem. Specjalnych wskazówek dotyczących montażu układu nie ma. Należy jedynie zwrócić uwagę przy wlutowywaniu diod LED, aby były na jednej wysokości. Ważne jest również to, aby zastosować jako gniazdo pomiarowe odpowiednią oprawkę tak, aby powierzchnie styku zapewniały odpowiednie przyłączenie żarów- Tab. 1. Zestawienie wartości rezystancji zimnych włókien w żarówkach o różnej mocy. Moc żarówki Rezystancja [ni Napięcie na wejściu przetwornika A/CAuartość binarna 15W 336 3.08W154 25W 150 1.45W72 40W 95 0.92W46 60W 58,5 0.62W31 75W 49 0.48W24 100 W 36 0.35W18 ki do układu. Zły styk może spowodować nieprawidłowy wynik pomiaru. Z uruchomieniem układu nie powinno być żadnych kłopotów. Po zmontowaniu układu należy dokonać drobnej regulacji potencjometrem POTl, zgodnie z wcześniej przedstawionym opisem. Myślę, że zaprezentowany układ interesująco rozwiązuje problemutestowania żarówek oraz określania ich mocy, np. po zatarciu opisu na szklanej bańce. Prosta budowa układu, dzięki zastosowaniu mikiokontrolera, powinna zachęcić zarówno młodszych jak i ambitniejszych elektroników do samodzielnego wykonania układu. Kizysztof Górski, AVT krzysztof.gorski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http:ffwww.ep.com.plf Tpdffkwi eci enO2Jttm. ZASILANIE Rys. 5. Rozmieszczenie elementów na płytce drukowanej. Elektronika Praktyczna 4/2002 PROJEKTY Wyświetlacz bezprzewodowy AVT-5058 W artykule przedstawiamy moduł inteligentnego wyświetlacza, składający się z czterech wyświetlaczy LED o wysokości 57mm oraz dwóch diod wyświetlających dwukropek. Moduł może współpracować np. z zegarem lub termometrem, jego zaletą jest możliwość bezprzewodowego dołączenia do dowolnego urządzenia sterującego. Komunikacja układu nadawczego z wyświetlaczami odbywa się bezprzewodowo, za pomocą fal radiowych. Jest to niewątpliwa zaleta wyświetlacza, gdyż można go umieścić w dowolnym miejscu pomieszczenia, a do pracy potrzebne jest tylko napięcie zasilające - nie ma potrzeby dołączania dodatkowych linii transmisji danych. Układ można umieścić w listwach na-tynkowych lub nawet wkomponować w ścianę gipsową bez potrzeby późniejszej ingerencji w jego wnętrze, gdyż wszystkie parametry dotyczące sposobu wyświetlania mogą być konfigurowane zdalnie poprzez moduł nadawczy. Możliwe jest również jednoczesne sterowanie z jednego nadajnika kilkoma wyświetlaczami. Może to być przydatne, gdy modułem nadajnika steruje zegar wyposażony w odbiornik DCF - wtedy wystarczy tylko jeden taki zegar do wskazywania dokładnej godziny w kilku pomieszczeniach. Moduł wyświetlaczy posiada również brzęczyk do sygnalizowania pewnych zdarzeń, np. przekroczenia zadanej temperatury, gdy wyświetlacz jest wykorzystywany w systemie pomiaru temperatury, lub jako budzik, w przypadku wyświetlania czasu. Wyświetlacze posiadają również czterostopniowe przyciemnianie, umożliwiające dostosowanie jasności świecenia do oświetlenia zewnętrznego. Moduł nadawczy został zaprojektowany tak, aby miał wymiar popularnych wyświetlaczy alfanu- merycznych LCD. Wyprowadzenia zasilania układu są również zgodne ze stosowanymi w wyświetlaczach LCD. Można więc zamiast już istniejącego wyświetlacza zamontować moduł nadawczy i po zmianie oprogramowania w procesorze sterującym sterować wyświetlaczem siedmio segmentowym bez konieczności wykonywania nowej płytki drukowanej. Tab. 1. Zestawienie znaków wyświetlanych przez moduł L.p. D4 D3 D2 D1 Wyświetlacz 1 0 0 0 0 0 2 0 0 0 1 1 3 0 0 1 0 2 4 0 0 1 1 3 5 0 1 0 0 4 6 0 1 0 1 5 7 0 1 1 0 6 8 0 1 1 1 7 9 1 0 0 0 8 10 1 0 0 1 9 11 1 0 1 0 A 12 1 0 1 1 C 13 1 1 0 0 E 14 1 1 0 1 F 15 1 1 1 0 0 16 1 1 1 1 Wygaszony Elektronika Praktyczna 4/2002 31 Wyświetlacz bezprzewodowy CON1 4093 Rys. 1. Schemat elektryczny modułu nadawczego. Budowa i działanie System zdalnego wyświetlania składa się z dwóch modułów: modułu nadawczego i modułu odbiorczego wraz z wyświetlaczami. Schemat modułu nadawczego przedstawiono na rys. 1. Składa się on z dwóch układów scalonych, a jego rolą jest zmiana sygnałów równoległych, pojawiających się na wejściach danych, do postaci szeregowej i wysłania ich do odbiornika za pomocą fal radiowych. Układ USl jest scalonym koderem/dekoderem danych umożliwiającym przesłanie jednego bajtu danych. Układ ten może pracować zarówno jako koder jak i dekoder, w zależności od stanu logicznego na wejściu sterującym trybem pracy (oznaczonym MODĘ). W układzie nadajnika wejście to zwarte jest z plusem zasilania. Po włączeniu zasilania na wyjściu TRO pojawiają się ciągi impulsów odpowiadające stanom logicznym na wejściach adresowych A1...A10 oraz wejściach danych D1...D8. Wejścia adresowe są trój stanowe i wykrywane są na nich stany: zwarcia do masy, zwarcia do plusa lub pozostawienie "w powietrzu". Sposób kodowania poszczególnych stanów logicznych przedstawiono na rys. 2. Impulsy na wyjściu TRO są generowane przez cały czas włączenia zasilania, niezależnie od tego czy transmitowane dane ulegają zmianie, czy też nie. Powoduje to, że przez cały czas, gdy jest włączony moduł nadawczy, blokowane jest pasmo radiowe dla innych modułów radiowych mogących pracować w pobliżu wyświetlaczy. Aby temu zapobiec, sygnał radiowy jest włączany tylko na czas wysyłania danych. Ponieważ koder nie posiada wejścia sterującego przepływem da- nych, to konieczne jest zastosowanie na jego wyjściu zewnętrznego układu kluczującego transmitowane dane. Rolę takiego klucza pełnią bramki NAND układu US2. Podanie na wejście 1 bramki US2A stanu logicznej jedynki powoduje, że dane z wyjścia TRO układu USl występują na wyjściu tej bramki odwrócone w fazie o 180. Kolejne trzy bramki tego układu powodują ponowne odwrócenie sygnału o 180, a więc na wejście nadajnika radiowego trafia sygnał zgodny w fazie z sygnałem z wyjścia TRO. Równolegle połączenie trzech bramek zwiększa ich sumaryczną wydajność prądową. Jeżeli chcemy wysłać jakieś dane, to należy na wejścia D1...D8 podać odpowiednią kombinację, a na wejście numer 6 złącza CONl dodatni impuls powodujący przesłanie tych danych do odbiornika. Na rys. 3. przedstawiono przebiegi wejściowe i wyjściowe klucza. Jako układ nadajnika radiowego zastosowano hybrydowy na- Tab.2. Komendy sterujące wyświetlaczem Lp. D8 D7 D6 D5 D4 D3 D2 D1 Opis 1 X A2 A1 AO D4 D3 D2 D1 Format danych wysyłanych do modułu nadajnika: X - bit bez znaczenia A2...A0 - numer komendy (rozkazu) D4...D1 - dane sterujące 2 X 0 0 0 D4 D3 D2 D1 Adres=O - wartość zapisana na pozycjach D4...D1 zostaje przetworzona na kod wyświetlacza siedmiosegmentowe-go i wpisana na wyświetlacz DP1 3 X 0 0 1 D4 D3 D2 D1 Adres=1 - wartość zapisana na pozycjach D4...D1 zostaje przetworzona na kod wyświetlacza siedmiosegmentowe-go i wpisana na wyświetlacz DP2 4 X 0 1 0 D4 D3 D2 D1 Adres=2 - wartość zapisana na pozycjach D4...D1 zostaje przetworzona na kod wyświetlacza siedmiosegmentowe-go i wpisana na wyświetlacz DP3 5 X 0 1 1 D4 D3 D2 D1 Adres=3- wartość zapisana na pozycjach D4...D1 zostaje przetworzona na kod wyświetlacza siedmiosegmentowe-go i wpisana na wyświetlacz DP4 6 X 1 0 0 D4 D3 D2 D1 Adres=4 - pod tym adresem możliwe jest zapalenie kropek dziesiętnych wyświetlaczy DP1 ...DP4 D1-kropka dziesiętna wyświetlacza DP1, jeśli D1 =1 to świeci D2-kropka dziesiętna wyświetlacza DP2, jeśli D2=1 to świeci D3-kropka dziesiętna wyświetlacza DP3, jeśli D3=1 to świeci D4-kropka dziesiętna wyświetlacza DP4, jeśli D4=1 to świeci 7 X 1 0 1 D4 D3 D2 D1 Adres=5- pod tym adresem ustawia się jasność świecenia wyświetlaczy, włącza buzzer, włącza dwukropek D4, D3; wyświetlacze mogą świecić na jednym z czterech poziomów jasności: Jeśli D4=1 i D3=1, to świecą z maksymalną jasnością Jeśli D3=0 i D3=0, to świecą z minimalną jasnością D2 - włącza Buzzer, jeśli D2=1, to Buzzer włączony D1 - włącza dwukropek, jeśli D1=1, to dwukropek zapalony 32 Elektronika Praktyczna 4/2002 Wyświetlacz bezprzewodowy Fosc/16 . "0" "otwarty"" Rys. 2. Przebiegi czasowe na wyjściu "TRO" układu UM 3758-108A. Rys. 3. Przebiegi czasowe na wejściach i wyjściu cyfrowego klucza. dajnik RT4. Nadajnik ten umożliwia poprawną pracę już od napięcia zasilającego 2V. Płytka nadajnika przewidziana jest do współpracy z mikroprocesorem z napięciem zasilającym równym 5V. Zastosowany nadajnik umożliwia więc poprawną pracę przy tak niskim (jak na nadajniki radiowe) napięciu. W celu zwiększenia zasięgu (między nadajnikiem i odbiornikiem) do układu RT4 można dołączyć antenę zewnętrzną w postaci odcinka przewodu. Na rys. 4 przedstawiono schemat elektryczny modułu wyświetlacza. Zawiera on procesor sterujący USl, układy wzmacniaczy prądowych US2 i US5, dekoder UM3758 (identyczny z zastosowanym w module nadajnika, lecz pracujący jako dekoder), odbiornik radiowy i wyświetlacz LED. Stabilizator US7 dostarcza napięcie 5V do układów sterujących modułu wyświetlacza. Dioda Dl zabezpiecza układ przed podłączeniem napięcia o odwrotnej polaryzacji. Za tą diodą jest napięcie około 12V, niezbędne do sterowania wyświetlaczami LED. Zastosowany procesor jest "silniejszym" bratem popularnego PIC16F84A. Procesor zawiera w swojej strukturze 2k słów 14-bitowych pamięci programu typu Flash, pamięć EEPROM, interfejsy szeregowej transmisji danych typu: RS232, PC (mogący pracować zarówno w trybie MASTER, jak również SLAVE) oraz interfejs SPI. Układ PIC16F872 posiada również 10-bitowy przetwornik A/C, trzy timery, sterownik PWM i wiele jeszcze innych bloków. Szczegółowe informacje o tym procesorze są dostępne na stronie producenta (www.microchip.com). Procesor ten posiada jeszcze jedną bardzo przydatną podczas pisania i testowania programów funkcję. Mianowicie, przy współpracy z programem MPLAB oraz systemem MPLAB-ICD, możliwe jest obserwowanie zawartości wszystkich rejestrów w pracującym procesorze znajdującym się w układzie. Procesor może wystartować z dowolnej komendy programu i być zatrzymany również w dowolnym momencie. Istnieje także możliwość pracy krokowej . Jest to więc znakomity emulator procesora. Do emulacji wykorzystywane są tylko dwa wyprowadzenia procesora oraz 2 56 słów wewnętrznej pamięci programu, a do pracy krokowej nie jest zajmowana linia przerwanie procesora, jak to ma miejsce w przypadku innych emulatorów. W przedstawionym układzie wykorzystywanych jest tylko niewiele funkcji procesora. Służy on do przetwarzania odebranych danych z układu dekodera US3, a następnie wyświetlenie ich na wyświetlaczach. Procesor pracuje z zewnętrznym rezonatorem kwarcowym o częstotliwości 4MHz, co w przypadku mikroprocesorów tej rodziny daje cykl maszynowy równy l|is. Do zerowania układu procesora zastosowano specjalizowany układ DS1813, który zapewnia, że procesor uruchomi się poprawnie nawet przy wolnym narastaniu napięcia zasilającego. Wyświetlacze sterowane są w sposób multipleksowy, co pozwala na znaczne zmniejszenie poboru prądu w stosunku do układów statycznych, gdyż w danej chwili świeci tylko jeden wyświetlacz. Kolejne wyświetlacze są zapalane i gaszone z częstotliwością około lkHz, oko ludzkie nie jest w stanie zaobserwować tak szybkich zmian i odbiera to tak, jak gdyby świeciły się wszystkie wyświetlacze jednocześnie. Działanie układu zostanie omówione od początku przepływu informacji. Odbiornik radiowy US4 odbiera wszystkie sygnały radiowe pojawiające się w eterze (w paśmie pracy odbiornika), a następnie przesyła je w postaci cyfrowej do układu US3. Dekoder porównuje otrzymane dane z zaprogramowanym adresem na wejściach adresowych A1...A10. Jeżeli zostaną odebrane dwie poprawne sekwencje danych (ze zgodnym adresem) to następuje przepisanie odebranych danych na wyjścia D1...D8, a następnie zaświecenie diody D2. Wyjście TRO steruje również wejściem RA4 procesora. Dioda świecąca D2 informuje użytkownika, że transmisja jest prawidłowa, a procesor otrzymuje sygnał, że odebrany został kolejny kod do przetworzenia. Sposób reakcji procesora na odpowiednie kody sterujące zostanie omówiony w dalszej części artykułu. Po przetworzeniu danych procesor odpowiednio steruje wzmacniaczami prądowymi US2 i US5. Zastosowane wyświetlacze są ze wspólną anodą, więc katody poszczególnych segmentów są sterowane układem ULN2803A. Układ ten zawiera osiem tranzystorów NPN o wydajności prądowej równej 5 O Om A. Do sterowania anod wyświetlaczy zastosowano układ UDN2981A zawierający osiem wzmacniaczy prądowych umożliwiających załączanie dodatniego napięcia zasilania. Schemat stopnia wzmacniającego układu US5 pokazano na rys. 5. Jak wspomniałem, na płytce wyświetlaczy znajduje się również brzęczyk sygnalizujący np. przekroczenie temperatury (w przypadku wykorzystania modułu wyświetlaczy w termometrze) oraz dwukropek, jeżeli będzie wyświetlany czas. Rezystor Rl włączony szeregowo z brzęczykiem zabezpiecza go przed uszkodzeniem w przypadku zastosowania napięcia zasilającego o wartości większej niż 12V. Rezystory ograniczające prąd płynący przez wszystkie segmenty wyświetlaczy zostały dobrane tak, aby przy maksymalnej jasności prąd wynosił około 12mA. Instrukcje sterujące pracą wyświetlacza Wszystkie parametry wyświetlacza są zapisane w sześciu rejestrach, do których jest możliwy bezpośredni dostęp poprzez zaad- Elektronika Praktyczna 4/2002 33 Wyświetlacz bezprzewodowy H L8 10 LED DP4 15 DP3 16 DP2 17 DPI 18 GND VCC OUTB INS OUT7 IN7 OUTB IN6 OUT5 IN5 OUT4 IN4 0UT3 INS OUT2 INS ouri IN1 IO < COt= 32 COM GND OUT8 INS 0UT7 IN7 OUT6 IN6 OUT5 IN5 OUT4 IN4 OUT3 IN3 OUTB IN2 OUT1 INI GND R WYB 7 WY7 6 WY6 5 WY5 4 WY4 3 WY3 P WY2 1 WY1 ! dc cc w ) H 2 S O f 333 iH \GND \0sc2 Rys. 4. Schemat elektryczny modułu wyświetlaczy. resowanie wybranego rejestru, z jednoczesnym wpisaniem słowa sterującego. Na wyświetlaczu może być wyświetlony jeden z 16 znaków. W tab. 1 przedstawiono znaki wyświetlane na wyświetlaczach w zależności od wartości bitów D4...D1 w słowie sterującym. Jak widać, oprócz cyfr możliwe jest wyświetlanie dodatkowych znaków. Szczególnie przydatne mogą być znaki "C" oraz "" w przypadku wykorzystania modułu wyświetlaczy przy współpracy z termometrem. W tab. 2 przedstawiono zbiór wszystkich komend oraz znacze- nie poszczególnych bitów akceptowanych przez wyświetlacz. Oznaczenia bitów D8~Dl odnoszą się do wyprowadzeń układu USl w module nadajnika, odpowiednio D8...D1. Sekwencja zapisu do wyświetlacza rozpoczyna się podaniem odpowiednich danych na wejścia D8...D1 modułu nadawczego. Następnie należy na wyprowadzenie 6 złącza CONl podać dodatni impuls o czasie trwanie lOOms (minimum). Powoduje to zapis rozkazu i danej sterującej do wyświetlacza. W czasie trwania dodatniego impulsu na płytce wyświetlacza powinna zaświecić się dioda D2, sygnalizująca odebranie danych, a na wyświetlaczu powinna pojawić się oczekiwana cyfra lub znak. Montaż i uruchomienie Montaż rozpoczynamy od płytki modułu nadajnika (schemat montażowy na rys. 6), montując w pierwszej kolejności elementy o najmniejszych gabarytach, a następnie podstawki pod układy scalone. Kondensatory elektrolityczne należy zamontować na leżąc o. Na końcu montujemy złącze CONl. Złącze to montujemy od strony ścieżek, gdyż cała płytka została dopasowana do wymiarów wyświetlacza LCD. Tak umieszczone złącze umożliwia zastosowanie nadajnika w istniejącym już układzie sterującym, który był przystosowany do pracy z wyświetlaczem LCD. Oczywiście należy przystosować oprogramowanie procesora sterującego do wymagań nowego wyświetlacza. Do wyświetlacza LCD jest konieczne również dołączenie zasilania, ponieważ nadajnik nie posiada odrębnego złącza służą- 34 Elektronika Praktyczna 4/2002 Wyświetlacz bezprzewodowy vee D WYJŚCIE Rys. 5. Schemat wewnętrzny pojedynczego stopnia wzmacniającego układu UDN2981A. cego do zasilania, a napięcie jest pobierane ze złącza CONl. Tak jak w przypadku klasycznych modułów wyświetlaczy LCD, na wyprowadzeniu 1 jest masa, a do wyprowadzenia 2 jest dołączane +5V. Uruchomienie modułu nadajnika sprowadza się do zamontowania układu w złączu przystosowanym do pracy z wyświetlaczem LCD i sprawdzeniu napięć na nóżkach zasilających układów scalonych - przed włożeniem układów scalonych w podstawki! Montaż elementów na płytce wyświetlaczy (schemat montażowy na rys. 7) rozpoczynamy również od rezystorów, następnie wlutowujemy podstawki pod układy scalone. Wszystkie kondensatory elektrolityczne oraz stabilizator montujemy na leżąc o. Po 000 000 000 000 000 000 000 000 000 ? ? Rys. 6. Schemat montażowy płytki nadajnika. zamontowaniu elementów biernych oraz stabilizatora, do złącza CONl podłączamy napięcie zasilające o wartości około 12V i sprawdzamy napięcia w poszczególnych punktach układu czy odpowiadają one napięciom podanym na schemacie ideowym. Jeżeli napięcia w odpowiednich punk-tac h układu są właściwe, to możemy zamontować moduł odbiornika radiowego. Odbiornik radiowy jest montowany również na leżąc o, dlatego wcześniej należy zagiąć jego wyprowadzenia pod kątem 90. Do wyprowadzenia ANTENA należy przylu-tować odcinek przewodu o długo ści około lOcm, służącego jako antena. Po zamontowaniu wszystkich elementów możemy przystąpić do wlutowa-nia wyświetlaczy. Wyświetlacze są montowane od strony ścieżek, dlatego przed ich wlutowa-niem należy dokładnie sprawdzić popra-wn ość m ontażu , gdyż później nie będzie możliwości skorygowania ewentualnych błędów, ponieważ zakryją one pola lutownicze. Jeżeli wyświetlacze zostały wlutowane, to pozostaje jeszcze wlutować diody świecące D2, D3, i D4, które są montowane również od strony ścieżek. Jeśli montaż oby- Rys. 7. Schemat montażowy płytki wyświetlaczy, dwu modułów został zakończony, to przystępujemy do uruchomienia systemu. Na złączach kodujących nadajnika i odbiornika ustawiamy wybraną kom- ? ? ? binację adresową poprzez zwarcie wejść kodujących A1...A10 układów UM3758-108A do masy, do plusa lub pozostawienie nie pod- Elektronika Praktyczna 4/2002 35 Wyświetlacz bezprzewodowy 19 22 23 21 20 24 10 US1 osc RXI TRO MOD VSS A18/D8 VDD A17/D7 A16/D6 A10 A15/D5 A9 A14/D4 A8 A13/D3 A7 A12/D2 A6 A11/D1 AS A4 A'4 A2 A1 UM 3758108 Do US2A Płytka nadajnika 18 17 16 15 14 13 12 CON1 Rys. 8. Schemat podłączenia przełączników testujących moduł wyświetlacza. łączonych. Ustawione kombinacje muszą być jednakowe w obydwu modułach. Do płytki wyświetlaczy ponownie podłączamy napięcie zasilające (po włożeniu wszystkich układów scalonych w podstawki). WYKAZ ELEMENTÓW Nadajnik Rezystory Rl: lOOkO R2: 1O R3: 47kO Kondensatory Cl: 100|iF/lóV C2, C5: lOOnF C3: 120pF C4: 10p.F/16V Półprzewodniki US1: UM3758-108A US2: 4093 US3: nadajnik radiowy RT4 - 433 MHz Różne CON1: Złącze Goldpin 1*16 męskie Odbiornik Rezystory Rl: 33Q R2, R13: 120O R3: l,5kQ R4: lOOkO R5: 4JO R6...R12: 20O Jeżeli układ został zmontowany poprawnie, to na wszystkich wyświetlaczach powinny pojawiać się kolejno cyfry oraz znaki przedstawione w tab. 1, a następnie nastąpi wygaszenia wszystkich wyświetlaczy i procesor oczekuje Kondensatory Cl: 470|iF/25V C2, C3, C5, Có: lOOnF C4: 220|iF/16V C7: 120pF C8, C9: 30pF Półprzewodniki Dl: 1N4007 D2: dioda LED 5mm zielona D3, D4: dioda LED 8mm czerwona US1: PIC16F872 zaprogramowany US2: ULN2803A US3: UM3758 - 108A US4: Odbiornik radiowy RR3 US5: UDN2981A US6: DS 1813 US7: 7805 Różne CON1: ARK2 (5mm) X: kwarc 4MHz DPUDP4: wyświetlacz SA23-12EWA czerwony BUZZER 12V na komendy sterujące z układu nadajnika. W celu sprawdzenia komunikacji pomiędzy modułami, do modułu nadajnika należy dołączyć przełączniki jak na rys. 8. Do wyprowadzeń 1 i 2 złącza CONl doprowadzamy napięcie zasilające 5V. Przełącznikami bis-tabilnymi SWl ustawiamy stany logiczne zgodne z tab. 2, a następnie naciskamy przycisk asta-bilny SW. Przez czas, gdy przycisk SW jest zwarty, w module wyświetlaczy powinna świecić się dioda D2 sygnalizując poprawną transmisję radiową. Tak wykonanym układem testującym można sprawdzić działanie wszystkich funkcji wyświetlacza bezprzewodowego. Jeżeli sterowanie za pomocą przełączników powiodło się, to urządzenie jest gotowe do pracy. Jeśli występują zakłócenia w torze radiowym, to w module nadajnika można skorygować wartość kondensatora C3, będącego wraz z rezystorem Rl źródłem sygnału taktującego kodera/dekodera UM3758-108A. Układ wyświetlaczy pobiera prąd równy około 300mA. Krzysztof Pławsiuk, AVT krzysztof.plawsiuk@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflkwiecienO2.htm. 36 Elektronika Praktyczna 4/2002 --------- -------- -------- ----- ^mml Zasilacz laboratoryjny sterowany cyfrowo, część 2 Budowanie zasilacza laboratoryjnego wymaga staranności i dokładności, bo tylko wtedy mamy gwarancję osiągnięcia pewnych i trwałych efektów. Uwaga ta dotyczy szczególnie wykonania obudowy i innych elementów mechanicznych, z którymi elektronicy nie zawsze sobie radzą. Mamy nadzieję, że uwagi zamieszczone w ańykule pomogą podczas montażu zasilacza i w wykonaniu efektownej obudowy. Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on pages 37...39 are the copyright property of (C) Segment B.V., the Netherlands, 1998 which reserves all rights. Jak już wspomniano w pierwszej części artykułu, zasilacz zaprojektowano w dwóch wersjach. Zdecydowano jednak, źe płytka drukowana i płyta czołowa zostaną przygotowane tylko do zasilacza w wersji 2,5A. W zasilaczu zastosowano toroidalny transformator 24V/80VA i umieszczono go w obudowie o wymiarach 200mm (szerokość), 180mm (głębokość) i lOOmm (wysokość), której wszystkie elementy są starannie uziemione. Powinien także zostać w niej zainstalowany filtr sieciowy, aby mikro sterownik nie był zerowany przez zakłócenia z sieci energetycznej. Płytkę drukowaną przymocowuje się śrubami do płyty czołowej, a transformator (i ewentualnie filtr sieciowy, jak widać na fotografii) do płyty dolnej. W tylnej ściance mocuje się złącze RS232 i kabel sieciowy ze specjalnym przepustem. Zamiast niego można użyć aparatowego gniazdka sieciowego z wbudowanym bezpiecznikiem, a nawet z filtrem. Dane filtru użytego w prototypie są następujące: 2L = 2,4mH, Y = 2200pF, X2 = O,luF i R = l,OMLi. Filtr oczywiście musi być dobrany zależnie od maksymalnej mocy zasilacza. Teraz pora na brudną robotę mechaniczną. Przygotowanie pły- ty czołowej wymaga nieco wysiłku i dokładności, decyduje bowiem o wyglądzie zasilacza. Nie zmontowana płytka drukowana może posłużyć za szablon do wiercenia otworów w płycie czołowej. Pomiędzy płytką drukowaną a płytą czołową należy zachować odstęp (nie mniej niż 6mm), potrzebny dla wyłącznika sieciowego. Prostokątny otwór na wyświetlacz można wyciąć elektryczną wyrzynarką, a potem wyrównać pilnikiem. Można również użyć wyświetlacza z ramką maskującą nierówno wycięty otwór. Otwór na wyłącznik sieciowy wykonuje się podobnie. Otwory dla przycisków wierci się stopniowo, wykonując coraz większe otwory, aż do osiągnięcia średnicy o 0,5mm większej od średnicy przycisku. Trzeba je następnie wy g ł a dzi ć okr ą gły m pilniki em. W czterech otworach do mocowania wyświetlacza muszą być wykonane stożkowe nawiercenia w celu ukrycia (zupełnie na płasko) stożkowych łbów śrub M3 mocujących płytę. Od wewnątrz śruby te muszą być bardzo mocno dokręcone nakrętkami, aby nie doprowadzić do zniszczenia pokrycia płyty czołowej. Warto je zabezpieczyć klejem przed odkręcaniem. Trzeba jeszcze wywiercić Elektronika Praktyczna 4/2002 37 VOLTAĆ 0' DIGITAL POWER SUPPLY Rys. 2. Proponowany widok płyty czołowej. odpowiednie otwory dla śrubowych zacisków wyjściowych zasilacza. Jeżeli płyta czołowa jest anodowana, wolna od skaz i zadrapań, można wykonać na niej napisy przez kalkowanie liter i zabezpieczyć je kilkoma warstwami (przez natiyśnięcie) lakieru bezbarwnego. Można także użyć kserokopii szablonu z rys. 2, wykonanej w skali 1:1 na papierze, a następnie pokryć lakierem ochronnym. Lakier należy natryskiwać z odległości nie mniejszej niż 40cm, aby nie powstały zacieki. Po wyschnięciu trzeba rysunek nakleić na arkusz papieru samoprzylepnego. W ten sposób otrzymuje się odporną na zadrapania folię płyty czołowej, dającą się nakleić na dowolną powierzchnię. Nie należy jednak jej naklejać, dopóki zasilacz nie zostanie całkowicie sprawdzony. W celu uniknięcia pęcherzyków powietrza pod folią, trzeba naklejać ją od środka, następnie dociskać gumowym wałkiem lub okrągłym ołówkiem. Otwory i wycięcia można wykonać ostrym nożem, małymi nacięciami tylko z wierzchu, bardzo ostrożnie, zwłaszcza wokół otworów przycisków. Montaż elementów Po posłużeniu się płytką drukowaną jako szablonem do wiercenia otworów, można rozpocząć montaż elementów zgodnie ze schematem montażowym z rys. 3. Montaż nie powinien przysparzać żadnych trudności, ponieważ na dwustronnej płytce nie zastosowano montażu powierzchniowego, ani zworek z drutu, nie ma też na niej bardzo wąskich ścieżek ani bardzo ciasno umieszczonych punktów lutowniczych. Przed rozpoczęciem montażu należy sprawdzić, czy przyciski wystają co najmniej lOmm powyżej kondensatorów elektrolitycznych. Niektóre elementy montuje się z tyłu płytki. Są to: mostek prostowniczy (z racji wymiarów), potencjometry nastawcze, złącza, końcówki lutownicze dla tranzystorów, bezpiecznik (żeby można było łatwo je wymieniać). Złącze płytki drukowanej do gniazdek bananowych montuje się od strony elementów. Elementy znajdujące się pod wyświetlaczem, jak Cl9, należy umieścić w pozycji leżącej. Jeśli wiadomo, że nie będzie się przeprogramowywać mikioste-rownika, można zrezygnować z wlutowania złącza K2. Dla droższych układów scalonych, jak np. ICl iIC3, należy użyć podstawek wysokiej jakości. Rezystory Rl, R2 i R6 rozgrzewają się silniej, więc trzeba je umieścić nieco ponad płytką, aby ułatwić im rozpraszanie ciepła. Wokół układów ICl, IC2 i IC4 nie powinno się pozo- stawić na płytce topnika, który mógłby powodować pasożytnicze upływności. Po sprawdzeniu lutowanych połączeń można przykręcić wyświetlacz za pomocą odpowiednio długich śrub. Łączy się go z płytką odcinkami drutów bez izolacji. Teraz całość można przykręcić do płyty czołowej, a następnie połączyć z transformatorem i interfejsem PC. Sposób połączenia złącza RS2 32 z Kl pokazano na rys. 4. Ostatnią czynnością montażową jest przykręcenie tranzystorów mocy do radiatora, przy czym należy pamiętać o zastosowaniu podkładek mikowych. Tak zmontowany zespół łączy się z płytką trzema przewodami o długości lOcm i przekroju Wstępne uruchomienie Po zmontowaniu zasilacza trudno cierpliwie czekać przez miesiąc na jego uruchomienie, na opis oprogramowania i działania. Bez wstawionych ICl i mikroste-rownika, do pierwszego sprawdzenia można włączyć zasilacz do sieci. Jeśli nie zaczyna dymić, przyrząd może pozostać włączonym. Do sprawdzenia jest kilka napięć. Pomiędzy końcówkami 4 i 11 ICl powinno być 27V (zasilacz lA) lub 32V (zasilacz 38 Elektronika Praktyczna 4/2002 ooooooooooooooco o o o, Rys. 3. Rozmieszczenie elementów na płytce drukowanej zasilacza. 2,5V). Na diodzie Zenera D2 powinno być napięcie 12V, a pomiędzy końcówkami 5 i 14 mik-rosterownika 5,lV. Jeśli wszystko jest w porządku, można wyłączyć zasilacz, wstawić układy scalone, potencjometr P2 ustawić w skrajnym lewym położeniu i włączyć zasilanie ponownie. Na wyświetlaczu powinien pokazać się napis: 00.0V 0-00A Po naciśnięciu przycisku (lub naciśnięciu i przytrzymaniu) wyświetlacz przełącza się w tryb ustawiania "set modę" i wyświetla miliampery lub miliwolty. W celu regulacji napięcia polaryzacji należy stopniowo przekręcać P2 w prawo, sprawdzając, czy wyświetlane liczby się zmieniają. Zatrzymanie się zmian oznacza, że potencjometr został przekięco- K1 -C DB9 Rys. 4. Połqczenia pomiędzy Kl azłqczem DB-9. ny za daleko, i należy go nieco cofnąć. Można także połączyć interfejs z PC i uruchomić HyperTerminal z następującym ustawieniem: 9600, 8, N, 1, hardware handsha-ke. Następnie tak należy ustawić potencjometr P2, aby pierwszych pięć cyfr przesyłanych w ramce danych po znaku D tworzyło możliwie najmniejszą liczbę, jednak nie zero. Idealna jest liczba 2, ponieważ zasilacz będzie nadal działał poprawnie, nawet gdy liczba ta zmieni się nieco na skutek starzenia się, udaru mechanicznego lub zmiany temperatury. Po tej regulacji napięcie wyjściowe powinno być mierzone przy ustawieniu 0,00V. Odczyt na wyświetlaczu powinien być 30mV (ą15mV). Następnie należy ustawić napięcie wyjściowe o wartości 19,0V i nastawić za pomocą Pl odczyt na wartość 19,03V. Regulacja prądu wyjściowego i jego wyświetlane wartości będą teraz poprawne. Jeśli są błędne, albo gdy powyższych wartości nie da się uzyskać, należy sprawdzić poprawność montażu lub poszukać zwarcia między ścieżkami. R. Pagel, EE Elektronika Praktyczna 4/2002 PROJEKTY Tester aparatów telefonicznych, część 2 AVT-5056 W tym artykule zapoznamy się z działaniem bloku cyfrowego testera, którego głównym elem en tem jest mikrokontroler. Program dla mikrokontrolera został przygotowany za pomocą zn an ego Czytelń ikom EP pakietu program owego S T- Realizer. j** Po skompilowaniu programu przygotowanego za pomocą ST6-Realizera, plik wynikowy zajął ponad połowę dostępnej pamięci mikrokontrolera ST62T25. Ze względu na znaczne rozmiary pliku i dość skomplikowany algorytm programu, postanowiłem opisać jego działanie w oparciu o graf (rys. 3). Czytelnicy bardziej zainteresowani tematem mogą przeanalizować program w oparciu o jego listing źródłowy opublikowany na CD-EP3/2002B oraz na naszej stronie internetowej. Działanie bloku cyfrowego Po włączeniu zasilania mikrokontroler jest automatycznie zerowany, a program sterujący pracą mikrokontrolera wchodzi w stan początkowy START. Rozpoczyna wówczas wpisywanie danych do pamięci sterownika wyświetlacza LCD, w wyniku czego na wyświetlaczu ukaże się napis "TESTER TELEFONÓW". Każde wpisywanie danych do wyświetlacza jest dodatkowo sygnalizowane migotaniem diody D2, która monitoruje stan linii sterującej E wyświetlacza LCD. W stanie START procesor oczekuje na spełnienie jednego z warunków: SŁUCHAWKA lub ZEW. Spełnienie warunku ZEW nastąpi po naciśnięciu przycisku P2-ZEW, kiedy następuje podanie niskiego poziomu na wejście mikrokontrolera PB3 (skonfigurowane jako wejście pull-up). Po spełnieniu warunku ZEW program wchodzi w stan DZWONEK, w którym przekaźnik PKl zaczyna pracować impulsowo, podając napięcie dzwonienia na testowany aparat. Wraz przekaźnikiem jest włączana również dioda Dl, sygnalizująca wysyłanie sygnału dzwonienia do badanego aparatu telefonicznego. Jeżeli podczas wysyłania zewu zostanie podniesiona słuchawka, to program automatyczne wstrzymuje wysyłanie sygnału. Powrót do wysyłania zewu nastąpi zaraz po odłożeniu słuchawki aparatu. Wyjście ze stanu DZWONEK nastąpi po ponownym naciśnięciu przycisku ZEW, co spowoduje zaistnieniu warunku KONIEC_ZE-WU i przejście programu w stan początkowy START. Podniesienie słuchawki aparatu telefonicznego powoduje spełnienie warunku SŁUCHAWKA i przejście programu w stan TEST. W tym stanie pracy mikrokontroler oczekuje na przychodzące z odbiornika DTMF dane o sygnałach wysyłanych z aparatu telefonicznego. Informacje o wysyłanych znakach z aparatu telefonicznego prezentowane są na wyświetlaczu LCD. W stanie TEST program oczekuje na spełnienie jednego Elektronika Praktyczna 4/2002 41 Tester aparatów telefonicznych KONIEC_ZEWU ODŁOŻEŃ IE SŁUCHAWKI Rys. 3. Graf ilustrujący działanie programu. z dwóch warunków ZEW_2 lub ODŁOŻENIE_SŁUCHAWKI. Spełnienie warunku ZEW_2 nastąpi po naciśnięciu przycisku ZEW, wskutek czego program przechodzi w stan DZWONEK. Wysyłanie sygnału dzwonienia do badanego aparatu nastąpi po odłożeniu słuchawki. Wyjście ze stanu DZWONEK następuje po ponownym naciśnięciu przycisku ZEW. Należy dodać, że spełnienie warunku ZEW_2 nastąpi jedynie w stanie TEST przy podniesionej słuchawce. Odłożenie słuchawki aparatu w stanie TEST powoduje spełnienie warunku ODŁOŻENIE_SŁU-CHAWKI w wyniku czego program przechodzi w stan początkowy START, a na wyświetlaczu ukazuje się tekst "TESTER TELEFONÓW" . Wyświetlenie tego tekstu może nastąpić w stanie TEST po naciśnięciu przycisku Pl-NAPIS. Jak widzimy, opis działania programu za pomocą grafu nie jest skomplikowany i nie powinno być problemów ze zrozumieniem algorytmu programu. Montaż i uruchomienie Układ zmontowano na jednostronnej płytce drukowanej, której schemat montażowy przedstawiono na rys. 4 (mozaikę ścieżek przedstawiamy na wkładce wewnątrz numeru oraz na stronie www.ep.com.pl w dziale "PCB"). Po zgromadzeniu wszystkich niezbędnych podzespołów możemy przystąpić do montażu testera, który pomimo sporej liczby elementów nie powinien być trudny także dla mniej zaawansowanych elektroników. W związku z tym, że na rynku dostępne są transformatory o różnych wymiarach, należy we własnym zakresie dostosowywać płytkę do posiadanego transformatora. W układzie możemy zamiast transformatora telefonicznego 60 0Q 0 przekładni 1:1 zastosować dowolny miniaturowy transformator głośnikowy wyjęty ze starego radia. Oczywiście używanie takiego transformatora musi być poprzedzone jego sprawdzeniem w układzie oraz wykonaniem pomiaru rezystancji uzwojeń wtórnego 1 pierwotnego. W układzie modelowym zastosowano całkiem przypadkowy i nieznany transformator bez żadnych opisów. Wyjęty został z starego odbiornika radiowego. Jedynym kryterium doboru była jego wielkość, pomiar rezystancji uzwojeń oraz to, że pracował w torze m.cz. Po zmontowaniu układu przychodzi czas na jego uruchomienie. Przed uruchomieniem powinniśmy zaopatrzyć się w źródło sygnału DTMF. Takim źródłem może być aparat telefoniczny. Dodam, że podczas montażu poszczególnych elementów powinniśmy każdy z nich sprawdzić, pozwoli to ominiąć kłopoty przy uruchamianiu układu. Uruchamianie rozpoczynamy od sprawdzenia poprawności połączeń na płytce drukowanej. Do testera (bez układów scalonych, wyświetlacza LCD i transoptorów) podłączamy zasilanie. Miernikiem dokonujemy pomiaru napięć na końcówkach zasilających układów scalonych. Następnie osadzamy wyświetlacz LCD i potencjomet- rem ustawiamy kontrast. Po tej czynności wyjmujemy wyświetlacz. Zamontujemy go ponownie po całkowitym uruchomieniu układu. W kolejnym kroku sprawdzamy i uruchomiamy układ liniowy. Do zacisków APARAT podłączamy aparat telefoniczny oraz umieszczamy w podstawkach transopto-ry. Po podniesieniu słuchawki aparatu sprawdzamy napięcia na kolektorach tranzystorów wchodzących w skład transoptorów. Jeżeli mamy dostęp do oscyloskopu, możemy sprawdzić obecność sygnałów DTMF wysyłanych z aparatu. Sprawdzenia dokonujemy po stronie wtórnej transformatora, tj. na wejściu dekodera. Po zamontowaniu dekodera możemy dokonać sprawdzenia stanów logicznych na wyjściach Ql...Q4 po wysłaniu sygnału DTMF. Jeżeli podczas wykonania wymienionych czynności sprawdzających stwierdzimy, że nie ma błędówto jest duże prawdopodobieństwo, że tester zaraz po włożeniu w podstawkę mikrokontro-lera i włączeniu zasilania zacznie poprawnie działać. Zdaję sobie sprawę że prezentowany układ sprawia wrażenie dość skomplikowanego, ale dzięki zastosowaniu programu ST6-Re-alizer staje się on możliwy do wykonania przez mniej zaawansowanych elektroników. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflkwiecienO2.htm. _BC5ei IPOOOOOOOOOOOOOOOILCD "sil GÓRSKI TESTER APARATÓW TEUFONICZNYCH Rys. 4. Rozmieszczenie elementów na płytce drukowanej. 42 Elektronika Praktyczna 4/2002 PROJEKTY Internetowy interfejs dla mikrokontrolera, część 2 AVT-5055 W drugiej części artykułu przedstawiamy szczegóły związane z programowym sterowaniem układu iChip. Informacje te są niezbędne do zrozumienia zasady działania i obsługi sprzęto we go stos u TCP IIP. Jak już wspomniałem do złącza Z2 trzeba dołączyć dowolny zewnętrzny modem, a układ zasilić napięciem stałym lub przemiennym o wartości ok. 8V. Po włączeniu zasilania mikiokontioler rozpoczyna procedurę inicjaliza-cji. Linie es i resetx są zerowane, inicjowany jest licznik Tl (używany do odliczania opóźnień), oraz wyświetlacz LCD. Odbloko-wywany jest również system przerwań. Po wykonaniu tych czynności linia resetx jest ustawiana na "1" i do rejestrów Baud Ratę Divider (adresy Oxlc...Oxld) wpisywane są wartości określające prędkość transmisji. Tą prędkość oblicza się według wzoru: wartość programowa = = [(fclk/pr_transmisji)]-l gdzie: fclk to częstotliwości zegara S-7600A (uwaga: 0x0003 jest najmniejszą wartością, jaka może być wpisana do tych rejestrów!). Przy obliczaniu wartości wpisywanych do rejestrów trzeba pamiętać, że dla niektórych prędkości błąd może być dość spory. Na przykład dla częstotliwości zegara 250kHz i prędkości transmisji 38400bd obliczona wartość do wpisania do rejestrów wyniesie: 250kHz/38,4kbd=6,5. Oczywiście możemy wpisać 6 albo 7. Dla wartości 6 rzeczywista prędkość wyniesie 25 0kHz/6 = =41,666kbd, a dla wartości 7 -250kHz/7=35,714kbd. Widać, że rzeczywiste wartości różnią się znacznie od żądanych. Dla częstotliwości taktowania 250kHz optymalnym rozwiązaniem będzie prędkość transmisji 19200bd -250kHz/19,2kbd=13,02. Rzeczywista prędkość transmisji wyniesie 250kHz/13=19,23kbd - jest to wartość, którą można zaakceptować. W naszym rozwiązaniu taka właśnie prędkość została wybrana. W momencie, kiedy płytka już Elektronika Praktyczna 4/2002 43 Internetowy interfejs dla mikrokontrolera Tab. 5. Funkcje bitów rejestru Serial Port Configuration/Status (0x08) Bit Nazwa Dostęp Opis 7 S_DAV R/W Seria! Port Data Avai!ab!e - czytany określa czy dane z portu szeregowego są dostępne. Powinno się tam wpisać 0. 6 DCD R/W Carrierdetect- ten bit odzwierciedla stan linii DCD portu szeregowego. Jest on niezależny od ustawienia bitu SCTL. 5 DSR/ HWFC R/W Data Send Ready/Hardware flow Contro! - kiedy ten bit jest czytany, to określa bieżący stan linii DSR portu szeregowego. Kiedy jest zapisywany: 0 - Hardware flow contro! jest nieaktywny 1 - Hardware flow contro! jest aktywny 4 CTS R Clear to send (bit tylko do odczytu) - odzwierciedla stan bieżący linii CTS portu szeregowego. 3 Rl R Ring indicator- bit (tylko do odczytu) odzwierciedla stan linii Rl portu szeregowego. Jest on niezależny od ustawienia bitu SCTL. 2 DTR R/W Data Terminal Ready- podczas odczytu określa bieżący stan linii DTR portu szeregowego. Mikrokontroler może kontrolować stan tego bitu poprzez wpisywanie. 1 RTS R/W Request to send- podczas odczytu określa bieżący stan linii RTS portu szeregowego. Mikrokontroler może kontrolować stan tego bitu poprzez zapisywanie. 0 SCTL R/W Seria! Port Contro! - określa kto kontroluje port szeregowy. Wyzerowanie tego bitu (domyślnie) powoduje, że kontrolę przejmuje mikrokontroler. Ustawienie - sprzętowa kontrola przez stos sieciowy. 0-MPU 1 - Kontrola sprzętowa Tab. 6. Rejestr Serial Port Interrupt (0x09) Bit Nazwa Dostęp Opis 7 PTJNT R Port Transport interrupt- ten bit sygnalizuje, kiedy przerwanie od portu szeregowego jest aktywne. Jest to zależne od stanu bitów PINT_EN i DSINT_EN w rejestrze Serial Port Interrupt Mask. Kiedy PINT_EN jest jedynką przerwanie wystąpi w momencie, kiedy dana jest dostępna w buforze FIFO portu (S_DAV w Serial Port Configuration/ Status jest też jedynką). Kiedy DSINT_EN jest jedynką przerwanie będzie aktywne kiedy CPU zapisuje do Serial Port Data Register, by transmitować daną. Jeżeli oba te bity są jedynkami, to przerwanie występuje w obu przypadkach. Pozostałe bity nie są używane i po odczytaniu rejestru mają wartość 0. Tab. 7. Rejestr Serial Port Interrupt Mask (0x0a) Bit Nazwa Dostęp Opis 7 PINT_EN R/W Port interrupt Enable - zezwala na przerwanie od portu szeregowego 6 DSINT EN Data Send interrupt Enable - zezwala na przerwanie od wysyłania danych. Pozostałe bity nie są używane i po odczytaniu rejestru mają wartość 0. była gotowa udało mi się zdobyć rezonator o częstotliwości 2,4576MHz. Po podzieleniu przez cztery przez przerzutniki powstaje przebieg zegarowy o częstotliwości 614400Hz. Po wewnętrznym podzieleniu przez 32 uzyskujemy dokładnie 19200. Po podzieleniu przez 16 można uzyskać dokładnie 38400bd. Okazało się jednak, że przy częstotliwości przebiegu zegarowego 614,4kHz układ przestał prawidłowo pracować. Najprawdopodobniej spowodowane jest to zbyt dużą częstotliwością sygnałów jakie wystąpiły na magistrali S-7600A - większe częstotliwości zegara są przeznaczone dla szybkich procesorów. Pewnym rozwiązaniem tego problemu by- łoby dodatkowe podzielenie częstotliwości zegara przez 2 za pomocą dodatkowego przerzutnika, ale jak wspomniałem płytka już była gotowa, więc pozostałem przy dotychczasowym rozwiązaniu, tym bardziej, że 19200bd jest prędkością zupełnie wystarczającą dla większości zastosowań. W następnym kroku zapisywane są rejestry Clock Divider (0xlc...0xld). Rejestry te służą do konfigurowania wewnętrznego zegara o częstotliwości lkHz. Jest on używany do różnych funkcji czasowych w S-7600A: Licznik Podziału=(fclk/lkHz)-l, gdzie fclk to częstotliwości zegara S-7600A. Dla f=250kHz 250kHz/lkHz-l= =249, co w zapisie szesnastkowym odpowiada wartości 0x00f9. Pod adres 0xlc wpisywana jest wartość 0xf9, a pod adres 0xld wpisywane jest zero. Procedurę inicjalizacji kończy skonfigurowanie portu szeregowego poprzez wpisanie odpowiedniej wartości do rejestru Serial Poń Configuration/Status (tab. 5). Rejestr ten pozwala na sterowanie pracą portu szeregowego UART. Przez jego odczytanie można monitorować stany linii sterujących portu. Port szeregowy może być kontrolowany przez mikrokontroler lub przez sprzętowy wewnętrzny stos (bit SCTL). Wpisana w procedurze inicjalizacji wartość do rejestru Serial Port Configuration/Status powoduje, że kontrolę nad portem przejmuje mikrokontroler oraz włączony jest mechanizm Hardware Flow Con-trol (bit DSR/HWFC = 1). Jeżeli mechanizm ten jest wyłączony, to dane są transmitowane niezależnie od poziomu sygnału CTSX. Jeżeli mikrokontroler kontroluje port to może on testować stan linii sterujących czytając rejestr Serial Poń Configuration. Ma też kontrolę nad liniami DCD, DSR, DTR i RTS, a co za tym idzie nad wysyłaniem i odbieraniem danych. Włączenie Hardware Flow Con-trol powoduje, że zaczyna działać pełne sprzętowe potwierdzanie RTS/CTS. Kiedy port wykryje, że sygnał CTS przestał być aktywny, przestaje transmitować dane do momentu, aż ponownie stanie się on aktywny. W momencie kiedy bufor FIFO odbiornika portu jest zapełniony do połowy, to nieaktywny staje się sygnał RTS. Jest to sygnalizacja dla nadawcy, że ma zatrzymać nadawanie danych. Sygnał RTS ponownie staje się aktywny, jeżeli zostaną przeczytane dane z bufora wejściowego portu. Wpisanie danej do rejestru Serial Port Data kiedy port jest pod kontrolą mikrokontrolera powoduje, że dana ta zostanie wysłana z wcześniej zaprogramowaną prędkością transmisji. Zakończenie wysyłania sygnalizowane jest ustawieniem bitu PT_INT w rejestrze Serial Port Interrupt (tab. 6). Jednak żeby tak się stało, musi być ustawiony bit DSINT_EN oraz PINT_EN w rejestrze Serial Poń Interrupt Mask (tab. 7). Odczytywanie danych z portu odbywa się poprzez czytanie tego 44 Elektronika Praktyczna 4/2002 Internetowy interfejs dla mikrokontrolera Tab. 8. Rejestr PPP Control and Status (0x60) Bit Nazwa Dostęp Opis 7 PPPJnt R/W Przerwanie PPP- ten bit sygnalizuje, że zostało wyzwolone przerwanie od stosu PPP. Trzeba odczytać PPP interrupt code register dla stwierdzenia przyczyny. Zapisanie 1 do tego bitu kasuje przerwanie. 6 Con_Val R/W Connection Va!id- ten bit sygnalizuje warstwie sieciowej, że połączenie "pod nią" jest poprawne 0 = połączenie niepoprawne 1 = połączenie poprawne 5 Use PAP R/W Ten bit odblokowuje autoryzację PAP w protokole PPP. Jeżeli jest odblokowana, to dostęp PAP jest dołączany po negocjacji autoryzacji PAP. Łańcuchy znakowe PAP są wprowadzane poprzez rejestr 0x64 0 = PAP zablokowany (domyślnie) 1 = PAP odblokowany 4 T0_Dis R/W Timeouts Disabied - ten bit blokuje blok PPP ztimeoutami dla celów diagnostycznych. 0 = timeouts odblokowane (domyślnie) 1 = timeouts zablokowane 3 PPP lnt_En R/W PPP interrupt Enabie - ten bit odblokowuje przerwanie PPP 0 = zablokowane (domyślnie) 1 = odblokowany 2 Kick W PPP kick start - kiedy wpisana jest 1 to bit ten wystartuje PPP, jeżeli zostało przerwane przez timeout. Bit ten jest samozerujący. 1 PPP_En R/W PPP enabie - ten bit odblokowuje warstwę PPP i musi być ustawiony przed jakąkolwiek transmisją. 0 = PPP zablokowany (domyślnie) 1 = PPP odblokowany 0 PPP UP/ SRst R/W Przy odczycie wskazuje, kiedy warstwa PPP ustanowi połączenie 0 = brak połączenia 1 = połączenie ustanowione Przy zapisie bit ten zeruje stos PPP. Jest samozerujący i nie potrzebuje zerowania podczas normalnej pracy 0 = normalna praca PPP 1 = reset PPP samego rejestru Serial Port Data. Dane są gotowe do odczytu kiedy bit S_DAV w rejestrze Serial Port Configuration/'Status jest jedynką. Narzuca się pytanie: po co stosować tryb kontroli mikrokontrolera nad portem, skoro S-7600A może sam przejąć nad nim kontrolę? Otóż może to zrobić wówczas, gdy modem połączony do urządzenia i modem z drugiej strony ustalą między sobą połączenie. Przedtem jednak trzeba wysłać do modemu komendy sterujące, które zmuszą go do wybrania numeru dostępowego. Mikrokontroler musi odczytać z modemu informację 0 poprawnym zestawieniu połączenia modemowego, a może to zrobić tylko wtedy, gdy ma kontrolę nad portem. Modemy mogą wymagać specyficznej obsługi i jej sprzętowa realizacja może być trudna. Dla sprzętowego stosu protokołu PPP informacja, że połączenie w warstwie fizycznej jest poprawne oznacza, że można negocjować połączenie w warstwie sieciowej PPP. Właśnie wtedy S-7600A powinien przejąć kontrolę nad portem szeregowym. Wróćmy jednak do modemu 1 sterowania jego pracą. Do komu- nikacji ze współcześnie stosowanymi modemami stosuje się standard potocznie nazywany "komendy AT". Nazwa ta utrwaliła się dlatego, że każda komenda wysyłana do modemu musi się zaczynać od znaków AT. Zestaw tych komend jest dość duży. W prezentowanym rozwiązaniu zastosowano dwie: ATV0 i ATDT. Pierwsza z komend przestawia modem na potwierdzenie komend w postaci numerycznej. Modem może odpowiadać po wykonaniu komendy takim właśnie kodem cyfrowym, lub ciągiem znaków ASCII będącym opisem wyniku działania komendy. Odpowiedź w postaci kodu wydaje się być prostsza w obsłudze i dlatego modem został przestawiony w taki właśnie tryb. Druga komenda powoduje, że modem wybiera numer wpisany jako parametr. Numer ten może być wybierany tonowo, lub impulsowo (ATDP). Komenda ta może mieć na przykład postać: ATDT 0202122. Wygląda znajomo - tak jest to numer dostęp owy TPSA. Niestety, jak się dalej okaże, wysyłanie takiej komendy nie jest najlepszym pomysłem! Opis większości komend można znaleźć w instrukcjach obsługi modemów lub w Internecie. Po wykonaniu komendy ATDT modem wybiera numer i łączy się z modemem połączonym z serwerem dostępowym. Jeżeli wysyłamy do modemu znaki komend AT z prędkością 19200bd, to modem próbuje nawiązać łączność z taką właśnie prędkością. Jeżeli nie jest to możliwe, zmniejszana jest prędkość transmisji, aż do uzyskania poprawnego połączenia. Po nawiązaniu łączności nasz modem odsyła kod określający prędkość transmisji wynegocjowaną w czasie połączenia i na taką prędkość należy przestawić S-7600A. W naszym rozwiązaniu zakładamy, że modem łączy się zawsze z prędkością 19200bd i jeżeli jest inaczej, to połączenie jest rozłączane. Odebranie kodu po komendzie ATDT kończy fazę realizowania połączenia w warstwie fizycznej. W rejestrze PPP Control and Status o adresie 0x60 (tab. 8) można ustawić bit Con_Val, S-7600A może przejąć kontrolę nad portem i rozpoczyna się faza połączenia w warstwie sieciowej za pomocą stosu PPP. Protokół PPP [Point to Point Protocol) jest tu używany do ustanowienia połączenia pomiędzy naszym urządzeniem a serwerem świadczącym usługi dostępo-we. Warstwa PPP stanowi połączenie pomiędzy warstwą sieciową IP a warstwą fizyczną. Za pomocą PPP urządzenia na obu końcach łącza modemowego mogą wynegocjować sposób przesyłania ramek informacyjnych. Protokół dopuszcza negocjowanie wielu opcji i może się zdarzyć, że urządzenia nie będą mogły, mówiąc obrazowo, porozumieć się. Aby zapobiec takiej sytuacji wprowadzono pojęcie wartości domyślnych. Każda stacja MUSI przyjąć i potwierdzić opcje z tymi wartościami. Układ S-7600A podczas negocjacji połączenia PPP używa właśnie wartości domyślnych -powinien więc, przynajmniej teoretycznie, nawiązać połączenie z każdym serwerem. Oprócz konfiguracji kanału transmisyjnego, PPP może być używany do potwierdzania autentyczności użytkownika w trakcie logowania się w serwerze (autoryzacja PAP - Password Authenti- Elektronika Praktyczna 4/2002 45 Internetowy interfejs dla mikrokontrolera Tab. 9. Rejestr PAP String (0x64) BajtO 0x05 Liczba znaków nazwy użytkownika Bajt 1 Znak T Bajt 2 Znak 'o" Bajt3 Znak 'm" Bajt 4 Znak 'e" Bajt 5 Znak 'k" Bajt 6 0x05 liczba znaków hasła Bajt 7 znak a" Bajt 8 znak I" Bajt 9 znak a" Bajt 10 znak m" Bajt 11 znak a" Tab. 10. Rejestr PPP Interrupt Code (0x61) cation Protocol). Podczas logowania przesyła się nazwę użytkownika oraz hasło. Wpisanie do bitu PPP_En jedynki powoduje włączenie PAP. Trzeba wtedy do rejestru PAP String (adres 0x64, tab. 9) wpisać kolejno znaki określające nazwę użytkownika i hasło. Pierwszy wpisywany do PAP String bajt określa liczbę znaków ASCII nazwy użytkownika. Następnie trzeba po kolei wpisywać te znaki. Po wpisaniu wszystkich wpi- Kod błędi Definicja 0x00 Zarezerwowane 0x01 Niepowodzenie inicjalizacji fazy LCP protokołu PPP 0x02 Niepowodzenie negocjacji fazy NCP 0x03 Niespodziewane zakończenie LCP 0x04 Odebranie termination Request 0x05 Niepowodzenie negocjacji PAP suje się bajt określający liczbę znaków hasła i, tak jak w przypadku nazwy użytkownika, znaki hasła. Po wpisaniu hasła i nazwy użytkownika pozostaje tylko wyze-rowanie stosu PPP przez wpisanie do PPP_UP/SRst jedynki i odblokowanie warstwy PPP przez wpisanie jedynki do PPP_En. Od tego momentu nie mamy żadnego wpływu na proces negocjowania połączenia PPP. Sprzętowy stos robi wszystko sam i pozostaje tylko czekać aż bit PPP_UP/SRst ustawi się na "1" i w ten sposób S-7600A zasygnalizuje poprawne połączenie. Gdy to połączenie nie może być zrealizowane, S-7600A może zgłaszać przerwanie przez wpisanie jedynki do rejestru PPP Con-trol and Status na pozycji bitu PPPInt. Trzeba wtedy przeczytać rejestr PPP Interrupt Code (adres 0x61) i określić przyczynę niepowodzenia (tab. 10). Tomasz Jabłoński, AVT tomasz.jablonski@ep.com.pl Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: http://www.ep.com.pl/ ?pdflkwiecienO2.htm. 46 Elektronika Praktyczna 4/2002 SPRZĘT Nie tak dawno temu, w przepięknej Krzemowej Dolinie zaczęło się coś, co zapoćzą tkowało niewyobrażalny wcześniej postęp w różnych dziedzinach naszego życia. To właśnie tam, w laboratoriach łntela, powstał sprawca rewolucji technicznej końca XX wieku. Rewolucji, która nie słabnie z upływającym czasem. Wręcz przeciwnie. Pakiet uruchomieniow erc e i ?--n To trochę tak, jak z rekordami sportowymi. Intuicyjnie czujemy, że jest granica osiągnięć sportowych, ale zawsze podczas transmisji zawodów z nadzieją czekamy, czy obok rezultatu zawodnika pojawi się dopisek "WR". Bohaterem, o którym mowa, jest oczywiście mikroprocesor. Zarówno konstruktorzy, jak i użytkownicy bardzo szybko przekonali się o zaletach tego układu. Ci pierwsi zaczęli go stosować dosłownie wszędzie, bo dzięki niemu powstała zupełnie nowa możliwość łatwej realizacji zadań związanych z obliczeniami i sterowaniem. Ci drudzy zachwycali się niespotykanymi dotąd cechami funkcjonalnymi kupowanego przez nich sprzętu. Dziś już wcale się nie dziwimy, gdy dowiadujemy się, że młynek do kawy sterowany jest właśnie poprzez mikroprocesor. Jak to często bywa, technologię produkcji zdobywało coraz więcej firm, co ku uciesze odbiorców końcowych tylko stymulowało rozwój technologii. Współczesne mikrokontro-lery, będące de facto jedno-układowymi systemami mikroprocesorowymi, poza zasadą działania, niewiele już przypominają pierwowzór. Klienci się cieszą, producenci natomiast stają wobec coraz większych problemów ze sprzedażą swoich wyrobów. Rynek się rozszerza, pojawia się coraz więcej odmian układów. Wygrywa ten, kto szybciej i lepiej dokona promocji swojego produktu. Szybkość jednakże nie zawsze idzie w parze z jakością. Czasami zdarzają się wpadki, co oczywiście w biznesie jest nieuniknione. Stosunkowo niedawno do grona producentów mikro-kontrolerów dołączyła firma Analog Devices, producent Elektronika Praktyczna 4/2002 47 SPRZĘT W ramach prezentowanego zestawu, oprócz płytki ewalu-jtaje: / wtyczkowy zasilacz sieciowy, / specjalny kabel łączący płytkę z komputerem poprzez interfejs RS232, / instrukcję obsługi oraz CDROM z dokumentacją mikrokontrolera oraz programem cross as-semblera firmy Metalink. Znajdują się na niej również pliki z predefiniowanymi symbolami charakterystycznymi dla rodziny ADuC8xx oraz przykładowe procedury asemblerowe wykorzystywane w programie demonstracyjnym. znany dotychczas - jak sugeruje choćby nazwa z podzespołów analogowych. Ten "cyfrowy" wypad AD można wytłumaczyć jednak silnymi związkami z techniką analogową. W przypadku DSP jest to dość oczywiste, natomiast jeśli chodzi o rodzinę 8-bi-towych mikro kontroler ów reprezentowanych przez układy ADuC812, ADuC816 i ADuC824, to zawierają one w swojej strukturze bardzo wysokiej jakości przetworniki analogów o-cyfrowe i cyfrowo-analogowe o co najmniej 12-bitowej rozdzielczości. Aby lepiej przybliżyć układ ADuC812 swoim klientom, inżynierowie z Alfine opracowali starter kit dla tych mikro-kontrolerów, o nazwie ALF-ADuC812-EVB (istnieje również podobny układ uruchomieniowy Analog Devices). Trochę informacji o samym mikrokontrolerze zawarłem w artykule "Domowa stacja pogody z telemetrycznym pomiarem temperatury", który publikujemy w bieżącym numerze EP. Płytka ALF-ADuC812-EVB została zaprojektowana nieco inaczej oryginalna EVAL-ADuC812QS. Na obu zrealizowano pełny system składający się z mikrokontrolera, niezbędnych buforów multipleksowanych linii adresowych i danych, zewnętrznej pamięci RAM (32kB), układu zerowania i buforów wejść i wyjść przetworników A/C i C/A dołączonych do złącza szpilkowego, stabilizatora napięcia wraz z LED-em sygnalizującym spraw- ność układu zasilającego, przycisków zerowania i zewnętrznego przerwania INTO. Umieszczono naniej także układ wytwarzający przebiegi: prostokątny, trójkątny i sinusoidalny. Ich generacją nie zajmuje się jednak procesor, a popularny układ NE555, współpracujący ze wzmacniaczem operacyjnym. W płytce amerykańskiej wyprowadzono wszystkie porty mikrokontrolera, łącznie z liniami interfejsu I2C/ SPI, pewną zaś jej część przeznaczono na uniwersalne pole lutownicze, na którym użytkownik może zmontować własny fragment systemu i połączyć go z mikrokontrolerem. Konstruktorzy z Poznania postanowili zaprezentować mik-rokontroler w postaci gotowego systemu, zawierającego kilka uniwersalnych bloków funkcjonalnych. Są to: podtrzymywany bateryjnie zegar czasu rzeczywistego, zestaw ośmiu diod LED sterowanych poprzez rejestr zatrzaskowy, wyświetlacz alfanumeryczny LCD z pod-świetlaczem (2 wiersze po 16 znaków) oraz buzzer. Na płytce ALF-ADuC812-EVB mikrokontroler nie jest wlu-towany na stałe. Znajduje się na nim specjalne gniazdo przeznaczone dla modułu ALF-ADuC812-MU, który został opracowany również przez firmę Alfine. Wchodzi on w skład starter kitu, chociaż jest też dostępny oddzielnie. Zawiera - tym razem już przylutowany -mikrokontroler ADuC812BS oraz interfejs RS232. Zastosowano w nim pochodzący z tej samej "stajni" układ ADM202 nie wymagający dołączania zewnętrznych kondensatorów elektrolitycznych. Płytka ewaluacyjna, jak większość tego typu wyrobów, nie jest zamknięta w obudowie, posiada jedynie przymocowane do spodu plastikowe "nóżki". W dokumentacji i notach aplikacyjnych mikrokontrolera można przeczytać, że przy opracowywaniu obwodów drukowanych szczególną uwagę należy zwrócić na sposób prowadzenia masy i linii zasilających. Szczególnie na płytkach, na których są wykorzystywane przetworniki AD i DA. Na płytce ALF-ADuC812-EVB zagadnienie to zostało rozwiązane podręcznikowo, z rozdzieleniem masy cyfrowej od analogowej. Konstruktorzy systemów mikroprocesorowych doskonale wiedzą, że czasami zdarzają się problemy z wygenerowaniem sygnału zerującego. Aby uniknąć ewentualnych kłopotów z tym związanych, zastosowano układ ADM707. Większość podzespołów na płytce ewa-luacyjnej pochodzi z rodzimej produkcji AD. Wyjątkiem jest zegar czasu rzeczywistego (RTC) - DS1307. Do pamięci Flash mikrokontrolera jest wpisany program demonstrujący działanie opisanych wyżej bloków funkcjonalnych. Firma Alfine pokusiła się o stworzenie własnej, polskojęzycznej wersji programu loadera, pracującego we wszystkich aktualnie dostępnych 32-bitowych wersjach systemu Windows. Na uwagę zasługuje fakt, że jest on - podobnie jak i wspomniane procedury przykładowe -całkowicie bezpłatny. Umożliwia m.in. samo kasowanie lub kasowanie z jednoczesnym zapisywaniem pamięci Flash programu i danych. Program dla mikrokontrolera powinien być przygotowany w formacie Intel HEX. Subiektywna ocena starter kitu po przeprowadzonych próbach Uważa się, że najważniejsze jest pierwsze wrażenie. Jeśli tak jest, to trzeba przyznać, że płytka ewaluacyjna ALF-ADuC812-EVB robi bardzo dobre wrażenie. Wzorowo opracowany obwód drukowany. Starannie rozdzielenie części cyfrowej od analogowej świadczy o "przyłożeniu się" konstruktorów do tego zadania. System oparty na mikroprocesorze jest w dużej części tak dobry, jak dobry jest program zapisany w jego pamięci. W tym przypadku również można powiedzieć, że program "zaszyty" w mikrokontrolerze dobrze demonstruje działanie poszczególnych bloków płytki. Dla początkujących elektroników, niewątpliwie ważna jest możliwość wglądu w opis źródłowy poszczególnych procedur. Szkoda jednak, że przedstawiono tylko wersje asemblerowe. Obecnie zdecydowana większość konstruktorów korzysta, jeśli tylko to możliwe, z języka C. Z drugiej strony, piszący w nim programiści nie powinni mieć problemów z ewentualnym prawidłowym "przełożeniem" procedur przykładowych. Po wstępnym przebadaniu starter kitu zacząłem się zastanawiać nad tym, jaka ide-a przyświecała jego konstruktorom. Na reklamie produktu widnieje dopisek "Aplikacje dla początkujących i profesjonalistów". Wydaje mi się, że profesjonaliści nie będą do końca usatysfakcjonowani. Dla nich lepszą płytkom będzie jednak - według mojej oceny - płytka amerykańskiego pierwowzoru, choćby z tego powodu, że można ją stosunkowo łatwo wykorzystywać do wstępnego testowania swoich własnych projektów. Ułatwia to zamieszczone na płytce pole montażowe oraz wyprowadzenie na zewnątrz wszystkich portów procesora. Początkujący natomiast, powinni być zachwyceni tym, że właśnie podejrzaną procedurę (np. obsługi wyświetlacza alfanumerycznego, czy interfejsu I2C) będą mogli bez dodatkowych zabiegów przetestować w działaniu. Jedni i drudzy będą z pewnością zastanawiać się, jak to wszystko działa od strony elektronicznej. W dokumentacji bowiem nie zawarto schematu ideowego płytki ewaluacyjnej. A szkoda. Znane są wymagania dotyczące choćby zasilania części analogowej systemu. Możliwość podejrzenia, jak to powinno być zrobione, na pewno przydałaby się przyszłym klientom kupującym mikrokontroler ADuC812, a o zachęcenie ich do tego chyba właśnie chodzi. Pozostaje więc sięgnąć po dokumentację płytki EVAL- 48 Elektronika Praktyczna 4/2002 SPRZĘT
'----- Wtfm
4AWI
jB ^^^i__1 iwuh^Ma | e:. JC
Rys. 1. ADuC812QS, dostępnej na wspomnianej juś wcześniej stronie AD. Tam w pliku S12pcb.pdf mośna znaleźć nie tylko schemat ideowy, ale również rysunki obwodu drukowanego. Po przejrzeniu dokumentacji zainteresowałem się programem loadera, dostarczany wraz z płytką ewalu-acyjną (rys* 1). Choć piszę o tym pod koniec artykułu, to naprawdę był to pierwszy element zestawu, którym zacząłem się ,,bawić". Mój entuzjazm, z jaki - nie ukrywam - rozpocząłem testowanie, został juś na wstępie nieco przygaszony, gdy przeczytałem w instrukcji, śe program mośe działać jedynie w systemach, w których zastosowano rezonator kwarcowy o częstotliwości ll,0592MHz. W oryginalnych loaderach, dostępnych na stronach internetowych AD, mośna częstotliwość kwarcu podawać jako parametr programu. To naprawdę szkoda, śe w polskiej wersji programu wprowadzono takie ograniczenie. Przyznam, śe nie widzę sądnego uzasadnienia tego wy b o ru. Skoro mowa o loaderze, to znaczy, śe jesteśmy blisko zagadnień związanych z komunikacją pomiędzy starter kitem a komputerem. Transmisja danych jest realizowana za pomocą specjalnego kabla połączeniowego. Specjalnego, bo choć z jednej strony jest zakończony typowym wtykiem DSUP9, to z drugiej, do końcówek przewodów przy-lutowano jedynie pozłacane szpilki, które wtyka się w łączówkę znajdującą się w module ALF-ADuC812-MU. Jest to połączenie bardzo delikatne, nie mówiąc juś o mało profesjonalnym wyglądzie takiego rozwiązania. Lepszym byłoby przeło-śenie połączenia szpilkowego na drugą stronę płytki modułu ALF-ADuC812-MU, a tym samym przeniesienie wyprowadzeń interfejsu RS232 do płytki bazowej, gdzie z łatwością mośna byłoby zamontować typowe gniazdo DSUP9. Podsumowanie Opisywany starter kit prezentuje mośliwości mikro-kontrolera ADuC812 w sposób dość efektowny. W programie demonstracyjnym zabrakło mi tylko przykładu dobitnie przedstawiającego główną cechę ADuC-a, jaką są jego mośliwości analogo-wo-cyfrowego przetwarzania sygnałów. Tym bardziej, śe operacje te mogą być realizowane w trybie bezpośredniego dostępu do pamięci (DMA) i to z 16MP przestrzenią adresową. Zdaję sobie sprawę z tego, śe pełna prezentacja tych mośliwości nie miałaby uzasadnienia, ale procedury demonstracyjne nie zaspokoiły mojej ciekawości. Jako fan mikro kontrolera ADuC812, polecam go wszystkim tym, którzy właśnie zastanawiają się, co wybrać do projektowanych przez siebie systemów. Jarosław Doliński, AVT jaroslaw.dolinski@ep.com.pl Dodatkowe informacje Pakiet uruchomieniowy ALF-ADuC812-EVB do testów w redakcji dostarczyła firma Alline, Tel. (61) 820-58-11, www.aliine.com.pl. Elektronika Praktyczna 4/2002 49 PROJEKTY Lampowy przedwzmacniacz High-End Zestaw Velleman K8020 W artykule przedstawiamy konstrukcję lampowego przedwzmacniacza audio znajdującego się w ofercie kitów firmy Velleman. Charakteryzuje się on bardzo dobrymi i stabilnymi parametrami toru audio oraz quasi-lampowym brzmieniem. Te cechy prezentowanego urządzenia zadowolą nawet najbardziej wymagających audiofili. Przedwzmacniacz zaprojektowano z wykorzystaniem jednego elementu mechanicznego, jakim jest wysokiej jakości potencjometr firmy ALPS. Selekcja źródła sygnału odbywa się za pomocą mikioprzycisków umieszczonych na frontowej ściance obudowy, które sterują pracą mikroprocesora. Prezentowany wzmacniacz z kitu Yellemana, nie wymaga żadnych regulacji podczas uruchamiania, a więc jest idealną propozycją nie tylko dla fachowców, ale również dla mniej zaawansowanych elektroników lubiących dobrze odtwarzaną muzy-kę. W kicie przygotowanym przez producenta znajdują się wszystkie niezbędne elementy, począwszy od elektronicznych po komplet elementów mechanicznych, dlatego zmontowanie przedwzmacniacza nie powinno zająć więcej niż kilka godzin. Całość umieszczona w estetycznej, solidnej aluminiowej obudowie. układu Schemat elektryczny mikroprocesorowego sterownika przed-wzmaciacza pokazano na rys. 1. Głównym elementem przedwzmacniacza jest mikroprocesor ICl PIC16C54, będący sercem części sterującej układu. Jest on odpowiedzialny za wybór źródła sygnału, za pomocą przycisków Podstawowe parametry x czułość wejść AUX - 220mV/50kn, AA/-220mV/50kn, TUNER -220mV/50kn, CD - 220mV/50kn, x maksymalne napięcie wyjściowe 35Vpp, x irnpedancjawejściowa mm 10kn, x stosunek sygnal/szum (A-wazony dla OdB na wyjściu) 10OdB, x całkowite zniekształcenia harmoniczne <0,04%/1kHz/47kn, x wzmocnienie napięciowe x2 lub x4 (przy włączonym +6dB), x pasmo przenoszenia 7Hz 150kHz (-3dB), wzmocnienie x2 1 SHz 55kHz w granicach 0,3dB, x separacja kanałów 85dB/we|ście OdB x separacja wejść <1 OOdB, x pobór mocy max 16W, x wymiary 290x1 G5x70rnrn, x waga 2,7kg Elektronika Praktyczna 1/2002 37 Lampowy przedwzmacniacz High-End +5V Rys. 1. Schemat elektryczny sterownika przedwzmacniacza. S1...S4, jak i jego wizualną sygnalizację wyboru za pomocą diod LED D1...D7. Naciśnięcie przycisku STAND-BY lub przycisku wyboru źródła powoduje pojawienie się stanu niskiego na odpowiednim wyjściu procesora. Fakt ten jest sygnalizowany zaświeceniem się odpowiedniej diody LED, a co za tym idzie wy sterowaniem tranzystorów T9 i T10. Tranzystor T10 załącza cewkę przekaźnika RY9. Na rys. 2 pokazano selektor sygnałów wejściowych dla lewego kanału. Wybór źródła sygnału odbywa się za pomocą wysokiej jakości przekaźników RYl.. .RY6, zapewniających bardzo dobre parametry przełączania oraz przenoszenia sygnału ze źródła do dalszej części układu. Cewki przekaźników są włączone w obwód kolektora tranzystorów T1...T6, których bazy są sterowane z portów mikrokontrolera. Diody D1...D6 zabezpieczają tranzystory sterujące przed przepięciami spowodowanymi przełączaniem cewek przekaźników. Kondensatory C1...C5 ograniczają z góry pasmo częstotliwości przenoszonego sygnału audio. Podobnie zaprojektowano przełącznik wejść prawego kanału, z tą tylko różnicą, że elementy są numerowane z prefiksem "0" przed cyfrą oznaczającą numer kolejny (tzn. zamiast T3 - T03). Do zasilania części sterującej przedwzmacniacza zastosowano zasilacz stabilizowany zbudowany z wykorzystaniem układów VRl i VR2, dostarczających napięć +5V i +12V. Zasilacz, którego schemat elektryczny pokazano na rys. 3, dostarcza również napięcie +300V niezbędne do prawidłowej pracy lamp. Na rys. 4 pokazano schemat elektryczny dwustopniowego przedwzmacniacza napięciowego, który wykonano w oparciu o stosunkowo tanie triody ECC82. Pierwszy stopień wzmocnienia (opis dotyczy kanału lewego -górna cześć schematu, prawy działa identycznie) zaprojektowano w klasyczny sposób - lewa (na schemacie) trioda pracuje w układzie wzmacniacza ze stabilizacją punktu pracy w obwodzie katodowym. Wzmocniony sygnał z anody "lewej" triody jest podawany na siatkę "prawej" triody pracującej w układzie wtórnika katodowego, którego zadaniem jest dopasowanie stosunkowo dużej im-pedancji wyjściowej pierwszego stopnia do impedancji obciążenia przedwzmacniacza. Stopnie wzmacniające mają skokowo regulowane wzmocnienie napięciowe. Regulacja wzmocnienia odbywa się za pomocą zmiany wartości rezystancji rezystorów włączonych szeregowo z katodami lamp (R13+R17/R13 lub R23/26/R23). Wzmocnienie jest modyfikowane za pomocą przekaźników RY7 i RY8 zwierających rezystory R17 i R26. Sposób sterowania tymi przekaźnikami jest identyczny z zastosowanym do sterowania przekaźnikami przełączającymi wejścia. Montaż i uruchomienie Cały układ zmontowano na dwóch jednostronnych płytkach, których szczegółowe rysunki znajdują się w zestawie. W jego skład, poza kompletem elementów, wchodzi solidna obudowa wraz z płytą czołową i opisem. Producent oprócz kabla sieciowego i kompletu gniazd zaopatrzył nas również w niezbędne akcesoria typu: podkładki, tulejki dystansowe, śruby, wkręty, a nawet klucze imbusowe niezbędne do prawidłowego skręcenia obudowy. Wszystkie drobne elementy układu zapakowane są w charakterystyczne dla Vellemana plastikowe pudełka, co zapobiega zgubieniu któregoś z nich. Elektronika Praktyczna 1/2002 Lampowy przedwzmacniacz High-End Rys. 2. Schemat elektryczny przełącznika wejść. Ogromną pomocą dla osób znających podstawy języka angielskiego jest instrukcja montażowa, pozwalająca na dokładne i szczegółowe zorientowanie się w kolejności montażu podzespołów na płytkach drukowanych. Osobom nie znającym języka angielskiego, pomocne będą ilustracje pokazujące wygląd, sposób (jak np. na rys. 5 i 6), kolejność montażu, a nawet biegunowość poszczególnych podzespołów. Należy bezwzględnie przestrzegać zaleceń producenta, co zaoszczędzi nam kłopotów przy dalszym montażu i pozwoli umieścić całość w obudowie. Montaż rozpoczynamy od płytki oznaczonej symbolem P8021L, na której znajdują się gniazda wejściowe lewego kanału, wlu-towując w pierwszej kolejności diody, rezystory i przekaźniki, kończąc zaś na złoconych gniazdach "chinch", lutowanych bezpośrednio w płytkę oraz szeregu goldpinów. Te ostatnie należy przy lutować ściśle według instrukcji tak, aby w końcowej fazie montażu można było połączyć płytkę z płytą bazową przedwzmacniacza. W kolejnym etapie zmontujemy płytkę bazową oznaczoną symbolem P8020B. Ze względu na dużą liczbę elementów będziemy musieli poświęcić jej najwięcej czasu. Montaż rozpoczynamy od wlu-towania zwor oznaczonych jako J oraz rezystorów (niektóre metalizowane 1% dla zachowania bliźniaczych parametrów w obu kanałach: lewym i prawym). Następną czynnością będzie przylutowanie w miejscach ozna- czonych jako VI, V2 i VR1 kołków montażowych, mających ułatwić późniejsze zamontowanie gniazd lamp i stabilizatora. Po uporaniu się z tą czynnością można zabrać się za przylutowanie kondensatorów, podstawki pod ICl, złącza 20-pinowego, tranzystorów, przekaźników i w końcu złoconych gniazd "chinch", tym razem dla prawego kanału. Producent zaleca, aby następnie przylutować, do wcześniej zainstalowanych kołków montażowych, porcelanowe gniazda lamp VI i V2. Gniazda te montujemy na wysokości 23mm. Dokładny sposób obsadzenia ilustruje instrukcja montażowa. Po przylutowaniu gniazd lamp rozpoczynamy od montażu przycisków, stabilizatora VR2 i pozostałych kondensatorów elektrolitycznych. Transformator TRI przed przylutowaniem przykręcamy do płytki bazowej za pomocą czterech 6mm wkrętów i nakrętek M3. Potencjometr, w który wyposażymy nasz przedwzmacniacz, jest potencjometrem wysokiej klasy i również w tym przypadku należy ściśle przestrzegać wskazówek producenta podczas jego montażu. Przykręcamy go do płytki za pomocą obejmy i dwóch wkrętów 6mm z nakrętkami M3. Nie lutujemy jego wyprowadzeń, gdyż w dalszej części montażu należy skorygować jego położenie względem płyty czołowej. Szczegółowy opis wraz z rysunkami znajdziemy w oryginalnej instrukcji. Następnie wybieramy wartość napięcia zasilającego przedwzmacniacz: 110 lub 220V. W tym przypadku wybierzemy napięcie 22 0VAC. Należy zatem połączyć ze sobą punkty B i C na płytce bazowej przedwzmacniacza. W zestawie znajdziemy także trzy lOcm odcinki przewodów, które trzeba przylutować w miejsce gniazda SK08. Przewód w kolorze niebieskim do punktu oznaczonego N, brązowy do L, a żółto-zielony do EARTH. Ważne jest, by nie lutować przewodów do samego gniazda. Kolejną czynnością, której należy poświęcić nieco więcej uwagi, będzie montaż diod LED. Przed wykonaniem tej czynności musimy zaopatrzyć się w dobrej klasy szczypce do krępowania Elektronika Praktyczna 1/2002 39 Lampowy przedwzmacniacz High-End VR1 MA7B12P VO VI GND
230V 115V B+C A+B C+D TR1 SK09 ^C30 =C29 = \7 S7 \7 C28 3x47jj/350V R33 27k 0.6W Rys. 3. Schemat elektryczny zasilacza. nóżek diod. Jako pierwszą montujemy diodę oznaczoną jako LD7 (na wysokości 3mm). Najlepiej przylutować najpierw jedno wyprowadzenie każdej diody, następnie odpowiednio dogiąć diody świecące tak, aby ich rozmieszczenie odpowiadało otworom w płycie czołowej. Dopiero po upewnieniu się o równomiernym rozmieszczeniu elementów można przylutować pozostałe końcówki. Po przylutowaniu diody LD7 montujemy diody LD1...LD6, umieszczone nad mikrowyłącznikami, na wysokości 12mm. Ostatnią diodą LED jest dioda LD8, którą należy wlutować pionowo. Po zakończeniu montażu powinniśmy raz jeszcze skontrolować poprawność wszystkich połączeń i usunąć ewentualne nieprawidłowości. Montaż elementów mechanicznych rozpoczynamy od przykręcenia do płytki bazowej czterech 2cm tulejek dystansowych 6mm wkrętami. Następnie specjalnie przygotowaną do tego celu śrubą M4 należy nagwintować cztery otwory w spodniej części obudowy oraz po dwa otwory służące do przykręcenia frontowej i tylnej ścianki obudowy. Kolejną czynnością jest przykręcenie do aluminiowego profilu czterech efektownie wyglądających, chromowanych stopek, oraz chromowanych osłon lamp w górnej części obudowy. SK08 R32 27k 0.6W LD8 L-424YDT T I WYKAZ ELEMENTÓW Płytko P802U Rezystory R1...R6: lOkO R7, R8: lkO Kondensatory C1...C8: 220pF Półprzewodniki D1...D6: 1N4148 T1...T6: BC557 Różne RY1...RY6: przekaźnik VR05051AS SK1...SK6: złocone gniazdo CINCH czarne SK7: listwa goldpin 20 pin Płytka P8020B Rezystory R1...R3, R5, Ró, R8, R12, R19, R22, R25, R3Ó, R38, R40, R42...R44, R47: lOka R4, R7, R30, R31, R41, RR45, R4Ó, R48: lka R9, Rló, R28: 680O RIO, R20,: 1MQ Rll: 27kQ/0,ÓW R13, R17, R23, R26: 3,ókO/l% R14, R24: lOOka R15, R29: 5,ókQ R18, R27: 33kO/l% R21, R32, R33, R34: 27kO/0/6W R35: 1O R37, R39: 4JkO RV1: potencjometr 2x50kQ ALPS C15 100M Kondensatory C1...C7: 220pF C8...C15: lOOnF Cló, C17: 2/2jiF C18, C19: 68nF/630V C20: 22nF/630V C2L C22: 4,7^F/250V foliowy C23: 100jiF/25V C24: 470|iF/25V C25, C26, C27: 1000^F/25V C28...C34: 47^F/350V Półprzewodniki D1...D9: 1N4148 D10...D20: 1N4007 T1...T9: BC557 T10: BC547 IC1: PIC16C54RC z programem VK8020 VR1: 7812 VR2: 7805 LD1...LD8: LED f3 żółta Różne RY1...RY8: przekaźnik VR05051AS RY9: przekaźnik VR5C122C SK1...SK6: złocone gniazdo CINCH czerwone SK7: gniazdo goldpin 20 pin SW1...SW5: mikroprzyciski do druku TRI: TR8020, 2x18V, 12V, 220V/ 16VA VI, V2: ECC82 Podstawka 18-stykowa Podstawki pod lampy Kołki montażowe 40 Elektronika Praktyczna 1/2002 Lampowy przedwzmacniacz High-End C21 4p7/160V C22 4M7/160V Rys. 4. Schemat elektryczny przedwzmacniacza. Teraz, przykładając płytkę bazową do spodniej części obudowy zaznaczamy trzy miejsca mocowania i po usunięciu płytki wkręcamy w tych miejscach wkręty M3 i 5mm tulejki. Dodatkowo, po tej czynności należy sprawdzić omomierzem jakość połączenia galwanicznego zamocowanych wkrętów z obudową. Jeżeli kontakt jest dobry, przykręcamy płytkę bazową trzema tulejkami dystansowymi M3. Kolejną czynnością po zamontowaniu płytki bazowej bę- dzie nałożenie gałki na potencjometr. Korygując położenie diod LED przykręcamy frontową ściankę obudowy za pomocą dwóch wkrętów M4 i korygujemy położenie potencjometru tak, aby obracanie gałki odbywało się bez ocierania o obudowę. Po zdemontowaniu płyty czołowej w szczelinę aluminiowego profilu wsuwamy śrubę M3, która posłuży do zamocowania stabilizatora. Po wykonaniu tej czynności możemy przymocować płytkę z gniazdami dla kanału lewego. Posłużą do tego wkręty M3/6mm wkręcone do tulejek dystansowych. Teraz pozostało już tylko przykręcić stabilizator 7812 i przylutować jego końcówki do kołków montażowych. Ponownie korygując położenie diod LED przykręcamy płytę czołową i tylną, mocując w niej uprzednio gniazdo zasilania. Montaż układu kończy umieszczenie w podstawce układu ICl oraz dwóch lamp. Producent kitu dołączył do zestawu również przewód sieciowy, którym należy zasilić przedwzmacniacz. Podczas uruchamiania należy zachować szczególną ostrożność, ponieważ w kilku miejscach na płycie głównej występuje niebezpieczne napięcie sieci oraz wysokie napięcie stałe. Po włączeniu przedwzmacniacza powinna zaświecić się dioda nad przyciskiem STANDBY. Naciśnięcie tego przycisku lub przycisku wyboru źródła sygnału spowoduje uruchomienie przedwzmacniacza. Prawidłową pracę zasilacza sygnalizuje świecenie diody LED LD08 na płycie głównej oraz rozżarzenie się włókien lamp. Ponowne naciśnięcie przycisku STANDBY uaktywni tryb MUTE, a przytrzymanie go spo- Rys. 5. Sposób montażu podstawek w płytce drukowanej. Elektronika Praktyczna 1/2002 41 Lampowy przedwzmacniacz High-End woduje przejście wzmacniacza w tryb gotowości. Każdorazowe naciśnięcie przycisku wyboru wejścia spowoduje przełączenie źródła sygnału. Ponowne naciśnięcie tego samego przycisku uaktywni wyjście MONITOR, natomiast kilkusekundowe przytrzymanie tegoż przycisku włączy funkcję +6dB. Funkcja +6dB przydatna jest szczególnie wtedy, gdy potrzebne jest dopasowanie poziomu sygnału między różnymi wejściami tak, aby przełączanie źródeł dźwięku nie wpływało na poziom głośności. Należy sprawdzić działanie wszystkich klawiszy "na sucho" i jeżeli wszystko przebiegło pomyślnie, można zamknąć całość w obudowie przykręcając jej górną pokrywę. Trzeba jeszcze tylko upewnić się, czy pokrętło regulatora głośności jest ustawione na minimum i dopiero wtedy można dołączyć końcówkę mocy i wykorzystując gniazda wejściowe raz jeszcze przetestować cały układ. Do łączenia przedwzmacniacza z urządzeniami zewnętrznymi należy używać dobrej jakości przewodów połączeniowych, gdyż zapewni to odpowiednią jakość dźwięku. Wejścia AUX, CD i TUNER służą do podłączania źródeł sygnału o napięciach z przedziału 150mV...2V. Do wejścia AV należy podłączyć wyjście sygnału z odtwarzacza DVD, MD, VCR, CDR player/recorder. Wyjście MONITOR służy do zapisu sygnału, natomiast LINĘ do podłączenia końcówki mocy. Ogólna ocena prezentowanego układu jest bardzo dobra. Zarówno parametry użytkowe jak i techniczne przedwzmacniacza nie odbiegają od urządzeń tej klasy oferowanych na rynku, a profesjonalny wygląd całości i wzorowo wykonana konstrukcja podnosi jego walory użytkowe. Grzegorz Becker, AVT Rys. 6. Sposób montażu potencjometru regulującego siłę głosu. Zestawy firmy Velleman są dostępne w ofercie handlowej AVT - szczegóły w Internecie www.sklep.avt.com.pl oraz pod numerami telefonów opublikowanych na str. 113. 42 Elektronika Praktyczna 1/2002 ^J ^~ml_ ^^^2 To oczywiście nie są wszystkie rnoś-liwe zastosowania identyfikatorów bez-stykowych, ale nie ich aplikacjom poświęciliśmy ten artykuł, lecz jednemu z obecnie najnowocześniejszych na rynku systemów bezstykowej identyfikacji firmy Philips Semiconductors. Zasada działania Idea działania systemu I-CODE jest taka sama jak innych systemów besstykowej identyfikacji: transponder w postaci układu scalonego wykonanego w technologii CMOS gwarantującej niewielki pobór mocy, jest zasilany ener- SPRZĘT Do różnego rodzaju bezstykowych identyfikatorów zdążyliśmy się już przyzwyczaić, ale wiele wskazuje, że to dopiero początek ich drogi rozwoju. Coraz większa liczba sprawdzonych "w boju" aplikacji, niska cena, łatwość i wygoda stosowania, a także coraz większe b ezpi e cz eń stwo przechowywanych danych powodują, że bezstykowe identyfikatory w niedługim czasie zastąpią standardowe klucze, dokumenty, portfele i portmonetki. Już teraz zapewniają z powodzeniem identyfikację bagaży na lotniskach, książek w bibliotekach, kaset i płyt w wypożyczalniach, a nawet pojemników na śmieci. gią dostarczaną ze stacji basowej drogą radiową (sprzężenie indukcyjne). Stacja ta kilka rasy w ciągu sekundy inicjuje transmisję, wysyłając sekwencję danych, której zadaniem jest dostarczenie energii do transpondera. Sygnał w.es. o częstotliwości 13 ,56MHz, indukowany w paskowej antenie transpondera, jest prostowany, a uzyskany w ten sposób prąd ładuje wbudowany w strukturę układu kondensator o pojemności ok. lOOpp. W ten sposób gromadzona jest energia zasilająca transponder, którego schemat blokowy fukład SLl wchodzący w skład systemu I-CODE) pokazano na rys. 1. Elektronika Praktyczna 4/2002 SPRZĘT LjProcessor DVDD Rnat AVDD TYDD RX DVS3 08CIN OSCOUT AV8S VMID Rys. 2. lEpF- 1fipF= Oprócz rozbudowanego bloku analogowego, w skład którego wchodzą: demodulator danych odbieranych, modulator danych wysyłanych, blok ekstrakcji sygnału zegarowego oras blok za-silania, we wnętrzu transponderów zintegrowano cyfrowy interfejs. W jego skład wchodzą: podzielona na sektory pamięć EEPROM, blok antykolizyjny (umożliwiający jednoczesny odczyt kilku transponderów znajdujących się w zasięgu anteny), blok sterowania dostępem do pamięci EEPROM oraz blok sterowania analogową częścią trans-pondera. Pojemność pamięci EEPROM w transponderach starszych generacji z rodziny I-CODE wynosiła 512 bitów, które podzielono na 16 bloków po 32 bity. Do dyspozycji użytkownika pozostają 384 bity, a pozostałe 128 jest zajęte przez predefiniowany numer seryjny transpondera (64-bitowy), bity kon-figurujące transmisję danych oraz dostęp do pamięci EEPROM. Ta cześć pamięci mośe być przez firmę Philips Semiconductors zaprogramowana takśe innymi danymi, jak np. kod producenta, cyfrowe oznaczenie docelowej aplikacji, czy teś innymi danymi wymaganymi przez aplikację użytkownika. Takie specjalnie wersje transponderów Philips Semiconductors dostarcza m.in. firmie Gemplus, jednemu z największych na świecie producentów kart magnetycznych, chipowych oraz systemów identyfikacyjnych. Trwałość pamięci EEPROM wbudowanej w transpondery I-CODE wynosi 100000 cykli kasowanie-zapis, a czas przechowywania w niej danych nie jest krótszy niś 10 lat. Są to parametry porównywalne z parametrami większością dostępnych na rynku pamięci EEPROM, co pozwala traktować transpondery jak bezprzewodowe odpo- C4 . 10Drf= " wiedniki funkcjonalne standardowych pamięci EEPROM. Pomimo pełnienia przez łącze radiowe podwójnej roli - medium transmisyjnego i zasilającego - szybkość transmisji danych pomiędzy transponderem i stacją bazową jest dość duśa i wynosi maksymalnie 26,5kbd lub 53kbd, w zależności od typu układu ftab. l). W ramach rodziny I-CODE dostępne są 3 rodzaje transponderów, które róż- nią się między sobą nie tyl-maksymalną szybkością transmisji danych, lecz takśe pojemnością pamięci EEPROM i algorytmami anty kolizyjny mi f tab . 1). W transponderach SLl (ICS30 i ICS31) zastosowano algorytm z podziałem czasu, natomiast w transponderach nowej generacji SL2 (ICS20) wykorzystano algorytm opisany normą ISO15693, dzięki czemu mogą być one stosowane w dowolnych aplikacjach. Produkowane przez Philips Semiconductorsa transpondery nie przypominają wyglądem efektownych kart, breloczków, czy teś naklejek. Philips Semiconductors dostarcza jedynie nieobudowane struktury półprzewodnikowe, które firmy takie jak Gemplus obudowują, dostarczając odbiorcom kompletny produkt. Wprowadzając do produkcji transpondery I-CODE, firma Philips Semiconductors zadbała o wygodę konstruktorów, oferuje bowiem jednocześnie specjalne układy przeznaczone do pracy w stacjach bazowych. Zintegrowano w nich wszystkie elementy konieczne do dwukierunkowej wymiany danych, łącznie z transceiverem radiowym i systemem antykolizyjnym, dzięki czemu - z punktu widzenia aplikacji uśytkownika - wszelkie problemy transmisyjne są juś rozwiązane. Układy SL RC400 wyposaśono w 8-bi- Fot. 3. Elektronika Praktyczna 4/2002 SPRZĘT PHILIPS rowy, równoległy port dostępowy, który dzięki specjalnej budowie umożli-wia współpracę z rnikrokontrolerarni z dowolnej rodziny. Uproszczony schemat blokowy stacji basowej wykonanej na tym układzie pokąsano na rys. 2. Z dołączoną typową anteną, wykonaną na laminacie o wymiarach ok. 80x80 mm, zasięg transmisji da- Tab. 1. Zestawienie podstawowych parametrów dostępnych transponderow I-CODE. Parametr SL1ICS30 SL1ICS31 SL2ICS20 Poiernność pamięci EEPROM 512 b 512 b 1024 b Konfiguracja pamięci EEPROM 16 bloków x 4 bajty (po 8 bitów) 16 bloków x 4 bajty (po 8 bitów) 32 bloki x 4 bajty (po 8 bitów) Częstotliwość nośna 13,56 MHz 13,56 MHz 13,56 MHz Maksym alna szybkość Transmis|i 26,5 kbd 26,5 kbd 53 kbd Algorytm antykohzyiny Podział czasu Podział czasu ISO15693 Maksymalny zasięg transmisji 1,5 m 1,5m 1,5 rn Długość numeru seryjnego 64 b 64 b 64 b Gwarantowana liczba zapisów pamięci EEPROM 100000 100000 100000 1 Ś-.*-** r- * nr m
4 m- -f r
lJ4l" illl Cl C__:__
u o ? o Rys. 4. nych nie przekracza 100 mm, ale po-prses rozbudowanie toru radiowego mośna go swiękssyć do 1,5 m. Zestaw ewaluacyjny W redakcji przeprowadziliśmy testy zestawu ewaluacyjnego SL EV400, w skład którego wchodzi efektowny fjak widać na fot. 3) czytnik zintegrowany z anteną, komunikujący się z komputerem PC poprzez interfejs USB. Takśe zasilanie do zestawu jest dostarczane poprzez kabel USB, co upraszcza jego stosowanie. Zestaw zawiera oprogramowanie i dokumentację na płycie CD-ROM. Zamieszczono na niej m.in. postać źródłową programu dla procesora Cl61, który w zestawie steruje pracą układu SL RC400, dzięki czemu projektanci mogą znaleźć profesjonalne odniesienie do własnych pomysłów. Oprogramowanie dla PC (rys* 4 - jak widać wymagające Windows) pozwala na wykonanie wszystkich standardowych operacji na pamięci transpondera, dzięki czemu mośna łatwo ocenić ich faktyczne możliwości. Twórcy programu przewidzieli możliwość współpracy z transponderami z rodzin SLl i SL2. Podsumowanie Historia systemów bezprzewodowej identyfikacji sięga roku 1990, kiedy Philips Semiconductors wprowadził do produkcji system MIDAT. System I-CODE pojawił się na rynku w 1998 roku, przechodząc do dziś dwie rewo-lucjne modyfikacje (drugą jest wprowadzenie transponderow mikrofalowych) , rozszerzając jednocześnie obszary nowych zastosowań. Pomimo technologicznego za późnienia, takśe w naszym kraju systemy identyfikacji bezprzewodowej różnego rodzaju zdobyły sobie uznanie, głównie w aplikacjach komercyjnych. Nie ulega wątpliwości, śe będą one coraz powszechniej stosowane, ponieważ są bardzo wygodne w stosowaniu i odporne na uszkodzenia, gdyś są hermetycznie zamknięte i nie mają żadnych elementów mechanicznych. Andrzej Gawryluk, AVT Dodatkowe informacje Dodatkowe informacje są dostępne w Interne-cie pod adresami: - główna strona działu identyfikacji lirrny Philips Semiconductors: hTTp://www. sernic on ductors.-philips.com/markeTs/idenTilicaTion/producTs/ icode/, - pliki do pobrania: hTTp://www.semiconducTors.-philips.com/markeTs/idenTilicaTion/cusTomer/ downloac^. 54 Elektronika Praktyczna 4/2002 Firma CIE wprowadziła na nasz rynek nowy model uniwersalnego multimetru, którego najważniejszą cechą - jak wynika z dołączonej do niego dokumentacji - jest odporność na udary mechaniczne, ćjffKffljfilestynuje przyrząd do zastosowań serwisowfch. O wrażeniach z testu piszemy w artykule. r) J - Mulłimełr cyfrowy Ma inulti metrze jest doskonale widoczny napis Heavy Buty Digital Muliimefer i nazwa modelu, naklejona zresztą w postaci etykietki z odpowiednim nadrukiem. Jednak w dołączonej do przyrządu instrukcji nie znalazłem rozwinięcia określenia heavy duty, a więc sądsę, śe do tej cechy przyrządu należy podchodzić z pewną ostrożnością. Tym bardziej, że wygląd miernika nie wskazuje na to, aby jego konstrukcja była jakoś specjalnie wzmacniana, Owszem, obudowa ma ochraniacz z tworzywa przypominającego trochę plastik, trochę gumę, ale czy to wystarczy? Jednym z ważniejszych, w prawdziwych miernikach heavy duty, użytkowych parametrów multimetru jest rozdzielczość pomiaru, od której zależy maksymalne wskazanie na wyświetlaczu. Model 9005 wyposażono w ciekło kry stal icz- Rys. la. dy wyświetlacz 3?/4 cyfry (maksymalne wskazanie: 3999), Pod cyframi o wysokości 16mm znajduje się 40-segmen-towy bargraf, którego wskazanie jest uaktualniane z częstotliwością 20Hz. Główny wyświetlacz jest odświeżany 2 razy na sekundę. Funkcje pomiarowe wybiera się przełącznikiem obrotowym, pełniącym jednocześnie rolę wyłącznika zasilania. Rozwiązanie takie jest trochę niewygodne, gdyż aby wyłączyć przyrząd, należy obrócić przełącznik w lewe, skrajne położenie. Na pewno nie odbywa się to bez wpływu na jego trwałość. Ostatecznie można w ogóle zrezygnować z wyłączania multimetru. Zrobi on to automatycznie, dzięki funkcji Auto Power Off. Powoduje ona, że po 30 minutach bezczynności (zmian zakresu lub trybu pracy), miernik zostanie wyłączony automatycznie. Chęć wyłączenia sygnalizuje kilka sekund wcześniej krótkim sygnałem dźwiękowym. Dostępne w multimetrze 9005 funkcje pomiarowe to: / pomiar napięcia DC i ACEM&, / pomiar prądu DC i ACRU&, pomiar rezystancji, testowanie ciągłości połączeń, testowanie diod, pomiar pojemności kondensatorów (w tym polaryzowanych), pomiar częstotliwości, pomiar temperatury, Miernik automatycznie dobiera zakres pomiarowy. Jednak, gdy zaproponowany zakres nie odpowiada użytkownikowi , można klawiszem RAfilGE ustawie najodpowiedniejszy w danej sytuacji. Przytrzymanie tego klawisza przez ok. 2 sekundy lub zmiana funkcji, przywraca automatyczny dobór zakresu Klawiszem REL D można włączyć tryb pomiaru względnego. Wartość wskazywana przez miernik w chwili naciśnięcia tego przycisku staje się wartością odniesienia (zero na wyświetlaczu). Czasami użytkownika interesują tylko ekstremalne wskazania przyrządu. W takim przypadku można klawiszem MINfMAX wybrać funkcję zatrzaskiwania na wyświetlaczu wartości maksymalnej lub minimalnej. Wyświetlany wynik będzie się zmieniał tylko wtedy, gdy zostanie zmierzona nowa wartość, odpowiednio maksymal- Elektronika Praktyczna 4/2002 SPRZĘT lib. 1. Wybrane dane techniczne multimetru 9005 Napięcie DC Zakres Rozdzielczość Dokładność I mpe danej a wejściowa Ś 400mV 100|aV ą(0,1%odczytu+2) >100Mn J 4V 1mV ą(0,1%odczytu+2) 10Mn L 40V 10mV 100mV ą(0,1%odczytu+2) ą(0,1%odczytu+2) 9,iMn 9,iMn 1000V 1V ą(0,1%odczytu+2) 9,iMn NapiecieACRMs Zakres Rozdzielczość Dokładność Dokładność (50Hz...500Hz) (50Hz...1kHz) i 400mV 100|aV ą(1,2%odczytu+5) nieokreślona 1mV ą(1,0%odczytu+3) ą(1,5%odczytu+5) ż4 i!V 10mV ą(1,0%odczytu+3) ą(1,2%odczytu+5) 100mV ą(1,0%odczytu+3) ą(1,2%odczytu+5) 1 750V 1V ą(1,2%odczytu+5) ą(1,5%odczytu+5) Prąd DC Zakres Rozdzielczość Dokładność Spadek napięcia Ś 400|a.A 0,1 nA ą(1,0%odczytu+1) 500mV |4mA 1nA ą(1,0%odczytu+1) 2,0mV |40mA 10^A ą(1,0%odczytu+1) 500mV 400mA 100nA ą(1,0%odczytu+1) 2,0mV 20A (maKs 30 s) 10mA ą(2,0%odczytu+3) 500mV Ś Zakres Rozdzielczość Dokładność Spadek napięcia 4t%A 0,1 nA ą(1,5%odczytu+4) 500mV |4rnA 1nA ą(1,5%odczytu+4) 2,0mV |40mA 10^A ą(1,5%odczytu+4) 500mV \ \ 400mA 100nA ą(1,5%odczytu+4) 2,0mV 20A (maKs 30 s) 10mA ą(2,5%odczytu+4) 500mV Rezystancj Zakres 4oon a Rozdzielczość o,m Dokładność ą(0,5%odczytu+4) Napięciew otwartym obwodzie -1,2V 4kn m ą(0,4%odczytu+2) -0,45V t i 40kn 400kn ion loon Ikn ą(0,4%odczytu+2) ą(0,4%odczytu+2) ą(0,7%odczytu+4) -0,45V -0,45V -0,45V 40Mn ion ą(1,5%odczytu+4) -0,45V Pojemność Zakres Rozdzielczość Dokładność 4nF "40nF 400nF 1pF 10pF ToopF InF TtinF ą(3,0%odczytu+20) ą(3,0%odczytu+5) ą(3,0%odczytu+5) ą(3,0%odczytu+5) ą(3,0%odczytu+5) 400^F 0,1 ^F ą(5,0%odczytu+10) 4mF 1nF ą(5,0%odczytu+10) 40mF 10^F ą(5,0%odczytu+10) Temperatura Zakres Rozdzielczość Dokładność -50Cdo400C 0,1 C ą(0,8%odczytu+2C) 400Cdo1300C 1C ą(1,0%odczytu+2C) -58Fdo400F 0,1 F ą(0,8%odczytu+4F) 400F do2372F 1F ą(1,0%odczytu+4F)
j
j *--
1HM łlłtłf H4I44 II4IM Rys, Ib, na lub minimalna. Można też włączyć układ zapamiętywania ekstremSw, z jednoczesnym wyświetlaniem wartości bieżące]. Największe i najmniejsze wartości zmierzone są dostępne po zakończeniu pomiarów. Podobną do powyższej funkcję uzyskuje się po naciśnięciu klawisza PEAKą. Miernik przechodzi wtedy w tryb zapamiętywania wartości szczytowych. Funkcja ta działa tylko podczas pomiaru prądu i napięcia AC/DC. Prsytrsymanie klawisza na ok. 2 sekundy inicjuje kalibrację. Pod wyświetlaczem znajduje się również klawisz HOLD{ którym można zamrozić na czas nieokreślony wskazania przyrządu. Niewątpliwie podczas prac warsztatowych bardzo przydatne są funkcje pomiaru pojemności kondensatorów i częstotliwości sygnałów. Trseba jednak pamiętać o pewnych ograniczeniach. Deklarowana dokładność pomiaru częstotliwości obowiązuje tylko wtedy, gdy współczynnik wypełnienia badanego przebiegu mieści się w przedziale 30...70%. Ponadto czułość przyrsądu nie jest rewelacyjna i wynosi powyżej I^rms dla zakresów do 400kHz oraz >2VEM& i <5VEMS dla zakresów 4MHz i 40MHz. Multimetr 9005 umożliwia także pomiar temperatury w zakresie -5O...13OOC. Czujnikiem jest termopara typu K, włączana w specjalne gniazdo tuż pod przełącznikiem funkcji pomiarowych. Umożliwia ona np. zmierzenie temperatury tranzystorów w końcówkach mocy, czy procesorów na płytach głównych komputerów. Dokładność i rozdzielczość pomiarowa jest w takich zastosowaniach w zupełności wystarczająca. Aby w pełni zadowolić swoich klientów, producent przewidział możliwość współpracy miernika z komputerem PC. W tym celu został on wy- posażony w interfejs RS232, a użytkownik otrzymuje prsy zakupie przyrządu również program DMM Utility. Za jego pomocą można na ekranie komputera obserwować on-line wskazania prsyrsądu, zarówno w postaci cyfrowej jak i analogowej. Do postaci analogowej zaliczyłbym wirtualny bargraf, identyczny z tym, który znajduje się na wyświetlaczu LCD oraz prosty wykres rysowany w dolnej części okna programu (rys. la). Wykres ten należy traktować jednak dość orientacyjnie. Na potwierdzenie tego można porównać rys. la i rys. lb, przedstawiające tę samą sesję pomiarową. Na rys. lb widnieje wykres sporządzony w Excel-u na podstawie danych wyeksportowanych z programu. Program DMM Utility zapisuje wyniki w swoim własnym formacie *.dmm lub eksportuje dane w formacie tekstowym *.csv. Odnosząc się z całym szacunkiem dla intencji producenta, współpracę multimetru 9005 z komputerem traktowałbym jednak z przymrużeniem oka. Oczywiście, można znaleźć praktyczne jej zastosowania. Wydaje się jednak, że w większości przypadków, możliwość ta będzie wykorzystywana raczej rsadko. Trudno napisać coś na podsumowanie. Miernik nie błyszczy jakimiś rewelacyjnymi rozwiązaniami, ale i nie odstaje od obowiązujących aktualnie wymagań. Z uwagi na możliwość pomiaru częstotliwości, przydałaby się może choć jedna cyfra więcej na wyświetlaczu. Jarosław Doliński, AVT jdolin@optimus.waw.pl Dodatkowe informacje Przyrząd do testów dostarczyła lirma Biali, Tel. (58) 322-11-91, www.biall.corn.pl. Elektronika Praktyczna 4/2002 57 PROGRAMY Nieodległa w czasie premiera nowej wersji Protela zbiega się z zapowiedzią wprowadzenia na rynek przez firmę Innoveda oprogramowania, które całkowicie zmieni sposób projektowania płytek. W zasadzie nie będzie się ich już rysować, lecz opisywać tekstowo. Trudno jest przewidzieć, czy ta rewolucyjna koncepcja Innovedy przyjmie się wśród projektantów i konstruktorów, ale podstawy do sukcesu ma mocne... HDL zamiast schematu Pomysł firmy Innoveda jest efektem analizy problemów, na jakie napotykają projektanci obwodów drukowanych, szczególnie Ci, którzy tworzą zaawansowane projekty przemysłowe. Są to przede wszystkim: / Stopień skomplikowania współczesnych projektów jest bardzo duży i choćby ze względu na ogromną liczbę wyprowadzeń układów scalonych nie jest praktycznie możliwe narysowanie schematu elektrycznego urządzenia bez tworzenia rozbudowanej struktury hierarchicznej, co z jednej strony upraszcza zarządzanie projektem, z drugiej nieco ogranicza jego czy-telnoSć. / Utrudnione, często wręcz niemożliwe, jest symulowanie i analiza pracy całego projektu, zwłaszcza z uwzględnieniem specjalizowanych układów projektowanych na zamówienie. / Duże projekty są zazwyczaj realizowane zespołowo, co powoduje, że znacznie utrudnione jest wykonanie ich kompletnej dokumentacji. Wykorzystanie do przygotowywania schematów wydzielonej grupy inżynierów powoduje opóźnienia w realizacji projektu i jest przyczyną powstawania trudnych do wychwycenia błędów. Lekarstwem na te problemy - według firmy Innoveda - ma być zastąpienie schematów elektrycznych tekstowym opisem w jednym z języków HDL [Hardware Description Language) jak Verilog, VHDL czy JHDL. Wbrew obiegowym opiniom, języki te są przystosowane do opisu zarówno układów cyfrowych, jak i analogowych, a także ich otoczenia na przykład w postaci połączeń na płytce drukowanej czy elementów pasywnych ulokowanych poza strukturą układów. W językach HDL od wielu już lat są opisywane układy ASIC i pochodne, a także Dodatkowe narzędzia do projektowania ultraszybWch systemów pOKtePlanner) - zwłaszcza Verilog i VHDL - są coraz powszechniej stosowane do opisywania projektów na układach PLD. Jaki ma sens rezygnacja z, mimo wszystko, lubianych edytorów graficznych i przechodzenie na niewygodny opis tekstowy? -zapyta z pewnoScią 95% czytelników tego artykułu. RzeczywiScie, całkowite odcięcie się od graficznych metod projektowania nie mogłoby korzystnie wpłynąć na szybkoSć "przyswojenia" przez projektantów nowego sposobu opisu projektu, a w związku z tym ekonomiczny sens wdrażania takiego oprogramowania nie byłby zbyt duży. Problem ten w znacznym stopniu rozwiązują dostępne na rynku programy narzędziowe umożliwiające opisywanie projektowanych układów cyfrowych w postaci graficznej (np. grafów przejSć, przebiegów czasowych, tablic wartoSci), a taki opis jest następnie przekształcany do opisu w wybranym języku HDL. W ten sposób komfort pracy projektantów jest zachowany, a wspólną platformą projektowania staje się język HDL, który zastępuje różne formaty list połączeń, zapewnia także możliwoSć stosunkowo łatwego symulowania nawet bardzo złożonych projektów. Na rys. 1 pokazano schemat blokowy procesu projektowania płytek, których opis przygotowano w języku HDL. Pliki można wygenerować za pomocą dowolnego programu do syntezy logicznej (np. Quartus II, FPGA Advantage, Active HDL itp.) i po przesymulowaniu projektowanego układu (np. za pomocą programu ModelSIM lub dowolnego innego symmulatora HDL), można poddać go konwersji (za pomocą nowego opracowania firmy Innoveda - programu HDL2PCB) do postaci listy połączeń akceptowanej przez edytory PCB. Podczas konwersji z języka HDL na format listy połączeń generowany jest raport w formacie HTML, który zawiera wszelkie informacje o parametrach i wynikach konwersji. Za pomocą tego edytora płytka jest projektowana już w klasyczny sposób, z opcjonalnym wykorzystaniem dodatkowych narzędzi zapewniających spełnienie warunków EMC, czy też optymalizację rozmieszczenia elementów pod kątem transmisji szybkich sygnałów analogowych i cyfrowych. Na rys. 2 pokazano okno wersji pre-beta programu HDL2PCB, którego wersja komercyjna powinna pojawić się najpóźniej w drugim kwartale tego roku. Piotr Zbysiński, AVT piotr.zbysinski@ep.com.pl Dodatkowe informacje Dodatkowe informacje można znaleźć na stronie internetowej producenta: www.innoveda.com. Dystrybutorem programów firmy lnnoveda w Polsce jest firma CADware, http://www.cadware.cz/ index_pl.htm,tel. (32) 217-16-66. Edytor hierarchii projektu Okno z listą połączeń _ wygenerowaną -S-z opisu HDL 7 *-Ś>Ś ^ I Okno zarządzania bazami danych ODBC Rys, Rys, 2, Okno edytora atrybutów podzespołów Okno z opisem HDL Elektronika Praktyczna 4/2002 f Tester aparatów telefonicznych Projekty Czytelników Projekt ten wzbudził wśród Czytelników ogromne zainteresowanie, co dowodzi sporej popularności zagadnień telekomunikacyjnych wśród naszych Czytelników. Na słr. 41 prezentujemy drugq, ostatniq część artykułu. Na słr. 89 przedstawiamy jeden z najstaranniej wykonanych projektów - timer fotograficzny o możliwościach przewyższajqcych wiele urzqdzeh fabrycznych. "Szufladkowy" detektor sygnałów Na słr. 75 przedstawiamy kolejny modu-lik "szafkowy" - jest to generator-szukacz sygnału, niezbędny do weryfikowania działania torów akustycznych i niektórych torów w.cz. t Elektromechaniczny efekt audio typu LESLIE Fantastyczne połqczenie mechaniki, elektroniki i dobrego pomysłu: efekt wirujqcych głośników, tym razem w wersji bliskiej oryginałowi. Słr. 21. Cyfrowy tester żarówek > Realizacja tego pomysłu może budzić -mieszane odczucia, ale aplikacja * z pewnościq pokazuje elastyczność współczesnych mikrokontrolerów. Słr. 27 UPROG HS - nowy programator firmy RK-System W artykule na słr. 60 przedstawiamy nowq, udoskonalonq wersję uniwersalnego programatora laboratoryjnego UPROG. Minitester pilotów Projekt w EP nietypowy, przede wszystkim z powodu niezwykle prostej budowy. Słr. 75. Sposób na sieć > Artykuł powstał w odpowiedzi na zgłaszane w "Listach" oczekiwania Czytelników. Na słr. 85 pokazujemy, jak można zbudować bezprze- r. . ,. , . . , wodowa, łatwa w wykona- "*" Dzięki temu opracowaniu jednoczesne . .. , Ś. ' wyświetlanie informacji o czasie, tempe- nluHslc 'nformatycznq ' ...... , ... . . ' . o dobrych parametrach raturze lub ciśnieniu w kilku miejscach nie , Ś Ś h będzie wymagało wykonywania dodat- TI"ansrnlsyJnYcn-kowej instalacji kablowej. Słr. 31. Wyświetlacz bezprzewodowy I-CODE System bezstykowej identyfikacji firmy Philips Semiconductors t Jednym z najpopularniejszych systemów identyfikacji ^^^^^^^ __ bezprzewodowej jest BP^ j^\ I-Code firmy Philips. Kilka W >flL >> najważniejszych informacji na jego temat przedstawiamy w artykule na słr. 51. Pakiet uruchomieniowy ALF-ADuC812-EVB !.* Jeden z promotorów Analog Devices w Polsce opracował i wdrożył do produkcji zestaw ewaluacyjny dla mikrokontrolerów ADuC812. Przedstawiamy go na słr. 47 Elektronika Praktyczna 4/2002 Moduł wejść analogowych serii AS-Line Na słr. 135 przedstawiamy nowy, programowany moduł sterujqco-pomiarowy opracowany przez firmę Automatic Systems. Fluke 196C Scopemeter Jakość i możliwości - na to postawiła firma Fluke, o czym można się przekonać czytajqc artykuł na słr. 64, CIE 9005 - multimetr cyfrowy heavy duły Przyrzqd o dość banalnych jak na dzisiejsze czasy możliwościach, ale wart uwagi ze względu na jakościowo dobre wykonanie. Słr. 56.a IKA Nr4 (112) kwiecień 2002 Domowa stacja meteo ze zdalnym pomiarem temperatury, część 1 ............................................................... 14 Elektromechaniczny efekt audio typu LESLIE.......................21 Cyfrowy tester żarówek........................................................... 27 Wyświetlacz bezprzewodowy.................................................31 Zasilacz laboratoryjny sterowany cyfrowo, część 2............37 Tester aparatów telefonicznych, część 2.............................41 Internet owy interfejs dla mikrokontrolera, część 2..............43 Miniprojekty ^^^^^^^^^^^^^^^^^^^^^^B Minitester pilotów.....................................................................75 "Szufladkowy" detektor sygnałów.........................................75 Radio tranzystorowe................................................................ 77 Automatyka ^^^^^^^^^^^^^^^^^^^^^H Moduł wejść analogowych serii AS-Line.............................135 Sterowniki! tqczciesię!.......................................................... 138 Pakiet uruchomieniowy ALF-ADuC812-EVB..........................47 I-CODE - system bezstykowej identyfikacji firmy Philips Semiconductors................................................... CIE 9005 -multimetr cyfrowy heavy duty............................. UPROG HS - nowy programator firmy RK-System................. Przenośny oscyloskop cyfrowy Fluke 196C Scopemeter Sposób na sieć.......................................................................... Podzespoły Nowe Podzespoły..................................................................... 51 56 60 64 71 Rewolucja? HDL zamiast schematu....................................... b$ Projekty Czytelników ^^^^^^^^^^^^^^^H Timer ciemniowy z licznikiem naświetlań..............................89 Info Świat.......................................................................119 InfoKraj..........................................................................121 | Biblioteka EP................................................................. Kramik+Rynek................................................................95 I Listy.................................................................................101 | Ekspresowy Informator Elektroniczny.....................115J| Wykaz reklamodawcow............................................118 Elektronika Praktyczna 4/2002 7 SPRZĘT Uniwersalny programator firmy RK-System fest wyzwaniem dla producentów podobnych urządzeń. Prezentowany w artykule programator może bowiem śmiało rywalizować z produktami światowych liderów w tej dziedzinie. Jest to spowodowane głównie n o wa tors kim i rozwi ą zania mi zas tos o wanym i w części sprzętowej. Wygląd zewnętrzny oraz interfejs użytkownika, niemal identyczny z interfejsem wcześniejszej wersji UPROG-a, nie zdradzają na pierwszy rzut oka istotnych rośnie pomiędzy tymi programatorami. Jest to jednak całkowicie nowy programator o innej budowie wewnętrznej. Jego ,,sercem" jest bowiem programowalny układ typu FPGA firmy Xilinx, w którym ,,zaszyto" specjalizowany procesor umożliwiający uzyskanie pożądanych parametrów pracy. Szczególnie zwiększyła się szybkość działania programatora oraz uniwersał- ngmjHii -. i. i- .. i" i; ,rh- ,i -;'. -t -: n m i bd i Ś m w ii r< h 'i it f Ś k n m h >r Ś< i* j" L ^ n ^ _ > _ wm m* ^ h^h "=i r=i * u ii&aaptitta ufni&air TPtniffiirmnrłłiFłiiłB at*i n nr. tt ci ft net 11 ttttn ntttt IP1 ItrTlf TtfWWfIWtrWifT fł tf tT *ł ff It Rys. ność sterowania poszczególnymi wyprowadzeniami podstawki. Ponieważ układy FPGA pozwalają na rekonfigurację układu w ich strukturze, jądro procesora sterującego programatorem oraz jego peryferia są dynamicznie modyfikowane w trakcie pracy urządzenia i dopasowywane automatycznie do potrzeb. Można więc stwierdzić, że budowa części sprzętowej jest optymalizowana, a wszystko to odbywa się w sposób całkowicie automatyczny. Przyjęcie takiej koncepcji podczas projektowania programatora pozwoliło uzyskać dużą szybkość jego pracy, np. półmegabajtowa pamięć firmy Macro-nix jest programowana w czasie poniżej 5s, a odczyt tej pamięci, wraz z weryfikacją jej zawartości, trwa mniej niż ls. Prędkość programowania w przypadku UPROG HS nie jest uzależniona od prędkości komputera. Uniwersalność programatora uzyskano przez zastosowanie uniwersalnych ste- równików, tzw. pin-driverów, z wyjść których są sterowane wszystkie wyprowadzenia podstawki. Rozwiązanie to pozwala na dowolne, programowe sterowanie funkcjami, jakie są realizowane na poszczególnych wyprowadzeniach. Tak więc każda nóżka danego układu może być podłączana - w zależności od potrzeb - do napięcia zasilającego, masy, napięcia programującego lub wyjścia zegara. Na dowolną z końcówek można wyprowadzić np. sygnały interfejsu RS232 i wykorzystywać ją jako nadawczą lub odbiorczą. Linie RxD, TxD mogą być przy tym ustawiane na zakres prędkości od 300kbd do Il5kbd. Część sprzętowa zapewnia współpracę z dowolnym roz- ł, *,N, '.* i 1 nu. - B^i_>B rt - taiaPi r Wt r r r ŚŚŚŚLI- r ** f _Plr !ŚŚŚŚŚŚŚ r--------- - Śi p i Ś ^ L^pBJ Rys. 2. Nowy programator firmy RK-System 60 Elektronika Praktyczna 4/2002 SPRZĘT Rys. 3. kładem wyprowadzeń zasilania i danych, a co sa tym idsie pozwala na dodawanie kolejnych układów do listy układów obsługiwanych i nie wymaga żadnych ingerencji w sprsęt. Każdy nowy układ dodawany jest do listy obsługiwanych prses uaktualniane oprogramowanie sterujące programatorem. Jak przystało na programator uniwersalny, UPROG HS obsługuje wszystkie rodzaje układów tj. EPROM, EEPROM, FLASH, GAL, PAL, PALCE, PLD, CPLD oras mikrokontrolery różnych producentów. Pełna ,,elastyczność" poszczególnych wyprowadzeń 48-pinowej podstawki eliminuje stosowanie dodatkowych adapterów dla układów w obudowach DIP. Programator może pracować zarówno ze standardowymi układami o napięciu zasilania 5V, jak również z układami niskonapięciowymi (3,3V, 2,7V, 1,8V). Zaletą UPROG HS jest możliwość programowania układów PLD bezpośrednio w układzie docelowym fjTAG, ŚPI), bez konieczności ich wylutowywania. Sygnały niezbędne do zaprogramowania układu wyprowadzane są w tym przypadku bezpośrednio z podstawki programatora, zgodnie ze wskazówkami pojawiającymi się na monitorze. Oprócz funkcji związanych z programowaniem układów, UPROG HS jest doskonałym testerem układów cyfrowych oraz umożliwia emulację pamięci EPROM. Funkcja uniwersalnego testu układów cyfrowych pozwala na podanie dowolnej kombinacji sygnałów "wejściowych do wybranego wyprowadzenia układu scalonego (GND, VZZ, CLK). Opcja ta potwierdza pełną uniwersalność programatora umożliwiając dowolną konfigurację jego wyprowadzeń. Funkcja emulatora pozwala natomiast na emulację pamięci EPROM o pojemności do 128kP. Na życzenie klienta rozmiar emulowanej pamięci może być rozszerzony do 5l2kP. Podobnie jak pozostałe programatory rodziny UPROG, UPROG HS charakteryzuje się niewielkimi wymiarami. Jego wymiary wynoszą zaledwie 19x12x2,5cm, a waga nie przekracza lkg. Płyta czołowa urządzenia, oprócz podstawki DIP48, zawiera przycisk AUTO RUN, wykorzystywany do sterowania programatorem w przypadku programowania automatycznego oraz dwie diody LED sygnalizujące stan zasilania oraz stan pracy urządzenia. Obsługę programatora zapewnia wchodzący w skład zestawu program sterujący. Jest on wspólny dla wszystkich programatorów rodziny UPROG. Jego cechą charakterystyczną jest przejrzystość i oryginalna szata graficzna. Dostęp do wszystkich funkcji programatora jest możliwy za pomocą ikon i przycisków znajdujących się w głównym oknie programu (rys* 1) oraz komend dostępnych pod prawym przyciskiem myszki. Twórcy programu zaproponowali wiele rozwiązań pozwalających na znaczne ułatwienie pracy. Służą temu m.in. komunikaty wyświetlane na pasku OPERATION STATUS, które informują użytkownika o aktualnie wykonywanej operacji. Dostęp do grup ikon odpowiadających za programowanie, zaprojektowany w postaci zakładek, sprawia, że program jest wyjątkowo czytelny. Programator wyposażony jest w polskojęzyczną instrukcję obsługi, która jest dostępna po zainstalowaniu oprogramowania. Z myślą o użytkownikach często programujących kilka układów różnych typów przewidziano pewne ułatwienie. Polega ono na możliwości wybrania do dziesięciu układów, które są zapamiętywane na liście ,,podręcznej" i wyświetlane w kolumnie DEVICES, znajdującej się po lewej stronie głównego okna programu (rys. 1). Każdy układ ma w tym przypadku przypisany własny bufor, który może być wypełniony dowolnym zbiorem danych. Szybkie przełączanie pomiędzy poszczególnymi układami znajdującymi się w kolumnie układów ,,podręcznych" jest realizowane za pomocą myszy i nie wymaga ciągłego otwierania okna SELECT DEVICE. Aplikacja umożliwia wykonanie wszystkich niezbędnych operacji związanych z programowaniem. Oprogramowanie akceptuje wszystkie popularne formaty: hex, bin, jed, jam, svf, rom, txt. W przypadku zmian kodu dokonywanych bezpośrednio w oknie bufora, projekt można zachować na dysku komputera. Wprowadzanie ewentualnych zmian w kodzie, bezpośrednio w obszarze bufora, wspiera funkcja automatycznego podawania adresu, wskazująca adres danej komórki po wskazaniu jej kursorem. Oprócz klasycznego programowania równoległego, czyli bezpośrednio w podstawce, UPROG HS pozwala na programowanie szeregowe przy wykorzystaniu interfejsu SPI, JTAG, PDM. Oczywiście dotyczy to tylko tych układów, w których możliwy jest taki sposób programowania. W przypadku programowania w układzie docelowym wystarczy tylko połączyć odpowiednie końcówki układu ze wskazanymi na monitorze wyprowadzeniami podstawki. Podpowiedz, jak połączyć układ z podstawką, jest bowiem pokazywana w oknie SETUP SPI (rys. 2) Pardzo ważną funkcją, którą udostępnia UPROG HS, jest sprawdzanie poprawności styku pomiędzy programowanym układem, a podstawką urządzenia. Programator automatycznie testuje kontakty na poszczególnych nóżkach układu scalonego w momencie wykonywania jakiejkolwiek operacji. Prak styku na jednej z końcówek sygnalizowany jest odpowiednim komunikatem, a nie-kontaktujące nóżki wskazywane są w oknie CHECK PIN CONNECTION (rys. 3). Funkcja ta jest szczególnie ważna przy programowaniu układów OTP lub innych o dużej liczbie wyprowadzeń, gdzie brak kontaktu na którejś z nóżek jest "bardzo trudny do stwierdzenia i uniemożliwia właściwe zaprogramowanie układu, a czasem może doprowadzić nawet do jego zniszczenia. Inną funkcją dodatkową, o której należy wspomnieć, jest funkcja autodetek-cji typu układu włożonego w podstawkę. Funkcja działa - co prawda - tylko dla tych układów, które posiadają wewnętrzny identyfikator (pamięci EPROM, Flash), ale w pewnych warunkach może okazać się bardzo pomocna. Podsumowanie Programator UPROG HS jest niewątpliwie udanym urządzeniem. Walory użytkowe, na które składają się takie czynniki jak: pełna uniwersalność urządzenia, szeroka lista układów programowanych, funkcjonalność oprogramowania zapewniającego szereg funkcji dodatkowych, testowanie układów cyfrowych czy emulacja pamięci EPROM sprawiają, że produkt jest naprawdę uniwersalny i atrakcyjny. Jednym z podstawowych atutów tego programatora jest jednak jego szybkość, która ze względu na rosnącą pojemność układów, zaczyna być bardzo istotnym czynnikiem. W przypadku UPROG HS szybkość programowania jest naprawdę imponująca. SJ Dodatkowe informacje Programator prezentowany w artykule udostępniła redakcji firma RK-System, Tel. (22) 724-30-39, www.rk-system.com.pl. 62 Elektronika Praktyczna 4/2002 SPRZĘT Przenośny oscyloskop cyfrowy Aż się wierzyć nie chce, że kiedyś można było cokolwiek zrobić mając na p odsta w owym wyposażeniem warsztatu elektronicznego kultowy już oscyloskop "Mini". No, może profesjonaliści mieli dostęp do sprzętu nieco lepszego, ale i tak gdzież mu było do tego, co oferują współcześni producenci aparatury pomiarowej. Pewien mój znajomy, zajmujący się naprawą telewizorów powiedział mi, gdy przypadkowo się spotkaliśmy po dłuższej przerwie, że zastanawia się nad tym, czy nie zająć się sprzedażą ziemniaków na bazarze. Chętnych do naprawy sprzętu RTV jest ostatnio coraz mniej. Potencjalny klient, kiedy się dowiaduje, że będzie musiał przywieźć do warsztatu, jakby nie było, dość duże pudło i jeszcze za to zapłacić, to woli takie samo pudło, tyle że nowe, przywieźć za niewiele większe pie- niądze z hipermarketu. Na tym rozmowa z klientem się urywa. Nie przekonują go argumenty, że przecież do naprawy potrzebny jest sprzęt, którego nie ma on najprawdopodobniej w swoim domu. Jeden klient stracony, drugi klient stracony i okazuje się, że w następnym miesiącu nie ma z czego zapłacić ZUS-u. Ale czy tak musi być? Czytelnicy, którzy kiedyś surfowali po stronach firmy Fluke (www.fluke.com), odpowiedź już znają. W bogatej ofercie tej firmy można znaleźć m.in. istne cu- deńko, jakim jest przenośny oscyloskop cyfrowy o nazwie "196C Scope-meter Color", który za sprawą firmy TME trafił do redakcyjnych testów. Myślę, że w dużym stopniu byłby on panaceum na kłopoty mojego kolegi. "196 Scopemeter", to jak może sugerować nazwa, połączenie miernika uniwersalnego z 2-kanałowym oscyloskopem. Dodatkowo, przyrząd może pracować jako rejestrator przebiegów wolnozmiennych. Wyniki wszystkich pomiarów prezentowane są na dużym (215x86 mm), koloro- 64 Elektronika Praktyczna 4/2002 SPRZĘT Fluke 196C Scopemeter uiEr -TEST - 1234^ I.........I I t 1 * U AfrUFH. IJJlU* FtLTLRCHCF ą7*7tt< wym ekranie. Zakres regulacji jasności i kontrastu pozwala na pracę w każdych warunkach, nawet w nasłonecznionym pomieszczeniu. O zawrót głowy przyprawia bogactwo kabli połączeniowych i najprzeróżniejszych końcówek, zawartych w standardowym wyposażeniu. Jakby jednak tego było mało, to oferta firmy Fluke, z którą można się zapoznać przeglądając jej strony WWW lub CD-ROM dołączony do miernika, powinna zadowolić nawet najbardziej wybrednych. Oscyloskop wraz z oprzyrządowaniem jest sprzedawany w pięknym neseserku zamykanym na zamek szyfrowy, lecz gdyby użytkownik wolał, na przykład płócienną torbę przekładaną przez ramię, to oczywiście znajdzie ją wśród dostępnych akcesoriów. Fluke, to firma przykładająca dużą wagę do wyglądu swoich wyrobów i trzeba powiedzieć, że jej styliści zdają egzamin na szóstkę. Scopemeter 196C ma bardzo ładnie wykonaną obudowę w charakterystycznych żółto-szarych kolorach. Może pracować w pozycji półstoją-cej, jak i leżącej. Można go też zawiesić na specjalnym troczku. Z boku umieszczono uchwyt ułatwiający przenoszenie przyrządu. Gniazda połączeniowe oscyloskopu i multimetru są wyprowadzone w bocznej ściance górnej części. Wszystkie wejścia są wzajemnie izolowane. Pod ekranem umieszczono nienagannie działającą klawiaturę. Można tu wyróżnić 4 klawisze funkcyjne, których znaczenie zależy od kontekstu. Są wśród nich: klawisze zmiany trybu pracy, ustalania parametrów kanałów pomiarowych podstawy czasu i wyzwalania, wybierania znaczników ekranowych, powiększania obrazu, wy- woływania funkcji "replay", klawisze kursorów oraz klawisze "auto/ manuał" i "hold/run". Za pomocą jednego z dwóch dodatkowych przycisków można dokonać zapisu/odczytu zrzutów ekranowych do/z wewnętrznej pamięci lub wydrukować je na drukarce zaopatrzonej w interfejs szeregowy. Drugim zaś ustawia się wszelkie opcje, z wersją językową komunikatów włącznie. Polskiej niestety nie ma, do czego w zasadzie jesteśmy przyzwyczajeni, a po ostatnich wyczynach naszych "kibiców" sportowych chyba tym bardziej nie prędko ulegnie to zmianie. W bocznej części obudowy, pod podnóżkiem, umieszczono gniazdo izolowanego optycznie interfejsu RS23 2C, co niestety w przypadku korzystania z niego, zmusza do umieszczenia przyrządu w pozycji półstojącej. Co i jak można mierzyć? Wybrane parametry przyrządu przedstawione są w tabeli 1. Przegląd możliwości rozpoczniemy od zastosowania miernika w roli cyfrowego multimetru. Po naciśnięciu przycisku "Met er", wyświetlacz przyjmuje postać jak np. na rys. 1. W dolnej części ekranu rozmieszczone są opisy klawiszy funkcyjnych w tym trybie pracy. Widać, że zakres pomiarowy może być dobierany automatycznie lub ręcznie. Gdy użytkownikowi zależy na wykonywaniu pomiarów względnych, w każdej chwili może bieżącą wartość ustawić jako poziom odniesienia. Na rys. 1 zilustrowano taki właśnie przypadek. W centralnej części ekranu widnieje bardzo czytelny wynik pomiaru w postaci cyfrowej, pod którym jest umieszczony analogowy bargraf, składający się z 50 działek. Ugory ekranu w symboliczny sposób zaznaczono sposób dołączenia sond pomiarowych. W trybie multimetru można mierzyć takie parametry jak: test ciągłości połączeń, test diod, pomiar rezystancji, temperatury, napięć i prądów DC, AC i DC+AC. Do pomiaru prądów jak i temperatury niezbędne są jednak odpowiednie sondy, których nie ma w wyposażeniu standardowym. Jeśli badany parametr zachowuje się niestabilnie, można klawiszem "Hołd" zamrozić wskazanie. Oczywiście należy sobie zdawać sprawę ze znaczenia wyniku w takim przypadku. Użytkownik, który kupi opisywany tu przyrząd, z pewnością nie zrobi tego, by wykorzystywać go tylko w roli multimetru. Najczęściej będzie on pracował w trybie oscyloskopu. I trzeba powiedzieć, że w takim zastosowaniu Scopemeter 196C ma tu olbrzymie możliwości. Jest to więc 2-kanałowy oscyloskop cyfrowy o paśmie lOOMHz, podczas gdy jego bliźniaczy model 199C może pracować do 200MHz. Odpowiednie częstotliwości próbkowania dla tych modeli wynoszą lGS/s i 2,5GS/s. Na uwagę zasługują opcje wyświetlania mierzonych przebiegów oraz tryby wyzwalania. Wraz z oscylogramami, na ekranie można zdefiniować dwa pola odczytowe, podające parametry elektryczne takie jak wszystkie rodzaje mierzonych napięć i prądów (AC, DC, AC+DC, peak), przesunięcie fazowe między przebiegami z obu kanałów, częstotliwość, czasy narastania i opadania zboczy. Jeśli w jednym kanale jest dokonywany pomiar prądu przez dołączony odbiornik (z użyciem odpowiedniej sondy), a w drugim napięcie na nim, to można wyświetlać pobieraną moc czynną, bierną i pozorną, a także współczynnik mocy (cos i|>). O ile opisane wyżej pola odczytowe mogą być wyłączone, to u dołu ekranu zawsze jest widoczna linia, w której podawane są aktualne ustawienia czułości kanałów oraz podstawy czasu. W sposób symboliczny zaznaczone są też informacje o sposobie wyzwalania. Może ono być zrealizowane zboczem narastającym lub opadającym dowolnego przebiegu lub sygnałem zewnętrznym, dołączanym w takim przypadku do gniazd bananowych multimetru. Na uwagę zasługuje możliwość ustawienia momentu wyzwalania "poza ekranem", dzięki czemu można obserwować np. krótki impuls występujący w dużym odstępie czasu zarówno przed, jak i po impulsie wyzwalającym (rys. 2). Po- Jl Rys. 2. Elektronika Praktyczna 4/2002 65 SPRZĘT Ś ffi4 u, " lii T " P 1 1 Ś | 9 1 RS 1 H HM l 1 II stiUlk Ś i I i i N i I P Tab. 1. Wybrane parametry elektryczne oscyloskopu Fluke 196C Scopemeter. Rys. 3. ziom wyzwalania może być dobrany automatycznie lub ręcznie. Zawsze któraś z możliwości zagwarantuje uzyskanie stabilnych przebiegów na ekranie. Warto jeszcze wspomnieć o kilku opcjach wyzwalania. Jedna z nich powinna szczególnie zainteresować mojego kolegę, o którym pisałem na wstępie. Synchronizacja może być mianowicie ustawiona do sygnału video w standardzie PAL, NTSC, PAL Plus lub SECAM. Najczęściej jednak będzie wybierany wariant wyzwalania automatycznego z możliwością wyboru opcji ">15 Hz" lub ">1 Hz". W pierwszym przypadku układ wyzwalania nie analizuje nis-koczęstotliwościowych składowych sygnału, przez co odpowiedź układu jest szybsza. Dla przebiegów poniżej 15Hz powinna być wybierana opcja druga. Nie sposób tu dokładnie omówić wszystkich możliwości. Dodam więc tylko, że dostępne są jeszcze opcje wyzwalania zboczem lub szerokością impulsu. Jako absolwent szkoły o profilu elektronicznym pamiętam, że ulubionym zajęciem nauczycieli na pracowniach elektronicznych było pastwienie się nad uczniami, szczególnie - nie wiedzieć czemu - nad uczennicami, polegające na takim rozkręceniu pokręteł oscyloskopu, że na jego ekranie nie było nic widać. Biedni uczniowie, jeśli chcieli wziąć udział w ćwiczeniach, musieli przywołać przyrząd do porządku. No i trzeba powiedzieć, że nie zawsze się to udawało. W Scopemeter 196C sprawę załatwia jeden przycisk z napisem "Auto". Nawet jeśli nie mamy pojęcia o charakterze dołączonych sygnałów do oscyloskopu, to po kilku krokach potrafi on sobie sam je rozpoznać i na pewno w sposób stabilny zostaną wyświetlone na ekranie. Nie zawsze jednak sposób prezentacji odpowiada potrzebom użytkownika. Po wstępnej, automatycznej kalibracji toru pomiarowego, Pasmo (sprzężenie DC) 100MHz(-3dB) Dolna częstotliwość graniczna (sprzężenie AC) z sondą 10 1 <2Hz(-3dB) Dolna częstotliwość graniczna (sprzężenie AC) bez sondy (1 1) <5Hz(-3dB) Czas narastania 3,5ns Analogowe ograniczeniepasrna 20 MHzi 10 kHz Polaryzacja Normalnalub odwrócona Czułość z sondą 10 1 50mVdo1000V/działkę Czułość bezsondy (1 1) 5rnVdo100V/działkę Impedancia wejściowa (gniazdo BNC) 1M (ą1%)/i5pF(ą2pF) Maks napięcie wejściowe z sondą 10 1 600 V CAT III Maks napięcie wejściowe bez sondy(1 1) 1000 V CAT II Maks napięcie wejściowe bez sondy (1 1) 300 V CAT III Rozdzielczość próbkowania 8 bitów dla każdego kanału Maks prędkość podstawy czasu 5 ns/działkę Częstotliwość próbkowania w zakresie 5 ns do 2 us/działkę 1 GS/s Częstotliwość próbkowania w zakresie 5us To 120s/działkę 20MS/S Multimetr Zakres częstotliwości DCdo10kHz(-3dB) I mpedancj a wejściowa 1M (ą1%)/10pF(ą1 5pF) Maks napięcie wejściowe 1000 V CAT II/G00 V CAT III Rejestrator Tryb "TrendPlot11 Częstotliwość pomiarów > 2 5 pomiarów/s Podstawa czasu 10s/działkędo20rnin/działkę Pojemność rejestracji 13500 punktównakanał Zakres czasówrejestracji 90 mm do 8 dni Tryb "Scope Record" Maks prędkość próbkowania (10 ms/działkę do 1 rnin/działkę) 20 M S/s Podstawa czasu w Trybie normalnym 10 rns/działkędo2 mm/działkę Pojemność rejestracji 27500 punktównakanał Zasilanie Akumulatory NiMH Czas pracy 4 godz Czas ładowania 4 godz Częstotliwość sieci zasilającej 50 lub 60 Hz Inne Wymiary 64x169x254 mm Waga 1,95 kg włączając akumulator interfejs Typ RS-232, izolowany optycznie Współpracaz drukarkami Epson FX,LO, HPDeskjet, Laserjet i drukarki posTscriptowe można już ręcznie zmienić np. wzmocnienie, podstawę czasu lub położenie wykresu. Jeśli zaobserwowana sytuacja ma szczególne znaczenie, można wstrzymać odświeżanie ekranu, a następnie zachować jego zawartość w wewnętrznej pamięci do późniejszego wykorzystania. Scopemeter 196C jak już wspominałem jest przyrządem cyfrowym. Wiąże się z tym nieco inny sposób prezentowania wyników niż jest to w oscyloskopach klasycznych (analogowych). Tu obraz jest najpierw tworzony wirtualnie w pamięci, po czym w określonych odstępach czasu jest na nim wyświetlany, przy czym w pamięci zachowuje się w zamkniętej pętli 100 ekranów. Przy okazji użytkownik uzyskał ciekawą możliwość odtwarzania ostatniej sytuacji pomiarowej. Naciskając klawisz "Replay" uruchamia się jej przeglądanie. Można tego dokonywać poklatkowo lub w postaci animacji. Dostępne są wszystkie zachowane zrzuty ekranowe. Prezentowanie przebiegów z poszczególnych kanałów jest podobne do tych, jakie spotykamy w oscyloskopach klasycznych. Mamy więc opcje: A+B, A-B, AxB, A vs B. Wybierając tę ostatnią, uzyskujemy często spotykane w scenach filmowych krzywe Lissajous, Elektronika Praktyczna 4/2002 SPRZĘT Rys. 4. które elektronikom bardzo się przydają np. przy ocenie zależności częstotliwościowo-fazowych pomiędzy dwoma sygnałami (rys. 3). Za pomocą jednego z parametrów wyświetlania oscylogramów, można za-symulować czas poświaty ekranu. Jest to doskonałe narzędzie, gdy trzeba ocenić np. dynamikę zmian sygnału (rys. 4). W przypadkach, w których oscylogram jest zbyt mało czytelny, stosujemy "Zoom". Pod 100-krotnym powiększeniem nic już się nie ukryje. Nie ukryje się to, co zarejestrował cyfrowy oscyloskop, ale trzeba pamiętać, że nie we wszystkich przypadkach jest on lepszy od odmiany analogowej. Oscyloskop często służy tylko do oceny wizualnej badanych sygnałów. Trzeba jednak pamiętać, że bez niego trudno by było dokonywać różnych, specyficznych pomiarów. Zadanie takie ułatwiają specjalne markery ekranowe. Na rys. 5 widać, jak w prosty sposób można określić np. czas narastania zbocza przebiegu prostokątnego. Scopemeter 196C ma wbudowany specjalny do tego celu tryb pracy markerów, przydatny zwłaszcza podczas pracy automatycznej. Oprogramowanie oscylosko- pu określa wartości średnie dolnego i górnego odcinka przebiegu, ustawia na nich markery, po czym wylicza czas narastania, liczony pomiędzy momentami osiągnięcia 10% i 90% różnicy wskazywanych poziomów. Opisane wyżej tryby pracy nie kończą możliwości przyrządu. Na deser zostawiłem jeszcze trzy odmiany funkcji rejestratora, jakimi dysponuje Scopemeter 196C. Nazywają się one "Scope Trend Plot", "Scope Re-cord" i "Meter Trend Plot". W trybach "trend plot" urządzenie zachowuje się jak tradycyjny rejestrator pisakowy. Kursor umieszczony na prawym brzegu ekranu symuluje położenie pisaka, a niewidzialny mechanizm ciągnie w lewo wirtualny papier. W efekcie wykres jest rysowany od prawej do lewej strony. Oczywiście szybkość rysowania i czułość przyrządu można dostosować do swoich potrzeb. Sygnały pomiarowe mogą być pobierane z oscyloskopowych kanałów A i B oraz z wejścia multimetru. Miernik potrafi zarejestrować wszystkie możliwe rodzaje sygnałów (napięcia, prądy, rezystancje, itd.). Ciekawostką jest, że w przypadku zapełnienia pamięci, automatycznie zostaje wywołana procedura kompresji danych połowy pamięci, zwalniając tym samym nieco miejsca dla następnych próbek. Rejestrator pracujący w trybie "Scope Record" umożliwia obserwowanie zjawisk zachodzących w badanych układach w czasie do 40 godzin. Próbkuje jednak tylko kanały oscyloskopowe. Niemały wpływ na ogólne wrażenie jakie robi Scopemeter 196C ma dostarczane wraz z nim oprogramowanie dla komputerów PC. Jest opracowane perfekcyjnie. Za pomocą Rys. 5. "FlukeView ScopeMeter" - bo tak się nazywa - można zarchiwizować dosłownie wszystkie operacje przeprowadzane przyrządem. Prezentowane w artykule ilustracje były wykonane właśnie za jego pomocą. Tradycyjnie już, oprócz zbierania danych z urządzenia, można również nim sterować. Fluke to firma solidna. Jej produkty cechują się najwyższą jakością, począwszy od głównego przyrządu, poprzez akcesoria na instrukcji kończąc. Trudno znaleźć w nich jakiś słaby punkt. Dla mnie, do pełni szczęścia zabrakło może jedynie jakiegoś, choćby bardzo prostego wbudowanego generatora. A i mój kolega byłby wtedy "wniebowzięty". Ale nawet w takiej postaci w jakiej jest, Scopemeter 196C rozwiązałby wiele jego problemów. Pytanie tylko ilu klientów musiałby obsłużyć, żeby mógł sobie takie cacko sprawić? A ja tymczasem, z żalem muszę się rozstać z przyrządem po przeprowadzonych testach. Jarosław Doliński jaroslaw.dolinski@avt.com.pl Dodatkowe informacje Prezentowany w artykule przyrząd udostępniła redakcji lirrnaTME, (42) 645-70-21, www.trne.pl, 68 Elektronika Praktyczna 4/2002 NOWE PODZESPOŁY Nowości BCComponents BCComponents - jeden z potentatów rynku elementów biernych - w ostatnich dniach ubiegłego roku wprowadził do produkcji miniaturowe, wielowarstwowe warystory w obudowach 0603 przystosowanych do montażu SMD, których parametry - dzięki zastosowaniu nowoczesnej technologii produkcji - dorównują znacznie większym (gabarytowo] elementom w obudowach standardowych. Napięcie włączenia warystorow serii 2322 mieści się w przedziale 2l...65V, a maksymalny prąd w impulsie może mieć wartość do 80A. Tak więc, te niewielkie elementy mogą po-wtarzalnie tłumie impulsy o energii do 0,3J. Po okresie "odrzucenia", czy raczej zmniejszenia popularności kondensatorów z wyprowadzeniami osiowymi, firma BCComponents wprowadziła do produkcji kilka rodzin takich elementów o znacznie lepszych parametrach niż miały pierwowzory. Kondensatory 022/023ASR, są przystosowane do pracy w wysokich temperaturach otoczenia, sięgających 1O5C (wytrzymują do 2000 godzin], przy czym zalecana, maksymalna tempera- COMPONENTS tura otoczenia wynosi 85C (w której kondensatory mogą pracować bez istotnej zmiany wartości parametrów aż 6000 godzin]. Nieco tańszym, i mniejszym, od kondensatorów rodziny 022/023ASR są kondensatory 024/025AMR. Mogą one pracować przez 1500 godzin w temperaturze 1O5C i ok. 4500 godzin w temperaturze 85C. http ;ffwww.bccompon sn ts.com fgofpsiso-nalfdownloaddatashsstfDownload .asp ?-GUID = 2F911 957-0443-4FB3-BA18-8301A9282C37 http ;ffwww.bccompon sn is.coni fgofpsiso-nalfdownloaddatashsstfDownload .asp ?-GU1D = BA479A5A-815D-4D31-3CAF-9BF4FF9C780C http ;ffwww.bccompon sn ts.com fgofpsiso-nalfdownloaddatashsstfDownload .asp ?-GU1D= 38 3 29 ABC -1442-4 43 3-94 A 3-5 A-AA18A3975F Miniaturowe wzmacniacze audio National Serniconductor Coraz większą popularność zdobywają miniaturowe obudowy do układów scalonych, których wymiary są bliskie wymiarom struktury półprzewodnikowej. Firmie National Se-miconductor udało się wdrożyć do produkcji wzmacniacze audio montowane w obudowach z ośmioma wyprowadzeniami, których wymiary podstawowy wynoszą 1,45 x l,45mm, a wysokość zaledwie 0,9mm. Wśród na szczególną uwagę zasługują: LM4820, LM4872, LM4877, LM4891, LM4894 (każdy o mocy lW i wbudowanymi dodatkowymi funkcjami] i LM4865 (750mW z elektronicznym regulatorem głośności]. Pizsdstawicislami National Ssmiconduc-ior w Polscs są firmy; FBV Flsktronik [isl. {71} 34-229-44}, Fuiurs {isl. {22} 813-92-02} i Sposils ftel. {22} 848-52-27). Elektronika Praktyczna 4/2002 71 NOWE PODZESPOŁY Mikrokontrolerowe nowości STMicroelectronics wprowadził do produkcji dwie interesujące rodziny mikrokon-trolerów. Nie napisaliśmy "nowe", ponieważ są "korzenie" obydwu rodzin są dość dobrze znane na rynku: - Mikrokon troi ery FIVE są zmodyfikowaną i rozszerzoną rodziną pochodną ST52. Ich budowę zoptymalizowano pod kątem sterowania, w rdzeniu zastosowano sprzętowe mechanizmy wspierania algorytmów rozmytych [FuzzyLogic). Obecnie są dostępne dwie rodziny mikro kontrolerów FI-VE - ST408 i ST508, obydwie 8-bitowe. - ST7LiteO są uproszczoną i nieco tańszą wersją doskonałych mikrokontrolerów ST72. Zintegrowano w nich l,5kB pamięci Flash, generator taktujący RC, przetwornik A/C, pamięć dla danych EEPROM (o dużej trwałości] i generator sygnału zerującego. Przedstawicielami STMicroelectronics w Polsce są firmy; Eliron (iel. {71} 343-97- 55}, Eurodis {iel. {71} 301 -04-00}, MSC Polska {iel. {32} 330-54-50}, Silica {iel. {22} 834-47-38} i Spoerle {iel. {22} 848-52-27}. Nowe transceivery jednoukładowe Chipcon wprowadził do produkcji nowy scalony transceiver jedno układowy oznaczony symbolem CC1050. Nowy układa charakteryzuje możliwość pracy w bardzo szerokim zakresie częstotliwości [300...l000MHz], programowanej w pod-zakresach z krokiem 250Hz. Programowana jest także moc wyjściowa nadajnika -zakres zmian mieści się w przedziale -2O... + l2dBm, przy zasilaniu w zakresie 2,1...3,6V. Podobnie do pozostałych układów firmy Chipcon, także w CC1050 zastosowano modulację FSK z kształtowaniem widma, a dzięki krótkiemu czasowi stabilizacji PLL można ten układ wykorzystać w cyfrowych torach radiowych ze skokową zmianą częstotliwości. Układ CC1050 umożliwia natomiast transfer danych ze znacznie większą szybkością niż dotychczasowe wersje - wynosi ona aż 76,8kbd. Układy CC1050 są oferowane w obudowach TSSOP24 i mogą pracować w zakresie temperatur -4O... + 85C. Przedstawicielem firmy Chipcon w Polsce http;//www.chipcon.com/pdf/CCl050_Da- jest firma Soyter Components {tel. {22} 833-ia_Sheei_l_O.pdf 0-900}. Chipcon 8 1 Rys. 1. |C3 C4 72 Elektronika Praktyczna 4/2002 NOWE PODZESPOŁY Scalony sterownik tranzystorów IGBT i MOSFET IRF wprowadził do produkcji trzy scalone sterowniki stopni końcowych wykonanych na tranzystorach IGBT lub MOSFET, które zapewniają optymalne warunki ich szybkiego przełączania. Nowe uldady oznaczono symbolami IR21B1/21B3/21B4. Zapewniają [odpowiednio] następujące czasy przełączania: l80/220ns, l80/220ns oraz 680/270ns.
KU ' HN Uh v> V, LOMJ Ul m )
?. Zaletą tych układów jest możliwość bezpośredniego sterowania bramek tranzystorów pracujących z napięciami zasilania do 600VDC. Ich wejścia sterujące są jednocześnie kompatybilne z układami cyfrowymi pracującymi w standardzie napięciowym 3,3 lub 5V. Na rysunku pokazano przykładowy schemat aplikacyjny układu IR21B1. h ttp; ffwww. i rf. c om fproduc t-info fd at a s-heets/data/ir21Sl .pdf f Przedstawicielami IRF w Polsce są firmy: Dacpol {tel. {22} 757-07-13), Future (iel {22} 813-92-02}, SF Spezial Electronic {tel. {0300} 18-00-39} i Spoerle {iel. {71} 848-52-27}. IGR Miniaturowe przetwornice DC/DC o mocy 1W TECHNOLOGIES Firma C&D Technologies (niegdyś New-port Components] nieustannie udoskonala produkowane przez siebie przetwornice, Tab. 1. Zestawieiie podstawowych parametrów przetwornic z serii NKE. Typ przetwornicy Nomin. napięcie wej. IV] Napięcie wyj. [V] Prąd wyj. ImA] Sprawność [%] NKE0303S 3,3 3,3 303 75 NKE0305S 3,3 5 200 76 NKEG503S 5 3,3 303 75 NKE0505SE 5 5 200 78 NKE0505E 5 5 200 69 NKE0509S 5 9 111 75 NKE0512S 5 12 83 77 NKE0515S 5 15 66 78 NKE1205S 12 5 200 71 NKE1209S 12 9 111 78 NKE1212S 12 12 83 79 NKE1215S 12 15 66 81 zwiększając ich sprawność i wartość konwertowanej mocy z jednostki objętości, poprawiając odporność na przebicia pomiędzy wyjściem i wejściem, jednocześnie zmniejszając wymiary oraz masę. Do najnowszych przetwornic o wydatnie ograniczonej masie należą przetwornice serii NKE, charakteryzujące się mocą wyjściową lW, sprawnością dochodzącą do 81%, zakresem dopuszczalnych temperatur pracy -4O...+85C. Napięcie przebicia izolacji pomiędzy wejściem i wyjściem wynosi aż 3kV, co jest nie lada osiągnięciem, gdyż te przetwornice są oferowane w miniaturowych obudowach SIL4. Zestawienie podstawowych parametrów przetwornic z serii NKE zawarto w tab. 1. h ttp; ffwww. cdncl.com/cd/prod u cis! d c_c on yeriersfp dffn ke.pdf Przedstawicielami firmy C&D Technologies w Polsce są firmy; JM Elektronik {tel. {32} 339-89-00} oraz Memec-Insighi {iel. {32} 233-03-80}. Elektronika Praktyczna 4/2002 73 NOWE PODZESPOŁY Scalony sterownik matryc LED 5x7 Jednym z najnowszych układów wdrożonych do produkcji przez firmę Maxim jest MAX6953 - zintegrowany sterownik wyświetlaczy matrycowych LED 5x7. Konstrukcja tego uldadu jest niezwykle przemyślana -zintegrowano w nim: drivery umożliwiające sterowanie 4 jednokolorowych lub 2 dwuko-lorowych wyświetlaczy LED, 16-stopniowy regulator jasności ich świecenia, generator znaków zawierający 104 wzory, pamięć umożliwiającą definiowanie 24 własnych znaków - całość programowana przez interfejs I2C. Możliwe jest włączanie szybkiego lub wolnego migania wybranych segmentów wyświetlaczy. Napięcie zasilania MAX6953 powinno się mieście w przedziale 2,7....5,5V, a maksymalny pobór prądu przez układ (bez wyświetlaczy] wynosi 15mA. Układy MAX6953 są dostępne w dwóch wersjach obudów: DIP40 oraz SSOP36, obydwie przystosowane do pracy w zakresie temperatur -4O... + 85C. I DALLAS SEMICONDUCTOR http;//pdfsery.maxim-ic .com/arpdf/ MAX6953.pdf 3.3V 100nF 3.3V 4.7kQ<4,7kn< 47kfl< O-O- o- 24pF Cset Yt GND GND GND 5CL SDA BLIMC AD1 ADO OSC ISET Rys. 3. 00 01 02 03 04 05 06 07 OB 09 010 011 012 013 014 015 016 017 01S 019 020 021 022 023 Den DIGUZ Łatwe przetwarzanie DC/DC i Micrel wdrożył do produkcji scalone przetwornice DC/DC obniżające napięcie, o maksymalnym prądzie wyjściowym o natężeniu do 2A. Nowe układy, oferowane tylko w obudowach SOP8, są przystosowane do pracy w zakresie temperatur -4O...+85C. Napięcie wyjściowe przetwornicy jest regulowane za pomocą zewnętrznego dzielnika rezystorowe-go. Układy MIC4684 integrują w obudowie SOP8 kompletny sterownik oraz wyjściowy bipolarny stopień mocy. Częstotliwość konwersji wynosi 200kHz i jest stała, niezależna od obciążenia. Minimalne napięcie wyjściowe wynosi 1,235V, a podawana w katalogu maksymalna moc tracona (300mW] jest dopuszczalna przy temperaturze otoczenia 60C. Układy MIC4684 wyposażono we wbudowany bezpiecznik termiczny i przeciw zwarci owy, http; //www .m i crel. com f_P DF/mi c4834.pdf Przedstawicielem Micrsla w Polsce jest firma Fuiure (iel. {22} 613-92-02}. 74 Elektronika Praktyczna 4/2002 MINIPROJEKTY Wspólną cechą układów opisywanych w dziale "Miniprojekty" jest łatwość Ich praktyczne] 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 scaionych, 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, Minitester pilotów Jest to niewątpliwie jeden z najprostszych i najmniejszych przyrządów prezen to wa nych w dziale mini projektów. Przedstawiony układ umożliwia sprawdzenie żywotności pilota telewizyjnego lub jakiegokolwiek innego przyrządu, w którym zastosowano podczerwień. Na rys. 1 przedstawiono schemat elektryczny minites-tera. Jak zapewne zauważyliście, nie jest to układ skomplikowany i każdy początkujący elektronik poradzi sobie z jego wykonaniem. Bez trudu pojmie także ideę jego działania. Tester wykonano w oparciu o układ z jednym tranzystorem, jedną diodą odbiorczą podczerwieni oraz jedną diodą świecącą LED. Aby być bardziej dokładnym w wyliczaniu elementów, to należy jeszcze dorzucić dwa rezystory Rl i R2 oraz zasilanie w postaci baterii litowej o napięciu 3V typu CR2025. Działanie układu minites-tera jest bajecznie proste: promieniowanie podczerwone, Rys. 1. wysyłane z np. pilota TV, padając na diodę odbiorczą Dl (włączoną w kierunku zaporowym pomiędzy bazę tranzystora Tl), a plus zasilania układu powoduje wprowadzenie go w stan przewodzenia. W wyniku tego zaświeci się dioda LED D2. Przy próbach z pilotem telewizyjnym działanie diody D2 objawia się jej migotaniem. Montaż układu jest bardzo prosty i wymaga niewielkiego nakładu sił. Wzór płytki drukowanej wraz z elementami pokazano na rys. 2. Podczas montażu należy jedynie zwrócić uwagę na to, że wszystkie elementy są montowane powierzchniowo, a na drugiej stronie płytki umieszczamy baterię litową. Zaprezentowane rozwiązania układów do sprawdzania pilotów są chyba najłatwiejszymi, jakie można wykonać Rys. 2. m} /. Ś Ś Ś \ Oli
w amatorskich warunkach i jednocześnie bardzo prostymi. KJ WYKAZ ELEMENTÓW Rezystory Rl: 22kO R2: 820D Półprzewodniki Dl: dowolna diodo odbiorczo podczerwieni D2: dowolna diodo LED Tl: BC548 Płytka drukowana jest dostępna wAVT- oznaczenie AYF-1337. Wzory płytek drukowanych w formacie PDF są dostępne w Iniernecie pod adresem; http:llwww.ep.conj.pl/7pdfl kwieci eitO2.htm. Elektronika Praktyczna 4/2002 75 MINIPROJEKTY "Szufladkowy" detektor sygnałów Opisany w artykule przyrząd jest kolejnym z miniaturowego zestawu laboratoryjnego, którego konstrukcja mechaniczna umożliwia montaż modułów fu nkcjo n alnych w szufladkach typowej szafki magazynowej. Jest to propozycja dla elektroników nie mających zbyt wiele miejsca w swoim warsztacie. Detektor sygnałów jest przyrządem służącym do wyszukiwania uszkodzeń w obwodach i śledzenia przebiegu sygnałów m.cz. iw.cz. Aby dokonać lokalizacji uszkodzenia należy w badanym torze określić miejsce, w którym sygnał występował ostatnio. Należy również stwierdzić czy poszukiwany sygnał jest sygnałem m.cz, czy w.cz i odpowiednio wybrać zakres pracy detektora. Rys. 1. Schemat blokowy układu pokazano na rys. 1. Natomiast jego schemat elektryczny przedstawiono na rys. 2. Zespół przełączający składa się z gniazda wejściowego oraz przełącznika trybu Elektronika Praktyczna 4/2002 75 MINIPROJEKTY Ml Mostek prostowniczy ,| 1000[J^ lOOOłJ^p p470|J ~~|~10On C13 in.cz JW.cz. 220n Głośnik Rys. 2. pracy w.cz/m.cz. Bezpośrednio do zespołu przełączającego może być dołączony tor m.cz lub tor w.cz. Sygnały z obu torów, poprzez zespół regulacyjny składający się z potencjometru (służącego do regulacji czułości), podawane są na wejście wzmacniacza m.cz. Zasilacz dostarcza niezbędnych napięć zapewniających poprawna pracę układu. Jako wzmacniacz końcowy m.cz zastosowano układ scalony TDA2OO3 w jego standardowej aplikacji. Schemat montażowy detektora pokazano na rys. 3. Zmontowano go na trzech płytkach, spełniających jednocześnie rolę fragmentu obudowy. Po wlu-towaniu wszystkich elementów i poprawnym podłączeniu gniazd, przełączników i potencjometrów układ powinien działać od razu i bez żadnej regulacji. Wszelkie połączenia gniazd, potencjometrów, i przełączników powinniśmy wykonać przewodem ekranowanym. Jeżeli wszystkie elementy są już wlutowane i wykonaliśmy wszystkie połączenia, możemy przystąpić do złożenia całości szufladki. Płytę czołową z gniazdami mocujemy do płytki zabezpieczającej druk dwoma kątownikami przykręcanymi śruba- s. 3. WYKAZ ELEMENTÓW Rezystory Rl: 47Q R2: 200Q R3, R4: l,5Q R5: lOOka R6: 300kQ POTl: 1MQ Kondesatory Cl, C2, Có: l000^F/l6V C3, C5, C9: lOOnF C4: 33nF C7: 10jiF/16V C8, CIO: 47O^F/lóV Cli: 47OpF C12: 22OpF C13: 220nF Półprzewodniki Dl: dowolna dioda detekcyjna (germanowa) Ml: mostek prostowniczy l,5A USl: TDA2003 US2: 7812 TRI: TS2/46 Różne Bl: lóOmA Gniazdo Jack mono I szt. Głośnik 0,5W Płytka drukowana jest dostępna wAVT- oznaczenie AVT-1336. Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: h ttp: 11 www. ep.com.pl/?p df/ kwiecienO2.htm. mi. Nad płytką zabezpieczającą montujemy płytkę z zasadniczym układem za pomocą śrub i tulei dystansowych. Detektor może być zamontowany w miejsce szufladki magazynowej o wymiarach 135mm x 57mm x 64mm. Przypominamy o zachowaniu szczególnej ostrożności przy podłączaniu napięcia sieci 22OV/AC. Krzysztof Górski, AVT krzysztof.gorski@ep.com.pl Elektronika Praktyczna 4/2002 MINIPROJEKTY Radio tranzystorowe Dawno nie publikowaliśmy w EP opisu konstrukcji czysto " tranzystorowej". Prezentowany w artykule odbiornik radiowy jest wzorcowym przykładem klasycznej konstrukcji tego typu, mamy więc nadzieję, że choćby częściowo zaspokoi fanów prostych rozwiązań. Na rys. 1 przedstawiono schemat elektryczny odbiornika ze stopniem wejściowym w formie audionu w układzie ze wspólnym kolektorem. Nie tłumi on zupełnie obwodu strojonego, w pełni zachowując jego charakterystykę, dzięki czemu uzyskuje się dobrą jego czułość i selektywność. Ze względu na małe napięcie zasilania wzmacniacz audio wymaga trzech stopni tranzystorowych. Głośność reguluje się potencjometrem. Radio dobrze działa z anteną ferrytową (około lcm średnicy i lOcm długości) o cewce z około 50 zwojów emaliowanego drutu miedzianego DNE 0,1...0,17mm. Z dwumetrową zewnętrzną anteną z drutu można odebrać jeszcze więcej stacji. Radio jest oszczędne nie tylko z punktu widzenia liczby elementów, ale także z powodu małego poboru prądu, tylko lOmA. Alkaliczne ogni- wo AA bez trudu zapewnia do 200 godzin słuchania. B. Kainka, EE WYKAZ ELEMENTÓW Rezystory Rl: 1MQ R2: 10kQ R3: 3,3kQ R4: 2,2kQ R5, R7: 150kQ R6: 4,7kQ R8: 22kQ Kondensatory Cl: 250pF (regulowany) C2, C4, C5, C8: ljif/10V C3: 6,8nF Có, C9: 22nF C7: 10^F/10V Półprzewodniki T1...T4: BC337 Różne LI: cewka wykonana zgodnie z opisem w tekście Sl: dowolny włgcznik LSI: głośnik o impedancji cewki 8...1óQ Artykuł publikujemy na podstawie umowy z wydawcą miesięcznika "Elektor Electronics". Editorial items appearing on page 77 are the copyright prop-erty of (C) Segment B.V., the Netherlands, 1998 which re-serves all rights. Rys. 1. Elektronika Praktyczna 4/2002 77