w w w. e p . c o m . p l
ELEKTRONIKA PRAKTYCZNA •
Międzynarodowy magazyn elektroników konstruktorów
Międzynarodowy magazyn elektroników konstruktorów
11/2004
•
listopad •
9 zł 50 gr
(w tym 7% VAT)
WYŚWIETLACZ MATRYCOWY Z I2C MINIPROGRAMATOR AT89Cx051 NADAJNIK UKF FM Z SYNTEZĄ INTERFEJS ETHERNETOWY REGULATOR MOCY PWM STEROWNIK VGA
SPRZĘT:
ATAK SPARTANA
11/2004 • listopad
R
O
B
O
T
T
R
O
P
I
: ĘT
S
Z R P
B Ó S O P
S
I C
NA
L E
M R
y
A
PRICE: 4 EUR
Wizjonerzy
Okładka Okładkowy projekt bieżącego numeru, to robot o nazwie „Tropiciel” jeżdżący po wyznaczonej trasie. Zadziwiające jest, że autor stosując tak proste elementy uzyskał bardzo ciekawy efekt końcowy. Zapraszamy do inspirującej lektury.
Szczegóły na str. 120
Temat, który poruszę w zasadzie może nie obchodzić większości Czytelników, bowiem w Polsce przemysł półprzewodnikowy nie istnieje. Chciałbym jednak pokazać, jak łatwo i bezkrytycznie ludzie działający w dziedzinach stricte technicznych ulegają pogłoskom i informacjom nie poddawanym choćby pobieżnej weryfikacji. Wystarczy takiej informacji nadać odpowiednią oprawę medialną lub przypisać logo znanej firmy badawczo-konsultingowej, aby swobodnie wypowiedziane zdanie stało się obowiązującą (kwestia mody?) wizją przyszłości. O co mi chodzi? Otóż w połowie września tego roku świat elektroniki obiegła hiobowa wieść, że w ciągu najbliższych 10 lat z rynku zniknie 40% obecnie działających firm produkujących układy scalone. Najpopularniejszą wersję tej wiadomości rozpropagował portal embedded.com, którego współpracownik - Mark La Pedus - przygotował krótką notatkę powstałą na bazie wypowiedzi jednego Thomas Watson (siedzi) przy z przedstawicieli renomowanej firmy komputerze IBM701 konsultingowej Gartner Inc. podczas imprezy Gartner Dataquest Semiconductor Industry Summit. Wbrew powszechnie powtarzanym poglądom, nie był to raport analityczny, lecz werbalny forecast, co w języku angielskim oznacza swobodne „gdybanie”, równie wiarygodne jak prognozy pogody (forecast w języku angielskim to także prognoza pogody). Okazało się więc, że kasandryczna wizja zawarta w kilkuminutowym referacie (zgodnie z nią, siłą rzeczy, na rynku elektroniki powstaną monopole na miarę Microsoftu!), nie ma oparcia w faktach, i na pewno nie została poparta jakimikolwiek kompleksowymi badaniami. Raport na temat rozwoju rynku półprzewodnikowego firma Gartner Inc. dopiero szykuje i po jego publikacji (wraz z opisem metodyki prowadzenia badań, jak to zazwyczaj robią renomowane firmy badawcze) będzie można sensownie ustosunkować się do przedstawionych w nim wizji. Badaczom rynku elektronicznego i ekspertom zajmującym się tym segmentem gospodarki polecam przed podpisaniem raportu z badań odwiedzenie na przykład targów Productronica, które wręcz kipią od rozwiązań udostępniających technologie półprzewodnikowe mniejszym firmom. Prawdą jest, że nie każdy będzie mógł być producentem gigabitowych pamięci technologii 90 nm, ale Piec do utleniania płytek są już firmy potrafiące wykonać sobie krzemowych niemalże „od ręki” po kilkadziesiąt układów w „grubszych” technologiach. Kto wie, może historia potoczy się tak, że za 20 lat większość Czytelników EP będzie mogła sobie sama „wypiec” wybraną strukturę w domu? Czy każdy taki producent będzie osobno liczony w raporcie? Ilu ich będzie? Liczba producentów wcale nie musi się więc zmniejszyć, co oczywiście nie przeczy możliwości i - często - ekonomicznej konieczności powstawania rynkowych fuzji. Pamiętajmy, że zaledwie 60 lat temu ówczesny prezes firmy IBM Thomas Watson powiedział, że: „Zapotrzebowanie na komputery na świecie szacuję na około pięć sztuk”. Wizjoner? Nie, wtedy miał po prostu rację!
Redaktor Naczelny Miesięcznik Elektronika Praktyczna (12 numerów w roku) jest wydawany przez “AVT-Korporacja sp. z o. o.” we współpracy z wieloma redakcjami zagranicznymi. Wydawca: AVT Korporacja Sp. z o.o., 01-939 Warszawa, ul. Burleska 9, tel. (22) 568-99-99, fax: (22) 568-99-00 Dyrektor Wydawnictwa: Wiesław Marciniak
Adres redakcji: 01-939 Warszawa, ul. Burleska 9, tel.: (22) 568-99-41, fax: (22) 568-99-44 e-mail:
[email protected] http://www.ep.com.pl Redaktor Naczelny: Piotr Zbysiński Zastępcy Redaktora Naczelnego: Jarosław Doliński, Mieczysław Kręciejewski Sekretarz Redakcji: Małgorzata Sergiej, tel.: (22) 568-99-41, fax: (22) 568-99-44 Główny Specjalista ds marketingu i reklamy: Ewa Kopeć tel. (22) 568-99-49, 0-501-497-404, fax: (22) 568-99-44, e-mail:
[email protected] Prenumerata: tel. (22) 568-99-22, fax: (22) 568-99-00,
[email protected] Sklep: tel. (22) 568-99-50
Elektronika Praktyczna 11/2004
Copyright AVT-Korporacja Sp. z o.o., Warszawa, ul. Burleska 9. Projekty publikowane w Elektronice Praktycznej mogą być wykorzystywane wyłącznie do własnych potrzeb. Korzystanie z tych projektów do innych celów, zwłaszcza do działalności zarobkowej, wymaga zgody redakcji Elektroniki Praktycznej. Przedruk oraz umieszczanie na stronach internetowych całości lub fragmentów publikacji zamieszczanych w Elektronice Praktycznej jest dozwolone wyłącznie po uzyskaniu zgody redakcji. Redakcja nie odpowiada za treść reklam i ogłoszeń zamieszczanych w Elektronice Praktycznej.
Wydawnictwo
AVT Korporacja Sp. z o.o.
należy do Izby Wydawców Prasy
Stali Współpracownicy: Jacek Bogusz, Marek Dzwonnik, Andrzej Gawryluk, Krzysztof Górski, Tomasz Gumny, Tomasz Jabłoński, Krzysztof Pławsiuk, Sławomir Skrzyński, Jerzy Szczesiul, Ryszard Szymaniak, Marcin Wiązania Uwaga! Z osobami, których nazwiska zaznaczono pochyłą czcionką można się kontaktować via e-mail, pod adresami:
[email protected]
5
Sposób na AMR-y Na str. 69 przedstawiamy tanie zestawy startowe dla procesorów LPC2100 firmy Philips.
s Świerszcz 2003 s
s Sterownik VGA Miniaturowe przetwornice DC/DC W tym artykule (str. 57) omawiamy nowe przetwornice DC/DC firmy Traco.
Opisany na str. 17 prosty układ sterownika VGA pozwala wyświetlać na standardowych monitorach tekst ułożony w 15 wierszy i 16 kolumn.
s
Jest to projekt jednego z naszych Czytelników, który postanowił samodzielnie wykonać bezprzewodowe słuchawki z zastosowaniem jako medium transmisyjnego fal radiowych. Możliwości tego urządzenia są jednak znacznie większe! Str.23.
Mikroprogramator mikrokontrolerów AT89Cx051 Artykuł zamieszczony na str. 29 powstał w odpowiedzi na „zapotrzebowanie społeczne” zgłaszane przez naszych Czytelników.
s
Nowa ERA
s
W artykule na str. 48 omawiamy nowe serie transformatorów produkowanych przez firmę ERA.
Miniaturowe moduły interfejsów ethernetowych firmy Digi przedstawiamy w artykule na str. 67.
W drugiej części artykułu, autor kończy opis podstawowych zagadnień związanych z realizacją wbudowanych kontrolerów ethernetowych. Str. 39.
STMicroelectronics i DALI s
Na str. 51 opisujemy interfejs DALI, przewidziany do sterowania oświetleniem. W artykule zaprezentowano również rozwiązania sprzętowe do obsługi tego interfejsu.
Komputery panelowe W artykule na str. 125 prezentujemy komputery panelowe stanowiące współcześnie najpopularniejszy interfejs między maszyną i człowiekiem.
s
Digi Ethernet
Embedded Ethernet s
s
Atak SPARTAN-a
s
Na str. 43 przedstawiamy nowy zestaw startowy firmy Xilinx, umożliwiający rozpoczęcie pracy z układami serii Spartan-3. I to za niewielką cenę.
6
Elektronika Praktyczna 11/2004
Nr 11 (141) Listopad 2004
Projekty Robot „Tropiciel” .....................................................................................10 Sterownik VGA ........................................................................................17 Nadajnik UKF FM „Świerszcz 2003”........................................................23 Miniprogramator mikrokontrolerów AT89Cx051 ..................................28 Wyświetlacz alfanumeryczny LED sterowany I2C ..............................35 Embedded Ethernet, część 2 ...............................................................39
Miniprojekty Nastawnik mocy PWM ..........................................................................75
Podzespoły STMicroelectronics i DALI .......................................................................51 Miniaturowe przetwornice DC/DC ......................................................57 Więcej niż procesor – Rabbit 3000, część 2 ........................................59 Ochrona przeciwprzepięciowa elementów sterujących .................64 Digi Connect Me, część 1 .....................................................................67 Sposób na ARM-y ...................................................................................69 Koniec ery 5V, część 2 ...........................................................................87
Sprzęt Atak Spartana ........................................................................................43 Nowa ERA ..............................................................................................48 Komputery przemysłowe .....................................................................125
Kurs W głośnikowym żywiole, część 13. Obudowy bas-refleks, część 5 ....... 71 Sterowanie drukarkami za pomocą mikrokontrolerów .....................81 Układy programowalne, część 9 .........................................................91
Bascomowe porady Bascom i 1-Wire ......................................................................................83
Automatyka Sieci przemysłowe w praktyce, część 7. Modbus - podstawy .......129
Projekty Czytelników Cyfrowe joysticki do PC.........................................................................95
Kramik+Rynek ............................................................................. 99 Listy ............................................................................................. 105 Ekspresowy Informator Elektroniczny ...................................... 111 Wykaz reklamodawców........................................................... 114 Info Kraj, Info Świat .................................................................... 115 Biblioteka EP .............................................................................. 123 Elektronika Praktyczna 11/2004
7
w a t s e z y w o n j ! 1 a r t g i y k C W I P – HP
C O R C I M y m r fi
Microchip wspólnie z Elektroniką Praktyczną organizuje konkurs, w którym można wygrać zestaw firmy MICROCHIP o nazwie PICkit 1 Flash Starter Kit. Jest to łatwy w użyciu zestaw składający się programatora i systemu uruchomieniowego dla mikrokontrolerów z pamięcią Flash, w obudowach z 8 i 14 wyprowadzeniami. Zestaw zapewnia możliwość opracowywania zaawansowanych konstrukcji bazujących na mikrokontrolerach PIC12F629, PIC12F675, PIC16F630 i PIC16F676. W skład zestawu wchodzi płytka drukowana o wymiarach ok. 7,5 x 11,5 cm z interfejsem USB wraz z oprogramowaniem na komputer klasy PC. Na płytce drukowanej znajduje się 8 diod LED, potencjometr, przełącznik i 8 nóżkowy mikrokontroler PIC12F675. Poza tym jest przewidziane miejsce na zamontowanie układów dodatkowych opracowanych przez
użytkownika, co przyśpiesza badanie prototypu. Programowanie mikrokontrolerów PIC z pamięcią Flash odbywa się za pomocą oprogramowania z graficznym interfejsem użytkownika. W skład zestawu wchodzi również płyta CDROM, zawierająca przewodnik użytkownika wraz z przykładowymi kodami, zintegrowane środowisko uruchomieniowe MPLAB, kompilator języka C HI-TECH PICC Lite, zbiór porad (tips&tricks) dotyczących mikrokontrolerów 8 nóżkowych i ich oprogramowania, a także kabel USB. Środowisko MPLAB zawiera makroasembler MPASM, symulator programowy MPLAB SIM, symboliczny debuger, edytor kodu źródłowego i manager projektu. Aby wygrać ten zestaw wejdź na stronę: www.microchip-comp.com/ep-pickit1 i podaj swoje dane.
P R O J E K T Y
Robot „Tropiciel” Przedstawiamy niestandardowy (przynajmniej jak na razie) dla Elektroniki Praktycznej projekt opracowany przez Czytelnika pasjonującego się robotyką. Jest to robot jeżdżący po wytyczonej trasie. O dziwo, nie jest to konstrukcja bardzo trudna do wykonania. W dawnych czasach tego typu projekty nosiły miano „zabawek politechnicznych”. Wydaje się, że jest to właściwa nazwa dla „Tropiciela”. Jego podstawowym zadaniem jest bowiem dostarczenie konstruktorowi przyjemności budowania oraz poszerzania swojej wiedzy i doświadczenia. Rekomendacje: do wykonania projektu zachęcamy wszystkich zainteresowanych niestandardowym wykorzystaniem „złomu” komputerowego i otwartych na zdobywanie nowych doświadczeń. Sam robot nie wydaje się być przydatny do niczego konkretnego, ale inspirując może doprowadzić do ciekawych pomysłów praktycznych.
Tropiciel w działaniu Na płycie CD-EP11/2004B publikujemy krótkie filmy ilustrujące działanie Tropiciela w praktyce.
10
Truizmem byłoby stwierdzenie, że komputery opanowały każdą dziedzinę naszego życia. Te cyfrowe „gigamózgi” wykonując miliardy operacji na sekundę pomagają nam w pracy, szkole, domu, dostarczają rozrywkę... Te supertwory nowoczesnej techniki mają niestety jedną wadę – czasami się psują. Uszkodzeniu ulegają najczęściej podzespoły zawierające elementy mechaniczne takie, jak: dyski twarde, CD-ROM-y, stacje dyskietek – ale nie tylko. I co wtedy robimy? Drżącą ręką wykręcamy uszkodzony podzespół i jak przyszło na rasowego komputerowca z kroplami potu na czole (przecież nasza ukochana maszyna stoi wyłączona i czeka) biegniemy do sklepu po nową, jeszcze szybszą... Niepotrzebna część najczęściej ląduje w koszu (o zgrozo!), a co przezorniejsi odkładają ją do szuflady. Dla mnie jako miłośnika robotyki, złom komputerowy jest niewyczerpaną kopalnią elementów elektronicznych, które prędzej czy później znajdują zastosowanie w którymś z moich projektów. Przy okazji jest to niezły sposób na złagodzenie stresu wywołanego awarią komputera, a dokładniej w tym przypadku CD-ROM-u. Taka jest właśnie geneza powstania jednego z moich robotów
- Tropiciela (analogia do psa biegnącego po śladzie zapachowym). Do jego skonstruowania wykorzystałem dwa identyczne uszkodzone napędy CD-ROM, które posłużyły do budowy układu jezdnego i napędowego, kilka centymetrów kwadratowych laminatu tworzącego konstrukcję nośną oraz garstkę elementów elektronicznych, w tym mikrokontroler PIC16F84 będący „mózgiem” mojego robota. Słowem wszystko to, co nawet niezbyt zaawansowany adept elektroniki jest w stanie znaleźć w swoim warsztacie. A więc do dzieła!
Jak działa Tropiciel?
Kluczowym zagadnieniem robotyki jest sprzężenie zwrotne. Tak naprawdę, bez niego nie zadziałałoby najzwyklejsze żelazko, nie mówiąc już o bardzo skomplikowanych w swej budowie i działaniu robotach. W przypadku Tropiciela mamy do czynienia z optycznym sprzężeniem zwrotnym. Jego „nos” składa się z zespołu trzech par fotoelementów: diod nadawczych i fototranzystorów. Zadaniem diod jest oświetlenie badanej drogi. Promienie padające na jasną powierzchnię ulegają odbiciu i zostają odebrane przez fototranzystory, w przypadku czarnej powierzchni promienie zostają „pochłonięte”, więc fototranzystory nie zostają oświetlone
Elektronika Praktyczna 11/2004
Robot „Tropiciel” taka jest sztywna i jak na nasze potrzeby odpowiednio wytrzymała mechanicznie.
Układ jezdny i napędowy
Rys.1 Rysunek obrazujący sposób doboru rozstawu czujników do szerokości trasy
(rys. 1). Stan fototranzystorów obrazują diody LED umieszczone w górnej części obudowy (fot. 2). Drogę robota wykonałem z białej kartki, na której czarną taśmą izolacyjną została wyklejona trasa, po której ma się on poruszać. Przy odpowiedniej budowie układu optycznego trasę możemy narysować np. czarnym markerem. Najlepiej gdyby rozstaw czujników był przystosowany do szerokości trasy (bądź na odwrót) - wtedy unikniemy oscylacji pojazdu podczas jazdy.
Szkielet
Konstrukcja nośna została wykonana z trzech prostokątnych kawałków laminatu jednostronnego. Zostały one połączone tak, że razem tworzą koszyczek na bateryjkę 9 V (rys. 3). Wszystkie połączenia wykonałem jako lutowane. Rozwiązanie takie ma wiele zalet: jest szybkie, łatwo skorygować pomyłki lub wprowadzić poprawki, nadmiar cyny można usunąć pilniczkiem. Jedynym problemem może być odchodzenie warstwy cyny od powierzchni płytki. Łatwo to jednak wykluczyć stosując laminat dobrej jakości, oraz unikając jego przegrzewania podczas lutowania. Konstrukcja
Do jego budowy posłużyły mikrosilniczki pozycjonujące głowicę w CD-ROM-ie, razem ze znajdującą się tam przekładnią, którą wykorzystałem do redukcji prędkości obrotowej. Drugi stopień przekładni napędzającej koła stanowi przekładnia pasowa z układu wysuwu tacki. Dobór przekładni jest bardzo ważny. Od jakości jej wykonania zależą właściwości jezdne naszego pojazdu. Silniki tej wielkości mają zwykle niewielkie sprawności 0,1...0,4, do tego dochodzi sprawność przekładni zwykle 0,7...0,9. Zatem w najlepszym przypadku uzyskamy sprawność 0,4 * 0,9 = 0,36, co jest raczej marnym wynikiem, a w praktyce oznacza, że aby na wyjściu uzyskać 1 W mocy musimy do układu dostarczyć około 3 W. Tropiciel jest raczej jeżdżącą zabawką, ale jeżeli kto z Was zdecydowałby się na budowę jego większej wersji, powinien poważnie ten problem przeanalizować. Pamiętajmy, że sprawność nie jest stała w funkcji prędkości i obciążenia, największe wartości osiąga dla prędkości znamionowej. Należy więc w taki sposób dobrać przełożenie przekładni, aby maksymalna prędkość pojazdu odpowiadała znamionowej prędkości obrotowej silniczka. Zwykle prędkość tę wyznaczamy doświadczalnie zasilając silniczek napięciem znamionowym (jego wartość można odczytać z obudowy silnika). Silniczki zasilane są poprzez klasyczny układ mostkowy typu „H”, a ich prędkość regulowana jest poprzez PWM. Jako koła wykorzystałem kółka napędzające płytę CD. W celu zwiększenia ich przyczepności zostały oklejone gumą.
Elektronika
Fot. 2. Diody LED umieszczone w górnej części obudowy sygnalizują stany czujników toru
Elektronika Praktyczna 11/2004
Jak zwykle w tego typu konstrukcjach wykonanie układu elektronicznego (schemat pokazano na rys. 4) jest znacznie prostsze i zajmuje znacznie mniej czasu niż wykonanie mechaniki. Jest to najprostsza struktura logiczna typu: jeżeli „coś” zrób „coś”, jeżeli „coś innego” – nie rób nic. Zrealizowana została ona na mikrokontrolerze PIC16F84, którego możliwości znacznie przewyższają potrzeby tej konstrukcji. Wybór raczej był przypadkowy, po prostu taki układ miałem pod ręką. W projekcie wykorzystałem jedną zaletę tej „kost-
ki”, a mianowicie ma ona 4 wejścia, które można wykorzystać jako źródło przerwań zewnętrznych, ale o tym będzie mowa dalej. Napięcie z czujnika optycznego podawane jest na wejście komparatora, gdzie zostaje porównane z napięciem na suwaku potencjometru montażowego PR1. Jeżeli jest ono większe (czujnik znajduje się na jasnym podłożu), na wyjściu komparatora uzyskujemy stan wysoki (świeci dioda LED), jeżeli mniejsze (czujnik znajduje się na ciemnym podłożu), na wyjściu uzyskujemy stan niski (dioda LED zgaszona). W celu zwiększenia precyzji ustawienia progu przełączania, jako źródło napięcia odniesienia zastosowałem potencjometr montażowy typu helitrim. Ze względu na miniaturyzację układu, wszystkie 3 wejścia odwracające komparatora podłączono wspólnie do jednego potencjometru. Rozrzut parametrów elementów powoduje, że czujniki nie reagują jednocześnie na wymuszenia zewnętrzne, jednak w takim układzie nie ma to większego znaczenia. Wyjścia komparatorów są podłączone do wejść RB4, RB5 i RB6 mikrokontrolera. Wtajemniczeni wiedzą, że zmiana stanu na tych wejściach jest zewnętrznym źródłem żądania przerwania. Właściwość tę wykorzystałem podczas pisania oprogramowania. W celu uproszczenia układu wejście zerujące !MCLR procesora zostało bezpośrednio podpięte do masy, nie należy zatem stosować „dużych” elektrolitów na wyjściu stabilizatora scalonego (ze względu na dłuższy czas ustalania napięcia wyjściowego). Jeżeli mikrokontroler rozpocznie pracę zanim napięcie zasilające się ustabilizuje, spowoduje to błędy w jego działaniu i układ nie zadziała. Ponieważ wyjścia mikrokontrolera nie można obciążyć zbyt dużym prądem (max. 20 mA), więc do sterowania silniczków został wykorzystany układ mostkowy typu „H”. Na schemacie został przedstawiony tylko jeden układ tego typu, ale należy go w praktycznym układzie zdublować. Jako czujniki optyczne zostały zastosowane diody IR oraz zwykłe fototranzystory. Takie rozwiązania ma pewną wadę: przy zbyt ostrym oświetleniu zewnętrznym robot zostaje „oślepiony”. Można to częściowo wyeliminować wprowadzając np. modulacje. W tym celu należy w szereg z diodami włączyć tranzystor, który byłby kluczowany z określoną częstotliwością przez jedno z pozostałych wyjść mikrokontrolera.
11
Robot „Tropiciel” Na wejściach komparatorów należy zastosować wówczas odpowiednie filtry selektywne. Fototranzystory powinny znajdować się po wewnętrznej stronie robota, co również ograniczy do nich dostęp światła zewnętrznego. Można również na ich soczewki nałożyć koszulki termokurczliwe. Rys. 3. Sposób wykonania koszyczka na baterie
Program sterujący
Na listingu 1 przedstawiono przykładowy, napisany w C, program obsługi robota. Aby jego działanie było bardziej przejrzyste, do zapisu stanów logicznych na porcie B użyłem binarnego sposobu zapisu liczb. Ponieważ PIC16F84 nie posiada sprzętowego układu PWM, więc układ taki musimy stworzyć sami programowo. Jak widać nie jest to zbyt skomplikowane zadanie. Główną część programu stanowi nieskończona pętla (for(;;){}). Jest ona powtarzana w kółko od chwili uruchomienia mikrokontrolera
do chwili jego wyłączenia. To właśnie tutaj realizowana jest obsługa PWM. W momencie, gdy mikrokontroler otrzyma informację o zmianie stanu na którymś z wejść kontrolujących stan czujników, zostaje wywołana procedura obsługi przerwania (void interrupt). Służy ona do analizy poziomu sygnałów na poszczególnych wejściach i w zależności od ich stanu odpowiednio modyfikuje zmienne pwm, stan1 i stan2. Od wartości
Listing 1. Przykładowy program obsługi robota (dla mikrokontrolera PIC16F84A) #pragma CLOCK_FREQ 4000000 asm { }
//zdefiniowanie prędkości zegara taktującego
list p=16F84A config H’3FF1’
int pwm=100, stan1=0x00, stan2=0x00, i; void interrupt( void ) { if ( intcon&0x08 && intcon&0x01 ) {
//zdefiniowanie typu procesora //zdefiniowanie rejestru konfiguracyjnego //zdefiniowanie zmiennych globalnych //podprogram przerwania //sprawdzenie stanu flag zezwalających na obsługe przerwania
i=portb; if (i==01110000b){} if (i==01010000b){
pwm=0;
if (i==00010000b){
pwm=100;
stan1=0x0a; stan2=0x02; }
if (i==00110000b){
pwm=150;
stan1=0x0a; stan2=0x02; }
if (i==01100000b){
pwm=150;
stan1=0x0a; stan2=0x08; }
if (i==01000000b){
pwm=100;
if (i==00000000b){
pwm=0;
clear_bit( intcon, RBIF );
stan1=0x0a; stan2=0x0a; }
stan1=0x0a; stan2=0x08; } porta=0x00; delay_ms(100); porta=0x06; delay_ms(400); } }
//zerowanie bitu intcon w rejestrze RBIF
} main() { option_reg = 0xFF; trisa = 0x00; porta = 0x00; trisb = 0xFF; portb = 0x00; stan1 = 0x0a; stan2 = 0x0a; enable_interrupt( RBIE ); enable_interrupt( GIE );
//konfigurowanie portów B jako wejściowych
//uaktywnienie maski przerwań z portu B //uaktywnienie obsługi przerwań
delay_ms(500);
//czekaj 0.5s
for(;;) {
//tzw. pętla nieskończona
clear_wdt();
//zerowanie wathdoga
porta = stan2;
//softwarowa realizacja PWM
delay_us(pwm); porta = stan1;
}
//program główny // //konfigurowanie portów A jako wyjściowych
delay_us(255-pwm); }
12
tych zmiennych zależy, który silnik i jak bardzo ma zwolnić obroty, aby pojazd mógł znowu powrócić na wyznaczoną trasę. Częstotliwość oraz współczynniki wypełnienia należy dobrać doświadczalnie, ponieważ sposób poruszania się naszego robota zależy od jego układu napędowego i nie zawsze te same wartości sprawdzą się dla różnych konstrukcji. Dobieranie zbyt małego współczynnika wypełnienia (poniżej 40%) nie ma raczej sensu, ponieważ silnik zamiast zwolnić po prostu zatrzyma się (ze względu na bardzo małą sprawność). Dobranie zbyt małej częstotliwości pracy silnika spowoduje także zwolnienie reakcji robota na sygnały zewnętrzne, a to w konsekwencji może prowadzić do zgubienia trasy. Zachęcam do samodzielnego eksperymentowania przy pisaniu programu, można na przykład dodać funkcję, która pozwoli na odnalezienie zgubionego „tropu”. Nieużywane wyprowadzenia procesora najlepiej podpiąć do masy, wówczas w pliku konfiguracyjnym ustawiamy je jako wejściowe. Unikniemy w ten sposób niepotrzebnych zakłóceń (ew. można ustawić je jako wyjścia i pozostawić niepodłączone do masy). Procesor pracuje z zegarem o częstotliwości 4 MHz. Ze względu na chęć zmniejszenia kosztów oraz brak miejsca, nie zastosowałem w projekcie układu gwarantującego pewny start mikroprocesora, należy więc w pliku konfiguracyjnym włączyć zegar PWRT, który po włączeniu zasilania odmierzy czas potrzebny do ustalenia się napięcia zasilającego. Umożliwi to poprawny start układu. WYKAZ ELEMENTÓW D1, D2, D3: IR nadawcze D4, D5, D6: LED T1, T2, T3: IR odbiorcze T4, T5: BD139/BC547 T6, T7: BD140/BC557 R1: 68 Ω R2, R3, R4, R12, R13: 10 kΩ R5, R6, R7, R14, R15: 1 kΩ R8, R9, R10, R11: 500 Ω PR1: 100 kΩ (helitrim) US1, US2: NE4558 US3: 7805 US4: PIC16F84-04/P zaprogramowany X: 4 MHz C1, C2: 33 pF C3, C4: 10 nF
Elektronika Praktyczna 11/2004
Robot „Tropiciel”
Montaż
Punkt ten polecam traktowa ć bardziej jako zbiór praktycznych rad przydatnych podczas montażu robota, niż instrukcję, której należy się ściśle trzymać i wykonywać operacje po kolei. Zakładam po prostu drogi Czytelniku, że zawartość Twojej szuflady różni się od zawartości mojej, chodzi tu przede wszystkim o część mechaniczną układu. Przed przystąpieniem do składania należy zatem zgromadzić wszystkie potrzebne elementy. Od tego głównie zależeć będzie kształt, wygląd oraz właściwości jezdne pojazdu. Potrzebne będą przekładnie, silniczki, koła oraz źródło zasilania. Co do zasilania, to od razu polecam zaopatrzyć się w akumulatorek. Do zasilania mojego Tropiciela użyłem akumulatorka niklowo-wodorkowego 9 V, o pojemności 150 mAh. Jego pojemność w znacznym stopniu decyduje o czasie działania robota. Przy jego doborze należy wziąć pod uwagę prąd pobierany przez silniki. Dobrym rozwiązaniem
Elektronika Praktyczna 11/2004
byłoby zastosowanie „komórkowego” akumulatorka Ni-MH 3,6 V. Akumulatorki takie mają bardzo duże pojemności 1000...1200 mAh, co gwarantuje także długi czas działania robota. Dodatkową zaletą są także małe rozmiary oraz łatwość ładowania (można go przecież włożyć do komórki). Jeżeli zdecydujemy się na takie rozwiązanie pamiętajmy aby odpowiednio zmodyfikować wartości elementów, a także żeby zastosować niskonapięciową wersję mikrokontrolera. Zastosowanie akumulatorka mimo wszystko jest bardziej ekonomiczne niż korzystanie z baterii. Orientacyjny czas działania (a co za tym idzie zasięg) robota możemy łatwo obliczyć. Jeżeli np. pobór prądu jednego silniczka wynosi 75 mA, to 2 silniczki potrzebują 150 mA. Przy pojemności akumulatorka 150 mA czas ten wynosi ok. 1 godziny, przy pojemności 1000 mA uzyskamy aż 61/2 godziny nieprzerwanej pracy. Pobór prądu przez elektronikę jest znikomo mały w stosunku do prądu silniczków, tak więc można go pominąć. Jeżeli wybraliśmy już rodzaj
zasilania, pora zająć się koszyczkiem na baterię, który jednocześnie pełni rolę elementu nośnego konstrukcji mechanicznej. Wykonujemy go z laminatu, należy dobrze dostosować go do wymiarów baterii. W moim przypadku okazało się, że akumulatorek ma minimalnie większą obudowę niż bateria, co zaowocowało tym, że konstrukcja uległa niewielkiemu zdeformowaniu podczas montażu. Aby się tego ustrzec zalecam przed konstruowaniem wcześniejsze zgromadzenie wszystkich elementów. Laminat składamy tak jak pokazano na rys. 3, a następnie za pomocą kawałków specjalnie uformowanego drutu miedzianego (o przekroju 2 mm 2) łączymy, lutując w jedną całość. Do lutowania najlepiej użyć lutownicy kolbowej, transformatorowa ma za małą moc. Zbyt długie przegrzewanie płytki powoduje odpadanie od niej warstwy miedzi. Wszystkie powierzchnie łączone w ten sposób powinny być najpierw oczyszczone drobnym papierem ściernym, a następnie pobielone. Ułatwi to nam w znacznym stopniu montaż.
13
Robot „Tropiciel”
Rys. 4. Schemat elektryczny Tropiciela
A b y ko s z y c z e k w y s z e d ł p r o sto można posłużyć się kawałkiem drewnianej deseczki, której użyjemy jako „kopytko”. Nie należy także poprawiać kształtu koszyczka już po zlutowaniu, naprężenie mechaniczne spowoduje oderwanie miedzi od płytki. Zaciski do koszyczka najlepiej zdobyć rozbierając zużytą bateryjkę. Montujemy je od strony laminatu nie posiadającej warstwy miedzi. W tym celu wiercimy w laminacie dwa otwory przez które przewlekamy kawałki drutu miedzianego. Z jednej strony przylutowujemy drut do punktów lutowniczych na płytce, a z drugiej do drutu przylutowujemy zaciski na bateryjkę. Teraz powinniśmy zastanowić się nad montażem kół, przekładni i silników. W tym przypadku nie ma żadnej „złotej” reguły. Każdy powinien dostosować się do zgromadzonych przez siebie materiałów. Ja do montażu kół napędowych użyłem śrub pochodzących od wtyczki z myszki. Przykleiłem je do spodniej części konstrukcji za pomocą kleju cyjano-akrylowego. Z drugiej strony koła zablokowałem nakrętkami. Koła należy przymocować w takim miejscu, aby punkt ciężkości pojazdu znajdował się z przodu. Im bardziej z tyłu znajdują się koła, tym lepiej ponieważ poprawi to
14
stabilność robota podczas jazdy (oscylacje wokół trasy są mniejsze). Do kół napędowych przyklejone zostały koła pasowe, które są częścią przekładni redukcyjnej. Przekładnia powinna być montowana ze szczególną starannością. Zbyt ciasne osadzenie kół zębatych uniemożliwi obroty silnika, zbyt duże luzy również nie są wskazane. W przypadku przekładni pasowej zbyt duży luz spowoduje ślizganie się paska klinowego, a nawet jego spadanie. Silniczki zostały przylutowane do górnej części konstrukcji. Nie należy ich przegrzewać podczas lutowania, wpływa to negatywnie na ich magnesy. Jako kółeczko przednie wykorzystałem mini łożysko, które można z powodzeniem znaleźć w każdej stacji dyskietek 3 ½ cala. Można je pominąć, ale wówczas konstrukcja opiera się o fotoelementy, co powoduje większe tarcie o podłoże, a także ścieranie się ich soczewek. Na górnej części konstrukcji nośnej znajduje się płytka z układami sterującymi pracą silniczków (dwa układy typu H), oraz włącznik (bistabilny mini isostat). Takie umiejscowienie włącznika jest korzystne, ponieważ pozwala nam na włączenie robota po ustawieniu go na trasie. Podczas pisania programu specjalnie umieści-
łem w nim pętlę opóźniającą (0,5 s) daje ona czas na cofnięcie ręki zanim Tropiciel ruszy z miejsca. W moim rozwiązaniu przednia płytka z elektroniką została połączona z „wózkiem” na stałe za pomocą połączeń lutowanych. Można pokusić się o to, żeby płytkę tę połączyć z układem jezdnym za pomocą goldpinów. Wówczas nasza konstrukcja ma charakter modułowy i przez wymianę „panelu przedniego” tworzymy zupełnie nowego robota o innych właściwościach. Jako system napędowy można z powodzeniem wykorzystać także odpowiednio przerobione serwomechanizmy modelarskie. Rozwiązanie takie jest bardzo dogodne, ponieważ serwomechanizmy posiadają już w swojej strukturze odpowiednią przekładnię redukcyjną. Sposób przystosowania serwomechanizmów był już poruszany na łamach EP.
Uruchomienie
W zasadzie robot działa zaraz po zmontowaniu i zaprogramowaniu, jedyne co należy zrobić to poprzez dobór odpowiednich współczynników PWM oraz częstotliwości pracy silniczków ustawić dogodne dla nas parametry jezdne. Marcin Sawicz
Elektronika Praktyczna 11/2004
P R O J E K T Y
Sterownik VGA AVT-539 Prezentowany sterownik VGA jest uniwersalnym urz¹dzeniem umo¿liwiaj¹cym wizualizacjê znaków alfanumerycznych na monitorach VGA. Rekomendacje: interesuj¹ce opracowanie ilustruj¹ce sposób tworzenia sygna³u wideo dla monitorów VGA, charakteryzuj¹ce siê przy tym sporymi walorami praktycznymi - urz¹dzenie mo¿na bowiem wykorzystaæ jako programowalny sterownik VGA.
Wyœwietlany tekst zawiera siê w piêtnastu wierszach i szesnastu kolumnach. Wygl¹d pojedynczego znaku opisuje matryca o rozmiarach 8x8 pikseli. Urz¹dzenie charakteryzuje siê bardzo prost¹ konstrukcj¹, koszt wykonania jest stosunkowo niski, dziêki czemu mo¿e stanowiæ (oczywiœcie w pewnych aplikacjach) alternatywê dla wyœwietlaczy LCD. Prosty, a zarazem uniwersalny interfejs komunikacyjny oparty o interfejs SPI umo¿liwia ³atwe wykorzystanie modu³u w ró¿norodnych uk³adach mikroprocesoro-
Tab. 1. Parametry czasowe dla wybranych trybów pracy VGA Rozdzielczoœæ
SzerokoϾ pasma [MHz]
Czêstotliwoœæ pozioma [kHz]
Czêstotliwoœæ pionowa [Hz]
640x400
25,175
31,50
70
720x400
28,322
31,50
70
640x480
25,175
31,50
60
640x350
25,175
31,50
70
Rys. 1. Przebiegi czasowe podczas wyświetlania obrazu w trybie VGA (640 na 480 punktów)
Elektronika Praktyczna 11/2004
wych, a szczególnie w urz¹dzeniach pomiarowych. Do wysterowania monitora trzeba wytworzyæ co najmniej piêæ sygna³ów: synchronizacji poziomej i pionowej oraz trzy sygna³y wizyjne sk³adowych koloru, którym to na typowo stosowanym z³¹czu DB15 karty VGA odpowiadaj¹ styki 13 (H-SYNC), 14 (V-SYNC) oraz dla informacji wizyjnej: 1 (R), 2 (G), 3 (B). Pierwszy z nich H-SYNC s³u¿y synchronizacji wi¹zki elektronów na monitorze do pocz¹tku kolejnej wyœwietlanej linii. Drugi przenosi wi¹zkê na pocz¹tek kolejnego ekranu. Oba te sygna³y musz¹ spe³niaæ pewne kryteria czasowe, które opisano w tab. 1. Pomiêdzy kolejnymi impulsami synchronizacji poziomej nale¿y odpowiednio sterowaæ wejœcia RGB w celu uzyskania na ekranie monitora odpowiedniego obrazu. Sygna³y podawane na wejœcia RGB nios¹ (analogowo) informacjê o wyœwietlanym obrazie. Przyk³adowy przebieg czasowy na liniach steruj¹cych monitorem VGA pokazano na rys. 1. W prezentowanym uk³adzie do generacji sygna³ów steruj¹cych u¿yto mikrokontrolera, który spe³nia rów-
%
Sterownik VGA
Rys. 3. Schemat blokowy typowej aplikacji korzystającej ze sterownika VGA
Rys. 2. Algorytm działania mikrokon− trolera
nie¿ rolê inteligentnego interfejsu zapewniaj¹cego komunikacjê z otoczeniem za pomoc¹ interfejsu SPI. Realizacja wiêkszoœci funkcji odbywa siê na drodze programowej. Szkic algorytmu dzia³ania mikrokontrolera przedstawiono na rys. 2. Tak przedstawiony algorytm wygl¹da nieskomplikowanie, jednak rygorystyczne zale¿noœci czasowe stawiane sygna³om synchronizacji by³y du¿ym wyzwaniem podczas tworzenia oprogramowania. Do wytworzenia przebiegów z danymi o obrazie jest konieczny przetwornik cyfrowo-analogowy. Sterowanie takim przetwornikiem mo¿e okazaæ siê dosyæ z³o¿one i czasoch³onne. Z tych wzglêdów zdecydowano siê na zastosowanie jednobitowej konwersji C/A, któr¹ mo¿na ³atwo zrealizowaæ u¿ywaj¹c do tego jednej linii portu mikrokontrolera. Rozwi¹zanie takie jest oszczêdne uk³adowo i zmniejsza liczbê komórek pamiêci potrzebnych do przechowywania obrazu. Niestety niesie to równie¿ ograniczenie co do liczby mo¿liwych do wyœwietlenia kolorów (odcieni), która wynosi tylko dwa. Generacja sygna³u wizyjnego w prezentowanym urz¹dzeniu jest wspomagana sprzêtowo poprzez zastosowanie bloku do transmisji szeregowej USART i jego synchronicznego trybu pracy, bêd¹cego jednym z
&
wewnêtrznych urz¹dzeñ zastosowanego mikrokontrolera. Takie niekonwencjonalne rozwi¹zanie w znacznym stopniu uproœci³o program i przyczyni³o siê do uzyskania lepszej rozdzielczoœci. Niekorzystnym efektem ubocznym jest trudny do wyeliminowania bia³y pionowy pasek po lewej stronie ekranu obecny podczas pracy uk³adu. Maj¹c na celu minimalizacjê liczby transmitowanych danych oraz minimalizacjê zapotrzebowania na pamiêæ danych, wyœwietlane obrazy mog¹ sk³adaæ siê jedynie ze znaków alfanumerycznych, których wzorce (kszta³ty znaków) zosta³y zaszyte na sta³e w pamiêci programu. Rozdzielczoœæ zosta³a dobrana na drodze eksperymentalnej. W wyniku wielu prób z ró¿nymi wersjami oprogramowania uda³o siê w efekcie uzyskaæ nastêpuj¹ce parametry: 16 kolumn na 15 wierszy przy matrycy znaku 8x8. Kody ASCII przesy³ane do sterownika musz¹ zawieraæ siê w domkniêtych przedzia³ach od 0x30 (spacja) do 0x3E (‘>’) oraz od 0x41 (‘A’) do 0x5F (‘_’). Kody z poza tych zakresów s¹ mog¹ powodowaæ b³êdy w funkcjonowaniu modu³u. Poza tymi wartoœciami dopuszczalne jest równie¿ przesy³ania specjalnych kodów steruj¹cych, pozwalaj¹cych dokonywaæ operacji takich jak czyszczenie ekranu i ustawianie kursora. Zestawienie wszystkich dostêpnych kodów przedstawiono w tab. 2.
Proces transmisji danych jest oparty o dobrze znany interfejs SPI zmodyfikowany o mo¿liwoœæ przypisania adresu logicznego, pozwalaj¹cy na pracê w konfiguracji magistralowej. Na rys. 3 przedstawiono schemat blokowy typowego systemu cyfrowego przystosowanego do wspó³pracy ze sterownikiem VGA. Na schemacie wyró¿niono trzy podstawowe magistrale: – adresow¹, – steruj¹c¹, – SPI. Magistrala adresowa sk³ada siê z trzech linii (A0...A2) s³u¿¹cych do przesy³ania informacji o adresie aktualnie wybranego sterownika. Linie te s¹ dwustanowe, jednokierunkowe. Liczba zastosowanych linii pozwala zaadresowaæ do 8 sterowników do³¹czonych do jednej magistrali. Magistrala steruj¹ca sk³ada siê z linii ¿¹dania przerwania INT, linii potwierdzeñ IN/INTA i linii wyjœciowej ogólnego przeznaczenia OUT. Linia INT jest jednokierunkowa (wyjœcie), dwustanowa, przy czym aktywny jest stan niski. Dziêki takiej konstrukcji nie ma konfliktów na magistrali, w przypadku gdy do magistrali jest do³¹czony wiêcej ni¿ jeden sterownik VGA lub inny uk³ad z interfejsem SPI. ¯¹danie obs³ugi jest zg³aszane do systemu steruj¹cego za pomoc¹ stanu niskiego na linii INT. Linia
Tab. 2. Kody steruj¹ce prac¹ sterownika VGA Kod
Opis
0x19
Przesuniêcie kursora o jedn¹ pozycjê w prawo
0x1A
Przesuniêcie kursora o jedn¹ pozycjê w lewo
0x1B
Przesuniêcie kursora o jedn¹ pozycjê w górê
0x1C
Przesuniêcie kursora o jedn¹ pozycjê w dó³
<0x01; 0x18>
Wykasowanie 1/24 ekranu, wartoœæ z przedzia³u okreœla kasowany fragment ekranu, np. 0x01 oznacza skasowanie pierwszego i po³owy drugiego wiersza, 0x18 to skasowanie ostatniego i od po³owy przedostatniego wiersza
<0x80 ; 0xF8>
Ustawienie kursora na pozycjê („wartoœæ z przedzia³u” - 0x80)/2
Elektronika Praktyczna 11/2004
Sterownik VGA INTA s³u¿y do transmisji sygna³u potwierdzenia przerwania od modu³u, mo¿e byæ tak¿e u¿yta jako linia wejœciowa ogólnego przeznaczenia. Aktywnym stanem INTA jest stan niski (gdy nieaktywny to wysoka impedancja). Ostatni¹ z linii steruj¹cych jest OUT. Jej funkcja nie jest œciœle zdefiniowana i mo¿e s³u¿yæ np. do potwierdzenia odbioru przez jednostkê centraln¹. W przypadku modu³u VGA pozostaje ona niewykorzystywana. W przypadku modu³u VGA przesy³ danych nie mo¿e odbywaæ siê w dowolnym czasie. Konstrukcja programu pozwala na odbiór jedynie w trakcie przedzia³u wygaszania pionowego (czarna ramka u góry i u do³u obrazu). Modu³ swoj¹ gotowoœæ do transmisji sygnalizuje poprzez wystawienie sygna³u niskiego na linii INT. Urz¹dzenie obs³uguj¹ce taki modu³, chc¹c wyprowadziæ dan¹, musi w odpowiednim czasie (mniejszym ni¿ 30 µs) odpowiedzieæ na taki sygna³, ustawiaj¹c na liniach A0, A1, A2 adres modu³u. Prawid³owy adres powoduje ustawienie przez modu³ VGA sygna³u niskiego na INTA i powrót do stanu spoczynkowego (wysoka impedancja) linii INT w czasie nie d³u¿szym ni¿ 6 µs. Po takiej sekwencji mo¿e nast¹piæ nadawanie. WYKAZ ELEMENTÓW Rezystory R1.. R3: 470 Ω R4, R12: 47 kΩ R5..R11: 330 Ω R13..R15: 4,7 kΩ R16: 10 kΩ R17: 220 Ω Kondensatory C2: 15 pF C3..C5: 1 µF/25V C6: 47 µF/25V Półprzewodniki D1: 1N4007 D2: LED zielona Q1: BC337 U1: PIC16F876−DIP28 U2: 4511 U3: 7805 Różne Y1: rezonator kwarcowy 20 MHz S1, S2: mikrowłącznik DS1: wyświetlacz 7−segmentowy (wspólna katoda) J1: goldpin 1x8 J2: goldpin 1x4 J3, J5, J9, J10: goldpin 1x2 J4: goldpin 1x8 J6: DB25 (żeński) J7, J8: goldpin 1x10
Elektronika Praktyczna 11/2004
Rys. 4. Dane na linii SDI są zatrzaskiwane opadającym zboczem sygnału zegarowego
Rys. 5. Sygnały na magistrali podczas transmisji do sterownika VGA
Modu³ VGA jest interfejsem SPI typu Slave. Stanem spoczynkowym zegara SCK jest stan niski. Próbkowanie danych na linii SDI nastêpuje podczas narastaj¹cego zbocza SCK. Na rys. 4 przedstawiono przebiegi czasowe sygna³ów SDI i SCK na magistrali steruj¹cej podczas transmisji jednego bajtu. Liczba transmitowanych bajtów jest ograniczona przez maksymalny ca³kowity czas przeznaczony na transmisjê, okreœlany od momentu ustawienia INT w stan niski. Wynosi on 254 µs. Dodatkowo kolejne bajty nie mog¹ przychodziæ czêœciej ni¿ co 3,5 µs. Wszystkie te ograniczenia wynikaj¹ z uproszczonej konstrukcji sprzêtowej modu³u. Koniec transmisji, a co za tym idzie zwolnienie magistrali, mo¿e nast¹piæ wczeœniej ni¿ czas okreœlony wy¿ej jako maksymalny czas transmisji. Sygna³em dla modu³u VGA œwiadcz¹cym o zakoñczeniu przesy³u jest zdeadresowanie (linie A0...A2 przyjmuj¹ stany nie odpowiadaj¹ce adresowi przypisanemu do modu³u), w wyniku którego wszystkie linie ustawiane s¹ w stan wysokiej impedancji. Na rys. 5 przedstawiono przebiegi czasowe sygna³ów
na magistrali podczas kolejnych faz transmisji danych. W sterowniku zastosowano mikrokontroler PIC16F876-20 oznaczony na schemacie elektrycznym (rys. 6) symbolem U1. Jego zadaniem jest odczyt danych z interfejsu komunikacyjnego, ich interpretacja oraz sterowanie sygna³ami wizji i synchronizacji VGA. Sterowanie sygna³em wizyjnym odbywa siê z wykorzystaniem linii RC7, bêd¹cej wyjœciem DT dla bloku USART wbudowanego w PICa. Rezystory R1, R2 i R3 s³u¿¹ do uzyskania odpowiedniej barwy i jasnoœci. Ich wartoœci dobrano eksperymentalnie tak, aby uzyskaæ w³aœciwy odcieñ bieli. Linie 2 i 5 portu B (wyprowadzenia 23 i 26 uk³adu U1) obs³uguj¹ odpowiednio: synchronizacjê pionow¹ i poziom¹. Wyœwietlacz DS1, uk³ad U2 i linie RA0...RA3 odpowiadaj¹ za prezentacjê adresu przypisanego modu³owi i wykorzystywanego podczas komunikacji. Mikroprze³¹cznik S1 wraz z rezystorem R12 i lini¹ RB0 pozwalaj¹ na zmianê tego adresu. Dodatkowo na z³¹czu J2 wyprowadzono linie portów RB3, RB6 i RB7 odpowiedzialne za proces programowania i debugo-
'
Sterownik VGA wania w systemie, tzw. In-Circuit Serial Programing i In-Circuit Debugging. Mog¹ one pos³u¿yæ do eksperymentów z firmware sterownika. Pozosta³e wykorzystywane wyprowadzenia mikrokontrolera odpowiadaj¹ za komunikacjê. Monta¿ i uruchomienie Monta¿ uk³adu jest niezwykle prosty (schemat monta¿owy p³ytki pokazano na rys. 7). Jako z³¹cza J2, J3, J4 wykorzystano koñcówki typu PB-X (mêskie). Dziêki temu mo¿liwe jest wygodne mechaniczne zamocowanie modu³u w docelowym œrodowisku pracy. Do J4 przylutowano kabel z gniazdem s³u¿¹cym do pod³¹czenia monitora. Jego budowê przedstawiono na rys. 8. Próbne uruchomienie uk³adu mo¿e odbyæ siê bez jakichkolwiek dodatkowych elementów steruj¹cych. W tym celu z³¹cze J3 nale¿y zasiliæ napiêciem 5 V, a kabel z gniazdem DB15 pod³¹czyæ do monitora VGA. Przy prawid³owo zmontowanym uk³adzie na ekranie powinna widnieæ plansza tytu³owa zawieraj¹ca nazwê modu³u oraz imiê i nazwisko autora. Byæ mo¿e konieczna bêdzie jedynie korekta ustawieñ monitora decyduj¹ca o po³o¿eniu obrazu i jego jasnoœci. Dodatkowo mo¿na wypróbowaæ dzia³anie wskaŸnika aktualnie przypisanego adresu oraz dokonaæ jego konfiguracji. W trakcie normalnej pracy jest on zgaszony. Naciœniêcie S1 w Tab. 3. Przyporz¹dkowanie linii magistrali SPI do wyprowadzeñ portu LPT Styk LPT
Sygna³
Modu³ VGA
1
~Strobe
Nieu¿ywane
2
D0
OUT
3
D1
Nieu¿ywane
4
D2
SDO
5
D3
SCK
6
D4
Nieu¿ywane
7
D5
A0
8
D6
A1
9
D7
A2
10
~ACK
~INT
11
Busy
Nieu¿ywane
12
PE
Nieu¿ywane
13
Selected
IN/INTA
14
~AutoLF
Nieu¿ywane
15
~Error
SDI
16
~INIT
Nieu¿ywane
17
~SLCT_IN
Nieu¿ywane
18-25
GND
GND
Rys. 6. Schemat elektryczny sterownika VGA
Elektronika Praktyczna 11/2004
Sterownik VGA tym stanie powoduje pojawienie siê na wyœwietlaczu siedmiosegmentowym adresu aktualnie skojarzonego z modu³em. Kolejne za³¹czenie S1 w trakcie œwiecenia LED powoduje zmianê adresu na kolejny. Adres jest zapisywany do wewnêtrznej pamiêci EEPROM mikrokontrolera, dziêki czemu jest on pamiêtany równie¿ po wy³¹czeniu zasilania. Diody wyœwietlacza po czasie oko³o 2 s od czasu ostatniego naciœniêcia S1 samoczynnie gasn¹. Dla celów demonstracyjnych opracowano specjalny uk³ad umo¿liwiaj¹cy sterowanie modu³em VGA z poziomu komputera PC. Schemat tego interfejsu przedstawiono na rys. 9. Za jego pomoc¹ poprzez programowanie linii portu drukarki przesy³aæ kody wyœwietlanych znaków do modu³u VGA. Budowa interfejsu jest bardzo prosta i w g³ównej mierze ogranicza siê do odpowiedniego po³¹czenia linii portu LPT z liniami magistrali modu³u VGA. Wyj¹tkiem s¹ linie INT i INTA, które s¹ polaryzowane dodatnio za poœrednictwem rezystorów R4 i R5, aby wymusiæ na nich spoczynkowo stan wysoki (jedynka pasywna). Oprócz tego linia INT jest zanegowana na Q1. Jest to konieczne w przypadku gdy mia³oby byæ wykorzystane przerwanie drukarki generowane podczas zmiany stanu niskiego na wysoki nACK, tj. odwrotnie ni¿ dla
Rys. 7. Schemat montażowy płytki sterownika
magistrali zaimplementowanej w module VGA. W urz¹dzeniu przewidziano mo¿liwoœæ jednoczesnej wspó³pracy z dwoma modu³ami opartymi na omawianej magistrali. Do ich instalacji s³u¿¹ gniazda typu PB-X na schemacie oznaczone jako J1, J2, J3 i J4. Dodatkowo uk³ad zawiera stabilizator napiêcia s³u¿¹cy do zasilania podpinanych modu³ów, zbudowany w oparciu o kostkê 7805. W tab. 3 zawarto przyporz¹dkowanie linii magistrali do wyprowadzeñ portu LPT. Przyk³adowy program napisany w C dla systemu DOS (FreeDOS, MSDOS) - lpmain - czyta znaki z klawiatury i przesy³a je do modu³u o adresie 0, a do modu³ów o adresach 1, 2, 3 wysy³a ci¹giem kody ASCII o warto-
Rys. 8. Budowa kabla łączącego ste− rownik z monitorem VGA
œciach odpowiednio ‘1’, ‘2’ i ‘3’. Jego wywo³anie wymaga podania parametru -p z argumentem okreœlaj¹cym adres portu, np. lpmain –p 0x378. W wyznaczeniu odpowiedniego adresu pomocna jest opcja –t, wyszukuj¹ca dostêpne pory równoleg³e. Marcin Or³owski
Rys. 9 Schemat interfejsu sterującego modułem VGA
Elektronika Praktyczna 11/2004
P R O J E K T Y
Nadajnik UKF FM z cyfrową syntezą częstotliwości „Świerszcz 2003” Pomysł opracowania tego urządzenia narodził się kilka lat temu, podczas oglądania telewizji, kiedy z przyczyn rodzinnych byłem zmuszony do częstego ściszania telewizora. Jedynym racjonalnym rozwiązaniem tej sytuacji wydawało mi się zastosowanie słuchawek, ale powstał kolejny problem: jak je w wygodny sposób podłączyć do telewizora? Rekomendacje: Podstawową funkcją do jakiej układ został zaprojektowany jest zdalne sterowanie drogą radiową. Ze względu jednak na dobrej jakości część radiową oraz elastyczną część sterującą, może również znaleźć inne zastosowanie, np. jako syntezer częstotliwości lub cyfrowo sterowany układ głowicy UKF.
Elektronika Praktyczna 11/2004
Zastosowania podczerwieni jako nośnika informacji nie brałem pod uwagę ze względu na to, że wykonanie takiego urządzenia wymaga dużo prac, a możliwy do uzyskania zasięg był bardzo mały. Pozostały więc fale radiowe. Kupno zestawu fabrycznego uznałem za rozwiązanie zbyt proste, postanowiłem więc wykonać nadajnik FM samodzielnie. Do ogólnych założeń stawianych nadajnikom (dopuszczalna moc, itp.) dochodziło jeszcze to, że przy możliwie prostej budowie nadajnik musi emitować sygnał o wysokiej jakości, a także stabilny w czasie oraz odporny na zakłócenia zewnętrzne. Od początku wiedziałem, że zrobienie stabilnego przenośnego nadajnika bez zastosowania cyfrowej stabilizacji PLL lub wysokostabilnego kwarcu od razu odpada ze względu na „wąską” modulację (chyba, że zastosuje się n-tą harmoniczną). Po analizie uwarunkowań doszedłem do wniosku, że problem rozwiąże programowana synteza częstotliwości, a skoro
musiałem zastosować mikroprocesor, to dlaczego by nie dodać kilku funkcji dodatkowych? Opis układu Nadajnik składa się z dwóch części funkcjonalnych: cyfrowej (sterownik) i analogowej. Od razu należy tutaj podkreślić: taka konstrukcja jest obowiązkowa przy budowie układów pracujących na w.cz. ze sterowaniem cyfrowym, szczególnie w warunkach domowych. Zainstalowanie wszystkiego na jednej płytce i dodatkowo często błędne prowadzenie mas doprowadza do potężnych zakłóceń generowanych przez mikroprocesor i syntezer, które następnie są słyszalne w odbiorniku. Zastosowanie odrębnych płytek umożliwia maksymalne odseparowanie części analogowej i cyfrowej oraz dobre tłumienie zakłóceń poprzez fizyczne połączenie masy cyfrowej z analogową tylko w jednym punkcie i to jak najbliżej zasilania.
23
Nadajnik UKF FM z cyfrową syntezą częstotliwości „Świerszcz 2003”
J1 (do złącza J2)
MPX_in
Rys. 1. Schemat ideowy części analogowej
W części analogowej można wyodrębnić (rys. 1): – układ formujący i sumujący sygnał modulujący wraz z sygnałem z syntezera, – układ generatora FM z tranzystorem T1, cewką L1 oraz diodą pojemnościową D1, – wzmacniacz z tranzystorami T2 i T3. Natomiast część cyfrowa (schemat pokazano na rys. 2) składa się z: – mikroprocesora sterującego pracą syntezera oraz pracą wyświetlacza LCD, – układu pętli stabilizacji fazowej (Phase Locked Loop – PLL), opartego na układzie TSA6057, – układu klawiatury stanowiącej wraz z wyświetlaczem interfejs użytkownika. Zacznijmy od opisu układu generatora FM w części analogowej, opartego na tranzystorze w.cz. BF199, jest to generator Colpittsa w układzie OC. Kolektor tranzystora dołączono do masy przez kondensator C6, co umożliwia zmniejszenie jego wpływu na obwód rezonansowy (L1, D1). Mniejsze są również zniekształcenia nieliniowe, a więc i poziom harmonicznych w sygnale wyjściowym. Częstotliwość generacji zależy od cewki L1 oraz wypadkowej pojemności dwóch połączonych przeciwsobnie diod pojemnościowych zamkniętych w jednej obudowie (D1, BB104). Takie połączenie diod zmniejsza zniekształcenia nieliniowe sygnału, które wynikają z nieliniowej zależności pojemności diody
24
od napięcia. Diody te pod wpływem przyłożonego do nich napięcia zmieniają swoją pojemność, co powoduje zmianę generowanej częstotliwości. W taki sposób uzyskujemy ściśle określoną częstotliwość wyjściową (której wartość zależy od napięcia stałego wytwarzanego przez układ syntezera i podawanego za pośrednictwem rezystora R10 będącego częścią sumatora R10, R11) oraz modulację częstotliwości (tutaj niewielkie zmiany pojemności, a więc częstotliwości spowodowane są zmiennym sygnałem pochodzącym z wejścia MPX_in i podawanego za pośrednictwem drugiego rezystora wchodzącego w skład sumatora – R11). Sygnał wielkiej częstotliwości z emitera T1 podawany jest za pośrednictwem C8 na bazę T2 pracującego jako pierwszy wzmacniacz. Z wyjścia tego stopnia sygnał jest kierowany przez C9 do stopnia końcowego na tranzystorze T3 oraz – za pośrednictwem R7 – do układu syntezy w części cyfrowej. Na podstawie jego częstotliwości układ syntezy wytwarza odpowiednie napięcie strojenia. Sygnał w.cz. kierowany jest do anteny za pośrednictwem cewki L4 oraz trymerów Trim1 i 2 pozwalających na optymalne dopasowanie nadajnika do anteny. Zrozumienie zasady działania układu syntezera, a więc układu odpowiedzialnego za generację ściśle określonej częstotliwości, nie jest konieczne do wykonania układu, jednak warto się przyjrzeć schematowi blokowemu „serca” syntezy – układowi TSA6057 (rys. 3).
Projekt może być zastosowany jako:
– generator częstotliwości UKF, bardzo potrzebny w pracowni każdego radioamatora, – układ do bezprzewodowego przesyłania sygnałów analogowych (mono lub stereo) oraz sygnałów cyfrowych (transmisja asynchroniczna RS232), – wzbudnica dobrej klasy nadajnika radiowego FM, – układ „nadzorujący” śpiące (w drugim pokoju lub dalej) dzieci (baby monitor), – układ VCO, czyli część krótkofalarskiego sprzętu nadawczo-odbiorczego, – u k ł a d g ł ow i c y U K F ste row ane j cyfrowo. Ponieważ zaprojektowany nadajnik pracuje na częstotliwościach górnego UKF-u, możliwe jest zastosowanie do jego odbioru jakiegokolwiek odbiornika FM, np. znajdującego się w wieży. Wówczas stosowanie układu jako Baby Monitor jest bardzo wygodne i proste. „Zaszyte” w mikroprocesorze oprogramowanie umożliwia zastosowanie urządzenia jako generatora VCO lub głowicy UKF, ponieważ mamy do dyspozycji: – zakres syntezy częstotliwości od 30 do 150 MHz, – kroki syntezy 10, 25, 100 i 1000 kHz, – 20 (lub więcej) kanałów pamięci zaprogramowanych częstotliwości, – możliwość podłączenia sygnału zwrotnego umożliwiającego wprowadzenie funkcji SCAN, – wszystkie informacje i parametry wyświetlane są na wyświetlaczu LCD 16*2.
Elektronika Praktyczna 11/2004
Do końcówki 5 układu TSA6057 doprowadzono sygnał z generatora częstotliwości za pośrednictwem rezystora R7 (część analogowa) oraz C4 (część cyfrowa), który następnie jest dzielony przez zaprogramowaną liczbę i dalej doprowadzony do detektora fazy. Do detektora fazy doprowadzono również sygnał z układu generatora częstotliwości wzorcowej o wartości 4 MHz. Oba te sygnały są „porównywane”. Sygnał będący wynikiem porównania steruje programowalnym wzmacniaczem prądowym, z którego, poprzez końcówkę 13, jest sterowany generator częstotliwości T1. Zmiana częstotliwość generatora powoduje zmianę sygnału wyjściowego z detektora fazy, co spowoduje zmianę napięcia sterującego generatorem. Korekcja ta będzie przeprowadzana tak długo, aż częstotliwość generowana przez generator będzie identyczna z zaprogramowaną. Jeśli chcemy uzyskać częstotliwość generatora równą 80 MHz, przy częstotliwości odniesienia równej 10 kHz, to do programowalnego dzielnika należy wpisać liczbę 8000. Sygnał z generatora (80 MHz) zostaje podzielony przez 8000, dając w efekcie 10 kHz. W wyniku tego działania podzielona częstotliwość sygnału generatora jest równa częstotliwości odniesienia, stąd układ jest dostrojony. Jeśli po podzieleniu częstotliwości generatora wynik wynosi np. 10010 Hz, to napięcie strojenia zmienia się tak długo, aż podzielona częstotliwość generatora wyniesie dokładnie 10 kHz. Taki układ regulacji częstotliwości pozwala uzyskać dużą dokładność częstotliwości, uniezależniając ją jednocześnie od wpływu czynników zewnętrznych np. temperatury otoczenia. Chcąc wykorzystać również dolny zakres syntezy (512 kHz...30 MHz) należy zmontować układ zgodnie z rys. 4. Wtedy sygnał z generatora podajemy na końcówkę 7, a napięcie sterujące pobieramy z końcówki 15. Mamy również możliwość wykorzystania końcówki 8 jako przełącznika zakresów sterowanego elektronicznie (wyjście to traktujemy jako dodatkowy pin mikroprocesora, który należy podciągnąć do plusa zasilania). Można również wykorzystać sygnał dostępny na wyprowadzeniu 9 do uzyskania kroku strojenia ok. 10 Hz. Sygnał ten równy jest częstotliwości referencyjnej (4 MHz) podzielonej przez 100, czyli 40 kHz. Włączając szeregowo z kwarcem tego generatora dodatkową diodę pojemnościową, możemy zmieniać częstotliwość generatora, a tym samym kroki strojenia na
Elektronika Praktyczna 11/2004
J2 (do złącza J1)
Nadajnik UKF FM z cyfrową syntezą częstotliwości „Świerszcz 2003”
Rys. 2. Schemat ideowy części cyfrowej
25
Nadajnik UKF FM z cyfrową syntezą częstotliwości „Świerszcz 2003” WYKAZ ELEMENTÓW Część cyfrowa
Rys. 3. Schemat blokowy układu TSA6057
poziomie pojedynczych herców. Należy jedynie kontrolować ten sygnał za pomocą mikroprocesora i odpowiednio przeliczać zmianę częstotliwości referencyjnej na kroki strojenia. Część cyfrowa składa się z mikroprocesora AT89C4051, podłączonej do niego pamięci EEPROM, układu syntezera TSA6057 dołączonego do magistrali I2C, wyświetlacza LCD sterowanego w trybie czterobitowym oraz klawiatury czteroprzyciskowej. Klawiatura została tak zaprojektowana, aby przyciśnięcie przycisku powodowało wymuszenie stanu niskiego na przypisanym mu wyprowadzeniu mikrokontrolera oraz na wejściu P3.2, czyli INT0. Pozwala to na każdorazowe usypianie mikroprocesora, który w takim stanie pobiera mało prądu oraz, co ważniejsze, generuje mniejsze zakłócenia. Przyciśnięcie przycisku wyprowadza układ ze stanu uśpienia, mikroprocesor wykonuje określone zadania, po czym ponownie wchodzi w tryb uśpienia.
Sterowanie układu syntezera TSA6057 Aby móc w pełni wykorzystać wszystkie możliwości oraz bardzo dobre własności zastosowanego układu TSA6057, należy zapoznać się ze sposobem sterowania tego układu. Jak wcześniej napisałem, układ jest programowany za pomocą interfejsu I2C. Standardowa ramka danych składa się z 6 bajtów (rys. 5). Po sygnale Start wysyłany jest pierwszy bajt (module address byte) będący adresem układu. W układzie pokazanym na schemacie (zwarte do masy wyprowadzenie 12 układu TSA6057) wynosi on 196. Przy wyprowadzeniu 12 zwartym do plusa zasilania adres układu będzie równy 198. Następnym transmitowanym bajtem jest bajt subadresu i najlepiej jak będzie wynosił 0. Po wysłaniu takiej wartości układ wie, iż następnym transmitowanym bajtem będzie bajt zawierający najmłodszą część wartości programowalnego dzielnika, od której zależeć będzie otrzymana częstotliwość syntezy (rys. 6) oraz bit CP. Wartość dzielnika jest zapisana w słowie 17-bitowym (S16...S0, gdzie S0 jest najmłodszym bitem) i rozpisana jest na trzy bajty (DB0...DB2). Jeżeli częstotliwość, jaką chcemy uzyskać, wynosi np. 120 MHz, czyli 120000 kHz oraz mamy ustawiony krok syntezy wynoszący 10 kHz, to wartość jaka musi być wpisana do układu (zapisana w słowie S16...S0) jest równa dokładnie 12000. Przy kroku syntezy 1 kHz wartość ta wynosi 120000, a przy kroku 25 kHz – 4800.
Rys. 4. Alternatywna konfiguracja układu TSA6057
26
Rezystory R1: 160 V/0805 R2, R4, R5: 10 kV/0805 R3: 100 V/0805 Kondensatory C1: 10 mF/16 V C2, C3: 33 pF C4: 1 nF/0805 C5: 10 nF/0805 C6, f6: 47 mF/16 V C7: 220 nF/0805 C8: 3,9 nF/0805 C9: 30 pF f1, f2, f3, f4: 100 nF/0805 f5: 22 mF/16 V f7, f10: 100 nF/0805 f8: 100 mF/16 V f9: 220 mF/16 V Półprzewodniki U1: TSA6057T U2: AT24C16/SO8 U3: T89C4051 (zaprogramowany) U4: 7805 D1, D2, D3: 1N4148 Inne X1: 4 MHz X2: 12 MHz LCD: wyświetlacz ze sterownikiem 2x16 S1, S2, S3, S4: mikroprzełączniki
Część analogowa
Rezystory R1, R5, R13, R16: 10 kV R2: 2,4 kV R3, R7: 1 kV R4: 100 V R6, R9: 330 V R8, R15: 2,2 kV R10, R11: 27 kV R12: 4,7 kV R14: 150 V VR6: 10k V Kondensatory C1, C4: 10 pF C2: 4,7 mF/16 V C3, C6, C7, C10, C11: 1 nF C5: 12 pF C8, C9: 22 pF C12, C15: 100 nF C13: 470 mF/16 V C14, C16: 100 pF C17, C18: 220 nF C19: 10 nF Trim1: 35 pF Trim2: 60 pF Półprzewodniki D1: BB104 T1: BF199 T2, T3: BFR93/SOT23 Inne L1: CuAg 0.6/6mm 5 zw. L2: Cu 0,4/6mm 4,5 zw. L3: Cu 05/7mm 9,5 zw. L4: Cu 0,5/7mm 4,5 zw.
Elektronika Praktyczna 11/2004
Nadajnik UKF FM z cyfrową syntezą częstotliwości „Świerszcz 2003”
Rys. 5. Ramka danych wprowadzana do układu TSA6057
Wspomniany wcześniej bit CP w słowie DB0 określa prąd sterowania pompy ładunku i w większości układów wystarcza ustawienie Cp = 0 i prądzie sterowania wynoszącym 5 mA. Jeżeli układ jest wrażliwy (łatwo wychodzi z utrzymywanej częstotliwości) to należy ustawić bit CP=1, wtedy prąd sterowania wynosić będzie 450 mA. W naszym układzie lepiej będzie ustawić CP = 1. Kolejnym transmitowanym bajtem jest bajt DB1 zawierający bity S14 do S7), a po nim bajt DB2. Bit 7 oraz 6 tego bajta (REF1 i REF2) określa krok syntezy (1, 10 lub 25 kHz): Kolejnym bitem jest bit 5 (FM/AM) określający wybór zakresu syntezy częstotliwości i tak dla zakresu syntezy 512 kHz do 30 MHz bit FM/AM=0 oraz dla zakresu 30 MHz do 150 MHz FM/AM=1. Kolejny bit czyli 4 (FM/AM OPAMP) powinien wynosić 1 dla zakresu 512 kHz do 30 MHz oraz 0 dla zakresu 30 MHz do 150 MHz. Następny bit nie jest używany i może wynosić 0. Natomiast bit 2 czyli bit BS określa nam stan dodatkowego wyprowadzenia (numer 8) układu TSA6057 – wpisanie 1 spowoduje „ściągnięcie” tego pinu do masy a wpisanie 0 sprawia, iż wyjście to jest wyjściem „wiszącym”
chyba, że zostanie podciągnięte do plusa zasilania. Należy tutaj podkreślić, że wyprowadzenie to może służyć tylko jako wyjście cyfrowe, nie mamy możliwości odczytu jego stanu. Ostatnim bajtem jest bajt składający się z samych 0 i nie ma on żadnego znaczenia dla nas, gdyż służy do testowania układu podczas produkcji. Transmisja bajtów powinna zakończyć się sygnałem Stop. Dokładne omówienie sterowania tego układu na pewno zaowocuje, gdyż do jego sterowania nie możemy użyć komend dostępnych z poziomu języka Bascom. Układ nie odpowiada na nie prawidłowo (przynajmniej w moim modelu). Ale dzięki elastyczności języka, zawsze możemy napisać własne komendy do obsługi układów peryferyjnych. W ten sposób otrzymujemy w pełni funkcjonalny algorytm napisany w Bascomie jako wstawki asemblerowe, działający dla układu zbudowanego zgodnie ze schematem elektrycznym części cyfrowej (list. 1). Jacek Szostak Wzory płytek drukowanych w formacie PDF są dostępne w Internecie pod adresem: pcb.ep.com.pl oraz na płycie CD-EP11/2004B w katalogu PCB.
Listing 1. Program konfigurujący syntezer TSA6057
Sub programuj_TSA6057: Call I2c__start -generacja sygnału startu, Acc = 196 : Call Wyslij -wysłanie pierwszego bajtu (Module address byte), Acc = 0 : Call Wyslij -wysłanie drugiego bajtu (Sbaddress), Acc = Db1 : Call Wyslij -wysłanie trzeciego bajtu (DB1), Acc = Db2 : Call Wyslij -wysłanie trzeciego bajtu (DB2), Acc = DB3 : Call Wyslij -wysłanie trzeciego bajtu (DB3), Call I2c__stop -generacja sygnału stopu, End sub Sub Wyslij $asm mov r0 , #8 Hoop: Mov C , Acc.7 mov p3.1,c setb p3.0 rl a lcall czekaj clr p3.0 djnz r0,hoop lcall czekaj setb p3.1 setb p3.0 lcall czekaj clr p3.0 clr p3.1 Czekaj: nop nop nop ret I2c__start: setb p3.1 setb p3.0 clr p3.1 lcall czekaj clr p3.0 lcall czekaj ret I2c__stop: clr p3.1 clr p3.0 setb p3.0 lcall czekaj setb p3.1 lcall czekaj ret $end Asm End Sub Tab. 1. Zależność kroku syntezy od bitów REF1 i REF2 REF1 REF2 Częstotliwość [kHz]
Rys. 6. Znaczenie bitów w rejestrach układu TSA6057
Elektronika Praktyczna 11/2004
0
0
1
0
1
10
1
0
25
1
1
27
P R O J E K T Ymikrokontrolerów AT89Cx051 Miniprogramator
Miniprogramator mikrokontrolerów AT89Cx051 AVT-540
Po publikacji mojego pierwszego artykułu otrzymałem wiele listów z pytaniami. Najczęściej spotykałem się z jednym: „Czy można zrobić programator małych Atmeli AT89Cx051 sterowany przez port LPT”? Rekomendacje: urządzenie zaprojektowane z myślą o początkujących konstruktorach stosujących w swoich opracowaniach „małe” mikrokontrolery Cx051 firmy Atmel.
Z początku zadanie wydało się łatwe. Poszukiwania w Internecie dostarczyły pewien schemat programatora, jednakże potrafił on wyłącznie zapisać i skasować zawartość pamięci mikrokontrolera. Odczyt oraz weryfikacja jej zawartości oraz zapis bitów blokady były niedostępne. Poza tym urządzenie wymagało zewnętrznego zasilania dwoma napięciami o wartościach +5 V i +12 V. Pozyskanie takich napięć z komputera nie przedstawia trudności pod warunkiem, że możemy otworzyć jego obudowę. Co jednak zrobić, gdy jest na nim plomba gwarancyjna, lub pracujemy na laptopie? Odpowiedzią na takie pytania może być opracowany przeze mnie programator, który zadowala się pojedynczym napięciem zasilania, a ponadto realizuje wszystkie ważne dla użytkownika zadania.
Opis i działanie układu
Głównym założeniem przyję tym podczas realizacji projektu była minimalizacja kosztów. Drugorzędnymi: prostota konstrukcji, łatwość wykonania i niewielkie wymiary. Chęć umieszczenia kompletnego programatora w obudowie wtyczki DB-25 stanowiła zadanie dodatkowe. Programator miał być p o d ł ą c z a n y d o p o r t u d r u ka r ko wego (Centronics) komputera PC. Takie rozwiązanie pozwoliło wyeliminować układ pośredniczący, jaki byłby konieczny w przypadku programatora sterowanego za pośrednictwem portu szeregowego
28
RS232 czy też USB. Przyczyniło się również znacząco do redukcji kosztów. Algorytm programowania mikrokontrolerów AT89Cx051 wymaga użycia ośmiu linii I/O do przesyłania danych, sześciu linii wyjściowych sterujących, jednej wejściowej odczytującej stan układu oraz napięcia 12 V dołączanego do wejścia RST. Podczas programowania mikrokontroler musi być zasilany stabilnym napięciem o wartości +5 V, aby uniknąć przekłamań zapisywanych danych. Po r t d r u ka r ko w y C e n t r o n i c s składa się z ośmiu linii I/O (D0...D7), czterech linii wyjścio wych (/STROBE, /ALF, /SELECT_ PRINTER, INIT) oraz pięciu linii wejściowych (/BUSY, ACK, PAPER_ OUT, SELECT, ERROR). Zapewnia zatem wszystkie potrzebne linie I/O, a także cztery spośród sześciu linii wyjściowych oraz wejście. Do rozwiązania pozostaje sterowanie dwiema liniami wyjściowymi, zasilanie oraz pozyskanie napięcia 12 V. W tab. 1 zestawiono wszystkie operacje możliwe do wykonania w trybie programowania mikrokontrolera. Funkcje oznaczone gwiazdkami wymagają impulsu dodatniego na wejściu XTAL1 w celu inkrementacji wewnętrznego licznika adresującego matrycę Flash. Łatwo zauważyć, że do programowania potrzeba sześciu sygnałów sterujących (rys. 1). Uważne przestudiowanie noty katalogowej pozwala jednakże na pewne oszczędności.
Elektronika Praktyczna 11/2004
Miniprogramator mikrokontrolerów AT89Cx051 Tab. 1. Opcje dostępne podczas programowania AT89Cx051 Operacja
RST/Vpp P3.3
P3.4
P3.5
P3.7
P3.2/PROG
(*) Odczyt danych
H
L
L
H
H
H
(*) Odczyt sygnatury układu
H
L
L
L
L
H
(*) Zapis danych
12V
L
H
H
H
impuls ujemny
Zapis lock bit 1
12V
H
H
H
H
impuls ujemny
Zapis lock bit 2
12V
H
H
L
L
impuls ujemny
Kasowanie całego układu
12V
H
L
L
L
10 ms impuls ujemny
Od razu można zauważyć, że wejścia P3.5 i P3.7 mikrokontrolera zawsze mają identyczny stan podczas programowania. Należy zatem połączyć je razem i sterować z jednej linii wyjściowej. Głębsze przeanalizowanie tablicy trybów programowania prowadzi do kolejnej oszczędności. Podczas zapisu i kasowania matrycy zawsze co najmniej jedno z wejść P3.3 lub P3.4 jest w stanie wysokim. Tylko operacje odczytu danych lub sygnatury, wymagają niskich stanów na P3.3 i P3.4. Prowadzi to do wniosku, że wynik logicznej operacji LUB (OR) sygnałów P3.3 i P3.4 sygnalizuje fakt zapisu, a zatem potrzebę dostarczenia napięcia 12 V do wejścia RST. Sygnał ten oznaczono na schemacie (rys. 2) jako 12V_ON. Jest on wykorzystywany między innymi do włączania przetwornicy, ale nie tylko. Trzy linie wyjściowe portu LPT: /STROBE, /SELECT_PRINTER oraz INIT sterują trybami programowania. Pozostaje zatem jeszcze jedna wolna linia wyjściowa /ALF. Musi ona wysterować jednocześnie wejście /PROG, na którym ujemny impuls rozpoczyna zapis do matrycy Flash, a także wejście XTAL1, gdzie dodatni impuls zwiększa wewnętrzny licznik adresujący. Podłączenie tych sygnałów razem nie jest odpowiednie. Narastające zbocze na wejściu /PROG powodowałoby zwiększenie adresu zapisywa-
Rys. 1. Wymagania sprzętowe stawiane programatorowi
Elektronika Praktyczna 11/2004
nej danej w trakcie jej zapisywania. Sytuacja taka jest niedopuszczalna, co można zaobserwować na wykresach czasowych operacji zapisu w nocie katalogowej. Sygnały XTAL1 i /PROG muszą być od siebie niezależne. Rozwiązanie tego problemu najlepiej widać na schemacie elektrycznym. Sygnały sterujące P3.3 i P3.4 wchodzą na wejścia bramki OR zbudowanej z diod D11 i D12. Rezystor R2 wymusza stan niski na linii 12V_ON, podczas gdy P3.3 i P3.4 są nieaktywne. Sygnał ten steruje bezpośrednio bramką U1D, a po zanegowaniu bramką U1C. Pozwala to wykorzystać linię /ALF do sterowania wejściami /PROG oraz XTAL1. Podczas operacji zapisu i kasowania sygnał 12V_ON jest w stanie wysokim. Bramka U1D przepuszcza zatem zanegowany stan linii /ALF na wejście /PROG. Jednocześnie na wyjściu bramki U1C panuje niezmienny stan wysoki. Po podaniu ujemnego impulsu na wejście /PROG, narastające zbocze rozpoczyna cykl p r o g r a m o w a n i a . W j e g o t r a kc i e sygnał RDY/BUSY, odczytywany za pomocą wejścia ERROR portu drukarki, jest utrzymywany przez mikrokontroler w stanie niskim. Po zakończeniu zapisu sygnał powraca do stanu wysokiego. Przejście do następnego adresu wymaga podania dodatniego impulsu na wejście XTAL1. Choć dane katalogowe mówią o pełnym impulsie, praktyka wykazuje, że wystarczy jedynie zbocze rosnące i późniejsze utrzymanie wejścia w stanie wysokim. Konstrukcja programatora powoduje, żeby w tym celu na wejściach P3.3 i P3.4 należy ustawić kombinację odczytu. Wtedy sygnał 12V_ON będzie w stanie niskim i zablokuje bramkę U1D, a po zanegowaniu w bramce U1B odblokuje bramkę U1C. Po ostatniej operacji zapisu wyjście /ALF pozostaje w stanie niskim, zatem nie wywoła to zmiany na wejściu XTAL1. Ustawienie stanu wysokie-
go, a następnie niskiego na wyjściu /ALF dostarczy narastającego zbocza dla wejścia XTAL1. Licznik zostanie zwiększony i procedurę zapisu można kontynuować. W p r z y p a d ku o d c z y t u u k ł a d u zwiększenie adresu nie wymaga skomplikowanej procedury i ogranicza się jedynie do taktowania sygnałem /ALF. Rezystory R6 i R7 podciągają do plusa zasilania linie P1.0 i P1.1 mikrokontrolera. Jest to konieczne w przypadku portów LPT, które w trybie odczytu nie mają wewnętrznych rezystorów pull-up. Procedury zapisu oraz kasowania pamięci wymagają dostarczenia do wejścia RST napięcia 12 V. Jest ono wytwarzane w przetwornicy zbudowanej na tranzystorze T1, dławiku L1 oraz diodach D1 i D2. W celu ograniczenia emisji zakłóceń, zasilanie przetwornicy zostało odseparowane filtrem typu π , zbudowanym na elementach L2, C8 i C9. W pierwotnych zamierzeniach programator miał być zasilany wprost z portu LPT. Wymagało to przetwornicy o bardzo dużej sprawności, niewielkim poborze prądu i stałych parametrach pracy. Przejrzenie dostępnych na rynku oraz w programach próbkowych sterowników przetwornic nie przyniosło pozytywnych efektów. Oferowane rozwiązania spełniały swoje zadania bardzo dobrze, ale dla prądów wyjściowych ponad 50 mA i większych. Wymuszenia układowe sprawiły, że przetwornica musiała się zadowolić całkowitym prądem o natężeniu co najwyżej 1 mA. Należało więc opracować stosowne rozwiązanie we własnym zakresie. Katalogowo układy AT89Cx051 podczas programowania pobierają co najwyżej 250 mA prądu przy napięciu z przedziału 11,5...12,5 V. Do takiego prądu została dosto sowana przetwornica. Działanie przetwornicy sterowane jest sygnałem 12V_ON. Stan wysoki tej linii powoduje jej uruchomienie. Diody DZ1 i D13 zabezpieczają wejście RST przed podaniem napięcia wyższego, niż 12,5 V. Kondensator C3 magazynuje energię przekazywaną z przetwornicy. Wejście RST mikrokontrolera sterowane jest za pomocą przełącznika. Ze względu na brak wolnych linii wyjściowych, zdecydowano się na przycisk mechaniczny. Podczas spoczynku styk centralny (Common) zwarty jest ze
29
Miniprogramator mikrokontrolerów AT89Cx051 stykiem NC (normalnie załączony). Na wejście RST doprowadzone jest napięcie z przetwornicy (12 V lub 5 V). Naciśnięcie przycisku spowoduje zwarcie styku centralnego ze stykiem NO (normalnie otwarty) i podanie stanu niskiego na wejście RST. Powrót do stanu wysokiego kasuje wewnętrzny licznik adresujący matrycę Flash. Operacja ta jest konieczna podczas zapisu i odczytu danych, a także odczytu sygnatury układu. Praktyka wskazuje, że jako przełącznika SW1 można użyć także dwustykowego przycisku rozwiernego NC. Dzieje się tak dlatego, że wejście RST mikrokontrolera jest podłączone do masy przez wewnętrzny rezystor. Po z o s t a w i e n i e g o w p o w i e t r z u umożli w i a p op r a w n e z e r o w a n ie układu w tym programatorze. Doprowadzenie masy do przełącznika można zatem pominąć. Zasilanie programatora w początkowej wersji miało być zrealizowane z linii danych portu LPT. Jednakże uzyskane w ten sposób napięcie było zbyt niskie dla mikrokontrolera. Układ wymagał poza tym dość długich przerw pomiędzy cyklami zapisu i odczytu w celu uzupełnienia energii. Zdecydowano się zatem na zasilanie zewnętrzne. Do wyboru są co najmniej trzy w ar i a n t y. N a p i ę c i e + 5 V m o ż e być pobierane z gniazda joysticka (wyprowadzenia 1, 9 – +5 V oraz 4, 5, 12 – GND), portu USB (styki 1 – +5V oraz 4 – GND) lub z zasilacza zewnętrznego. Cały programator wraz z mikrokontrolerem pobiera maksymalnie 10 mA prądu podczas pracy. W rzeczywistości wartość ta zależy od właściwego wyregulowania przetwornicy i może być niższa od 6 mA.
Montaż
Układ zaprojektowano z myślą o umieszczeniu go w obudowie złącza DB -25. Kształt płytki (schemat montażowy pokazano na rys. 3) dopasowano do takiej właśnie obudowy. Miniaturyzacja wymusiła zastosowanie większości elementów do montażu powierzchniowego. Jedynie podstawka pod p r o g r a m o w a n y p r o c e s o r, d ł a w i ki oraz tranzystor są elementami p r z e w l e ka n y m i . P ł y t ka d r u ko wana wykonana została w wersji dwustronnej z metalizacją otworów. Przed montażem warto po kryć cyną wszystkie pola lutowni-
30
Rys. 2. Schemat elektryczny programatora
Elektronika Praktyczna 11/2004
Miniprogramator mikrokontrolerów AT89Cx051
Rys. 3. Schemat montażowy programatora
cze pod montowaną na krawędzi płytki wtyczkę DB -25M. Ułatwi to późniejsze lutowanie złącza i ustrzeże przed kłopotami podczas uruchamiania. Lutowanie rozpoczynamy od układów U1 i U3, które zostały umieszczone od strony dolnej. Technik lutowania układów SMD jest wiele, w zależności od upodobań. Na początku warto ustawić dokładnie układ na polach lutowniczych i unieruchomić go przylutowując dwa skrajne wyprowadzenia. Następnie należy po kolei przylutować resztę układu. Najlepsze do tego celu jest użycie specjalnej pasty i stacji lutowniczej na gorące powietrze. Po przylutowaniu skrajnych wyprowadzeń należy wprowadzić na grot nieco cyny (odcinek około 4 mm lutowia o średnicy 0,7 mm). Gorący jeszcze grot należy pokryć grubo kalafonią. Następnie włączamy lutownicę i czekamy, aż kalafonia zacznie dymić, a cyna będzie już płynna. Zdecydowanym i dość szybkim ruchem przesuwamy grotem lutownicy po wyprowadzeniach układu SMD w kierunku od obudowy na zewnątrz. Jeśli kalafonii było odpowiednio dużo, cyna nie zewrze sąsiednich nóżek i układ będzie bardzo ładnie i mocno przylutowany. Operację powtarzamy po drugiej stronie układu. Podobnie lutujemy pozostałe elementy SMD. Na koniec lutujemy kondensatory elektrolityczne, dławiki, tranzystor oraz podstawkę. W obudowie złącza DB-25 nal e ż y w y c i ą ć p r o s t o ką t n y o t w ó r (fot. 4) na podstawkę precyzyjną (tulipanową) DIL-20 pod programowany mikrokontroler oraz otwór na przycisk. Dogodnie jest to wykonać wiercąc cztery otwory o średnicy 4 mm w rogach dokładnie wytraso-
Elektronika Praktyczna 11/2004
wanego otworu, a następnie wypiłować pilnikiem resztę. W przypadku otworu pod przycisk należy dostosować otwór i metodę jego wykonania do posiadanego elementu. Po wykonaniu otworów możemy nałożyć na podstawkę precyzyjną jeszcze drugą. Takie ustawienie zapewni odpowiednią wysokość gniazda nad obudową. Teraz możemy ostatecznie sprawdzić, czy płytka z podstawką pasuje do wyfrezowanej połówki obudowy. Po pomyślnej próbie złożenia można wreszcie zabrać się za ostatnie lutowanie. Wkładamy drugą podstawkę w otwory pierwszej i mocno dociskamy. Teraz kropelką cyny należy połączyć dwie przeciwległe nóżki podstawek, aby utrzymać je razem. Zabezpiecza to przed wyciągnięciem górnej podstawki podczas wyjmowania programowanego układu. Na sam koniec należy przylutować złącze DB25, uprzednio pozycjonując je w obudowie. Ostatnią czynnością jest zamontowanie i podłączenie przełącznika DPST oraz przewodów zasilających razem z odpowiednią wtyczką. Po złożeniu obudowy i zakręceniu śrubek programator jest gotowy do pracy.
Obsługa i regulacja
Program obsługujący zajmuje niecałe 500 kB i został napisany w języku C++. Można go uruchomić na każdym „okienkowym” systemie operacyjnym, nawet na starszych wersjach okienek (od wersji 3.11 wzwyż). Pewne problemy mogą jedynie wystąpić w przypadku najnowszych systemów, ze względu na bezpośrednie odwołania do rejestrów portu LPT. Instalacja nie jest konieczna, wystarczy uruchomić program i przystąpić do pracy. Typ i ustawienia sprzę-
towe portu LPT mają decydujące znaczenie dla pracy urządzenia. Aby wykorzystać w pełni wszystkie funkcje programatora port Centronics musi być dwukierunkowy. Problem może dotyczyć jedynie odpowiedniego ustawienia trybu w BIOS-ie. W przypadku nowych ko m p u t e r ó w j e s t t o n a j c z ę ś c i e j tryb Normal lub Standard (np. BIOS Award). Czasami w pobliżu jest jeszcze jedna opcja Enable Bi-Director y, którą również należy ustawić. W bardziej egzotycznych przypadkach do poprawnej pracy trzeba niekiedy ustawić opcję SPP, lub EPP + SPP (np. BIOS AMI). Należy mieć na uwadze, że „czyste” tryby ECP, EPP lub ECP + EPP nie umożliwiają poprawnej pracy programatora. Jeśli nie ma pewności, czy port w komputerze jest dwukierunkowy, można zrobić prosty test. Po uruchomieniu programu należy ustawić adres bazowy portu równoległego. W tym celu naciskamy przycisk Base i wybieramy właściwy adres. Wartością domyślną jest $378H. Po ustawieniu adresu możemy zainstalować programator w gnieździe LPT, podłączyć zasilanie i przystąpić do pracy. Jednakże w celu przetestowania komunikacji dwukierunkowej nie podłączamy programatora i pozostawiamy port wolny. Po potwierdzeniu wyboru adresu klawiszem OK otrzymujemy komunikat o braku programatora. W tym czasie port drukarki przestawiony zostaje w tryb odczytu danych. Zwieramy wyprowadzenie sygnału D0 (styk 2 złącza) do masy za pomocą rezystora około 47 kV i mierzymy napięcie na porcie. Jeśli woltomierz wskazuje napięcie powyżej 1 V, można użyć mniejszego rezystora np. 22 kV i ponowić pomiary. Wartość napięcia powyżej 4 V z dołączonym rezystorem (o rezystancji nie mniejszej niż 10 kV) wskazuje, że port nie znajduje się w trybie dwukierunkowym. W takim wypadku należy poeksperymentować z ustawieniami BIOS-u, zmieniając rodzaj portu. Gdy i to nie przyniesie efektu, pozostaje wymiana portu na dwukierunkowy (np. na dodatkowej karcie). Zmontowany poprawnie programator jest wykrywany automatycznie po wyborze adresu bazowego portu LPT. Podczas wykrywania p o d s t a w ka p o w i n n a b y ć p u s t a .
31
Miniprogramator mikrokontrolerów AT89Cx051
Fot. 4. Rysunek konstrukcyjny górnej części obudowy złącza DB25
Uaktywniona zostaje opcja Zapisu Flash (skrót klawiszowy: F6). Otwiera ona okno obsługi programatora. Przy pierwszym uruchomieniu warto skorzystać z przycisku TEST. Wywołuje on prostą procedurę, umożliwiającą wykrycie niektórych błędów montażu. Pierwszy test sprawdza dwukierunkowość portu w sposób opisany wyżej. Drugi wymusza na liniach D0...D7 portu naprzemienne stany 0 i 1, a następnie 1 i 0. Pozwala to sprawdzić sygnały na pinach podstawki i wykryć ewentualne zimne luty lub zwarcia. W drugim etapie program ustawia naprzemienne stany na liniach sterujących, które sprawdzamy analogicznie. Trzeci test sprawdza dostarczanie sygnału XTAL1 do podstawki pod programowany układ. Ostatni test wymusza start przetwornicy i umożliwia regulację napięcia. Najkorzystniej jest go przeprowadzić, zwierając otwór pod nóżkę RST (wyprowadzenie 1) z masą (wyprowadzenie 7) za pomocą rezystora 47 kV. Mierzymy napięcie na wyjściu i regulujemy je do około 11,8 V za pomocą potencjometru PR1. Jeśli nie uda się osiągnąć takiego napięcia, należy wymienić rezystor R4 na mniejszy. Praktyka wskazuje, że pobór prądu przez programowany mikrokontroler nigdy nie jest tak duży, jak w katalogu. Jeśli napięcie jest zbyt małe (około 11 V na obciążeniu), ostateczny test należy wykonać programując mikrokontroler. W większości przypadków odbędzie się to prawidłowo i nie będzie konieczna wymiana R4. Dopiero teraz można przystąpić do pracy. W menu Plik znajdują się dwie opcje: odczyt (skrót klawi-
32
szowy: F1) i zapis (skrót: F2) bufora danych programu. Rozmiar załadowanego pliku można sprawdzić w menu System>Informacje (lub F3). Okno programowania ułatwia przeprowadzenie wszystkich możliwych operacji. Na początek warto skorzystać z przycisku Wykryj. Jeśli po lewej stronie przycisku nie zobaczymy symbolu układu, to być może nie zostało podłączone zasilanie, lub przycisk działa niewłaściwie. W normalnych warunkach będzie tam pełna nazwa mikrokontrolera. Pojawienie się dwóch liter XX na początku oznacza, że nie wciśnięto przycisku kasowania, lub układ nie został wyprodukowany przez firmę Atmel. Gdy wszystko jest w porządku, można zabrać się za programowanie. Przyciski Kasuj, Zapisz i Odczytaj wywołują odpowiednie operacje. Z kolei Lock bit 1 i Lock bit 2 programują bity blokady. Ostatni przycisk Weryfikuj służy do sprawdzenia zawartości układu po zaprogramowaniu. Jego wciśnięcie wywołuje procedurę odczytującą dane z mikrokontrolera i porównującą je z obecnymi w buforze. Obok przycisku wyświetlany jest komunikat o ilości błędów. Napis 0 BAD oznacza bezbłędną weryfikację. W tym miejscu należy pamiętać, że weryfikacja nie powiedzie się po zaprogramowaniu drugiego bitu blokady. Należy ją zatem wykonać przed ostatecznym zablokowaniem układu.
Uwagi końcowe
Wytwarzanie napięcia programującego w przetwornicy wymaga wprowadzenia niewielkiego opóźnienia pomiędzy jej włączeniem, a początkiem programowania. Jeśli mikrokontroler nie programuje się od początku lub wcale, konieczne jest zwiększenie opóźnienia. Należy tego dokonać wchodząc w opcję System, a następnie Informacje lub wciskając po prostu przycisk F3. Wartość opóźnienia startu przetwornicy trzeba dobrać eksperymentalnie. Należy zaznaczyć, że ta wartość nie zależy tylko od szybkości komputera, ale od użytych do budowy elementów. Programator został przetestowany zarówno na systemie 486DX4/133 MHz, jak i na PIII 667 MHz. W pierwszym przypadku wystarczyło ustawienie domyślne, natomiast w drugim programator działał poprawnie na opóźnieniu równym 5. Zapis mi-
WYKAZ ELEMENTÓW Rezystory R1, R2, R6, R7: 22 kV SMD R3: 4,7 kV SMD R4: 10 kV SMD PR1: 10 kV MINIATUROWY SMD Kondensatory C1: 10 nF SMD C2: 10 pF SMD C3: 4,7 mF/25 V SMD C4: 100 mF/6,3 V SMD C5, C6, C7: 100 nF SMD C8, C9: 22 mF/10 V SMD Półprzewodniki D1, D2, D11 - D13: 1N4148 SMD DZ1: Dioda Zenera 12 V SMD T1: BC550C U1: 4093 SMD U3: 4047 SMD Różne L1: 1 mH L2: 47 mH SW1: przełącznik SPDT U2: podstawka precyzyjna DIP-20 – 2 sztuki Z1: wtyczka DB-25M Z2: wtyczka DB-15M Z3: wtyczka USB-A obudowa wtyczki DB-25 obudowa wtyczki DB-15
krokontrolera typu AT89C2051 firmy Atmel w warunkach normalnych trwa około dwóch, do trzech sekund, w zależności od ustawionego opóźnienia. Odczyt zaś dokonywany jest niemal natychmiast. Programator nie nadaje się do zapisywania układów AT90S2313 w trybie równoległym. Możliwość taka wymaga dokonania poważnych zmian w układzie i nie została uwzględniona w tej wersji urządzenia. Program sterujący jest ciągle r o z w i j a n y i u l e p s z a n y, d l a t e g o informacje o wszelkich błędach pozwolą na ich wyeliminowanie w nowszych wersjach. Adres e-mail dla tego typu korespondencji został umieszczony w menu Pomoc programu. Michał Szajner
[email protected] Wzory płytek drukowanych w forma cie PDF są dostępne w Internecie pod adresem: pcb.ep.com.pl oraz na płycie CD-EP11/2004B w katalogu PCB.
Elektronika Praktyczna 11/2004
P R O J E K T Y
Wyświetlacz alfanumeryczny LED sterowany I2C AVT-541 Wyświetlacze 7-segmentowe umożliwiają wyświetlanie wyłącznie cyfr i w większości zastosowań jest to wystarczające. Jeśli jest natomiast wymagane wyświetlanie także liter i innych znaków, to należy zastosować wyświetlacz alfanumeryczny. Często do tego celu stosuje się gotowy moduł wyświetlacza LCD zawierający sterownik. Wyświetlacze LCD mają jednak niewielkie wyamiary znaków, przez co są mało widoczne z większej odległości, a także w złych warunkach oświetleniowych. Rekomendacje: urządzenie prezentowane w artykule umożliwia wyświetlanie dowolnych symboli alfanumerycznych na dużych matrycach jasno świecących diod LED.
Optymalnym rozwiązaniem jest zastosowanie wyświetlacza alfanumerycznego zbudowanego na diodach LED, który zapewnia zarówno możliwość wyświetlenia znaków alfanumerycznych oraz dobrą widoczność. Budowa takiego wyświetlacza jest jednak znacznie trudniejsza niż standardowego wyświetlacza siedmiosegmentowego, gdyż każdy moduł alfanumeryczny wymaga dwunastu linii sterujących(5 kolumn i 7 wierszy). Z czego sterowniki kolumn muszą mieć wydajność prądowa co najmniej 70 mA. Przedstawiony w artykule wyświetlacz wykonano w oparciu o sterownik typu MAX6953 firmy Maxim. Układ ten umożliwia wysterowanie czterech matryc LED 5x7 jednokolorowych lub dwóch matryc dwukolorowych poprzez magistralę I2C. Oprócz możliwości sterowania diodami matrycy oferuje on wiele funkcji ułatwiających obsługę wyświetlaczy. Budowę wewnętrzną układu przedstawiono na rys. 1. Wewnątrz układu wbudowano generator znaków ASCII zawierający kształty 104 znaków, przez co aby wyświetlić dowolny znak wystarczy podać jego odpowiednik w kodzie ASCII. Dodatkowo istnieje możliwość zdefiniowania 24 własnych znaków, co umożliwia zdefiniowanie wszystkich znaków polskich diaktrycznych. Ponadto możliwa jest także programowa regulacja intensywności świecenia każdego z wyświetlaczy (w 16 krokach). Można także włączyć miganie wyświetlaczy lub naprzemienne wyświetlanie wcześniej wpisanych znaków.
Po d s t a w o w y moduł wyświetlacza zawiera cztery znaki, ale moduły mogą być łączone ze sobą, aby utworzyć większą liczbę znaków. W opisywanym w artykule wyświetlaczu można wybrać cztery różne adresy (na magistrali I2C), co umożliwia połączenie ze sobą czterech takich modułów, czyli utworzenie wyświetlacza 16znakowego sterowanego przy pomocy dwóch linii magistrali I2C.
Opis układu
Schemat elektryczny wyświetlacza przedstawiono na rys. 2. Jako układ sterujący wyświetlaczami pracuje wspomniany układ MAX6953. Linie komunikacyjne szyny I2C i zasilania zostały wyprowadzone na złącze CON1. Wyjście Blink jest typu otwarty kolektor i informuje o częstotliwości migania wyświetlacza, jeśli funkcja ta zostanie uruchomiona. Kondensator C3 pracuje w obwodzie oscylatora i dla podanej wartości częstotliwość generowanego sygnału zegarowego wynosi około 4 MHz.
Rys. 1. Budowa układu MAX6953
Elektronika Praktyczna 11/2004
35
Wyświetlacz alfanumeryczny LED sterowany I2C
Rys. 2 Schemat elektryczny wyświetlacza
Rezystor R3 służy do ustalenia maksymalnej wartości prądu płynącego przez diody. Dla podanej wartości prąd ten wynosi około 40 mA. I może być regulowany programowo w zakresie 2,5...40 mA z krokiem 2,5 mA. Zworki JP1 i JP2 służą do ustalenia adresu układu MAX6953 na magistrali I2C.
Po zamontowaniu wszystkich elementów zworkami JP1 JP2 należy ustawić adres pod jakim będzie się zgłaszał wyświetlacz na magistrali I2C. Poprzez złącze CON1 należy doprowadzić napięcie zasilające wyświetlacz (2,7...5,5 V) oraz sygnały szyny I2C(SCL i SDA).
Montaż
Komunikacja pomiędzy układem MAX6953 a mikrokontrolerem sterującym odbywa się w standardowy sposób, czyli rozpoczyna się od wysłania adresu układu na magistrali I2C, następnie wysyłany jest adres rejestru, do którego ma być zapisana wartość, a na samym końcu należy wysłać tą wartość(rys. 4). Większość poleceń jest wysyłana w takim formacie, a jedynie definiowanie własnych znaków przebiega nieco inaczej. W tab. 1 przedstawiono adresy, pod którym będzie się zgłaszał wyświetlacz na magistrali I2C w zależności od usta-
Montaż należy rozpocząć od wlutowania rezystorów, następnie kondensatorów i podstawki pod układ US1(rozmieszczenie elementów przedstawiono na rys. 3). W następnej kolejności należy wlutować zworki JP1 i JP2 oraz złącze CON1. Po zamontowaniu tych elementów można przejść do montażu wyświetlaczy, które są umieszczone od strony ścieżek. Wyświetlacze można wlutować bezpośrednio w płytkę lub umieścić podstawkach wykonanych, na przykład po rozcięciu podstawki precyzyjnej.
Sterowanie pracą wyświetlacza
wienia zworek JP1 i JP2 (stan 0 oznacza zwarcie, stan 1 rozwarcie styków). Jak wspomniano wcześniej w układzie MAX6953 znajduje się generator znaków ASCII, tablica tych Tab. 1. Adres układu MAX6953 na magistrali I2C w zależności od konfiguracji zworek JP2 JP1 Adres 0 0 10100000 0 1 10100010 1 0 10101000 1 1 10101010
znaków jest przedstawiona na rys.5. Oprócz znaków stałych można zdefiniować 24 własne znaki, które umieszczone zostaną w pamięci RAM układu. Wyświetlenie zdefiniowanego znaku odbywa się poprzez wysłanie do wyświetlacza wartości z przedziału 0...23 (pozycje RAM0...RAM23 w tablicy znaków). Do konfiguracji wszystkich parametrów wyświetlanych znaków służy 20 rejestrów zawartych w układzie
Rys. 3. Rozmieszczenie elementów na płytce wyświetlacza
36
Elektronika Praktyczna 11/2004
Wyświetlacz alfanumeryczny LED sterowany I2C Tab. 2. Adresy i funkcje rejestrów układu MAX6953 Adres komendy
Rejestr Nie używany Intensywność znaku 10 Intensywność znaku 32 Ilość znaków Konfiguracja Definicja znaków użytkownika Zarezerwowany Test wyświetlacza Znak 0 bank P0 Znak 1 bank P0 Znak 2 bank P0 Znak 3 bank P0 Znak 0 bank P1 Znak 1 bank P1 Znak 2 bank P1 Znak 3 bank P1 Jednoczesny zapis do banków Jednoczesny zapis do banków Jednoczesny zapis do banków Jednoczesny zapis do banków
P0 P0 P0 P0
i i i i
P1 P1 P1 P1
cyfry cyfry cyfry cyfry
0 1 2 3
MAX6953. Ich adresy oraz funkcje są przedstawione w tab. 2. Funkcje rejestrów są następujące: Intensywność znaku 10, adres 01h zawiera informacje o intensywności świecenia wyświetlaczy 1 i 0. Intensywność może być zmieniana w szesnastu krokach, dlatego dla każdego wyświetlacza jest przeznaczona jedna tetrada bajtu- starsza dla wyświetlacza numer 1, młodsza dla wyświetlacza 0. Wpisanie wartość 0Fh spowoduje, że wyświetlacz 1 będzie świecił z minimalną intensywnością, natomiast wyświetlacz 0 z maksymalną. Intensywność znaku 32, adres 02h - działanie jak poprzednio, ale dotyczy wyświetlacza 3 i 2. Ilość znaków, adres 03h - określa czy układ będzie sterował czterema wyświetlaczami jednokolorowymi czy dwoma dwukolorowymi. Konfiguracja, adres 04hex – rejestr umożliwia ustalenie trybu pracy układu MAX6953. Definicja znaków użytkownika, adres 05h - po wybraniu tego rejestru można przejść do zapisu w pamięci RAM definiowanych znaków. Tab. 3 Przykład definiowania własnych znaków Znak w tablicy Numer definiowanego znaku znaków RAM00 RAM00 RAM00 0 RAM00 RAM00 RAM01 RAM01 RAM01 1 RAM01 RAM01 RAM02 RAM02 RAM02 2 RAM02 RAM02
Elektronika Praktyczna 11/2004
(odczyt (odczyt (odczyt (odczyt
zawsze zawsze zawsze zawsze
zwraca zwraca zwraca zwraca
0) 0) 0) 0)
D15 X X X X X X X X X X X X X X X X X X X X
D14 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
D13 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
Test wyświetlacza, adres 07h - rejestr umożliwia test wyświetlacza poprzez zapalenie wszystkich punktów. Znak 0 bank P0, adres 20h - rejestr należy do grupy rejestrów, których znajduje się informacja jaki znak ma być wyświetlony na danym wyświetlaczu. Rejestry są podzielone na dwa banki P0 i P1. Do każdego banków można zapisywać wartości oddzielnie lub jednocześnie do obu tą samą wartość. Zapis do rejestrów o adresach 20...23h powoduje wpis znaków do banku P0, natomiast do rejestrów o adresach 40...41h powoduje wpis do banku P1. W układzie MAX6953 istnieją jeszcze dodatkowe cztery rejestry o adresach 60...63h. Wpis do tych rejestrów jest jednoznaczny z wpisaniem tej samej wartości do rejestrów banku P0 i P1. Podzielenie pamięci znaków na dwa banki nieco komplikuje obsługę wyświetlacza, ale daje także dodatkowe
D12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
D11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
D10 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
D9 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
D8 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Wartość HEX — 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x20 0x21 0x22 0x23 0x40 0x41 0x42 0x43 0x60 0x61 0x62 0x63
możliwości możliwe do wykorzystania po wprowadzeniu wyświetlacza w tryb migania (blink). Wynika to z faktu, że funkcja blink nie powoduje tylko zapalania i wygaszania wyświetlacza lecz naprzemiennie kieruje na wyświetlacz dane z banku P0 i P1. Co to oznacza? Duża liczba funkcji ułatwia obsługę wyświetlacza, jednak utrudnia „oswojenie” się z układem. Aby ułatwić Czytelnikom zastosowanie prezentowanego wyświetlacza we własnych konstrukcjach na list. 1 przedstawiono gotowe procedury do jego obsługi. Procedury napisane są w języku C, jednak na ich podstawie można stworzyć własne przystosowane do innego języka programowania. W procedurach tych obsługa magistrali I2C została pominięta i fizyczna obsługę portów mikrokontrolera muszą wykonywać dodatkowe procedury. Procedura MAX6953_init(void) inicjalizuje wyświetlacz ustawiając
Rys. 4. Format danych wysyłanych do układu MAX6953 Adres w pamięci znaków (HEX) 0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87 0x88 0x89 0x8A 0x8B 0x8C 0x8D 0x8E
Dane w pamięci znaków D7 D6 D5 D4 0 0 1 1 0 1 0 1 0 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 1 0 0 0 1 0 0
D3 1 0 1 0 1 0 0 1 0 0 0 0 0 1 0
D2 1 0 0 1 1 0 0 1 0 0 0 0 0 0 1
D1 1 0 0 0 1 0 1 1 0 0 1 0 0 0 1
D0 0 1 1 1 0 0 0 1 0 0 0 1 1 1 0
37
Wyświetlacz alfanumeryczny LED sterowany I2C go w tryb aktywny, wyświetlacze zostają wygaszone, zostaje ustawiona maksymalna intensywność świece n i a . Pr o c e d u r ę t ą n a l e ż y
wywołać na samym początku obsługi wyświetlacza. Procedura LED_putc(char character, char digit_position) umożliwia
List. 1. Procedury obsługi wyświetlacza
List. 1. c.d.
#define LED_ADDR 0b10100000 //adres ukladu na szynie I2C #define DIGIT_0_1_INT_REG 0x01 //adres rejestru 0 #define DIGIT_2_3_INT_REG 0x02 //adres rejestru 0 #define CONFIG_REG 0x04 #define char_def_reg 0x05 #define TEST_REG 0x07 //test wyswietlacza #define DIGIT_0_P0 0x20 //adres rejestru cyfry #define DIGIT_1_P0 0x21 //adres rejestru cyfry #define DIGIT_2_P0 0x22 //adres rejestru cyfry #define DIGIT_3_P0 0x23 //adres rejestru cyfry #define DIGIT_0_P1 0x40 //adres rejestru #define DIGIT_1_P1 0x41 //adres rejestru #define DIGIT_2_P1 0x42 //adres rejestru #define DIGIT_3_P1 0x43 //adres rejestru #define DIGIT_0 0x60 //adres rejestru #define DIGIT_1 0x61 //adres rejestru #define DIGIT_2 0x62 //adres rejestru #define DIGIT_3 0x63 //adres rejestru #define CHAR_DEF_START zatek pamieci znakow
/********************************************* *********************************/ /* Wlacza tryb testowy- zapala wszystkie wyswietlacze */ /********************************************* *********************************/ void MAX6953_test_on(void) { MAX6953_write(LED_ADDR, TEST_REG, 0x01); } /********************************************* *********************************/
0 1 2
/********************************************* *********************************/ /* Wylacza tryb testowy- zapala wszystkie wyswietlacze */ /********************************************* *********************************/ void MAX6953_test_off(void) { MAX6953_write(LED_ADDR, TEST_REG, 0x00); } /********************************************* *********************************/
3
cyfry 0 cyfry 1 cyfry 2 cyfry 3 cyfry 0 cyfry 1 cyfry 2 cyfry 3 0x80
//poc-
Led_putc(char character, char digit_position); void MAX6953_init(void); void MAX6953_write(char slave_addr, char command_byte, char data_byte); void MAX6953_LED_clear(); void MAX6953_test_on(void); void MAX6953_test_off(void); void MAX6953_char_def(char char_nr, char def0, char def1, char def2, char def3, char def4); void MAX6953_blink_on(); void MAX6953_blink_off(); /********************************************* *********************************/ /* Inicjalizacja wyswietlacza */ /********************************************* *********************************/ void MAX6953_init(void) { MAX6953_write(LED_ADDR,CONFIG_REG,0x01); //tryb aktywny MAX6953_write(LED_ADDR,DIGIT_0_1_INT_REG,0xFF); //maksymalna moc dla wszystkich MAX6953_write(LED_ADDR,DIGIT_2_3_INT_ REG,0xFF); //wyswietlaczy MAX6953_test_off(); //wylacza tryb testu MAX6953_LED_clear(); //czysci wyswietlacz } /********************************************* *********************************/ /********************************************* *********************************/ /* Zapis komendy i danej */ /********************************************* *********************************/ char MAX6953_write(char slave_addr, char command_byte, char data_byte) { I2C_start(); //I2C start i2c_write(slave_addr & 0xfe); //adres ukladu i2c_write(command_byte); //komenda i2c_write(data_byte); //dana i2c_stop(); //I2C stop } /********************************************* *********************************/ /********************************************* *********************************/ /* Zapis znaku na podany wyswietlacz */ /********************************************* *********************************/ void LED_putc(char character, char digit) { MAX6953_write(LED_ADDR, digit, character);
38
} /********************************************* *********************************/
/********************************************* *********************************/ /* Wlacza mruganie wyswietlacza */ /********************************************* *********************************/ void MAX6953_blink_on(void) { MAX6953_write(LED_ADDR, CONFIG_REG, 0x09); } /********************************************* *********************************/ /********************************************* *********************************/ /* Wlacza mruganie wyswietlacza */ /********************************************* *********************************/ void MAX6953_blink_off(void) { MAX6953_write(LED_ADDR, CONFIG_REG, 0x01); } /********************************************* *********************************/ /********************************************* *********************************/ /* Definiowanie wlasnych znakow, nalezy podac numer znaku 0-23, nastepnie */ /* 5bajtow, znaczace jest 7najmlodszych bitow */ /********************************************* *********************************/ void MAX6953_char_def(char char_nr, char def0, char def1, char def2, char def3, char def4) { //oblicza adres w RAM na podstawie numeru znaku MAX6953_write(LED_ADDR, char_def_reg, ((char_nr*5)+char_def_START)); //zapisuje definiowany znak zerujac najstarszy bit MAX6953_write(LED_ADDR, char_def_reg, def0 & 0x7F); MAX6953_write(LED_ADDR, char_def_reg, def1 & 0x7F); MAX6953_write(LED_ADDR, char_def_reg, def2 & 0x7F); MAX6953_write(LED_ADDR, char_def_reg, def3 & 0x7F); MAX6953_write(LED_ADDR, char_def_reg, def4 & 0x7F); } /********************************************* *********************************/ /********************************************* *********************************/ /* Zapisuje spacje na wszystkie wyswietlacze */ /********************************************* *********************************/ void MAX6953_LED_clear() { MAX6953_write(LED_ADDR, DIGIT_0, ‚ ‚); MAX6953_write(LED_ADDR, DIGIT_1, ‚ ‚); MAX6953_write(LED_ADDR, DIGIT_2, ‚ ‚); MAX6953_write(LED_ADDR, DIGIT_3, ‚ ‚); } /********************************************* *********************************/
wyświetlanie na wyświetlaczu znaku na podanej pozycji. Jako digit_position można podać pozycję zapisu do banku P0, P1 lub do obu jednocześnie. Procedura MAX6953_LED_clear() czyści cały wyświetlacz wpisując na wszystkie pozycje spacje. MAX6953_test_on() włącza tryb testu wyświetlacza, a MAX6953_test_ off() wyłącza ten tryb. Procedura MAX6953_blink_on() włącza tryb mrugania wyświetlacza lub przemiennego wyświetlania znaków zapisanych w bankach P0 i P1. „MAX6953_blink_off ()” wyłącza funkcję mrugania wyświetlacza. Ostatnią funkcją jest funkcja „MAX6953_char_def(char char_nr, char def0, char def1, char def2, char def3, char def4)” i umożliwia definiowanie własnych znaków. Wywołując tą funkcję należy podać aż sześć parametrów: pierwszy określa, który znak będzie definiowany (od 0…23), a kolejne pięć bajtów określa, które punkty wyświetlacza będą zapalone. Na podstawie numeru definiowanego znaku procedura oblicza adres w pamięci RAM układu MAX6953 (obszar definiowanych znaków rozpoczyna się od adresu 80hex) i zapisuje do kolejnych komórek parametry definiowanego znaku. Przy definiowaniu własnych znaków najstarszy bit każdego bajtu należy ignorować, gdyż na wyświetlaczu jest wyświetlane tylko siedem młodszych bitów, przy czym najmłodszy bit oznacza punkt oznacza lewy górny róg wyświetlacza. Przykład definiowania znaków przedstawiono w tab.3. Krzysztof Pławsiuk, EP
WYKAZ ELEMENTÓW Rezystory: R1, R2: 10 kV R3: 56 kV Kondensatory C1: 220 mF/16 V C2: 100 nF C3: 27 pF Półprzewodniki US1: MAX6953 Inne CON1: Goldpin 1x7 męski JP1, JP2: Goldpin 1x2 męski + zworka DP1…DP4: TA20-11EWA Podstawka DIP40
Elektronika Praktyczna 11/2004
P R O J E K T
Embedded ethernet, czêœæ 2 O tym, co siê dzieje w kablu ethernetowym dowiedzieliœmy siê w poprzedniej czêœci cyklu. Teraz czas na przedstawienie mo¿liwoœci realizacji systemu, oczywiœcie pozostaj¹cych w zasiêgu elektronika-hobbysty. Rekomendacje: Artyku³ polecemy wszystkim zainteresownym ³¹cznoœci¹ poprzez ethernet, którzy chcieliby zapoznaæ siê z podstawami dzia³ania sieci i zdobycie tej wiedzy uwieñczyæ samodzielnym wykonaniem mini-serwera sieciowego
Jak? Mo¿liwoœci pod³¹czenia w³asnego urz¹dzenia do sieci Ethernet jest wiele. Wszystko zale¿y od tego, co chcemy osi¹gn¹æ, ile mamy czasu i pieniêdzy. Zazwyczaj istotne jest tak¿e, jakie elementy chcemy ze sob¹ po³¹czyæ – czy wystarczy nam sporadyczne odczytywanie stanu urz¹dzenia przez WWW, czy te¿ chcemy w czasie rzeczywistym przesy³aæ wyniki pomiaru na dysk zdalnego komputera. Przeznaczenie skutkuje okreœleniem minimalnej przepustowoœci ³¹cza, a tym samym typem interfejsu na jego koñcach. Czarna skrzynka Jest to najprostsze rozwi¹zanie i czasami w pe³ni wystarczaj¹ce. Nie musimy wnikaæ w zawi³oœci protoko³ów oraz szczegó³y dzia³ania kontrolera sieciowego. Po prostu wstawiamy dedykowany modu³, ewentualnie instalujemy sterownik na PC i tyle! Wszystko inne jest zaszyte wewn¹trz „czarnej skrzynki”, która powinna byæ ma³a i nie sprawiaæ problemów przy uruchomieniu i póŸniejszym zarz¹dzaniu. Najlepiej by³oby, aby do jej konfiguracji u¿yæ standardowej przegl¹darki WWW. Nie musimy siê niczego uczyæ – po prostu plug and play! Czy coœ takiego istnieje? Ale¿ tak! Wielu producentów oferuje modu³y, które s¹ gotowe do natychmiastowego u¿ycia. Niektóre z nich mieszcz¹ siê nawet wewn¹trz niezbyt wiele powiêkszonego gniazda RJ45. Funkcjonalnie zapewniaj¹ mo¿liwoœæ pod³¹czenia w³asnego urz¹dzenia poprzez interfejs asynchroniczny lub kilka linii we/wy. Sterowniki programowe zazwyczaj umo¿liwiaj¹ „mapowanie” takiego interfejsu jako zwyk³y port COM, co umo¿liwia pracê sieciow¹ za poœrednictwem typowych programów komunikacyjnych np. HyperTerminal.
Elektronika Praktyczna 11/2004
Fot. 4. Wygląd modułu EM100
Jedyn¹ przeszkod¹ w swobodnym u¿ywaniu tego typu modu³ów mo¿e byæ cena, która zazwyczaj wynosi ok. 30...50 Euro. W zamian jednak otrzymujemy bardzo funkcjonalny interfejs, z pe³n¹ obs³ug¹ stron WWW oraz elastyczn¹ konfiguracj¹ linii we/wy. Wydaje siê, ¿e w aplikacjach wymagaj¹cych szybkiej adaptacji istniej¹cego rozwi¹zania do potrzeb pracy sieciowej jest to najwygodniejsze podejœcie. Nale¿y jednak zwróciæ uwagê, ¿e nie wszystkie interfejsy w obudowanym gnieŸdzie RJ45 odpowiadaj¹ gabarytom standardowego gniazda sieciowego. Czasami mo¿e to stanowiæ pewien problem. Jeœli planujemy wykorzystanie interfejsu Ethernet-serial, to u¿yteczne mo¿e okazaæ siê zastosowanie modu³u bez zamontowanego gniazda RJ45. Przyk³adem mo¿e byæ EM100 (fot. 4), pracuj¹cy z zewnêtrznym gniazdem RJ45. Jego wygodn¹ cech¹ jest mo¿liwoœæ samoczynnego sterowania kierunkiem nadawania i odbioru, co znacznie u³atwia jego u¿ycie w aplikacji RS485. Stosunkowo du¿e gabaryty tego modu³u w nowszej wersji - EM120 zosta³y ograniczone do 35x27x9 mm. Dodatkowo powiêkszono bufor ³¹cza szeregowego do 4 kB, co znacznie podnios³o funkcjonalnoœæ tego urz¹dzenia. Podejœcie konstrukcyjne Projektuj¹c nowe urz¹dzenie, zazwyczaj d¹¿ymy do minimalizacji kosztów jego opracowania i póŸniejszej produkcji. Oczywistym jest, ¿e w³aœciwe dopracowanie w pe³ni funkcjonalnego stosu TCP/IP i jego warstw aplikacyjnych nie jest spraw¹ banaln¹. Z tego te¿ wzglêdu wiele firm oferuje gotowe uk³ady scalone, integruj¹ce w swojej
!'
Embedded ethernet
Rys. 5. Schemat blokowy W3100A
strukturze sprzêtow¹ obs³ugê protoko³ów i czasami tak¿e blok MII (Media Independent Interface). Po uzupe³nieniu takiego uk³adu o fizyczny sterownik (PHY) i transformator (MAG) uzyskujemy kompletny interfejs Ethernet. Jak jednak mo¿na siê do niego pod³¹czyæ? Scalone sterowniki funkcjonalne Przyjaznym pod wzglêdem mo¿liwoœci interfejsowych jest uk³ad W3100A (rys. 5). Uk³ad ten w swojej strukturze zawiera sprzêtow¹ obs³ugê protoko³ów, z TCP i UDP w³¹cznie. Komunikacjê z nim mo¿na zrealizowaæ jak ze zwyk³¹ pamiêci¹ równoleg³¹ lub te¿ potraktowaæ go jako jeden z modu³ów magistrali I2C. Do pracy potrzebny jest tak¿e zewnêtrzny uk³ad PHY no i oczywiœcie transformator. Od strony interfejsu projektant dostaje zestaw funkcji API, które wykonuj¹ zadania wysokiego poziomu. Przyk³adowy rozkaz Connect () nawi¹zuje po³¹czenie ze zdalnym serwerem w jednym z 4 mo¿liwych kana³ów. Jego aktualny stan mo¿na na bie¿¹co monitoro-
Fot. 6. Programowalny moduł interfej− sowy IPC@CHIP
"
waæ, odczytuj¹c zawartoœæ rejestru Socket State Register. Uk³ad W3100A jest wygodny w u¿yciu, zw³aszcza, ¿e producent dostarcza tak¿e oprogramowanie w wersji Ÿród³owej do warstw aplikacyjnych (m.in. HTTP, FTP, DHCP). Jeœli nie planujemy wymiany du¿ej liczby danych przez sieæ, to warto siê zastanowiæ nad wykorzystaniem interfejsu I2C, w który jest wyposa¿ony ten modu³. Ograniczy to znacznie liczbê niezbêdnych linii oraz umo¿liwi wspó³pracê z uk³adami nie wyposa¿onymi w zewnêtrzn¹ magistralê. Dla leniwych dostêpne s¹ tak¿e kompletne modu³y – np. IIM7010A, zawieraj¹ce W3100A, RTL8201BL (PHY) oraz MAG-JACK (gniazdo RJ45 zintegrowane z transformatorem). Jeszcze bardziej posuniêta integracja funkcji sieciowych, a tym samym odci¹¿enie programisty od trudów implementacji warstw sieciowych, wystêpuje w nowym uk³adzie iChip CO710 firmy ConnectOne. Posiada on wbudowan¹ obs³ugê tak¿e podstawowych aplikacji (HTTP, TELNET, SMTP), dziêki czemu praca z nim jest wyj¹tkowo u³atwiona. Do komunikacji z hostem mo¿na skorzystaæ z ³¹cza asynchronicznego lub interfejsu równoleg³ego. Oprogramowanie bazuje na rozszerzonym zestawie komend AT+i, które analogicznie jak w przypadku zwyk³ego modemu pozwalaj¹ w pe³ni obs³ugiwaæ po³¹czenie. Uk³ad jest umieszczony w obudowie BGA-121 o gabarytach 10x10x1,2 mm, przez co nie zajmuje zbyt wiele miejsca. Niestety, aktualnie jest dostêpny wy³¹cznie w du¿ych iloœciach, przez co pozostaje poza zasiêgiem dla konstrukcji jednostkowych. Powy¿sze rozwi¹zania zak³adaj¹ u¿ycie zewnêtrznego modu³u lub uk³a-
du scalonego jako sposobu na pod³¹czenie siê do sieci Ethernet. Czasami jednak, zw³aszcza przy tworzeniu nowych urz¹dzeñ, mo¿na oprzeæ siê na konstrukcji zawieraj¹cej wbudowany interfejs Ethernet (blok MAC oraz czasami PHY) oraz wolne zasoby do realizacji w³asnych zadañ. Jednym z mo¿liwych rozwi¹zañ jest uk³ad DS80C400. Jest to uk³ad bazuj¹cy na bardzo szybkim rdzeniu 8051 (75 MHz), wyposa¿ony w blok MAC oraz obs³ugê stosu TCP/IP (v4/v6) „zaszyt¹” w pamiêci ROM. Uk³ad posiada bardzo bogate peryferia (CAN, 1-Wire, 3 UART-y), co przy uzupe³nieniu o 16 MB przestrzeñ adresow¹ pozwala na zbudowanie bardzo wydajnego systemu. Bezp³atne œrodowisko TINI daje mo¿liwoœæ swobody programowania, zaœ obs³uga apletów Java wrêcz nieograniczone w³asnoœci u¿ytkowe. Uk³ady o podobnej funkcjonalnoœci oferuj¹ tak¿e inni producenci (np. DSTni LX firmy Lantronix, IPC@CHIP firmy Beck - fot. 6), przy czym zakres ich w³asnoœci musi byæ ka¿dorazowo dobierany pod k¹tem konkretnego zastosowania. A gdyby tak samemu? Korzystanie z gotowych modu³ów, oprócz niew¹tpliwych zalet, zazwyczaj nie umo¿liwia dog³êbnego poznania dzia³ania uk³adów sieciowych oraz szczegó³ów implementacji ich protoko³ów. Ktoœ móg³by powiedzieæ – po co sobie utrudniaæ ¿ycie? A jednak, jeœli chodzi o maksymaln¹ redukcjê kosztów b¹dŸ niestandardowe potrzeby u¿ycia sieci Ethernet, jedynym rozwi¹zaniem pozostaje zbudowanie i oprogramowanie w³asnego urz¹dzenia. Có¿ wiêc mo¿na zrobiæ w tym zakresie? Po pierwsze sprzêt Do dyspozycji mamy ca³y szereg uk³adów, które mo¿emy wykorzystaæ we w³asnych konstrukcjach. Nie wszystkie umo¿liwiaj¹ prost¹ implementacjê w konstrukcjach amatorskich. Przyk³adowo, chc¹c skorzystaæ z bardzo popularnego uk³adu RTL8139C, wystêpuj¹cego w wielu kartach sieciowych 10/100 Mb, musielibyœmy obs³u¿yæ magistralê PCI 2.0, co jest poza zasiêgiem prostych mikrokontrolerów. Co wiêc im pozostaje, aby staæ siê Ethernet-ready? Bardzo popularne mikrokontrolery rodziny AVR, 8051 oraz PIC zazwyczaj posiadaj¹ mo¿liwoœæ obs³ugi zewnêtrznej magistrali adresowej lub chocia¿by jej emulacji za poœrednictwem portów we/wy. Mo¿na je wykorzystaæ do pod³¹-
Elektronika Praktyczna 11/2004
czenia i obs³ugi kontrolera sieci, w skrócie NIC (Network Interface Controller). Uk³ady te posiadaj¹ zazwyczaj magistralê 8/16-bitow¹ oraz linie adresowe i steruj¹ce typowe dla pamiêci równoleg³ych. Mo¿na je wiêc bez problemu sprz¹c z systemem mikroprocesorowym. Na polskim rynku dostêpne s¹ m.in. uk³ady firmy Crystal CS8900A oraz Realtek RTL8019AS (rys. 7). Obydwa z nich integruj¹ w sobie kontroler MAC, PHY oraz du¿y bufor na ramki nadawcze i odbiorcze. Komunikacjê z nimi mo¿na zrealizowaæ w trybie 8-bitowym, zaœ liczbê linii adresowych ograniczyæ do kilku (dla trybu I/O). Uk³ady te obs³uguj¹ ³¹cze o szybkoœci 10 Mb. Po do³¹czeniu transformatora tworz¹ kompletny front-end do sieci Ethernet. Zestaw przydatnych linków http://www.poweroverethernet.com http://standards.ieee.org/regauth/ http://www.faqs.org/rfcs/std/std−index.html http://www.beck−ipc.com http://www.smsc.com/main/catalog/lan9 1c111.html http://www.realtek.com.tw http://www.mcselec.com/easy_tcp_ip.htm http://www.cmx.com http://www.opentcp.org/
Elektronika Praktyczna 11/2004
Wspó³praca z uk³adem NIC ogranicza siê do zaprogramowania rejestrów konfiguracyjnych oraz wysy³aniu i odbieraniu ramek Ethernet. Ca³a obs³uga protoko³ów musi znaleŸæ siê po stronie procesora steruj¹cego. Ale nie ma siê czego obawiaæ – w prostej wersji implementacja HTTP ze wszystkimi warstwami modelu OSI mo¿e siê zmieœciæ w 6...8 kB pamiêci 8051. Jeœli wymagana jest praca z szybkoœci¹ 10/100 Mb, to mo¿na skorzystaæ z uk³adu LAN91C111, produkowanego przez firmê SMSC. Pozwala on elastycznie dopasowaæ siê do wielu typów magistral (8/16 bit, Intel/Motorola), przy zachowaniu ³atwoœci jego programowania. Po drugie oprogramowanie Jak to zwykle bywa w systemach mikroprocesorowych wykonanie sprzêtu to znacznie mniej ni¿ po³owa sukcesu. Zaimplementowanie modelu OSI dla niewprawnego programisty mo¿e byæ przeszkod¹ nie do pokonania. Dlatego zawsze na pocz¹tku najlepiej jest skorzystaæ z gotowych rozwi¹zañ i przyk³adów. Wiele firm programistycznych oferuje gotowe biblioteki sieciowe, obs³uguj¹ce wiêkszoœæ protoko³ów i aplikacji.
Szczególnie interesuj¹ce s¹ te rozwi¹zania, które pozwalaj¹ zminimalizowaæ wymagania odnoœnie wielkoœci pamiêci programu i danych, a tym samym móc je wykorzystywaæ na popularnych mikrokontrolerach. Jednym z liderów w tej dziedzinie jest firma CMX, oferuj¹ca kilka pakietów oprogramowania, zoptymalizowanych pod k¹tem procesorów 8 i 16-bitowych. Przyk³adowy CMXMicroNet zawiera obs³ugê protoko³ów TCP/IP, HTTP, TFTP i kilku innych. U¿ytkownik pakietu dostaje wersje Ÿród³owe w C, przy czym dodatkowo s¹ one wygodnie zarz¹dzane przez program konfiguracyjny. Istotne jest, ¿e finalna aplikacja nie jest obarczona ¿adnymi dodatkowymi op³atami licencyjnymi. Nale¿y na to zwracaæ uwagê przy wyborze bibliotek do zastosowañ komercyjnych. Mi³oœnicy Bascoma tak¿e mog¹ skorzystaæ z gotowego rozwi¹zania, przygotowanego dla procesorów AVR. Oferowany pakiet Easy-TCP jest dedykowany do wspó³pracy z modu³ami opartymi o W3100A. Jeœli planujemy dog³êbne zapoznanie z funkcjonowaniem protoko³ów sieciowych, realizuj¹c w³asny uk³ad oparty o procesory PIC18, to godny polecenia jest pakiet oprogramowania TCP/IP,
"
Embedded ethernet
Rys. 7. Przykładowa aplikacja RTL8019AS
udostêpniany nieodp³atnie na stronie Microchipa. Przejrzystoœæ kodu Ÿród³owego wraz z niezbêdnymi komentarzami, powoduje, ¿e jest ³atwy do zrozumienia, jest nawet przez tych, którzy po raz pierwszy zetkn¹ siê z zagadnieniami programowania sieciowego. Zestaw dostêpnych aplikacji obejmuje HTTP, FTP, DHCP, wraz z niezbêdnymi protoko³ami ni¿szych warstw – TCP/IP, ARP, UDP. Mo¿liwe jest tak¿e skorzystanie z protoko³u SLIP, jeœli chcemy wykorzystywaæ ³¹cze szeregowe do obs³ugi Internetu. Co jest bardzo istotne – na etapie kompilacji mo¿na wybraæ funkcjê, jak¹ bêdzie realizowa³a finalna aplikacja, co pozwala elastycznie gospodarowaæ zazwyczaj skromnymi zasobami pamiêci.
"
Jeœli chcielibyœmy bazowaæ na innych typach mikrokontrolerów lub uk³adów sieciowych, to mo¿emy skorzystaæ z bardzo popularnego i przyjaznego zestawu bibliotek uIP oraz IwIP. Zosta³y one przygotowane z myœl¹ o dowolnych procesorach (ANSI C), zaœ ich sprzêgniêcie z typowymi kontrolerami sieci (RTL8019AS, CS8900A) wymaga modyfikacji jedynie kilku funkcji. Wiêkszoœæ wykonywanych zadañ w tym œrodowisku opiera siê na wywo³ywaniu funkcji u¿ytkownika (callback) po wyst¹pieniu okreœlonego stanu (np. odebranie ramki, przeterminowanie itp.), co uwalnia procesor od ¿mudnego przegl¹dania i analizy stanu danego po³¹czenia sieciowego. Nieco bardziej rozbudowane wersje bibliotek sieciowych oferuje Viola
Systems. S¹ one przeznaczone g³ównie dla procesorów 16-bitowych (M16C, MB90, H8), chocia¿ mo¿na znaleŸæ tak¿e ich adaptacjê dla popularnej rodziny 8051. Udostêpniane aplikacje zawieraj¹ obs³ugê poczty e-mail, telnet i HTTP. Praktyczny wybór docelowej biblioteki, jeœli oczywiœcie nie chcemy jej tworzyæ samodzielnie, powinien byæ zwykle poprzedzony realizacj¹ prostego projektu, zazwyczaj bazuj¹cego na wersji ewaluacyjnej danego pakietu. Do jego uruchomienia i przetestowania mo¿liwoœci wygodnie jest u¿yæ prostego zestawu startowego, o szczegó³ach wykonania którego napiszemy w ostatniej czêœci naszego cyklu. Grzegorz Oleszek
[email protected]
Elektronika Praktyczna 11/2004
S P R Z Ę T
Atak
-a
Strategia dzia³ania producentów uk³adów PLD uleg³a w ostatnich latach radykalnej zmianie: nie traktuj¹ produkowanych przez siebie uk³adów jak „darów niebios” dla konstruktorów jak by³o to jeszcze klika lat temu, lecz jak podzespo³y, do korzystania z których nale¿y ich zachêciæ i u³atwiæ prze³amanie bariery mentalnej. Zmiana sposobu myœlenia doskonale rokuje nowym generacjom uk³adów PLD - teraz bêdzie im zdecydowanie ³atwiej „zejœæ pod strzechy”.
Elektronika Praktyczna 11/2004
"!
S P R Z Ę T
Tanio i nowoczeœnie Prezentowany zestaw daje rzadk¹ okazjê do poznania z bliska mo¿liwoœci wspó³czesnych uk³adów FPGA z „górnej pó³ki”. Dzia³anie Xilinx'a nie jest oczywiœcie bezinteresowne, ale taki sposób zdobywania klientów nale¿y pochwaliæ. Czêsto spotykam siê ze stwierdzeniami (tak¿e wœród koresponduj¹cych ze mn¹ Czytelników EP), ¿e stosowanie uk³adów programowalnych w projektach jest zbyt kosztowne, kupienie niewielkich iloœci tych uk³adów a zdobycie narzêdzi projektowych bardzo trudne. Na ³amach EP uparcie zwalczam te pogl¹dy, bowiem od co najmniej kilku lat nie s¹ one prawdziwe! Uk³ady PLD stania³y wielokrotnie, bez problemów s¹ dostêpne doskona³e, bezp³atne programy narzêdziowe niewiele lub wcale nie ustêpuj¹ce wersjom komercyjnym, powsta³y tak¿e sklepy, w których mo¿na kupiæ detalicznie uk³ady PLD. Najpowa¿niejsz¹ obecnie przeszkod¹, na jak¹ natrafiaj¹ pocz¹tkuj¹cy konstruktorzy, s¹ wysokie koszty zakupu uniwersalnych zestawów startowych. Co gorsza, w przypadku uk³adów
Jak dzia³a FPGA? Klasycznym elementem architektury uk³adów FPGA s¹ tablice LUT, czêsto zwane generatorami funkcji logicznych. Realizuj¹ one ustalon¹ przez u¿ytkownika funkcjê logiczn¹ 3...5 zmiennych. Za konfiguracjê LUT odpowiada pamiêæ konfiguracji SRAM, której zawartoœæ trzeba odtwarzaæ po w³¹czeniu zasilania uk³adu. Do tego celu niezbêdna jest zewnêtrzna pamiêæ nieulotna - Platform Flash w przypadku uk³adów firmy Xilinx.
""
Fot. 1.
Rys. 2.
dostêpnych wy³¹cznie w obudowach BGA i PGA wystêpuje koniecznoœæ zastosowania obwodu drukowanego 4warstwowego, co wyklucza mo¿liwoœæ wykonania takiego zestawu we w³asnym zakresie. Z technologi¹ wielowarstwow¹ nie radzi sobie tak¿e wielu krajowych producentów PCB. Wagê problemu... ...dostrzeg³a firma Xilinx, wprowadzaj¹c do swojej oferty zestawy startowe dla uk³adów Spartan-3 (Spartan-3 Starter Kit - fot. 1). O samych uk³adach Spartan-3 pisaliœmy w EP3/2004 (!). Zestawy, opracowane wspólnie z firm¹ Digilent, mo¿na krótko scharakteryzowaæ w ten sposób: s¹ tanie i maj¹
ogromne mo¿liwoœci. Cena zestawu wynosi 99 USD, w jego sk³ad wchodz¹ wszystkie elementy niezbêdne do natychmiastowego rozpoczêcia pracy (rys. 2): – p³yta g³ówna z uk³adem XC3S200 w obudowie BGA (fot. 3), – programator ISP kompatybilny z Parallel Cable III firmy Xilinx, – zestaw p³yt CD-ROM z oprogramowaniem narzêdziowym WebPack ISE, symulatorem HDL ModelSIM, dokumentacj¹ i przyk³adami, – drukowany podrêcznik Introduction to Programmable Logic, skrótowo przedstawiaj¹cy tematykê PLD i obs³ugê narzêdzi firmy Xilinx, – zasilacz sieciowy.
Elektronika Praktyczna 11/2004
S P R Z Ę T
Fot. 3.
Zastosowany w zestawie uk³ad FPGA ma na tyle du¿e zasoby logiczne, ¿e mo¿na w nim bez trudu zaimplementowaæ rdzeñ mikrokontrolera (jak choæby ’51, czy „miniaturowy” PicoBlaze) z zestawem peryferiów. Do dyspozycji u¿ytkownika udostêpniono 173 konfigurowalne linie I/O, 2 asynchroniczne pamiêci SRAM o organizacji 16 x 256 k, które mog¹ pracowaæ w konfiguracjach: 32 x 256 k, 16 x 512 k, a tak¿e jako dwie niezale¿ne pamiêci 16 x 256 k.
– – – – –
mentowana w FPGA mo¿e siê komunikowaæ z otoczeniem, 4-przyciskowa klawiatura uniwersalna (wykonana na mikroprze³¹cznikach), 8 diod LED, podstawka dla dodatkowego generatora przebiegu zegarowego, 8 prze³¹czników bistabilnych, gniazdo PS2, do którego mo¿na do³¹czyæ standardow¹ myszkê lub klawiaturê PC, z mo¿liwoœci¹ wybrania napiêcia zasila-
Fot. 4.
„Rozrywkowe” peryferia Zestaw zintegrowanych na p³ytce elementów peryferyjnych da du¿o radoœci elektronikom lubi¹cym wyzwania. Na p³ytce znajduj¹ siê bowiem: – z³¹cze umo¿liwiaj¹ce do³¹czenie monitora VGA (mo¿liwoœæ wyœwietlania obrazu w 8 kolorach), – gniazdo RS232, za pomoc¹ którego logika zaimple-
Elektronika Praktyczna 11/2004
j¹cego (3,3/5 V) do³¹czane urz¹dzenie, – z³¹cza, na które wyprowadzono konfigurowalne linie I/O, linie zasilaj¹ce i sygna³y pomocnicze wystêpuj¹ce w urz¹dzeniu. Tak du¿y wybór ró¿norodnych elementów peryferyjnych oraz du¿e zasoby logiczne uk³adu FPGA pozwalaj¹ zaimplemento-
"#
S P R Z Ę T Tab. 1. Zestawienie najwa¿niejszych parametrów uk³adów z rodziny Spartan-3 Parametr
Typ uk³adu XC3S50
XC3S200
XC3S400
XC3S1000
XC3S1500
XC3S2000
XC3S4000
XC3S5000
Liczba bramek przeliczeniowych
50000
200000
400000
1000000
1500000
2000000
4000000
5000000
Liczba komórek logicznych
1728
4320
8064
17280
29952
46080
62208
74880
Sprzêtowe multiplikatory
4
12
16
24
32
40
96
104
Pojemnoœæ pamiêci Block RAM
72kb
216 kb
288 kb
432 kb
576 kb
720 kb
1728 kb
1872 kb
Pojemnoœæ pamiêci rozproszonej
12kb
30 kb
56 kb
120 kb
208 kb
320 kb
432 kb
520 kb
Liczba DCM
2
4
4
4
4
4
4
4
Maksymalna liczba ró¿nicowych linii I/O
56
76
116
175
221
270
312
344
Maksymalna liczba asymetrycznych linii I/O
124
173
264
391
487
565
712
784
waæ w prezentowanym zestawie bardzo wiele, tak¿e „du¿ych” przyk³adów. Zestaw doskonale spisuje siê m.in. jako platforma sprzêtowa dla „miêkkich” procesorów Blaze firmy Xilinx, w których to aplikacjach pamiêæ SRAM spe³nia rolê pamiêci programu. Doskona³¹ prezentacjê mo¿liwoœci samego FPGA, jak i wspó³pracuj¹cych z zestawem peryferiów zestawu,
zawiera pamiêæ konfiguracji Flash (Platform Flash) dostarczana jako standardowe wyposa¿enie zestawu. Uk³ad FPGA po skonfigurowaniu zawartoœci¹ tej pamiêci wyœwietla obraz na monitorze VGA (monitor stanu przycisków), daje efektowny pokaz na diodach LED i wyœwietla przewijaj¹cy siê napis na wyœwietlaczu LED. U¿ytkownik ma oczywiœcie mo¿liwoœæ modyfikowania zawartoœci
pamiêci Flash, ale w wiêkszoœci przypadków do prób wystarczy korzystanie z mo¿liwoœci wpisywania danych bezpoœrednio do pamiêci konfiguruj¹cej SRAM uk³adu FPGA poprzez interfejs JTAG. Dziêki takiemu rozwi¹zaniu wielokrotne próby rekonfigurowania uk³adu FPGA nie maj¹ ¿adnego wp³ywu na ¿ywotnoœæ nieulotnej pamiêci konfiguracji. Producent przewidzia³ mo¿liwoœæ dostêpu
do pamiêci Flash i uk³adu FPGA za poœrednictwem jednego z programatorów: Parallel Cable III lub Parallel Cable IV. £y¿ka dziegciu Kilkutygodniowe testy zestawu wykaza³y, ¿e konstruktorzy przemyœleli jego budowê. Zawiera on peryfe-
ria bardzo przydatne w prawdziwych aplikacjach, wiêc u¿ytkownicy zestawu maj¹ do dyspozycji prawdziwy „poligon” doskonale dopasowany do realiów wspó³czesnej techniki. Okaza³o siê jednak, ¿e podczas projektowania p³ytki drukowanej pope³niono b³¹d: gniazdo zasilania i z³¹cze VGA umieszczono zbyt blisko siebie, co
powoduje, ¿e jednoczesne umieszczenie w nich wtyków jest bardzo utrudnione (fot. 4), w niektórych przypadkach mo¿e nie byæ mo¿liwe. Mo¿na sobie oczywiœcie z tym problemem poradziæ, ale odbiera to nieco uroku obcowania z „HiTech”. Piotr Zbysiñski, EP
[email protected]
CLB w Spartanach-3 Podstawowymi elementami logicznymi, za pomoc¹ których s¹ budowane w uk³adach Spartan-3 struktury logiczne, s¹ bloki CLB (Configurable Logic Block). W jednym uk³adzie Spartan-3 mo¿e ich byæ od 192 do 8320. Bloki CLB sk³adaj¹ siê z czterech konfigurowalnych bloków o nazwie slice, pogrupowanych w dwuelementowe zespo³y. Budowa wszystkich slice'y w uk³adzie jest identyczna, wyj¹tkiem jest wyposa¿enie slice'y oznaczonych SLICEM w 16bitowy rejestr przesuwny oraz mo¿liwoœæ wykorzystania pamiêci konfiguruj¹cej LUT (Lookup Table) jako rozproszonej pamiêci danych SRAM. Obydwie tablice LUT s¹ czterowejœciowe i pozwalaj¹ na utworzenie dowolnej funkcji logicznej czterech zmiennych. Oprócz dwóch niezale¿nych generatorów funkcji logicznych LUT ka¿dy slice wyposa¿ono w dwa przerzutniki D.
Elektronika Praktyczna 11/2004
"%
S P R Z Ę T
Wydawa³oby siê, ¿e mamy w Polsce tak wielu dobrych producentów transformatorów i d³awików, ¿e firmy zagraniczne nie maj¹ czego u nas szukaæ. Jak siê jednak okazuje, praktyka daleko odbiega od teorii, dziêki czemu polscy konstruktorzy maj¹ dostêp do bogatej oferty wyrobów niemieckiej firmy Era, jednego z wiêkszych producentów elementów indukcyjnych. Krótk¹ charakterystykê wyrobów tej firmy przedstawiamy w artykule. Ze wzglêdu na specyfikê EP, w prezentacji skupimy siê na uniwersalnej czêœci oferty firmy Era. Oprócz kilku linii transformatorów nale¿¹cych do tej grupy wyrobów, w ofercie Ery znajduj¹ siê wyroby specyficzne, opracowywane na zamówienia odbiorców z rynku samochodowego, lotniczego, kolejowego, producentów sprzêtu AGD, systemów alarmowych oraz automatyki. S¹ to g³ównie wi¹zki kablowe, ale tak¿e ró¿nego rodzaju elementy i urz¹dzenia elektromagnetyczne (jak choæby napêdy zaworów, blokad, specjalne wersje silników elektrycznych, napêdy przekaŸników,
Fot. 2. Transformatory EI30 o mocy 0,5…2,8 VA
"&
Fot. 1. Transformatory EE20 o mocy 0,08…0,5 VA
anteny do systemów RFID, czujniki udarów, cewki zap³onowe, przek³adniki pr¹dowe itp.). Ta czêœæ oferty produkcyjnej jest skierowana g³ównie do klientów przemys³owych, ale o jej powodzeniu œwiadczy fakt, ¿e wyroby na specjalne zamówienia s¹ produkowane nie tylko w Europie (Niemcy), lecz tak¿e w Tunezji i Kanadzie - w filiach projektowo-produkcyjnych Ery.
Fot. 3. Transformatory EI38 o mocy 3,2…4 VA
Równie du¿ym powodzeniem ciesz¹ siê standardowe transformatory oferowane w nastêpuj¹cych grupach produkcyjnych: – Miniaturowe EE 20 o mocy 0,08…0,5 VA. Wygl¹d kilku transformatorów z tej grupy pokazano na fot. 1. Charakteryzuj¹ siê one niewielkimi wymiarami, przystosowaniem do bezpoœredniego monta¿u na PCB oraz zamkniêciem transformatora w obudowie z niepalnego, trudnotopliwego tworzywa sztucznego. – Rodzina EI 30 - s¹ to transformatory o mocy 0,5…2,8 VA. Ich wygl¹d pokazano na fot. 2. Konstrukcyjnie s¹ one praktycznie identyczne z wczeœniej opisanymi, ró¿ni¹ siê przede wszystkim wymiarami i ciê¿arem. – Rodzina EI 38 - transformatory o mocy 3,2…4 VA (fot. 3), tak¿e przy-
Elektronika Praktyczna 11/2004
S P R Z Ę T stosowane do monta¿u bezpoœrednio na PCB. – Transformatory o mocy dochodz¹cej do 50 VA, wchodz¹ce w sk³ad rodzin EI 42…66. S¹ one oferowane w dwóch wersjach obudów: standardowej (jak dotychczas wymienione) - do monta¿u bezpoœrednio na PCB oraz wyposa¿onych w ró¿nego rodzaju uchwyty mocuj¹ce oraz (w niektórych wykonaniach) zaciski przystosowane do do³¹czania konektorów (fot. 4), co pozwala na wygodny monta¿ transformatorów np. na chassis urz¹dzenia lub na dowolnym innym elemencie konstrukcyjnym obudowy. Takie rozwi¹zanie ma szczególnie du¿e znaczenie w przypadku urz¹dzeñ nara¿onych na udary i przyspieszenia - du¿a masa transformatora (nawet powy¿ej 1 kg) mo¿e spowodowaæ mechaniczne uszkodzenie obwodu drukowanego. Osobn¹ grupê wyrobów stanowi¹ transformatory niskoprofilowe z serii UI (fot. 5). Producent oferuje wersje o mocy 0,8…30 VA, a wysokoœæ ich obudowy (w zale¿noœci od modelu i mocy wyjœciowej) mieœci siê w przedziale 15…35 mm. Przedstawione dotychczas rodziny transformatorów znajduj¹ siê w sta³ej ofercie firmy Era. Uzwojenia pierwotne prezentowanych transformatorów s¹ przystosowane do zasilania napiêciami 115 lub 230 VAC, dostêpne s¹ tak¿e warianty z dwoma uzwojeniami, które umo¿liwiaj¹ pracê z obydwoma napiêciami. Zastosowane rozwi¹zania technologiczne powoduj¹, ¿e producent dopuszcza równoleg³e ³¹czenie uzwojeñ wtórnych - w celu zwiêkszenia wydajnoœci pr¹dowej - we wszystkich standardowych typach transformatorów. Producent oferuje ponadto specjalne wersje obudów (np. przystosowane do monta¿u na szynach DIN fot. 6), transformatory wyposa¿one w wyprowadzenia kablowe (fot. 7). Dostêpne s¹ tak¿e transformatory bez zewnêtrznych obudów, a tak¿e wersje z wbudowanymi polimerowymi bezpiecznikami termicznymi, które zapobiegaj¹ zbytniemu przeci¹¿aniu uzwojenia wtórnego. Wszystkie transformatory produkowane przez firmê Era posiadaj¹ atesty bezpieczeñstwa (wiêkszoœæ posiada 11 znaków certyfikacyjnych), a prowadzone przez producenta statystyczne bada-
#
Fot. 4. Era oferuje transformatory także z wyprowadzeniami konektorowymi
Fot. 5. Transformatory niskoprofilowe z serii UI
Fot. 6. Dostępne są wersje obudów przystosowanych do montażu na szy− nie DIN
nia jakoœci gwarantuj¹ wysok¹ niezawodnoœæ i trwa³oœæ wyrobów. Czy znajd¹ uznanie na rynku? Czas poka¿e. KK
Fot. 7. Na zamówienia są dostępne transformatory z wyprowadzeniami wykonanymi z przewodów
Informacje dodatkowe Dystrybutorem produktów firmy Era w Polsce jest Euroelektronik Sp. J., tel. (12) 412 66 73, e-mail:
[email protected], www.euroelektronik.com.pl
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
STMicroelectronics i
DALI (Digital Addressable Lighting Interface) to uznany na œwiecie interfejs dla urz¹dzeñ steruj¹cych oœwietleniem, opracowany wspólnie przez czo³owych producentów sprzêtu oœwietleniowego i podzespo³ów elektronicznych.
Interfejs DALI normalizuje dokument IEC (EN) 60929 E4. Tematyk¹ DALI zajmuje siê równie¿ grupa robocza powo³ana przez najwiêksze firmy oœwietleniowe, wœród których s¹ m.in. Lutron, Osram, Philips Lighting i Tridonic. Grupa ma oficjaln¹ stronê w Internecie pod adresem: www.dali-ag.org. Systemy wykorzystuj¹ce magistralê DALI s¹ bardzo skutecznym rozwi¹zaniem do zautomatyzowanego sterowania oœwietleniem pomieszczeñ i diagnostyki Ÿróde³ œwiat³a. Z tych wzglêdów interfejs ten nadaje siê szczególnie do systemów sterowania w inteligentnych budynkach, gdzie wymagany jest zdalny nadzór nad systemem oœwietlenia i szybkie dostarczanie informacji dla obs³ugi serwisowej. O powszechnej akceptacji standardu DALI zadecydowa³y jego dwie podstawowe zalety: ³atwoœæ obs³ugi i bardzo szeroki zakres realizowanych funkcji. Zalety te wynikaj¹ z nastêpuj¹cych w³aœciwoœci tego interfejsu: – architektury Master-Slave (rys. 1), – prostoty okablowania – wszystkie elementy systemu s¹ po³¹czone ze sob¹ zwyczajnym przewodem piêcio¿y³owym, a nie specjalnym kablem, – mo¿liwoœci instalowania ró¿nego typu czujników/sensorów (czujniki œwiat³a, pasywne czujniki podczerwieni itp.), – mo¿liwoœci pod³¹czenia do 64 urz¹dzeñ do jednej linii steruj¹cej o d³ugoœci do 300 metrów (dla ograniczenia spadku napiêcia do 2 V),
Elektronika Praktyczna 11/2004
– odpornoœci linii steruj¹cej na odwrotn¹ polaryzacjê, – mo¿liwoœci przydzielenia ka¿dego, posiadaj¹cego indywidualny adres, urz¹dzenia do dowolnej grupy i schematu oœwietleniowego, przy czym maksymalna iloœæ grup i schematów mo¿e osi¹gn¹æ 16, – ³atwoœci definiowania schematów oœwietleniowych, – mo¿liwoœci synchronizacji stanów przejœciowych dla tych schematów, – logarytmicznej charakterystyki œciemniania odpowiadaj¹cej w³aœciwoœciom ludzkiego oka, – za³¹czania, selektywnego wy³¹czania i œciemniania za poœrednic-
ko zmienione bez jakichkolwiek zmian w sprzêcie, – ³atwoœci modyfikacji systemu - w razie potrzeby rozbudowy systemu nowe elementy mog¹ byæ do³¹czone w dowolnym miejscu do kabla DALI, – obecnoœci kana³u zwrotnego – przep³yw informacji w kablu po³¹czeniowym jest dwukierunkowy. Oprócz rozkazów wysy³anych przez mikrokontrolery kabel mo¿e tak¿e przenosiæ informacje statusowe o warunkach pracy lampy takich jak poziom oœwietlenia, status wêz³a, uszkodzenia itp.,
Rys. 1.
twem linii steruj¹cej bez u¿ycia dodatkowych kosztownych przekaŸników, – niezale¿noœci fazy napiêcia sieci dla uk³adu zasilania od linii steruj¹cej, – ³atwoœci rekonfiguracji systemu dzia³anie systemu mo¿e byæ szyb-
– mo¿liwoœæ zintegrowania z systemami automatyzacji budynku i automatyki przemys³owej. Producenci oferuj¹ szeroki wybór bramek DALI umo¿liwiaj¹cych po³¹czenie z systemami automatyzacji budynków wykorzystuj¹cymi EIB, LON i Ethernet, jak równie¿ z wy¿ej
#
P O D Z E S P O Ł Y klasyfikowanymi systemami sterowania oœwietleniem. Powoduje to, ¿e systemy wykorzystuj¹ce interfejs DALI mo¿na ³atwo zintegrowaæ z ju¿ istniej¹cymi systemami w inteligentnych budynkach. Mikrokontroler ST7DALI Produkowany przez STMicroelectronics wyspecjalizowany mikrokontroler ST7DALI powsta³ na bazie standardowych mikrokontrolerów ST7LITE2. Jest to pierwszy mikrokontrontroler 8-bitowy wyposa¿ony w pamiêæ Flash zdolny do obs³ugi protoko³u komunikacyjnego DALI za pomoc¹ wbudowanego modu³u peryferyjnego, zwanego DCM (Dali Communication Module). Ogólne w³aœciwoœci tego mikrokontrolera s¹ takie, jak dla innych ST7LITE2, czyli: 8 kB pamiêci programu, pamiêæ danych EEPROM o pojemnoœci 256 B, wewnêtrzny oscylator RC 1 MHz (1%), 10-bitowy przetwornik A/C, dwa timery z WDG, 12bitowy timer typu Auto-reload i interfejs komunikacyjny SPI. DCM to modu³ komunikacji szeregowej zaprojektowany dla cyfrowych balastów (stateczników) elektronicznych, stosowanych w uk³adach zasilania lamp fluorescencyjnych. Jego g³ówne cechy to: – 8-bitowy rejestr adresowy dla transmisji wprzód wykorzystywany przy adresowaniu do 64 balastów, – szerokoœæ pasma 1,2 kHz ±10% dla transmisji wprzód i wstecz, – 8-bitowe rejestry danych dla transmisji dwukierunkowej, – przerwanie maskowalne. W protokole DALI stosuje siê dwufazowe kodowanie przesy³anych znaków (Manchester). Dane s¹ przesy³ane szeregowo, asynchronicznie. Wszystkie bity ramki s¹ zakodowane bifazowo, za wyj¹tkiem dwóch bitów stopu, a okres bitu dwufazowego jest równy 833,33 µs ±10%. Przy transmisji danych wprzód ramka sk³ada siê z 19 bitów: bitu startowego (logicznej 1), bajtu adresowego, bajtu danych i 2 bitów stopu (idle), jak pokazano na rys. 2. Ramka transmisji zwrotnej sk³ada siê z 11 bitów: bitu startowego (logicznej 1), bajtu danych i 2 bitów stopu. W obu przypadkach bity stopu nie zawieraj¹ zmiany fazy. Czas stabilizacji (settling time) pomiêdzy kolejnymi ramkami z transmisj¹ wprzód wynosi co najmniej 9,17 ms, podczas gdy pomiêdzy
#
Rys. 2.
Rys. 3.
Rys. 4.
ramk¹ tego rodzaju a ramk¹ zwrotn¹ zawiera siê w przedziale od 2,92 ms do 9,17 ms. Jeœli ramka zwrotna nie zosta³a zapocz¹tkowana po up³ywie 9,17 ms, interpretuje siê to jako brak odpowiedzi. W przypadku naruszenia zasad kodowania ramka jest ignorowana. Sposoby implementacji ST7DALI Mikrokontroler ST7DALI mo¿e wspó³pracowaæ z uk³adem sterowania (sterownikiem) balastu lampy w jednej z dwóch topologii. Pierwsza z nich charakteryzuje siê tym, ¿e mikrokontroler uczestniczy tylko w komunikacji (rys. 3). Druga ró¿ni siê od pierwszej tym, ¿e ST7DALI otrzymuje dodatkowo informacjê o stanie lampy, obs³uguje wiêc nie tylko komunikacjê, ale i uczestniczy w sterowaniu (rys. 4).
Sterowanie prac¹ lampy fluorescencyjnej przez mikrokontroler odbywa siê poprzez zmianê czêstotliwoœci i wspó³czynnika wype³nienia przebiegu doprowadzanego do uk³adu steruj¹cego pó³mostkiem (H-B driver). Kontrolowane s¹ w ten sposób takie parametry jak: – czêstotliwoœæ przebiegu podczas wstêpnego wygrzewania katod i czas jego trwania, – czêstotliwoœæ przebiegu podczas zap³onu i czas jego trwania, – czêstotliwoœæ pracy lampy, – czêstotliwoœæ pracy w stanie œciemnienia, okreœlona przez dane wejœciowe. Mikrokontroler ST7DALI odbiera tak¿e sygna³y o b³êdach i samoczynnie odpowiednio na nie reaguje: – w przypadku stwierdzenia przekroczenia bezpiecznej wartoœci
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Fot. 5.
Rys. 6.
napiêcia – wy³¹cza pó³mostek, – w przypadku stwierdzenia braku obci¹¿enia (lampy) – wy³¹cza pó³mostek i wznawia sekwencjê startow¹ po ponownym w³o¿eniu lampy. Mikrokontroler zapewnia równie¿ dwukierunkow¹ komunikacjê do i od balastu, w tym:
– doprowadzenie sygna³u œciemniania z analogowego systemu 1...10 V, – selektywne œciemnianie lub wy³¹czanie oœwietlenia na sygna³ ze sterownika, – przekazanie informacji o stanie balastu do nadrzêdnego sterownika.
#"
Zestaw ewaluacyjny ST7DALI STMicroelectronics jako pierwszy producent pó³przewodników zaoferowa³ nie tylko podzespo³y niezbêdne do realizacji elektronicznego balastu dla lamp fluorescencyjnych, takie jak wysokonapiêciowy sterownik (o oznaczeniu L6384) i kontroler (o nazwie L6574), ale tak¿e mikrokontroler z wbudowanym dekoderem protoko³u DALI. Aby umo¿liwiæ zapoznanie siê i ocenê oferowanego rozwi¹zania, firma przygotowa³a zestaw ewaluacyjny ST7DALI-EVAL (fot. 5). Zestaw sk³ada siê z p³yty Master, pod³¹czanej do komputera PC przez RS232 i p³ytek Slave oraz oczywiœcie pakietu oprogramowania. Oprogramowanie umo¿liwia wygodn¹ obs³ugê zestawu, wysy³anie rozkazów w standardzie DALI i kontrolê stanu elementów systemu za poœrednictwem okna g³ównego (rys. 6) i piêciu okien roboczych: 1. Okna sieci balastów (Ballast Grid Window) – umo¿liwiaj¹ce wyszukiwanie balastów. 2. Okno suwaków poziomów oœwietlenia (Light Level Slider Window) – zawieraj¹ce przyciski i suwaki do regulacji parametrów oœwietlenia. 3. Okno wyboru (Selection Window) – do wyboru grup. 4. Okno scen (Scene Window) – do wyboru schematów oœwietleniowych. 5. Okno DALI logger (Dali Logger Window) – wyœwietla pe³ny zestaw rozkazów DALI. Zestaw mo¿e tak¿e s³u¿yæ rozpoczynaj¹cym w³asny projekt bramki DALI jako rozwi¹zanie wzorcowe. KK
Elektronika Praktyczna 11/2004
8-bitowy specjalizowany mikrokontroler Flash z interfejsem komunikacyjnym DALI firmy STMicroelectronics
www.st.com/mcu www.stmcu.com
ST7FDALI – – – – – – –
NARZÊDZIA ROZWOJOWE – bezp³atny pakiet STVD7 STMicroelectronics – zestawy z kompilatorem kompilatorem C firm Cosmic Sof tware i Metrowerks Metrowerks – sprzêtowy in -circuit debugger i programator ST7LITE2-INDART/USB ST7LITE2-INDART/USB firmy Cosmic – zestaw ewaluacyjny ST7DALI-EV AL ST7DALI-EVAL
– – – – – – – –
–
8kB pamiêci Flash 384 B pamiêci RAM 256 B pamiêci danych EEPROM 10-bitowy przetwor nik A/C ze wzmacniaczem operacyjnym interfejsy DALI DALI i SPI Lite Timer z WDG 12-bitowy Autoreload Timer z czterema wyjœciami PWM czêstotliwoœæ pracy do 8 MHz wewnêtrzny oscylator 1 MHz RC 1% programowalny w uk³adzie i aplikacji aplikacji obudowa SO16 300" napiêcie zasilania 2,4-5,5 V wysoka wysoka odpor noœæ na zak³ócenia automatyczne wykrywanie spadku napiêcia zasilania LVD LVD tryby oszczêdzania poboru mocy WAIT, AIT, HALT HALT, ACTIVE ACTIVE HALT HALT z Auto Wake-up ake-up zakres temperatur pracy -40+85 oo C, na ¿yczenie tak¿e do 105 oo lub 125 oo C
Zestaw ST7DALI-EVAL to pomyœlany jako pomoc dla projektantów przyk³ad zastosowania ST7FDALI w uk³adach sterowania balastami elektronicznymi lamp fluorescencyjnych. Zestaw sk³ada sie z p³yty Master i p³ytek Slave oraz pakietu oprogramowania. Dostêpne s¹ te¿ pliki Ÿród³owe w jêzyku C i dokumentacja p³ytek. Po bli¿sze szczegó³y o ST7FDALI, narzêdziach rozwojowych i zestawie ST7DALI-EVAL zapraszamy na www.stmcu.com
Dystrybutor: FUTURE ELECTRONICS POLSKA Sp. z o.o. 03-704 WARSZAWA, ul. Panieñska 9 tel. (0-22) 618 92 02; fax (0-22) 618 80 50 www.futureelectronics.com
P O D Z E S P O Ł Y
Miniaturowe, SMD, 15W przetwornice DC/DC Przetwornice DC/DC s¹ obecnie standardowym Ÿród³em zasilania urz¹dzeñ elektronicznych. Ich wysoka sprawnoœæ energetyczna, niewielki ciê¿ar i wymiary, a tak¿e zdolnoœæ do stabilnej pracy przy zmieniaj¹cym siê napiêciu wejœciowym powoduj¹, ¿e konstruktorzy coraz chêtniej siêgaj¹ po ró¿nego rodzaju przetwornice impulsowe. Specjalizacja w elektronice siêga coraz dalej, st¹d wiêc nieustannie powstaj¹ na rynku nisze, do których do niedawna nale¿a³y zintegrowane w postaci gotowych modu³ów zasilacze impulsowe. W ostatnich latach sytuacja uleg³a radykalnej zmianie, poniewa¿ konstruktorzy bardzo chêtnie siêgaj¹ po wyspecjalizowane podzespo³y, a do takich z pewnoœci¹ nale¿y zakwalifikowaæ zintegrowane przetwornice DC/DC. W ofercie jednego z wiêkszych w Europie producentów przetwornic tego typu - firmy Traco Power - pojawi³y siê nowe przetwornice o mocy 15 W (rodzina TON15), które s¹ przeznaczone do zasilania urz¹dzeñ
Elektronika Praktyczna 11/2004
wymagaj¹cych napiêæ o wartoœci 3,3/5/12 lub 15 VDC (tab. 1). Ich
sprawnoœæ energetyczna osi¹ga wartoœci z przedzia³u 84...89%, co przy
Tab. 1. Dostêpne wersje przetwornic TON15 i ich podstawowe parametry Model
Napiêcie zasilaj¹ce [V]
Napiêcie wyjœciowe [V]
Maksymalny pr¹d obci¹¿enia [A]
SprawnoϾ [%]
TON15-2410
18...36
3,3
3,5
84
TON15-2411
18...36
5
3
85
TON15-2412
18...36
12
1,25
87
TON15-2413
18...36
15
1
87
TON15-4810
36...75
3,3
3,5
86
TON15-4811
36...75
5
3
87
TON15-4812
36...75
12
1,25
89
TON15-4813
36...75
15
1
89
#%
P O D Z E S P O Ł Y wymiarach zewnêtrznych 27,9 x 24,4 x 8,5 mm powoduje, ¿e mo¿na je bez dodatkowych zabiegów stosowaæ w urz¹dzeniach zamkniêtych w obudowach o utrudnionym obiegu powietrza. Przetwornice TON15 charakteryzuj¹ siê 1,5-procentow¹ dok³adnoœci¹ ustalenia napiêcia wyjœciowego. Jego wartoœæ mo¿e siê zmieniaæ w funkcji zmian obci¹¿enia (0...100%) o max. +/–0,2%, podobnie w przypadku zmian napiêcia wejœciowego. Wp³yw temperatury na wartoœæ napiêcia wyjœciowego nie przekracza +/ 0,02%/K. Obwody wyjœciowe przetwornic TON15 s¹ odseparowane od obwodów wejœciowych, z gwarantowanym przez producenta napiêciem przebicia izolacji wynosz¹cym 2250 VDC. Zarówno od strony wejœciowej, jak i wyjœciowej, przetwornice s¹ wyposa¿one w filtry ograniczaj¹ce poziom zak³óceñ emitowanych do otoczenia. Filtry wyjœciowe powodu-
#&
j¹, ¿e napiêcie têtnieñ i szumów (w paœmie do 20 MHz) na wyjœciu nie przekracza 75 mVpp. Relatywnie wysoka czêstotliwoœæ kluczowania przetwornicy (350 kHz) pozwala na zastosowanie transformatorów o niewielkich wymiarach i ma³ym ciê¿arze, co pozwala dodatkowo ograniczyæ emisjê zak³óceñ elektromagnetycznych. Standardowym wyposa¿eniem przetwornic TON15 jest wejœcie s³u¿¹ce do regulacji napiêcia wyjœciowego (+/–10% wartoœci nominalnej) oraz wejœcie umo¿liwiaj¹ce ich zdalne w³¹czanie i wy³¹czanie. Wszystkie przetwornice maj¹ wbudowane ograniczniki pr¹dowe o charakterystyce podciêtej (foldback), dziêki czemu zadzia³anie ogranicznika nastêpuje przy pr¹dzie wyjœciowym o wartoœci ok. 110...150% wartoœci nominalnej, a pr¹d zwarciowy ma natê¿enie nie przekraczaj¹ce ok. 50...70% wartoœci
nominalnej. Dodatkowo, obwody wewnêtrzne prezentowanych przetwornic s¹ zabezpieczone przed przeci¹¿eniem, za pomoc¹ bezpiecznika termicznego, który wstrzymuje dzia³anie przetwornicy po przekroczeniu temperatury 115oC. Od strony wejœciowej zastosowano natomiast obwód, który wy³¹cza przetwornicê przy zbyt wysokim i zbyt ma³ym napiêcie wejœciowym. Przetwornice TON15 wykonano w technologii bezo³owiowej, tak¿e ich wyprowadzenia (w wersjach: przewlekanej i SMD) s¹ przystosowane do nowoczesnych technologii bezo³owiowych. Podobnie do innych przetwornic oferowanych przez firmê Traco Power, tak¿e TON15 maj¹ homologacje i atesty kompatybilnoœci elektromagnetycznej i bezpieczeñstwa, producent zapewnia tak¿e 3-letni¹ gwarancjê. Andrzej Gawryluk Dystrybutorem firmy Traco Power jest Amtek spol. s r.o., tel. (22) 866 41 40,
[email protected], www.amtek.pl.
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Więcej niż procesor,
część 2
Rabbit 3000 to szczególne połączenie wielu układów peryferyjnych ze zmodyfikowanym rdzeniem procesora Z180, a wszystko to wykonane w nowoczesnej technologii 0.35 µm. Nie byłoby w tym pewnie nic szczególnego, gdyby nie specyficzny klimat, który udało się stworzyć producentowi wokół tych urządzeń. Składają się na to: doskonała dokumentacja dostępna na stronach WWW, dobre narzędzia programistyczne oraz gotowe, atrakcyjne cenowo moduły mikrokontrolera pozwalające na bardzo szybkie przygotowanie aplikacji, co ma szczególne znaczenie przy produkcji niskoseryjnej oraz w zastosowaniach hobbystycznych.
Rabbit 3000 System przerwań
Mikrokontroler posiada 3 poziomy obsługi przerwań oraz 4 poziomy pracy procesora. Jeśli poziom przerwania jest wyższy od poziomu procesora, to uruchamiana jest procedura obsługi przerwania po zakończeniu wykonywania bieżącej instrukcji. Nie dotyczy to sytuacji, w której wykonywana jest instrukcja uprzywilejowana. Wielopoziomowa struktura systemu przerwań umożliwia optymalną konfigurację czasu opóźnień obsługi przerwań dla konkretnej aplika-
W mikrokontrolerze Rabbit 3000 zastosowano specjalny układ rozpraszania widma sygnału zegarowego służący do obniżenia emisji elektromagnetycznej.
Elektronika Praktyczna 11/2004
cji. Dla przerwań o najwyższym priorytecie czas reakcji jest na poziomie 20 cykli zegara. Przerwania mogą być generowane przez większość układów wewnętrznych oraz przez urządzenia zewnętrzne za pośrednictwem dwóch dedykowanych wejść.
środowiska DynamicC lub za pomocą osobnego programu. Wymuszenie trybu cold boot odbywa się poprzez zwarcie odpowiednich wyprowadzeń do masy. Jako interfejs komunikacyjny może być wykorzystane łącze szeregowe (async., sync.) albo slave port.
Zimny start (cold boot)
Slave port
Po włączeniu zasilania Rabbit 3000 zaczyna wykonywanie kodu programu zawartego w zewnętrznej pamięci ROM. Najczęściej jest to pamięć typu Flash, która może być wielokrotnie programowana bezpośrednio w systemie docelowym przez łącze szeregowe. Możliwe jest to przez wymuszenie startu procesora z małej, wewnętrznej pamięci ROM zawierającej kod programu bootstrap, pozwalający na załadowanie i uruchomienie programu użytkownika w pamięci RAM. Programowanie może odbywać się bezpośrednio ze
Slave port (rys. 5) umożliwia zastosowanie mikrokontrolera jako układu peryferyjnego wykorzystywanego przez system nadrzędny. Slave port to nic innego jak system rejestrów zatrzaskowych i linii sterujących umożliwiający komunikację z procesorem nadrzędnym, który najpierw ładuje kod do układu slave, a następnie komunikuje się z nim jak ze zwykłym układem peryferyjnym. Układ slave musi oczywiście posiadać własną pamięć dla swojej aplikacji. Szkoda, że nie ma kawałka wewnętrznego RAM-u!
59
P O D Z E S P O Ł Y Porty szeregowe
Rabbit 3000 posiada aż 6 niezależnych układów transmisji szer e g o w e j . Ws z y s t k i e p o r t y m o g ą pracować w trybie asynchronicznym, natomiast w trybie synchronicznym (SPI) mogą pracować tylko 4 z nich. Pozostałe 2 porty mogą obsługiwać protokoły synchroniczne SDLC/HDLC z wyborem modulacji (NRZ, NRZI, Manchester, FM0, FM1). Port A wykorzystywany jest podczas procedury „zimnego startu”, umożliwiającej komunikację z procesorem i programowanie zewnętrznej pamięci Flash. Dwa porty posiadają dodatkowe multipleksery, umożliwiające przełączenie wyprowadzeń TX, RX na zestaw alternatywny ATX, ARX. W trybie asynchronicznym możliwa jest transmisja 7- i 8-bitowa oraz specjalny 9-bitowy tryb adresowy. Niestety bity parzystości oraz dłuższe bity stopu muszą być obsługiwane programowo. Prędkość transmisji w trybie asynchronicznym, jak podaje producent, może przekraczać 500 kbps, a w trybie synchronicznym 4 Mbps. W trybie asynchronicznym możliwa jest bezpośrednia obsługa układów do transmisji w podczerwieni – IRDA.
Porty we/wy
Porty I/O podzielone są na siedem 8-bitowych grup oznaczonych jako: A, B, C, D, E, F, G. Większość wyprowadzeń posiada funkcje alternatywne związane z okreś l o n y m i u k ł a d a m i p e r y f e r y j n ymi mikrokontrolera np. linie portu C mogą być wykorzystywane do transmisji szeregowej. Wydajność prądowa wyprowadzeń we/ wy wynosi ok. 6 mA w obu kierunkach. Niektóre z wyprowadzeń m o g ą b y ć s ko n f i g u r o w a n e j a ko open drain. Wejścia są kompatybilne ze standardem TTL i tolerują napięcie 5 V. Duże możliwości stwarza tryb synchronizacji wyjść z systemem zegarowym. Synchro-
CPU
8-bitowy, zmodyfikowany rdzeń Z180
Zasilanie
1,8–3,6 V, tolerancja 5 V dla wyprowadzeń we/wy
Zegar główny
27 MHz (x2, x1, /2, /3, /4, /6, /8)
Maksymalna częstotliwość taktowania
55 MHz
Pobór prądu
2 mA/MHz @ 3,3 V
Wejście zegarowe
32,768 kHz
Fizyczna przestrzeń adresowa
1 MB, 8-bitowa
Porty we/wy
7×8 linii
Dekoder kwadraturowy
2 kanały
PWM
4 kanały 10-bitowe
Pomiar czasu
2 kanały 16-bitowe (Input Capture Chanels)
Porty szeregowe
6 kanałów (Async, SPI, SDLC/HDLC, IRDA, cold boot)
Sprzętowy układ watchdog
250 ms – 2 s
Liczniki
10×8-bit, 1×10-bit
Zegar czasu rzeczywistego
podtrzymywanie bateryjne
Tryb energooszczędny
sleepy, ultra-sleepy (20 mA)
Oddzielna magistrala we/wy
opcjonalna
Obudowa
128-pin LQFP lub 128-ball TFBGA
Temperatura pracy
–55°C do +85°C
Zimny start
kod „bootstrap” w ROM
System przerwań
4-poziomowy
Rabbit 3000 posiada 10 liczników 8-bitowych A1-A10, wykorzystywanych jako preskalery z zakresu od 1 do 256 oraz jeden układ 10-bitowy z dwoma wyjściami B1, B2, każde z oddzielnym rejestrem porównania. Oprócz tego istnieją 3 dodatkowe układy licznikowe wykorzystywane przez zegar czasu rzeczywistego, watchdog oraz układ generacji przerwania okresowego. Liczniki A3-A7, poprzedzone preskale-
rem A1, wykorzystywane są do taktowania układów transmisji szeregowej. Niektóre z nich mogą generować przerwania oraz służyć do synchronizacji wyjść ogólnego przeznaczenia. Układ 10-bitowego licznika B posiada 2 rejestry porównujące oraz 2 wyjścia służące do generacji przerwań lub synchronizacji wyjść.
Pomiar czasu
Licznik A8 wykorzystywany jest przez 2-kanałowy układ pomiaru czasu o rozdzielczości 16 bitów (Input Capture Channels), służący do precyzyjnego pomiaru czasu zdarzeń zewnętrznych. Jako wejścia mogą być wybrane dwa spośród szesnastu wyprowadzeń we/wy.
Dekoder kwadraturowy
Licznik A9 jest wykorzystywany przez 2-kanałowy układ dekodera kwadraturowego służącego do obsługi elektromechanicznych czujników położenia.
Wyjścia PWM
Układ rozpraszania widma emisji elektromagnetycznej Blokada zapisu do pamięci po wyłączeniu zasilania
60
Układy licznikowe
Rys. 5. Slave port
Tab. MCU Rabbit 3000 – dane techniczne
Cena
nizacja wyjść umożliwia precyzyjną generację sygnałów sterujących, która ma zastosowania w telekomunikacji, sterowaniu silnikami krokowymi, etc.
ok. 15 USD dla pojedynczych sztuk
Licznik A10 wykorzystywany jest przez autonomiczny, 4-kanałowy układ PWM (Pulse Width Modulation), pozwa-
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y lający na prostą realizację 4 wyjść analogowych o 10-bitowej rozdzielczości.
Watchdog
Układ watchdog zapobiega przypadkowemu zawieszeniu wykonywania programu. Jest to po prostu 17-bitowy licznik taktowany sygnałem 32,768 kHz. Możliwe jest ustawienie interwałów odświeżania z zakresu od 0,25 s do 2 s. Jeśli w tym czasie nie nastąpi „uderze-
Elektronika Praktyczna 11/2004
nie” licznika, to mikrokontroler zostanie wyzerowany. Oprócz tego DynamiC pozwala na tworzenie wirtualnych, wielokrotnych układów watchdog realizowanych na drodze programowej.
Zegar czasu rzeczywistego
Jako zegar czasu rzeczywistego służy podtrzymywany bateryjnie, 48-bitowy układ licznika taktowany zewnętrznym sygnałem 32,768 kHz. Konwersję zawar-
tości licznika do postaci daty i czasu umożliwiają odpowiednie funkcje dostarczane ze środowiskiem DynamicC.
Przerwanie okresowe
Rabbit 3000 posiada specjalny układ przerwania okresowego niskiej częstotliwości, sterowanego sygnałem 32,768 kHz, dzielonym przez 16. Pozwala to na regularne generowanie przerwania co 488 ms, które jest wykorzystywa-
61
P O D Z E S P O Ł Y ne przez DynamiC do okresowej realizacji niektórych usług systemowych lub przez dostępny opcjonalnie systemu czasu rzeczywistego.
Podtrzymywanie zawartości pamięci RAM
Rabit 3000 pozwala na łatwą realizację bateryjnego podtrzymania zawartości pamięci RAM bez dodatkowych układów zabezpieczających. Przewidziano bowiem specjalne wyprowadzenie RESOUT służące do sterowania załączaniem rezerwowego źródła zasilania pamięci RAM po zaniku zasilania mikroprocesora. Oprócz tego wyjście dekodera /CS1 po wyłączeniu zasilania pozostaje w stanie wysokiej impedancji, co po podłączeniu rezystora podciągającego zabezpiecza zawartość pamięci RAM przed przypadkowym zapisem.
Obniżona emisja zakłóceń elektromagnetycznych
W celu obniżenia emisji elektromagnetycznej w mikrokontrolerze został zaimplementowany układ rozpraszania widma sygnału zegarowego. Jego działanie polega na nieznacznej, pseudolosowej modyfikacji okresu zegara powodującej rozproszenie jego widma, a tym samym zmniejszenie poziomu podstawowej harmonicznej sygnału zegara nawet o 20 dB. Układ rozpraszania widma działa w 3 trybach: wyłączonym, normalnym i silnym. Oprócz tego w układzie zastosowano oddzielne wyprowadzenia zasilania dla rdzenia i układów we/wy w celu eliminacji szumu wysokoczęstotliwościowego na wyprowadzeniach we/wy pochodzącego od rdzenia. Zastosowanie obu rozwiązań oraz oddzielnej magistrali we/wy powinno ułatwić spełnienie norm kompatybilności elektromagnetycznej przez gotowe urządzenie.
62
Rys. 6. System układów licznikowych
Tryby mikromocowe
Mikrokontroler oferuje możliwość obniżenia poboru energii dzięki zastosowaniu kilku uzupełniających się rozwiązań. W trybie sleepy procesor może być taktowany sygnałem 2 kHz, otrzymywanym przez podział zewnętrznego sygnału 32,768 kHz, podczas gdy główny oscylator pozostaje wyłączony. Oczywiście w każdej chwili układ może zostać programowo przyspieszony. Oprócz tego cykle odczytu mogą zostać dopasowane tak, aby czas aktywnego sygnału /CS
był jak najkrótszy. Do wykorzystania tej możliwości niezbędne jest stosowanie specjalnych pamięci Flash, z funkcją automatycznego wyłączania lub można uruchamiać program bezpośrednio z pamięci SRAM. Rabbit 3000 niestety nie obsługuje pełnego trybu sleep, tzn. takiego, w którym układ pozostawałby wyłączony, a budzenie następowałoby przez generację odpowiedniego przerwania. Daniel Pilecki-Silva
Elektronika Praktyczna 11/2004
I N T E L L I G E N T
E L E C T R O N I C S
S T A R T
W I T H
M I C R O C H I P
Wydaje Ci się, że nie możesz użyć mikrokontrolera w swoim projekcie? Zastanów się jeszcze raz!
Najmniejszy na świecie 8-bitowy mikrokontroler - rodzina PIC10F firmy Microchip Product
Memory
Bytes
RAM
Pins
Comparators
Timers/WDT
Packages
Internal ICSP™
OSC
PIC10F200
Flash
384
16
6
0
1-8 bit, 1-WDT
SOT-23
yes
4 MHz
PIC10F202
Flash
768
24
6
0
1-8 bit, 1-WDT
SOT-23
yes
4 MHz
PIC10F204
Flash
384
16
6
1
1-8 bit, 1-WDT
SOT-23
yes
4 MHz
PIC10F206
Flash
768
24
6
1
1-8 bit, 1-WDT
SOT-23
yes
4 MHz
Wydaje Ci się, że nie możesz użyć mikrokontrolera w swoim projekcie? Zastanów się jeszcze raz! Firma Microchip umieściła w miniaturowej 6-wyprowadzeniowej obudowie SOT-23 wydajny 8-bitowy mikrokontroler PIC®. PIC10F rozwiązuje Twoje problemy z powierzchnią płytki i kosztami. Całkowita kompatybilność programowa z większymi mikrokontrolerami PIC, pozwala na projektowanie
www.buymicrochip.com
i wykorzystaniem istniejących narzędzi takich jak MPLAB® Integrated Development Environment (IDE), które można pobrać BEZPŁATNIE z witryny internetowej firmy Microchip. Wybierz PIC10F i przystąp do pracy nad projektem! Udaj się na buy.microchip.com lub skontaktuj się z lokalnym dystrybutorem.
www.microchip.com/pic10F
Nazwa Microchip oraz logo PIC i dsPIC są zarejestrowanymi znakami towarowymi firmy Microchip Technology Incorporated w USA i w innych krajach. Pozostałe znaki towarowe są własnością ich odpowiednich właścicieli. © 2004 Microchip Technology Inc. Wszystkie prawa zastrzeżone. ME130Pol/10.04
P O D Z E S P O Ł Y
Ochrona przeciwprzepięciowa elementów sterujących cewki przekaźników elektromagnetycznych Stosowaniu przekaźników elektromagnetycznych w układach elektrycznych powinna towarzyszyć świadomość, że ich cewki są źródłem znacznych przepięć, które często osiągają wartości powyżej 1000 V. Tak wysokie przepięcia mogą być przyczyną zakłóceń w pracy urządzeń, w których stosowane są przekaźniki elektromagnetyczne. Dodatkowo mogą one spowodować, że urządzenia wyposażone w przekaźniki elektromagnetyczne nie będą spełniać wymagań w zakresie kompatybilności elektromagnetycznej (EMC). Cewki przekaźników w stanie zadziałania mają dużą indukcyjność, co powoduje, że przy wyłączaniu na cewce przekaźnika występuje gwałtowny wzrost napięcia. Sytuacja taka występuje zarówno przy cewkach na napięcie stałe jak i na napięcie przemienne. Jeżeli elementem wyłączającym cewkę przekaźnika jest np. tranzystor, to może nastąpić uszkodzenie tego elementu. Dodatkowo takie zakłócenia impulsowe mogą negatywnie wpływać na działanie pobliskich układów elektronicznych. Na rys. 1 i 2 przedstawiono przykładowe przebiegi napięcia na cewce przekaźnika podczas odłączania od niej napięcia. W p r z y p a d ku c e w e k z a s i l a nych napięciem stałym, najlepszym i najprostszym rozwiązaniem tego problemu jest równoległe podłączenie do zacisków cewki zwykłej diody prostowniczej (rys. 3). W trakcie przepływu prądu przez cewkę dioda jest spolaryzowana zaporowo (przez spadek napięcia na cewce). W momencie wyłączenia napięcia na cewce dioda zaczyna przewodzić, powodując zwiększenie napięcia na cewce przekaźnika tylko o spadek napięcia na przewodzącej diodzie. Projektanci układów elektronicznych, w których występują przekaźniki elektromagnetyczne, praktycznie zawsze stosują diody gaszące podłączone równolegle do
64
Rys. 1. Napięcie na cewce podczas wyłączania (przekaźnik z cewką na napięcie stałe)
Rys. 2. Napięcie na cewce podczas wyłączania (przekaźnik z cewką na napięcie przemienne)
cewki przekaźnika. W większości przypadków do tego celu doskonale nadaje się dioda typu 1N4007. Diody wyjątkowo efektywnie usuwają przepięcia, są tanim, niezawodnym i niewymagającym skomplikowanych obliczeń sposobem zdławienia napięcia samoindukcji cewki. Jedynym minusem układu diodowego jest znaczne (około trzykrotne) zwiększenie czasu powrotu przekaźnika. Czas powrotu można zmniejszyć poprzez podłączenie szeregowo z diodą dodatkowego rezystora, lecz w takim wypadku zwiększa się wartość przepięcia przy wyłączaniu cewki. Zabezpieczenie diodowe z oczywistych względów nie może być stosowane w przekaźnikach
z cewkami na napięcie przemienne. W takich przypadkach najczęściej stosuje się dwa rodzaje zabezpieczeń: – zabezpieczenie warystorowe; – zabezpieczenie dwójnikiem R-C. Warystory metalowo -tlenkowe mają charakterystykę prądowo-napięciową podobną do charakterystyki dwukierunkowej diody Zenera. Warystor zaczyna przewodzić, gdy napięcie między jego końcówkami przekroczy pewną wartość graniczną, tym samym bocznikuje
Informacje dodatkowe
Więcej informacji na temat zastosowań oraz danych technicznych urządzeń opisanych w artykule można uzyskać w firmie Relpol S.A. tel. (68) 479 08 51.
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Rys. 3. Zabezpieczenie tranzystora sterującego pracą przekaźnika za pomocą diody
swoją opornością wewnętrzną obciążenie indukcyjne, jakie stanowi cewka przekaźnika. Maksymalna wartość przepięcia przy wyłączaniu zależy od napięcia ograniczenia warystora. Dodatkowo, jeżeli przekaźnik zasilany jest bezpośrednio z sieci energetycznej, to warystor chroni również cewkę przekaźnika przed uszkodzeniem przez impulsy napięciowe pojawiające się w sieci energetycznej. Zabezpieczenie warystorowe można również stosować dla przekaźników z cewkami na napięcie stałe, jednak przepięcia przy wyłączeniu są znacznie większe niż w przypadku zabezpieczenia przy pomocy diody gaszącej. Dru g i m s p o s o b e m o g r a n i c z e-
Fot. 4. Wygląd modułu przeciwprzepięciowego z serii M
nia przepięć podczas wyłączania cewki przekaźnika jest równoległe podłączenie do cewki dwójnika RC. Układ ten dobrze ogranicza przepięcia, jest tani i tylko nieznacznie zwiększa czas powrotu przekaźnika. Przykładowe wartości elementów R i C w modułach serii M produkowanych przez Relpol:
Tab. 1. Parametry modułów przeciwprzepięciowych firmy Relpol Nazwa modutu sygnalizacyjnego
Schemat
Napięcie
Kolor LED
TVp*
MODUŁ D (polaryzacja P)
+A2 –A1
6/230 V DC
—
Moduł M21P
MODUŁ D (polaryzacja N)
–A2 +A1
6/230 V DC
—
Moduł M21N
6/24 V DC
czerwony zielony czerwony zielony czerwony zielony
Moduł Moduł Moduł Moduł Moduł Modul
M31R M31G M32R M32G M33R M33G
czerwony zielony czerwony zielony czerwony zielony
Moduł Moduł Moduł Moduł Moduł Moduł
M41R M41G M42R M42G M43R M43G
MODUŁ LD (polaryzacja P)
+A2 –A1
24/60 V DC 110/230 V DC 6/24 V DC
MODUŁ LD (polaryzacja N)
MODUŁ RC
MODUŁ LV
MODUŁ V
–A2 +A1
A2 A1
=A2 ±A1
A2 A1
Elektronika Praktyczna 11/2004
24/60 V DC 110/230 V DC 6/24 VAC 24/60 VAC 110/230 VAC
— — —
6/24 VAC/DC
czerwony zielony czerwony zielony czerwony zielony
24/60 VAC/DC 110/230 VAC/DC 24 VAC 130 VAC 230 VAC
— — —
Moduł M51 Moduł M52 Moduł M53 Moduł Moduł Moduł Moduł Moduł Moduł
M91R M91G M92R M92G M93R M93G
Moduł M71 Moduł M72 Moduł M73
65
P O D Z E S P O Ł Y – C=220 nF i R=220 V dla napięć 6...24 VAC, – C=47 nF i R=1000 V dla napięć 24...60 VAC, – C=10 nF i R=4700 V dla napięć 110...240 VAC. W tej aplikacji nie powinno się stosować kondensatorów ceramicznych. Zaleca się natomiast używanie kondensatorów foliowych. Przy doborze rezystora należy pamiętać, że podczas procesu przejściowego rozprasza się na nim dość duża moc i z tego też względu rezystor nie powinien mieć mocy mniejszej niż 0,5 W. Przytoczone wartości R
66
i C nie są optymalne. Jeżeli dla konkretnego przekaźnika wymagane jest maksymalne ograniczenie przepięcia, to należy drogą doświadczalną dobrać rezystor i kondensator, obserwując procesy przejściowe za pomocą oscyloskopu. Relpol posiada w swojej ofercie zarówno przekaźniki, w których elementy przeciwprzepięciowe mogą być montowane w ich wnętrzu (diody lub warystory), jak i gotowe moduły przeciwprzepięciowe przeznaczone do montażu w gniazdach wtykowych. W p r z e ka ź n i ka c h t y p ó w R 2 ,
R3, R4 z cewkami na napięcie stałe (DC) są dostępne wykonania z diodą gaszącą zamontowaną wewnątrz przekaźnika. Wewnątrz t y c h p r z e ka ź n i kó w n i e m o n t u je się warystorów. Można do nich stosować gotowe moduły przeciwprzepięciowe serii M (fot. 4), montując je w gniazdach wtykowych serii GZT i GZM. Dostępne są moduły z diodą (cewki DC) lub z warystorem (cewki AC lub DC). Przekaźniki R15 są wykonywane wyłącznie z elementami przeciwprzepięciowymi zamontowanymi wewnątrz obudowy: z diodami gaszącymi dla cewek na napięcia stałe (DC) – wersje dwu-, trzy- i czterostykowe; z warystorami dla cewek na napięcia przemienne (AC) – wersje dwu-, trzystykowe. W p r z y p a d ku p r z e ka ź ników miniaturowych, np.: RM84, RM85, RM96, ze względu na ich małe gabaryty, stosuje się tylko moduły przeciwprzepięciowe serii M, montowane w gniazdach wtykowych przystosowanych do montażu na szynie 35 mm wg EN50022. Dla przekaźników z cewkami na napięcie stałe stosuje się moduły z diodą gaszącą (moduły D). Dla przekaźników z cewkami na napięcie przemienne zaleca się stosowanie modułów z warystorami (moduły V). Można również stosować moduły z dwójnikiem RC (moduły RC). Dostępne są również moduły wyposażone dodatkowo w diodę LED sygnalizującą obecność napięcia na cewce przekaźnika (moduły oznaczane jako LD lub LV). Poprzez zastosowanie elementu przeciwprzepięciowego użytkownik zyskuje pewność, że przepięcie powstające przy wyłączaniu cewki przekaźnika nie wpłynie negatywnie zarówno na obwody sterujące cewką jak i na inne obwody elektryczne i elektroniczne. W tab. 1 przedstawiono parametry modułów przeciwprzepięciowych dostępne w ofercie Relpolu. Na podstawie materiałów Relpol S.A.
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Większość Czytelników Elektroniki Praktycznej dobrze zna układy FT232BM firmy FTDI pozwalające na bezbolesne implementowanie interfejsów USB we własnych aplikacjach. Trudność w standardowej obsłudze transmisji USB polega głównie na zrozumieniu i opanowaniu bardzo skomplikowanego protokołu. Z podobnych względów do rzadkości należą projekty wykorzystujące sieć ethernetową. O kłopotach z opanowaniem tej sztuki możemy mówić już w czasie przeszłym, bo oto za sprawą firmy Digi International dostajemy do ręki produkt analogiczny do kostek FT232BM. Od dziś będziemy mogli zatem mówić o sobie, że potrafimy konstruować urządzenia pracujące w sieciach lokalnych.
Firma Digi International jest producentem bardzo interesujących modułów Digi Connect służących do implementacji interfejsów sieciowych we własnych projektach. Za ich pośrednictwem można realizować przewodową (wersja ME) i bezprzewodową (wersja Wi-ME) transmisję w sieci Ethernet. Bezsporną zaletą modułów jest niezwykła prostota działania. Do obsługi interfejsu sieciowego nie jest konieczna wiedza o protokołach ethernetowych, wystarczy najzwyklejsza umiejętność korzystania z portu szeregowego. W małej kostce o wymiarach ok. 18x18x37 mm (fot. 1) zaszyto bardzo wyrafinowaną elektronikę. Najważniejszym jej elementem jest specjalizowany procesor NetSilicon NS7520, bazujący na 32-bitowym rdzeniu ARM (rys. 2). Na „pokładzie” mamy 2 MB (Digi Connect ME) lub 4 MB (Digi Connect Wi-ME) pamięci Flash oraz 8 MB RAM-u. Moduł bezprzewodowy opiera się na specyfikacji 802.11b i zapewnia transmisję z szybkością do 11 Mb/s. Wersja przewodowa może pracować w sieciach Ethernet 10/100Base-T, przy czym rodzaj sieci jest rozpoznawany automatycznie. Zastosowanie modułów Digi Connect jest jednym z najprostszych i najtańszych sposobów
Elektronika Praktyczna 11/2004
Connect ME
Fot. 1. Wygląd modułu Digi Connect ME
implementowania obsługi sieci w nowotworzonych aplikacjach. Z powodzeniem można je również wykorzystywać w starych urządzeniach, jako elementy rozszerzające cechy funkcjonalne. Na uwagę zasługuje fakt, że do powyższych celów nie są wymagane żadne dodatkowe rozwiązania sprzętowe, a udostępniane wraz z modułami oprogramowanie pozwala na ich różnorodne wykorzystywanie – wszystko zgodnie z zasadą plug-and-play. Dla dokładnego zapoznania się z Digi Connectami nie trzeba budować własnych urządzeń, można skorzystać z płytki ewaluacyjnej.
Digi Connect ME Integration Kit
Płytka ewaluacyjna dostarczana jest w zestawie z akcesoriami potrzebnymi do natychmiastowego rozpoczęcia pracy z modułami Digi Connect ME. W skład zestawu „Digi Connect ME
Integration Kit” wchodzą: – moduł Digi Connect ME, – płytka ewaluacyjna, – zasilacz sieciowy, – patchcordy sieciowe (prosty i skrzyżowany), pozwalające na dołączenie modułu do sieci lokalnej pośrednio przez koncentrator lub bezpośrednio do komputera, – przewody do transmisji szeregowej prosty i skrzyżowany („null modem”) – wtyk DB-9 z pętlą diagnostyczną, – opaska antyelektrostatyczna zalecana przy wykonywaniu czynności, w których możliwy jest bezpośredni kontakt ręki z płytką, – płyta CD-ROM z oprogramowaniem firmowym. Oprogramowanie dostarczane w zestawie zawiera wszystkie elementy niezbędne do zapoznania się z modułami Digi Connect, nawet dla tych użytkowników, którzy mają niemal „gołe” komputery. Są to:
67
P O D Z E S P O Ł Y i dane przekazywane do/z portu szeregowego są przechwytywane i odpowiednio tłumaczone przez interfejs e t h e r n e t o w y. Digi RealPort jest całkowicie przezroczysty d l a a p l i ka c j i uruchomionych Rys. 2. Schemat blokowy procesora NS7520 na komputerze PC. Chociaż taki wariant pracy na pewno zachęci – Adobe Reader w wersji 5.1, wielu użytkowników do zakupu modu– Sun JRE (Java Runtime Environment), łów Digi Connect, to jednak pamiętaj– Internet Explorer – wersja 6 z service pack 1, my, że są one również, a może przede wszystkim, pełnymi interfejsami sieciowy– Digi RealPort, mi, które mogą być obsługiwane w kla– przykładowe wersje źródłowe oprogramowania użytkowego. syczny sposób. Udostępnione wersje źródłowe oprogramowania użytkowego są Na uwagę zasługują programy Sun JRE i Digi RealPort. Sun JRE zapewnia przeznaczone dla środowiska Microsoft obsługę apletów Java w przeglądarce inVisual C++ wersja 6. Zawierają obsłuternetowej. Aplety takie są wykorzystygę protokołów TCP (Transmission Control wane przez moduł Digi Connect. InstaloProtocol), UDP (User Datagram Protocol), wanie tego programu (jak i innych) jest SMTP (Simple Message Transport Protoopcjonalne. Jeśli przy pierwszy wywołacol). Zapewniają również obsługę portów niu apletu Java okaże się, że komputer ogólnego przeznaczenia, które mogą być wykorzystywane w aplikacji użytkownika. nie może go obsłużyć, to zostanie podjęta próba ściągnięcia odpowiedniego proKażdy z wyżej wymienionych trybów gramu z Internetu i zainstalowania go. pracy może być wykorzystywany stosoProgram Digi RealPort służy do obsługi wanie do potrzeb, posiada swoje zalety i wady. Przykładowo transmisja poprzez wirtualnego portu szeregowego, do którego i z którego może być przekierowywirtualny port szeregowy na pewno wana transmisja do/z sieci Ethernet. To zadowoli nawet początkujących programistów, dla których przebrnięcie przez właśnie dzięki niemu możliwe jest prowadzenie łączności poprzez sieć, tylko dokumentację protokołów sieciowych i wyłącznie z wykorzystaniem mechanimoże się okazać zbyt trudne. Muszą oni zmów obsługi interfejsu RS232. Komendy jednak pamiętać o zainstalowaniu odpo-
wiednich sterowników na każdym komputerze wykorzystującym Digi RealPort. Protokół TCP z kolei gwarantuje pewną i bezpieczną (po zastosowaniu serwisu SSL – Secure Sockets Layer) transmisję pakietową. Niestety oprogramowanie tego protokołu jest dość trudne. Urządzenia wykorzystujące protokół TCP muszą być skonfigurowane jako klient lub jako serwer. Serwer zawsze czeka na zgłoszenia od klientów i dopiero wówczas realizuje odpowiednią transmisję. Bywa, że zakwalifikowanie poszczególnych urządzeń do roli serwera, czy klienta może być pewnym problemem dla niedoświadczonego konstruktora. Nieco łatwiejsza jest obsługa protokołu UDP, jednakże nie ma w tym przypadku gwarancji dostarczenia wiadomości/pakietów do odbiorcy. Rozwiązanie takie nie nadaje się więc do urządzeń wymagających pewnej, w sensie bezpieczeństwa, łączności sieciowej. Protokół SMTP może być z powodzeniem stosowany np. w urządzeniach monitoringu, wykorzystujących np. uniwersalne porty we/wy. Stany badanych czujników dołączonych do tych portów mogą być przekazywane poprzez wiadomości poczty elektronicznej do centrum zbierania danych. Rozwiązanie takie nie wymaga skomplikowanego oprogramowania, ale też nie gwarantuje dotarcia wiadomości do adresata. Jarosław Doliński
[email protected]
Dodatkowe informacje Zestaw ewaluacyjny firmy Digi International udostępniła firma Codico, tel. (12) 417-10-83. Cena detaliczna modułu DigiConnectMe wynosi 47 EUR netto.
Tab. 1. Zestawienie parametrów różnych wersji modułów Digi Connect Parametr Pamięć typ
Parametry interfejsu szeregowego
max. szybkość transmisji [b/s] długość ramki liczba bitów stopu kontrola parzystości
Digi Connect ME 2 MB Flash 8 MB RAM
Digi Connect Wi-ME 4 MB Flash 8 MB RAM
Digi Connect EM 4 MB Flash 8 MB RAM
Digi Connect Wi-EM 4 MB Flash 8 MB RAM
High-speed TTL
High-speed TTL
2 x High-speed TTL
2 x High-speed TTL
230400
230400
230400
230400
230400
5, 6, 7, 8 bitów 1, 1,5, 2 Mark/space/even/odd
5, 6, 7, 8 bitów 5, 6, 7, 8 bitów 1, 1,5, 2 1, 1,5, 2 Mark/space/even/odd Mark/space/even/odd
obsługa linii
TXD, RXD, RTS, CTS, DTR, DSR, DCD
TXD, RXD, RTS, CTS, DTR, DSR, DCD
TXD, RXD, RTS, CTS, DTR, DSR, DCD
kontrola przepływu
programowa i sprzętowa RTS
programowa i sprzętowa RTS
programowa i sprzętowa RTS
–
5 styków
5 styków
Porty ogólnego przeznaczenia
68
Digi Connect SP 4 MB Flash 8 MB RAM wybierany przełącznikiem: EIA-232/422/485 (DB-9M)
5, 6, 7, 8 bitów 5, 6, 7, 8 bitów 1, 1,5, 2 1, 1,5, 2 Mark/space/even/odd Mark/space/even/odd TXD, RXD, RTS, TXD, RXD, RTS, CTS, CTS, DTR, DSR, DTR, DSR, DCD dla DCD dla portu 1 portu 1 TXD/RXD dla portu 2 TXD/RXD dla portu 2 programowa programowa i sprzętowa i sprzętowa dla dla portu 1 portu 1 RTS RTS 9 styków 9 styków
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Sposób na ARM-y O mikrokontrolerach z rdzeniem ARM piszemy ostatnio bardzo wiele, a to za przyczyną rynkowego przełomu, jakim było wprowadzenie do sprzedaży przez firmę Philips mikrokontrolerów z rodziny LPC2100. LPC2100 to produkowana przez firmę Philips rodzina tanich mikrokontrolerów z rdzeniem ARM7TDMI i pamięcią Flash programowaną w systemie. Takie połączenie - dotychczas na rynku ARM dość nietypowe - spowodowało, że zupełnie niespodziewanie te niezwykle szybkie procesory mogą trafić do aplikacji, w których dotychczas niepodzielnie królowały AVR-y, PIC-e, 8051 i im podobne mikrokontrolery (8-bitowe!). Czy ma to sens? Pobieżna analiza wykazała, że bardzo duży, a jej wyniki dokumentuje zestawienie zawarte w tab. 1. Okazuje się, że cena detaliczna dobrze wyposażonego ARM-a jest niemalże identyczna z ceną ATmega128…
Dla potrzebujących mocy
Prawdą jest, że możliwości oferowane przez układy z rodziny LPC2100 są zbyt duże na potrzeby większości typowych aplikacji. Przecież ponad 60% ryn-
ku (poza PC) liczonego w sprzedanych sztukach „zagarnęły” mikrokontrolery 4i 8-bitowe (jeśli do takich zaliczyć także PIC-e) i całkiem dobrze sobie radzą ze stawianymi zadaniami. Prawdą jest także, że wielu programistów tworzących firmware dla takich aplikacji spędza wiele czasu na optymalizacji czasowej pisanych programów. Dobrym przykładem jest tutaj generowanie sygnałów wizyjnych za pomocą mikrokontrolerów - nawet uważane za szybkie AVR-y nie zawsze dają sobie radę z jednoczesnym gromadzeniem, obróbką i wyświetlaniem danych choćby w marnej rozdzielczości obrazu TV. Dlatego, biorąc pod uwagę ceny „silnych” wersji mikrokontrolerów 8-bitowych i „słabej” wersji ARM-a (wkrótce mają być dostępne w sprzedaży detalicznej mikrokontrolery LPC2104/ 05, które są tańsze od prezentowanych w tab. 1), warto rozważyć zainwestowanie czasu w poznanie nowej architektury - wyraźnie większy komfort pracy ma szanse zaowocować krótszym czasem realizacji projektu.
http://www.keil.com/mcb2100. Firma Keil jest także producentem zestawu ewaluacyjnego MCB2100EB (fot. 1), którego szczegółowy opis i możliwości przedstawiliśmy w EP10/2004.
Jesteśmy w czołówce
Mikrokontrolery LPC2100 zostały zauważone już w naszym kraju, co zaowocowało powstaniem krajowej (co nie znaczy gorszej) wersji zestawu ewaluacyjnego (fot. 2), który jest funkcjonalnie kompatybilny - z jednym wyjątkiem - z zestawem firmy Keil. Wyjątkiem tym jest brak wbudowanych interfejsów CAN. Zestaw wyposażono natomiast w alfanumeryczny wyświetlacz LCD, który - jak sądzę - będzie większości potencjalnych użytkowników zdecydowanie bardziej przydatny niż CAN. Zestaw ZL1ARM w wersji otrzymanej do testów wyposażono w mikrokontroler LPC2114 (128 kB Flash/16 kB SRAM), który jest taktowany zewnętrznym sy-
Jak to jest z narzędziami?
Fot. 1. Zestaw MCB2100 firmy Kell
Najkrócej rzecz ujmując: jest dobrze. I to zarówno z narzędziami programowymi (dostępny jest bezpłatny kompilator języka C - ARM GCC, który współpracuje z doskonale znanym IDE (mVision) firmy Keil. Połączenie tych dwóch narzędzi nie jest na pierwszy rzut oka oczywiste, ale jest zgodne z zaleceniami firmy Keil opublikowanymi na stronie
Rys. 3. Schemat blokowy zestawu ZL1ARM
Tab. 1. Niektóre parametry oraz ceny wybranych mikrokontrolerów (zestawienie wykonano w celach porównawczych) Parametr ATmega128-16AI AT91M55800A-33AI LPC2114 Rdzeń AVR mega ARM7TDMI ARM7TDMI Pojemność pamięci Flash [kB] 128 128 Programowanie pamięci Flash SPI/JTAG JTAG/IAP Pojemność pamięci SRAM [kB] 4 8 16 Pojemność pamięci EEPROM [kB] 4 Przetworniki A/C (kanały/rozdzielczość w bitach) 8/10 8/10 4/10 PWM 8 b/2 + do 16 b/6 kanałów 32 b/6 kanałów Częstotliwość taktowania rdzenia [MHz] 16 33 60 SPI/I2C/UART 1/1/2 1/-/3 2/1/2 Linie I/O 53 58 46 Oudowa TQFP64 TQFP176 LQFP64 Cena brutto [zł] 41,48*/54,90** 59,00* 42,58*** Ceny pochodzą z: * www.seguro.pl; ** www.tme.pl; *** www.kamami.pl
Elektronika Praktyczna 11/2004
LPC2124 ARM7TDMI 256 JTAG/IAP 16 4/10 32 b/6 kanałów 60 2/1/2 46 LQFP64 45,02***
69
P O D Z E S P O Ł Y gnałem zegarowym o częstotliwości 12 MHz (z możliwością jej wewnętrznego powielenia do 60 MHz). Ponadto, na płytce zestawu ulokowano (rys. 3): 2 kanały UART z dwukierunkowym konwerterem napięciowym, 8 diod LED, dwa przyciski, zespół stabilizatorów napięć zasilających (1,8 V do zasilania rdzenia mikrokontrolera, 3,3 V do zasilenia linii I/O oraz 5 V dla pozostałych
peryferiów), termistor i potencjometr służące do testowania przetworników A/C mikrokontrolera, wyświetlacz LCD o organizacji 2 x 16 znaków, a także zespół złączy (m.in. JTAG) i kilku jumperów, które służą do skonfigurowania zestawu. Pamięć programu mikrokontrolera może być programowana poprzez jeden z interfejsów szeregowych lub interfejs JTAG, ale w takim przypadku jest niezbędny dodatkowy, dość kosztowny interfejs sprzętowy.
Podsumowanie
Fot. 2. Wygląd zestawu ZL1ARM, który jest funkcjonalnym odpowiednikiem zestawu MCB2100
70
Sytuacja konstruktorów zamierzających zająć się mikrokontrolerami LPC2100 jest niemalże tak dobra, jak była niegdyś (i jest nadal) sytuacja użytkowników mikrokontrolerów AVR, 8051 lub PIC. Jest bowiem już dostępny niezły, bezpłatny kompilator C (w przypadku tak silnych procesorów programowanie w asemblerze może być utrudnione), można kupić pojedyncze egzemplarze układów (przynajmniej kilku wybranych wersji), a chętni wrażeń sprzętowych mogą niemalże od razu sięgnąć po któryś z zestawów przedstawionych w artykule. Rokuje to dobrze nowym mi-
krokontrolerom, które wyjątkowo (piszę to już jako praktyk) naprawdę udały się Philipsowi. Nie zmienią mojej opinii pojawiające się erraty not katalogowych - polecam je śledzić, zawierają bowiem wiele bardzo ważnych informacji! Andrzej Gawryluk Dodatkowe materiały informacyjne publikujemy na CD-EP11/2004B, można je też znaleźć w Internecie pod adresami: ♦ www.lpc2100.com, ♦ http://www.semiconductors.philips. com/markets/mms/products/microcontrollers/key_solutions/32bit/index.html, ♦ http://www.keil.com/mcb2100/, ♦ http://www.keil.com/arm/, ♦ http://www.inf.u-szeged.hu/gcc-arm/gnats. php, ♦ www.ashling.com/support/lpc2000/, ♦ groups.yahoo.com/group/lpc2100/, ♦ www.lpctools.com, ♦ http://www.hitex.co.uk/lpc.html Dodatkowe informacje Przedstawiony w artykule zestaw ZL1AVR jest dostępny w sklepie internetowym http://www.kamami.pl w cenie 279 zł brutto.
Elektronika Praktyczna 11/2004
K U R S
Niezbędnik dla amatorów i profesjonalistów
W głośnikowym żywiole, część 13 Obudowy bas-refleks, część 5 W kilku poprzednich odcinkach przedstawiliśmy zasadę działania obudowy bas-refleks, a miesiąc temu rozpoczęliśmy opis różnych sposobów wykonania otworów i tuneli. Teraz dokończenie tego tematu i na dokładkę omówienie charakterystyki impedancji właściwej działaniu obudowy bas-refleks.
Położenie otworu
kolumną ściany pomieszczenia, układowi grozi wzbudzenie. Należy zdać sobie sprawę, że fale promieniowane przez otwór mają długość znacznie większą, niż zazwyczaj wynosi odległość od ścian, więc typowe falowe zjawiska rezonansowe między otworem a tylną ścianą nie powstaną. Ponadto, długie fale niskich częstotliwości są przez otwory o relatywnie bardzo małych wymiarach promieniowane wielokierunkowo, a nie kierowane strumieniem w kierunku tylnej ściany. Zwiększenie ciśnienia niskich częstotliwości poprzez zbliżenie źródła promieniowania i powierzchni odbijających w nieco większym stopniu dotyczyć będzie otworu umieszczonego na tylnej ściance. Ale uzyskany efekt nie będzie drastyczny ponieważ znajdujący się kilkadziesiąt centymetrów dalej, na przedniej ściance, otwór bas-refleks promieniujący wielokierunkowo (z tego punktu widzenia) również znajduje się bardzo blisko ściany pomieszczenia za kolumną, gdyż promieniuje fale znacznie dłużRys. 49. Otwór może być umieszczony wszędzie – w praktyce naj- sze niż odległość częściej spotykamy go z przodu między nim a ściai z tyłu, czasami na dolnej ściance ną. Kompletnym – wówczas należy zapewnić duży nieporozumieniem prześwit między obudową a podło- jest natomiast pogą (cokołem) dejrzenie, że otwór Również z położeniem otworu wiąże się wiele mitów i nieporozumień. Chociaż nie jest to kwestia zupełnie obojętna dla końcowych rezultatów, to najważniejsze fakty tego dotyczące są najmniej znane. Zwykle rozważa się podstawowy wybór – czy otwór ma znajdować się na przedniej, czy na tylnej ściance (rys. 49). Warto zauważyć, że w przybliżeniu po połowie są stosowane rozwiązania realizujące pierwszą, jak i drugą wersję. To podpowiada, że obydwa rozwiązania są w pełni poprawne, cechy szczególne każdego z nich nie są silnie zaznaczone i nie należy oczekiwać dramatycznych zmian wraz z przeniesieniem otworu z jednej ścianki na drugą. Powszechnie uważa się, że otwory na tylnej ściance są „niebezpieczniejsze”, gdyż ze względu na mniejszą odległość od znajdującej się za
Elektronika Praktyczna 11/2004
na tylnej ściance promieniuje w fazie przeciwnej do tej, w jakiej promieniowałby znajdując się na przedniej ściance. Mówiąc językiem potocznym, układowi bas-refleks jest wszystko jedno, gdzie znajduje się otwór. Faza z jaką promieniuje jest tylko funkcją częstotliwości, przedstawioną w jednym z wcześniejszych odcinków. Owszem, odsunięcie otworu od głośnika zmienia w pewnym stopniu relacje fazowe między nimi, ale w przypadku zespołów głośnikowych o przeciętnych wymiarach zmiana ta nie jest istotna. Ponownie wystarczy porównać odległość między głośnikiem a otworem z długością fali, przy której obydwa źródła efektywnie współpracują (np. ok. 7 m dla 50 Hz) i widać, że dodatkowe przesunięcie fazowe będzie w zasadzie pomijalne. Zaletą zainstalowania otworu na tylnej ściance jest natomiast ograniczenie słyszalności rezonansów „piszczałkowych”, generowanych w zakresie średnich częstotliwości. Ale i zalet nie przeceniajmy – sądzi się, że częstotliwości średnie są promieniowane już kierunkowo, jednak sposób promieniowania zależy od relacji między długością fali a średnicą jego źródła. Ponieważ otwory bas-refleks mają zwykle średnicę niewielką (mniejszą od głośników nisko-średnio-
tonowych), więc i rezonanse częstotliwości średnich będą z nich dość szeroko rozpraszane i ostatecznie słyszalne również z drugiej strony zespołu głośnikowego. Okazuje się, że w większości przypadków wybór między przednią a tylną pozycją otworu nie prowadzi do rozwiązania jakichkolwiek problemów, ale też żadnych nie wywołuje. Stąd też pewnie takie „niezdecydowanie” producentów kolumn, w innym przypadku większość poszłaby jednym tropem. Bardziej kontrowersyjnym i egzotycznym miejscem dla otworu bas-refleks jest dolna ścianka obudowy. Trzeba wówczas przygotować odpowiednio wysokie nóżki dystansujące, aby ciśnienie mogło znaleźć ujście. Jeżeli
Rys. 50. W samej obudowie powstają fale stojące. Aby były w jak najmniejszym stopniu słyszalne pop r z e z o t w ó r b a s - r e f l e ksu, jego koniec powinien znajdować się jak najbliżej najcichszego miejsca obudowy, czyli jej środka. Najbardziej narażone na transmitowanie fal stojących są otwory znajdujące się blisko dolnej lub górnej ścianki
71
K U R S podstawowe wzory określające wymiary okrągłego otworu są tutaj niewystarczające. Zaletą otworu w dolnej Rys. 52. Typowe wytłumienie obudo- ściance jest możliwy bas-refleks polega na wyłożeniu wość zainstalowaścianek 2...3-cm warstwą – gąbki nia bardzo długiego poliuretanowej, wełny mineralnej, tunelu, nie ograniitp. Zmniejszanie wytłumienia aż do czanego dystansem jego całkowitego braku może pomiędzy przednią prawić dynamikę basu, ale zagraża a tylną ścianką. wzbudzeniem się silnych fal stojących. Całkowite wytłumienie obudo- Pr o m i e n i o w a n i e wy (włókniną, watą) zlikwiduje fale z takich bas-restojące, ale i osłabi działanie ukła- fleksów – o ile są dobrze dostrojone du rezonansowego – nie jest obciążopowierzchnia prześwitu nie ne żadną wadą. Wydawałoby jest wyraźnie większa od się, że bliskość podłogi wypowierzchni samego otwowołuje te negatywne skutki, ru, wówczas i powietrze jakich obawiamy się przy tam się znajdujące może instalowaniu otworu na tylsię „przyłączyć” do powienej ścianie. Jednak w praktrza w tunelu, co spowodutyce tak nie jest, co pośredje zupełnie inne dostrojenie nio wskazuje, że i otwór układu rezonansowego. Gena tylnej ściance nie jest neralnie, konstrukcje takie niczym specjalnie groźnym. należy wykonywać pod konJest wszakże jedna różnica trolą systemu pomiarowego, – strojąc bas-refleks umiesz-
72
czony na dolnej ściance, stroimy go wraz z „podłogą”, warunki akustyczne zostają ustalone. W przypadku otworu z tyłu, pewne zmiany w funkcjonowaniu układu powstają na skutek zbliżania lub oddalania kolumny od ściany pomieszczenia. Gdybyśmy jednak z góry założyli, że obudowa będzie znajdować się bardzo blisko ściany, wówczas moglibyśmy bezpiecznie założyć z tyłu otwór i dostroić go w takich warunkach. Tunele są narażone nie tylko na generowanie własnych rezonansów piszczałkowych, ale także na transmitowanie rezonansów wewnętrznych obudowy, czyli fal stojących (rys. 50). Z tego powodu warto starać się, aby wewnętrzny koniec tunelu znajdował się jak najbliżej najcichszego miejsca w obudowie, jakim jest... jej środek (fale stojące mają tam swoje węzły, a najgłośniej
Fot. 51. Widok jednej z wersji aluminiowej obudowy zestawu głośnikowego firmy Vienna Acoustics
jest w strzałkach). Z tego punktu widzenia najgorszym miejscem są okolice dolnej i górnej ścianki, gdzie jest największe ciśnienie długich fal stojących. Ciekawe jednak, że wielu producentów z upodobaniem właśnie tam lokuje otwory. Za ciekawostkę mogą uchodzić niektóre konstruk-
Elektronika Praktyczna 11/2004
K U R S cje firmy Vienna Acoustics (np. Schoenberg), w których ze względu na nietypową konstrukcję i kształt obudowy (aluminiowa i bardzo płaska – fot. 8), otwór zlokalizowano z boku.
Wytłumienie
Klasyczne wytłumienie obudowy bas-refleks polega na wyłożeniu samych ścianek ok. 3-cm warstwą wełny mineralnej lub gąbki poliuretanowej. Zabieg ten ma na celu zwalczać fale stojące, nie tłumiąc działania samego układu rezonansowego bas-refleks. W praktyce takie wytłumienie nie jest w pełni skuteczne w przeciwstawianiu się falom stojącym, jeżeli więc ich dokuczliwość jest duża, można zastosować grubszą warstwę materiału absorbującego, a także dodać trochę luźnego materiału bezpośrednio za głośnikiem. Dopóki materiał tłumiący nie znajdzie się w pobliżu otworu, działanie układu rezonansowego będzie efektywne. Można jednak spotkać rozwiązania ekstremalne. Niektórzy konstruktorzy preferują bardzo skromne wytłumienie obudowy, ponieważ słyszą w takiej sytuacji poprawę dynamiki. Problem fal stojących można próbować rozwiązywać wprowadzając nierównoległość ścianek, co oczywiście jest kłopotliwe i wymaga przygotowania niekonwencjonalnego projektu, a na pewno warto postarać się o „najcichszą” pozycję tunelu, aby tą drogą burza, jaka będzie szalała w środku, nie wydostawała się na zewnątrz. Na drugim skraju są obudowy bardzo silnie wytłumione, gdzie materiał całkowicie wypełniający skrzynkę znajduje się również przy samym wlocie tunelu. Powodem takich działań nie są już tylko fale stojące, ale dążenie do stłumienia samego układu rezonansowego bas-refleks, co jest polecane przy stosowaniu głośników
Elektronika Praktyczna 11/2004
o bardzo wysokich współczynnikach Q ts (pisaliśmy o tym wcześniej). Natomiast wypełnianie samego tunelu materiałem wytłumiającym jest już rozwiązaniem na tyle drastycznym, że wyłamuje się ono z idei czystego bas-refleksu. Obudowa zaczyna działać jak układ z otworem stratnym, podlegający już odrębnej analizie.
Impedancja
Działanie obudowy bas-refleks powoduje powstanie bardzo szczególnej charakterystyki modułu impedancji. Na charakterystyce impedancji głośnika swobodnie zawieszonego lub głośnika w obudowie zamkniętej, w zakresie niskich częstotliwości występuje pojedyncze maksimum, lokujące się przy częstotliwości rezonansowej (fs dla głośnika swobodnie zawieszonego, fc dla głośnika w obudowie zamkniętej). W przypadku obudowy z otworem zobaczymy dwa maksima. Minimum między nimi wskazuje z dobrym przybliżeniem na częstotliwość rezonansową obudowy fb. Pomiar modułu impedancji, który można przeprowadzić przy użyciu nawet dość prostych przyrządów, często służy do sprawdzenia, czy częstotliwość rezonansowa odpowiada założeniom projektowym. Jednak wypada wiedzieć, że najdokładniej na częstotliwość rezonansową wskazuje minimum wychylenia membrany głośnika, o którym to zjawisku pisaliśmy w pierwszym odcinku. Dysponując płynnie przestrajanym generatorem, zjawisko to można uchwycić nawet „na oko”. Po z y c j a m a ks i m ó w względem minimum zależy od wielu czynników. W przypadku, gdy maksima te mają symetryczną pozycję względem minimum i jednakowe wysokości, mamy do czynienia ze strojeniem obudowy dokładnie do częstotliwości rezonansowej głośnika swobodnie zawie-
73
K U R S szonego (fb = fs). Teoretycznie, czyli wedle przedstawionych wcześniej modeli, strojenie takie jest charakterystyczne dla modelu SBB4/BB4, który jest rzadko stosowany, ale prawidłowe także dla znacznie popularniejszego modelu QB3 i S C4, gdy Q ts głośnika wynosi ok. 0,4. Gdy dostroimy obudowę poniżej częstotliwości rezonansowej fs (a wedle modeli QB3/SQB3 i SC4/C4 należy tak czynić z głośnikami o Qts > 0,4), wówczas minimum przesuwa się w stronę niższych częstotliwości, a „dolne” maksimum staje się niższe od „górnego”. I odwrotnie – gdy dostroimy obudowę powyżej fs (prawidłowe dla Qts < 0,4), wówczas obniża się górne maksimum. Charakterystyka modułu impedancji obudowy bas-refleks może więc zdradzić nie tylko parametry jej strojenia, ale i niektóre parametry samego głośnika. Po z i o m w m i n i m u m
między wierzchołkami powinien być zbliżony do poziomu w minimum za drugim wierzchołkiem (który służy do określania impedancji znamionowej). Jeżeli minimum między wierzchołkami leży wyraźnie wyżej, mamy do czynienia z silnym wytłumieniem obudowy i jej układu rezonansowego – odbije się to również na charakterystyce głośnika w tym zakresie, odciążenie od wychyleń nie będzie już tak wyraźne. Z kolei obniżenie i zaokrąglenie dolnego maksimum wskazuje na pojawienie się wytłumienia w pobliżu otworu lub w nim samym i jest również efektem niewydolności zbyt małego otworu przy wysokich poziomach wysterowania. To naturalne – całkowite zamknięcie otworu spowodowałoby zniknięcie tego dolnego maksimum, jak i automatycznie zniknięcie minimum między maksimami, górne maksimum lekko
a)
b) 180
48
150
44
120
40
90
36
32
60
28
48
przemieściłoby się w dół skali częstotliwości i reprezentowało rezonans głośnika w obudowie zamkniętej. Również przy bas-refleksie górne maksimum pokazuje częstotliwość rezonansową głośnika w obudowie już po „wyłączeniu” się układu rezonansowego i leży niedaleko powyżej częstotliwości fc, jaka powstałaby po zamknięciu obudowy. Natomiast dolne maksimum powstaje na skutek zadziałania układu rezonansowego składającego się z połączonej masy układu drgającego głośnika wraz z masą powietrza w otworze, i podatności samych zawieszeń głośnika, leży więc zawsze poniżej częstotliwości fs. Na kształt każdej charakterystyki impedancji (rys. 53) wpływa nie tylko działanie obudowy, ale i filtrów zwrotnicy. Dlatego wszystkie opisane zjawiska dotyczące strojenia i charakterystyczne dla działania bas-refleksu mogą zostać
zmodyfikowane przez działanie filtrów, utrudniając interpretację i wnioskowanie co do działania samego bas-refleksu. Np. czasami spotyka się linearyzację impedancji w zakresie „górnego” wierzchołka, czasami działanie filtru subsonicznego, wywołującego wzrost impedancji w zakresie częstotliwości najniższych, czy działanie takiego filtru dolnoprzepustowego, które powoduje w pewnym zakresie spadek impedancji znacznie poniżej impedancji znamionowej samego głośnika, itd. Omówiliśmy już wszystkie albo prawie wszystkie zagadnienia teoretyczne, za miesiąc zaczniemy praktyki – z pomocą programów symulacyjnych będziemy przeprowadzać różne strojenia dla różnych głośników i obserwować, jakie otrzymujemy charakterystyki przetwarzania, impulsu, maksymalnej mocy i impedancji. Andrzej Kisiel
c) 180
48
150
44
120
40
90
36
32
60
32
30
28
30
28
24
0
24
0
24
0
20
-30
20
-30
20
-30
16
-60
16
-60
16
-60
12
-90
12
-90
12
-90
8
-120
8
-120
8
-120
4
-150
4
-150
4
-150
-180
0
-180
0
VIFA-IND PL18W0-09-08 Vented[BB4(S)] 1-Single unit
44 40
Vbox = 13.1 I Fb = 38.00 Hz F3 = 53.7 Hz
36
0
10
Spl = 87.4 dB Ql = 7.0 a = 1.91
VIFA-IND PL18W0-09-08 Vented[BB4(S)] 1-Single unit Vbox = 13.1 I Fb = 50.00 Hz F3 = 50.1 Hz
10
d)
Spl = 87.4 dB Ql = 7.0 a = 1.91
VIFA-IND PL18W0-09-08 Vented[BB4(S)] 1-Single unit Vbox = 13.1 I Fb = 30.00 Hz F3 = 64.3 Hz
180 150 120 90 60 30
-180
10
e) 180
48
150
44
120
40
90
36
32
60
32
28
30
28
24
0
24
0
20
-30
20
-30
16
-60
16
-60
12
-90
12
-90
8
-120
8
-120
4
-150
4
-150
-180
0
48
VIFA-IND PL18W0-09-08 Vented[BB4(S)] 1-Single unit
44 40
Vbox = 13.1 I Fb = 38.00 Hz F3 = 53.7 Hz
36
0
Spl = 87.4 dB Ql = 7.0 a = 1.91
10
Spl = 87.4 dB Ql = 7.0 a = 1.91
VIFA-IND PL18W0-09-08 Vented[BB4(S)] 1-Single unit Vbox = 13.1 I Fb = 38.00 Hz F3 = 53.7 Hz
Spl = 87.4 dB Ql = 7.0 a = 1.91
180 150 120 90 60 30
10
-180
Rys. 53. Cechą charakterystyczną impedancji obudów bas-refleks są dwa wierzchołki w zakresie niskich tonów, minimum między nimi leży w okolicach częstotliwości rezonansowej obudowy: a) dwa równej wysokości wierzchołki wskazują na dostrojenie obudowy do częstotliwości rezonansowej głośnika, czyli fb=fs, b) niższy górny wierzchołek wskazuje na dostrojenie obudowy powyżej częstotliwości rezonansowej głośnika, czyli fb>fs, c) niższy dolny wierzchołek wskazuje na dostrojenie obudowy poniżej częstotliwości rezonansowej głośnika, czyli fb
74
Elektronika Praktyczna 11/2004
M I N I P R O J E K T
Nastawnik mocy PWM Czêsto spotykanym problemem podczas regulacji wartoœci skutecznej pr¹du lub napiêcia jest zminimalizowanie mocy traconej w regulatorze. Rozwi¹zaniem tego problemu mo¿e byæ sterowanie impulsowe z wykorzystaniem modulacji szerokoœci impulsów PWM (Pluse Width Modulation). Rekomendacje: prezentowany projekt znajduje zastosowanie w obwodach pr¹du sta³ego jako rêczny nastawnik mocy dostarczanej do obci¹¿eñ o charakterze rezystancyjnym oraz indukcyjnym (w uk³adach oœwietleniowych, grzewczych i napêdach pr¹du sta³ego), a tak¿e wartoœci skutecznej pr¹du i napiêcia w zakresie regulacji od 0 do 100%.
Tab. 1. Parametry elektryczne regulatora Nazwa
Oznaczenie
WartoϾ
Jednostka
Napiêcie zasilania
UZAS
(12...100) *
V
Maksymalny pr¹d obci¹¿enia
IMAX
7 (33 **)
A
Zakres zmian wspó³czynnika wype³nienia PWM Czêstotliwoœæ sygna³u PWM
fPWM
0,1...99,9
%
ok. 2
kHz
* Przy UZAS przekraczaj¹cym 35 V nale¿y obni¿yæ wartoœæ napiêcia zasilaj¹cego modu³ (zacisk J1_UWE) ** Przy zwiêkszeniu wydajnoœci ch³odzenia tranzystora T1
Obci¹¿alnoœæ pr¹dowa i napiêciowa urz¹dzenia jest uzale¿niona od parametrów tranzystora wyjœciowego T1 (rys. 1), oraz wydajnoœci odprowadzania ciep³a. W opisywanym uk³adzie zastosowany zosta³ tranzystor HEXFET IRF540 o parametrach: VDSS=100 V, ID=33 A, RDS(ON)=44 mΩ. Uk³ad posiada dodatkowo zabezpieczenia: nadpr¹dowe
oraz przed b³êdnym pod³¹czeniem doprowadzeñ zewnêtrznych. Urz¹dzenie jest zasilane napiêciem o wartoœci 10 V za poœrednictwem stabilizatora U2 i diody D3, zabezpieczaj¹cej przed odwrotn¹ polaryzacj¹ napiêcia zasilaj¹cego. Wartoœæ UCC uzale¿niona jest od dopuszczalnych zakresów napiêæ zasilaj¹cych dla U1: od 2 do 18 V
oraz wymagan¹ wartoœci¹ napiêcia VGS tranzystora T1. Sygna³ PWM jest generowany przez uk³ad czasowy U1. Czêstotliwoœæ sygna³u okreœlaj¹ wartoœci elementów P1 i C6. Wspó³czynnik wype³nienia jest nastawiany potencjometrem P1. Rezystory R1 oraz R2 okreœlaj¹ minimalny i maksymalny wspó³czynnik wype³nienia. Nastawnik posiada zabezpie-
Rys. 1. Schemat elektryczny układu
Elektronika Praktyczna 11/2004
%#
M I N I P R O J E K T czenie nadpr¹dowe, w sk³ad którego wchodz¹ elementy: R3, R4, R5, C4, C5 i T2. Spadek napiêcia na rezystorze R5, podawany na bazê T2 za poœrednictwem filtru dolnoprzepustowego (R4, C5) jest sygna³em informuj¹cym o wartoœci pr¹du obci¹¿enia. Otwarcie tranzystora T2 powoduje roz³adowanie kondensatora C4 i podanie stanu niskiego na wejœcie Reset U1. Na wyjœciu uk³adu U1 (wyprowadzenie 3) ustawia siê stan niski: tranzystor T1 zostaje zablokowany do czasu na³adowania siê kondensatora C4. Je¿eli wartoœæ pr¹du obci¹¿enia nie przekracza wartoœci zadzia³ania zabezpieczenia, uk³ad wraca do normalnej pracy. W przeciwnym razie zostaje wy³¹czony na kolejny okres. Natê¿enie pr¹du zadzia³ania zabezpieczenia okreœla siê przez dobór rezystora R5 zgodnie z zale¿noœci¹: R5=0,7/IZAB. Sta³a czasowa elementów: R4 i C5 okreœla czas, przez jaki powinna utrzymaæ siê zwiêkszona wartoœæ pr¹du obci¹¿enia, aby nast¹pi³o zadzia³anie zabezpieczenia. Okres ten jest
%$
Rys. 2. Schemat montażowy płytki regulatora odwrotnie proporcjonalny do wartoœci pr¹du obci¹¿enia, tzn. przy wiêkszym przekroczeniu wartoœci pr¹du IZAB nastêpuje wczeœniejsze zadzia³anie zabezpieczenia. Natomiast sta³a czasowa elementów: R3 i C4 wp³ywa na czas, przez jaki uk³ad U1 pozostanie wy³¹czony po zadzia³aniu zabezpieczenia. Uk³ad jest montowany na jednostronnym obwodzie drukowanym (rys. 2) z laminatu szklanoepoksydowego, mocowanym do radiatora odprowa-
dzaj¹cego ciep³o od elementów T1 i U2. Wk³adki mocuj¹ce tych elementów znajduj¹ siê na ró¿nych potencja³ach, nale¿y wiêc zastosowaæ przek³adkê izolacyjn¹, najlepiej pomiêdzy stabilizatorem a radiatorem (mo¿liwe jest równie¿ wykorzystanie stabilizatora z izolowan¹ wk³adk¹ radiatorow¹). Je¿eli napiêcie zasilaj¹ce obci¹¿enie przekracza 35 V, to do zasilania modu³u (zacisk J1_UWE) nale¿y wykorzystaæ obni¿one napiêcie, ze wzglêdu na dopuszczalny spadek napiêcia (nie przekraczaj¹cy 30 V) pomiêdzy wejœciem a wyjœciem stabilizatora. Uk³ad zmontowany poprawnie nie sprawia problemów podczas uruchamiania, doboru wymaga jedynie rezystor R5, którego wartoœæ nale¿y wyznaczyæ z wy¿ej wymienionej zale¿noœci, ustalaj¹c w ten sposób pr¹d zadzia³ania zabezpieczenia. W zale¿noœci od oczekiwanych parametrów mo¿na równie¿ dobieraæ wartoœci elementów R4 i C5 (w celu uzyskania ¿¹danego czasu, po jakim nastêpuje zadzia³anie
WYKAZ ELEMENTÓW Rezystory: R1, R2: 1kΩ R3: 560kΩ R4: 470Ω R5: 0,1Ω/5W Kondensatory: C1, C2: 10µF/16V C3: 10nF C4, C5: 1µF C6: 1nF Półprzewodniki: D1, D2, D3: 1N4148 T1: IRF540 T2:BC847 U1: NE555 U2: 7810 (izolowany) Różne: JP1: ARK3 5mm JP2: WF3 (kompletne) P1: 1M A radiator podkładka izolacyjna laminat 1str. 30x45mm
zabezpieczenia) oraz R3 i C4 (dla okreœlenia czasu, przez który uk³ad jest zablokowany). Andrzej Grodzicki Tomasz Rak
Elektronika Praktyczna 11/2004
Uwaga! Na wkładce znajdują się lustrzane widoki płytek. Są one dostępne także w postaci elektronicznej na płytach CD-EP (tylko w EPoL) oraz na naszej stronie WWW pod adresem: pcb.ep.com.pl. Sposób wykonania płytek z wykorzystaniem matryc z EP opisaliśmy w EP11/94 (str. 47). Artykuł ten jest dostępny także pod adresem: http://www.ep.com.pl/?ftp/makepcb/index.html
Elektronika Praktyczna 11/2004
WKŁADKA
77
s Strona elementów Płytka drukowana wyświetlacza matrycowego (widok obu stron został pomniejszony o 10%) t Strona lutowania
s Strona elementów Płytka drukowana programatora mikrokontrolerów t Strona lutowania
s Płytka drukowana interfejsu joysticka
s Strona elementów Płytka drukowana sterownika VGA t Strona lutowania
Uwaga! Na wkładce znajdują się lustrzane widoki płytek. Są one dostępne także w postaci elektronicznej na płytach CD-EP (tylko w EPoL) oraz na naszej stronie WWW pod adresem: pcb.ep.com.pl. Sposób wykonania płytek z wykorzystaniem matryc z EP opisaliśmy w EP11/94 (str. 47). Artykuł ten jest dostępny także pod adresem: http://www.ep.com.pl/?ftp/makepcb/index.html
78
WKŁADKA
Elektronika Praktyczna 11/2004
K U R S
Sterowanie drukarkami za pomocą mikrokontrolerów część 1
Obecnie port równoległy jest wypierany z zastosowań przez dużo wygodniejszy w użyciu interfejs USB. Stale jednak stanowi podstawowe wyposażenie komputerów PC, a w sklepach i na rynku podzespołów wtórnych bez większych kłopotów można kupić drukarkę wyposażoną w złącze równoległe. Jej przeznaczenie w systemie z mikrokontrolerem może być różne i zależy od potrzeb i inwencji konstruktora czy programisty. Interesujący dla elektroników
Port równoległy jest do dziś jednym z najpowszechniej stosowanych interfejsów drukarkowych. Jest często wykorzystywany jako uniwersalny port dwukierunkowy, można także za jego pomocą sterować pracą drukarki. Celem artykułu jest przedstawienie przykładów ilustrujących sposób podłączenia drukarki do systemu wyposażonego w mikrokontroler z rdzeniem 8051/8052. wydaje się być zwłaszcza rynek wtórny, gdzie za niewielką cenę można nabyć drukarkę igłową czy atramentową, wyposażoną w ten rodzaj interfejsu i dołączyć ją do własnego urządzenia. Typowo, złącze portu równoległego
komputera PC to tzw. złącze DSUB żeńskie o 25 stykach. Interfejs zawiera: – 8 linii danych, – 5 linii do raportowania statusu urządzenia, – 4 linie kontrolne.
Tab. 1. Opis sygnałów złącza Centronics w odniesieniu do drukarki EPSON LX400 Numer wyprowadzenia portu równoległego (komputer PC)
Numer wyprowadzenia portu równoległego drukarki EPSON LX400
Nazwa sygnału
Kierunek sygnału w odniesieniu do komputera PC
Opis funkcji
1
19
/STROBE
Dwukierunkowy
Sygnał zapisu danych do bufora drukarki. Szerokość impulsu musi być większa niż 0,5 µs w urządzeniu odbierającym!
2
2
Dane, bit 0
Wyjście
Bit danych numer 0
3
3
Dane, bit 1
Wyjście
Bit danych numer 1
4
4
Dane, bit 2
Wyjście
Bit danych numer 2
5
5
Dane, bit 3
Wyjście
Bit danych numer 3
6
6
Dane, bit 4
Wyjście
Bit danych numer 4
7
7
Dane, bit 5
Wyjście
Bit danych numer 5
8
8
Dane, bit 6
Wyjście
Bit danych numer 6
9
9
Dane, bit 7
Wyjście
Bit danych numer 7
10
10
/ACK
Wejście
Krótki ujemny impuls, o czasie trwania około 12µs oznacza, że drukarka odebrała słowo danych i jej kontroler gotowy jest na przyjęcie następnego.
BUSY
Wejście
Stan wysoki oznacza, że kontroler jest zajęty i drukarka nie może odbierać danych. Pojawia się on w następujących sytuacjach: • Podczas przesyłania lub odbioru danych, • Podczas drukowania, • Gdy drukarka jest odłączona, • Gdy kontroler drukarki zgłasza błąd wydruku.
11
11
12
12
PE
Wejście
(Paper Empty) Stan wysoki sygnału informuje o braku papieru w drukarce.
13
13
SELECTED
Wejście
Stan wysoki oznacza, że drukarka jest wybrana i załączona. W drukarce EPSON LX400 wyprowadzenie dołączone na stałe do +5V przez rezystor 3,3 kV.
14
14
/LF
Wyjście
Line Feed, stan niski powoduje, że papier wysuwany jest automatycznie o 1 linię po zakończeniu wydruku. Stan niski oznacza, że nastąpił błąd wydruku. Może to być spowodowane jedną z następujących sytuacji: • Skończył się papier, • Drukarka jest odłączona (w stanie off-line), • Wystąpił błąd kontrolera drukarki (np. zablokowana głowica drukująca).
15
32
/ERROR
Wejście
16
31
/INIT
Wyjście
Stan niski powoduje wyzerowanie bufora drukarki oraz ustawienie głowicy drukującej w pozycji spoczynkowej. Minimalny czas trwania stanu niskiego sygnału INIT dla drukarki EPSON LX400 wynosi 50 µs.
17
36
/SELECT PRINTER
Wyjście
Stan wysoki tej linii umożliwia zmianę statusu drukarki za pomocą rozkazów DC1 i DC3 (Select i Deselect Printer). Stan niski powoduje, że drukarka jest zawsze w stanie „on-line”, a rozkazy te są ignorowane.
18 .. 25
19 .. 30
GND
masa
Elektronika Praktyczna 11/2004
Masy sygnałów interfejsu.
81
K U R S Zestawienie linii wraz z krótkim opisem ich funkcji znajduje się w tab. 1. Port równoległy nowoczesnego komputera PC może pracować w jednym z 5 trybów: Compatibility Mode, Nibble Mode, Byte Mode, EPP (Enhanced Parallel Port), ECP (Enhanced Capability Port). Oczywiście nic nie stoi na przeszkodzie, aby opracować własny interfejs dla systemu z mikrokontrolerem pracujący w trybach rozszerzonych, jednak dla większości zastosowań służących dołączeniu drukarki wystarczający jest tryb standardowy. Na jego opisie skupimy się w tym artykule, dla niego również opracowany został przykładowy interfejs łączący mikrokontroler AT89S8252 z drukarką igłową marki EPSON LX400. Tryb standardowy, często nazywany również trybem Centronics, umożliwia wyłącznie przesyłanie danych do drukarki lub innego dołączonego urządzenia. Transmisja przebiega więc jednokierunkowo z typową prędkością około 50 kB/s, a maksymalnie około 150 kB/s na sekundę. Przesyłanie danych z prędkością do około 2 MB/s jest możliwe w trybach EPP i ECP dzięki dodatkowym układom takim, jak bufor FIFO oraz kontroler DMA. Wróćmy jednak do trybu standardowego i drukarki. Dane przesyłane są w formie słów 8-bitowych i zapisywane do rejestru wejściowego drukarki przez opadające zbocze sygnału STROBE. Minimalny czas trwania impulsu STROBE wynosi 1 ms. Wymagane jest, aby słowo danych pojawiło się jako pierwsze oraz aby upłynął krótki czas (około 500 ns) pomiędzy wysłaniem słowa danych a opadającym zboczem sygnału STROBE. Po odbiorze danych, drukarka ustawia stan wysoki sygnału BUSY zgłaszając w ten sposób stan zajętości (np. wydruk linii czy też przepełnienie bufora danych). Po zakończeniu np. wydruku linii, ustawiany jest stan niski linii BUSY oraz pojawia się krótki, trwający kilka ms (typowo 5...12 ms, uwaga: czas trwania może być różny dla różnych drukarek) ujemny impuls na linii ACK. Potwierdza on odbiór da-
nych oraz sygnalizuje gotowość drukarki do przyjęcia następnych. Na rys. 1 przedstawiono typowe sekwencje sygnałów właściwe dla transmisji danych pomiędzy drukarką oraz komputerem PC. Przesyłając dane do drukarki można zignorować stan linii ACK badając tylko stan linii BUSY. Nieznacznie przyspiesza to transmisję. Poziomy napięć sygnałów na doprowadzeniach portu równoległego zgodne są z wymaganiami dla układów TTL. Z racji tego, że port wyjściowy komputera PC jest wyposażony w bufory, obciążalność prądowa takiego portu jest znacznie wyższa, niż 1 s.o.l. (1 s.o.l. oznacza standardowe obciążenie logiczne; dla TTL wynosi ono 10 mA w stanie niskim, co odpowiada możliwości dołączenia do wyjścia 10 wejść układów TTL) i w praktyce może sięgać nawet kilkudziesięciu mA dla pojedynczego wyprowadzenia. Uwaga ta dotyczy linii wyjściowych. Obciążenie wnoszone przez wejście portu jest równe 1 s.o.l. Na koniec tego krótkiego opisu jedna ważna uwaga. Drukarka oprócz elementów elektronicznych, zawiera również mnóstwo różnego rodzaju elektromagnesów. Mogą to być na przykład silniki prądu stałego oraz silniki krokowe, głowica drukująca i inne układy wykonawcze. Są one źródłem licznych zakłóceń, z którymi w skrajnych przypadkach musi poradzić sobie interfejs I/O. Z tego powodu zalecane jest, aby układy wyjściowe miały możliwie niską impedancję. To oznacza, co najmniej, użycie układów buforów wyjściowych, a w skrajnych przypadkach nawet optoizolacji mimo, iż mikrokontroler może bezpośrednio sterować drukarką. Odrębne zagadnienie stanowi poprawne wykonanie kabla łączącego drukarkę z portem równoległym. Ten jednak najczęściej kupowany jest jako gotowy, wykonany fabrycznie, a więc z zachowaniem odpowiednich norm dla połączenia. Jacek Bogusz,EP
[email protected]
Tryby pracy interfejsu drukarkowego Compatibility mode (tryb standardowy) to oryginalny interfejs równoległy Centronics. Opracowany został do użytku z drukarkami igłowymi oraz starszymi modelami drukarek laserowych. Tryb Compatibility może być łączony z trybem Nibble dla uzyskania transmisji dwukierunkowej. Nibble mode (tryb podziału bajtu) pozwala na przesłanie danych z powrotem do komputera PC. Tryb Nibble używa linii statusu (kontrolnych) do przesłania dwóch „porcji” o długości 4 bitów w dwóch cyklach transmisji. Tryb ten używany był np. przez popularny w latach 90-tych program Norton Commander do transmisji danych przez interfejs równoległy umożliwiając połączenie w ten sposób dwóch komputerów. Byte mode wymaga dwukierunkowego portu wyjściowego komputera. Umożliwia transmisję danych w postaci liczb jednobajtowych do i z komputera poprzez port równoległy. Niektóre starsze modele drukarek laserowych wymagały tego trybu do poprawnej komunikacji z komputerem. Dane przesyłane są do/z komputera z tą samą prędkością. ECP mode (Enhanced Capability Port mode) to zaawansowany tryb pracy portu równoległego umożliwiający podłączenie drukarki i skanera. Wymaga użycia specjalnego oprzyrządowania, to jest kontrolera DMA oraz układów buforów FIFO do kolejkowania danych oraz dla szybkiej ich wymiany. Ten tryb pracy portu równoległego pozwala na przykład na sprzętową kompresję danych (np. obrazów ze starszych modeli skanerów) oraz ich przesyłanie z prędkością do 2 MB/s. Jedną z interesujących funkcji jest adresowanie kanałów transmisji. Używane są one do obsługi dołączonych urządzeń wielofunkcyjnych. Na przykład, jeśli urządzenie wielofunkcyjne drukuje i w tym samym czasie wysyła dane przez modem, to oprogramowanie przydziela modemowi nowy kanał transmisji tak, że obie te funkcje mogą być realizowane jednocześnie. EPP mode (Enhanced Parallel Port mode) to zaawansowany tryb transmisji opracowany przez firmy Intel, Xircom i Zenith Data Systems. Umożliwia on pracę portu równoległego zarówno w trybie zbliżonym do ECP jak i w trybie standardowym. W trybie EPP używane są tzw. cykle danych, które przesyłają dane pomiędzy komputerem i urządzeniem peryferyjnym oraz cykle adresowe, które mogą przyporządkowywać adres, kanał lub zawierać komendę sterującą. Dane przesyłane są z prędkością od 500 kB/s do 2 MB/s. Tryb EPP jest w pełni dwukierunkowy. Umożliwia to dołączenie do komputera urządzeń do akwizycji danych, przenośnych napędów dysków i innych urządzeń.
Rys. 1. Sygnały podczas transmisji danych do drukarki
82
Elektronika Praktyczna 11/2004
B A S C O M O W E
P O R A D Y
Rubryka ta powstałała z myślą o rozwiązywaniu problemów, jakie najczęściej spotykają programiści. W tym „kąciku” będziemy się starać w miarę przystępnie przedstawiać rozwiązania tych problemów. Zatem zachęcamy wszystkich Czytelników do ich zgłaszania.
Bascom i 1-Wire W tym odcinku zajmiemy się opisem dostępu do układów dołączonych do magistrali 1Wire z poziomu Bascoma. Jak pewnie część z Czytelników EP wie, jest to magistrala zaprojektowana przez firmę Dallas (obecnie Maxim-Dallas). Magistrala ta używa jednego przewodu do zasilania i przesyłania danych oraz oczywiście przewodu masy. Gdy magistrala 1Wire jest wolna (czyli nie odbywa się żadna transmisja), na linię danych jest podawane napięcie +5 V, co powoduje naładowanie wewnętrznego kondensatora buforującego zasilanie w układzie dołączonym do magistrali (uproszczony schemat blokowy ilustrujący budowę układu DS1990 pokazano na rys. 1). Ładunek zgromadzony w kondensatorze jest wykorzystywany do zasilania układu podczas transmisji. Niektóre układy z interfejsem 1Wire mają dodatkowe wyprowadzenie, do którego jest podłączane dodatkowe napięcie zasilające +5 V. Jest to rozwiązanie stosowane przy transmisjach na duże odległości, które znacząco skraca czas przesyłania informacji (np. w DS18B20 z 750 ms do 250 ms). Pr z y p r o j e k t o w a n i u u r z ą d z e ń z użyciem 1Wire trzeba wziąć pod uwagę kwestie zasilania oraz czasu odczytu i konwersji parametrów. Najczęściej stosuje się metodę zasilania z tzw. rezystorem pull-up. Do podłączenia układów 1Wire na krótkie odległości (20...30 m) możemy zastosować zwykły przewód telefoniczny, natomiast dla połączeń dłuższych zdecydowanie korzystniej jest użyć skrętki (Dallas zaleca UTP kategorii 5, lecz
Rys. 1
Elektronika Praktyczna 11/2004
Fot. 2
zwykła skrętka, np. alarmowa, także będzie poprawnie działać). Według informacji udostępnionych przez autora BASCOM-a procedura przeszukiwania magistrali umożliwia znalezienie do około 50 elementów na sekundę, a odczytywanie danych z różnych układów powinno być możliwe dla 13 urządzeń na sekundę. W nocie katalogowej DS1990A można znaleźć informację, że odczyt numeru seryjnego pastylki nie powinien przekroczyć 10 ms.
Do magistrali 1Wire można podłączyć wiele układów, takich jak np. czujniki wartości nieelektrycznych (np. opisany w dalszej części artykułu czujnik temperatury DS1820), potencjometry, przekaźniki, a także układy iButton (czyli układy montowane w metalowych kapsułkach, jak na fot. 2). Do zilustrowania sposobu obsługi magistrali 1Wire wykorzystamy cieszący się od lat popularnością termometr DS1820 oraz jego zmodyfikowaną, unowocześnioną wersję – DS18B20. Układ DS1820 jest przedstawicielem scalonych termometrów z serii 1Wire, podłączanych do mikrokontrolera za pomocą jednej linii I/O. Typowy sposób podłączenia układu DS1820 do procesora przedstawiono na rys. 3. Jak widać, do pracy układu jest jeszcze potrzebny rezystor „podciągający” linię danych I/O do plusa zasilania. Nie jest on co prawda niezbędny, jednak producent zaleca takie właśnie podłączenie. Z doświadczenia wynika, że zastosowanie go zdecydowanie polepsza warunki transmisji,
Rys. 3
83
B A S C O M O W E
P O R A D Y
Rys. 4
zwłaszcza przy współpracy z procesorami AVR. Rezystancja tego rezystora powinna wynosić około 3,3...4,7 kV, jednak przy podłączeniu większej liczby układów lub podłączeniu ich za pomocą dłuższych, kilkumetrowych przewodów, można wartość rezystancji zmniejszyć do około 1 kV. Drugim popularnym układem z rodziny DS1820 jest układ oznaczony symbolem DS18B20. Sposób transmisji oraz podłączenia do mikrokontrolera są identyczne, a różnice polegają na sposobie odczytu temperatury oraz dokładności. Układ DS1820 zapisuje temperaturę z rozdzielczością 9 bitów (zakres od –55oC do 125oC, z rozdzielczością co 0,5oC), natomiast DS18B20 zapisuje temperaturę z rozdzielczością od 9 do 12 bitów. Aby odczytać temperaturę z układu DS1820, należy wykonać kilka czynności związanych ze specyfiką magistrali 1Wire. Po pierwsze, musimy znać numer seryjny układu. Numer jest 8-bajtowy – zapisany na stałe w układzie. Numer ten ma następującą strukturę (rys. 4): – Pierwszy odczytany bajt to numer rodziny (dla DS1820 to 10h, czyli 16 dziesiętnie, dla DS18B20 to 28h, czyli 40 dziesiętnie). Uwaga! Przy połączeniu tylko jednego układu można pominąć procedurę odczytu i zapisu nr seryjnego. – Kolejne 6 bajtów to adres konkretnego egzemplarza układu. – Ostatni bajt to suma kontrolna, którą w ramach tego artykułu nie będziemy się zajmować. Jeżeli w systemie używamy jednego układu DS1820, to procedura odczytu przebiega następująco (listing 1): – inicjalizacja magistrali, – odczyt numerów seryjnych układów (w przypadku 1 układu ten krok może być pominięty), – w y b ó r ko n k r e t n e g o u k ł a d u (w przypadku 1 układu ten krok może być pominięty), – wysłanie żądania odczytu temperatury, – oczekiwanie na konwersję temperatury, – odczyt pierwszego bajtu danych, – odczyt drugiego bajtu danych, – ponowna inicjalizacja magistrali, – programowa konwersja odczyta-
84
nej wartości na stopnie Celsjusza. Magistralę 1Wire ustawiamy w stan gotowości do pracy poleceniem 1reset. Jak można zauważyć, polecenie zaczyna się od 1w... i jest regułą, że wszystkie polecenia dotyczące magistrali 1Wire zaimplementowane w Bascomie zaczynają się od 1w.... W zależności od tego, ile układów dołączono do magistrali 1Wire, można zastosować dwa sposoby jej przeszukiwania. Przy dołączonym jednym układzie można od razu użyć funkcji 1wsearchfirst(), która zwraca pierwszy znaleziony numer urzą-
dzenia z magistrali 1Wire. Przy dołączonych do magistrali kilku układach (jak na rys. 5) najlepiej użyć zestawu kilku funkcji, a mianowicie: 1wirecount(), 1wsearchfirst(), 1wsearchnext(). Pierwsza z nich zwraca liczbę dostępnych układów, co można wykorzystać do identyfikacji dołączonych układów. Kolejne polecenie podaje numer seryjny pierwszego znalezionego układu. Ostatnie z wymienionych poleceń podaje numer następnego (kolejnego) układu. Wyboru docelowego układu 1Wire realizujemy, zapisując kolejno numer funkcji wyboru
List. 1. Program przeznaczony do współpracy z JEDNYM czujnikiem DS1820 podłaczonym do magistrali 1Wire $regfile = „m8def.dat” $crystal = 4000000 Config 1wire = Portb.0
'konfiguracja pinów
Declare Sub Pomiar Deflcdchar 0 , 6 , 9 , 9 , 6 , 32 , 32 , 32 , 32
'deklaracja symbolu stopień
Dim T(2) As Byte
'tablica dwóch bajtów do przechowywania 'temperatury
Cls Do
Call Pomiar Cls Locate 1 , 1 Lcd „Temp=” ; If T(2) > 0 Then Lcd „-” ; Lcd T(1) ; Lcd Chr(0) ; „C” Loop End Sub Pomiar 1wreset If Err = 1 Then Cls Lcd „Brak DS1820 „ Do 1wreset Loop Until Err = 0 End If 1wwrite &HCC 1wwrite &H44 Waitms 750 1wreset 1wwrite &HCC 1wwrite &HBE T(1) = 1wread() T(2) = 1wread() 1wreset If T(2) > 0 Then T(1) = 256 - T(1) T(1) = T(1) / 2 End Sub
'wywołanie procedury pomiar 'ustaw kursor 'wyswietlanie w zależności od znaku temperatury
'inicjacja magistrali 1WIRE 'kontrola błędu - jeśli err=1 wtedy 'nie znaleziono czujnika 'poinformuj o tym 'poczekaj 'Wybór układu (dla 1 sztuki pomijamy wysyłanie 'numeru) 'Polecenie konwersji temperatury 'czas konwersji 750 ms 'inicjacja magistrali 1WIRE 'Wybór układu (dla 1 sztuki pomijamy wysyłanie 'numeru) 'żądanie odczytania temperatury 'odczytaj z magistrali 1WIRE 1 bajt 'do 1 elementu tablicy T 'odczytaj z magistrali 1WIRE 2 bajt 'do 2 elementu tablicy T 'inicjacja magistrali 1WIRE 'Jeśli t(2)>0 to temperatura jest ujemna 'oblicz temperaturę zgodnie z danymi noty 'katalogowej
Rys. 5
Elektronika Praktyczna 11/2004
B A S C O M O W E układu (tzw. Match ROM – kod polecenia 55h) oraz numer seryjny układu odczytany wcześniej: 1wwrite &H55 For I = 1 To 8 1wwrite nr_ukladu(i) Next I
Przy kilku układach dołączonych do magistrali należy wywoływać tę funkcję zawsze przed kolejnymi czynnościami (ponieważ dzięki temu żądane operacje przeprowadzimy tylko na wybranym układzie). Kolejny punkt, czyli wysłanie żądania odczytu temperatury, wykonujemy wysyłając do układu polecenie o kodzie 44h. Następnym ważnym krokiem, który często powoduje frustrację użytkowników, jest oczekiwanie na konwersję temperatury. Po wysłaniu bajtu 44h układ DS1820 musi odczytać i przekonwertować dane do postaci dwóch liczb typu byte. Jeśli czas oczekiwania na wynik jest zbyt krótki, scalony termometr podaje jako wynik wartość „85”. W zależności od rozdzielczości oraz układu konieczne czasy oczekiwania są różne, najlepiej dobrać je eksperymentalnie. Jako wartość bezpieczną dla wszystkich układów z rodziny DS18xx można przyjąć 750 ms. Po dokonaniu konwersji możemy przystąpić do odczytu wartości temperatury. Wykonujemy to w sposób opisany wcześniej – wybieramy konkretny układ docelowy i następnie wysyłamy do układu wartość BEh: 1wwrite &HBE 'żądanie odczytania temperatury T(1) = 1wread() 'odczytaj z magistrali 1WIRE 1 bajt T(2) = 1wread() 'odczytaj z magistrali 1WIRE 2 bajt
Po wykonaniu tych czynności niezbędna jest ponowna inicjalizacja magistrali poleceniem 1wreset. Do wykonania pozostało ostatnie zadanie, czyli konwersja odczytanej wartości na stopnie Celsjusza. Jej przebieg jest uzależniony od typu układu, ponieważ – jak wspomnieliśmy wcześniej – DS1820 udostępnia zapis temperatury na 9 bajtach, a DS18B20 na 12 bajtach. W przypadku DS1820 konwersja temperatury z dokładnością 1 stopnia wygląda następująco: If T(2) > 0 Then T(1) = 256 – T(1) 'Jeśli t(2)=0 to temperatura jest 'ujemna T(1) = T(1)/2 'tu pozbywamy się ostatniego bitu 'części ułamkowej)
Pozostaje nam tylko wyświetlić temperaturę na wyświetlaczu: Cls Locate 1 , 1 'ustaw kursor Lcd „Temp=” ; If T(2) > 0 Then Lcd „-” ; 'wyświetlanie w zależności od znaku
Elektronika Praktyczna 11/2004
P O R A D Y
List. 2 Procedura konwersji wyniku pomiaru $regfile = „m8def.dat” 'XTAL $crystal = 4000000 Config 1wire = Portb.0 Declare Sub Pomiar Declare Sub Wyb_uklad
'konfiguracja pinu 1Wire 'procedura odczytu
Dim Nr_ukladu1(8) As Byte Dim Nr_ukladu2(8) As Byte Dim I As Byte , A As Byte Dim T(2) As Byte nika wartości Dim Temp As Integer Dim Ulamek As Integer Dim Znak As Byte
'tablica 'tablica 'zmienne 'tablica
do przechowywania nr 1 układu do przechowywania nr 2 układu pomocnicze przechowująca odczytane z czuj-
'temperatura całkowita 'część ułamkowa
Deflcdchar 0 , 12 , 18 , 18 , 12 , 32 , 32 , 32 , 32
'deklaracje znaków specjalnych
Cls Nr_ukladu1(1) = 1wsearchfirst() Nr_ukladu2(1) = 1wsearchnext()
'kasujemy LCD 'pobieramy nr pierwszego układu 'pobieramy nr drugiego układu
Do
'pętla główna 'odczytujemy po kolei temp z czujników 'jeśli czujnik pierwszy to ustawiamy 'kursor w 1 linii, jeśli 2 to w drugiej 'odczytanie temperatury w procedurze 'wyswietlenie nr czujnika 'i temperatury całkowitej
For A = 1 To 2 If A = 1 Then Locate 1 , 1 Else Locate 2 , 1 Call Pomiar Lcd „T(„ ; A ; „)=” ;
If Znak = 1 Then Lcd „-”; Lcd Temp ; „.” ; If Ulamek = 625 Then Lcd „0”; Lcd Ulamek ; Chr(0) ; „C Next A Loop
„
Sub Pomiar 1wreset If Err = 1 Then odpowiada do err=1 i Cls Lcd „Brak ukladu” Do 1wreset Loop Until Err = 0 End If Call Wyb_uklad 1wwrite &H44 Waitms 750 1wreset Call Wyb_uklad 1wwrite &HBE T(1) = 1wread() T(2) = 1wread() 1wreset
'wyświetlenie ułamka i symbolu stopień 'koniec pętli głównej 'proceduta odczytu 'reset magistrali 1wire 'jezeli uklad dolaczony do magistali nie 'czysc LCD 'wyswietl komunikat 'petla do-loop w celu wstrzymania 'programu do czasu podlaczenia 'urzadzenia 'wywołanie układu 'Polecenie konwersji temperatury 'czas konwersji zgodnie 'z kartą katalogową 'reset magistrali 1wire 'wywołanie układu 'żądanie odczytania temperatury 'odczytaj z magistrali 1WIRE 1 bajt 'odczytaj z magistrali 1WIRE 2 bajt 'reset magistrali 1wire
'Wynik w DS18B20 jest zapisaywany w dwóch bajtach. High=SSSS SHHH, Low = HHHH LLLL, 'gdzie S-znak, H-bity czesci całkowitej pomiaru temperatury w stopniach [C], 'L-bity wyniku po przecinku (L*0,0625 [C]). 'czyli najlepiej trzeba złączyć w jeden bajt bity SHHH oraz HHHH co da temperaturę zapisaną wprost 'na 7 bajtach (H) - jeśli będzie ujemna wtedy S = 1 i należy ją przeliczyć: 255-0HHHHHH 'Dodatkowo należy z bajtu Low usunąć część HHHH i pozostanie 0000LLLL czyli część ułamkowa 'to co pozostanie należy pomnożyć przez 0,0625 s (rozdzielczość maksymalna) 'procedura poniższa jest uniewrsalna i działa dobrze dla każdej ustawionej rozdzielczości czujnika 'od 9 do 12 bitów Temp = Makeint(t(1) , T(2)) Temp = Temp / 16 If T(2) = &HFF And T(1) > &HF0 Then Znak = 1
T(1) = T(1) And &H0F Ulamek = T(1) * 625 If T(2) > 127 Then Ulamek = 10000 - Ulamek End Sub Sub Wyb_uklad 1wwrite &H55 For I = 1 To 8 If A = 1 Then 1wwrite Nr_ukladu1(i) If A = 2 Then 1wwrite Nr_ukladu2(i) Next I End Sub
'temperatury Lcd T(1) ; Lcd Chr(0) ; „C” 'wyświetlenie znaku stopień Celsjusza
Niektóre źródła podają inny sposób wyświetlania temperatury odczytanej z czujnika, mianowicie wykorzystuje się polecenie fusing oraz zmienną typu single: Temperatura = Fusing(temp, „#.&”)
Jest to polecenie wysoce nieefektyw-
'łączymy bajty w zmienną typu INTEGER '(-32,768 Do +32,767) ' pozbywamy się części ułamkowej 'zmienna I jest tu wykorzystana jako 'wskaznik znaku temperatury miedzy '-1 a 1 stopien 'poniewaz czesc calkowita wynosi 0 '(bez znaku) 'tu obliczamy ułamek - pozbywamy się '4 najstarszych bitów 'mnożymy przez rozdzielczość czujnika 'jeśli temp ujemna to przeliczamy 'część ułamkową
'Wybór układu
ne, które w testowanym układzie zwiększało rozmiar pamięci programu o ponad 500 bajtów, co w wielu przypadkach (np. przy zastosowaniu popularnego AT90S2313 stanowi ponad 25% jego pamięci) dyskwalifikuje je. Przedstawimy także dwie procedury związane z obsługą czujnika DS18B20. Tematami, które zazwyczaj są pomijane lub wygłasza się o nich błędne opi-
85
B A S C O M O W E
P O R A D Y
nie, jest zmiana rozdzielczości pomiaru oraz obsługa czujników w trybach niższej rozdzielczości. W nocie katalogowej układu DS18B20 znajduje się informacja, że jeśli wybrano tryb konwersji 12-bitowy, to ułamek jest zapisany na 4 bitach, jeśli 11-bitowy, to ułamek zapisano na 3 bitach, w przypadku 10-bitowego trybu pomiaru ułamek zakodowano na 2 bitach, a w przypadku pomiaru 9-bitowego ułamek znajduje się na jednym bicie (czyli 3 najmłodsze bity są nieistotne). Podstawową procedurę konwersji pokazano na listingu 2. Jest to procedura dosyć często spotykana w różnych poradach (ale często bywa w nich niekompletna informacja, ograniczająca się do stwierdzenia „Podziel przez 16, zamiast przez 2, jak dla DS1820”). W przykładzie przedstawiono sposób odczytu włącznie z usunięciem ograniczeń wprowadzanych poprzez zastosowanie zmiennej Integer (problem ze znakiem – przy temperaturach wyższych niż –1 stopień, w zakresie od –1 do zera). Przedstawię jeszcze alternatywny sposób obliczania i wyświetlania temperatury. Jego zaletą jest fakt, że program po kompilacji jest krótszy od tego w przykładzie o 90 bajtów. Wynik pomiaru DS18B20 jest zapisywany w dwóch bajtach: High=SSSS SHHH, Low = HHHH LLLL, gdzie: S – znak, H – bity części całkowitej pomiaru temperatury w stopniach [C], L – bity wyniku po przecinku (L*0,0625 [C]). Po odczytaniu danych z DS1820, należy złączyć w jeden bajt bity SHHH oraz HHHH, co da wartość temperatury zapisaną na 7 bitach (H). Jeśli temperatura będzie ujemna, wtedy S = 1 i należy ją przeliczyć zgodnie ze wzorem: 255-0HHHHHH Dodatkowo z bajtu Low należy usunąć część HHHH tak, że pozostanie 0000LLLL, czyli część ułamkowa. To co pozostanie, należy pomnożyć przez 0,0625 (rozdzielczość maksymalna): I = T(1) 'tu wykorzystujemy zmienną I jako 'zmienną pomocniczą przy wyświetlaniu 'części ułamkowej I = I And &H0F 'tu pozbywamy się 4 niepotrzebnych 'bitów (część całkowitą) – zostaje 'tylko część ułamkowa Shift T(1) , Right , 4 'tu pozbywamy się bitów ułamka 'części T(1) ponieważ mamy je już 'odseparowane w I Shift T(2) , Left , 4 'a tu „wycinamy” niepotrzebne nam '4 początkowe bity znaku (zostaje 'tylko piąty z nich jako najstarszy 'w części t(2))
86
T(1) = T(2) Or T(1) 'łączymy skonwertowane t(1) i t (2) 'w zmienną T(1) Ulamek = I * 625 'mnożymy razy maksymalną rozdzielczość If T(1) > 127 Then 'jeśli t(2) mamy > 127 to znaczy 'że bit znaku jest ustawiony czyli 'liczba jest ujemna T(1) = 255 – T(1) 'konwertujemy temperaturę ujemną Ulamek = 10000 – Ulamek End If
Użytkownikowi pozostaje sprawdzić podczas wyświetlania znak wyniku oraz skontrolować, czy część ułamkowa nie jest równa 625 – wtedy należy wyświetlić jeszcze przed zmienną Ulamek znak „0”. Na listingu 2 pokazano alternatywny sposób odczytu temperatury z czujnika, przy wykorzystaniu zmiennej temp typu integer (co powoduje wygenerowanie dłuższego kodu wynikowego). Do przechowywania numerów układów wykorzystujemy tablice nr_ukladu(8) i nr_ukladu2(8). Numer układu, z którego będziemy czytać dane, przepisujemy z wybranej tablicy do tablicy Biezacy(8). W procedurze Wybierz_uklad dokonujemy zapisu numeru układu do magistrali, natomiast w pętli głównej w zmiennej A przechowujemy numer indeksu aktualnie odczytywanego układu. W celu oszczędzenia pamięci można wykorzystać pamięć EEPROM do przechowywania numerów układów – przykład znajduje się na stronie EP w dziale Download oraz na płycie CD-EP11/2004B. Teraz przedstawimy sposób przestawienia czujnika DS18B20 w tryb mniejszej rozdzielczości. Wskazane jest to wtedy, kiedy nie zależy nam na dokładności, ale na czasie odczytu i konwersji – w trybie 12-bitowym czas konwersji jest niemal 8 razy dłuższy (750 ms) niż w przypadku trybu 9-bitowego (100 ms): 1wreset Call Wybierz_uklad 1wwrite &H4E 'Polecenie zapisu pamięci 1wwrite &H00 'Zapis dowolnego bajtu '(pamięć użytkownika) 1wwrite &H00 'Zapis dowolnego bajtu '(pamięć użytkownika) 1wwrite &B00011111 'Zapis bajtu konfiguracyjnego '9 bitów '1wwrite &B00111111 'Zapis bajtu konfiguracyjnego 10 bitów '1wwrite &B01011111 'Zapis bajtu konfiguracyjnego 11 bitów '1wwrite &B01111111 'Zapis bajtu konfiguracyjnego 12 bitów 1wreset 'koniec
Po wykonaniu procedury przełączającej układ jest ustawiany w tryb 9-bitowy, który utrzymuje się do wyłączenia zasilania (konfiguracja nie jest zachowywana na stałe). Po ponownym włączeniu zasilania układ startuje w trybie 12-bitowym. Aby zapisać na stałe
konfigurację w trybie 9-bitowym, należy wykonać komendę 1wwrite (z argumentem 48h), która kopiuje zawartość bitów konfiguracyjnych do pamięci nieulotnej EEPROM: Na koniec przedstawiamy procedurę odczytu temperatury z czujnika DS1820 z rozdzielczością 0,1oC. Wykorzystujemy w tym celu dane zawarte w sumie kontrolnej oraz zastrzeżonych zakresach pamięci. Wykorzystuje ona odczytaną tablicę całej pamięci oraz pewne modyfikacje: Dim T As Integer 'tablica dwóch bajtów 'do przechowywania temperatury Dim Bd(9) As Byte 'tablica dwóch bajtów 'do przechowywania temperatury Dim Tmp As Byte 'tablica dwóch bajtów 'do przechowywania temperatury Dim T1 As Byte (.................................) 1wwrite &HCC 'Wybór układu (dla 1 sztuki 'pomijamy wysyłanie numeru) 1wwrite &H44 'Polecenie konwersji temperatury Waitms 750 'czas konwersji 750 ms 1wreset 'inicjacja magistrali 1WIRE 1wwrite &HCC 'przeskocz zapis numeru ID 1wwrite &HBE 'rozkaz odczytu danych Bd(1) = 1wread(9) 'odczyt danych do tablicy bd 1wreset 'zerowanie magistrali 1wire 'kolejne instrukcje obliczają 'temperaturę z precyzja 0,1 st C Tmp = Bd(1) And 1 'obliczenie wartości zmiennej tmp If Tmp = 1 Then Decr Bd(1) 'jeśli tmp=1 to zmniejsz o jeden 'pierwszy element tablicy bd T = Makeint(bd(1) Bd(2)) 'łączy dwa bajty w zmienna integer T = T * 50 T = T – 25 T1 = Bd(8) – Bd(7) 'obliczenie różnicy zastrzeżonych 'bajtów T1 = T1 * 100 'obliczenie temperatury T1 = T1/Bd(8) T = T + T1 T = T/10 'obliczenie temperatury (zmienna T 'zawiera obliczana temperaturę) Cls Lcd „Temp=” ; T
Chcę podkreślić, że ze względu na objętość procedury i jej „pamięciożerność” tam, gdzie to jest możliwe należy stosować czujniki DS18B20. Na stronie EP w dziale Download umieszczono dodatkowe pliki, w których pokazano stosowanie różnych procedur odczytu oraz sposób korzystania z różnych czujników w jednym programie (DS1820 i DS18B20), sposób korzystania z pamięci EEPROM do przechowywania numerów czujników oraz przykłady wykorzystane w artykule. Artur Starz, EP
[email protected]
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Koniec ery 5 V, czêœæ 2 Zabezpieczenia wewnêtrzne, porównanie rodzin uk³adów cyfrowych W poprzednim odcinku zapoznaliœmy siê z najczêœciej spotykanymi rodzinami cyfrowych uk³adów scalonych. Pominiêto w nim opisy kilku wyspecjalizowanych serii takich jak: GTLP (Gunning Transceiver Logic Plus), PCA/PCF (I2C Inter-Integrated Circuit Applications), SSTL (Stub Series-Terminated Logic), HSTL (HighSpeed Transceiver Logic), SSTU (Stub Series-Terminated Ultra-Low-Voltage Logic), SSTV (Stub Series-Terminated Low-Voltage Logic), TVC (Translation Voltage Clamp Logic), VME (VERSAmodule Eurocard Bus Technology). S¹ to uk³ady powszechnie wykorzystywane w systemach profesjonalnych i prawie nieznane amatorom. Wiêkszoœæ z nich s³u¿y do obs³ugi szybkich magistral (prze³¹czniki, drivery, transceivery). Seria GTLP pomaga np. rozwi¹zywaæ problemy przesy³ania szybkich sygna³ów cyfrowych w systemach rozproszonych, jakim mo¿e byæ choæby dobrze nam znany komputer PC (rys. 2). Na rys. 3 przedstawiono przybli¿eniu chronologiê wprowadzania poszczególnych serii uk³adów cyfrowych. Rysunek wykonano na podstawie materia³ów firmy Texas Instruments. Podobne opracowania innych firm mog¹ siê nieznacznie ró¿niæ. Jak widaæ, w okolicach pocz¹tku osi czasu „zrobi³o siê” doœæ gêsto. Oznacza to, ¿e w ostatnich latach nast¹pi³a znaczna intensyfikacja prac nad nowymi rodzinami uk³adów cyfrowych. Rysunki 4 i 5 pozwol¹ lepiej zorientowaæ siê w mo¿liwoœciach wykorzystywania poszczególnych serii w systemach zasilanych okreœlonymi napiêciami. Niestety, producenci czêsto nadaj¹ rodzinom uk³adów cyfrowych w³asne oznaczenia, co nie u³atwia pracy konstruktorom. Wiemy ju¿, ¿e jednym z wa¿niejszych parametrów cyfrowych uk³adów scalonych s¹: napiêcie zasilaj¹ce i standard sygna³ów wejœciowych i
Elektronika Praktyczna 11/2004
Od przybytku - podobno - g³owa nie boli. Podobno. Dobranie najbardziej odpowiednich uk³adów cyfrowych do projektowanych aplikacji mo¿e byæ naprawdê nie lada problemem. Mogliœmy siê o tym przekonaæ w poprzednim odcinku, gdy zapoznawaliœmy siê z podstawowymi rodzinami. Zdobyta wiedza niestety nie jest jeszcze kompletna. W tym odcinku poznamy kolejne zagadnienia.
Rys. 2. Wykorzystanie układów GTLP do rozprowadzania szybkich sygnałów cyfrowych
&%
P O D Z E S P O Ł Y wyjœciowych. Wi¹¿e siê z tym poœrednio zdolnoœæ do tolerowania okreœlonych napiêæ zarówno od strony wejœæ, jak i wyjœæ. O szybkoœci pracy i dopuszczalnej obci¹¿alnoœci wyjœæ ju¿ nawet nie trzeba chyba wspominaæ, bo s¹ to parametry oczywiste. Nie s¹ to jednak jedyne cechy, na które nale¿y zwracaæ uwagê podczas doboru elementów. Wiele rodzin, szczególnie tych najnowszych, zosta³o wyposa¿onych w pewne rozwi¹zania podnosz¹ce znacznie komfort u¿ytkowania, ale stanowi¹cych dodatkowe obci¹¿enie dla pamiêci konstruktora. O czym nale¿y pamiêtaæ przy doborze rodzin uk³adów cyfrowych Nowe technologie pozwoli³y na konstruowanie interfejsów o niespotykanych wczeœniej cechach. Przyk³adem mo¿e byæ umieszczanie w strukturze uk³adów cyfrowych specjalnych komórek typu Bus-Hold. Umo¿liwiaj¹ one eliminacjê „p³ywania” napiêcia na „wisz¹cych” wejœciach CMOS. Realizuje to specjalnie zaimplementowany obwód zastêpuj¹cy rezystory pull-up lub pull-down (rys. 6). Innym przyk³adem wyspecjalizowanego rozwi¹zania s¹ bufory z wyjœciami typu Series Damping Resistor. Pozwalaj¹ one rezygnowaæ z rezystorów szeregowych (dopasowuj¹cych impedancjê) na wyjœciach wspó³pracuj¹cych z liniami transmituj¹cymi szybkie sygna³y cyfrowe (rys. 7). Kolejne trzy cechy interfejsów wykonywanych w nowych technologiach daj¹ mo¿liwoœæ ingerowania w konfiguracjê sprzêtow¹ urz¹dzenia bez koniecznoœci wy³¹czania zasilania. Uk³ady takie (Live Insertion) u³atwiaj¹ serwis i podnosz¹ pewnoœæ dzia³ania urz¹dzeñ (wymiana modu³ów bez koniecznoœci wy³¹czania ca³ego systemu), a tak¿e upraszczaj¹ niektóre aplikacje pod wzglêdem rozwi¹zañ schematowych. Wyró¿nia siê trzy poziomy zabezpieczeñ Live Insertion - w katalogach stosowane jest okreœlenie poziom izolacji. Ze wzglêdu na to, ¿e powy¿sze rozwi¹zania s¹ ju¿ doœæ powszechnie stosowane, warto omówiæ je pokrótce. Poziom 1 - Partial Power Down. Mamy tu do czynienia ze specjaln¹ modyfikacj¹ obwodu wyjœciowego, chroni¹cego ca³y uk³ad przed uszkodzeniem w przypadku do³¹czania go do systemu bêd¹cego pod napiêciem. Obwód taki nazywa siê IOFF (rys. 8). Zabezpieczenie Partial Power Down pozwala wy³¹czaæ napiêcie zasilaj¹ce pewnej czêœci modu³ów ca³ego syste-
&&
Rys. 3. Chronologia wprowadzania kolejnych rodzin układów cyfrowych
Rys. 4. Podział układów cyfrowych ze względu na napięcia zasilające
Rys. 5. Graficzna interpretacja dopuszczalnych napięć zasilających dla różnych rodzin układów cyfrowych
mu, których wyjœcia pozostaj¹ do³¹czone do modu³ów zasilanych (rys. 9). Gwarantuje prawid³owe zachowanie siê wspó³pracuj¹cych ze sob¹ bloków w takich przypadkach. Istot¹ dzia³ania tego zabezpieczenia jest niedopuszczenie do niepo¿¹danego przep³ywu pr¹du przez diody paso¿ytnicze wystêpuj¹ce w strukturach buforów. Oprócz ochrony przed sytuacjami awaryjnymi, w których nastêpuje
nieprzewidywany zanik zasilania, uk³ady z pierwszym poziomem izolacji czêœciej bêd¹ wykorzystywane w urz¹dzeniach, w których celowo zak³ada siê czêœciowe wprowadzanie systemu w stan power-down. Uk³ady Live Insertion poziomu 2 s¹ nazywane Hot Insertion (rys. 10). Umo¿liwiaj¹ do³¹czania modu³ów do systemu bêd¹cego pod napiêciem bez generowania zak³óceñ uniemo¿liwia-
Elektronika Praktyczna 11/2004
P O D Z E S P O Ł Y
Rys. 7. Bufor wyjściowy typu Series Damping Resistor
Rys. 6. Obwód Bus−Hold
Rys. 8. Obwód IOFF
Rys. 9. Zasada działania zabezpiecze− nia typu Partial Power Down
Rys. 10. Zasada działania zabezpie− czenia typu Hot Insertion
j¹cych pracê systemu. Zapewniaj¹ one zachowanie odpowiednich poziomów wyjœciowych podczas w³¹czania, a tak¿e prawid³ow¹ impedancjê wyjœciow¹ podczas wy³¹czania zasilania. Typow¹ sytuacj¹ mo¿e byæ np. wk³adanie specjalizowanej karty do pracuj¹cego komputera. Skonstruowany odpowiednio uk³ad nazywany Power Up 3-state (PU3S) nie pozwala na w³¹czenie wyjœæ cyfrowych zanim napiêcie zasilaj¹ce nie osi¹gnie wartoœci gwarantuj¹cej uzyskanie wyjœciowych stanów logicznych mieszcz¹cych siê w przewidzianych zakresach. Analogiczne zabezpieczenie dzia³a równie¿ podczas od³¹czania modu³u (rys. 11). Uk³ady z drugim poziomem izolacji posiadaj¹ równie¿ zabezpieczenie poziomu 1 (IOFF). Trzeci poziom zabezpieczeñ nazywany Live Insertion chroni wspó³pracuj¹ce ze sob¹ uk³ady przed krótkotrwa³ymi zak³óceniami (glitches), wystêpuj¹cymi podczas ³¹czenia ze sob¹ cyfrowych linii sygna³owych. Nadal oczywiœcie obowi¹zuje zasada, ¿e w chwili ³¹czenia przynajmniej jeden modu³ pozostaje pod napiêciem. B³¹d mo¿e jednak wyst¹piæ nawet wtedy, gdy obie ³¹czone ze sob¹ strony s¹ zasilane. Powodem b³êdnej inter-
pretacji stanu wejœciowego bywa zmiana pojemnoœci na styku ³¹czonych modu³ów (rys. 12). Zak³ócenie jest efektem prze³adowania (na³adowania lub roz³adowywania) tej pojemnoœci. Do czasu ustalenia siê warunków, poziom logiczny w tym miejscu mo¿e ulec istotnemu zaburzeniu (rys. 13). Choæ zjawisko na ogó³ nie trwa d³ugo, to jednak w przypadku szybkich uk³adów nie mo¿na go pomin¹æ. Œrodkiem zaradczym w takich sytuacjach jest wyposa¿enie uk³adu cyfrowego w dodatkowe wejœcie zasilaj¹ce BIASS VCC wspó³pracuj¹ce ze specjalnie skonstruowanym wtykiem ³¹czonego modu³u. Jest to wiêc rozwi¹zanie po czêœci mechaniczne. Budowa wtyku (rys. 13) zapewnia odpowiedni¹ kolejnoœæ pojawiania siê napiêcia na pinach zasilaj¹cych uk³adu. Uk³ady z trzecim poziomem izolacji zawieraj¹ zabezpieczenia dwóch poziomów ni¿szych (IOFF i PU3S). Jeœli w parametrach danego uk³adu podaje siê poziom izolacji równy 0, to oznacza, ¿e uk³ad ten nie spe³nia warunków Live Insertion.
Elektronika Praktyczna 11/2004
Porównanie rodzin uk³adów cyfrowych Nowe technologie opracowywane s¹ pod k¹tem minimalizacji mocy roz-
Rys. 11. Napięcie wyjściowe układu z zabezpieczeniem Partial Power Down podczas wkładania i wyjmowania zasilanego modułu
Rys. 12. Zasada działania zabezpie− czenia typu Live Insertion
praszanej przez uk³ady, przy zachowaniu, a nawet poprawianiu ich parametrów czasowych. W efekcie obserwujemy sta³¹ tendencjê do obni¿ania napiêcia zasilaj¹cego. Uzyskiwane
&'
P O D Z E S P O Ł Y
Rys. 14. Zależność czasu propagacji od napięcia zasilającego dla różnych rodzin układów cyfrowych
Rys. 13. Ilustracja efektu działania zabezpieczenia typu Live Insertion
rezultaty mog¹ pozornie dziwiæ i wydawaæ siê niezgodne z teori¹, z której wynika przecie¿, ¿e szybkoœæ pracy uk³adu jest odwrotnie proporcjonalna do napiêcia zasilaj¹cego. Zasady fizyki nie zosta³y oczywiœcie z³amane. Obowi¹zuj¹ nadal, lecz pozostaj¹ s³uszne dla ka¿dej z technologii oddzielnie. Nowe metody wytwarzania uk³adów cyfrowych pozwoli³y uzyskiwaæ co najmniej podobne, a czêsto wrêcz krótsze czasy propagacji przy ni¿szych napiêciach zasilaj¹cych (rys. 14). Udoskonalenie technologii CMOS zaowocowa³o powstaniem wielu rodzin pracuj¹cych z napiêciami zasilaj¹cymi osi¹gaj¹cymi wartoœæ nawet poni¿ej 1 V. Jak du¿e ma to znaczenie dla urz¹dzeñ przenoœnych zasilanych bateryjnie, nie trzeba chyba mówiæ. Moc rozpraszana i prêdkoœæ dzia³ania, to nie wszystkie najwa¿niejsze parametry uk³adów cyfrowych. Równie wa¿nym, przynajmniej w niektórych sytuacjach, jest dopuszczalna obci¹¿alnoœæ pr¹dowa wyjœæ. Znaj¹c j¹ mo¿na okreœliæ mo¿liw¹ liczbê funktorów do³¹czonych do ka¿dego wyjœcia uk³adu. Ma to szczególne znaczenie dla technologii bipolarnych, w których pr¹d wejœciowy bramki nie jest pomijalny, jak w przypadku technologii CMOS. Znaj¹c obci¹¿alnoœæ pr¹dow¹ wyjœæ mo¿na równie¿ zadecydowaæ w fazie projektowania aplikacji o koniecznoœci ewentualnego stosowania dodatkowych wzmacniaczy (scalonych lub wykonanych na elementach dyskretnych) dla elemen-
'
Rys. 15. Porównanie wydajności prądowej wyjść w funkcji uzyskiwanych czasów propagacji dla różnych technologii wytwarzania układów cyfrowych
tów sterownych przez wyjœcia cyfrowe, a charakteryzuj¹cych siê znacznym poborem pr¹du (diody LED, przekaŸniki, itp.). Du¿a wydajnoœæ pr¹dowa jest wymagana ponadto w aplikacjach, w których nastêpuje szybkie prze³¹czanie sygna³ów cyfrowych, rozprowadzanych na du¿ej powierzchni, np. miêdzy slotami, na p³ytach g³ównych komputerów lub podobnych urz¹dzeñ. Porównanie wydajnoœci pr¹dowej wyjœæ w funkcji uzyskiwanych czasów propagacji dla ró¿nych technologii wytwarzania uk³adów cyfrowych pokazano na rys. 15. Zaznaczono na nim tak¿e wartoœci napiêæ zasilaj¹cych, dla których zosta³y zoptymalizowane poszczególne rodziny. Praktyków z pewnoœci¹ zainteresuj¹ mo¿liwoœci wzajemnej wspó³pracy poszczególnych serii uk³adów. Tu uniwersalnej, jednoznacznej odpowiedzi
nie da siê udzieliæ, gdy¿ decyduje o tym wiele czynników. S¹ to m.in.: obci¹¿alnoœæ wyjœæ, zakresy napiêæ wyjœciowych i wejœciowych dla poszczególnych stanów logicznych zwi¹zane z zastosowanym napiêciem zasilaj¹cym, czêstotliwoœæ pracy i inne. Wartoœæ napiêcia zasilaj¹cego staje siê w dzisiejszych czasach szczególnie istotna z uwagi na to, ¿e coraz powszechniej s¹ stosowane niskonapiêciowe wersje uk³adów znanych do tej pory jako 5-woltowe. Do obni¿onego napiêcia zasilaj¹cego musimy siê coraz bardziej przyzwyczajaæ, gdy¿ trend w tym kierunku jest bardzo silny. Praktyczne problemy zwi¹zane z translacj¹ poziomów logicznych w systemach z wieloma napiêciami zasilaj¹cymi zostan¹ przedstawione w nastêpnym odcinku. Jaros³aw Doliñski, EP
[email protected]
Elektronika Praktyczna 11/2004
K U R S
Układy programowalne, część 9 W ostatnim odcinku cyklu przedstawimy jedno z najwygodniejszych, pośród obecnie dostępnych, uniwersalnych narzędzi do realizacji projektów w układach programowalnych: pakiet Protel 99SE. Pakiet ten, podobnie do następcy Protela DXP - jest wyposażony w kompilator CUPL-a, który współpracuje z systemowym edytorem schematów. Niewątpliwą zaletą pakietów Protel jest możliwość realizacji całego projektu urządzenia w jednym środowisku, bez konieczności oswajania się z różnymi interfejsami użytkowników i odmiennymi filozofiami obsługi programów. Kompilator CUPL-a, w jaki wyposażono Protele, jest minimalnie zmodyfikowanym wcieleniem pierwszej wersji CUPL-a dla Windows, jaka powstała wiele lat temu w firmie Data I/O. Firma Protel (później Altium) nie przykładała się specjalnie do powiększania jego walorów użytkowych, stąd większość wad oryginalnego kompilatora (w tym przede wszystkim niezbyt przejrzysta diagnostyka błędów) jest odczuwalna do dziś. Dodano jedynie kilka prostych rozszerzeń funkcjonalnych (jak na przykład kreator projektów), poprawiono także współpracę kompilatora z edytorem przebiegów, który ułatwia analizę wyników symulacji. Ze względu na specyfikę środowiska protelowskiego nieco inaczej niż miało to miejsce w WinCUPL-u wygląda obsługa kompilatora. Jemu właśnie poświęcamy ten odcinek kursu.
Czarownik Ci pomoże
Ogromnym ułatwieniem podczas realizacji projektów w układach PLD, zwłaszcza dla początkujących użytkowników, jest wbudowany w Protela 99SE kreator projektów (wizard). Dzięki niemu większość typowych problemów program rozstrzyga interaktywnie z projektantem, zadając mu kolejno proste pytania, których odpowiedzi pozwalają uzyskać „szkielet” opisu HDL. Jak wiadomo Protel 99SE przechowuje wszystkie pliki wchodzące w skład projektu w jednym pliku o rozszerzeniu *.ddb. Plik taki należy utworzyć dla każdego nowego projektu, co
Rys. 46
Rys. 47
wymaga wybrania w menu opcji File>New. W wyświetlonym oknie New Design Database należy podać docelową lokalizację pliku oraz nazwę pliku (rozszerzenie *.ddb nie jest nadawane automatycznie!). Plik wykorzystany w przykładzie nosi nazwę PLD_proj.ddb i jest ulokowany w głównym katalogu dysku C. Kolejnym krokiem jest utworzenie pliku zawierającego opis HDL w postaci tekstowej (w języku CUPL) lub schematu. Ponieważ w tej części artykułu zajmiemy się przedstawieniem sposobu realizacji projektu opisanego tekstowo, mamy do wyboru dwie drogi: - skorzystanie z kreatora projektu, - utworzenie „pustego” pliku tekstowego, w którym trzeba będzie przygotować cały opis HDL. Ze względu na wygodę warto skorzystać z interaktywnej pomocy kreatora. W tym celu w menu wybieramy opcję File>New..., co powoduje wyświetlenie okna New Document, którego widok pokazano na rys. 46. Wybieramy w tym oknie zakładkę Wizards, a w niej PLD-CUPL Wizard
(rys. 47). Powoduje to zainicjowanie pracy kreatora, którego jeden z kilku możliwych wariantów przebiegu pokazano na rys. 48. Na rysunku tym zaznaczono najistotniejsze z punktu widzenia projektanta miejsca, w których kreator „dopytuje” się o najważniejsze parametry realizowanego projektu.
Uniwersalne narzędzie
Protel 99SE umożliwia realizację projektów w układach PLD pochodzących od różnych producentów. W sumie do dyspozycji projektantów jest ponad 200 różnych typów układów PLD, począwszy od pamięci PROM, aż po układy CPLD i FPGA różnych producentów.
Elektronika Praktyczna 11/2004
List. 22. Szkielet opisu HDL wygenerowany przez kreatora projektów PLD z pakietu CUPL Name Partno Revision Date Designer Company Assembly Location Device Format
PLDDesign na 1 2004-10-17 PZb EP na na G22V10LCC JEDEC
; ; ; ; ; ; ; ; ; ;
/********************************************* ************************/ /* This PLD design (Revision 1) created on 2004-10-17 */ /* for Protel International */ /* and is stored as PLDDesign */ /********************************************* ************************/ /** Pin Pin Pin Pin
Inputs 1 = 2 = 3 = 4 =
**/ Input_1 Input_2 Input_3 Input_4
/** Pin Pin Pin Pin Pin Pin Pin
Outputs **/ 5 = Output_5 ; 6 = Output_6 ; 7 = Output_7 ; 8 = Output_8 ; 9 = Output_9 ; 10 = Output_10; 11 = Output_11;
; ; ; ;
/** Declarations and Intermediate Variables **/ /** Logic Equations **/
91
K U R S
Rys. 48
Na skróty, ku wygodzie!
Standardowo Protel 99SE jest wyposażony w bibliotekę symboli służących do projektowania układów PLD, wśród których są dostępne m.in. wygodne w stosowaniu wybrane odpowiedniki funkcjonalne układów TTL. W wyniku działania kreatora powstaje plik tekstowy zawierający podstawowe elementy opisu HDL - uzyskany przykładowy szkielet opisu HDL pokazano na list. 22. Nieco inaczej wygląda inicjacja projektu, w którym zamiast tekstowego opisu HDL użytkownik chciałby wykorzystać bardziej przyjazny opis schematowy. Na rys. 49 pokazano przebieg ścieżki pracy kreatora projektu począw-
szy od chwili wybrania jako pliku projektowego schematu (punkt oznaczony literą „A” na rys. 48). W zależności od zamiarów, projektant może realizować projekt na układzie wirtualnym, może także wskazać rzeczywisty układ docelowy. Kolejnym krokiem jest określenie wykorzystywanych w projekcie linii wejściowych i wyjściowych (muszą się one znaleźć w okienku Design Pins to w przedostatnim etapie pracy kreatora,
Układ wirtualny
Projektanci korzystający z CUPL-a mogą realizować projekty na układy wirtualne (virtual device), które są pozbawione ograniczeń charakterystycznych dla układów rzeczywistych (jak choćby liczba termów matrycy OR, maksymalna liczba wejść bramek AND w matrycy programowalnej, przypisanie sygnałów globalnych zegarowych itp.). pokazanym na rys. 49), co zaowocuje automatycznym wprowadzeniem na planszę schematu odpowiednich symboli. Można je oczywiście później modyfikować, ale warto (zwłaszcza przy pierwszych projektach) poświęcić chwilę na podanie tych parametrów - uprości to dalsze prace nad projektem. Na tym, w zasadzie, kończy się praca kreatora projektu. Jej efektem jest schemat elektryczny, na którym
Rys. 49
92
Elektronika Praktyczna 11/2004
K U R S
Kompilacja projektu
Rys. 50
Rys. 51
są umieszczone symbole wejść i wyjść (zgodnie z opisem podanym przez użytkownika) oraz symbole zasilania (które jednak do niczego nie służą i można jej usunąć z planszy).
Biblioteki PLD dla edytora schematów
Protel 99SE wyposażono w bibliotekę symboli (dla edytora schematów) elementów logicznych przygotowanych z myślą o realizacji projektów na układach PLD. Biblioteka o nazwie PLD Symbols.lib (rys. 50) jest przechowywana w pliku PLD.ddb i zawiera, oprócz
Elektronika Praktyczna 11/2004
podstawowych funktorów logicznych (jak m.in. porty wejściowe, wyjściowe i dwukierunkowe, bramki AND, OR, NOR, NOT itp.) wiele „makrofunkcji”, będących odpowiednikami układów) TTL. Symbole te są oznaczane w następujący sposób: X74_aaa, gdzie aaa oznacza dwu- lub trzycyfrowy symbol zaczerpnięty z oznaczenia układu TTL. Przykładowo symbol X74_ 42 odpowiada funkcjonalnie dekoderowi 7442, a symbol X74_151 odpowiada funkcjonalnie multiplekserowi 74151.
Kompilator wbudowany w Protela 99SE w większości przypadków nie wymaga konfiguracji - domyślne nastawy zazwyczaj umożliwiają poprawną kompilację opisu HDL. Warto jednak zdawać sobie sprawę z możliwości zmodyfikowania parametrów syntezy logicznej, co w pewnych sytuacjach (na przykład niewystarczającej liczby termów wejściowych makrokomórki) może mieć decydujący wpływ na jakość implementacji projektu. Okno konfiguracji kompilatora jest wyświetlane po wybraniu w menu opcji PLD>Configure (rys. 51). Domyślnie jest wyświetlana zakładka Options, na której można ustalić typ docelowego układu PLD (Target Device, ewentualnie Use Virtual Device), określić sposób optymalizacji opisu HDL i kodowania stanów automatów i wybrać algorytm minimalizacji opisu (Logic Minimization). W większości przypadków nie ma jednak konieczności modyfikowania ustawień dostępnych na tej zakładce. Druga z zakładek okna Configure PLD Compiler (rys. 52) służy do ustalenia
93
K U R S
Rys. 54
Rys. 53
Symulacja i oś czasu
Symulator układów PLD wbudowany w Protela 99SE jest symulatorem funkcjonalnym, nie ma więc możliwości zweryfikowania wpływu parametrów czasowych układów docelowych na ich działanie w fizycznym urządzeniu. jakie pliki będą tworzone podczas pracy kompilatora, za pomocą dostępnych ustawień można także skonfigurować zawartość pliku raportu z kompilacji. W przypadku kompilowania schematu zawierającego opis projektu można uaktywnić automatyczny podgląd pliku HDL (opcja Schematic, View PLD File), który zawiera tekstowy opis schematu. Po skonfigurowaniu kompilatora możemy podjąć próbę skompilowania projektu. W tym celu w menu wybieramy opcje: PLD>Compile, co powoduje natychmiastowe uruchomienie kompilatora. W zależności od przebiegu kompilacji, wyświetlone okno zawiera informacje o wykrytych błędach (rys. 53a) lub o pomyślnym zakończeniu kompilacji (rys. 53b). Kolejnym krokiem realizacji projektu jest jego symulacja. Protel 99SE wyposażono w niezły symulator funkcjonalny, za pomocą którego można wiarygodnie zweryfikować uzyskane wyniki.
Rys. 55
94
Symulacja projektu
Do symulacji projektu opisanego w CUPL-u niezbędny jest plik *.si, zawierający wektory pobudzeń oraz (opcjonalnie) odpowiedzi. Jest to taki sam plik jak w przypadku wszystkich innych wersji CUPL-a. Nazwa pliku *.si musi być identyczna jak nazwa projektu! Do symulacji niezbędny jest jeszcze drugi plik - o rozszerzeniu *.abs - uzyskiwany podczas kompilacji (w zakładce Output Formats okna Configure PLD Compiler należy zaznaczyć opcję Simulation, Absolute ABS). Te dwa pliki umożliwiają przeprowadzenie symulacji. Jej uruchomienie wymaga wskazania w oknie menadżera projektów pliku *.pld lub *.sch (w zależności od przyjętego sposobu opisania projektu) i wybrania w menu opcji PLD>Simulate (rys. 54). Należy pamiętać, że symulacja nie zostanie przeprowadzona, jeżeli w oknie mena-
dżera projektu będzie zaznaczony inny plik, niż ten, który zawiera opis HDL! Wynikiem pracy symulatora jest między innymi plik *.so, który ma postać tekstową (podobnie jak w WinCUPL-u i innych mutacjach CUPL-a), ale w przypadku zainstalowania Protela 99SE z serwerem Waveform Display, wyniki symulacji są prezentowane w postaci przebiegów (rys. 55). Należy pamiętać, że prezentowana przez symulator skala czasu nie ma odzwierciedlenia w rzeczywistości! Warto wziąć także pod uwagę, że pomimo deklarowanej przez producenta możliwości edycji przebiegów ilustrujących działanie układu (są one wyświetlane przecież w systemowym edytorze przebiegów), ich modyfikacja i poprawne przechowywanie w pliku projektu *.ddb jest (a raczej bywa) możliwe w wersjach z zainstalowanym Service Packiem 6. Piszę „bywa”, ponieważ Protel 99SE z SP6 po zainstalowaniu na dwóch komputerach zachowuje się - bez wyraźnej przyczyny - odmiennie. Stąd zachęta do przyjęcia zasady, że modyfikacje wektorów pobudzeń i odpowiedzi należy przeprowadzać w pliku *.si, a edytorowi przebiegów pozostawić wyłącznie funkcję przeglądarki. Piotr Zbysiński, EP
[email protected]
Rys. 56
Elektronika Praktyczna 11/2004
PROJEKTY
CZYTELNIKÓW
Dział „Projekty Czytelników” zawiera opisy projektów nadesłanych do redakcji EP przez Czytelników. Redakcja nie bierze odpowiedzialności za prawidłowe działanie opisywanych układów, gdyż nie testujemy ich laboratoryjnie, chociaż sprawdzamy poprawność konstrukcji. Prosimy o nadsyłanie własnych projektów z modelami (do zwrotu). Do artykułu należy dołączyć podpisane oświadczenie, że artykuł jest własnym opracowaniem autora i nie był dotychczas nigdzie publikowany. Honorarium za publikację w tym dziale wynosi 250,- zł (brutto) za 1 stronę w EP. Przysyłanych tekstów nie zwracamy. Redakcja zastrzega sobie prawo do dokonywania skrótów.
Cyfrowe joysticki do PC Wśród Czytelników EP są z pewnością tacy, którzy pamiętają czasy, kiedy na rynku komputerów domowych dominowały maszyny Atari, Commodore, czy ubóstwiana przez wielu Amiga. Dzisiaj wielu współczesnym giercomaniakom może wydać się to nieprawdopodobne, ale jeszcze zaledwie kilkanaście lat temu, te ośmiobitowce cieszyły się dużą popularnością. Dzisiaj taki „sprzęt”, to już prehistoria, ale... czasami warto powspominać młode lata i chwile (czytaj godziny) spędzone z joystickiem w ręku. Tym artykułem proponuję niecodzienną podróż w przeszłość. Rekomendacje: rewelacyjny gadżet do PC dla wszystkich tych, którzy chcieliby powspominać czasy panowania ośmiobitowców, w pełni wykorzystać możliwości emulatorów takich urządzeń, jak również dla tych, którzy chcieliby sprawdzić, jak joystick od C-64 sprawdzi się w najnowszych grach takich jak np. Need For Speed Underground czy Colin Mc Rally 4. Powodzenia...
Elektronika Praktyczna 11/2004
Projekt
123
Zapewne wielu Czytelników pam i ę t a p o p u l a r n e n a p o c z ą t ku l a t dziewięćdziesiątych, tytuły gier komputerowych – przebojów, takich jak Turrican, R-Type czy Creatures. Na szczęście w Internecie dostępna jest spora liczba różnego rodzaju emulatorów komputerów na PC. Dzięki nim nasz domowy komputer potrafi udawać inne maszyny. Dobry emulator charakteryzuje się wiernym odtwarzaniem wizji i dźwięku danej platformy. Ale grafika i dźwięk to nie wszystko, bowiem pecetowa klawiatura nijak się ma do prawdziwego joysticka! Dlatego też przygotowałem stosowne urządzenie i popełniłem niniejszy artykuł. Prezentowane urządzenie pozwoli jeszcze raz, i to w pełni wyrafinowany sposób, przenieść się w erę cyber-dinozaurów. Być może najlepszą nagrodą za trud włożony w poskładanie proponowanego układu elektronicznego okaże się dla Czytelnika uroniona łezka nostalgii? A może niniejszy projekt pozwoli dokończyć jakąś misję rozpoczętą kilka lat temu? Cóż. Chyba warto spróbować!
Opis układu
Proponowany gadżet jest urządzeniem bardzo prostym, zarówno od strony technicznej (schemat e l e k t r y c z n y p o ka z a n o n a r y s . 1 ) , jak i programowej. Jest przejściówką włączaną pomiędzy klawiaturę a komputer PC, zasilaną ze złącza klawiatury, zatem nie wymaga ona zewnętrznego zasilania. Jest urządzeniem całkowicie bezobsługowym. Płytkę przygotowano w taki sposób, aby możliwa była instalacja zarówno złącza klawiaturowego starego typu (DIN) jak również standardu obecnie stosowanego (PS2). Na dobrą sprawę urządzenie jest „inteligentnym” sprzętowym emulatorem klawiatury PC. Jego rola ogranicza się do cyklicznego sczytywania stanów obu podłączonych joysticków (skanowania portów P1 i P3 mikrokontrolera) i przekazywania tej informacji w postaci kodów klawiszy do PC. Na czas transmisji kodów klawiszy przez urządzenie, klawiatura zostaje blokowana w celu uniknięcia przekłamań przesyłanego kodu (kolizji kodów wysyłanych przez klawia-
95
PROJEKTY
CZYTELNIKÓW
Rys. 1. Schemat elektryczny przejściówki
Program mikrokontrol e r a d z i ał a w n i e s koń Góra Strzałka kursora – ‘Góra’ Góra - ‘w’ czonej pętli, analizując Dół Strzałka kursora – ‘Dół’ Dół - ‘x’ wyprowadzenia portów: P3.0...P3.4 (joystick 1), Lewo Strzałka kursora – ‘Lewo’ Lewo - ‘a’ P1.0...P1.4 (joystick 2). Prawo Strzałka kursora – ‘Prawo’ Prawo - ‘d’ Do wyprowadzenia P3.5 podłączona jest dioda Fire Prawy ‘Alt’ Fire - Lewy ‘Alt’ LED informująca o przesyłaniu kodu pochodząKlawisz kod klawisza cego od joysticka pierwszego, analogicznie dioda Strzałka kursoE0, 75 LED sterowana wyprora – ‘Góra’ wadzeniem P3.7 świadStrzałka kursoE0, 72 czy o aktywności drugiera – ‘Dół’ go joysticka. W trakcie Strzałka kursoE0, 6B użytkowania przejściówki ra – ‘Lewo’ objawia się to miganiem Strzałka kursoE0, 74 diod. W przypadku, gdy ra – ‘Prawo’ joysticki nie podlegają manipulacji, na bazy Prawy ‘Alt’ E0, 11 tranzystorów T3 i T4 Lewy ‘Alt’ 11 podawany jest plus za‘w’ 1D s i l a n i a . Tr a n z y s t o r y s ą zatkane. Klawiatura jest ‘x’ 22 podłączona do złącza ‘a’ 1C klawiatury za pośrednict w e m o p o r n i kó w R 5 i ‘d’ 23 R 6 . Tr a n s m i s j a d a n y c h z klawiatury do PC jest turę i przystawkę jednocześnie), któmożliwa. W momencie, kiedy wyre zazwyczaj powodują zawieszenie kryta zostaje manipulacja dowolnego się komputera. z joysticków, następuje wysterowanie W programie prototypu przyjęto tranzystorów T3 i T4, które zwieranastępująceą „klawiszologię”: ją linie CLK i DATA klawiatury do „Sercem” urządzenia jest zaprograplusa zasilania. Klawiatura zostaje mowany mikrokontroler firmy ATMEL zablokowana. Następnie mikrokon– AT89C2051. Program dla mikrokontroler „przejmuje ster” i za pomocą trolera został napisany w wygodnym tranzystorów T1 i T2 wysyła własne środowisku MCS Basic 8051. Poniekody znaków. Po wykonaniu tego waż kod programu jest stosunkowo zadania następuje ponowne zatkanie prosty i krótki zarazem (nie przekratranzystorów T3 i T4, a więc transcza 2 kB), do skompilowania programisja danych z klawiatury znów jest mu wystarczy wersja demonstracyjna możliwa. I tak w nieskończoność. programu Bascom 8051. Proste, prawda? Joystick 1:
96
Joystick 2:
Montaż i uruchomienie
Montaż układu jest wyjątkowo prosty (schemat montażowy pokazano na rys. 2). Już sam schemat pokazuje, że układ, choć na swój sposób „inteligentny”, jest wyjątkowo prosty i jego montaż nie powinien przysporzyć żadnych problemów nawet początkującemu elektronikowi. Montaż zaczynamy od zamontowania zworek, następnie wlutowujemy podstawkę pod mikroprocesor, rezystory, kondensatory, diody, rezonator kwarcowy, tranzystory i na końcu złącza. Podstawka pod mikrokontrolerem ma zasadnicze znaczenie, zwłaszcza, jeśli będziemy chcieli nieco rozbudować możliwości naszego układu, zmodyfikować przesyłane kody klawiszy – i w ogóle, kiedy będziemy chcieli poeksperymentować z... udawaniem klawiatury. Zmontowany układ powinien działać od razu po podłączeniu do komputera. Zanim jednak to uczynimy zalecam staranne sprawdzenie poprawności montażu, zwłaszcza tego, czy ścieżki nigdzie się nie zwierają. Przed podłączeniem do komputera, w celu zweryfikowania poprawności montażu poddajemy napięcie 5 V bezpośrednio na wyprowadzenia zasilania mikrokontrolera. Jeśli mikrokontroler wystartuje prawidłowo, urządzenie powita nas mignięciem obu diod LED. Jeśli to nie nastąpi, oznaczać to może, że przy montowaniu urządzenia popełniliśmy błąd, lub mikrokontroler jest źle zaprogramowany. Jeśli wszystko jest w porządku, do złączy CON3 i CON4 podłączamy joysticki. Każdy ruch, dowolnym z joysticków powinien powodować miganie odpowiadającej danemu joystickowi diody LED. Jeśli dalej wszystko jest w porządku, to najprawdopodobniej nasz układ funkcjonuje prawidłowo. Pozostaje nam podłą-
Elektronika Praktyczna 11/2004
PROJEKTY
C Z Y T E L N I K ÓPWR O J E K T Y
CZYTELNIKÓW
nie jest aktywny któryś z joysticków, co byłoby sygnalizowane miganiem diody LED. Jak wspomniano wcześniej, aktywny joystick blokuje klawiaturę. Jeżeli joysticki są nieaktywne, a klawiatura dalej nie działa, to może się okazać, że pomyliliśmy linie DTA i CLK we wtyczce przewodu przejściówki, podłączanej do komputera. W celu przetestowania joysticków uruchamiamy na PC dowolną aplikację, na której możemy sprawdzić działanie klawiszy – strzałek kursora, obu klawiszy ‘Alt’ oraz ‘a’, ‘d’, ‘w’, ‘x’. Może to być np. dowolny edytor tekstu.
Oprogramowanie Rys. 2. Schemat montażowy płytki drukowanej
czenie przejściówki do komputera, oraz klawiatury do przejściówki. Teraz przyszedł czas na ostateczne sprawdzenie urządzenia. Najpierw sprawdzamy czy działa klawiatura. Jeśli tak, to przechodzimy do testowania joysticków. Jeśli jednak klawiatura nie działa prawidłowo, to sprawdźmy, czy przypadkiem
WYKAZ ELEMENTÓW Rezystory RP1: drabinka 8x4,7 kV R1...R4: 22 kV R5, R6: 560 V R7, R8: 220 V Kondensatory C1: 1 mF/16 V C2: 47 mF/16 V C3: 100 nF C4, C5: 33 pF Półprzewodniki US1: AT89C2051 (zaprogramowany) T1....T4: BC557 D1, D2: LED (dowolne) Inne Q1: 11,059 MHz CON1, CON2: złącze DIN5 lub PS2 męskie CON3, CON4: złącze DB9 męskie
Bardzo wygodnym i sprawdzonym emulatorem platformy c64, idealnym do wykorzystania przez naszą przejściówkę jest ccs64 3.0 Win i tego też gorąco polecam. Można go pobrać min. spod adresu ftp://emu64.pl/programy/ ccs64_3_0_win.rar. Obsługa tego emulatora jest stosunkowo prosta. Dostęp do opcji konfiguracyjnych odbywa się za pośrednictwem klawiszy F9 i F10. Możliwości tego emulatora są duże, a opcje rozbudowane, niemniej jednak obsługa jest bardzo prosta, i wymaga jedynie kilku chwilek przyzwyczajenia. Emulator umożliwia pracę na plikach dysków i kaset c64, obsługę drukarki, a nawet wirtualną obsługę kartridży! W opcjach konfiguracyjnych emulatora mamy bogaty wybór możliwości dostosowania obrazu, dźwięku, trybu emulacji, szybkości wirtualnego procesora C64 i jeszcze wiele innych możliwości. Zachęcam do eksperymentowania. Możliwe jest także podłączenie oryginalnego sprzętu, takiego jak stacja dysków, czy magnetofon (!) do PC, i obsługiwanie go za pomocą, na przykład, tego emulatora. Możliwości są ogromne! Równie pasjonująca (a może nawet bardziej) może okazać się emulacja komputerów nieco wyższej klasy, takich jak np. Amiga. Dwa najbardziej popularne emulatory tej platformy, to WinUAE oraz WinFellow. Można je pobrać, min, ze strony http://www.cconline.com.pl/download.php?id=002001. Mariusz Ciszewski
Przydatne adresy:
♦ http://www.cconline.com.pl/download.php?id=002005 – pod tym adresem dostępne są emulatory C64: WinVICE, Hoxs64 1.0.2.0, Frodo, CCS64, ♦ http://www.computerbrains.com – strona domowa emulatora CCS64, ♦ http://c64.org – strona poświęcona emulacji C64, ♦ http://c64.com – strona poświęcona emulacji C64, ♦ http://emu64.pl – polska strona poświęcona emulacji C64, ♦ http://www.cconline.com.pl/download.php?id=002001 – do pobrania emulatory AMIGI (WinUAE, WinFellow), ♦ http://www.emulators.com/download.htm - do pobrania emulatory MAC (SoftMac XP, FUSION PC) oraz ATARI (GEM2000, XF2000, PCXF380).
Elektronika Praktyczna 11/2004
97
L
I
S
T
Y
W rubryce „Listy” odpowiadamy na najciekawsze i najczęściej pojawiające się pytania od Czytelników EP. Prosimy o listy tradycyjne (adres podany w stopce pisma) oraz elektroniczne na adres
[email protected] lub
[email protected]
Kursy w EP Jestem wiernym czytelnikiem wszelkich kursów publikowanych na łamach waszego pisma. Prezentowane są w nich ciekawe problemy elektroniczne. Moim zdaniem najciekawsze z ostatnio publikowanych to „Podstawy projektowania systemów mikroprocesorowych” i „Układy programowalne”. Artykuły te cenię za ich wartość praktyczną. Zawarte w nich informacje można niemal wprost zastosować w życiu. Mając to na uwadze chcę zaproponować Państwu temat na kolejny cykl: „Realizacja regulatora /algorytmu/ PID na mikrokontrolerze”. Opisane regulatory są regulatorami porcjonalnymi lub dwustawnymi pozbawionymi korekcji, a jeśli takowa występuje, to jest realizowana w układach analogowych. Zdaję sobie sprawę, że układy regulacji to temat rzeka, a teoria sterowania to koszmar. Przedstawiona „wprost” pozbawiłaby EP wielu czytelników. Na szczęście konstruktorzy przez lata zmagający się z problematyką regulatorów, na podstawie własnego doświadczenia opracowali praktyczne metody pozwalające w miarę prosto projektować regulatory. Uwalniając nas od setek naprawdę mozolnych obliczeń. Dlatego ufam, że taki kurs w EP prezentowałby w przystępny sposób podstawową ideę regulacji i sposoby jej realizacji. Grzegorz Majewski
[email protected] Red. Dziękujemy za bardzo interesującą propozycję. Rzeczywiście, dotychczas tematyka regulacji PID, zwłaszcza w ujęciu „od środka” niezbyt często gościła na łamach EP. Prosimy o opinie naszych Czytelników (ankieta będzie dostępna na naszej stronie internetowej do końca listopada) - jeżeli temat okaże się dla głosującej większości interesujący, taki cykl przygotujemy. Andrzej Gawryluk Stabilizatory impulsowe w EP -uwagi Z zainteresowaniem przeczytałem opis stabilizatora impulsowego w EP8/2004, nawet się ucieszyłem, że EP pokazuje stabilizatory z przetwarzaniem energii. Mam drobne uwagi dotyczące zastosowanych układów Simple Switcher, jak handlowo nazwano układy LM25XX:
Elektronika Praktyczna 11/2004
1. Wymagają one staranniejszego projektowania układu, aniżeli układy z LM78XX. 2. Zdanie z artykułu: „Należy tylko dopasować wartości tych kondensatorów tak, aby podłączony do wejścia miał pojemność 100 mF, a wyjściowy 220...330 mF” jawi mi się jako „wypełniacz przestrzeni” z jednej strony i niedopowiedzenie z drugiej. Autorowi chodziło zapewne nie o wartości, lecz o wymiary kondensatorów. W układach z LM78XX wystarczą malutkie kondensatory ceramiczne 100 nF, a tutaj trzeba jeszcze zrobić miejsce na kondensatory elektrolityczne. Nie jest bez znaczenia, aby kondensatory miały jak najniższe ESR, producent układu podaje praktyczne metody ustalania minimalnej pojemności dla kondensatorów wyjściowych oraz dławika L1 w funkcji spodziewanego obciążenia oraz dopuszczalnych tętnień. 3. W opisie założono, że dostaliśmy zamiennik układu LM7805. To prawda, ale nie wszędzie i nie zawsze - tego zastrzeżenia zabrakło mi w artykule. Może się okazać, że kosztem zwiększonej sprawności przetwarzania energii utracimy bezpowrotnie inne cechy konstrukcji, na których nam także zależy. 4. Projekt z LM257X wymaga gruntownej zmiany zasad projektowania, szczególnie na styku świat analogowy <-> świat cyfrowy. Istotne staje się nie tylko prowadzenie mas i zasilań, lecz także ich umiejętna izolacja w.cz. 5. Przykładowy układ dobrze „wyciszony” pokazałem na fotografii dołączonej do listu (fot. 1). Na pierwszym planie widać dwa proste zasilacze na układach LM2575-ADJ, każdy z możliwością wyboru napięcia wyjściowego spośród wartości 5 V, 3,3 V i 2,5V powszechnie spotykanych dziś w technice cyfrowej. Mirosław Lach
Fot. 1
Sample c.d. W ostatnim numerze EP czytałem wyjątki z Forum EP. Wypowiedzi czytelników dotyczyły tematu sampli. Ubolewali oni nad faktem wstrzymania wysyłania próbek do Polski przez Texas Instruments i - niestety - inne firmy też. Próbowano również znaleźć winnych tego stanu rzeczy. Moim zdaniem winy za to nie ponoszą ani chciwi amatorzy, ani nieuczciwi handlarze. Jedynym winowajcą jest polski przemysł elektroniczny, a raczej jego niemal całkowity brak. TI to nie firma charytatywna, ze szczerego serca wspierająca elektroników amatorów. Program sampli to kosztowna reklama i jako taka ma przynosić firmie konkretne korzyści w formie nowych zamówień. Jednak nie ma sensu inwestować w rynek, który nie daje żadnych perspektyw. Dlatego brak zainteresowania polskiego „przemysłu” produktami TI mimo zainteresowania samplami doprowadził do zaniechania programu. Gdyby polskie firmy elektroniczne zamawiały dziesiątki lub setki tysięcy układów do produkcji, to nikomu nie przeszkadzałoby, że na aukcji ktoś sprzedaje 10 próbek (śmieszna liczba). Niestety nasz przemysł elektroniczny jest w opłakanej kondycji. Kilka fabryk zagranicznych koncernów (dobre i to) nie zaopatruje się samodzielnie w części. Nie prowadzą one też żadnych prac projektowych i konstrukcyjnych. To co było przepadło, a przez 15 ostatnich lat nie dorobiliśmy się jakiejkolwiek solidnej firmy produkującej urządzenia elektroniczne powszechnego użytku. Nieliczne firmy próbują wypełnić jakieś nisze w elektronice przemysłowej, czy innych dziedzinach życia. Jednak są to bardzo małe ilości. Moim zdaniem (chciałbym nie mieć racji) polski przemysł elektroniczny to nie przemysł tylko chałupnictwo i amatorstwo. Niestety jesteśmy elektronicznym trzecim światem. Tylko wobec samej Europy mamy kolosalne zaległości. Tak moi drodzy, jesteśmy zacofani. Wysyłanie przez wielkich producentów próbek swoich produktów było dla polskich elektroników amatorów i profesjonalistów szansą na kontakt i zapoznanie się z najnowszymi technologiami i chociaż zbliżenie się do głównych nurtów światowej elektroniki. Niestety możliwości te są coraz mniejsze. Można by też (składając
105
L
I
S
T
Y
Rys. 2
hołd spiskowej teorii dziejów) stwierdzić że polscy dystrybutorzy nie potrafiąc znaleźć klientów na podzespoły nakłonili TI do zaprzestania wysyłania sampli. Liczą, że dzięki temu wzrośnie sprzedaż. Grzegorz Majewski Red. Jakkolwiek oficjalne informacje otrzymane przez nas od producentów pachną polityczną poprawnością, to czarny obraz stanu polskiej elektroniki przedstawiony w liście w rzeczywistości nie jest aż tak czarny. Prawdą jest, że ta dziedzina gospodarki nie leży w obszarze zainteresowań rządu, ale po zapaści z początku lat ’90 i długim czasie skupiania się na produkcji wzmacniaczy antenowych, coraz większa liczba firm rozpoczyna znacznie bardziej ambitne działania, czego wyniki można już dostrzec. Wbrew pozorom, także w innych krajach Europy występuje zjawisko handlu próbkami (wystarczy odwiedzić choćby portal eBay), ale działalność takich „biz-
nesmenów” jest rekompensowana lepiej rozwiniętym przemysłem elektronicznym niż w naszym kraju. Nadziei na powrót do grona krajów obsługiwanych przez TI, Microchipa itp. firmy raczej nie ma, ale otwierają się nowe możliwości dotarcia do pożądanych podzespołów. Jedną z nich są internetowe sklepy producentów (jak choćby buy.microchip.com), w których można zamówić niewielkie ilości praktycznie dowolnych elementów. Andrzej Gawryluk Projekty Czytelników Proszę o udzielenie informacji w następujących kwestiach: A. Proszę o informację, gdzie i w jaki sposób mogę otrzymać płytki i program sterujący układem do projektu czytelników numer 073 „Inteligentny immobilizer” z EP4/2000? B. Proszę o informację, gdzie i w jaki sposób mogę otrzymać płytkę drukowaną i program sterujący do mikrokontrolera z projektu czytelnika numer 084 „Programator uniwersalny” z EP 4-5/2001. Czy mikrokontroler Atmela jest w tym przypadku zaprogramowany, czy z możliwością programowania. Grzegorz Wasilewski Red. W redakcyjnym archiwum nie mamy programu do Projektu Czytelnika z EP4/2000 (nie było wtedy jeszcze obowiązku udostępniania programów na cele publikacji).
Rys. 3
Najnowsza wersja oprogramowania sterującego pracą programatora opisanego w EP4 i 5/2001 jest dostępna na stronie internetowej autora projektu: http://www. freepgs.com/robkry/?t=download. Andrzej Gawryluk Materiały archiwalne Czy jest możliwe uzyskanie dostępu do Waszych zbiorów archiwalnych bez konieczności zakupu prenumeraty? EP wolę kupować (i kupuję!) w kiosku, a czasami przydałaby się możliwość ściągnięcia materiałów, które udostępniacie. Red. Oprócz standardowej drogi logowania się dla prenumeratorów (rys. 2) od października udostępniliśmy możliwość wykupienia sobie dostępu do działu pobrań za pomocą SMS-ów (rys. 3). Każde 10 pobrań kosztuje 3 zł netto, a czas wykorzystania możliwych pobrań nie jest ograniczony. Andrzej Gawryluk
Prezentowane tu opinie pochodzą z naszego forum dyskusyjnego dostępnego pod adresem forum.ep.com. pl. Wybierane przez nas do publikacji wątki wydają się być ważne dla większości Czytelników Ep, dlatego odpowiadamy na nie i komentujemy je na łamach EP. Wszystkie zamieszczone materiały pochodzą z Forum, poddawane są jedynie korekcie, bez modyfikowania meritum wypowiedzi.
Agrest: W urządzeniach, które obsługuję, często występują problemy z firmware na Flash EPROM-ie 29F040. Manual podaje, że kasować ją należy odpowiednią zworką przy odłączonym zasilaniu. Czasem pomaga, czasem nie, wtedy wymieniam tę pamięć. Niedawno eksperymentalnie zwarłem zworę „reset” przy załączonym zasilaniu. Pamięć się wykasowała, wgrałem nowy firmware i działa. Pytanie: jak się to prawidłowo kasuje, z zasilaniem, czy bez? Red. Nie mamy żadnych informacji o urządzeniu, w którym pracuje pamięć Flash, ale pewne jest, że kasowanie jej zawartości jest możliwe wyłącznie po dołączeniu do niej zasilania.
106
Avatar: Zastanawiam się czy z diod LED UV można poskładać prostą kasowarkę układów EPROM z „okienkiem”? Z tego co wiem, to takie kasowarki do tanich nie należą, a diodę UV można kupić już za 5 zł w prawie każdym sklepie elektronicznym. Red. W zależności od typu, diody LED-UV emitują promieniowanie o długości fali 370...395 nm. Jak napisał na forum Guru, promieniowanie umożliwiające kasowanie pamięci EPROM musi mieć długość 253,7 nm, w związku z czym standardowe LED-y UV nie nadają się do kasowania zawartości ich matryc pamięciowych.
Wyniki ankiety „Czy uważasz, że kurs o budowie zestawów głośnikowych jest przydatny?”.
Elektronika Praktyczna 11/2004
NAJLEPIEJ SPRZEDAJĄCE SIĘ KITY Z OFERTY AVT -
L E G E N D A
Nr
płytka drukowana z dokumentacją kit, czyli kompletny zestaw elementów z płytką drukowaną i dokumentacją moduł (urządzenie) zmontowany i uruchomiony zaprogramowane EPROM, GAL, dyskietka itp. Obudowa, możliwe są trzy warianty: - litera k oznacza, że kit jest sprzedawany łącznie z obudową i w cenie kitu uwzględniono koszt obudowy - liczba oznacza cenę obudowy wykonanej specjalnie do danego urządzenia, ale nie wchodzącej w skład kitu - symbol literowo-cyfrowy oznacza typ zalecanej obudowy plastykowej lub metalowej (bez otworowania)
UWAGA: podane ceny zawierają podatek VAT 22%
Zasady sprzedaży są umieszczone na stronie 109 UWAGA: Ceny kitów w bieżącej produkcji są ustalane na podstawie ostatnich cen zaopatrzeniowych, dlatego zastrzega się możliwość niewielkich odstępstw od podanych cen (nie większych niż 10%).
Nazwa
Publ.
Cena w zł A
B
C
P
O
RTV/Audio/Wideo
129 196 244 252 290 355 471 481 566 + 574 + 575 580 + 583 + 594 + 613 864 890 1023 1024 1033 1034 1281 1403 2050 2104/1 2117/1 2132 2148 2149 2153 2173 2174 2180 2310 2312 2318 2324 2338 2392 2402 2449 2460 2469 2477 2489 2499 2610+ 2628 2652 2671 2676 2677 2680 2690 2701 2710 2713 2723 2728 2729
Wzmacniacz 50W HiFi Procesor audio na układzie TDA1524A Procesor dźwięku z układem LM1036 Equalizer 7-kanałowy Wzmacniacz audio 2x100W Modem radiowy Wzmacniacz słuchawkowy Procesor Surround Procesor audio z wejściem S/PDIF Przełącznik optyczny SPDIF Wzmacniacz mikrofonowy Procesor audio z equalizerem i analizatorem widma Amplituner z RDS-em Zdalnie sterowany potencjometr do aplikacji audio Wzmacniacz gitarowy Nadajnik FM o mocy 2W Wzmacniacz audio z tranzystorami HEXFET Przedwzmacniacz gramofonowy o charaktr. RIAA Słuchawkowy wzmacniacz wysokiej jakości Przedwzmacniacz mikrofonowy Czterokanałowy mikser stereo Aktywny filtr do procesora surround Miniwzmacniacz FAN7021 Najprostszy wzmacniacz akustyczny 3W Wzmacniacz 2x22W Mikrofon bezprzewodowy Przedwzmacniacz z regulacją barwy dźwięku Odbiornik nasłuchowy CW SSB 80 m Przedwzmacniacz z automatyką Wzmacniacz 100 W 3-kanałowy mikser ze wzmacniaczem Samochodowy przedwzmacniacz AM/FM Wzmacniacz mocy z układem LM3886 Transceiver SSB ANTEK SSM2165 - inteligentny przedwzmacniacz Cyfrowa skala do transceivera SSB Wzmacniacz mocy 60W z układem TDA2052 Potencjometr cyfrowy Wzmacniacz mikrofonowy SMD Przedwzmacniacz tranzystorowy Filtr do subwoofera Transwerter 6m/20m Odbiornik UKF FM Wzmacniacz mocy na TDA 1562 Wzmacniacz samochodowy 2 x 40W 2W Wzmacniacz 4x40W Cyfrowy korektor graficzny (equalizer) Uniwersalny moduł filtrów MFB Wzmacniacz prądowy do subwoofera Uniwersalny moduł TDA7294 Odbiornik nasłuchowy FM/2m Bezprzewodowe słuchawki Przedwzmacniacz gramofonowy RIAA Bufor lampowy, czyli prosiaczek w domu Moduł zasilacza do wzmacniaczy mocy Prosty dyskotekowy mikser Mininadajnik AM Stereofoniczny nadajnik FM Wzmacniacz mikrofonowy Przedwzmacniacz lampowy
Elektronika Praktyczna 11/2004
EP12/94 EP2/95 EP8/96 EP10/95 EP10/95 EP12/97 EP10/98 EP11/98 EP3/04 EP5/04 EP5/04 EP6/04 EP7/04 EP10/04 EdW9/04 EP5/00 EP11/00 EP11/94 EP10/94 EP2/95 EP4/95 EP8/00 EP8/04 EdW1/96 EdW9/97 EdW5/99 EdW2/97 EdW7/97 EdW7/97 EdW8/97 EdW1/98 EdW12/97 EdW2/98 EdW11/98 EdW12/98 EdW12/98 EdW1/99 E3/99 EdW2/00 EdW5/00 EdW9/00 EdW12/00 EdW1/01 EdW3/01 EdW5/01 EdW9/01 EdW12/01 EdW4/02 EdW11/02 EdW7/03 EdW8/03 EdW9/03 EdW10/03 EdW12/03 EdW4/04 EdW2/04 EdW2/04 EdW5/04 EdW7/04 EdW8/04
5,1 5,7 4,0 8,5 36,6 5,7 7,4 37,1 85,0 70,0 11,0 100,0 100,0 38,0 PW03 6,1 17,1 4,6 5,7 5,7 23,2 8,6 5,0 4,5 5,1 4,0 4,6 6,3 5,1 7,0 9,1 3,0 8,0 19,5 6,3 14,8 8,6 9,1 6,3 4,0 6,5 6,0 10,0 7,5 9,0 10,0 63,9 5,7 5,7 9,1 11,0 11,4 5,7 6,8 6,8 8,0 4,6 6,0 4,0 30,0
51,3 66,0 29,6 52,0 34,2 60,0 30,8 171,0 230,0 22,0 28,0 34,2 185,4
k
38,0 40,0 40,0 35,0 25,0 30,0
60,0 13,0* 74,1 22,8 31,9 17,1 81 43,3
49,0 31,0
12,5 30,0 34,2 61,0 11,0 35,0 18,2 50,0 80,0 22,8 33,0 66,1 102,6 6,8 13,0 110,6 220 147,1 293,0 46,8 85,5 54,7 48,0 76,0 17,1 6,0 25,0 23,9 57,0 48,0 65,0 70,0 36,5 63,9 100,0 130,0 200,0 17,1 79,8 50,2 31,9
55,0 17,1 21,0 18,0
Publ.
Cena w zł A
B
C
P
O
2736 2763 5016 + 5016/T + 5057
Pozycje ze znakiem „+” zawierają koszt programu, gdyż płytki i kity sprzedawane są wyłącznie z dyskietką i zaprogramowanymi układami.
Nr
Nazwa
k
k
Wzmacniacz mostkowy 400W EdW10/04 22,0 185,0 Przetwornica do CAR-AUDIO EdW9/04 12,0 Amplituner FM z RDS EP6/01 114,0 433,0 45,0 Tuner FM z RDS EP6/01 109,8 366,0 45,0 Cyfrowa kamera pogłosowa EP3/02 6,8 36,5 Układy mikrokomputerowe i karty do PC 222 Mini-moduł 8051 EP11/94 12,5 47,9 83,0 478 Regulator obrotów wentylatorów w komputerze PC EP3/99 6,3 49,0 83,0 509 Karta dźwiękowa USB EP5/03 24,4 510 Konwerter USB <-> IRDA EP4/03 10,3 515 + Programator mikrokontrolerów AVR i AT89S8252 EP9/03 36,5 49,0 25,0 Pr89AT - programator mikrokontrolerów ‘51 518 + EP7/03 42,2 62,7 20,0 z pamięcią Flash 524 Programator USB mikrokontrolerów ATmega ISP EP8/03 17,1 539 + Sterownik VGA EP11/04 50,0 38,0 540 + Miniprogramator AT89Cx051 EP11/04 15,0 5,0 556 Konwerter USB<->RS232 EP12/03 6,8 560 + UnISProg - uniwersalny programator ISP EP1/04 45,6 66,1 563 + Radiomodem na pasmo 433 MHz EP2/04 45,6 228,0 30,0 565 Bezprzewodowe łącze laserowe EP2/04 17,1 569 Słuchawki pod USB EP4/04 9,1 579 16-bitowy port I2C EP6/04 6,0 572 CPU-meter EP5/04 43,0 573 Programator PIC EP5/04 18,0 98,0 573/8 Adapter DIP8 EP7/04 4,0 573/14 Adapter DIP14 EP7/04 4,0 573/18-1 Adapter DIP18-1 EP7/04 4,5 573/18-2 Adapter DIP18-2 EP7/04 4,5 573/18-3 Adapter DIP18-3 EP7/04 4,5 573/28-1 Adapter DIP28-1 EP7/04 5,0 573/28-2 Adapter DIP28-2 EP7/04 5,0 573/40-1 Adapter DIP40-1 EP7/04 6,0 573/40-2 Adapter DIP40-2 EP7/04 6,0 581 + Interfejs JTAG do procesorów AVR EP6/04 47,0 40,0 589 4-portowy hub USB z RS232 EP9/04 23,0 595 Interfejs SPI do programatora PUNCH EP10/04 12,0 25,0 2250/1+ Mikrokomputer edukacyjny z 8051- pł . główna EdW8/97 49,0 114,0 214,0 31,0 2250/2 Mikrokomputer edukac, z 8051- wyśw. i klaw. EdW8/97 20,0 102,0 177,0 2250/Z Zasilacz stabilizowany +5V/500mA EdW10/97 6,3 35,3 61,0 Z-21 5064 + Tester kabli sieciowych LAN EP6/02 45,6 62,7 30,0 k 5070 Programator WillemProg 3.0 EP6/02 24,4 5080 Konwerter USB <=> RS232 EP9/02 10,3 5088 Karta dźwiękowa z interfejsem USB EP11/02 9,1 5092 + Punch - programator uniwersalny EP12/02 153,9 342,1 550,0 120,0 k 5096 Konwerter USB<->IDE EP1/03 20,5 175,7 5098 Konwerter USB<->RS485 EP2/03 19,4 5100 + JuPIC EP3/03 43,3 51,3 90,0 30,0 5104 + Uniwersalny nadajnik RC5/SIRC EP3/03 39,0 51,3 35,0 Układy mikrokomputerowe - BASCOM College 2500 Płytka do testowania EdW3/00 22,2 118,6* 366,0 2501 Emulator procesorów 89CX051 EdW3/00 11,4 49* 65,0 2502 Programator procesorów 89CX051 EdW3/00 12,5 55,9* 80,0 2503 Klawiatura szesnastkowa do systemów uP EdW4/00 12,5 47,9 88,0 2504 “Uniwersalka” do systemów mp z `X051 EdW7/00 11,4 37,6 61,0 2550+ Mikrokomputer z procesorem AT90S8535 EdW9/01 68,4 150,5 50,0 2550/P Programator ISP EdW10/01 6,0 23,0 2673 Klawiatura do mikrokontrolera EdW8/03 4,6 17,0 3500 Płytka testowa do kursu BASCOM AVR EdW12/02 22,0 123,0 230 3501 Uniwersalny moduł dla 90S2313 i 89Cx051 EdW5/03 6,3 34,2 3003 Mikroprocesorowy miernik częstotliwości EdW11/00 11* 98,1 28,5 3004+ Mikroprocesorowy sterownik akwarium EdW12/00 38,8 134,5 25 KM60 3008+ Przedwzmacniacz cyfrowy z TDA8425 EdW8/01 50,2 103,0 134,0 32,0 Uwaga! Kity 2500, 2501, 2502 stanowią podstawowe narzędzie do nauki w BASCOM College. Wyjątkowo w tym przypadku kity “B” nie zawierają płytek drukowanych. Należy zamówić je oddzielnie . * Wersja A nie zawiera układu zaprogramowanego, należy zamówić go oddzielnie, Przyrządy warsztatowe 01 Woltomierz panelowy LED 8.6 48,8 53,0 02 Woltomierz panelowy LCD 8,6 48,8 53,0 527 + Amatorski oscyloskop cyfrowy EP9/03 53,7 239,4 25,0 530 “Klocki” RS485 - konwertwe RS232<->RS485 EP6/03 6,8 43,3 531 + “Klocki” RS485 - karta wejść przekaźnikowych EP7/03 34,2 183,0 20,0 532 + “Klocki” RS485 - karta wyjść optoizolowanych EP7/03 47,6 136,8 20,0 533 + “Klocki” RS485 - karta wyjść cyfrowych (GND) EP8/03 36,6 68,4 20,0 534 + “Klocki” RS485 - karta wyjść cyfrowych (VCC) EP8/03 35,4 68,4 20,0 535 + “Klocki” RS485 - karta wejść cyfrowych EP9/03 35,4 59,3 20,0 536 + “Klocki” RS485 - karta wejść analogowych EP9/03 72,0 96,9 20,0 537 + “Klocki” RS485 - moduł terminala z wyśw. LED EP10/03 48,8 74,1 20,0 538 + “Klocki” RS485 - alfanumeryczny wyśw. LCD EP10/03 34,2 103,7 20,0 587 + 13-bitowy, różnicowy przetwornik A/C EP9/04 36,0 25,0 591 + Amatorski oscyloskop cyfrowy EP8/04 54,0 220,0 25,0 599 Zestaw testowy ISPGAL EP3/04 15,0 614 Warsztatowy tester kondensatorów EdW10/04 PW03 10,0 823 Tani generator funkcyjny EP9/99 36,6 158,5 278,0
107
OFERTA AVT
A B C P O
NAJLEPIEJ SPRZEDAJĄCE SIĘ KITY Z OFERTY AVT
OFERTA AVTT
Nr 1066 1081 1085 + 1101 1220 1354 1389 1390 1391 1399 1400 1401 1404 1407 1408 2004 2126 2131 2269 2270 2311 2462 2495 2641 2666 2672 2674+ 2709+ 2712 2717 2718 2725 + 2726 2727 + 5083 + 5087 + 251 302 303 304 306 313 314 484 + 501 502 503 501/2/3 520 + 528 + 559 + 568 + 570 + 571 + 578 + 582 + 585 + 588+ 611 612 615 876 896 + 1007 1012 1104 1120 1186 1231 1261 1314 1353 1355 1396 1402 2009 2016 2041
Nazwa
Publ.
Cena w zł A
B
C
Miniaturowy zasilacz uniwersalny (LM317) EP8/95 3,7 13,7 24,0 Miniaturowy stabilizator impulsowy EP4/96 3,7 42,2 Miniaturowy przetwornik A/C EP8/96 36,6 65 108,0 Panelowy miernik napięcia EP8/96 5,7 86,0 Wysokoprądowy stabilizator warsztatowy EP1/99 6,3 55,0 122,0 JDM PIC Programmer 2 EP8/02 5,7 14,6 EEPROM Programmer EP3/04 6,8 29,6 Programator ISP AT89S8252 EP4/04 8,0 Przetwornik częstotliwość-napięcie EP5/04 5,0 Detektor przejścia przez zero EP8/04 5,0 Sygnalizator zaniku napięcia sieciowego EP8/04 6,0 Regulator mocy PWM EP8/04 7,0 Przetwornica napięcia 1,8...3,6/5V EP8/04 5,5 Modułowy interfejs USB <–> RS232 EP10/04 7,0 Uniwersalny stabilizator impulsowy 5V EP10/04 7,0 33,0 Woltomierz do modułowego zest. pomiar. EdW1/96 13,7 59,0 94,0 Najmniejszy moduł miniwoltomierza na LCD MT3/97 6,3 56,0 91,5 Prosty zasilacz laboratoryjny EdW2/97 10,3 59,3 110,0 Prosty miernik częstotliwości EdW4/98 20,0 95,8 Moduł miliwoltomierza do zasilaczy EdW3/98 6,8 45,0 68,0 Impulsowy stabilizator napięcia EdW11/98 8,6 45,0 Zasilacz 10A 10...20V EdW1/01 6,8 67,0 Uniwersalny generator EdW7/01 14,0 90,0 120,0 Radar IRED EdW9/02 5,0 22,8 Częstościomierz radiowy EdW6/03 9,1 Zasilacz warsztatowy sterowany elektronicznie EdW7/03 6,8 39,9 Cyfrowy zasilacz EdW8/03 45,6 Tester układów scalonych EdW2/04 35,0 120,0 Impulsowy reg. prądu ład. akum. EdW2/04 6,8 38,8 Oszczędny sterownik wentylatora EdW3/04 4,6 22,8 Uniwersalny częstościomierz EdW3/04 15,0 Mikroprocesorowy miernik pojemności EdW6/04 32,0 180,0 150,0 Tester układów cyfrowych EdW6/04 8,0 55,0 Cyfrowa stacja lutownicza EdW7/04 33,0 100,0 Mikroprocesorowy zasilacz laboratoryjny EP10/02 62,7 99,2 Tester kabli UTP EP11/02 39,9 70,7 Dla domu, samochodu, wypoczynku i zabawy Zdalne sterowanie przez telefon EP3/97 23,4 115,9 200,0 Kompresor do gitary i basu EP5/96 7,4 39,0 54,0 Przystawka gitarowa “Distortion” EP6/96 6,8 35,3 61,0 Gitarowa bramka szumów EP7/96 4,6 25,1 49,0 Chorus gitarowy EP10/96 7,4 65,0 130,0 Gitarowa kaczka EP11/96 5,1 34,2 69,0 Gitarowe tremolo-vibrato EP12/96 5,7 31,7 Programator regulatorów temperatury DS1821 12/98 56,4 74,1 Radiowy pilot zdalnego sterowania EP12/93 13,7 21,7 30,0 Odbiornik 430MHz EP1/94 12,5 22,8 26,0 Zdalne sterowanie rygla EP1/94 5,7 25,6 32,0 Zmontowany zestaw zdalnego sterowania 80,0 Tester samochodowych sond lambda EP7/03 51,3 Inteligentny sterownik lampki samochodowej EP10/03 28,5 36,5 Radiowy przedłużacz pilotów EP2/04 57,0 96,9 Zdalnie sterowany włącznik oświetlenia energoEP3/04 36,5 63,9 oszczędn. 8-kanałowy system pomiaru temperatury EP4/04 57,0 130,0 Programowany odbiornik zdalnego sterowania EP4/04 34,2 45,6 Zamek elektroniczny na karty chipowe EP6/04 38,0 52,0 Dręczyciel sprzętu TV/AV EP9/04 26,0 30,0 AutoCerber EP7/04 45 130 4-kanałowa iluminofonia EP8/04 35,0 96,0 Alarm termiczny EdW7/04 PW03 12,0* Dotykowy automat losujący EdW8/04 PW03 13,0* Łańcuch świetlny EdW11/04 PW03 8,0* Lampa plazmowa EP6/00 8,6 43,3 Automatyczna nawijarka cewek 11/00 42,7 87,8 Regulator obrotów silnika elektrycznego EP8/94 5,1 30,8 53,0 Strach na komary EP8/94 3,7 11,0 22,0 Prosty wykrywacz metali EP10/96 4,6 27,4 47,0 Przenośny termometr cyfrowy EP2/97 9,8 58,0 98,0 Wielogabarytowy wyświetlacz 7-segmentowy EP7/98 30,5 33,0 Interfejs IrDA do komputera PC EP6/99 6,3 37,6 Cyfrowy termostat z wyjściem mocy EP2/00 7,4 27,4 Najprostszy sterownik silnika krokowego EP8/01 5,7 36,6 Bezpieczne wyjście z linii telefonicznej 10/02 6,8 39,0 Konwerter VGA->TV EP8/02 6,8 28,5 Czujnik zbliżeniowy EP8/04 5,0 Wskaźnik przychodzących rozmów telefonicznych EP8/04 7,0 Pipek dręczyciel EdW2/96 4,0 14,0 26,0 Szybka ładowarka akumulatorów NiCd MT9/97 6,3 51,1 90,0 Latarka stoboskop do ustawiania zapłonu EdW10/96 4,0 16,0 29,0
P
Nr
O KM67 k
KM85
k
20,0 25,0
25,0
k
20,0 35,0 30,0 k KM60 KM60 KM42N KM60 KM42N KM42N 43,0 k
35,0 20,0 40,0 25,0 40,0 25,0 32,0 20,0 30 25,0
43,0
k k
KM85 k
Nazwa
Publ.
Cena w zł A
2045 2049 2109 2134 2139 2143 2157 2170 2216 2222 2260 2298 2299 2309 2316/1 2316/2 2328/N 2328/0
Pozytywka ISDofon (Bez ISD 25xx) E11/97 5,7 “Papuga”magnetofonik cyfrowy E10/96 5,1 Centralka alarmowa EdW7/96 6,8 Transofon-konwerter głosu EdW3/97 8,6 Strach na krety EdW5/97 5,0 Uniwersalny układ ładow. akum. NiCd i NiMH EdW6/97 10,3 Urządzenie iluminofoniczne 4-kanałowe EdW9/97 19,5 Domofon/bramofon EdW11/97 12,5 Układ do odstraszania dokuczliwych owadów E7/97 6,8 Wyświetlacz 7-segmentowy JUMBO EdW4/97 14,5 Lampa stroboskopowa EdW11/97 17,1 Pilot radiowy (odbiornik) EdW11/98 11,4 Pilot radiowy (nadajnik) EdW11/98 6,3 Ładowarka akumulatorów żelowych - zasilacz buforowy EdW10/98 6,3 Linijka świetlna na dekoderach7442 E12/98 5,0 Linijka świetlna na dekoderach7442 (PCB+LED) E12/98 5,0 Radiowy pilot do sterow, 15 urządzeniami (N) EdW2/99 9,0 Radiowy pilot do sterow, 15 urządzeniami (O) EdW2/99 12,5 pilot do sterow, 15 urządzeniami 2328/B Radiowy EdW2/99 4,5 (Moduł wykonawczy na przekaźniku) Radiowy pilot do sterowania 15 urządzeniami 2328/BB (Moduł wykonawczy EdW2/99 4,5 na triaku) 2335 Autoblokada EdW3/99 10,3 2389 Czterokanałowy termometr cyfrowy EdW12/00 14,8 2410 Precyzyjny termometr dwukanałowy EdW2/00 16,0 2420 Regulator temperatury - termostat E7/00 6,3 2458 Aktywny subwoofer samochodowy o mocy 70W EdW11/00 16,5 2463 Prosta przetwornica 12-220V EdW12/00 10,3 2631/27 Gigantyczne wyświetlacze LED - 27cm EdW5/02 25,1 2631/20 Gigantyczne wyświetlacze LED - 20cm EdW5/02 16,0 2631/13 Gigantyczne wyświetlacze LED - 13cm EdW5/02 10,0 2631/7 Gigantyczne wyświetlacze LED - 7cm EdW5/02 6,8 2631/5 Gigantyczne wyświetlacze LED - 5cm EdW5/02 5,0 2632/1+ Gigantyczny zegar - sterownik EdW5/02 35,0 2632/2 Gigantyczny zegar - wyświetlacz EdW5/02 9,1 2650 Zegar Predatora EdW10/02 13,7 2601 Centralka alarmowa EdW10/02 6,8 2628/1 Ładowarka akumulatorów ołowiowych EdW1/03 6,8 2660+ Odtwarzacz CD EdW3/03 51,3 2670+ Sterownik dzwonka szkolnego EdW9/03 40,0 2711+ Obrotomierz EdW2/04 29,6 2714+ Dwupunktowy termometr EdW2/04 34,2 2715 Ładowarka akumulatorów ołowiowych EdW3/04 5,7 2716 Elektroniczny szpieg EdW3/04 5,7 2719 Efektowne światło stopu EdW4/04 11,4 2720 Policyjny stoboskop EdW4/04 9,1 Mikroprocesorowy ZEGAR - inteligentny kombajn 2721+ EdW4/04 35,0 czasu 2722 Uniwersalny odstraszacz ultradźwiękowy EdW5/04 5,0 2731 „Notes” rozmów telefonicznych EdW9/04 6,0 2735 Stroboskop LED EdW10/04 12,0 2737 Jamnikowy ostrzegacz-sygnalizator świetlny EdW10/04 4,0 2738 Stabilnoprądowa adowarka akum. NiCd/NiMH EdW11/04 7,0 2739 + Gra telewizyjna „SQUASH” EdW11/04 26,0 2740 + Intrygujący tęczowy kryształ EdW11/04 25,0 5022+ Programowany zegar z DCF77 EP7/01 125,4 5025 + Mikroprocesorowy wykrywacz metali EP7/01 49,0 5041 + Termometr MIN-MAX EP11/01 68,4 5071 + Interaktywny telefoniczny modu zdalnego sterowania EP7/02 84,2 5071/T Moduł wykonawczy z triakiem EP7/02 5,5 5071/P Moduł wykonawczy z triakiem EP7/02 5,5 PW03 Płytka wielofunkcyjna EdW6/04 6,0 * Wersja „B” nie zawiera płytki drukowanej PW03, należy zamówić ją oddzielnie . Zestawy startowe AVT700 700 Zestaw startowy dla elektroników hobbystów
B
C
30,0 62,0 31,0 44,5 12,5 43,3 105,0 60,0 22,8 17,5 79,8 67,3 36,5 22,8 19,4 8,0 53,6 75,0
110,0 118,0 47,0 77,0 20,0 76,0 147,0 91,0 38,0 35,0 170,0 86,0 47,0 43,0
O
KM60 KM85 KM60
KM85
k
21,7 44,0 79,8 110,0 70,7 39,9 140,0 190,0 35,3
45,6 41,0 42,2 75,0 29,6 34,2 111,7 120,0 200,0 45,6
k
25,0 k
30,0 20,0 20,0 20,0
27,4
93,5 105,0
25,0
22,0 15,0 50,0 13,0 32,0 50,0 205,2 79,8 125,4 222,3 34,2 43,3
22,0 20,0 80,0 KM50 35,0 35,0 55,0
91,0
701
Zestaw startowy Rezystory - 660 szt.
16,0
702
Zestaw startowy Kondensatory - 234 szt.
20,0
703
Zestaw startowy Elektrolity - 80 szt. Elektronika dla nieelektroników Błękitno-biały mrygacz EdW5/04 6,0 Klaskacz EdW5/04 5,0 Rozjaśniacz samochodowy EdW6/04 3,0 Labirynt trójwymiarowy EdW6/04 3,5 Uniwersalny układ czasowy EdW7/04 3,5 Magiczny przełącznik EdW7/04 3,5 Uniwersalna centralka alarmowa EdW8/04 4,0 Uniwersalny moduł zasilający EdW8/04 3,5 „Wypasiony” scalony sensor EdW9/04 5,0 Zwariowany kręciołek EdW9/04 6,5 Wielofunkcyjna syrena alarmowa EdW10/04 6,0
25,0
720 721 722 723 724 725 726 727 728 729 731
P
12,0 10,0 8,0 10,0 8,5 8,0 17,0 14,0 10,0 14,0 12,0
Pełna oferta kitów AVT znajduje się w Internecie pod adresem:
www.sklep.avt.com.pl
108
Elektronika Praktyczna 11/2004
NAJLEPIEJ SPRZEDAJĄCE KITY Z OFERTY AVT ZASADY ZASADY SPRZEDAŻY SPRZEDA�Y WYSYŁKOWEJ, WYSY�KOWEJ,SIĘ ADRESY ADRESY DYSTRYBUTORÓW DYSTRYBUTORÓW AVT AVT
TOWARY OFEROWANE PRZEZ AVT MOŻNA NABYĆ: W sklepach firmowych AVT:
➙
Warszawa:
ul. Burleska 9 tel. (22) 568-99-50 pon.-pt. w godz. 8-17 sob. 10-14
➙
Kraków:
ul. Limanowskiego 27 tel. (12) 296-18-53 pon.-pt. w godz. 10-17, sob. 10-14
Wysyłkowo na koszt odbiorcy pocztą lub firmą kurierską za pobraniem Koszty opakowania i spedycji przesyłki pocztą wynoszą:
14,80 zł
Zamówienia można składać: pocztą na adres: AVT Korporacja Dział Handlowy 01-900 Warszawa 118, skr. poczt. 72
pocztą elektroniczną:
[email protected] lub za pośrednictwem: www.avt.com.pl
pon.-pt. w godz. 8-16 tel.: (22) 568-99-50 fax: (22) 568-99-55 (fax czynny całą dobę)
Zamówienia od firm i instytucji tylko pisemne! U dystrybutorów AVT
UWAGA! Nowi dystrybutorzy! ELSTAT Poznań, ul. Chwaliszewo 17/23 tel. (61) 852-65-42
INFOELEKTRONIKA
Zielona Góra, ul. Jedności 18 tel. (68) 454-95-59
ELSEMIK
Radom, ul. Mireckiego 3 tel. (48) 363-98-75
Częstochowa PPUH "MAXTRONIK", ul. Garibaldiego 11/13, tel. (0-34) 365-44-32 Gdańsk-Wrzeszcz PPHU „Jacktronic", ul. Wita Stwosza 32A, tel. (0-58) 552-38-88 Lublin ELGA, ul. Fabryczna 1/3A/5, tel. (0-81) 746-30-76 Opole Multielektronik, ul. Ligonia 10, tel. (0-77) 453-89-60 Piotrków Trybunalski Pallad, ul. Dąbrowskiego 15, tel. 0-601-322-710 Poznań - dealer prasy
Rybnik Z-d Handl.-Usł.-Prod., A. Bochenek, ul. Hutnicza 15, tel. (0-32) 75-57-699 Warszawa SPEKTRONIK, ul. Żurawia 20, tel. (22) 629-90-99 VEGA-TRONIK, ul. Żelazna 41, tel./fax (22) 890-09-97 Włocławek ELECTRONIC, ul. Zbigniewskiej 2A, tel. (0-54) 41-33-888 www.sklepelektroniczny.com.pl Zamość J.M. Elektronika Sklep Art. Przem., ul. Partyzantów 53, tel. (0-84) 639-88-07
TRAFOS VOLUMEN, ul. Grottgera 4A/12, tel. (061) 865-96-46
Płatnicy podatku VAT
Płatników podatku VAT prosimy o umieszczanie na zamówieniach: • Numeru Identyfikacyjnego Podatnika VAT • Formuły: "Jesteśmy uprawnieni do otrzymywania faktur VAT i upoważniamy do ich wystawienia bez podpisu nabywcy". • Czytelnego podpisu osoby zamawiającej • Pieczątki firmowej
CENY/GWARANCJE
1. 2. 3. 4.
W reklamach są podane ceny brutto zawierające podatek VAT (22% jeżeli nie zaznaczono inaczej) Stosujemy upusty dla odbiorców hurtowych. Przy dużych zamówieniach istnieje możliwość negocjacji cen. Zastrzega się możliwość zmiany cen. W przypadku zmiany cen większej niż 10% klient będzie o tym uprzedzony.
Na aparaturę pomiarową i stacje lutownicze udzielamy gwarancji. Prowadzimy serwis gwarancyjny i pogwarancyjny.
Elektronika Praktyczna 11/2004
109
OFERTA AVT
Zamówienia są realizowane na bieżąco, tj. w dniu otrzymania zamówienia lub nazajutrz, o ile nie występują braki magazynowe. Zaległe zamówienia są realizowane zwykle w terminie 2-3 tygodni.
Elektronika Praktyczna 11/2004
3
3
3
3
3
CODICO
COMPART AUTOMATON
CONEC
CONTRANS
DATCOM
3
3
3
3
ELFA
ELHURT Sp. z o.o.
ELMARK AUTOMATYKA
3
3
ELPOD
ELPROMA
3
ELPLAST
3
3
3
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7 7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
obudowy
3
3
3
ELEN
3
3
7
7
7
7
7
7
7
7
7
urządzenia i osprzęt ATE
3
3
EBS INK-JET
3
3
3
3
kable
3
3
3
7
7
7
narzędzia warsztatowe
7
7
7
komputery przemysłowe
3
3
7
7
7
7
sterowniki PLC
7
baterie i ogniwa 7
7
7
moduły wykonawcze
3
3
CADWARE
3
7
7
osprzęt i obudowy EMC
DTW ELEKTRONIKA
3
BIALL-PRZEDS.HANDL.
3
7
7
7
7
7
PROGRAMY NARZĘDZIOWE I PROJEKTOWE
3
3
ASTAT
3
3
7
7
czujniki
7
przyrządy pomiarowe
3
szkolenia i konferencje
3
moduły pomiarowe
3
konsulting
3
7
7
maszyny i urządzenia do montażu automatycznego
3
3
ASA
serwis
3
7
7
7
7
7
7
7
7
7
7
chemia i materiały dla elektroniki
DISCOTECH
3
ARTRONIC
projektowanie
3
7
7
lutownice i narzędzia do montażu ręcznego
3
3
AMTEK
montaż
3
7
7
systemy kontroli dostępu
3
3
7
7
7
7
LITERATURA I CZASOPISMA FACHOWE
DIGIREC
3
AM TECHNOLOGIES
HANDEL
3
PRODUKCJA
3
podzespoły pasywne
ALFINE
podzespoły aktywne (półprzewodniki)
7
el. piezoelektryczne
ALEPH
transformatory i cewki, mat. magnetyczne
7
złącza
7
podzesp. elektromechaniczne 7
zasilacze, falowniki
3
el. optoelektroniczne
7
sensory
AET
el. mikrofalowe
7
emulatory, programatory, kasowniki
7
Łomianki
Kraków
Świdnica
Warszawa
Gdańsk
Warszawa
Prešov
Wrocław
Zabierzów
Warszawa
Rybnik
Żywiec
Wrocław
Wrocław
Warszawa
Grudziądz
Liberec
Gdańsk
Poznań
Gliwice
Gdynia
Warszawa
Warszawa
Poznań
Warszawa
Ostrów Wlkp.
Warszawa
Szydłowiec
MIEJSCOWOŚĆ
7
22
12
74
22
58
22
+42151
71
12
22
32
33
71
071
22
+43 1
+42048
58
61
32
58
22
22
61
22
62
22
48
NR KIERUNKOWY
7
7517680
4102550
8523820
7737937
5540800
5202200
7733700
3670411
2830950
6339511
4246100
8610313
3252621
3643002
6108549
863050
5106131
3221191
8488871
2374541
6685784
8664140
5322800
8205811
8680414
7355580
3360200
6176000
TELEFON
7
7517681
4102552
8523820
7737936
5540806
5202220
7733700
3733269
2853567
6339298
4246606
8610313
3254439
3643010
6106392
8630598
5106131
3221193
8488276
2374541
6685782
8664141
6081444
8213199
8680413
7381493
3360201
6176000
FAX
7
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
andrzej.discotech.waw.pl
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
E-MAIL
3
TECHNOLOGIE
www.elproma.com.pl
www.elpod.com.pl
www.elmark.com.pl
www.elhurt.com.pl
www.elfa.se
www.elen.sk
www.dtw.com.pl
www.discotech.waw.pl
www.digirec.com.pl
www.contrans.com.pl
www.conec.pl
compart.zajdel.pl
www.codico.com
www.cadware.cz
www.biall.com.pl
www.astat.com.pl
www.asa.gliwice.pl
www.artronic.pl
www.amtek.pl
www.amt.pl
www.alfine.com.pl
www.aleph-cee.pl
www.aet.com.pl
www.acte.com.pl
www.acs.ats.pl
HTTP
3
URZĄDZENIA
26
115
57
9
75
54
124
62
16
11/2004
11/2004
11/2004
11/2004
7/2004
11/2004
7/2004
11/2004
9/2004
6/2004
6/2004
6/2004
9/2004
9/2004
9/2004
11/2004
9/2004
11/2004
61
98
15
2
4
5, 47
81
76
67
87
62
92
44
kart.CD
132
70
36
55
11/2004 117, 123
6/2004
10/2004
11/2004
11/2004
11/2004
11/2004
11/2004
11/2004
11/2004
OSTATNIA REKLAMA W EP NR...
ACTE
PODZESPOŁY ELEKTRONICZNE
STR.
ACS ELEKTRONIK
NAZWA FIRMY
USŁUGI
Ekspresowy Informator Elektroniczny ma za zadanie ułatwić naszym Czytelnikom orientację w ofercie firm ogłaszających się w Elektronice Praktycznej. Co miesiąc znajdziecie w Ekspresowym Informatorze Elektronicznym adresy firm, które ogłaszały się w Elektronice Praktycznej w przeciągu ostatnich 6 miesięcy oraz wskazanie w którym numerze i na której stronie pojawiła się ostatnia reklama.
EKSPRESOWY INFORMATOR ELEKTRONICZNY
111
112
HANDEL
3
3
MARTHEL
MASTERS
3
3
3
3
MIKROKONTROLA
MIKSTER
MSC
3
3
3
3
3
NATIONAL INSTRUMENTS
NDN-Z.DANILUK
OMRON
PIEKARZ
PLATAN
3
3
3
3
3
3
3
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
LITERATURA I CZASOPISMA FACHOWE
NAPĘDY I STEROWANIE
3
3
7
7
7
7
narzędzia warsztatowe
MICROS
3
3
3
7
7
7
7
7
7
urządzenia i osprzęt ATE
MICRODIS ELECTRONICS
3
3
3
3
3
7
7
7
7
lutownice i narzędzia do montażu ręcznego
MICROCHIP
3
MERSERWIS
3
3
MCD ELECTRONICS
MEMEC
3
MASZCZYK
3
3
3
3
7
obudowy
3
3
3
3
7
7
7
osprzęt i obudowy EMC
3
3
LC ELEKTRONIK
3
JM ELEKTRONIK
3
3
7
7
przyrządy pomiarowe
3
3
JBC ELECTRONIC
3
konsulting
3
7
7
sterowniki PLC
3
serwis
3
7
7
moduły wykonawcze
3
3
IMPOL-1
3
7
7
zasilacze, falowniki
3
7
7
7
moduły pomiarowe
3
3
7
7
7
7
7
systemy kontroli dostępu
KONTRON
3
IMPACT
3
szkolenia i konferencje
3
7
7
maszyny i urządzenia do montażu automatycznego
3
3
HI-SOURCE
montaż
3
7
7
7
chemia i materiały dla elektroniki
KONO
3
GURU
PRODUKCJA
3
projektowanie
GAMMA
7
7
7
sensory
3
7
7
Sopot
Warszawa
Warszawa
Warszawa
Warszawa
Racibórz
Gliwice
Czeladź
Warszawa
Kraków
Wrocław
Warszawa
Gliwice
Węgierska Górka
Sulejówek
Gdańsk
Kobierzyce
Warszawa
Warszawa
Gliwice
Gliwice
Nowa Sól
Warszawa
Warszawa
Taipei, Tajwan
Warszawa
Warszawa
Warszawa
Iłowa
Gliwice
Kraków
Wrocław
MIEJSCOWOŚĆ
FUTURE ELECTRONICS
podzespoły pasywne
3
podzespoły aktywne (półprzewodniki)
3
el. piezoelektryczne
7
PROGRAMY NARZĘDZIOWE I PROJEKTOWE
FERYSTER
transformatory i cewki, mat. magnetyczne
3
kable
EVATRONIX
złącza
7
el. mikrofalowe
7
el. optoelektroniczne
7
podzesp. elektromechaniczne
7
czujniki
7
baterie i ogniwa
7
komputery przemysłowe
7
emulatory, programatory, kasowniki
7
58
22
22
22
22
32
32
32
22
12
71
22
32
33
22
58
71
22
22
32
032
68
22
22
886-2
22
22
22
68
33
12
71
NR KIERUNKOWY
7
5558800
6637601
6457860
6416196
3390150
7551917
3305450
7637777
8655545
6369566
3010400
8314256
2380360
8616035
7834520
7618686
3110711
5695300
8536824
2329389
3396900
3560990
8865602
8255585
29947549
8311042
8627500
6189202
3600077
8122596
4126773
7831260
5558801
8654057
6457863
6411547
3390238
7551917
3305452
7637594
8655544
6369399
3010404
8312521
2380692
8616035
7839085
7618787
3110713
5695310
8536825
2329459
3396909
3560995
8865604
8257914
22771266
8311042
8627501
6188050
3600070
8125438
4121893
7831269
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
merserwis.merserwis.com.pl
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
www.platan.pl
www.piekarz.pl
www.omron.com.pl
www.ndn.com.pl
www.ni.com/poland
www.nis.com.pl
www.mikster.com.pl
www.mikrokontrola.pl
www.micros.com.pl
www.microdis.net
www.microchip.com
www.merserwis.com.pl
www.pl.memec.com
www.mcd.com.pl
www.maszczyk.pl
www.masters.com.pl
www.marthel.pl
www.lcel.com.pl
www.kontron.pl
www.kono.com.pl
www.jm.pl
www.jbc.com.pl
www.impol-1.com.pl
www.guru.com.pl
www.gamma.pl
www.futureelectronics.com
www.feryster.com.pl
www.evatronix.com.pl
72
68
71
15
79
26
93
43, 134
58
74
49
49
57
11/2004
11/2004
9/2004
11/2004
11/2004
9/2004
10/2004
11/2004
11/2004
11/2004
11/2004
11/2004
10/2004
11/2004
11/2004
10/2004
9/2004
11/2004
11/2004
46
76
130
3, 135
130
57
60
131
132
134
127
63
8
66
42
125
77
13
49
11/2004 127, 134
11/2004
10/2004
10/2004
11/2004
8/2004
6/2004
11/2004
11/2004
11/2004
10/2004
11/2004
8/2004 11/2004
www.euroelektronik.com.pl
[email protected] euroelektronik@euroelektronik. com.pl
HTTP
7
TELEFON
7
FAX
3
TECHNOLOGIE
E-MAIL
3
URZĄDZENIA
OSTATNIA REKLAMA W EP NR...
EUROELEKTRONIK
PODZESPOŁY ELEKTRONICZNE
STR.
EURODIS ELECTRONICS PL
NAZWA FIRMY
USŁUGI
Ekspresowy Informator Elektroniczny
Elektronika Praktyczna 11/2004
Elektronika Praktyczna 11/2004
3
3
3
3
3
3
3
3
3
3
3
RUTRONIK
SELS
SEMICON
SIBA
SIEMENS
SILICA
SIMEX
SŁAWMIR ELECTRONICS
SOLVE
HANDEL
ROPLA ELEKTRONIK
3
3
3
TME
TRIMPOT ELEKTRONIK
TV SAT ELECTRONICS
3
3
3
3
3
UNITOR
UNITRA UNIZET
WG ELECTRONICS
WOBIT
WW ELEKTRONIK
3
3
3
3
TESPOL
TWT AUTOMATYKA
3
3
TATAREK
3
SPOERLE ELECTRONIC
3
3
SOYTER
ST MICROELECTRONICS
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
narzędzia warsztatowe
SOWAR
3
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
moduły wykonawcze
3
3
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
lutownice i narzędzia do montażu ręcznego
SONEL
3
3
7
sterowniki PLC
3
3
7
7
moduły pomiarowe
3
3
7
7
7
7
7
7
7
7
chemia i materiały dla elektroniki
7
7
7
el. mikrofalowe
7
el. piezoelektryczne
7
7
7
7
maszyny i urządzenia do montażu automatycznego
7
7
7
7
baterie i ogniwa
7
el. optoelektroniczne
7
emulatory, programatory, kasowniki
7
kable
7
czujniki
7
transformatory i cewki, mat. magnetyczne
7
7
przyrządy pomiarowe
7
7
7
PROGRAMY NARZĘDZIOWE I PROJEKTOWE
3
podzespoły aktywne (półprzewodniki)
7
zasilacze, falowniki
3
3
7
Sopot
Poznań
Warszawa
Warszawa
Toruń
Warszawa
Warszawa
Gliwice
Łódź
Wrocław
Wrocław
Warszawa
Warszawa
Wrocław
Świdnica
Tychy
Warszawa
Gdańsk
Warszawa
Warszawa
Warszawa
Warszawa
Warszawa
Żory
Wrocław
Grodzisk Maz.
Żary
Wrocław
Łódź
Wrocław
MIEJSCOWOŚĆ
3
3
sensory
3
montaż
RK-SYSTEM
PRODUKCJA
3
serwis
RELPOL
projektowanie
3
konsulting
3
szkolenia i konferencje
3
podzespoły pasywne
3
podzesp. elektromechaniczne
RADIOTECHNIKA MARKET
złącza 7
komputery przemysłowe
7
obudowy
7
osprzęt i obudowy EMC
7
systemy kontroli dostępu
3
58
61
22
22
56
22
22
32
42
71
71
22
22
71
74
32
22
85
22
22
22
22
22
32
71
22
68
71
42
71
NR KIERUNKOWY
3
5511115
8350800
8479720
6324671
6599652
6444420
8344427
2389094
6455555
7836360
3672167
8569090
7960630
3436523
8537766
2270516
8653060
7620777
6402351
8709163
8321477
5504517
8350704
6470642
6322336
6457696
6442938
8647786
2389094
6455500
7836361
3731458
8516136
7220550
3464206
8536403
2270516
8653050
7620770
6402354
8709169
8339118
6157375
8481648
8480842 8485281 6157371
4759022
3397230
7243037
3743866
3211612
6328593
3626357
4759020
3397229
7920518
4790800
3277075
6324792
3626356
TELEFON
3
FAX
3
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
www.wwelektronik.com.pl
www.wobit.com.pl
www.wg.com.pl
www.unizet.com.pl
www.unitor.com.pl
www.twt.com.pl
www.tvsat.com.pl
www.tme.pl
www.tespol.com.pl
www.tatarek.com.pl
www.spoerle.com
SalesOffice.Warsaw@spoerle. com
[email protected]
www.soyter.com.pl
www.sowar.com.pl
www.sonel.pl
www.solve.com.pl
www.slawmir.com.pl
www.simex.com.pl
www.silca.com
www.siemens.pl
www.siba.de
www.semicon.com.pl
www.sels.com.pl
www.rutronik.com
www.ropla.com.pl
www.rk-system.com.pl
www.relpol.com.pl
www.radiotechmkt.com.pl
www.quantum.com.pl
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
E-MAIL
3
TECHNOLOGIE
HTTP
3
URZĄDZENIA
6/2004
6/2004
11/2004
11/2004
9/2004
11/2004
11/2004
11/2004
11/2004
11/2004
11/2004
11/2004
7/2004
10/2004
8/2004
9/2004
11/2004
10/2004
11/2004
11/2004
11/2004
10/2004
11/2004
6/2004
11/2004
11/2004
11/2004
11/2004
11/2004
11/2004
11/2004
OSTATNIA REKLAMA W EP NR...
QWERTY
PODZESPOŁY ELEKTRONICZNE
9
86
16
61
69
131
124
16
136
4
56
53
49
136
10
65
15
31
129
kart CD
128
106
56, 72
86
73
41
61
65
7
132
134
STR.
QUANTUM
NAZWA FIRMY
USŁUGI
EKSPRESOWY INFORMATOR ELEKTRONICZNY
LITERATURA I CZASOPISMA FACHOWE
urządzenia i osprzęt ATE
113
WYKAZ FIRM OGŁASZAJĄCYCH SIĘ W TYM NUMERZE ELEKTRONIKI PRAKTYCZNEJ ACS ELEKTRONIK ..................... 16 ACTE ........................................... 62 ADATRONIK .............................. 101 AET ............................................ 124 ALARM-TECH ........................... 103 ALEPH ......................................... 54 ALFINE ........................................ 75 ALTRON .................................... 100 AM TECHNOLOGIES.................... 9 AMTEK ........................................ 57 AND ............................................ 99 ARMEL ........................................ 99 ASTAT ................................ 117, 123 ATLANT ..................................... 102 AVT Edw ...................................... 98 BIALL........................................... 55 BOX ELECTRONICS ................ 101 CODICO ....................................... 70 COSMOGATE ............................ 103 DAR ELEKTRONIK ................... 101 DELTA ........................................ 102 EBS INK-JET............................... 76 ELDAR .................. 100,102,103,104 ELFA ........................................ 5, 47 ELMARK AUTOMATYKA ............. 2 ELPIAST .................................... 100 ELPIN......................................... 101 ELPLAST ..................................... 15 ELPOD ......................................... 97 ELPROMA ................................... 61 EUROELEKTRONIK ................... 49
EVATRONIX ................................. 49 FUTURE ELECTRONICS ..... 53, 58 GAMMA ............................... 43, 134 GEORG ...................................... 104 GURU........................................... 93 IMPOL-1....................................... 15 INFOELEKTRONIKA................. 100 KONO .......................................... 72 KONTRON ......................... 127, 134 LARO ......................................... 100 LC ELEKTRONIK ........................ 49 MARTHEL.................................... 13 MCD ELECTRONICS .................. 42 MEMEC ........................................ 66 MICROCHIP................................. 63 MICRODIS ELECTRONICS ...... 127 MICROS ..................................... 134 MIKLOBIT .................................. 102 MIKROKONTROLA ................... 132 MIKSTER ................................... 131 MONACOR ................................ 104 NATIONAL INSTRUMENTS ...... 130 NDN ....................................... 3, 135 NEKMA ALARM SYSTEM .................... 100,101,103 OGICOM ................................. 133 PAGO-AP ................................... 102 PIEKARZ ..................................... 76 PLATAN ....................................... 46 POPEK......................................... 99 PYFFEL ..................................... 100
QUANTUM ................................. 134 QWERTY ................................... 132 RADIOTECHNIKA MARKET ........ 7 RELPOL....................................... 65 RK-SYSTEM ................................ 61 ROPLA......................................... 41 RTVC ELECTRONICS ................ 99 RUTRONIK .................................. 73 SEGURO.................................... 103 SEMICON .............................. 56, 72 SIEMENS ................................... 128 SILICA.................................. kartCD SIMEX ........................................ 129 SOLARIS ................................... 100 SOLVE ......................................... 15 SPECTRUM ................................. 99 ST MICROELETRONICS ............ 53 TARGI AUTOMATICON ............ 131 TATAREK ..................................... 56 TELMATIK ................................. 102 TESPOL ......................................... 4 TME ............................................ 136 TRIMPOT ELEKTRONIK ............ 16 TV SAT ELECTRONICS ........... 124 TWT AUTOMATYKA ................. 131 UNIPROD................................... 104 UNITRA UNIZET ......................... 61 VIDIAQ ....................................... 104 WG ELECTRONICS .................... 16 WOBIT ....................................... 101
Reklamy stron internetowych na str. 45, 132.
Wszelkich informacji dotyczących reklamy na łamach EP udziela Ewa Kopeć, tel. (22) 568-99-49 lub 0-501-497-404, informacje dostępne są także w Internecie pod adresem: www.ep.com.pl, e-mail:
[email protected]
114
Elektronika Praktyczna 11/2004
INFO
KRAJ
ENERGETAB 2004 Po raz 17-ty odbyły się Międzynarodowe Energetyczne Targi Bielskie - ENERGETAB’04. Zakończyły się one sukcesem dla wystawców gdyż targi zwiedzały dosłownie tłumy specjalistów i menedżerów z Polski i zagranicy. Był to też niewątpliwie sukces organizatorów – na terenach wystawowych ZIAD Bielsko – Biała SA na ponad 15 tys. m2 zaprezentowały swoje najnowsze produkty 454 firmy, w tym 37 zagranicznych (od Hiszpanii po Izrael). Liczbę odwiedzających targi organizatorzy szacują na ponad 15 tys. osób (na podstawie liczby zajętych miejsc parkingowych - gdyż wstęp na targi był bezpłatny). Spośród 50 wyrobów i technologii zgłoszonych przez wystawców do konkursu na najnowocześniejszy produkt: Puchar Ministra Gospodarki i Pracy przyznano RELPOL S.A. za „nową generację systemu CZIP -1, 2, 3, 4”; Puchar Prezesa Polskiego To-
INFO
ŚWIAT
Zmiany w Philipsie
warzystwa Przesyłu i Rozdziału Energii Elektrycznej przyznano firmie ENERGOBUD Leszno - spółce Energetyki Poznańskiej za „złącze kablowe średniego napięcia typu UK 1700 - 15”; Medal Prezesa Stowarzyszenia Elektryków Polskich uzyskała firma ENERGOPOMIAR - ELEKTRYKA za „układ do diagnostyki transformatora typu UDT-1”; Złoty Medal PSE S.A otrzymała firma Energo - Complex za „wykrywanie odkształceń mechanicznych uzwojeń transformatorów w eksploatacji metodą FRA”
Informacje o pozostałych wyróżnieniach można uzyskać w ZIAD Bielsko - Biała na stronach www.ziad. bielsko.pl. Duże zainteresowanie wzbudziły towarzyszące targom konferencje zorganizowane przez PSE - Operator S.A. Obszerne informacje o wystawcach i ich produktach można było znaleźć nie tylko w prawie 800 stronicowym katalogu (i jego wersji na CD), ale także na komputerowych informatorach ustawionych przy wejściach do pawilonów wystawowych. Podobnie jak w latach ubiegłych ukazały się trzy edycje codziennego „Informatora Targowego”. Organizatorami targów ENERGETAB’04 byli: ZIAD Bielsko-Biała S.A wraz z Polskimi Sieciami Elektroenergetycznymi S.A., Polskim Towarzystwem Przesyłu i Rozdziału Energii Elektrycznej i Stowarzyszeniem Elektryków Polskich. Więcej informacji na stronie internetowej www.zjad.bielsko.pl.
Scott McGregor spełniający w półprzewodnikowej części firmy Philips rolę CEO (Chief Executive Officer) podjął decyzję o odejściu z dniem 1.01.2005 roku. Zarząd firmy ocenił jego osiągnięcia (pracuje na tym stanowisku od 1.09.2001 roku) bardzo wysoko zwłaszcza, że warunki rynkowe były bardzo trudne.
Rynek o jakim się nie śniło
Mikroprocesory są wszędzie, ale największe na nie zapotrzebowanie jest na rynku telefonów komórkowych. W samym roku 2003 pro-
Nowa karta pomiarowa DaqBoard/1000 Firma IOtech wprowadziła na rynek nową kartę pomiarową o oznaczeniu DaqBoard/1000. DaqBoard/1000 to rozszerzenie gamy dobrze znanych kart z serii DaqBoard/2000. Podstawową różnicą pomiędzy kartami DaqBoard/1000 i DaqBoard/2000 jest brak możliwości podłączania kart kondycjonujących z serii DBK. Model 2000 można rozbudować do 256 wejść analogowych i 208 wejść/wyjść cyfrowych. W modelu 1000 mamy natomiast do dyspozycji 16 wejść analogowych, 2 wyjścia analogowe, 4 wejścia licznikowe i 24 wejścia/wyjścia cyfrowe. Dzięki temu zabiegowi cena
kar t DaqBoard/1000 została znacznie obniżona w porównaniu z serią DaqBoard/2000. Zaletą nowych kar t jest również bardziej standardowe złącze na karcie (SCSI II, 68-pin). Model 1000 odziedziczył po DaqBoard/2000 wszystkie sterowniki. Mamy więc do dyspozycji sterowniki do języków wysokiego poziomu Visual Basic, Delphi, C/C++, kontrolki ActiveX/COM, sterowniki do specjalistycznych pakietów pomiarowych DasyLab, LabView, Matlab
oraz sterowniki do systemu Linux. Więcej informacji: Elmark Automatyka Sp. z o.o., 05-075 Warszawa – Wesoła, ul. Niemcewicza 76, tel.: (22) 773-79-37, elmark@elmark. com.pl.
wadzić na zewnątrz obudowy grube przewody prądowe, napięciowe lub koncentryczne. Obudowa wykonana jest z niklowanego aluminium, a w jej skład wchodzą przepusty,
zaślepki i tuleje krępujące w liczbie dopasowanej do liczby portów. Cechy obudowy: rozmiar - od DB9 do DB50 w klasycznym typoszeregu, liczba portów/wyjść - 4, 5, 6, 7 i 8, materiał - aluminium niklowane. W skład zestawu wchodzą: przepust aluminiowy, tuleja krępująca wykonana z brązu, zaślepka aluminiowa. Więcej informacji: Conec Polska Sp. z o.o., 52-425 Wrocław, Aleja Piastów 22a, tel.: (71) 364-30-02, fax: (71) 364-30-10, info@conec. pl, www.conec.pl.
Wieloportowe obudowy D-Sub Firma Conec wprowadziła do swojej oferty wieloportowe obudowy typu D-Sub. Obudowa współpracuje ze złączami D-Sub, w szczególności ze złączami typu D-Sub Combo, gdzie w jednym korpusie możemy umieścić styki sygnałowe, silnoprądowe, wysokonapięciowe lub/i współosiowe. Taka konstrukcja obudowy pozwala na wyprowadzanie kabli w 3 kierunkach jednocześnie bez konieczności ciasnego upychania ich w jednym wyjściu z obudowy. Ma to znaczenie szczególnie wówczas, gdy potrzeba jednocześnie wypro-
Elektronika Praktyczna 11/2004
ducenci telefonów komórkowych kupili ponad 450 milionów procesorów różnego typu (także DSP), a szacuje się, że rok 2006 zaowocuje zamówieniami blisko dwukrotnie większymi. Kiedy „padnie” pierwszy miliard w ciągu roku?
8 Gb NAND-Flash
Samsung Electronics ofer uje pierwsze pamięci NAND-Flash o pojemności 8 Gb wykonywane w technologii 60 nm. Zastosowanie nowoczesnej technologii pozwoliło uzyskać powierzchnię pojedynczej komórki pamięci nie przekraczającą 0,0082 mm2. Według informacji producenta, zastosowane rozwiązania umożliwią zbudowanie w krótkim czasie pamięci pojemności 16 Gb, w której można będzie przechować do 4000 pięciominutowych utworów muzycznych.
115
INFO
ŚWIAT
PWM Microchipa
Microchip wprowadza do swojej ofer ty układy przewidziane do budowy zasilaczy ze sterowaniem cyfrowym. Nowy układ MCP1630 jest złożonym sterownikiem PWM. Składa się z szybkiego komparatora, dobrej jakości wzmacniacza i złożonego układu PWM. Ten układ przewidziany do współpracy z mikrokontrolerem pozwala zrealizować szybki, inteligentny sterownik zasilacza. Mikrokontroler może sterować napięciem i prądem wyjściowym, częstotliwością pracy, współczynnikiem wypeł-
INFO
KRAJ
Pomiary przez Ethernet Firma IOtech posiada w ofercie bardzo duży wybór zewnętrznych stacji pomiarowych z serii Daq. Dwa najpopularniejsze modele - DaqBook 2001 i 2005 dostępne są teraz w wersji do zabudowy. Umożliwia to tworzenie własnych systemów pomiarowych na bazie systemu DaqOEM. Urządzenia wyposażone są w identyczną liczbę wejść/ wyjść jak ich standardowe odpowiedniki, czyli: przetwornik A/C 16-bitowy, 200 kHz z 16 multipleksowanymi wejściami, 40 wejść/wyjść cyfrowych, 4 liczniki oraz opcjonalnie cztery 16-bitowe wyjścia analo-
gowe. Wszystkie wejścia dostępne są na trzech 40-pinowych złączach na płycie głównej. System można więc łatwo rozbudować o dodatkowe karty kondycjonujące np. do pomiaru temperatury, naprężeń, itp.
DaqOEM wymaga zasilania napięciem stałym w przedziale 10...30 VDC i pobiera 15 W mocy. Połączenie z komputerem PC jest zrealizowane przez interfejs Ethernet, zapewniający pomiary i transmisje danych z prędkością do 200 kpróbek/s. Z urządzeniem załączone są sterowniki do Visual Basic, C/C++, ActiveX/COM, LabView, MATLAB, DASYLab. Więcej informacji: Elmark Automatyka Sp. z o.o., 05-075 Warszawa – Wesoła, ul. Niemcewicza 76, tel.: (22) 773-79-37, elmark@elmark. com.pl.
Minimoduł radiowy z podwójną przemianą częstotliwości
nienia i innymi parametrami, czyniąc gotowy układ bardziej inteligentnym i przystosowanym do wypełnianego zadania. Dzięki temu gotowy zasilacz może współpracować z różnymi sygnałami zewnętrznymi co znacznie ułatwia optymalizację warunków pracy i ewentualną kalibrację. Układ MCP1630 jest odpowiedni do pracy z zasilaczami impulsowymi o dowolnej topologii przy czym najlepiej jest go stosować w układach o częstotliwości pracy przekraczającej 200 kHz. Typowe zastosowania obejmują ładowarki akumulatorów litowo-jonowych i NiMH, układy korekcji współczynnika mocy, zasilacze wielowyjściowe i wielofazowe. Układ jest wyposażony w wewnętrzne zabezpieczenia, w tym przed zbyt niskim napięciem (UVLO – under-voltage lockout), zwarciem wyjścia i przegrzaniem. Ma również precyzyjny ogranicznik prądu wyjściowego działający z tolerancją ±5 %. Typowa war tość prądu pobieranego ze źródła zasilania wynosi 2,8 mA. Układy MCP1630 są dostępne w obudowach 8 nóżkowych MSOP i mogą pracować w zakresie temperatur od –40ºC do +125ºC. Producent przygotował również płytkę demonstracyjną pokazującą zastosowanie nowego układu w ładowarce akumulatorów.
116
Firma Propox wprowadziła do sprzedaży kolejny minimoduł do komunikacji radiowej. MM86RF211 jest miniaturowym, kompletnym modułem nadawczo-odbiorczym zbudowanym w oparciu o układ AT86RF211 firmy Atmel. Moduł pracuje w ogólnie dostępnym paśmie ISM 433 MHz i zawiera wszystkie niezbędne do pracy elementy, za wyjątkiem anteny. Możliwe jest również wykonanie modułów na pasma 868 MHz i 915 MHz. Maksymalna prędkość transmisji wynosi 50 kb/s. Układ AT86RF211 zbudowany jest w nietypowy, jak na jednoukładowe transceivery sposób, gdyż posiada podwójną przemianę częstotliwości oraz ceramiczny filtr pośredniej częstotliwości. Gwarantuje to uzyskanie wysokiej czułości i odporności na zakłócenia. Zintegrowany syntezer umożliwia ustawianie częstotliwości nadawania i odbioru
z krokiem 200 Hz. Wyjściowa moc nadajnika może być regulowana programowo, a maksymalna moc ograniczana jest zewnętrznym rezystorem i może dochodzić do +14 dBm. Umożliwia to uzyskanie dużego zasięgu i stosowanie tanich anten na płytce PCB. Układ umożliwia również pomiar siły odbieranego sygnału oraz napięcia zasilania. Wyniki pomiarów umieszczone są w wewnętrznych rejestrach. Wszystkie sygnały niezbędne do komunikacji z minimodułem, zasilanie oraz wejście/wyjście antenowe zostały wyprowadzone na dwa złącza szpilkowe SIL8. Moduł przeznaczony jest do montażu poziomego, może zostać wlutowany w płytkę lub umieszczony w podstawce. Połączenie z mikrokontrolerem wykonuje się przy użyciu sześciu linii. Trzy z nich to interfejs służący do
konfigurowania układu AT86RF211 (ustawiania takich parametrów jak: częstotliwość nadawania/odbioru, moc wyjściowa, tryb pracy układu, itd.), kolejne dwie linie tworzą interfejs dla danych przysyłanych drogą radiową. Dostępne jest również wyjście WAKEUP aktywowane po odebraniu ustawionej wcześniej sekwencji danych. Więcej informacji: Propox, 81-376 Gdynia, ul. Korzeniowskiego 30, tel.: (58) 660-30-10, www.propox.com.
lającego, zespół dla pola silnika asynchronicznego wysokiego napięcia oraz dla pola transformatora SN/NN. System realizuje wszystkie funkcje dotychczasowych układów automatyki elektroenergetycznej pól SN i umożliwia realizację nowych zadań wynikających z aktualnych potrzeb eksploatacyjnych sieci. Bardzo istotną cechą zespołów typu CZIP jest ich zdolność do łatwej współpracy z dyspozytorski-
mi systemami kontroli i nadzoru pracy sieci elektroenergetycznej. Więcej informacji: Relpol S.A., 68-200 Żary, ul. 11 Listopada 37, tel.: (68) 479-08-00, www. relpol.com.pl.
Relpol nagrodzony Na 17. Międzynarodowych Energetycznych Targach Bielskich Energetab 2004 firma Relpol S.A. została wyróżniona Pucharem Ministra Gospodarki i Pracy. Nagroda dotyczyła drugiej generacji systemu CZIP, który powstał w 2001 roku w wyniku współpracy firmy Relpol S.A. z Instytutem Elektroenergetyki Politechniki Poznańskiej oraz z firmą Regulus z Poznania. System CZIP jest przeznaczony dla wszystkich pól rozdzielni średniego napięcia w sieciach o dowolnym sposobie uziemienia punktu zerowego, co powoduje, że bardzo dobrze nadaje się również do rozdzielni przemysłowych. Obejmuje także automatykę SZR, zespół dla pola 110 kV transformatora zasi-
Elektronika Praktyczna 11/2004
INFO
KRAJ
Nowe mikrokontrolery Firma Microchip poinformowała o wprowadzeniu na rynek 12 nowych mikrokontrolerów. Osiem z nich, oferując konstruktorowi pamięć programu Flash 48 lub 64 kB i pamięć RAM 4 kB przy jednocześnie małej liczbie wyprowadzeń (28 lub 40/44), spełnia wymagania aplikacji high end. Pozostałe cztery wyróżniają się przede wszystkim niską ceną i dodatkowymi portami we/wy (w sumie 70). Pamięć programu Flash tych mikrokontrolerów ma pojemność 8 kB lub 16 kB, a
pamięć RAM 768 bajtów, obudowy zaś 64 i 80 wyprowadzeń. Nowe mikrokontrolery są produkowane w wykonaniu Standard Flash i Enhan-
ced Flash. Te ostatnie, o oznaczeniach PIC18F2525, PIC18F2620, PIC18F4525 i PIC18F4620 mają funkcję autoprogramowania. Wyposażono je w 1 kB pamięć danych EEPROM o dużej trwałości. Mikrokontrolery pracują poprawnie w zakresie napięć od 2,0 do 5,5 V i temperatur od -40°C do +125°C. Więcej informacji: Gamma Sp. z o.o., tel.: (22) 862-75-00, fax: (22), www.gamma.pl.
Karta do odczytów z indukcyjnych czujników przemieszczeń APCI-3701 Firma Egmont Instruments ma w swojej ofercie nową przemysłową kar tę pomiarową APCI-3701 niemieckiej firmy Addi-Data, pracującą na magistrali PCI. Karta APCI-3701 służy do odczytu z indukcyjnych czujników przemieszczeń w układzie LVDT lub H-B (half bridge). Dostosowana jest przede wszystkim do czujników firm Solar tron, Tesa, Marposs, Schlumberger, Peter & Hirt, Mahr, RDP, Schaevitz, SMPR Contrôle, Horst Knäbel (wersja APCI-3701-K). Czujniki LVDT lub H-B innych producentów mogą
zostać dowolnie zaimplementowane do APCI-3701 na życzenie. Karta ma 16 lub 8 wejść analogowych o rozdzielczości 16 bitów, próbkuje z częstotliwością 50 kHz. Zakres napięć wejściowych wynosi ±10 V, karta ma wzmacniacz programowalny 1x, 2x, 4x, 8x, 16x, 32x, 64x, 128x oraz bufor FIFO. Dodatkowo ma 8 wejść i 8 wyjść cyfrowych 24 V z izolacją galwaniczną 1000 V. APCI-3701 opracowana jest w nowej technologii, aby zagwarantować niezawodność nawet w trudnych warunkach. Oprogramowanie
kalibracyjne dostępne z kartą pozwala na swobodną konfigurację poszczególnych kanałów. Więcej informacji: Egmont Instruments, tel. (22) 850-62-05, 850-64-30, fax: (22) 654-02-48, www.egmont.com.pl, e-mail:
[email protected]
Nowa funkcja programatorów Uprog Programatory Uprog, produkowane przez firmę RK-System, wyposażono w nową, unikalną cechę pozwalającą na używanie adapterów dowolnych producentów dla układów w obudowach innych niż DIP. Za pomocą narzędzia Adapter Creator możliwa jest definicja budowy adaptera lub zeskanowanie jej bezpośrednio z adaptera. Dzięki temu narzędziu użytkownik może bardzo w prosty sposób rozpoznać budowę zastosowa-
nego adaptera bez konieczności używania miernika lub bez analizy schematu oraz zapamiętać opis w celu późniejszego użycia w procesie programowania. W ofercie firmy RK-System znajduje się liczna rodzina
programatorów Uprog łączących często funkcje symulatorów pamięci i testerów układów logicznych. Wiele z nich może współpracować z adapterami dla układów w obudowach SOIC, PLCC, TSOP. Więcej informacji: RK-SYSTEM, 05-825 Grodzisk Mazowiecki, ul.Chełmońskiego 30, tel.: (22) 755-69-83, 724-30-39, fax: (22) 724-30-37, sprzedaz@rk-system. com.pl, www.rk-system.com.pl.
są obecnie dostępne w nowej wersji (oznaczonej symbolem ZL11PRG-M), która e m u l uj e programator mikrokontrolerów AVR – STK200. Nowy programator umożliwia programowanie układów w jednym z czterech trybów: - ByteBlaster MV (układy PLD firmy Altera), - DLC5 Programmer/Parallel Cable III (układy PLD firmy Altera), - STK200 (mikrokontrolery AVR firmy Atmel), - AT89ISP (mikrokontrolery 89S
firmy Atmel i układy PLD tej firmy). W skład zestawu wchodzą: - programator ZL11PRG-M, - kabel połączeniowy o długości 1 metra, - płyta CD z bezpłatnym oprogramowaniem sterującym. Szczegółowe informacje: http://www.btc.pl/index.php?id=zl11prg_m. Kontakt: Wydawnictwo BTC, ul. Inowłodzka 5, 03-237 Warszawa, www.btc.pl.
Uniwersalne programatory ISP Cieszące się dużą popularnością uniwersalne programatory ISP ZL11PRG, za pomocą któr ych można programować układy PLD i mikrokontrolery,
Elektronika Praktyczna 11/2004
INFO
ŚWIAT
INFO
ŚWIAT
Przyszłość elektroniki
Firma Gartner Inc. zajmująca się badaniami r ynkowymi ogłosiła ciekawe przewidywania dotyczące producentów elementów i układów półprzewodnikowych. Zidentyfikowała mianowicie 5 megatrendów jakie będą realizowane w najbliższych latach. Są to: - zwiększenie stopnia integracji, - zwiększenie wielkości i skali produkcji, - zmiana strategicznego odbiorcy z rynku biznesowego na konsumpcyjny, - zwiększenie roli dostawców usług, - pojawienie się nowych i zanik istniejących technologii. Niektóre z tych tendencji wyraźnie widać i nie trzeba przeprowadzać kosztownych badań rynkowych, żeby dojść do takich wniosków. Interesujące są jednak przewidywania ilościowe na podstawie przeprowadzonych badań. W połowie lat osiemdziesiątych ubiegłego wieku liczba dostawców półprzewodników wynosiła ok. 120. W roku 2003 ta liczba wzrosła ponad czterokrotnie i osiągnęła wartość 550. Tymczasem przewidywania na następne 10 lat mówią o dużej konsolidacji w przemyśle półprzewodnikowym i zniknięciu z rynku ok. 40% dzisiejszych dostawców. Będzie to spowodowane głównie rosnącymi kosztami i złożonością nowych projektów, a także zwiększeniem ich funkcjonalności i elastyczności. Nie wszyscy aktualni producenci będą w stanie dotrzymać kroku postępowi technicznemu i technologicznemu. Jeśli chodzi o zmianę strategicznego rynku odbiorców, to przewiduje się, że do roku 2003 ponad 50 % układów scalonych będzie trafiać do urządzeń przeznaczonych na rynek konsumpcyjny. Przy czym, według ekspertów, jest to rynek trudno przewidywalny. Duże fabryki półprzewodników okażą się w pr zyszłości zbyt kosztowne dla wielu aktualnych producentów. W celu utrzymania się na rynku firmy będą musiały się przestawić na produkcję ogromnych partii standardowych układów scalonych wykonywanych według standardowych procesów. Przystosowanie tych standardowych układów do konkretnych potrzeb końcowych odbiorców będzie się odbywać już po procesie produkcyjnym. Tyle w skrócie mówią eksperci z Gar tner. A jak będzie naprawdę – aby się przekonać będziemy musieli poczekać ok. 10 lat.
118
INFO
KRAJ
Nowy układ dźwiękowy ISD firmy Winbond Firma Winbond Electronics Corporation wprowadziła na rynek kolejną serię układów ISD1600 ChipCorder do bezpośredniego zapisu i odtwarzania dźwięku, wyposażonych w równoległy interfejs sterujący. Wykonane w technologii nieulotnego zapisu wielopoziomowego, są układami ISD przeznaczonymi do pracy w szerokim zakresie napięcia zasilania (2,4...5,5 V), co czyni je idealnym rozwiązaniem w aplikacjach dźwiękowych zasilanych z 2 lub 3 baterii. W ramach serii są dostępne układy ISD1610/1612/1616/ 1620, w których można osiągnąć, w zależności od wersji, czas zapisu/odtwarzania pojedynczego komunikatu
dźwiękowego w zakresie 6,6...40 s. Zastosowano w nich zmienną częstotliwość próbkowania w zakresie 4...12 kHz, wybieraną przez użytkownika, co umożliwia uzyskanie różnych efektów dźwiękowych. Seria ISD1600 podobnie jak poprzednie układy z interfejsem równoległym posiada w pełni zintegrowany system funkcji, wewnętrzny oscylator i pamięć dźwięku. Umożliwia proste sterowanie przyciskowe, sygnalizację stanu za pomocą diod LED i ma wbudowany przedwzmacniacz mikrofonowy z ARW, wzmacniacz audio z wyjściem PWM do bezpośredniego wysterowania głośnika oraz
dodatkowe wyjście audio do wysterowania zewnętrznego wzmacniacza mocy. Układy te są przeznaczone do zastosowań na rynku elektroniki przemysłowej, konsumenckiej i w przemyśle samochodowym. Przy swoim niewielkim poborze mocy i automatycznym trybie czuwania stanowią doskonały produkt dla projektantów szukających niedrogiego rozwiązania dźwiękowego do przenośnych urządzeń elektronicznych, np. pocztowych kart dźwiękowych. Układy są dostępne w obudowach PDIP, SOIC i w postaci struktury. Więcej informacji: PDW Marthel, tel.: (71) 311-07-11, www.marthel.pl.
pracuje z każdą wersją systemu Windows i posiada szereg opcji ułatwiających analizę mier zonego sygnału. Program steruje wszystkimi funkcjami przyrządu. Częstotliwość próbkowania urządzenia może być regulowana w zakresie od 1 kHz do 100 MHz (16 podzakresów), a zakres pomiarowy - od 20 mV/dz do 5 V/ dz (5 działek). Użytkownik ma do dyspozycji różne tryby wyzwalania, przy czym podział bufora na pre- i posttrigger może być regulowany płynnie. Rejestrowany sy-
gnał może być zapisany na dysku w postaci pliku w celu dalszej analizy lub wykorzystany np. jako sygnał odniesienia. Oprócz funkcji oscyloskopu PenScopeDAQ może pełnić również rolę analizatora widma (FFT), woltomierza, rejestratora danych czy też np. jednokanałowego analizatora stanów z regulowanym poziomem jedynki logicznej. Więcej informacji: RK-System, 05-825 Grodzisk Mazowiecki, ul. Chełmońskiego 30, tel.: (22) 792-05-18, www.rk-system.com.pl.
PenScopeDAQ Firma RK-System wprowadziła do swojej oferty nowy przyrząd pomiarowy - PenScopeDAQ. Jest to rodzaj sondy zakończonej końcówką pomiarową, która jest podłączana do komputera poprzez interfejs USB (1.0/2.0). Zastosowanie tego interfejsu zapewnia szybki transfer danych i niweluje konieczność stosowania zasilacza zewnętrznego (PenScopeDAQ jest zasilany bezpośrednio z portu USB). Mimo znacznej miniaturyzacji PenScopeDAQ posiada dobre parametry techniczne. Urządzenie opar te jest o przetwornik 8-bitowy. Maksymalna częstotliwość próbkowania wynosząca 100 MHz, łącznie z odpowiednio zaprojektowanym torem analogowym, umożliwia analizę sygnałów o częstotliwościach do 20 MHz i amplitudzie +/-20 V. Bufor urządzenia wynosi 128 kB i posiada możliwość regulacji, co ułatwia obserwację sygnałów przy niższych częstotliwościach próbkowania. Oprogramowanie sterujące PenScopeDAQ współ-
1 Mb we FRAM-ie W listopadzie 2004 roku na rynek trafią pamięci FRAM o pojemności 1 Mb z interfejsem równoległym. Jako pierwsze będą dostępne dwa układy typu FM20L08 o czasach dostępu 55 i 60 ns i całkowitych czasach cyklu 95 lub 140 ns. Pamięć FRAM jest zorganizowana w matrycy 256 k x 8. Obydwie dostępne pamięci są przystosowane do zasilania napięciem o war tości z przedziału 3...3,6 V (lub 3,13...3,6 V w przypad-
ku wersji szybszej). Specjalne wyjście, w które wyposażono opisywane układy, sygnalizuje blokadę pracy pamięci z powodu zbyt niskiej war tości napięcia zasilania. Zakres dopuszczalnych temperatur pracy wynosi
-40...+85oC w przypadku układów wolniejszych i 0...+85oC w przypadku układów szybszych. Obydwa układy są oferowane w jednej wersji obudowy - TSOP32. Dodatkowe informacje: CIT Inter national PL, www.citworld.com, 53-015 Wrocław, Al. Karkonoska 8, tel.: (71) 79-30-500, fax: (71) 79-30-501.
Elektronika Praktyczna 11/2004
ROK UNIJNY czyli
BEZPŁATNA PRENUMERATA PRÓBNA W Unii Europejskiej 80-90% nakładu pism podobnych do EP rozprowadzanych jest w prenumeracie. Tylko raz na 1000 lat Polska przyłącza się do Chcemy jak najszybciej osiągnąć ten standard. Oto dlaczego oferujemy półroczną bezpłatną prenumeratę Europy. Ostatnio dokonał tego podobno Bolesław próbną tym Czytelnikom, którzy jeszcze nie próbowali prenumeraty EP. Chrobry w roku 1000. Prenumerata ta będzie trwać od grudnia 2004 r. do maja 2005 r. Warunkiem jej otrzymania jest wykupienie prenumeraty na następnych 6 miesięcy roku 2005 (od numeru 6/2005 do 11/2005). Jeśli jednak przed końcem bezpłatnej prenumeraty próbnej zrezygnujesz z jej kontynuowania, zwrócimy Ci całą wpłaconą kwotę. Prenumeratę na tych wyjątkowych zasadach możesz zamówić na stronie www.ep.com.pl/ue lub wypełnij i prześlij do nas formularz zamieszczony na odwrocie.
Zapraszamy też do prenumeraty na naszych zwykłych, również bardzo korzystnych warunkach:
8 numerów GRATIS
DWULETNIA: Zamawiając 24-miesięczną prenumeratę, otrzymasz Po prostu płacisz za 16 kolejnych numerów, a dostaniesz ich 24. Kosztuje Cię to więc 16 x 15,50 zł = 248 zł – oszczędzasz 124 zł (EPoL) lub 16 x 9,50 zł = 152 zł – oszczędzasz 76 zł (EP). ROCZNA: Zamawiając 12-miesięczną prenumeratę, płacisz za 11 kolejnych numerów (11 x 15,50 zł = 170,50 zł) – oszczędzasz 15,50 (EPoL) lub 11 x 9,50 zł = 104,50 zł – oszczędzasz 9,50 zł (EP). PÓŁROCZNA: Za 6-miesięczną prenumeratę płacisz 6 x 15,50 zł = 93,00 zł (EPoL) lub 6 x 9,50 zł = 57,00 zł (EP).
UWAGA! Super-przywilej dla Prenumeratorów
Specjalny serwis internetowy na stronie www.ep.com.pl/logowanie jest dostępny bezpłatnie TYLKO DLA PRENUMERATORÓW! Dla pozostałych Czytelników – za mikropłatnościami SMS-ami (www.ep.com.pl/archiwum) A ponadto tylko Prenumeratorzy:
mogą otrzymywać co miesiąc bezpłatny numer archiwalny EP/EPoL! (zamawiając dowolne z dostępnych jeszcze wydań sprzed stycznia 2004 r. - otrzymasz je wraz z prenumeratą) mogą zakupić wydanie ELEKTRONIKI PLUS „BASCOM” z rabatem 50%, czyli za 17,50 zł zostają członkami Klubu AVT-elektronika i otrzymują wiele przywilejów oraz rabatów! (szczegóły na następnej stronie)
Prenumeratę zamawiamy:
poprzez dokonanie wpłaty (wzór blankietu na odwrocie) albo przelewu
lub poprzez formularz na stronie www.ep.com.pl lub za pomocą formularza zamieszczonego na stronie 122, można go przesłać faksem* lub pocztą* lub kontaktując się w dowolny sposób bezpośrednio z naszym Działem Prenumeraty*
J E I W J Ł A T .com.pl
ww.ep w NwA ę n o r t s ejść na i zapłacić Ą T R A K
Prenumerata może być opłacona albo z góry, albo drogą pobrania pocztowego, czyli u listonosza (lub na poczcie) przy odbiorze pierwszej przesyłki. Pełną informację, również na temat NUMERÓW ARCHIWALNYCH i PRENUMERATY ZAGRANICZNEJ, znajdziesz w Internecie: www.ep.com.pl * Dział Prenumeraty Wydawnictwa AVT, ul. Burleska 9, 01-939 Warszawa, tel.: (22) 834-74-75, 568-99-22, faks: (22) 568-99-00, e-mail:
[email protected]
Zgłoszenia firm przyjmujemy telefonicznie lub faksem pod numerem telefonu: (22) 568 99 41 lub e-mailem:
[email protected]. Najświeższe informacje o Klubie AVT-e na stronach: www.klub.avt.com.pl.
Rabaty Partnerów Klubu AVT-elektronika • Rabaty Partnerów Klubu AVT-elektronika • Rabaty Partnerów Klubu AVT-elektronika • Rabaty Partnerów Klubu AVT-elektronika • Rabaty Partner
ABEL&PRO-FIT
Uprawnienia członka „Klubu AVT-e” nabywa każdy prenumerator jednego (lub kilku) z czterech pism AVT, poświęconych elektronice:
92-516 Łódź, ul. Puszkina 80 tel. (42) 649 28 28, fax (42) 677 04 74 www.pro-fit.com.pl,
[email protected] – Radiotelefony profesjonalne - rabat do 10% – Radiotelefony bez zezwoleń - rabat do 12% – Urządzenia techniki antypodsłuchowej - rabat do 7% – Mierniki częstotliwości, lokalizatory, detektory - rabat do 7%, – Anteny i akcesoria antenowe - rabat do 10% – Reflektometry, sztuczne obciążenia rabat do 8% – Rejestratory rozmów telefonicznych - rabat do 11% – Telefoniczne zmieniacze głosu - rabat do 12%.
AJM Partner Conrad Electronic
Członek „Klubu AVT-elektronika“ korzysta z wielu przywilejów, dzięki którym każdą złotówkę włożoną w prenumeratę może odzyskać z nawiązką. Wiele atrakcyjnych przywilejów udziela Członkom Klubu Wydawnictwo AVT, a poza tym „Klub AVT-e” rozwija współpracę z firmami partnerskimi, które udzielają specjalnych rabatów wyłącznie Członkom Klubu.
Przywileje Członka Klubu AVT-e 1. Co miesiąc możesz bezpłatnie otrzymać jeden numer archiwalny*) prenumerowanego miesięcznika. Prześlemy go razem z prenumeratą. 2. Większą liczbę egzemplarzy archiwalnych*) wszystkich czterech czasopism (EdW, EP, EL, ŚR) możesz kupić w symbolicznej cenie 1 zł/egz. 3. Możesz korzystać z następujących rabatów: • 30% na płytki (kity A) w limicie do 40 zł co miesiąc. Powyżej tego limitu rabat wynosi 10%. • 10% na kity AVT/TSM (zestawy B, C). • 10% na kity Vellemana. • 10% na kity SMART-a • 10% na zestawy TOK • 10% na książki oferowane w „Księgarni Wysyłkowej AVT” • 5% na wszelkie inne towary zamawiane w wysyłkowym sklepie internetowym www.sklep.avt.com.pl Członek „Klubu AVT-e” może co miesiąc otrzymywać wysyłkowo płytki drukowane (o wartości do 40,00 zł), nie ponosząc kosztów wysyłki; oszczędza zatem w ten sposób 14,80 zł miesięcznie. Zamawiane płytki są dostarczane wraz z przesyłką prenumeraty. Jeżeli jesteś już prenumeratorem EP (EPoL) korzystaj z tych przywilejów, a kwotę włożoną w prenumeratę zwrócisz sobie wielokrotnie.
Zastanów się też nad tym równaniem: ...taki wynik można uzyskać tylko w AVT, u Wydawcy trzech miesięczników uzupełniających się tematycznie. Są to: Prenumerując dwa z tych trzech tytułów otrzymujesz trzeci za darmo! Jeżeli jesteś już prenumeratorem EP/EPoL lub EdW wykup prenumeratę jednego z dwóch pozostałych miesięczników i wpisz na przekazie hasło „1+1=3”. Od tego momentu będziesz otrzymywać w prenumeracie wszystkie 3 tytuły, w tym jeden za darmo. Jeśli mimo wszystko nie jesteś prenumeratorem EP/EPoL, ale kupujesz nasze pismo regularnie, to też mamy dla Ciebie bardzo atrakcyjną propozycję. Jest to system specjalnych bonifikat dla Czytelników kupujących systematycznie EP/EPoL. Czytelnik posiadający trzy kolejne numery EP/EPoL (z ostatnim włącznie), co udokumentuje kuponami rabatowymi drukowanymi na str. 5, będzie mógł co miesiąc zrealizować w AVT zamówienie ze specjalnymi rabatami tj. rabat 10 zł na zakup jednej wybranej płyty z serii CD-EP; rabat 10% na zakup dowolnej ilości książek w Księgarni Wysyłkowej AVT; rabat 10% na zakup płytek i kitów AVT/TSM (zestawy A, B, C) oraz kitów Vellemana, a także zestawów TOK. *)
sprzed stycznia 2004
00-550 Warszawa, Pl. Konstytucji 6 tel.: (22) 627 80 80, fax: (22) 627 41 60
[email protected], www.conrad.pl 5% rabatu na cały katalog. Inne rabaty: Zestawy elektroniczne 10% Elementy elektroniczne 10% Energia i środowisko 8% Idea & Design 9% Światło i dźwięk 7% Technika pomiarowa 6% Świat radio 6%
ALARM- TECH
31-834 Kraków, Os. Jagiellońskie 19 tel. (12) 641 66 69, 0601 45 41 57, fax (12) 641 62 72 Telewizja przemysłowa - 5%. Systemy alarmowe - 7%. Domofony - 6%.
ALFINE
61-680 Poznań, ul. Gronowa 22 tel. (61) 820 58 11 Rabat 5% przy zakupie podzespołów w firmie
ARCOMP
93-479 Łódź, ul. Św. Franciszka 77a tel. 0607 7550 438, (42) 68 00 122 www.arcomp.pl,
[email protected] Rabat 1% na sprzęt komputerowy, 3% na płyty CD oraz 5% na opakowania na CD (etui, segregatory, koperty)
PPHU „ARMAND”
05-806 Komorów, ul. Ryszarda 44 tel.: (22) 758 73 48, www.armand.pl Rabat 5% na wykrywacze metali 6 typów od 499 zł netto
ARTON
59-400 Jawor, ul. Moniuszki 11 tel./fax: (76) 870 25 55, 0603 54 44 85, www.artonaudio.com.pl Sprzęt nagłaśniający. Rabat 5%-25% na wybrane towary wyłącznie dla członków Klubu.
AXES SYSTEM
80-284 Gdańsk, ul. Zamenhofa 15, www.axes.com.pl Rabat 5% na radiopowiadomienia Millenium FX do samodzielnego montażu, radiotelefony LPD, PMR + akcesoria.
Rabaty Partnerów Klubu AVT-e Barel
05-800 Pruszków, ul. Armii Krajowej 46, tel. (22) 758 11 66 www.barel.waw.pl,
[email protected] Rabat 5% na regulatory temperatury, termometry, regulatory mocy. Przy zakupie przez Internet +5% rabatu dla Klubowiczów.
F.P.H.U. BASTAR
41-400 Mysłowice, ul. Katowicka 74 tel.: (32) 2222 504, fax: (32) 7591 651 www.bastar.alpha.pl,
[email protected] Rabat 10% na naklejki wypukłe oraz stickery - plomby gwarancyjne
CYFRONIKA Zakład Elektroniki
30-385 Kraków, ul. Sąsiedzka 43 tel./fax: (12) 266 54 99, www.cyfronika.com.pl Rabat 10% przy zakupie części elektronicznych przez Internet.
Box Electronics
80-881 Sopot, ul. Cieszyńskiego 4 tel./fax: (58) 550 66 46, 551 90 05 www.box. com.pl Rabat 5% + dostawa gratis na wszystkie produkty - aparatura nagłaśniająca
BURO s.c.
05-090 Raszyn, ul. Wysoka 24b tel. (22) 715 64 92 tel./fax: (22) 720 38 09 www.buro.pl,
[email protected] Rabaty przy zakupie 5 szt. - anteny do telwizji przemysłowej 10% - pozostałe anteny komunikacyjne 5%
CEAD
ul. Wołyńska 36, 15-206 Białystok 24, skr. poczt. 227 tel. (85) 743 31 69, tel./fax 743 31 51 www.cead.a3.pl,
[email protected] Rabat: 5% - radiotelefony KENWOOD, YAESU (tylko pasma amatorskie - obowiązuje licencja) 7% - anteny i akcesoria (tylko pasma amatorskie) 9% - zasilacze i akumulatory do wszystkich typów radiotelefonów amatorskich. 5% - radiotelefony CB Midland-Alan, UNIDEN (z homologacją i certyfikatem) 7 % - anteny i akcesoria (tylko pasmo CB) 10% - na naprawy pogwarancyjne sprzętów amatorskich i CB-radio
CET
43-200 Pszczyna, ul. Zielona 27 tel.: (32) 449 15 00, fax: (32) 449 15 02
[email protected], www.cet.pl Rabat 5% na wszystkie kable z grup: - przewody symetryczne słaboprądowe w.cz., - przewody koncentryczne, - przewody mikrofonowe; - przewody telekomunikacyjne stacyjne i montażowe, - przewody do odbiorników ruchomych, - przewody przyłączeniowe z wtyczką. dla Klubowiczów i zakupie przez internet.
CONTRANS TI
51-180 Wrocław, ul. Sułowska 43 tel.: (71) 325 26 21 wew. 31, fax (71) 325 44 39 www.contrans.com.pl Rabat 5% na starter kity do procesorów MSP430 (firmy Texas Instruments). Dodatkowo rabat 2% na pamięć FRAM.
01-969 Warszawa, ul. Pułkowa 58 tel.: (22) 569 53 00, fax (22) 569 53 10 www.lcel.com.pl,
[email protected] Rabat 5% na wszystkie wyroby.
R-MIK
P.P.H.U. R-mik S. Skrzyński 87-500 Rypin, ul. Mławska 16/6
filia: 04-377 Warszawa ul. Dwernickiego 19/65 tel. (22) 870-21-73, fax (22) 871-51-46 kom. 602-807-873 e-mail:
[email protected], www.r-mik.rax.pl
ESCORT
70-656 Szczecin, ul. Energetyków 9 tel.: (91) 462 43 79, 462 44 08, fax: (91) 462 43 53 www.escort.com.pl Radiotelefony profesjonalne - rabat od 10 do 15%, radiostacje amatorskie - 10%, anteny i akcesoria - 5-10%, serwis pogwarancyjny 10%, elektronika morska i jachtowa 5-10%.
PH BIALL
80-180 Gdańsk Otomin, ul. Słoneczna 43 tel./fax (58) 322 11 91, 92, 93 Rabat 5% na aparaty pomiarowe, narzędzia, technikę lutowniczą z naszej oferty.
LC Elektronik
Excel
70-467 Szczecin, ul. Monte Cassino 24 tel.: (91) 464 88 90, fax: (91) 423 48 28 www.garmin.pl, www.zakupyonline.pl,
[email protected] Rabat 7% na odbiorniki i podzespoły GPS.
Evatronix
43-300 Bielsko Biała, ul. 1 Maja 8, tel./fax: (33) 812 25 96 www.evatronix.com.pl,
[email protected] Rabat 5% na broszurę „Poznajemy Protel 99 SE”. Rabat 5% na program Protel oraz inne programy firmy Altium: Tasking, Peak FPGA, Circuit Maker i CAMtasic! Rabat 3% na oprogramowanie firmy Autodesk zakupione razem z jednym z programów wymienionych wyżej. Firma Evatronix gwarantuje 5% lub 3% zniżki niezależnie od aktualnych promocji i upustów.
Rabat do 15% na sprzedawane urządzenia
Maszczyk
05-071 Sulejówek, ul. Mickiewicza 10 tel./fax: (22) 783 45 20, 783 90 85, www.maszczyk.pl,
[email protected] Rabat 5% na wszystkie wyroby - obudowy do urządzeń elektronicznych
M-M Elektronik
M-M Elektronik
58-200 Dzierżoniów, ul. Świdnicka 37B tel./fax: (74) 831 14 67 Rabat 5% na wszystkie wyroby „DIORA” i nie tylko oraz na usługi
NEKMA Alarm System
91-408 Łódź, ul. Pomorska 38 tel. (42) 632 37 01, 630 28 78, fax 630 28 79 www.systemyalarmowe.pl Przy zakupach w siedzibie firmy rabaty: systemy alarmowe - 5% , telewizja przemysłowa - 6%, wideodomofony - 7%, kontrola dostępu - 4%, akumulatory, kable - 5%.
INFOELEKTRONIKA INFOELEKTRONIKA
65-018 Zielona Góra, ul. Jedności 18 tel. (68) 454-95-59, fax (68) 452-97-91 www.infoelektronika.com.pl, biuro@infoelektronika. com.pl - Rabat 5% na sprzęt pomiarowy - Rabat 5% na sprzęt lutowniczy - Rabat 10% na mierniki UNI-T - Rabat 5% na akumulatory Ni-Cd, Ni-MH, żelowe - Rabat 10% na części elektroniczne - Rabat 10% na kable antenowe, głośnikowe i inne
LABIMED Electronics
02-930 Warszawa, ul. J. Sobieskiego 22 tel/fax. (22) 858 29 14, tel. (22) 858 20 89 www.labimed.com.pl Rabat 6% na wszystkie multimetry firmy MAXCOM, ESCORT, HIOKI
moduły do central telefonicznych.
SAMAL Warszawa, ul. Ratuszowa 11 p. 110 tel./fax: (22) 618 86 97 tel. 619 22 41 w. 158 www.samal.pl Telewizja przemysłowa. 5% rabatu według cennika w Internecie.
Semicon 01-912 Warszawa, ul. Wolumen 53 tel./fax: (22) 615 83 40-5, 615 73 75 www.semicon.com.pl,
[email protected] Części elektroniczne: rabat na diody laserowe 10%, moduły Peltiera - 7%, jumpery - 20%,
NORD Elektronik s.c.
76-270 Ustka, ul. Kopernika 22 tel./fax: (59) 814 61 54 www.nord-elektronik.com.pl,
[email protected] Rabat 5%-25% na wybrane zestawy elektro niczne do samodzielnego mon tażu (50 pozycji).
listwy Pinheadery - 10%
SMARTEL ul.Bystra 30, 03-650 Warszawa tel: (22) 678 92 91, fax: (22) 678 91 71
[email protected] http://www.smartel.rad.pl
Feryster
68-120 Iłowa, ul. Traugutta 4 tel.:/fax: (68) 360 00 76 www.feryster.com.pl,
[email protected] Rabat 10% na wyroby katalogowe - podzespoły elektroniczne
- programatory, symulatory, dekodery clip,
OMRON Electronics Sp. z o.o.
02-790 Warszawa, ul. M. Sengera “Cichego” 1, tel. (22) 645 78 60, fax 645 78 63, www.omron. com.pl Rabat 10% na mikrosterowniki ZEN + akcesoria.
15% rabat na pakiety akumulatorowe i akcesoria audio do radiotelefonów Yaesu.
SPID Elektronik & SATTRACK 96-300 ¯yrardów, ul. Z. Krasińskiego 16 tel (46) 855 07 36, 0-600 442 765
PAGE COMM
ul. Moniuszki 26A, 41-902 Bytom, tel. (32) 787 26 06, 787 26 07, 0-502 457 049 fax. (32) 787 26 08,
[email protected], www.pagecomm.com.pl Rabat 5% na transceivery + akcesoria
Firma Piekarz s.c.
Urszula Piekarz, Zdzisław Piekarz Hurtownia części elektronicznych Warszawski Wolumen - pawilon 66 i Warszawska Giełda Elektroniczna - pawilon 15 10% rabatu przez 1 miesiąc na nowości z firmy HIGLY ELECTRIC. 50% rabatu na katalog „Audio Video” wydawnictwa HELION.
tel (46) 855 90 24, 0-604 411 340 e-mail:
[email protected], www.spid.alpha.pl Rabat 5% na rotor RAU ze sterowaniem.
TATAREK Zakład Elektroniczny 50-559 Wrocław, ul. Świeradowska 75 tel. (71) 367-21-67, fax: (71) 373-14-58 www.tatarek.com.pl Rabat 5% na regulatory temperatury kotła miałowego oraz 5% na zasilacze przeznaczone do kamer przemysłowych.
TELMATIK LARO s.c.
65-018 Zielona Góra, ul. Jedności 19/1 tel./fax (68) 32 44 984 www.laro.com.pl,
[email protected] Rabat 10% na zakupy w sklepie internetowym
PRO OFFICE
Warszawa, Al. Niepodległości/Trasa Łazienkowska - Warszawska Giełda Elektroniczna, paw. 37 Materiały eksploatacyjne do drukarek. Rabat 20% na materiały regenerowane, 15% na regenerację pojemników atramentowych i zamienniki do drukarek, 5% na materiały oryginalne.
81-577 Gdynia, ul. Księżycowa 20 tel./fax (58) 624 93 02, e-mail:
[email protected], www.telmatik.pl 5% rabatu na sterowniki programowalne i moduły foniczne, 15% rabatu na proste alarmy obiektowe, liczone od cen podawanych na stronie internetowej.
Każdą prenumeratę możesz opłacić wypełniając w banku lub na poczcie druk przekazu według poniższego wzoru:
0 4
ROK UNIJNY bezpłatna
prenumerata
próbna
Z A M Ó W I E N I E
prosimy przesłać przed końcem listopada br. pocztą na adres AVT-Korporacja Sp. z o.o., 01-939 Warszawa, ul. Burleska 9, faksem pod numer /022/ 676 89 86 lub 568 99 00 Zamawiam prenumeratę miesięcznika: Elektronika Praktyczna Elektronika Praktyczna on/off Line do listopada przyszłego roku, w tym od grudnia 2004 r. do maja 2005 r. bezpłatnie, a nastepnie 6 numerów przyszłorocznych (6/05 –: 11/05) w cenie 57,00 zł – za EP lub 93 zł za EPoL z możliwością rezygnacji przed 15.05.2005 r. z płatnej części prenumeraty i zwrotu całej wpłaconej kwoty: 57,00 zł za EP lub 93 zł za EPoL Wybieram następującą formę płatności: prenumeratę opłacę przelewem bankowym, przekazem pocztowym na konto: Bank Millennium S.A. 02 1160 2202 0000 0000 3846 5342 lub kartą płatniczą w Internecie (na stronie www.ep.com.pl/ue) prenumeratę opłacę za pobraniem pocztowym (przy odbiorze pierwszego numeru EP/EPoL) prenumerata już została przeze mnie opłacona
imię i nazwisko ewentualnie: nazwa firmy
NIP firmy
ulica lub miejscowość, numer domu kod pocztowy data
poczta podpis
Wyrażam zgodę na przetwarzanie moich danych osobowych w bazie prenumeratorów Wydawnictwa AVT-Korporacja Sp. z o.o. Dane są chronione zgodnie z ustawą o ochronie danych osobowych (Dz. U. Nr 133 poz. 883). Oświadczam, że wiem o moim prawie do wglądu i poprawiania moich danych osobowych.
czytelny podpis
B I B L I O T E K A
E P
B I B L I O T E K A
E P
W „Bibliotece EP” prezentujemy książki dotyczące zagadnień związanych z różnymi dziedzinami techniki, jednak zawsze przydatne w pracy elektronika lub pomocne w uprawianiu elektronicznego hobby. Nasza opinia jest oczywiście subiektywna, ale wynika z wieloletniego doświadczenia zawodowego i chyba jest zgodna z oczekiwaniami tych, którzy chcą z książek korzystać, a nie przyozdabiać nimi półki. Aby nie marnować miejsca w EP, nie będziemy publikować recenzji książek ocenianych na jedną lub dwie “lutownice”. Przyjęliśmy szeroką skalę ocen, aby ułatwić Czytelnikom orientację w potencjalnej przydatności książki. Publikowane w EP recenzje książek można znaleźć w Internecie pod adresem biblioteka.ep.com.pl. Uwaga! Większość prezentowanych książek można zamówić w Dziale Handlowym AVT (patrz str. 35). Chcemy w ten sposób udostępnić je Czytelnikom EP.
Marcin Wiązania, „Programowanie mikrokontrolerów AVR w języku BASCOM”, BTC 2004
Jest to książka, której pojawienie się na rynku zauważy duże grono czytelników EP i EdW – miesięczników, które wypromowały Bascoma w Polsce. Z tym większą radością powitałem umieszczoną na początku książki notę wspomnieniową o naszym współpracowniku – Zbyszku Raabe, który był promotorem Bascoma oraz autorem wielu projektów i narzędzi wspomagających realizację projektów z zastosowaniem Bascoma. Oczywiście, dla czytelników książki największe znaczenie ma jej treść, a tej trudno coś zarzucić. Autor na wielu przykładach pokazał możliwości języka Bascom od strony praktycznej, ilustrując je interesującymi wielu użytkowników zagadnieniami, jak na przykład: współpraca mikrokontrolerów AVR z wyświetlaczami LED, LCD i VFD, odmierzanie czasu za pomocą timerów mikrokontrolerów ATmega, zastosowanie i obsługa PWM, obsługa klawiatur i pojedynczych przycisków, wymiana danych przez interfejsy SPI, I2C i 1Wire, odbiór sygnałów zdalnego sterowania RC5, obsługa interfejsu RS232... Specjalnie na potrzeby książki autor opracował łatwy do wykonania zestaw uruchomieniowy, za pomocą którego można testować przykłady zarówno opisane w książce, jak i samodzielnie opracowane. Sporą część książki zajmuje opis samego języka oraz narzędzi wbudowanych w pakiet Bascom. Dokładnie zostały opisane także pomocnicze programy narzę-
Elektronika Praktyczna 11/2004
dziowe Bascoma, budowa programatorów ISP umożliwiających programowanie mikrokontrolerów AVR (w tym zastosowanego w zestawie startowym ATmega 8) w systemie, a także peryferia i sposoby konfiguracji niektórych bloków peryferyjnych mikrokontrolerów AVR. Treść książki wzbogacają dodatki m.in. opis kodów błędów, tablica kodów ASCII, dokumentacja zestawu startowego opisanego w książce) oraz skorowidz. Wydawca zadbał także o przybliżenie polskim czytelnikom autora Bascoma – Marka Alberta. Specjalnie na potrzeby książki opisał on historię jego powstania, dzięki czemu czytelnicy mogą – jako jedni z niewielu na świecie – poznać ją „z pierwszej ręki”. Książka jest starannie wydana, ma twardą oprawę i szyty grzbiet, jest także dość „gruba” – 350 stron. Dla bascomfilów prawdziwa gratka! Andrzej Gawryluk
123
B I B L I O T E K A
E P
W. Machczyński, „Wprowadzenie do kompatybilności elektromagnetycznej”, Wydawnictwo Politechniki Poznańskiej, Poznań 2004.
Prawdopodobnie dla większości użytkowników komputerów słowo kompatybilność ma znaczenie ograniczone w stosunku do swej pełnej definicji i sprowadza się do tego czy nowy podzespół może być podłączony systemu (jest kompatybilny) lub nie (nie jest kompatybilny). Kompatybilność jest tu rozumiana jako zgodność urządzeń technicznych pod względem mechanicznym i elektrycznym, umożliwiająca ich bezpośrednią współpracę, albo zastąpienie jednego podzespołu innym, np. kart rozszerzeń komputera PC różnych producentów (http://www.ssi.civ.pl/data/kompatybilnosc.php). W podobny sposób
124
mówi się o zgodności oprogramowania. Jednakże, znacznie już mniejsze grono specjalistów używa sformułowania „kompatybilność elektromagnetyczna” i tutaj „kompatybilność” oznacza zdolność urządzenia lub systemu do zadawalającego działania w jego środowisku elektromagnetycznym, tj. tolerowaną przez środowisko emisyjnością jako źródło oraz odpowiednią odpornością jako odbiornik (za autorem recenzowanej książki). W słowniku języka polskiego PWN znajdziemy, że kompatybilny to mogący działać łącznie z innym czynnikiem lub elementem w sposób nie powodujący zakłóceń; wzajemnie się uzupełniający; zgodny z czymś. Ten – być może dla niektórych przydługi wstęp – zamieściłem ponieważ problematyka kompatybilności elektromagnetycznej nie jest specjalnie popularna w polskiej literaturze książkowej, a staje się niesłychanie ważną w dzisiejszych czasach. Dlatego też dobrze, że pojawiła się książka „Wprowadzenie do kompatybilności elektromagnetycznej”, źle natomiast, że jako skrypt ma ograniczony zasięg. Autor, zgodnie z tytułem, prezentuje tematykę kompatybilności elektromagnetycznej od samych podstaw. Na początku książki przedstawia przegląd podstawowych zagadnień i obszaru zainteresowań omawianego tematu. Są to źródła zakłóceń i mechanizmy sprzężeń, metody i środki redukcji zakłóceń, oddziaływanie pól elektromagnetycznych na obiekty biologiczne oraz metody analityczne i pomiarowe stosowane w tej dziedzinie. Tematy te są rozwijane w kolejnych rozdziałach książki. Skrypt jest przeznaczony dla studentów kierunków silnoprądowych. Wydaje się jednak, że z wyjątkiem może rozdziału dotyczącego oddziaływań linii i urządzeń energetycznych na rurociągi podziemne (sam w sobie bardzo ciekawy) to opracowa-
Legenda:
książka wybitna, polecamy!
książka o dużych walorach praktycznych, polecamy!
może się przydać
daleka od doskonałości
nie warto kupować nie będzie również bardzo przydatne dla elektroników. Zwłaszcza w sytuacji zmian prawnych związanych z przystąpieniem do Unii Europejskiej. Stosowanie norm dotyczących kompatybilności elektromagnetycznej przestało być bowiem dobrą wolą, a stało się obowiązkiem producentów pragnących pozostać na rynku. Sprawom normalizacji jest poświecony ostatni rozdział książki, w którym autor omawia kompatybilność elektromagnetyczną w świetle ustawodawstwa i normalizacji. Podsumowując, książka bardzo przydatna zawodowcom, jak również zdecydowanie zalecana zaawansowanym amatorom. W związku z tym przyznajemy 4 lutownice.
Elektronika Praktyczna 11/2004
S P R Z Ę T
Komputery panelowe cji narzêdzie komunika ¹ cz³owieka z maszyn W poprzednich latach w aplikacjach przemys³owych komunikacja urz¹dzeñ z u¿ytkownikami odbywa³a siê g³ównie za pomoc¹ lampek kontrolnych, wskaŸników, sygnalizatorów akustycznych i niewielkich ekranów monitorów CRT. Obecnie wyœwietlacze ciek³okrystaliczne sta³y siê na tyle tanie i dostêpne, ¿e mo¿na je traktowaæ jako rozwi¹zanie standardowe. Operuj¹c grafik¹ o wysokiej rozdzielczoœci, z wykorzystaniem szerokiej palety kolorów, na ekranie wyœwietlacza s¹ prezentowane informacje w czytelnej i intuicyjnej postaci. Komputery panelowe - charakterystyka Komputery stosowane w przemyœle musz¹ spe³niaæ inne wymagania ni¿ znany nam powszechnie komputer biurowy. Spadek cen matryc LCD zwiêkszy³ popularnoœæ przemys³owych komputerów panelowych. W tego typu komputerach wyœwietlacz LCD jest zintegrowany z komputerem i zasilaczem, co gwarantuje niewielkie wymiary urz¹dzenia. Obecnie najpopularniejsze s¹ komputery panelowe z wyœwietlaczami o przek¹tnej od 12" do 15". Coraz czêœciej s¹ ju¿ stosowane komputery z matrycami 17". Od wyœwietlaczy stosowanych w urz¹dzeniach przemys³owych oczekuje siê du¿o wiêcej ni¿ od popularnych wyœwietlaczy LCD. Wyœwietlacze przemys³owe musz¹ pracowaæ w warunkach zmieniaj¹cych siê w szerokim zakresie temperatur, przy
Elektronika Praktyczna 11/2004
Wszêdzie tam gdzie istniej¹ systemy kontroli lub automatyzacji, gdzie funkcjonuj¹ systemy informatyczne, istnieje koniecznoœæ przedstawienia zebranych informacji u¿ytkownikowi. Rozwój systemów prezentacji danych jest coraz szybszy, dostarczaj¹c u¿ytkownikowi coraz wiêcej informacji, na podstawie których musi podejmowaæ decyzje, maj¹c na to coraz mniej czasu. Komunikacja pomiêdzy urz¹dzeniem, a cz³owiekiem staje siê zatem coraz wa¿niejsza i wymaga tworzenia aplikacji typu HMI (Human Machine Interface) usprawniaj¹ce ten kontakt. du¿ym zapyleniu, du¿ej wilgotnoœci, musz¹ tak¿e wytrzymywaæ wibracje. Niekiedy s¹ wymagane wykonania umo¿liwiaj¹ce u¿ywanie takich monitorów przy silnym oœwietleniu zewnêtrznym. Obudowa tych urz¹dzeñ musi mieæ odpowiedni¹ sztywnoœæ i zapewniaæ ³atwy monta¿ w szafach lub obudowach przemys³owych. Komputer panelowy musi mieæ zwart¹ konstrukcjê o odpowiedniej sztywnoœci. Powinien byæ przystosowany do pracy w cyklu ci¹g³ym i w zabudowie (co zwiêksza temperaturê pracy), zapewniaj¹c jednoczeœnie du¿y poziom niezawodnoœci. Czêsto komputery s¹ dodatkowo wyposa¿ane w ekrany dotykowe lub klawiatury membranowe. W wielu aplikacjach wa¿niejsza od wydajnoœci
komputera jest niezawodnoœæ systemu. Stosuje siê wówczas procesory o niskim poborze pr¹du, których ch³odzenie wspomaga jedynie radiator. Zastosowanie znajduj¹ procesory takie jak: VIA Eden, Geode, Intela ULV Celeron czy Transmeta - procesory projektowane specjalnie do zastosowañ przemys³owych. Zwiêkszenie niezawodnoœci systemu mo¿na równie¿ osi¹gn¹æ zastêpuj¹c dysk twardy kartami CompactFlash. Zazwyczaj komputery panelowe s¹ zasilane napiêciem zmiennym 230 V. Niekiedy mo¿na zasilaæ je równie¿ pr¹dem sta³ym 24 V. Komputery przemys³owe pracuj¹ pod kontrol¹ wielu systemów operacyjnych. W Polsce bardzo popularny jest Linux, w Europie natomiast Windows CE. Na komputerach
#
S P R Z Ę T instaluje siê Windows (98, 2000, XP), ale równie¿ i specjalizowane do zastosowañ przemys³owych Windows XP Embedded i Windows CE. Wielu producentów sprzedaje komputery razem z odpowiednio skonfigurowanym system Windows CE. U¿ytkownik otrzymuje kompletnie skonfigurowany system, gotowy do zainstalowania aplikacji u¿ytkowej. Przemys³owy komputer panelowy ma du¿o d³u¿szy cykl ¿ycia ni¿ tradycyjne komputery. Produkowany jest w niezmienionej konfiguracji przez parê lat. Mo¿na wiêc przygotowywaæ aplikacje z wykorzystaniem takich komputerów, maj¹c gwarancjê poprawnoœci dzia³ania, serwisu i stabilnoœci rozwi¹zania przez wiele lat. Bardzo wa¿ne jest równie¿ certyfikowanie komputerów. Powinny one spe³niaæ miêdzynarodowe normy, np. CE czy FCC. Certyfikaty te s¹ konieczne by urz¹dzenia mo¿na by³o oferowaæ na krajowym rynku, ale równie¿ je eksportowaæ. Komputery panelowe firmy AAEON Przyk³adem stosowanych rozwi¹zañ w komputerach przemys³owych bêdzie seria komputerów panelowych AOP i APC, które s¹ produkowane przez firmê AAEON. W roku 2004 pojawi³a siê na rynku nowa seria komputerów panelowych. Wyró¿niaj¹ siê one awangardowymi rozwi¹zaniami technicznymi i nowym wzornictwem, którego jednym z wyró¿niaj¹cych elementów jest ciemnoniebieski kolor obudowy. W artykule przedstawimy trzy charakterystyczne modele prezentuj¹ce now¹ liniê produktów: AOP8120, APC8152, APC8172. Panel operatorski AOP8120 Najmniejszym modelem jest komputer oznaczonych AOP8120. Ma on 12-calow¹ aktywn¹ matrycê LCD. "Sercem" komputera jest procesor ULV Intel Celeron, taktowany sygna³em zegarowym o czêstotliwoœci 650 MHz. Procesor nie wymaga ch³odzenia wentylatorem. Komputer jest wyposa¿ony we wszystkie podstawowe interfejsy. U¿ytkownik ma do dyspozycji 4 porty transmisji szeregowej, 4 porty USB 2.0 i port równoleg³y. Komputer mo¿e byæ do³¹czony do sieci poprzez zintegrowan¹ kartê sieciow¹ Ethernet 10/100 lub Giga Ethernet. Jest równie¿ mo¿liwoœæ zamontowania
$
wewn¹trz obudowy karty WiFi i anteny. Rozszerzenie funkcjonalnoœci systemu mo¿na uzyskaæ montuj¹c karty rozszerzeñ w slocie standardu miniPCI. Standard ten staje siê coraz popularniejszy i na rynku jest ju¿ du¿a oferta tych kart. Ciekawym rozwi¹zaniem jest zainstalowanie w komputerze 8 wejœæ lub 8 wyjœæ cyfrowych. Rozbudowuj¹ one funkcjonalnoœæ komputera bez koniecznoœci instalowania specjalistycznych kart. Mo¿na je wykorzystaæ do obs³ugi prostych zdarzeñ, np. otwarcie bramy, uruchomienie urz¹dzenia przemys³owego czy przekroczenie zadanego poziomu. Komputer jest zamkniêty w zwart¹ obudowê z tworzywa sztucznego jej g³êbokoœæ to jedynie 65 mm. Spe³nia on wymagania normy IP65, zapewniaj¹c ochronê przed kurzem i wilgoci¹. Dysk twardy jest montowany w kieszeni t³umi¹cej drgania. Komputer mo¿e byæ dostarczany równie¿ z ekranem dotykowym. Komputer posiada certyfikaty CE i FCC Class A
Komputery panelowe APC8152 i APC8172 Wszêdzie tam gdzie potrzebny jest komputer o du¿ej mocy obliczeniowej sprawdz¹ siê kolejne modele z oferty AAEON: APC8152 lub APC 8172. Ró¿ni¹ siê miêdzy sob¹ wielkoœci¹ wyœwietlacza LCD. Maj¹ wyœwietlacze o przek¹tnej odpowiednio: 15" i 17". Komputery s¹ "napêdzane" bardzo wydajnymi procesorami Pentium 4 z technologi¹ HT. Mo¿na wiêc zainstalowaæ prawie ka¿d¹ aplikacjê - nawet tak¹, która ma du¿e wymagania w stosunku do sprzêtu. Komputer jest wyposa¿ony w wiele ró¿norodnych interfejsów. S¹ wiêc 4 szeregowe (RS232 i RS422), 4 porty USB 2.0 umieszczone w tylnej czêœci komputera i 1 port USB 2.0 umieszczony w przedniej czêœci komputera. Oczywiœcie s¹ te¿ porty transmisji równoleg³ej, VGA, PS/2 do pod³¹czenia myszy i klawiatury oraz porty obs³ugi dŸwiêku. . Komputer mo¿e byæ do³¹czony do sieci Ethernet (10/100). Jest równie¿ mo¿liwoœæ zamontowania wewn¹trz
obudowy karty ³¹cznoœci bezprzewodowej i anteny. Modele APC8152 i APC8172 ma du¿o wiêksze mo¿liwoœci rozbudowy funkcjonalnoœci systemu w stosunku do modelu AOP8120. Posiadaj¹ one dwa gniazda standardu PCI i jedno standardu miniPCI. Wyposa¿enie stanowi równie¿ czytnik kart ró¿nych standardów: CompactFlash, Secure Digital, Multi Media Card, Memory Stick i Smart Media.
Równie¿ w tych modelach zainstalowanie s¹ wejœcia cyfrowe. Jest ich wiêcej, bo 16 wejœæ lub 16 wyjœæ cyfrowych. Komputery s¹ zamkniête w stalowej obudowie z aluminiow¹ czêœæ przedni¹. Przedni¹ czêœæ panelu pokryto pow³ok¹ zapobiegaj¹c¹ zarysowaniu. Jest ona wodoszczelna. Spe³nione s¹ wymagania normy IP65, zapewniaj¹c ochronê przed kurzem i wilgoci¹. Wyposa¿enie komputera uzupe³nia kieszeñ do monta¿u dysku twardego z t³umieniem drgañ i montowany na ¿yczenie ekran dotykowy. Komputery posiadaj¹ certyfikaty CE i FCC Class A. Podsumowanie Przedstawione w artykule nowe modele komputerów panelowych firmy AAEON to rozwi¹zania, które znajduj¹ szerokie zastosowanie w przemyœle jako element komunikacji cz³owieka z maszyn¹ (HMI), obrazuj¹c informacje i umo¿liwiaj¹c sterowanie procesami technologicznymi. S¹ one równie¿ stosowane w systemach wizualizacji (SCADA), wymagaj¹cych du¿ej mocy obliczeniowej i procesorów o najwy¿szej wydajnoœci. Andrzej Walentek Informacje dodatkowe Wiêcej informacji mo¿na zasiêgn¹æ w firmie Microdis Electronics, tel. (71) 30-10-400,
[email protected], www.microdis.net.
Elektronika Praktyczna 11/2004
A U T O M A T Y K A
Sieci przemysłowe w praktyce, część 7 Modbus – podstawy
Ponad dwadzieścia lat temu (w 1979 roku) firma Modicon zaproponowała otwarty protokół sieciowy Modbus jako standard wymiany informacji w sieciach przemysłowych. Rozwiązanie to zostało przyjęte przez wielu producentów sprzętu stosowanego w przemyśle, dziś jest już uznanym standardem, implementowanym w większości komercyjnych urządzeń sieciowych. Modbus jest przykładem znakowej komunikacji asynchronicznej. System transmisyjny składa się z jednostki nadrzędnej (mastera) oraz wielu jednostek podrzędnych (slave). Protokół umożliwia zaadresowanie 247 urządzeń. Adres 0 jest zarezerwowany do trybu rozgłaszania. Transmisja polega na wykonaniu transakcji. Realizowana jest ona przez wysłanie przez jednostkę nadrzędną zapytania do urządzeń podrzędnych i odebraniu przez nią odpowiedzi. Istnieją dwa typy zapytań. Pierwsze – do pojedynczego urządzenia. Drugie, to rozgło-
Tab. 1. Transakcje realizowane w sieci Modbus Numer funkcji
Realizowana funkcja
Rozgłoszenie
1
Odczyt stanu binarnego wejścia
NIE
2
Odczyt stanu binarnego wyjścia
NIE
3
Odczyt wielu słów
NIE
4
Odczyt rejestru wejściowego
NIE
5
Wymuszenie stanu 1 wyjścia binarnego
TAK
6
Zapis stanu rejestru
TAK
7
Funkcja specjalna
NIE
8
Test pętli
–
9
Programowanie 484
–
10
Odpytywanie (polling) 484
–
11
Licznik zdarzeń transmisji
NIE
12
Logowanie zdarzeń transmisji
NIE
13
Programowanie sterownika
–
14
Odpytywanie sterownika
–
15
Wymuszenie stanu słowa wyjść binarnych
TAK
16
Zapis wielu rejestrów
TAK
17
Raport slave ID
NIE
18
Programowanie 884/M84
–
19
Kasowanie połączenia
–
20
Odczyt globalnych referencji
NIE
21
Zapis globalnych referencji
NIE
22
Zapis 4x rejestru z maską
NIE
23
Zapis/odczyt 4x rejestrów
NIE
24
Odczyt kolejki FIFO
NIE
Elektronika Praktyczna 11/2004
szenie do wszystkich urządzeń w sieci. Na zapytanie składa się numer realizowanej funkcji, blok danych, bity kontroli poprawności danych. Przykład ramki odczytującej dane:
, gdzie: AA – to adres urządzenia docelowego, FF – to numer funkcji MODBUS, PPPP – oznacza numer parametru (adres komórki), NNNN – oznacza liczbę parametrów do odczytania, CCCC – suma kontrolna. Po odebraniu zapytania, urządzenie podrzędne odpowiada, przesyłając potwierdzenie odebrania polecenia, dane oraz bity kontroli poprawności danych. W przypadku błędów przy transmisji zapytania odpowiedzią jest specjalny komunikat o błędzie. Jeśli pytanie miało charakter rozgłoszenia, urządzenia nie potwierdzają odbioru komunikatu. Schemat ramki odpowiedzi jest taki sam jak zapytania. W systemie Modbus zaprojektowano dwa tryby transmisji: – Pierwszy to tryb ASCII, w którym bajt informacji jest przedstawiony jako dwa znaki ASCII. Tryb ten zezwala na sekwencyjne przesyłanie znaków, przy czym czas między poszczególnymi znakami w ramce nie musi być jednakowy. Nie może jednak przekroczyć 1s. Przesyłane znaki są kodowane heksadecymalnie w postaci znaków ASCII 0...9 oraz A...F. Oprócz 7 bitów danych jednostka informacyjna zawiera trzy dodatkowe bity: startu, parzystości i stopu. – Drugi tryb to RTU. W odróżnieniu od trybu ASCII dane są tutaj przesyłane jako paczki danych ośmiobitowych w ramach jednej transakcji. Znaczniki początku i końca transmisji powinny trwać około 3,5 okresu trwania przesyłania danych. Jednocześnie przerwy między poszczególnymi częściami ramki nie powinny być dłuższe niż 1,5 takiego okresu. Jeśli przerwa będzie dłuższa, urządzenie odbierające dane stwierdzi błąd transmisji. W tab. 1 zestawiono funkcje sieci Modbus zdefinio-
129
A U T O M A T Y K A
wane przez firmę Modicon. W praktyce wykorzystywanych jest tylko kilka z nich, pozostałe to funkcje działające jedynie w urządzeniach firmy Modicon. Ważnym elementem dla protokołu Modbus jest możliwość sprawdzenia poprawności przesłnych danych w trakcie transakcji. Dla transmisji ASCII polem potwierdzającym poprawność przesłanych danych jest LCR (Longitudinal Redundancy Check). Zarówno urządzenie nadające, jak i odbierające oblicza LCR według następującego algorytmu: Krok 1. Dodać wszystkie słowa transmisji, podzielone w słowa 8-bitowe, wyłączając znak początku (:) i znaki końca CRLF. W operacji dodawania nie należy uwzględniać ewentualnych przeniesień. Krok 2. Wynik dodawania odjąć od FFh. Krok 3. Wykonać uzupełnienie do dwóch. Inną metodą sprawdzenia poprawności jest obliczenie CRC (Cyclic Redundancy Check). W tym celu należy: Krok 1. Nadać wartość początkową FFFFh. Krok 2. Pobrać ośmiobitowe słowo danych i wykonać funkcję Ex-OR z młodszym bajtem danych CRC (CRC 2004_3073_101_194_190x135.qxd LO). Wynik zapisać w CRC. 2/3/04
Krok 3. Przesunąć zawartość rejestru CRC o 1 bit w prawo, najbardziej znaczący bit rejestru wyzerować. Krok 4. Dla wartości 0 najmniej znaczącego bitu rejestru CRC przejść do kroku 3, dla wartości 1 wykonać Ex-OR rejestru CRC ze sta- Rys. 1 łą A001h. Krok 5. Powtarzać kroki 3 i 4 dla całego słowa danych. Krok 6. Powtarzać kroki 2 do 5 dla wszystkich słów danych. Krok 7. Zapisać gotową wartość CRC do przesyłanego komunikatu, zamieniając miejscami słowo mniej i bardziej znaczące. W praktyce na szczęście nie ma potrzeby implementacji protokołu transmisji. Producenci sterowników przemysłowych i aparatury do nich udostępniają gotowe moduły, które wystarczy dodać do zestawu, lub serwery DDE, lub OPC, dzięki którym dane można odczytywać bezpośrednio z komputera. Odmianą Modbusa spotykaną w przemyśle jest JBUS. Różni się on tylko tym, PM Page 1 starszy i młodże12:32 ma odwrócone słowa:
szy w danych dłuższych niż 8 bitów. Topologia sieci Modbus jest ściśle uzależniona od zastosowanej warstwy fizycznej sieci. Za pomocą konwerterów sieciowych możliwe jest łączenie różnych rodzajów medium, różnych topologii itd. Bardzo ciekawym rozwiązaniem jest połączenie wielu urządzeń MODBUS-owych za pomocą sieci światłowodowej. Dzięki temu system może być bardzo rozległy, a zastosowanie topologii pierścienia uodparnia sieć na awarie (na rys. 1 pokazano przykład sieci Modus, w której urządzenia połączono światłowodem). Ponieważ protokół dopuszcza tylko jednego mastera, w sieci może występować tylko jeden komputer lub sterownik nadrzędny odpytujący urządzenia. Adam Bieńkowski
Sterowanie przyrzàdami Dowolna magistrala w dowolnym momencie Najszerszy wybór magistral
GPIB
PCI/PXI
Ethernet
PCMCIA
USB
FireWire
Serial
Wireless
Dostarczamy ponad 2200 sterowników od ponad 150 dostawców sprz´tu do LabVIEW™, LabWindows/CVI oraz Mesurement Studio™, by u∏atwiç tworzenie aplikacji.
ni.com/poland
Aby uzyskaç wi´cej informacji odwiedê naszà stron´ ni.com/info i wprowadê kod ebkjpg bàdê skontaktuj si´ z nami:
Tel: (22) 33 90 150 National Instruments Poland Sp. z o.o. ul. Konstruktorska 4 • 02-673 Warszawa Fax: (22) 33 90 283 • [email protected] © 2003-2004 National Instruments Corporation. All rights reserved. Product and company names listed are trademarks or trade names of their respective companies.
130
Elektronika Praktyczna 11/2004