16 zł (w tym 8% VAT) • PRICE: 8 EUR • Nakład 27000 egz.
Kamery termowizyjne testo Kamery termowizyjne testo łączą wszystkie najważniejsze cechy wymagane od wysokiej jakości pomiaru termowizyjnego – dokładność, wytrzymałość, szybkość i niezawodność. Testo 865 zapewnia wysokiej jakości obraz termowizyjny i może pracować nawet w trudnych warunkach otoczenia. A wszystko to w niewiarygodnie niskiej cenie. Kamera termowizyjna testo 868 posiada zintegrowany aparat cyfrowy oraz zapewnia obrazy termowizyjne o najwyższej jakości w swojej klasie. Dzięki aplikacji testo Thermography App kamera testo 871 łączy się bezprzewodowo z urządzeniami mobilnymi, co sprawia, że spełnia wymagania profesjonalistów w pracach instalacyjnych i w przemyśle. Kamera termowizyjna testo 872 dostarczana jest w zestawie z walizką pozwalającą na wygodny i bezpieczny transport. Poznaj wszystkie kamery testo umożliwiające profesjonalne pomiary w przemyśle oraz w budownictwie!
Dokładna identyfikacja usterek!
Kamera termowizyjna testo 865
Kamera termowizyjna testo 868
Kamera termowizyjna testo 871
Kamera termowizyjna testo 872
Produkt nr 1528583
Produkt nr 1528584
Produkt nr 1528585
Produkt nr 1528586
Pomiar temperatury i diagnostyka usterek:
Kamery termowizyjne
Pirometry
Multimetry
Kamery inspekcyjne
OD WYDAWCY 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.
wydawnictwo
Wydawca: AVT-Korporacja Sp. z o.o. 03-197 Warszawa, ul. Leszczynowa 11 tel.: 22 257 84 99, faks: 22 257 84 00
Adres redakcji: 03-197 Warszawa, ul. Leszczynowa 11 tel.: 22 257 84 60, 22 257 84 63 faks: 22 257 84 67 e-mail: [email protected] www.ep.com.pl Redaktor Naczelny: Wiesław Marciniak Redaktor Programowy, Przewodniczący Rady Programowej: Piotr Zbysiński Zastępca Redaktora Naczelnego, Redaktor Prowadzący: Jacek Bogusz Zastępca Redaktora Naczelnego, Menedżer Magazynu Marcin Karbowniczek Redaktor Działu Projektów: Damian Sosnowski, tel.: 22 257 84 58 Szef Pracowni Konstrukcyjnej: Grzegorz Becker, tel.: 22 257 84 58 Zespół marketingu i reklamy: Wioletta Bogusz, tel.: 662 047 488 Katarzyna Gugała, tel.: 22 257 84 64 Bożena Krzykawska, tel.: 22 257 84 42 Grzegorz Krzykawski, tel.: 22 257 84 60 Magdalena Korgul, tel.: 22 257 84 69 Andrzej Tumański, tel.: 22 257 84 63 Katarzyna Wiśniewska, tel.: 22 257 84 65 Sekretarz Redakcji: Grzegorz Krzykawski, tel.: 22 257 84 60 DTP i okładka: welik.eu Dariusz Welik Redaktor strony internetowej www.ep.com.pl Jacek Bogusz Stali Współpracownicy: Arkadiusz Antoniak, Rafał Baranowski, Lucjan Bryndza, Marcin Chruściel, Jarosław Doliński, Andrzej Gawryluk, Krzysztof Górski, Tomasz Gumny, Tomasz Jabłoński, Michał Kurzela, Szymon Panecki, Krzysztof Paprocki, Krzysztof Pławsiuk, Sławomir Skrzyński, Jerzy Szczesiul, Ryszard Szymaniak, Adam Tatuś, Marcin Wiązania, Tomasz Włostowski, Robert Wołgajew Uwaga! Kontakt z wymienionymi osobami jest możliwy via e-mail, według schematu: imię[email protected] Prenumerata w Wydawnictwie AVT www.avt.pl/prenumerata lub tel.: 22 257 84 22 e-mail: [email protected] www.sklep.avt.pl, tel.: 22 257 84 66 Prenumerata w RUCH S.A. www.prenumerata.ruch.com.pl lub tel.: 801 800 803, 22 717 59 59 e-mail: [email protected] Wydawnictwo AVT-Korporacja Sp. z o.o. należy do Izby Wydawców Prasy
Copyright AVT-Korporacja Sp. z o.o. 03-197 Warszawa, ul. Leszczynowa 11 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”.
PRENUMERATA NAPRAWDĘ WARTO
EMC – temat rzeka
Z dawnych lat przypomina mi się taki obrazek – oglądam w domu telewizję, a ulicą przejeżdża „pojazd samochodowy”, popularnie zwany „mydelniczką”. W miarę jak zbliża się do mnie, obraz na ekranie telewizora zaczynają pokrywać coraz to bardziej intensywne, poprzeczne prążki. Sytuacja raczej nie do pomyślenia współcześnie – zaraz posypałyby się skargi do różnych instytucji! Teraz, głównie na skutek zwiększenia liczby urządzeń elektrycznych i elektronicznych, coraz więcej mówi się o kompatybilności elektromagnetycznej. To wcale nie jest tak, że zagadnienia związane z EMC zapoczątkowało dopiero wstąpienie Polski do UE, ale od tego momentu po prostu więcej mówi się o konieczności zapewnienia zgodności z tzw. normami zharmonizowanymi. Można też zaryzykować twierdzenie, że wówczas nasze krajowe normy zastąpiono normami europejskimi i to one zaczęły odgrywać większe znaczenie, a nasz przemysł bardziej otworzył się na eksport wyrobów do krajów UE. Moim zdaniem, na całe nieszczęście doprowadzono do sytuacji, w której przeciętny inżynier elektronik budując urządzenie nie ma pojęcia, z jakimi normami powinno być ono zgodne. Każdy wie, że powinno być bezpieczne dla użytkownika, ale konkretnie, które normy o tym mówią? Każdy też wie, że powinno funkcjonować w sposób niezakłócony i nie zakłócać też pracy innych urządzeń, ale – znowuż to samo pytanie – które normy o tym mówią? Z doświadczenia wiem, że bardzo trudno jest zorientować się w tym gąszczu norm i regulacji prawnych. Niestety, nie wystarczy tu wiedza wyniesiona ze szkoły lub uczelni, bo te pierwsze przeważnie ograniczają się do omówienia samych zjawisk fizycznych, a te drugie najczęściej obok powtórki wiadomości dają jedynie możliwość obejrzenia drogiego (przeważnie „nietykalnego” dla studentów) laboratorium EMC. Owszem, wtedy sporo dowiemy się na temat tego, jak czasochłonne i pracochłonne czynności się w nim wykonuje, zostanie dokładnie omówiona metodyka poszczególnych pomiarów, ale nadal, po skończeniu uczelni, będziemy mieli ten sam problem – jakie normy powinno spełniać nasze urządzenie? Trzeba się dokształcać i w tym ma pomóc między innymi marcowe wydanie Elektroniki Praktycznej. Znak CE, będący symbolem zgodności z normami zharmonizowanymi, jest nadawany przez producenta lub dystrybutora, zależnie od tego, kto wprowadza produkt na rynek europejski. Jego odpowiedzialność za rozpoczęcie dystrybucji jest bardzo duża. Jeśli na skutek kontroli okaże się (w Polsce do tego typu działań jest uprawniony Prezes UKE), że produkt nie spełnia norm kompatybilności, to grozi mu: kara finansowa i zakaz dalszej sprzedaży, co w konsekwencji oznacza wycofanie produktu z rynku. Oba te działania mogą w konsekwencji doprowadzić do upadku małego lub średniego przedsiębiorstwa, lub poważnie osłabić finanse dużego koncernu. Nie piszę o tym, aby „straszyć”. To jest po prostu sygnał, że UE bardzo poważnie podchodzi do zagadnień związanych z zapewnieniem EMC i równie poważnie powinniśmy traktować je my, inżynierowie elektronicy. Tym bardziej, że nasza niewiedza z tego zakresu może być bardzo kosztowna. Dla nadania znaku CE nie są potrzebne żadne pomiary, badania i testy. Jak wspomniano, nadaje go sam producent lub dystrybutor i zakłada się, że jest on uczciwy. Ale czy można być uczciwym stwierdzając, że „moje urządzenie jest bardzo dobre i nie generuje żadnych zaburzeń, a już na pewno jest odporne na zaburzenia zewnętrzne!” bez wykonania jakichkolwiek testów i pomiarów? Są pewne możliwości wykonania samodzielnych testów, ale i tak wcześniej czy później musimy udać się do certyfikowanego laboratorium. Wykaz większości z nich znajdziecie na łamach bieżącego wydania Elektroniki Praktycznej, podobnie jak wiele interesujących artykułów i prezentacji związanych z tą tematyką. Oprócz tego podjęliśmy się patronatu medialnego nad konferencją „EMC For Business”, do udziału, w której zapraszamy również zainteresowanych konstruktorów elektroników. Więcej informacji na kartach EP oraz na naszej stronie internetowej.
ELEKTRONIKA PRAKTYCZNA 3/2017
3
Nr 3 (291) • Marzec 2017
Pogłos analogowy
Po wzmocnieniu sygnału, korekcie w funkcji amplitudy w kompresorze, czas na korekcję naszych zdolności w funkcji czasu. „Klocek” do domowego studia nagrań, który świetnie będzie współpracował z mikserem opisanym w EP 2/2017.
Nie przeocz Nowe podzespoły........................................................................................................................................... 6 Koktajl niusów................................................................................................................................................ 14 Niezbędnik elektronika............................................................................................................................. 19 Info........................................................................................................................................................................20 Projekty Moduł komfortowych kierunkowskazów ........................................................................................26 Pogłos analogowy ........................................................................................................................................28 Generator DDS na zakres 1 Hz…40 MHz z wobulatorem (2) .................................................31 Ekonomiczny generator funkcyjny DDS ..........................................................................................40 Projekty Soft Monitorowanie Raspberry Pi poprzez komunikator internetowy ................................... 47 Miniprojekty Zasilacz LED małej mocy ......................................................................................................................... 52 Interfejs termopary „K” z 1-Wire.......................................................................................................... 53 Włącznik opóźniający 230 V AC ............................................................................................................54 Projekty Czytelników Przedwzmacniacz audio........................................................................................................................... 55
Moduł komfortowych kierunkowskazów
Działanie modułu komfortowych kierunkowskazów polega na wygenerowaniu trzech pełnych mignięć kierunkowskazów. W nowszych autach jest to funkcja standardowa, w starszych autach można taką funkcjonalność dodać dołączając opisywany moduł.
Ekonomiczny generator DDS
Wybór konstruktora TEMAT NUMERU Laboratoria EMC.............................................................................................................................................72 Notatnik konstruktora Co powinien wiedzieć z zakresu EMC TEMAT NUMERU inżynier projektujący elektronikę? ....................................................................................................64 Zaburzenia elektromagnetyczne zagrożeniem prawidłowej TEMAT NUMERU 67 pracy urządzeń elektronicznych ......................................................................................................... Osobliwości kompilatora AVR-GCC i mikrokontrolerów AVR (1) .......................................90 Automatyka i mechatronika Siemens LOGO! 8.FS4 – nowe możliwości ósmej generacji LOGO! ................................ 79 Projekt maszyny do piaskowania automatycznego ................................................................86
Niskobudżetowy generator DDS, w którym syntezę sygnału wyjściowego wykonuje mikrokontroler. Prezentowane urządzenie łączy dwie zalety: cyfrową syntezę częstotliwości oraz niewysoką cenę.
Prezentacje EPM-153 wzmacniacz LED do zadań specjalnych ......................................................................58 Firma Contrans TI obchodzi w 2017 roku 25-lecie działalności .......................................59 Nowoczesne układy i moduły do zastosowania w IoT ..........................................................60 Unitor – obszerna oferta przyrządów TEMAT NUMERU do pomiaru pól elektromagnetycznych .........................................................................................66 TEMAT NUMERU 70 Laboratorium EMC Instytutu EMAG ...................................................................................................
Adapter termopara/1-Wire
Sprzęt Voltcraft BL-20TRH i FM-200. Zestaw – higrometr i miernik wilgotności ....................84
A gdyby tak to magistrali 1-Wire zamiast popularnego czujnika DS1820 dołączyć termoparę? Ten projekt to umożliwia, znaczenie poszerzając zakres pomiarowy systemu.
Monitorowanie Raspberry Pi poprzez komunikator internetowy
Czy można urządzenie z Raspberry Pi monitorować przez komunikator internetowy? Oczywiście, że tak! Dzięki temu projektowi można wzbogacić urządzenie o obsługę komunikatora internetowego i np. sterować domem w sposób tekstowy.
Podzespoły LTC4123 – miniaturowa ładowarka bezprzewodowa ...............................................................82 Kursy Systemy dla Internetu Rzeczy (4). Zestaw CC1310 LaunchPad ..........................................95 Pierwsze kroki z FPGA (9). Obsługa wyświetlacza OLED z kontrolerem SSD1331 ........................................................... 100 Pomiary z udostępnieniem wyników w sieci lokalnej. Użytkowanie Odroid-C1+ (4) ................................................................................................................105 Programowanie STM32F4 (6) ............................................................................................................... 110 Rejestracja i wizualizacja temperatury ..........................................................................................117 Prenumerata ........................................................................................................................................................... 25 Kramik i rynek ......................................................................................................................................................120 Hity następnego numeru .............................................................................................................................. 122
Redakcyjny serwer FTP, a na nim materiały dodatkowe oraz poprzednie części do artykułów. Dane wymagane do logowania na serwerze FTP Elektroniki Praktycznej: host: ftp://ep.com.pl, użytkownik: 77322, hasło: 8qxonzsb Uwaga: na serwerze FTP są dostępne materiały począwszy od numeru 12/1998 do wydania bieżącego. Dostęp 4 ELEKTRONIKA PRAKTYCZNA do poszczególnych materiałów3/2017 dla Czytelników EP po podaniu unikatowego hasła opublikowanego w EP.
STM32L4: energooszczędne mikrokontrolery z Cortex-M4F
Niska cena, wygodne obudowy, bogate zasoby peryferyjne, duża wydajność STM32L4 w skrócie: – rdzeń Cortex-M4 z FPU @80MHz – pamięć Flash/RAM od 128kB/64kB do 1MB/128kB – wbudowany kontroler ECC – wbudowany akcelerator dostępu do Flash (ART Accelerator) zapewniający wydajność do 100 DMIPS/273 CoreMark – pobór prądu przez CPU podczas pracy od 102 µA/MHz – w testach energooszczędności EEMBC układy osiągają 177 ULPBench – krótki czas wybudzania z trybów uśpienia: • Shutdown – 250 µs • Standby – 14 µs • Stop – 4 µs – natywne instrukcje FPU i DSP – energooszczędne peryferia – wbudowane kontrolery segmentowych LCD – 51 różnych modeli mikrokontrolerów – zakres temperatur pracy –40…+85°C, –40…+105°C, –40…+125°C – obudowy od QFN32, przez LQFP/QFN48, LQFP/CSP64 aż po LQFP/UFBGA100, UFBGA132 i LQFP144 – dostępne zestawy narzędziowe: NUCLEO-L432KC, NUCLEO-L476RG, STM32L476G-DISCO, STM32L476G-EVAL
NIE PRZEOCZ
nowe
podzespoły Z kilkuset nowości wybraliśmy te, których nie wolno przeoczyć. Bieżące nowości można śledzić na www.elektronikaB2B.pl
Firma Omron uruchomiła produkcję miniaturowego przekaźnika półprzewodnikowego, który zajmując na płytce drukowanej powierzchnię zaledwie 2,9 mm2 może przewodzić prąd o natężeniu do 1,5 A. Nowy przekaźnik wykonano w oparciu o technologię MOSFET. Zgodnie z intencją producenta, jest on przeznaczony przede wszystkim do sprzętu pomiarowego i testowego, w którym ważnym aspektem jest przestrzeń zajmowana przez obwody wejścia/wyjścia, co jednak nie wyklucza zastosowania przekaźnika również w innych aplikacjach. Przekaźnik G3VM-31QR jest oferowany w obudowie S-VSON o wymiarach 2,0 mm×1,65 mm×1,45 mm. Zwarto w niej innowacyjny, 3-warstwowy chip półprzewodnikowy. W porównaniu do rozwiązań alternatywnych, nowy przekaźnik ma niższą rezystancję w stanie załączenia – wynosi ona 0,1 V. Może przewodzić prąd o natężeniu do 1,5 A przy napięciu maksymalnym 30 V AC lub DC. Zakres temperatury otoczenia rozciąga się od –40 do +110°C. Napięcie przebicia pomiędzy wejściem a wyjściem wynosi 500 V, co jest wyjątkowe wśród tak małych przekaźników półprzewodnikowych. https://goo.gl/PkQB8d REKLAMA
6
ELEKTRONIKA PRAKTYCZNA 3/2017
Firma Nordic Semiconductor poinformowała o uruchomieniu dystrybucji próbek układów SoC nRF52840 przygotowanych do obsługi Bluetooth 5. Mają one obniżony pobór energii przy ok. 4× większym zasięgu oraz 2× większej prędkości transmisji danych. Dodatkowo, układ jest zgodny z wymaganiami IEEE 802.15.4, co znacząco rozszerza obszar jego zastosowań, na przykład do aplikacji ZigBee, Thread oraz 6LoWPAN. Architektura nowego układu jest zbliżona do innych produktów z serii nRF52. W jego obudowie zawarto sprawdzony rdzeń Cortex-M4F z jednostką FPU, co umożliwia realizację algorytmów DSP. W porównaniu do innych produktów z oferty Nordic Semiconductor, podwojono pojemność pamięci Flash (1 MB) oraz czterokrotnie zwiększono pojemność RAM (256 kB). Nowy interfejs radiowy jest zgodny z wymaganiami Bluetooth 5, IEEE 802.15.4 oraz ANT. Można go również użyć implementując inne, autorskie protokoły radiowe w paśmie 2,4 GHz. Komunikacja jest wspierana przez jednostkę kryptograficzną ARM CryptoCell-310. Łączność z układami peryferyjnymi zapewniają między innymi interfejsy USB, SPI i USART. Szybką transmisję danych wewnątrz układu SoC umożliwia jednostka EasyDMA. Wprowadzeniu do oferty nRF52840 SoC towarzyszyło uruchomienie dystrybucji programowego stosu komunikacyjnego S140 SoftDevice, zgodnego z wymaganiami Bluetooth 5.0. Próbki nowego układu oraz stos są dostępne od 6 grudnia 2016 r. w firmie Nordic oraz u jej dystrybutorów. Uruchomienie pełnej produkcji seryjnej układu jest spodziewane w 4 kwartale 2017 r. https://goo.gl/Vr0UWo
OPA388 – precyzyjny – precyzyjny wzmacniacz o zerowy dryfcie
Texas Instruments poinformował o nowym wzmacniaczu operacyjnym do zastosowania w precyzyjnym sprzęcie pomiarowym. Wzmacniacz charakteryzuje się bardzo dobrą liniowością w całym zakresie pracy i zerowym dryftem. Co więcej, w układzie zastosowano technologię zero crossover, eliminującą obszar przejściowy napięcia offsetu na wejściu, charakterystyczny dla układów wykonanych w komplementarnej technologii CMOS. Zapewnia to uzyskanie minimalnych zniekształceń nieliniowych oraz doskonałej liniowości w całym zakresie napięcia wejściowego. Zastosowana w układzie technologia zero drift umożliwia osiągnięcie napięcia offsetu o wartości nie większej niż 5 mV i typowego dryftu temperaturowego 0,005 mV/°C. Maksymalne natężenie prądu polaryzacji wejść wynosi 700 pA. Zakres temperatury użytkowania rozciąga się od –40 do +125°C. Górna częstotliwość graniczna jest równa 10 MHz, co w połączeniu z precyzją pracy pozwala na użycie układu np. w urządzeniach medycznych.
ponad 45 lat doświadczenia szybka wysyłka w ciągu 24 godzin ponad 70 000 produktów w magazynie
UWERAZYG! A MAK
Drukowanie 3D łatwo i
DA VINCI MINI W Wymiary druku maks. 15 x 15 x 15 cm Połączenie z siecią domową przez WiFi
Fotografia: Foto- und Bilderwerk
Materiał drukujący: PLA, 1,75 mm
1.045, DA VINCI MINI W
NAJLEPSZA
CENA Zestaw do programowania do Raspberry Pi:
Do Raspberry Pi:
Inteligentna roślina
Zestaw czujników i komponentów
Pomiar i ocena danych rośliny
(€ 242,86)
84
Zmontowany i gotowy do użytku
Wskaźnik LED nawadniania
Ponad 30 czujników: Czujnik płomienia, czujnik Halla, czujnik temperatury, czujnik wilgoci, czujnik dotyku i ruchu, odbiornik IR, czujnik wstrząsów. czujnik poziomu wody, ...
Twitter Bot z danymi rośliny Powiadomienia e-mailem Z czujnikami wilgoci i temperatury, fotorezystorem, płytką prototypową i innymi
162,48 RASP JP SEN AKT
(€ 37,73)
70,57
J BIULETYN
SUBSKRYBU I WYGRAJ!
RASP JP PFLANZE
NOWOŚĆ Ceny dnia · Poziom cen: 22. 2. 2017
(€ 16,39)
Co miesiąc rozlosowana zostanie między wszystkimi nowymi abonentami atrakcyjna nagroda!
WEŹ UDZIAŁ ► http://rch.lt/Ay
ceny w złoty plus ustawowy podatek VAT, plus koszty wysyłki, reichelt elektronik, Elektronikring 1, 26452 Sande (D)
MIĘDZYNARODOWE MOŻLIWOŚCI PŁATNICZE:
ŁATWE ZAKUPY ONLINE!
Języki używane w sklepie:
www.reichelt.pl GORĄCA LINIA ZAMÓWIEŃ: +49 (0)4422 955-360
NIE PRZEOCZ Układ OPA388 jest już dostępny w sprzedaży. Jest oferowany w miniaturowej obudowie 8SOIC zajmującej powierzchnię 29 mm2 (6 mm×4,9 mm). https://goo.gl/7fQBTb
maksymalną sprawność. Wejście i wyjście układu są dopasowywane za pomocą komponentów zewnętrznych, co umożliwia łatwą zmianę parametrów poprzez wymianę komponentów i dzięki temu uzyskanie maksymalnej sprawności w szerokim paśmie częstotliwości. Układ jest oferowany w miniaturowej, 28-nóżkowej obudowie WQFN o wymiarach 5 mm×5 mm. https://goo.gl/yIDMSP
PolarFire – nowe układy FPGA
CMX901 – wzmacniacz mocy do układów radiowych
Firma CML Microcircuits wprowadziła do oferty układ CMX901 będący scalonym układem wzmacniacza do toru radiowego, pracującym w paśmie 130…950 MHz. Pierwszy stopień wzmacniacza pracuje w klasie A, drugi w klasie AB, a trzeci w klasie C, co zapewnia REKLAMA
Microsemi Corporation poinformowało o wprowadzeniu do oferty pierwszego układu FPGA z rodziny PolarFire. Ta grupa układów jest przeznaczona przede wszystkim do zastosowania w sprzęcie telekomunikacyjnym i sieciowym, do czego predysponuje ją bardzo szybki serializer/deserializer (transceiver) osiągający przepustowość 12,7 Gb/s, pobierający przy prędkości transmisji 10 Gb/s moc mniejszą niż 90 mW. Zgodnie z informacjami podanymi przez producenta, jeśli dodać do tego niewielką wymaganą moc przy pracy statycznej (25 mW dla 100 k-elementów logicznych), zerowy prąd polaryzacji oraz tryb oszczędzania energii Flash Freeze (130 mW przy 25°C), to uzyskuje się układ o poborze mocy o połowę mniejszym, niż porównywalne produkty konkurencyjne. Układy mają wbudowane mechanizmy: korekcji błędów pojedynczych oraz podwójnych (SECDED), interleave dla dużych pamięci statycznych LSRAM, kontrolowania systemu w trybie uśpienia (dla aplikacji o podwyższonym poziomie zabezpieczeń), analizowania zabezpieczeń strumienia danych CRI, zintegrowane funkcje fizycznie niemożliwe do sklonowania (PUF), 56 kB nieulotnej, bezpiecznej pamięci (eNVM), mechanizm wykrywania prób włamania, generator rzeczywistych liczb losowych, koprocesor kryptograficzny Athen TeraFire EXP5200B oraz licencję CRI DPA. Układ wykonano w technologii 28 nm Silicon-Oxide-Nitride-Oxide-Silicon (SONOS) na standardowym, komplementarnym półprzewodniku metalowo-tlenkowym (CMOS). Zawiera do 481 tys. elementów logicznych, włączając w to 4 tablice LUT, do 33 MB RAM, do 1480 18×8 bloków mnożąco-akumulujących, zintegrowany interfejs PCIe do ×4 endpontów Gen2 i portów root (RP). Wejścia/wyjścia układu (HSIO) umożliwiają transmisję danych z prędkością do 1600 Mb/s DD4, 1333 Mb/s DDR3L i 1333 Mb/s LPDDR3/DDR3. Wejścia GPIO pracują z logiką CMOS 3,3 V. Moc pobieraną w aplikacji można łatwo oszacować za pomocą narzędzia programowego SmartPower Analyzer. Układy FPGA z rodziny PolarFire FPGA są już dostępne w programie próbek. Uruchomienie pełnej produkcji jest spodziewane w 2 kwartale 2017 https://goo.gl/P8WTAo
OKDx-T/90 – seria konwerterów DC/DC, PMBus, 90 A
Fi r m a Mu rat a doda ła do oferty przetwornic nową serię OKDx-T/90 przeznaczoną głównie do zasilania układów FPGA i procesorów. Nowe przetwornice charakteryzują się obciążalnością 90 A, mocą 162 W i sprawnością do 94% (Uwe=12 V, Uwy=1,8 V, obciążenie=50% pełnego prądu obciążenia). Pracują przy napięciu zasilania 7,5…14 V i generują napięcie wyjściowe regulowane w zakresie 0,6…1,8 V.
8
ELEKTRONIKA PRAKTYCZNA 3/2017
siemens.pl/logo
NIE PRZEOCZ Przetwornice są oferowane w trzech różnych wariantach obudów o wymiarach 50,8 mm×9,51 mm×19,05 mm: montowanej pionowo SIP (THT), montowanej poziomo (THT), do montażu SMT. Przetwornice OKDx-T/90 są idealne do zastosowania w aplikacjach wymagających niewielkiej przestrzeni. Ich ważniejsze parametry mogą być kontrolowane przez interfejs PMBus za pomocą oprogramowania Murata Power Designer. OKDx-T/90-W12 są dostarczane z firmware umożliwiającym kontrolowanie napięcia wejściowego, napięcia wyjściowego oraz parametrów obciążenia. Dla zwiększenia dopuszczalnego prądu wyjściowego moduły można łączyć równolegle – do 4 modułów. Bardzo dobre parametry pracy oraz szybką reakcję na zmianę obciążenia zapewniają wbudowane mechanizmy synchronizacji (eliminujący prąd pasożytniczy przy połączeniu równoległym oraz zmniejszający zaburzenia EMI) i dynamicznej kompensacji pętli (parametry pętli sprzężenia zwrotnego są dopasowywane do warunków obciążenia). Inne opcje standardowe obejmują zabezpieczenia przed: zwarciem, przeciążeniem, przepięciem, przegrzaniem i spadkiem napięcia wejściowego. Dostępne są wyjścia sygnalizujące margines napięcia wejściowego, awarię napięcia wyjściowego (power good), wejście pomiarowe (dla kompensacji długich połączeń), wejście umożliwiające zdalne włączanie i wyłączanie. Wszystkie przetwornice OKDx-T/90-W12 mogą być konfigurowane za pomocą oprogramowania Murata Power Designer, które umożliwia również symulowanie ich pracy w aplikacji. https://goo.gl/r39cMt
Złącza SKEDD w elektrycznym sprzęcie domowym
wg norm EN 60335-1. Ich obudowa oraz element ryglujący wykonany jest z poliamidu o klasie palności V0, natomiast przycisk push-in zwalniający przewód z poliestru, również w tej samej klasie palności. Złącza przechodzą pozytywnie również testy palności wg normy EN 60695-2: GWFI (Glow Wire Flamability Index), temperatura 850°C, GWIT (Glow Wire Ignition Temperature), temperature 775°C. Poszerza to zakres możliwych bezproblemowych zastosowań złącz z przyłączem do PCB w technologii SKEDD. Możliwość odłączenia całej wiązki doprowadzanych przewodów od płytki może być znaczącym ułatwieniem ewentualnego serwisowania urządzeń, przy zachowaniu oszczędności samego połączenia jaki procesu produkcyjnego (niewymagane wlutowywanie dodatkowego gniazda). https://goo.gl/8pt7oN
Złącza serii SDC 2,5 oraz SDDC 1,5 spełniają wymagania norm odnośnie użytku w elektrycznych urządzeniach do użytku domowego, REKLAMA
Busy Bee i Sleepy Bee – 8051 z kwalifikacją AEC-Q100
Silicon Labs oferuje dwie nowe serie 8-bitowych mikrokontrolerów EFM8BB1/BB2 BusyBee i Sleepy Bee z kwalifikacją AEC-Q100. Mogą one znaleźć zastosowanie w interfejsach dotykowych, do kontrolowania lusterek, świateł, napędu regulatorów siedzeń oraz w układach sterowania silnikiem. Są to układy energooszczędne, w miniaturowych obudowach QFN, wyposażone moduły analogowe i cyfrowe, w tym kontroler paneli dotykowych. Mikrokontrolery EFM8SB Sleepy Bee pobierają ok. 50 nA prądu w trybie uśpienia z podtrzymaniem danych w wewnętrznej pamięci i z aktywnym detektorem napięcia zasilającego. Charakteryzują się krótkim czasem wyjścia ze stanu uśpienia wynoszącym 2 ms. Wersja do zastosowania w motoryzacji (EFM8SB1) może pracować w zakresie temperatury otoczenia –40…+85°C. EFM8SB Sleepy Bee pracuje przy taktowaniu przebiegiem o częstotliwości 25 MHz. Ma do 8 kB pamięci Flash, 12-bitowy przetwornik A/C, zestaw timerów, czujnik temperatury, interfejsy SPI, I2C, UART oraz 12-kanałowy konwerter
10
ELEKTRONIKA PRAKTYCZNA 3/2017
Kompletna oferta do badań EMC Rohde & Schwarz dostarczy rozwiązania, których potrzebujesz na etapie rozwoju, badań precompliance oraz badań końcowych dla uzyskania pełnej certyfikacji EMC.
NIE PRZEOCZ CDC (dla interfejsu dotykowego) o dużej rozdzielczości i poborze prądu poniżej 1 mA. Mikrokontrolery EFM8BB1/BB2 Busy Bee pracują przy taktowaniu do 50 MHz. Mają do 264 kB pamięci Flash, 12-bitowe przetworniki A/C i C/A, komparatory, źródło napięcia referencyjnego, oscylatory i interfejsy komunikacyjne. Dzięki dużej skali integracji w wielu wypadkach nie wymagają dołączania dyskretnych komponentów analogowych. Zakres temperatury otoczenia wynosi –40…+125°C. Silicon Labs ułatwia projektowanie interfejsów dotykowych oferując bibliotekę funkcji Capacitive Sense Library, dostępną w ramach pakietu Simplicity Studio. Zawiera ona funkcje niezbędne przy oprogramowywaniu interfejsów dotykowych, pojemnościowych w pojazdach (skanowanie przycisków, filtrowanie szumu itp.). Oprócz tego firma Silicon Labs dostarcza program Capacitive Sense Profiler do wizualizacji w czasie rzeczywistym danych i poziomu szumu, co pozwala na łatwe dopasowanie poziomów załączenia/wyłączenia i optymalizowanie funkcji redukcji szumu. https://goo.gl/RrZLIZ Typ ISL33354E ISL33357E ISL33334E ISL33337E
VCC 5V 3,3 V
Rodzaj obudowy SSOP-28 QFN-40 SSOP-28 QFN-40
ISL3333xE i ISL3335x – transceivery RS-485/RS-232 Układy ISL3333xE i ISL3335x to transceivery RS-485/RS232 o znamionowym napięciu zasilania, odpowiednio: 3,3 V i 5 V. Co ciekawe i unikatowe, układy mają wbudowane dwa transceivery: podwójny RS-232 (2×Tx, 2×Rx) i pojedynczy RS-485/ RS-422. Ta cecha pozwala na zastąpienie w aplikacji dwóch układów przez jeden, oferowany w takiej samej cenie, jak pojedynczy układ transceivera. Przetwornica wytwarzająca napięcie dla interfejsu RS-232 pracuje w oparciu o pompę ładunku, dzięki czemu do poprawnej pracy REKLAMA
12
ELEKTRONIKA PRAKTYCZNA 3/2017
Prędkość RS-485 20 Mb/s
są wymagane jedynie 4 kondensatory o pojemności 100 nF. Układy są zabezpieczone przed wyładowaniami ESD do ±15 kV na liniach interfejsowych. Szybkość transmisji RS-485 sięga 20 Mb/s, natomiast RS-232 400 kb/s (ISL33334, ISL33337) lub 650 kb/s (ISL22254, ISL33357). Dla ułatwienia aplikacji, układy mają wyprowadzenia rozmieszczone w sposób ułatwiający projektowanie płytki drukowanej, nazywany przez producenta flow through. https://goo.gl/6rkypX
Prędkość RS-232 650 kbps 400 kbps
LTM2894 – Izolator szyny USB
Firma Linear technology poinformowała o wprowadzeniu do produkcji układu izolatora interfejsu USB typu LTM2894. Zapewnia on zabezpieczenie przed przepięciami o wartości do 7,5 kV i szybkości narastania do 50 kV/ms. Nowy układ jest przeznaczony do zastosowania w interfejsach USB 2.0 pracujących w trudnych warunkach przemysłowych oraz w urządzeniach medycznych, w których priorytetem jest zapewnienie bezpieczeństwa użytkownika dzięki izolacji galwanicznej. Układ LTM2984 może pracować przy różnicy potencjałów w odniesieniu do masy wynoszącej do 1000 Vrms. Przerwa pomiędzy izolowanymi obwodami w wypadku LTM2894 wynosi 17,4 mm, co zapewnia zgodność ze standardem IEC 60601-1 i umożliwia zastosowanie układu przy napięciu zasilania do 250 V, przy poziomie ochronie pacjenta 2×MOPP. Układ jest zabezpieczony przed wyładowaniami ESD do ±20 kV. Może pracować w trybie USB2.0 full speed (12 Mb/s) lub USB 2.0 low speed (1,5 Mb/s). Nie wymaga żadnych elementów współpracujących (rezystory zintegrowano w układzie). Jest oferowany w obudowie BGA zajmującej powierzchnię o wymiarach 22 mm×6,25 mm w wersjach na komercyjny, przemysłowy i samochodowy zakres temperatury pracy. https://goo.gl/5DqwLk
FAULHABER Drive Systems
DNA aplikacji następnej generacji
Wizje nie znają granic
WE CREATE MOTION
Jesteśmy twórcami kluczowych technologii w zakresie konstrukcji wydajnych miniaturowych silników elektrycznych. Produkowane dzisiaj silniki są tak małe, że mogą docierać przez naczynia krwionośne do serca i chronić życie. Albo tak trwałe, że po przebyciu 6,5 miliarda kilometrów w kosmosie niezawodnie wykonują swoje zadania na komecie. To nasze podzespoły dla wszystkich, których wizją jest sięgnięcie po gwiazdy.
Więcej informacji znajdziesz na www.faulhaber.com
NIE PRZEOCZ
koktajl
niusów że w najbliższych latach średni, roczny wzrost o 45,7%. Równie dynamicznie rozwijają się Dni Druku 3D. Dni Druku 3D to wydarzenie, które zaczęło swoją historię w kieleckim klubie studenckim „Wspak”. Dziś jest to najważniejsze spotkanie branży w naszej części Europy. Dni Druku 3D towarzyszące do tej pory „Przemysłowej Wiośnie w Targach Kielce” stają się obecnie jednym z ważniejszych elementów tego cyklu wystaw. Edycja w marcu 2016 roku zgromadziła ponad 80 wystawców oraz przyciągnęła liczbę 8 tys. zwiedzających. Do tej pory najnowsze technologie druku przestrzennego można było poznawać przez 2 dni, od marca 2017 roku będą to już 3 dni. Dynamiczny rozwój Dni Druku 3D zawdzięczają z pewnością kolejnym programom finansowanym z funduszy Unii Europejskiej, ale także ogromnemu zainteresowaniu wysokobudżetowych firm z branży. Zapraszamy na Targi Kielce od 28 do 30 marca 2017 r.
Dni Druku 3D w pełnym wymiarze w Targach Kielce
Według analityków z firmy Canalys, szybko rosnący rynek druku przestrzennego, w tym sprzedaż drukarek 3D, materiałów i związanych z nimi usług, w 2018 r. osiągnie wartość 16,2 mld dol., co oznaczałoby, REKLAMA
Firma ifm electronic sp. z o.o. „Gazelą Biznesu” oraz „Diamentem Forbesa”!
Rok 2017 dla firmy ifm electronic sp. z o.o. rozpoczął się niezwykle pomyślnie. Na przestrzeni zaledwie jednego miesiąca, została nagrodzona dwoma prestiżowymi tytułami – „Gazelą Biznesu” oraz „Diamentem Forbesa”. Obydwa wyróżnienia przyznawane są firmom, które w ciągu trzech ostatnich lat odnotowują dynamiczny wzrost. Tak też się stało w przypadku ifm electronic, co świadczy o niesłabnącej pozycji lidera w branży automatyki przemysłowej. ifm electronic uplasował się na 32 pozycji w województwie śląskim, w kategorii firm o przychodach od 5 do 50 mln złotych.
Konferencja EMC for Business
W dniach 12…13 października 2017 we Wrocławiu odbędzie się konferencja zrzeszająca praktyków i miłośników branży EMC, którzy zaprezentują serię wykładów dotyczących wymagań, projektowania oraz badań EMC na bazie własnych doświadczeń i rzeczywistych przypadków. Spotkanie oparte na wymianie wiedzy, dyskusjach, pomysłach
14
ELEKTRONIKA PRAKTYCZNA 3/2017
Koktajl niusów
i warsztatach skupiających się na przyszłości EMC. Nieocenioną wartością wydarzenia jest rozwiązywanie ciekawych przypadków przez uczestników, co przyczyni się do powstania nowych działań, poszerzy wiedzę oraz nada nowe know how dla świata EMC. Przykładowe zagadnienia poruszane na warsztatach podczas EMC for Business: wymagania, projektowanie, rozwiązywanie problemów, wymagania radiowe (RED) i bezpieczeństwo (LVD). Konferencja jest adresowana do firm, które mają styczność z EMC, m.in. przedstawicieli branży elektronicznej, w tym osób projektujących urządzenia, sprawdzających ich zgodność, a także podejmujących decyzje strategiczne, dotyczące obszaru EMC, jak wybór dostawcy. Dostępne zapisy na stronie https://goo.gl/BqAoTN. Organizatorem jest EMC for Business. Elektronika Praktyczna sprawuje patronat medialny nad tym wydarzeniem.
Konferencje „Wiedza i doświadczenie”
Rusza druga edycja ogólnopolskich konferencji z cyklu ifm „Wiedza i doświadczenie”: Przemysł spożywczy w nowoczesnym wydaniu. Pierwsze spotkanie w ramach tegorocznego cyklu konferencji
odbędzie się już na początku marca w siedzibie firmy ifm ecolink. Nieoficjalna część spotkania odbędzie się z kolei w prestiżowym Hotelu DeSilva. Goście konferencji mogą liczyć na praktyczne podejście do omawianych zagadnień oraz indywidualne treningi przy specjalnie przygotowanych stanowiskach dydaktycznych. Tegoroczna konferencja przyniesie sporo nowości! Eksperci ifm przybliżą innowacyjne technologie dotyczące automatyki przemysłowej, a w szczególności rozwiązania skierowane do branży spożywczej, takie jak: kamera O3D, sieć AS-i czy technologia IO-Link. Jak zwykle nie zabraknie licznych atrakcji, w tym m.in. kulinarnego show w wykonaniu najlepszych szefów kuchni, czy klimatycznego bankietu sprzyjającego biznesowym rozmowom i wymianie doświadczeń. Przedstawiciele firmy ifm spotkają się z odbiorcami rozwiązań automatycznych także w Poznaniu. Druga konferencja odbędzie się w Hotelu Remes w listopadzie bieżącego roku. Już teraz serdecznie
REKLAMA
ELEKTRONIKA PRAKTYCZNA 3/2017
15
NIE PRZEOCZ Państwa zapraszamy do uczestnictwa w prestiżowych konferencjach „wiedza i doświadczenie”. Więcej szczegółów oraz relację zdjęciową z ubiegłorocznych konferencji znajdziecie Państwo na stronie https://goo.gl/dWZ04P.
poinformował pod koniec stycznia Bogusław Sobola, wiceprezydent Katowic. W USA z tego przedstawicielstwa będą mogły skorzystać amerykańskie firmy chcące uruchomić swój biznes w Katowicach. Z drugiej strony – za pośrednictwem placówki – katowickie przedsiębiorstwa będą mogły rozpocząć działalność w światowej stolicy elektroniki i IT. Biuro ma za zadanie promować także nowe firmy technologiczne z górnośląskim rodowodem.
PARP ma 620 mln zł dla firm inwestujących w innowacje Dacpol rozszerzył ofertę o ekrany dla PCB
Dacpol rozbudował ofertę handlową o produkty izraelskiej firmy Masach Technologies specjalizującej się w produkcji ekranów do płytek drukowanych. W ofercie firmy jest kilkadziesiąt typów ekranów katalogowych, jedno- i wieloczęściowych, z podziałem na sekcje, do montażu THT i SMT itp. Istnieje też możliwość zamawiania wersji o zindywidualizowanych wymiarach.
Polska Agencja Rozwoju Przedsiębiorczości w ramach działania „Badania na rynek” przeznaczy 620 mln zł na 50 innowacyjnych projektów biznesowych, w które zainwestują małe i średnie firmy. Jednorazowa dotacja może wynieść nawet 20 mln zł. PARP współfinansuje projekty, mające na celu wdrożenie wyników prac badawczo-rozwojowych przeprowadzonych przez przedsiębiorcę lub nabytych, prowadzących do uruchomienia produkcji nowych produktów czy usług. „Badania na rynek” to jeden z większych programów inwestycyjnych PARP-u. Jego cały budżet wynosi około 4,5 mld zł. Ze wsparcia mogą skorzystać mikro-, małe i średnie przedsiębiorstwa. Średnia wartość udzielonego dofinansowania dla firmy wyniesie 12,4 mln zł. Jak powiedziała szefowa agencji PARP Patrycja Klarecka, zainteresowanie jest bardzo duże i wpłynęło 197 wniosków na łączną kwotę dofinansowania 2,5 mld zł. PARP podzieliła projekty według branż. Dwanaście z nich (24%) jest związanych z produkcją maszyn, urządzeń i narzędzi, trzy projekty dotyczą elektryki (6%), a pozostałe takich obszarów, jak budownictwo i produkcja materiałów budowlanych, produkcja z papieru i tworzyw sztucznych, branża chemiczna, ale także m.in. obróbka metalu, AGD i drukowanie. Działaniem „Badanie na Rynek” PARP objęła również pierwszy konkurs dla projektów z obszaru elektromobilności. Agencja chce, aby jak najwięcej komponentów do autobusów i samochodów elektrycznych powstawało w polskich małych i średnich firmach.
Będzie konkurs na polski samochód elektryczny
Powołana w październiku 2016 roku spółka ElectroMobility Poland zapowiedziała ogłoszenie w najbliższym czasie konkursu na miejski samochód elektryczny. ElectroMobility Poland tworzą polskie koncerny energetyczne PGE, Tauron, Enea oraz Energa, każdy ma w niej 25% udziałów. Po wyłonieniu zwycięskiego projektu ElectroMobility Poland ma zapewnić wyprodukowanie pojazdów prototypowych. Jak ogłosił minister Krzysztof Tchórzewski, konkurs na projekt karoserii małego, miejskiego samochodu elektrycznego zostanie ogłoszony 3 marca. Według rządowego planu rozwoju elektromobilności do 2025 r. po polskich drogach będzie jeździć milion samochodów elektrycznych. Zdaniem dyrektora zarządzającego ElectroMobility Poland Krzysztofa Kowalczyka, stworzenie własnych marek i dalszy rozwój sektora produkcji komponentów motoryzacyjnych będą bardzo istotne dla wzrostu gospodarczego. Spółka planuje – przy wsparciu polskiego rządu – stworzyć podstawy dla powstania nowego rynku w Polsce i stać się częścią globalnego przemysłu pojazdów elektrycznych.
Katowice otwierają przedstawicielstwo w Dolinie Krzemowej
Dobiegają końca przygotowania do otwarcia biura i punktu informacyjnego Urzędu Miasta Katowice w Palo Alto w Dolinie Krzemowej,
16
ELEKTRONIKA PRAKTYCZNA 3/2017
Krakowska AGH nawiązała współpracę z Samsungiem
Firma Samsung Electronics oraz Akademia Górniczo-Hutnicza w Krakowie podpisały umowę o współpracy, której celem jest realizowanie wspólnych inicjatyw dydaktycznych i badawczo-rozwojowych. Współpraca ma przynieść korzyści w pierwszej kolejności studentom informatyki oraz kierunków pokrewnych. Porozumienie otwiera możliwość dofinansowania przez Samsunga prac dyplomowych i doktoranckich. Ponadto pozwoli na wymianę doświadczeń między środowiskiem akademickim a specjalistami przemysłowymi.
Koktajl niusów Dzięki podpisanej umowie AGH będzie mogła uzyskać od Samsunga finansowanie pilotażowych badań z zakresu technologii chmurowych i sieciowych. Koreańska firma zaoferuje również praktyki dla studentów i doktorantów oraz zorganizuje seminaria technologiczne dla studentów i pracowników Katedry Informatyki Wydziału Informatyki, Elektroniki i Telekomunikacji.
W ABB połączona zostanie z biznesem robotycznym i stanie się nowym globalnym centrum aplikacyjnym z zakresu trójwymiarowej metrologii. ABB, łącząc trójwymiarowe systemy wizyjne i metrologiczne firmy NUB3D z własnymi produktami, chce stworzyć globalną ofertę zautomatyzowanych systemów inspekcyjnych i kontroli jakości, dostosowywanych do wymagań danego klienta
ABB przejmuje NUB3D
Micron zainwestuje kolejny miliard dolarów w technologiczną migrację
Firma ABB przejęła hiszpański start-up NUB3D, który specjalizuje się w technologii, wykorzystujących białe światło, czujników 3D. Czujniki takie są stosowane do wykrywania defektów w wytwarzanych częściach. Charakteryzują się wysokim poziomem dokładności dzięki czemu możliwa jest optymalizacja procesów kontroli z jednoczesnym zapewnieniem jakości produkcji. Szczegóły finansowe transakcji nie zostały ujawnione. Firma NUB3D została założona w 1999 roku. REKLAMA
Jak poinformował zarząd spółki, kosztem 1 mld dolarów Micron Technology przeprowadzi w fabryce układów DRAM w Taichung migrację technologiczną z procesu 25-nanometrowego do procesu 1x-nanometrowego. Dyrektor zakładu KC Hsu zapowiedział, że zmiana technologii produkcyjnej będzie zakończona jeszcze w bieżącym roku. By było to możliwe, w ubiegłym roku Micron wydał już 1 mld dolarów
na nowy sprzęt produkcyjny. Firma spodziewa się rozpoczęcia produkcji chipów 1x-nanometrowych w drugiej połowie bieżącego roku. Dzięki przejściu na proces 1x-nanometrowy Micron będzie w stanie podnieść wydajność i zmniejszyć koszty produkcji w zakładzie. Micron Technology planuje też wybudowanie na Tajwanie zaawansowanej fabryki opakowań chipów DRAM w celu usprawnienia łańcucha dostaw firmy. Jeszcze w 2017 r. chce na Tajwanie zatrudnić 1000 pracowników.
Yaskawa zbuduje fabrykę w Europie
Yaskawa, japoński producent między innymi robotów przemysłowych oraz napędów zamierza uruchomić w Europie fabrykę i centrum R&D. W zakładzie, który zostanie zbudowany w Słowenii, produkowane będą roboty. Pierwsze egzemplarze tych maszyn mają być gotowe już w 2018 roku. Wartość tej inwestycji to 25 mln euro. Poza Europą Yaskawa ma również fabryki w Japonii i w Chinach.
Gamma dystrybutorem MikroElektronika
Gamma nawiązała współpracę z serbską firmą MikroElektronika i rozszerzyła ofertę o wytwarzane przez nią narzędzia i oprogramowanie deweloperskie. Firma wytwarza zestawy deweloperskie, kompilatory, akcesoria oraz dodatkowe oprogramowanie, a także tworzy podręczniki dla mikrokontrolerów takich firm, jak między innymi Microchip, Atmel, NXP, STM, Texas Instruments, 8051.
Kradex i PCB Technology mają ISO
REKLAMA
Kradex – k rajowy producent obudów dla elektroniki z tworzyw sztucznych oraz PCB Technology – dostawca materiałów do produkcji elektroniki i urządzeń technologicznych uzyskały certyfikaty ISO 9001. Posiadanie certyfikatu Systemu Zarządzania Jakością podnosi prestiż firmy i usprawnia jej zarządzanie, ale także ma znaczenie np. przy ubieganiu się o dofinansowanie z funduszy unijnych (zwiększa bowiem szanse na ich otrzymanie). Dodatkowo ISO może mieć znaczenie np. przy ubieganiu się przez daną firmę o udzielenie zamówienia publicznego.
18
ELEKTRONIKA PRAKTYCZNA 3/2017
ZAWARTOŚĆKoktajl PŁYTY niusów DVD
niezbędnik
elektronika 1. AutotraxDEX-v9.62
Najnowsza wersja popularnego, taniego następy słynnego programu do projektowania PCB Protel/Autotrax. Na płycie publikujemy wersję ewaluacyjną.
2. Cypress-PSoC-Creator
Najnowsza wersja (V4.0, Update 1) kompletnego środowiska projektowego firmy Cypress, obsługującego mikrokontrolery PSoC.
3. GUI-Bitmap-Converter
Popularny, bezpłatny konwerter grafik BMP do postaci tablic w języku C (z wydzielonymi paletami kolorów i bez nich).
4. MPLAB Code Configurator
Pakiet pluginów napisanych w Javie dla środowiska MPLab firmy Microchip. Za ich pomocą można wygodnie przygotować konfiguracje wybranych bloków peryferyjnych mikrokontrolerów.
5. NXP-LPCXpresso IDE v8.2.2 Najnowsza wersja kompletnego środowiska projektowego LPCXpresso firmy NXP/Qualcomm, przeznaczonego dla mikrokontrolerów LPC produkowanych przez tę firmę.
6. NXP-S32 Design Studio IDE
Najnowsze wersje (1.2) środowisk projektowych Design Studio dla mikrokontrolerów S32 (Freescale, obecnie NXP/Qualcomm) – na płycie publikujemy wersje dla Windows i Linuksa.
7. Parallax-P8X32PropellerTool
Środowisko projektowe dla wielordzeniowych mikrokontrolerów firmy Parallax.
8. SiliconLabs-Precision32
Pełna wersja instalacyjna środowiska projektowego dla mikrokontrolerów z rdzeniami Cortex-M produkowanych przez firmę SiliconLabs.
9. SiliconLabs-Simplicity Studio v4
Najnowsza wersja pakietu Simplicity Studio firmy Silicon Labs, która upraszcza implementację aplikacji bezprzewodowych w mikrokontrolerach z rodzin EFM32, EFM8, 8051 z oferty SiliconLabs, a także wireless MCUs i ZigBee SoCs produkowanych przez tę firmę. Simplicity Studio obsługuje m.in. stosy ZigBee i BLE, pakiet wyposażono m.in. w programowy analizator sieci.
EP 2/2017 1. FontGen Freeware’owy generator kodów (kształtów) fontów systemowych Windows w postaci tablicy w języku C lub pliku Intel HEX. 2. Intel Quartus Prime Lite Bezpłatne środowisko projektowe (wer. 16.1) dla układów FPGA firmy Intel. 3. Intersil Power Navigator Narzędzie firmy Intersil umożliwiające konfigurację i monitorowanie stanu pracy przetwornic DC/DC m.in. z rodzin: Integrated FET Digital Regulators, Intersil Digital Controllers, Digital Multiphase, Digital Modules, Digital Power Monitors. 4. Linduino Biblioteki dla Arduino, dokumentacje oraz przykłady przygotowane dla płytki Linduino firmy Linear Technology 5. Microchip MPLAB X-IDE v3.50 Popularne środowisko programistyczne firmy Microchip, w wersjach dla Windows i Linuksa. 6. Microvirt-Memu Emulator urządzeń mobilnych z Androidem na komputery PC z Windows. 7. WinISD0.7 Łatwy w obsłudze, popularny program narzędziowy do projektowania zestawów głośnikowych. 8. XMOS-xTime-Components Kompletne środowisko programistyczne (Windows, OS-X oraz Linux) dla mikrokontrolerów wielordzeniowych firmy XMOS. EP 1/2017 1. Atmel Studio 7 Bezpłatne, zintegrowane środowiska programistycznego firmy Microchip (Atmel), obsługującego wszystkie mikrokontrolery AVR oraz SmartAVR. 2. Atollic True Studio 7.0 Bezpłatne, zintegrowane środowisko programistyczne dla mikrokontrolerów Cortex-M. 3. Blender 2.78a for Windows Narzędzie do modelowania 3D, przydatne m.in. do tworzenia i generowania modeli elementów i podzespołów elektronicznych w formacie STEP. 4. Keil ARM MDK 5.22 Najnowsza wersja demonstracyjna popularnego środowiska ARM-MDK z IDE uVision. 5. MPLAB Mindi Analog Simulator Nowość – kompletny,
bezpłatny symulator układów analogowych firmy Microchip, bazujący na silniku SPICE. 6. Quartus Prime Lite 16.1 Najnowsza wersja bezpłatnego pakietu do projektowania FPGA, pierwsza „intelowska” wersja środowiska firmy Altera.
bibliotek SSP dla Synergy (Cortex-M). EP10/2016 1. Altera Quartus Prime v. 16 Bezpłatne środowisko projektowe dla układów FPGA firmy Altera wraz z symulatorem ModelSim oraz bibliotekami.
EP 12/2016 1. NXP Kinetis Design Studio 3.2.0 Środowisko służące do tworzenia programów dla mikrokontrolerów Kinetis.
2. Intersil FPGA Reference Design Generator Zestaw narzędzi wspomagających projektowanie systemów zasilania bazujących na przetwornicach Intersil.
2. SEGGER Embedded Studio v3.10e Środowisko IDE firmy Segger służące do tworzenia oprogramowania dla mikrokontrolerów z rdzeniem ARM.
3. Intersil Noise Estimating Calculators Dwa kalkulatory poziomów szumów, za których pomocą można określić wartości ENOB i TNC.
3. TI Code Composer Studio 6.2.0 for Windows Środowisko IDE służące do tworzenia programów dla mikrokontrolerów oferowanych przez firmę Texas Instruments.
4. Intersil Power Compass Tool Program dla Excela, który ułatwia dobór elementów do zasilaczy.
4. TI Energia 18 Środowisko IDE służące do tworzenia programów dla mikrokontrolerów MSP430 oferowanych przez firmę Texas Instruments. EP11/2016 1. Autotrax DEX 9.03 Programu do projektowania PCB, zintegrowany z edytorem schematów. 2. Diamond 3.8 32-bit for Windows Zintegrowane środowisko projektowe dla układów FPGA firmy Lattice. 3. Infineon CMSIS packs Pakiet bibliotek CMSIS dla mikrokontrolerów XMC1000 (Cortex-M0) i XMC4000 (Cortex-M4) firmy Infineon. Publikujemy także zbiory DFP dla zestawów startowych firmy Infineon. 4. Infineon DAvE Bezpłatna wersja zintegrowanego środowiska projektowego dla mikrokontrolerów XMC1000/4000 (v4.3.2). 5. Infineon XMC Pinout tool Pełna wersja graficznego „podpowiadacza” konfiguracji linii GPIO w mikrokontrolerach XMC1000/4000. 6. ON Semiconductor Narzędzia firmy ONSemiconductor: IDE + kompilator SDCC dla mikrokontrolerów z rdzeniem 8052 oraz pakiety AX MicroLab i AX RadioLab. 7. Renesas e2studio 5.1.0.0.22 Środowisko programistyczne dla mikrokontrolerów firmy Renesas z pakietem
5. Intersil Power Navigator Program narzędziowy umożliwiający zarządzanie pracą i konfigurację zasilaczy bazujących na podzespołach firmy Intersil. 6. Linear Technology LTSpice IV Popularny symulator układów analogowych, bazujący na silniku Spice. 7. Linear Technology LTSpice XVII Popularny symulatora układów analogowych, bazujący na silniku Spice. 8. Microchip MPLAB X IDE v3.40 Środowisko programistyczne firmy Microchip dla mikrokontrolerów PIC. EP9/2016 1. Atollic TrueStudio 5.5.2 Bezpłatny pakiet TrueStudio firmy Atollic dla mikrokontrolerów Cortex-M. 2. FTDI FT51 Toolchain Kompletne środowisko programistyczne dla mikrokontrolerów z rdzeniem 8051 produkowanych przez firmę FTDI. 3. FTDI FT90x Toolchain Kompletne środowisko programistyczne dla 32-bitowych mikrokontrolerów FT90x produkowanych przez firmę FTDI. 5. Linear Technology LTSpice XVII Symulator układów analogowych LT Spice firmy Linear Technology. 6. Renesas Synergy Najnowsze wersje bibliotek i programów
narzędziowych dla mikrokontrolerów z rodziny Synergy firmy Renesas.
zintegrowanego środowiska programistycznego dla mikrokontrolerów PIC32.
7. TI CodeComposer Studio 6.1.3 Kompletne środowisko programistyczne dla mikrokontrolerów i procesorów DSP firmy Texas Instruments.
EP 6/2016 1. Altera Quartus Prime Lite 16.0 Opublikowana w drugiej połowie maja wersja bezpłatnego pakietu Quartus Prime Lite z kompletem bibliotek układów FPGA obsługiwanych w wersji bezpłatnej.
EP 8/2016 1. Autotrax DEX 8.10.13 Program do projektowania płytek drukowanych. 2. Cypress PSoC Creator 3.3 CP3 Bezpłatne środowiska programistycznego PSoC Creator firmy Cypress. 3. NXP Kinetis Design Studio 3.2.0 Kompletne, dostępne bezpłatnie, środowisko programistyczne dla mikrokontrolerów Kinetis. 4. SiliconLabs Precision32 Bezpłatne środowisko programistyczne do realizacji projektów dla mikrokontrolerów z rdzeniem Cortex-M. 5. Silicon Labs Simplicity Studio 3.3 Kompletne środowisko programistyczne firmy Silicon Labs. 6. STM STUDIO STM32 Program narzędziowy ułatwiający debugowanie projektów realizowanych w mikrokontrolerach STM32. 7. STM32 CubeMX Konfigurator projektów dla mikrokontrolerów STM32 – STM32CubeMX 4.15.1. EP 7/2016 1. AC6 System Workbench for STM32 Kompletne, bezpłatne środowisko programistyczne (IDE+kompilator+debugger) dla STM32. 3. Atollic TrueSTUDIO for ARM win32 v5.5.1 32-bitowa wersja środowiska programistycznego dla mikrokontrolerów z rdzeniami ARM, wersja bezpłatna Lite 5. Lattice Semiconductor Diamond 3.7 Środowisko projektowe dla układów FPGA firmy Lattice. 6. Tina v10 Symulator układów analogowych Tina rozwijany i doskonalony przez firmę Texas Instruments.
2. IDE80 Środowisko zintegrowane z kompilatorami asemblera dla 8080, Z80, 6502, 6800 oraz 6809. Po napisaniu programu użytkownik może zasymulować działanie np. komputera KIM-1 oraz ZX Spectrum… 3. Linear technology LTSpice IV 5-2016 Symulator układów analogowych firmy Linear Technology – LT Spice. 4. Microchip MPLAB X IDE v3.30 Stacjonarne środowisko programistyczne firmy Microchip – MPLab X. 5. Renesas E2Studio 5.0 Kompletne środowisko programistyczne dla mikrokontrolerów Renesas Synergy (rdzenie Cortex-M). 6. Renesas SSP 1.1.0 Najnowsza wersja pakietu bibliotek SSP (Synergy Software Package) dla programistów mikrokontrolerów Renesas Synergy. EP 5/2016 1. Altera Quartus Prime Lite 15.1.2.193 Pakietu Quartus Prime, który może być używany w wersji Lite bez dodatkowej licencji. 2. Autotrax DEX Kompletna wersja instalacyjna środowiska projektowego dla elektroniki, przypominającego programy Autotrax i Protel Autotrax DEX. 3. NXP Kinetis Design Studio Zintegrowane środowisko dla programistów platformy Kinetis. 4. SiLabs Simplicity Studio Środowisko programistyczne dla programistów piszących aplikacje dla mikrokontrolerów EFM32, EFM8, 8051, Wireless MCU oraz Wireless Gecko SoC firmy Silicon Labs.
7. STEVAL WESU Libraries Biblioteki dla zestawu ewaluacyjnego urządzeń „ubieralnych” (wearable) STEVAL-WESU1
EP 4/2016 1. ARM MDK for STM32L0 and STM32F0 Bezpłatna, pełna wersja środowiska ARM-MDK dla mikrokontrolerów STM32F0 i STM32L0.
8. Microchip MPLAB Harmony Integrated Software Framework Najnowsza wersja
2. Atmel Studio 7.0.790 Środowisko programistyczne dla mikrokontrolerów AVR
firmy Atmel. 3. DAvE 4.2.4 Najnowsza wersja środowiska programistycznego dla mikrokontrolerów XMC1000/XMC4000 firmy Infineon. 4. Design Soft Edison Wersja demonstracyjna wirtualnego laboratorium elektronicznego z prezentacją 3D budowanych urządzeń (także na breadboardach) i zintegrowanym symulatorem działania projektowego obwodu. 5. Microchip MPLAB IDE X 3.26 Środowisko programistyczne dla mikrokontrolerów PIC10/12/16/18/32 firmy Microchip. 6. Segger Embedded Studio Nowe IDE dla mikrokontrolerów z rdzeniami ARM Cortex przygotowane przez firmę Segger. 7. TINA Design Suite v10 Wersja demonstracyjna zintegrowanego środowiska projektowego, w skład którego wchodzi symulator, edytor schematów i edytor PCB. EP 3/2016 1. AC6 System Workbench for STM32 Kompletne, bezpłatne środowisko programistyczne (IDE+kompilator+debugger) dla STM32. 2. Atollic True Studio 32-bitowa wersja środowiska programistycznego dla mikrokontrolerów z rdzeniami ARM, wersja bezpłatna Lite 3. Lattice Diamond 3.6 for Windows Środowisko projektowe dla układów FPGA firmy Lattice + podręcznik użytkownika. 4. Linear Technology LTSpice IV 2-2016 Symulator układów analogowych z silnikiem Spice. 5. Renesas Synergy Software Package Zestaw bezpłatnego oprogramowania dla mikrokontrolerów Cortex-M należących do platformy Renesas Synergy.
ELEKTRONIKA PRAKTYCZNA 3/2017
19
NIE PRZEOCZ
info
Targi Automaticon 2017 Zbliżają się targi Automaticon, a więc dobra okazja, by na żywo zobaczyć, co w polskiej branży automatyki piszczy. Swoje stoisko będzie miała również Elektronika Praktyczna, która jest patronem medialnym targów. Zachęcamy do odwiedzenia nas. Automaticon to od lat impreza chwalona głównie za możliwość pokazania się i spotkania znajomych z branży. Tak przynajmniej mówi większość wystawców. Natomiast z punktu widzenia inżynierów odwiedzających wystawę, targi to przede wszystkim szansa na zapoznanie się z nowościami rynkowymi i poznanie nowych ciekawych rozwiązań. Warto też rzucić okiem na harmonogram seminariów, prowadzonych równolegle do wystawy.
Główne tematy
Organizatorzy – prawdopodobnie chcą zwabić jak największą liczbę wystawców, coraz starają się coraz bardziej poszerzać zakres tematyczny targów. Tym razem podzielono go na 9 kategorii i w każdej z nich wyszczególniono wybrane podgrupy. Do głównych grup należą: • aparatura kontrolno-pomiarowa i elementy automatyki, • automatyzacja, • robotyzacja, • napędy, • pompy, • zawory, • armatura pomocnicza i osprzęt do pomp, zaworów i rurociągów, • elektronika przemysłowa, • laboratoryjna aparatura pomiarowa do celów przemysłowych, naukowych i dydaktycznych. Organizatorzy wyszczególnili też szereg nowości, które zgłoszone zostały jako tegoroczne ciekawostki, które będą prezentowane na Automaticonie. Naszym zdaniem, do najciekawszych z nich (z punktu widzenia
20
ELEKTRONIKA PRAKTYCZNA 3/2017
elektroników) należą bezprzewodowe urządzenia do monitoringu temperatury oraz bramki Bluetooth Smart – Ethernet firmy Efento, nowe komputery przemysłowe i bramki IoT do montażu na szynę DIN marki Axiomtek, moduły ewaluacyjne dla czujników z rodziny Amphenol Advanced Sensors, miniaturowe czujniki tlenku węgla marki Figaro Engineering, gigabitowe ekstendery ethernetowe z Power over Ethernet, nowe przekaźniki firmy ETA, najnowsze oscyloskopy serii RTO2000 marki Rohde&Schwarz oraz sondy do aparatury pomiarowej tej samej firmy oraz analizatory HIOKI. Zapowiedziano też prezentacje ogromnej ilości nowych czujników do stosowania w automatyce, systemów komunikacji i bezpieczeństwa, mierników wartości nieelektrycznych, złączy przemysłowych, a także sterowników.
Seminaria
W trakcie konferencji odbędą się liczne seminaria. Ich liczba w tym roku jest całkiem duża i łatwo znaleźć choć jeden temat, który mógłby zainteresować praktycznie każdego odwiedzającego. W tabeli 1 zebraliśmy listę wybranych tematów tegorocznych prelekcji, które mogą być najciekawsze dla naszych czytelników.
Kiedy i gdzie?
Organizatorem targów jest Przemysłowy Instytut Automatyki i Pomiarów PIAP, wraz z firmą MVM Sp. z o.o. Wydarzenie odbędzie się w tej samej lokalizacji, w której odbywa się od wielu lat, czyli w warszawskim centrum wystawienniczym EXPO XXI, przy ulicy Prądzyńskiego 12/14. W tym roku targi odbędą się w dniach od 14 do 17 marca, w godzinach od 9:00 do 17:00 (ostatniego dnia do 15:00). We wtorek, pierwszego dnia targów, tak jak i w poprzednim roku, organizowany jest dzień edukacyjny. Organizatorzy zauważyli rosnące zainteresowanie szkół i młodzieży akademickiej tym wydarzeniem – stąd kolejny raz dzień ten został specjalnie wyróżniony. Wstęp na targi jest bezpłatny. Marcin Karbowniczek, EP
Info Tabela 1. Najciekawsze z prelekcji tegorocznego Automaticonu Dzień
Sala
A
Godziny
Temat i organizator
1000 ÷ 1045
Oświetlenie LED w trudnych warunkach i w nietypowych zastosowaniach przemysłowych – możliwości, ograniczenia, przykłady.
1100 ÷ 1145 1200 ÷ 1245 1600 ÷ 1645
15 marca (środa)
B1
A
Profesjonalna telemetria GSM/GPRS i zdalna lokalizacja GPS – nowości firmy Inventia. Jerzy Białousz, Zbigniew Betkier, Inventia Sp. z o.o. Case study i panel dyskusyjny. Stanisław Rak. FINDER Polska Sp. z o.o.
1200 ÷ 1220
Oferta badań urządzeń w zakresie kompatybilności elektromagnetycznej EMC, badań bezpieczeństwa elektrycznego oraz badań środowiskowych.
Piotr Brajer, Inżynier projektu TECH-SYSTEM Group Sp. z o.o. Sp.k.
Krzysztof Trzcinka, PIAP Od innowacji do aplikacji – napędy liniowe firmy Linmot. Tomasz Płecha, MULTIPROJEKT Automatyka Sp. z o.o.
1400 ÷ 1545
Advantech Adam 3600 – iRTU w rozwiązaniach IIoT. Warsztaty z konfiguracji i oprogramowania iRTU z wykorzystaniem sprzętu Advantech.
1000 ÷ 1045
Oświetlenie LED w trudnych warunkach i w nietypowych zastosowaniach przemysłowych – możliwości, ograniczenia, przykłady.
13 00 ÷ 1345
Najnowsze rozwiązania w sterowaniu (PLC FATEK, I/O CREVIS) i wizualizacji (HMI WEINTEK) procesów przemysłowych.
1000 ÷ 1045 B1
Konrad Adamczewski. BAUMER Sp. z o.o.
W CELI, czyli o zasadach bezpieczeństwa przy budowie, instalacji i eksploatacji stanowisk zrobotyzowanych.
14 00 ÷ 1445
16 marca (czwartek)
Mikrofalowe czujniki poziomu dla produktów spożywczych, chemicznych i petrochemicznych.
1000 ÷ 1045
1300 ÷ 1345 B2
Adam Wilanowski, LEDIKO Sp. z o.o.
1100 ÷ 1145 14 00 ÷ 1445
Krzysztof Ornoch, Advantech
Adam Wilanowski, LEDIKO Sp. z o.o.
Krzysztof Gołąb i Maciej Sakowicz, MULTIPROJEKT Automatyka Sp. z o.o. Czym to poruszyć? Przegląd systemów napędowych w ofercie firmy MULTIPROJEKT. Tomasz Witek i Michał Zych, MULTIPROJEKT Automatyka Sp. z o.o. Zastosowanie programu MATLAB i Simulink w automatyce, Rafał Płatek, Marcin Piwowarczyk, Oprogramowanie Naukowo – Techniczne Sp. z o.o. Sp. k. Weryfikacja i testowanie systemów z wykorzystaniem modeli symulacyjnych, Ewelina Dziura, Technika Obliczeniowa Sp. z o.o. Nowe możliwości biznesowe z Advantech Solution Ready Platforms (SRP); Nowa strategia współpracy Advantech z partnerami IIoT. Maciej Kuczyński, Advantech
Omni3D drukuje części do polskiej Arrinery Hussarya
Obudowy lusterek, wloty powietrza – to tylko niektóre z części, które OMNI3D drukuje w 3D dla Arrinera Technology S.A. Wszystkie modele drukowane są w skali 1:1, głównie z ABSu. Modele
wykorzystywane są jako funkcjonalne prototypy, a także jako części finalne. Arrinera już od roku z sukcesem korzysta z usług OMNI3D. Inżynierowie pracujący nad supersamochodem –Arrinera Hussarya szukali optymalnego rozwiązania do wytwarzania prototypów części do swojego auta. Proces projektowania wymaga ciągłego udoskonalania elementów, zatem produkcji nie jednego, a kilku prototypów danej części. Wykonanie modelu tradycyjnymi metodami produkcji, pochłania więcej czasu i wiąże się z wysokimi kosztami wytworzenia. Tym bardziej, gdy w grę wchodzą skomplikowane geometrie i modele o wielkości powyżej 40 cm. Produkcja detalu na drukarce 3D, znacznie przyspiesza prace naszego zespołu R&D i obniża koszty wytworzenia części, co pozwala nam szybciej osiągać zamierzone cele. Ponadto - częste zmiany kształtu danego detalu nie stanowią już problemu. Kolejny model może zostać wydrukowany już w kilkanaście godzin. Omni3D jest producentem polskiej przemysłowej drukarki 3D – Factory 2.0 Production System. Od roku oferuje też swoim klientom usługi druku 3D na zlecenie. Printroom OMNI3D specjalizuje się w wielkoformatowym druku 3D realizowanym w technologii FFF (fused filament fabrication). Firma świadczy usługi dla profesjonalistów oczekujących wydruków o najwyższej jakości i wytrzymałości. Druki realizowane są na profesjonalnych drukarkach 3D – Factory 2.0 ELEKTRONIKA PRAKTYCZNA 3/2017
21
NIE PRZEOCZ Production System. To, co wyróżnia firmę, to możliwość druku dużych elementów (do 500 mm w każdej osi) z wytrzymałych materiałów termoplastycznych, jak – ABS-42, ASA-39, PC-ABS-47, PET-G-32 i HIPS-20. Oferowane systemy do druku przestrzennego idealnie sprawdzają się w produkcji części zamiennych do maszyn i linii produkcyjnych, produkcji narzędzi i oprzyrządowania, procesie wytwarzania funkcjonalnych prototypów oraz w produkcji nisko-seryjnej i personalizowanej. Firma oferuje usługi doradcze, wdrożeniowe, serwisowe, szkolenia oraz druk 3D na zlecenie. Do grona klientów należą firmy, posiadające linie produkcyjne, usługodawcy, a także projektanci czy architekci. Omni3D powstała w 2013 roku w Poznaniu. Spółka jest laureatem wielu nagród dla młodych, polskich firm i uczestniczy w programie Polski Czempion, przeznaczonym dla przedsiębiorstw działających na rynkach zagranicznych. Spółka Arrinera S.A to polski producent samochodów sportowych. Najnowszy samochód wyścigowy Arrinera Hussarya GT można obecnie już zamawiać a jego specyfikacja jest dostępna na stronie producenta – www.arrinera.com. Spółka zależna – czyli Arrinera Technology S.A. jest wyspecjalizowana w opracowywaniu nowoczesnych technologii związanych z elektroniką, aktywną aerodynamiką i kompozytami, które są wykorzystywane w supersamochodzie Arrinera Hussarya.
CSI – 25 lat na rynku!
Rok 2017 jest dla firmy CSI szczególny, ponieważ że w tym roku obchodzi ona jubileusz 25-lecia swojej działalności. Na początku lutego 1992 roku powstała firma VMEpro, która później została
22
ELEKTRONIKA PRAKTYCZNA 3/2017
przekształcona w CSI. Działalność rozpoczynała od dystrybucji komputerów przemysłowych, zgodnych ze standardem magistrali VME. W dniu dzisiejszym CSI jest jedną z polskich firm oferujących komputery i pamięci przemysłowe, szafy, serwery i klimatyzatory czy specjalistyczny sprzęt informatyczny dla rozwiązań wojskowych czy medycznych wiodących na świecie marek. Misją firmy jest dążenie do optymalizacji oferty, zgodnej z koncepcją One-Stop-Shop. Stara się przy tym podążać za różnymi trendami, patrzeć w rożnych kierunkach, kreatywnie podchodząc do wyzwań, które rzuca jej współczesny rynek. W swojej działalności firma nie skupia się na wybranych branżach, ale łączy rożne projekty i usługi starając się utrzymać pozycję kompleksowego dostawcy. 1992 Powstanie firmy VMEpro. 1996 Zmiana nazwy firmy na CSI Beata Marzec. 1998 Wyodrębnienie się Działu Flash. Rozpoczęcie współpracy z firmą SanDisk. 1999 Wyodrębnienie się Działu Obudów Przemysłowych oraz Działu Technicznego. 2001 Powstanie Działu Komputerów Przemysłowych. 2006 Rozszerzenie oferty Działu Flash o produkty z branży foto i energia. Wyodrębnienie się Działu Pamięci Przemysłowych. 2007 Wyróżnienie w Rankingu Najzdrowszych Przedsiębiorstw Gazety Prawnej „Wehikuły czasu”. 2008 Wyróżnienie w rankingu Najlepszych Firm Regionalnych „Gazety Bankowej”. Wyróżnienie Dun&Bradstreet za wyniki 2007 r. Wyróżnienie w rankingu „Puls biznesu” Gazele Biznesu 2008. 2009 Wyróżnienie w rankingu „Puls biznesu” Gazele Biznesu 2009. Wyróżnienie w rankingu Diamenty Forbesa 2009. Wyróżnienie w rankingu Dun & Bradstreet Przejrzysta Firma 2009. 2010 Wyróżnienie w rankingu Diamenty Forbesa 2010. 2012 Rozpoczęcie wdrażania koncepcji TPiM – pełnej partycypacji w zarządzaniu. Obchody 20-lecia firmy. 2013 Przekształcenie formy prawnej firmy na spółkę cywilną Zmiana nazwy na CSI Beata Marzec, Bogdan Marzec, Andrzej Zasucha spółka cywilna. 2016 Przekształcenie formy prawnej firmy na spółkę jawną. Zmiana nazwy na CSI B. Marzec, B. Marzec, A. Zasucha spółka jawna. 2017 Wyróżnienie w rankingu „Puls biznesu” Gazele Biznesu 2016. Z okazji jubileuszu 25-lecia składamy życzenia sukcesów i dalszej owocnej działalności!
Nowe potrzeby klientów na rynku elektroniki w medycynie
Pojawienie się systemów EDM (Elektronicznej Dokumentacji Medycznej) i postęp w obrazowaniu wysokiej rozdzielczości w dziedzinie prześwietleń rentgenowskich czy ultrasonografii stworzyły
Info ogromne ilości informacji, których zagospodarowanie nie jest łatwe. Ostatnio w placówkach medycznych coraz częściej wykorzystuje się urządzenia przenośne do korzystania z tych danych, ale łatwo je można skraść, co powoduje powstanie ryzyka utraty bądź wycieku krytycznych danych. Jedną z dróg uniknięcia tych problemów jest zastosowanie infrastruktury bazującej na urządzeniach typu „thin client”. Terminale te są podobne do tradycyjnych komputerów stacjonarnych ale zamiast przechowywać dane na wbudowanym dysku, są one pobierane na żywo z sieci. Systemy tego typu można wygodnie wieszać na ścianach wraz z ekranami (także dotykowymi czy o dużej rozdzielczości). Znajduje to potwierdzenie w najnowszym raporcie dotyczącym bezpieczeństwa IT, przygotowanym przez firmę Imprivata. Wiele wskazuje na to, że w najbliższych latach rynek medyczny będzie bardzo chłonny na tego typu rozwiązania. Inżynierowie chcący skorzystać z okazji i wykonać tego typu systemu, powinni rozpocząć prace od poszukania odpowiedniej platformy, która spełnia wymagania stawiane przed takimi systemami. Właśnie z myślą o takich zastosowaniach firma AMD wprowadziła niedawno na rynek najnowsze wersje (trzecią generację) procesorów serii G, przeznaczonych do systemów wbudowanych. Więcej na ten temat oraz odnośnie możliwości ich zastosowania można znaleźć pod adresem https://goo.gl/Wg95um
w niektórych kluczowych europejskich krajach. Organizacje edukacyjne i osoby prywatne będą miały możliwość zakupu minikomputerów BBC micro:bit od resselerów w Niemczech, Francji, Szwecji, Holandii, Finlandii i we Włoszech.
Innowacyjny program kształcenia Siemensa
Politechnika Lubelska jest pierwszą w Polsce uczelnią realizującą innowacyjny program Siemens Mechatronic System Certifcation Program (SMSCP) mający na celu przekazanie praktycznej wiedzy, przydatnej w zawodzie we współczesnych nowocześnie zarządzanych zakładach produkcyjnych, wyprzedzających konkurencję pod względem adaptacji technologii cyfrowych. Podczas szkolenia największy nacisk kładziony jest na praktyczne zrozumienie działania układów mechatronicznych oraz umiejętność radzenia sobie z problemami technicznymi. Opiekunem programu jest Mirosław Kuligowski z firmy Siemens. „SMSCP jest innowacyjnym programem szkolenia zapewniającym kompleksowe podejście do edukacji w duchu koncepcji Industry 4.0. Nauczane w ramach programu prowadzone jest w sposób holistyczny, a jego elementy opierają się na wiedzy z zakresu fizyki, układów elektrycznych, mechaniki i automatyki w powiązaniu z aktualnymi
Farnell element14 wyłącznym dystrybutorem mikrokomputera BBC micro:bit
Dnia 25 stycznia 2017 r. w Londynie firma element14, dystrybutor rozwiązań rozwojowych i fundacja Micro:bit Foundation podpisały globalną umowę na wyłączność dotyczącą produkcji i dystrybucji urządzenia BBC micro:bit. Umowa ta jest następstwem sukcesu, jaki odniósł program edukacyjny zrealizowany przez BBC w 2016 r., w ramach którego rozdano milion minikomputerów micro:bit w celu ułatwienia nauki w szkołach. Minikomputer BBC micro:bit to praktyczne i łatwe w użyciu urządzenie wprowadzające w świat technologii, wyposażone w funkcje zapewniające nieograniczoną kreatywność. Strona internetowa dedykowana urządzeniu dostępna jest pod adresem, www.microbit. org, można na niej znaleźć różne zasoby i samouczki pozwalające użytkownikom BBC micro:bit wykorzystać w pełni jego potencjał. Umowa pozwoli firmie element14 nawiązać współpracę z organizacjami edukacyjnymi i powtórzyć sukces brytyjskiego programu na całym świecie, wspierając rozwój kolejnego pokolenia inżynierów poprzez umożliwienie im tworzenia programów już od najmłodszych lat. Zgodnie z nową umową i w odpowiedzi na niespotykany popyt w całej Europie, będący konsekwencją brytyjskiego programu, element14 udostępnia zapas minikomputerów BBC micro:bit resselerom ELEKTRONIKA PRAKTYCZNA 3/2017
23
NIE PRZEOCZ
trendami, ale mają przede wszystkim aspekt praktyczny – przekazują wiedzę potrzebną obecnie w zakładach przemysłowych. Jednocześnie program bazuje na ogromnym doświadczeniu Siemensa w procesie kształcenia własnych pracowników, które od wielu lat z sukcesem stosowane jest w strukturach firmy. Osoba otrzymująca certyfikat będzie wiedziała jak w samodzielny i efektywny sposób rozwiązać wiele problemów występujących w zakładach przemysłowych, będzie miała również możliwość uzyskania kompetencji projektanta systemów mechatronicznych” – mówi Mirosław Kuligowski. Największy nacisk w programie kładziony jest na zdobycie praktycznych kwalifikacji oraz aktualizację wiedzy o współczesnych systemach mechatronicznych, które niezbędne są w pracy inżyniera. Realizowany przez Politechniką Lubelską projekt edukacyjny oznacza ścisłą współpracę z Akademią Techniczną Siemensa w Berlinie. Ukończenie programu kształcenia gwarantuje uzyskanie certyfikatu. Warunkiem koniecznym włączenia uczelni lubelskiej do programu kształcenia Siemens z zakresu SMSCP było odbycie przez wykładowców biorących udział w projekcie szkolenia w Berlinie obejmującego uzyskanie wymaganych kwalifikacji. Certyfikowane jest także laboratorium, gdzie prowadzone są zajęcia i bazuje ono na realnym układzie mechatronicznym, z którym studenci pracują. Kurs może być zintegrowany z programem nauczania albo być oferowany w formie zajęć fakultatywnych dla studentów lub pracowników przemysłu chcących podnieść swoje kwalifikacje. Dzięki programowi możliwe będzie także prowadzenie projektów badawczo rozwojowych, co przyczyni się z pewnością do obrony większej liczby dysertacji na uczelni. „W programie 70-80% procent zajęć to zajęcia praktyczne. Wykorzystywane są różne systemy m. in. RFID, systemy wizyjne wraz z najnowszymi sterownikami Simatic S7-1500 współpracującymi z robotem przemysłowym. Całość nauczania podzielona została na 3
poziomy obejmujące 270 godzin kształcenia każdy. Nauczanie powinno umożliwić studentowi kontakt z urządzeniami wykorzystywanymi na obiektach przemysłowych. Oczywiście digitalizacja zgodnie z koncepcją Industry 4.0 pozwala na korzystanie z różnego rodzaju narzędzi symulacyjnych, jednak odwzorowanie rzeczywistej linii produkcyjnej i zastosowanie wraz z tymi elementami obecnie używanego sprzętu w praktyce, np. sterowników ma kluczowe znaczenie w naszym programie i całym procesie kształcenia pozwalając w praktyczny i interesujący dla odbiorcy sposób przekazywać specjalistyczną wiedzę.” – kontynuuje Mirosław Kuligowski. Realizowany przez Politechnikę Lubelską projekt jest fragmentem większej całości – Akademii Siemensa. To właśnie Akademia Siemensa opracowała certyfikowany, praktyczny i międzynarodowy program kształcenia z dziedziny mechatroniki, który jest obecnie wprowadzany na uczelniach wielu krajów świata. Program zajęć dołączany jest na ogół do toku nauczania studentów uczelni technicznych, ale może być prowadzony także przez inne jednostki dydaktyczne. Warto zaznaczyć, że także obiekt, na którym prowadzone jest nauczanie poddawany jest procesowi weryfikacji. Wprowadzenie zajęć z mechatroniki na uczelnię wymaga również certyfikacji minimum 2 osób prowadzących zajęcia. Programem nauczania i studentami, którzy otrzymają certyfikat ukończenia kursu zainteresowane są lokalne przedsiębiorstwa.
Sterownik EVCC Basic do stacji ładowania
W ofercie Phoenix Contact można znaleźć podstawowe sterowniki do stacji ładowania pojazdów elektrycznych. Są one zgodnie z normą IEC 61851 (komunikacja poprzez CP i PP, ryglowanie i zwolnienie wtyczki ładowania). Pozwalają w kilka minut sposób skonstruować stację ładowania auta – w najprostszej wersji wystarczy kabel z wtykiem do pojazdu, stycznik AC i obudowa. Sterownik EVCC dostępny jest w dwóch wariantach – w obudowie możliwej do umieszczenia na szynie DIN oraz w postaci gołej płytki drukowanej, którą można zamontować w obudowie w dowolny sposób. Konfigurowanie odbywa się za pomocą przełączników DIP oraz interfejsowi Modbus RTU. Urządzenie można także zintegrować w bardziej rozbudowanym systemie, gdzie kilka z nich może być kontrolowane uniwersalnym sterownikiem przemysłowym. Dzięki temu można stworzyć zaawansowaną strukturę stacji ładowania. Więcej informacji jest dostępne pod adresem https://goo.gl/VwcRAe
24
ELEKTRONIKA PRAKTYCZNA 3/2017
PRENUMERUJ za darmo lub półdarmo Ceny prenumerat standardowych:
3 pierwsze numery
za DARMO
prenumerata roczna
e-prenumerata roczna
176 zł
66,30 zł
w rocznej prenumeracie startowej
prenumerata dwuletnia
e-prenumerata dwuletnia
256 zł
109,20 zł
Wpłać 144 zł. Numery 4�6/2017 prześlemy Ci gratis, a jeśli zdecydujesz, że nie chcesz otrzymywać kolejnych wydań i poinformujesz nas o tym przed 15 czerwca 2017, zwrócimy Ci całą wpłatę.
1 wydanie gratis 8 wydań gratis
zniżka 15%
zniżka 30%
prenumerata łączona: prenumerata papierowa
do 50% zniżki
(startowa, standardowa lub ze zniżką lojalnościową)
+ równoległa e-prenumerata EP ze zniżką 80% ▪ roczną e-prenumerata równoległa ▪ dwuletnia e-prenumerata równoległa
za lojalność
15,60 zł 31,20 zł
Prenumerujesz nieprzerwanie od minimum roku? Przedłużaj prenumeratę ze zniżką lojalnościową (po zalogowaniu na www.avt.pl)
Prezent za zaprenumerowanie EP Powiadom nas, którą płytę wybierasz (mail – [email protected], tel. – 22 257 84 22): Camerata Brasil „Bach in Brazil” czy Monsieur Periné „Hecho a mano”
prenumerata
roczna
standardowa
176 zł zniżka 8%
ze zniżką lojalnościową – prenumerujesz nieprzerwanie od:
roku
160 zł zniżka 16%
2 lat
144 zł zniżka 25%
3 lat 128 zł zniżka 33% 5 lat
dwuletnia
256 zł zniżka 33%
224 zł zniżka 41% 192 zł zniżka 50%
Wykupiłeś prenumeratę EP?
▪ ▪ ▪
z każdym numerem swojej prenumeraty otrzymasz DVD Niezbędnik Elektronika masz prawo do rabatu do 50% na www.sklep.avt.pl i www.UlubionyKiosk.pl pomyśl o Klubie AVT (jeśli prenumerujesz minimum 2 nasze magazyny, możesz co miesiąc otrzymywać bezpłatne czasopisma – szczegóły na www.avt.pl/klub oraz www.sklep.avt.pl zakładka Rabaty) Jeśli zamawiasz prenumeratę EP po raz pierwszy lub jeśli zamówisz ją po zalogowaniu na www.avt.pl, otrzymasz kody na bezpłatne e-wydania dowolnych naszych czasopism
Nie lubisz płacić wszystkiego na raz? Załóż „teczkę” na www.UlubionyKiosk.pl/teczka lub zadysponuj stałe zlecenie bankowe na www.avt.pl/szb
jeśli jesteś nowym Prenumeratorem
jeśli przedłużasz prenumeratę
krok 1
zamów prenumeratę EP na www.avt.pl
zaloguj się na www.avt.pl
krok 2
utworzymy Twoje konto Prenumeratora
przedłuż swoją prenumeratę
krok 3
po odnotowaniu wpłaty przyznamy Ci pulę kodów na darmowe e-wydania do wykorzystania na www.UlubionyKiosk.pl (kody będą dostępne po zalogowaniu na www.avt.pl
▪ wpłacając na konto: AVT Korporacja sp. z o.o., ul. Leszczynowa 11, 03�197 Warszawa, BGŻ BNP Paribas S.A. 97 1600 1068 0003 0103 0305 5153
PROJEKTY
Moduł komfortowych kierunkowskazów Działanie modułu komfortowych kierunkowskazów polega na wygenerowaniu trzech pełnych mignięć kierunkowskazem, gdy kierowca auta poda krótki impuls włącznikiem kierunkowskazów. W nowszych autach jest to funkcja standardowa – w starszych można taką funkcjonalność łatwo dodać, dołączając opisywany moduł. Rekomendacje: moduł może przydać się w niejednym samochodzie, poprawiając komfort jego użytkowania.
AVT-5454 AVT-3095 AVT-5395 AVT-1599
* Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
26
ELEKTRONIKA PRAKTYCZNA 3/2017
NC
D1 4007
R2 2.2k
T1 BC546B
NO
REL1
01 PRG
R3 150k
LED1
VM GND
GND
R4 150k
GND
01
1 2
REL1
R1 2.2k
CON1
C
PRG
O2 CON2
IN1
VM NC
AVT-1850
reakcje na sytuacje szczególne. Jeśli w trakcie cyklu trzech mignięć wystąpi dodatkowy impuls, czyli kierunkowskazy zostaną załączone przez kierowcę (nie przez moduł), wtedy cykl zostanie przerwany. W praktyce chodzi o to, aby pierwsza krótka „strzałka” rozpoczynała cykl trzech mignięć, a kolejna w trakcie cyklu, w tym samym kierunku przerywała proces. Kolejna sytuacja szczególna ma miejsce, jeśli w trakcie cyklu trzech mignięć wystąpi
Kontroler oświetlenia przyczepy ciągnika rolniczego (EP 2/2016) Automatyczny wyłącznik zasilania do instalacji samochodowej (EP 8/2015) Automatyczny zmierzchowy przełącznik świateł dziennych na mijania (EP 4/2015) Automatyczny sterownik świateł do jazdy dziennej (EP 5/2014) Komputer samochodowy (EdW 4/2014) TIDex – komputer do samochodów z silnikiem Diesla (EP 5/2013) Softstart do żarówek samochodowych H7 (EP 11/2010)
1
Projekt 226
2
(wymienione artykuły są w całości dostępne na FTP)
1
Podstawowe informacje: yyNapięcie zasilania 9...18 V DC. yyMały pobór prądu – poniżej 1 mA w stanie czuwania. yyŁatwy montaż w samochodzie. yyPłytka o wymiarach 58 mm×42 mm. yyPasuje do obudowy Z68U. Projekty pokrewne na FTP:
Urządzenie zamontowane w instalacji auta powoduje wygenerowanie 3 mignięć kierunkowskazem. Pierwsze mignięcie kierunkowskazów, które wyzwala cały proces, wykonuje kierowca auta. Nie musi to być pełne migniecie, wystarczy impuls o czasie około 0,2 sekundy. Urządzenie dopełni to mignięcie do pełnego cyku a potem wykona kolejne dwa mignięcia. Oprócz funkcji podstawowej, moduł „przewiduje” również
2
DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb W ofercie AVT* AVT-1945
impuls na kierunkowskazach po przeciwnej stronie – kierowca zmienił kierunek manewru. Wtedy również aktualny cykl zostaje przerwany i jednocześnie rozpoczyna się cykl po przeciwnej stronie. Ostatnia sytuacja szczególna to taka, gdy zaświecą się kierunkowskazy w obu kierunkach. Wtedy przerywany jest każdy trwający cykl i nie jest podejmowana żadna dodatkowa akcja. Zatem mignięcie światłami awaryjnymi na znak „dziękuję” lub zamknięcie auta pilotem nie uruchomi urządzenia.
Budowa i montaż
Schemat ideowy modułu pokazano na rysunku 1. Na schemacie można wyróżnić blok zasilania ze stabilizatorem IC1, dwa bliźniacze bloki wykonawcze z przekaźnikami REL1 i REL2 oraz blok sterujący z mikrokontrolerem IC2. Najważniejszego bloku urządzenia nie widać na schemacie
Rysunek 2. Schemat montażowy modułu komfortowych kierunkowskazów – jest to program sterujący, zawarty w pamięci mikrokontrolera. Ze względu na nieskomplikowaną budowę montaż modułu również nie jest skomplikowany i wymaga podstawowego doświadczenia w lutowaniu. Znacznie więcej uwagi i pracy wymaga zamontowanie płytki w obudowie i włączenie jej do instalacji samochodu oraz zabezpieczenie przed wstrząsami, wilgocią i innymi trudnymi warunkami środowiskowymi. Każdy element i każdą czynność należy wykonać solidnie, ponieważ w przeciwnym wypadku narazimy się na awarię. Zanim jednak moduł zostanie zamontowany na stałe, warto skontrolować poprawność działania, dołączając go na krótko. Moduł wymaga jedynie doprowadzenia zasilania oraz obwodu lewego i prawego kierunkowskazu, dzięki czemu dołączenie do instalacji auta jest stosunkowo łatwe. Sygnały złączy CON1 i CON2 są opisane na płytce. Zasilanie modułu należy doprowadzić z dowolnego obwodu, w którym napięcie występuje po przekręceniu kluczyka w stacyjce. Zapewne obwód będzie zabezpieczony bezpiecznikiem, więc może zajść konieczność
wymiany bezpiecznika na taki z większym prądem znamionowym, ponieważ zasilanie świateł kierunkowskazów, w trakcie pracy modułu, będzie pobierane z tego obwodu. Podłączenie do kierunkowskazów można łatwo zrealizować np. przy złączach reflektorów (nawet tylnych). Ważne, aby dołączyć się do „plusów” obu stron. Warto wspomnieć, że sam moduł pobiera znikomy prąd. Dzięki zastosowaniu energooszczędnego stabilizatora oraz dzięki temu, że program sterujący wyłącza nieużywane bloki funkcjonalne mikrokontrolera i kiedy to możliwe, przełącza go w tryb uśpienia, pobierany prąd nie przekracza 1 mA.
Konfigurowanie
Czasy cyklu migania kierunkowskazów są podobne we wszystkich pojazdach, jednak nie są identyczne. Domyślnie moduł ma wstępnie zaprogramowane czasy cyklu migania. Aby dopasować moduł do częstotliwości migania kierunkowskazu samochodu, w którym ma być zainstalowany, należy przeprowadzić nieskomplikowaną konfigurację. W tym celu, po dołączeniu do instalacji auta i włączeniu zasilania modułu, założyć zworkę na szpilki opisane PRG. Następnie włączyć na stałe jeden kierunkowskaz lewy lub prawy, ale nie oba – nie światła awaryjne. W tym czasie urządzenie mierzy parametry cyklu migania i je zapamiętuje. Po 4–5 mignięciach konfiguracja zakończy się, co zostanie zasygnalizowane długim mignięciem obu kierunkowskazów. Można wtedy wyłączyć załączony kierunkowskaz i zdjąć zworkę ze szpilek PRG – urządzenie jest gotowe do pracy. KS
REKLAMA
POLECANY PRODUKT Electronic Water – uniwersalny preparat do mycia i czyszczenia Redestylowana, dejonizowana, ultra czysta woda dla elektroniki. Woda o ogromnej rezystancji i niezwykle małej przewodności (poniżej 0,1 µS). Idealna do przepłukiwania płytek PCB po myciu w myjkach ultradźwiękowych oraz do mycia elektroniki po różnorodnych, rozpuszczalnych w wodzie zalaniach typu: soki, kawa, herbata itp. Rozpuszcza i wymywa substancje powodujące utlenianie (korozję), w pełni regeneruje świeżo zalany sprzęt. Polecana do rozcieńczania wodnych koncentratów płynów do myjek ultradźwiękowych. Dostępny w pojemnikach: 500 ml, 1000 ml, 5000 ml, 20000 ml
Microsonic Clean PCB K2 – płyn do myjek ultradźwiękowych Profesjonalny, wodny, niepalny płyn do szybkiego czyszczenia płytek drukowanych w myjkach ultradźwiękowych. Usuwa różnorodne rodzaje zanieczyszczeń po lutowaniu, doskonały do usuwania zalań nie tylko płynami rozpuszczalnymi w wodzie. Idealnie usuwa zanieczyszczenie eksploatacyjne: kurz, oleje, sadze, zanieczyszczenie organiczne i mineralne. Przy niewielkich zabrudzeniach płyn Microsonic Clean PCB K2 można rozcieńczyć w stosunku 1 część płynu do 1…5 części ultra czystej wody Electronic Water. Dostępny w pojemnikach: 500 ml, 1000 ml, 5000 ml, 20000 ml
ELEKTRONIKA PRAKTYCZNA 3/2017
27
PROJEKTY
Pogłos analogowy Po wzmocnieniu sygnału i korekcie w funkcji amplitudy w kompresorze, czas na modyfikację sygnału w dziedzinie czasu. Podstawowym efektem spotykanym już kilkadziesiąt lat temu był reverb (pogłos) sprężynowy. Jego zadaniem jest symulowanie odbić dźwięku w pomieszczeniu. Nadaje to – w zależności od zastosowania – wrażenia przestrzenności i wzmocnienia brzmienia pojedynczego instrumentu lub wokalu poprzez zmiksowanie sygnału obrobionego „Wet” z sygnałem nieprzetworzonym „Dry”. Rekomendacje: pogłos może być używany niezależnie lub stanowić część domowego studia nagrań. Przedstawiony pogłos jest kolejnym, „czysto” analogowym elementem toru domowego studia nagrań. Sercem układu jest pokazana na fotografii 1 sprężyna pogłosowa. Sprężyna pogłosowa to nieskomplikowany przetwornik elektromechaniczny, mający dwie cewki: wejściową – nadawczą i wyjściową – odbiorczą. Pomiędzy cewkami rozpięta jest sprężyna (lub zestaw sprężyn), której końce są zaopatrzone w niewielkie magnesy stałe. Są one wsunięte do wnętrza cewek pełniąc funkcję ich rdzeni. Po doprowadzeniu do cewki wejściowej sygnału elektrycznego (akustycznego) sprężyna zostaje wprawiona w drgania, które z pewnym opóźnieniem, zależnym od parametrów sprężyny, transmitowane są do cewki odbiorczej, gdzie zmieniające się pole magnetyczne jest przetwarzane na napięcie. Każde wymuszenie powoduje powstawanie tłumionych oscylacji, które po przetworzeniu na prąd, odpowiadają odbiciom pierwotnego wymuszenia, symulując zjawisko pogłosu. Schemat ideowy układu pogłosu pokazano na rysunku 3. Do gniazda wejściowego IN
28
ELEKTRONIKA PRAKTYCZNA 3/2017
jest doprowadzony sygnał DRY. Podobnie jak w pozostałych modułach, sygnał BYP (bypass), doprowadzony do złącza BYP, służy do przełączenia sygnału DRY bezpośrednio na wyjście OUT pogłosu, gdy urządzenie jest nieaktywne. Po dopasowaniu poziomu wejściowego we wzmacniaczu U1-1 (potencjometr LEV) sygnał jest rozdzielany i doprowadzony kolejno do drivera sprężyny pogłosowej U2 i miksera sumującego DRY/ WET. Sygnał DRY jest doprowadzony do drivera sprężyny. Potencjometr DRIVE umożliwia zmianę poziomu sygnału wejściowego wzmacniacza sterującego cewką nadajnika sprężyny pogłosowej. Ze względu na niską impedancję zastosowanej sprężyny (150 V), wzmacniacze operacyjne dla zwiększenia prądu wyjściowego pracują w układzie sumującym ich prądy wyjściowe na wspólnym obciążeniu. Potencjometr montażowy DRIVE0 umożliwia dopasowanie poziomu sygnału, aby na wyjściu sprężyny uzyskać niezniekształcony sygnał o maksymalnym poziomie. Sygnał z cewki odbiorczej po dopasowaniu (rezystor R9, kondensator C5) jest
DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb
Podstawowe informacje: y Pogłos czysto analogowy, wykonany z użyciem przetwornika elektromechanicznego. y Łatwe dopasowanie do przetworników o różnych parametrach. y Doskonały do współpracy z mikserem DRY/WET. y Dwustronna płytka drukowana o wymiarach 89 mm×46 mm. y Zasilanie ±15 V DC/100 mA. Projekty pokrewne na FTP: (wymienione artykuły są w całości dostępne na FTP)
* Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
Rysunek 2. Schemat montażowy pogłosu analogowego doprowadzony do dwustopniowego, niskoszumowego wzmacniacza napięciowego z układem U3 (SSM2135). W drugim stopniu jest możliwa regulacja wzmocnienia, aby zapewnić równe poziomy sygnałów DRY/WET na wejściu do miksera efektowego. Mikser wykonano z użyciem układu U1-2. Potencjometry WET/DRY umożliwiają ustawienie proporcji sygnałów. Potencjometr DRY0 umożliwia ustawienie wzmocnienia jednostkowego toru. Do złącza PWR jest doprowadzone zasilanie ±15 V/100 mA. Dioda świecąca INL sygnalizuje włączenie układu w tor sygnału. Mikser zmontowano na niewielkiej płytce drukowanej. Jej schemat montażowy pokazano na rysunku 2. Poza płytką znajduje się przełącznik BYPASS i sprężyna pogłosowa. Po poprawnym zmontowaniu, którego sposób jest typowy i nie wymaga opisywania, układ należy wyregulować. Z rezystorami o wartościach podanych na schemacie układ współpracuje ze sprężyną Zwe=150 V/Zwy=1500 V. Po korektach jest możliwa współpraca ze sprężynami z zakresu 200…600 V. Dla sprężyn o impedancji wejściowej 600 V należy dobrać rezystor R6 z zakresu ok. 10…13 kV, a rezystor R2 – 220…390 V. Dokładne wartości należy ustalić eksperymentalnie. Rezystancję R9
i pojemność C5 należy skorygować zgodnie z zaleceniami producenta. Czułość układu można dostosować do cewki wyjściowej poprzez zmianę rezystorów R12 i R15. Jeżeli nie ma błędów montażowych, do wejścia układu należy przyłączyć generator przebiegu sinusoidalnego o częstotliwości 1 kHz i napięciu 0,775 Vrms. Wyjście należy obciążyć rezystorem 10 kV i dołączyć do oscyloskopu. Potencjometry ustawić w następujący sposób: DRY ustawić w prawe skrajne (DRY = 100%), WET w lewe skrajne (WET = 0%), REKLAMA
ELEKTRONIKA PRAKTYCZNA 3/2017
29
R19 470k CE9 47uF +
DRY0 2k0
0.1uF V15P
C12
0.1uF V15P
C4
R4 220k
U2 NE5532
2 3 2
DRIVE 100kA
C1 47pF
U2 NE5532
7 6 5
R7
22R
0.1uF 1
V15N C3 CE3 10uF
CE6 10uF R15 3k3
CE4 10uF
C6 220pF 15k R12 3k3 C5 2.2nF
R8 22R R6 3k3
33R 100R
1 +
CE2 10uF
WET0 20k
1 R13 220k R11
R10 220k R9 2k2
Reverb
REVERB AMC2BF2
sprawdzic fazy R2
3
25kB LEV
3 2
1
3
DRIVE0
10k
R3
R5
C2 47pF 1
U1 SSM2135
47k
R14
C7
220pF
3
V15N
0.1uF
C9
0.1uF 7 5 6 1 3 2
U3 SSM2135
OUT IN
C– 10
NC2 9 CM2 8 NO2 7
+
1 C+
2 NC1 3 CM1 4 NO1
10k
3
2 R1 47k
1
8
RL1
10k
2 WET 100kA CE7 10uF + U3 SSM2135
CE5 10uF + OUT
2 1
4
4 CE1 47uF +
8
2
2 1
4
IN
2
Rysunek 3. Schemat ideowy pogłosu analogowego
8
1
AZ850
4
V15P
3
1N4148
U1 SSM2135 6 5 R17
2 DRY 100kA
V15P C8
3
8
D1 1N4148
4
+
10k
0.1uF 7
V15N C11
1 3 CE8 10uF
10k
R16
1 2 3
2
8
D2
4
BYP 1 2
9k1
R18
C10 47pF +
CE10 47uF
V15N
CE11 47uF + V15P PWR
2
R20
+
+
3
1
1
BYPASS 5MS1S102
3
INL
1
ELEKTRONIKA PRAKTYCZNA 3/2017
4
30
8
2
DRIVE w lewe skrajne położenie (DRIVE = 0%), LEV w położenie środkowe. Po włączeniu układu przełącznikiem BYPASS powinna zaświecić się dioda INL. Potencjometrem LEV0 należy ustalić identyczny poziom sygnału wejściowego i wyjściowego (wzmocnienie statyczne 1 V/V), aby przełączanie BYPASS nie zmieniało poziomu sygnału. Następnie skręcić potencjometr DRY=0% (w lewo), WET=100% (w prawo), Drive=100% (w prawo). Do wyjścia U3-1 pin 1 dołączyć oscyloskop i potencjometrem montażowym DRIVE0 ustawić maksymalny niezniekształcony (obcinanie) sygnał wyjściowy. Należy zwrócić uwagę na izolację sprężyny od drgań i pól magnetycznych mogących uniemożliwić lub utrudnić regulację. Uwaga dotyczy też ostatecznego montażu sprężyny, którą należy umieścić możliwie daleko od pól magnetycznych, np. odsunąć od transformatora zasilającego, zastosować odpowiednie ekranowanie obudowy i przewodów połączen iow ych, a w wypadku sprężyn w metalowych obudowach, połączenie masy obudowy z masą układu. Podczas montażu koniecznie trzeba używać gumowych tłumików wibracji (dołączonych w komplecie do sprężyny). Wybierając typ spręż y ny, podyktowany m.in. czasem pogłosu, należy zwrócić uwagę, aby przet wor n i k wejściowy nie był połączony z masą obudowy – większość spręży n umożliwia ewentualną korektę połączeń poprzez odpowiednie przelutowanie zwór. Inaczej wzmacniacz sterujący nie będzie działał poprawnie. Ostatnią regulacją w układzie jest regulacja wzmocnienia toru WET. Przy potencjometrach DRIVE=100%, DRY=0% i WET=100% należy ustawić jednakowy poziom sygnału wejściowego i wyjściowego potencjometrem montażowym WET0. Tak wyregulowany układ jest gotowy do pracy. Pozostaje tylko życzyć przestrzennego brzmienia! Adam Tatuś, EP
OUT
PROJEKTY
PROJEKTY
Generator DDS na zakres 1 Hz…40 MHz z wobulatorem (2) W poprzednim artykule opisano warstwę sprzętową generatora DDS oraz zasadę jego działania. W bieżącym podano uwagi odnośnie do sposobu jego montażu oraz uruchomienia. Omówiono również oprogramowanie sterujące. Układ generatora należy zmontować na dwóch płytkach drukowanych, których schematy montażowe pokazano na rysunkach 11 i 12. Na płytce głównej znajduje się m.in. zasilacz generatora, na panelu jego sterowanie. Na fotografiach 13…15 pokazano szczegóły montażu obu płytek, a na fotografii tytułowej i na fotografii 16 organizację panelu przedniego i tylnego, dla których projekty zastosowanych maskownic opisów przedstawiono na rysunku 17. Montaż elementów rozpoczynamy od elementów najniższych (rezystory, dławiki i diody) i kolejno montujemy elementy coraz wyższe (podstawki pod układy scalone, kondensatory, potencjometry, tranzystory i wszelkie elementy łącznikowe). Rozsądne wydaje się zmontowanie i uruchomienie najpierw płytki głównej (poziomej) i przetestowanie poprawności pracy bloku zasilającego ze stabilizatorami liniowymi U1
i U2, dostarczającego napięcia +5 V i +9 V dla całego przyrządu. Stabilizatory U1 i U2 warto wyposażyć w niewielkie radiatory. Układ należy zasilić napięciem 11…14 V ze źródła o wydajności prądowej około 500 mA. Po sprawdzeniu poprawności zasilania należy skontrolować stałoprądowe punkty pracy wzmacniacza sygnału sinusoidalnego z tranzystorami Q1…Q3. Napięcia na wyprowadzeniach tych tranzystorów powinny być następujące: Q1: Baza – 2,1 V, Kolektor – 6,65 V, Emiter – 1,4 V. Q2: Emiter – 7,37 V, Kolektor – 2,5 V. Q3: Kolektor – 5,47 V, Emiter – 1,74 V. Pewną trudnością może okazać się przygotowanie wsuwek dla modułów DDS, które wykonujemy z przyciętych na odpowiednią długość odcinków żeńskich listew „goldpin”. Dla modułu U5 wystarczą listwy jednorzędowe, a dla modułu U6 jedną z wsuwek
wykonujemy z listwy dwurzędowej lub sklejamy ją na wymiar z dwóch listew jednorzędowych. Jeśli jesteśmy zdecydowani na zastosowanie jednego, konkretnego typu modułu DDS (U5 albo U6), to nie ma potrzeby przygotowywania i montażu wsuwek pod oba typy modułów. Po zmontowaniu i wstępnym uruchomieniu (na razie bez zainstalowanego modułu DDS) głównej płytki urządzenia należy przystąpić do montażu płytki sterowania, REKLAMA
ELEKTRONIKA PRAKTYCZNA 3/2017
31
PROJEKTY montowanej do przedniego panelu urządzenia. 16-pinową złączkę-gniazdo dla ekranu LCD (U11) należy przyciąć z odpowiedniego odcinka żeńskiej listwy „goldpin”. Z kolei wyprowadzenia do montażu potencjometru regulacyjnego poziomu sygnału sinusoidalnego PR3 wykonujemy z pięciu segmentów odcinka męskiej listwy „goldpin”, po usunięciu zbędnych pinów (2 i 4). Warto zadbać także o solidne zamontowanie enkodera obrotowego z przyciskiem (SW1), który powinien mieć przylutowane nie tylko wyprowadzenia elektryczne, ale także dwa metalowe mo- Rysunek 11. Schemat montażowy płyty głównej cowania obudowy. Na fotografii 13 pokazano montaż potencjometru PR2 do regulacji kontrastu LCD. Zamontowano go na tylnej stronie PCB po to, by ułatwić dostęp. Na zdjęciu widać także zamontowane na roboczo (w fazie uruchomienia projektu) elementy R22, R23, C42 oraz C43, które zapewniają dodatkową filtrację drgań styków enkodera. W dostępnym w sprzedaży kicie AVT5580 te elementy są zamontowane na płytce drukowanej. Na uwagę zasługuje także montaż rezystora R21, ograniczającego prąd podświetlenia LCD. W modelowym Rysunek 12. Schemat montażowy panelu sterującego wykonaniu miał on rezystancję 22 V, jednak należy dobrać wartość do posiadanego wyświetlacza. Dla ułatwienia doboru R21 w jego miejsce na płytce drukowanej wlutowano odcinek listwy „goldpin”. Po zmontowaniu obu płytek należy przystąpić do wykonania połączeń. Najlepiej do tego celu nadają się odcinki kątowych męskich listew „goldpin”, za których pomocą łączymy ze sobą porty: P5 i P11, P6 i P10 oraz P7 i P9. Najpierw przycinamy kątowe łączówki na odpowiednią liczbę segmentów, a następnie przesuwamy elementy plastikowe, łączące metalowe kołki, do samego ich zagięcia, co pozwoli zamontować tak przygotowane listwy jak najbliżej głównej (poziomej) płytki drukowanej. Po wprowadzeniu listew do głównej PCB zalutowujemy je od spodu, pilnując, by montaż został wykoFotografia 13. Gotowy generator – widok zamontowanego panelu sterującego od tyłu nany starannie pod kątem prostym do płytki. Projekty obu płytek drukowanych zostały dopasowane do obudowy typu KM-60 i przed dolutowaniem płytki sterowania (panelowej) do płytki głównej należy wstępnie przypasować odległość montażu do usytuowania całości urządzenia w obudowie. Po ustaleniu odległości montażowych lutujemy starannie płytkę przednią do „goldpinów”
32
ELEKTRONIKA PRAKTYCZNA 3/2017
wyprowadzonych z płytki głównej i możemy przystąpić do wstępnego uruchomienia urządzenia – przed zamontowaniem w obudowie. Jeśli nie korzystamy z zaprogramowanego mikrokontrolera, to układ ten należy zaprogramować w zewnętrznym gnieździe DIP-28 programatora. W pierwszym kroku
trzeba ustawić bity konfiguracyjne mikrokontrolera zgodnie z rysunkiem 18 (low fusebit: 3F, high fusebit: D7), a następnie wgrać do niego kod z pliku HEX. Po zainstalowaniu mikrokontrolera montujemy wyświetlacz LCD U11 i włączamy główne zasilanie +12 V. Na LCD powinniśmy ujrzeć ekran powitalny,
Generator DDS na zakres 1 Hz…40 MHz z wobulatorem DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb W ofercie AVT* AVT-5580
Podstawowe informacje: yyZakres częstotliwości generowanego sygnału: 1 Hz…40 MHz (krok 1 Hz). yyZakres prędkości wobulacji: 5…40 Hz (krok 1 Hz). yyWyjście analogowe (sygnał sinusoidalny, regulowana amplituda) i cyfrowe (sygnał prostokątny, CMOS 0/5 V). yyWyjście sygnału przestrajającego wobulator, które można podać na wejście „X” oscyloskopu. yyStandardowe wejścia/wyjścia o impedancji 50 V. yyZłożony z dwóch płytek: sterującej (na panelu czołowym) i głównej. yyGniazda dla dwóch rodzajów popularnych modułów z AD9850. yyZasilanie 12…15 V DC/0,25 A. Projekty pokrewne na FTP: Fotografia 14. Widok zmontowanego generatora od przodu
(wymienione artykuły są w całości dostępne na FTP)
* Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
Fotografia 15. Widok zmontowanego generatora od tyłu
Fotografia 16. Przykładowe wykonanie i opis tylnego panelu generatora
pokazany na fotografii 19. Potencjometrem PR2 regulujemy kontrast LCD. Po wyłączeniu zasilania montujemy wybrany moduł generatora DDS. Obrysy modułów, namalowane na górnej stronie głównej płytki drukowanej, pomogą w prawidłowym umiejscowieniu modułu w przygotowanym w tym celu gnieździe. Po ponownym włączeniu zasilania powinna zaświecić się także dioda LED, umieszczona na module DDS. Dalszą regulację i konfigurację urządzenia opisano w części artykułu poświęconej obsłudze przyrządu. W tym miejscu należy poświęcić kilka słów montażowi przyrządu w obudowie. Idealnym rozwiązaniem byłoby zastosowanie obudowy metalowej, która po uziemieniu zapewniałaby ekranowanie. Jakkolwiek, najtańsze i najdogodniejsze w obróbce mechanicznej są fabryczne obudowy, wykonane z tworzyw sztucznych. Projekt opisywanego tutaj urządzenia od samego początku ELEKTRONIKA PRAKTYCZNA 3/2017
33
PROJEKTY powstawał z zamiarem użycia obudowy typu KM-60. Po wstępnym przymierzeniu zmontowanego urządzenia do obudowy przykręcamy do niej płytkę główną dwoma wkrętami M3. Następnie wykonujemy w tylnym panelu trzy otwory dla gniazd BNC (fot. 16) oraz otwory dla gniazda zasilania 12 V i włącznika. Ostatnim elementem konstrukcji mechanicznej urządzenia jest usztywnienie przedniej (pionowej) płytki drukowanej. Jest ono niezbędne z uwagi na naprężenia, które będą występowały na łączeniu obu płytek drukowanych pod wpływem nacisku na enkoder SW1. W egzemplarzu modelowym wzmocnienie wykonano, łącząc dwoma śrubami M2,5 płytkę drukowaną sterowania z przednim panelem. Trwale zamocowane w obudowie urządzenie należy połączyć elektrycznie z wyprowadzeniami sygnałów na gniazdach BNC oraz włącznikiem i gniazdem zasilania +12 V. Z uwagi na brak zagrożenia zwarć wewnątrz zamkniętej obudowy, opisane połączenia można wykonać np. za pomocą srebrzanki o średnicy 0,5 mm.
Oprogramowanie
Program sterujący generatorem napisano w języku Bascom AVR. Kod programu sterującego pracą układu podzielono na cztery listingi 1…4 (ze względu na obszerność, są one dostępne w materiałach dodatkowych), odpowiadające podziałowi na zasadnicze części programu. Listing 1 obejmuje definicje i deklaracje wstępne wraz z kodem inicjującym urządzenie i pozwalającym wybrać jego zasadniczą funkcję (generator lub wobulator). Pierwsze linijki służą do konfiguracji pracy mikrokontrolera U10 (ATmega8A-PU). Zdefiniowano w nim typ i częstotliwość taktowania U10 zewnętrznym rezonatorem kwarcowym 16 MHz, a także rozmiary stosów i ramki programu. Dalej ustalono konfigurację sterowania wyświetlacza alfanumerycznego LCD 16×2 (U11) oraz zdefiniowano osiem specjalnych znaków semigraficznych. Są to jednoznakowe symbole: jednostki herca [Hz], skrótu indeksu „peak-to-peak”, jednostki napięcia [Vp-p], strzałki w górę i w dół oraz cztery pogrubione symbole literowe modyfikowanych parametrów: częstotliwości F, napięcia U, kroku regulacji częstotliwości D oraz szybkości wobulacji S. Po zdefiniowaniu znaków semigraficznych i niezbędnym w tym momencie restarcie sterownika wyświetlacza LCD jest wyświetlany komunikat powitalny, po którym następuje definicja: roboczego ciągu tekstowego „Sa”, wykorzystywanego dalej do czytelnego formatowania częstotliwości generatora „F”, portów sterujących pracą modułu DDS (sygnały: W_CLK, FQ _UD, DATA, oraz RESET, zamapowane na piny PORTC.2…5), a także
34
ELEKTRONIKA PRAKTYCZNA 3/2017
Rysunek 17. Wzór maskownic-opisów na panele obudowy
Fotografia 19. Wygląd ekranu powitalnego podstawowych zmiennych wykorzystywanych do sterowania modułem AD9850: Init (ciąg startowy), Freq i Freq_d (programowana częstotliwość w dwóch formatach) oraz stałej Df. Wartość tej stałej, równa „34.359738368”, wynika z przeliczenia formuły: 2^32/125*10^6 (liczba możliwych kombinacji rejestru akumulatora DDS-a, podzielona przez częstotliwość taktowania generatora Fs) i jest wykorzystywana do przeliczenia pożądanej częstotliwości generowanej Fc na krok (przyrost) fazy syntezera DDS. W dalszej części kodu zdefiniowano porty wejściowe, przeznaczone do obsługi enkodera mechanicznego (piny PORTB.3…4) oraz PORTD.2 dla jego przycisku. Określono też i zainicjowano zmienną Encportbyte oraz przerwanie czasowe wywołujące podprogram (procedurę) Testenc modyfikującą tę zmienną. Treść i sposób działania tej procedury zostanie omówiona dalej, ale już w tym miejscu należy zaznaczyć, że jej zadaniem jest skanowanie (próbkowanie) styków enkodera ze stałą częstotliwością około 2 kHz, pozwalającą na prawidłowe wykrywanie stanu i kierunku obracania (ta informacja
jest przekazywana do głównego kodu właśnie przez zmienną Encportbyte). Kolejny krok to ustalenie konfiguracji pracy urządzenia: jako generator („GEN”) lub jako wobulator („WOB”), z włączonym („ON”) lub z zablokowanym („OFF”) wyjściem cyfrowym „DIGI”. Informacje te są przechowywane w pamięci EEPROM pod adresem 10 na dwóch najmłodszych bitach zmiennej State. Jeśli jednak w momencie przejścia do tej części programu (praktycznie chwilę po zakończeniu wyświetlania ekranu powitalnego) będzie wciśnięty przycisk mikrokontrolera (PIND.2=0), to program przejdzie do dwóch bloków decyzyjnych, zorganizowanych w postaci zamkniętych pętli, powtarzanych aż do kolejnych naciśnięć przycisku enkodera. Wewnątrz tych pętli, na podstawie bitów b0 i b1 zmiennej State, wyświetlana jest wybrana konfiguracja pracy urządzenia a także istnieje możliwość jej zmiany w oparciu o analizę obecności i kierunku obrotu enkodera SW1, odzwierciedlonej na czterech najmłodszych bitach zmiennej Encportbyte. Odbywa się to wewnątrz instrukcji warunkowych If-Then-Elseif-Then-EndIf, które
Generator DDS na zakres 1 Hz…40 MHz z wobulatorem interpretują wartości zmiennej Encportbyte, równe 2, 4, 11 lub 13 jako obracanie w prawo, a wartości 1, 7, 8 lub 14 jako obracanie w lewo (wynika to z mechanicznej konstrukcji wewnętrznej styków enkodera). Po dokonaniu wyboru trybu pracy przyrządu, zapamiętanego w zmiennej State, zapisanej następnie w pamięci EEPROM, następuje fizyczne włączenie (PORTC.1=1) lub wyłączenie (PORTC.1=0) portu „DIGI”. Ostatnie dwa działania w tym bloku programowym to: aktywacja (uruchomienie) generatora DDS (chipu AD9850) poprzez wygenerowanie krótkich impulsów (poniżej 1 ms) kolejno na jego portach: RESET, W_CLK i FQ _UD oraz przejście do podprogramu realizującego tryb Generatora lub tryb Wobulatora. Wybrany tryb pracy jest zapowiadany dużym napisem, a w przypadku trybu Wobulatora wykonywany jest odpowiedni skok bezwarunkowy do procedury obsługującej tę opcję (podprogram dla Generatora znajduje się w następującej bezpośrednio dalej części programu i nie wymaga realizacji skoku). Listing 2 zawiera opis procedur obsługujących funkcję generatora. W pierwszej kolejności skonfigurowano jako wejściowy PORTC.0, który pełni funkcję wejścia przetwornika A/C w mikrokontrolerze U10. Przetwornik skonfigurowano do pracy pojedynczej, z automatycznym preskalerem zegara oraz napięciem referencyjnym Uref=+5 V, pobieranym ze stabilizatora scalonego U2 (LM7805). Po uruchomieniu przetwornika A/C zdefiniowano i zainicjowano zmienne Uold i Unew, które służą do przechowywania bieżącej i poprzedniej próbki zmierzonego napięcia. Takie podejście służy unikaniu zbyt częstego formatowania i odświeżania wyświetlanej na LCD wartości napięcia wyjściowego, gdy nie ulegało ono zmianie. Kolejna zainicjowana zmienna to Uvolt, która po przeskalowaniu i sformatowaniu służy do bezpośredniej prezentacji na wyświetlaczu LCD. W kolejnych krokach zostały zdefiniowane i zainicjowane zmienne: F, Fold i Fstep. Zmienne F i Fold przechowują bieżącą i poprzednią wartości zadawanej częstotliwości generatora. Ich porównywanie pozwala na uniknięcie częstej rekonfiguracji parametrów pracy generatora DDS wtedy, gdy obie one są równe (brak oczekiwanych zmian). Natomiast zmienna Fstep przechowuje bieżący krok modyfikacji częstotliwości F, wykorzystywany przy jej modyfikacji za pomocą enkodera obrotowego SW1. W programie przyjęto wartości początkowe F=1MHz oraz Fstep=1kHz. Kolejny blok programu realizuje pierwszą nastawę generatora DDS. Najpierw żądana częstotliwość F jest przeliczana na zwiększenie wartości akumulatora Freq_d, odpowiadające przyrostowi fazy sygnału
generowanego, a następnie wyliczona wartość zmiennej Freq_d jest rzutowana na zmienną Freq 32-bitowego typu całkowitego, odpowiedniego dla rejestru sterującego AD9850. Za przesłanie tej zmiennej do syntezera jest odpowiedzialna procedura Dds_setup. W następnym etapie następuje zainicjowanie wyświetlania parametrów pracy generatora: częstotliwości F, kroku strojenia Df, napięcia wyjściowego U oraz trybu pracy G, realizowane przez procedury: F_disp, Df _ disp, U_disp i funkcję Lcd. Wewnątrz nieskończonej pętli Do…Loop cyklicznie powtarzane są te same czynności: Interpretacja stanu enkodera obrotowego SW1 i w razie konieczności zmiana nastawy częstotliwości F o wartość kroku Fstep za pomocą procedury F_up lub F_down. Sprawdzenie stanu przycisku enkodera SW1 i jeśli odpowiadające mu wejście PIND.2=0, rotacyjna zmiana parametru Fstep z zastosowaniem procedury F_step_chng. W bloku instrukcji warunkowej If-Then-EndIf następuje porównanie ostatnio ustawionej częstotliwości generowanej F z częstotliwością poprzednią Fold i w razie wykrycia takiego stanu ponowne zaprogramowanie AD9850 oraz wyświetlenie generowanej częstotliwości F na ekranie LCD. Pomiar i wizualizacja na ekranie LCD sinusoidalnego napięcia wyjściowego. Wykrycie zmiany wartości (Unew<>Uold) wyzwala proces uśrednienia porównywanych wartości, zapamiętania tak wyliczonej wartości jako poprzedniej a następnie wyświetlenie jej na ekranie LCD za pomocą procedury U_disp. Na listingu 3 umieszczono procedury realizujące funkcję wobulatora. Na początku PORTB.2 jest definiowany jako wyjściowy, a następnie TIMER1 jest konfigurowany jako 8-bitowy przetwornik C/A pracujący w trybie PWM. Wyjście kanału PWM1A tego przetwornika jest wyprowadzone na wcześniej skonfigurowany PORTB.2 i służy do wytworzenia piłokształtnego sygnału odchylania poziomego, przeznaczonego do sterowania kanałem X oscyloskopu. Dalej definiowane są zmienne Fmin i Fmax będące granicami przedziału częstotliwości wobulacj), Deltaf – elementarny krok-postęp częstotliwości wobulacji, Fvobstep – krok regulacji krańców przedziału wobulacji Fmin i Fmax. Początkowy przedział wobulacji ustalono na zakres pasma akustycznego 20 Hz…20 kHz, a krok jego regulacji na 100 Hz. Po tych definicjach następuje pierwsze (inicjujące) wywołanie procedury Deltafcalc, której zadaniem jest wyznaczenie elementarnego kroku wobulacji Deltaf. Dalej wprowadzane są definicje zmiennych: Pwmval (poziom sygnału na wyjściu przetwornika DAC/PWM1A oraz iterator głównej pętli wobulatora), Fvob (rzeczywista częstotliwość wobulacji w zakresie 1…40 Hz), Tvobwaitus (czas determinujący szybkość wobulacji 1000000/(Fvob*256)
minus ok. 91 [us]), Tvobwaitusword (wersja całkowitoliczbowa zmiennej Tvobwaitus). Początkową wartość częstotliwości wobulacji Fvob ustalono na 20 Hz. Następnie jest wywoływana procedura Fvob_chng, wyznaczająca opóźnienie w elementarnym kroku wobulacji – w funkcji przyjętej częstotliwości przemiatania Fvob. Dalej następuje pierwsze w procedurze wobulacji wyświetlenie na ekranie LCD regulowanych parametrów pracy: Fmin, Fmax, Fvob oraz Fvobstep. Nieskończoną pętlę Do…Loop podprogramu wobulatora podzielono na dwa bloki: modyfikacji parametrów procesu oraz jego realizacji. Blok realizacji podzielono na 4 cztery części, służące zmianie każdego z ustawialnych parametrów. Wejście do bloku modyfikacji parametrów procesu następuje po naciśnięciu przycisku enkodera SW1 (PIND.2=0) i odczekaniu 400 ms. Wtedy następuje wejście do podprogramu modyfikacji parametru Fvobstep, czyli kroku regulacji parametrów Fmin i Fmax. W kolejnej podpętli, przerywanej naciśnięciem przycisku enkodera, jest odczytywany kierunek obrotu enkodera, a następnie krok regulacji częstotliwości jest odpowiednio zmniejszany lub zwiększany 10-krotnie, przy czym odbywa się to wyłącznie w granicach 1 Hz…1 MHz. Zmodyfikowana wartość parametru Fvobstep jest formatowana i wyświetlana na LCD, przy czym przy modyfikowanym aktualnie parametrze cały czas w miejsce symbolizującej go ikony jest wyświetlana gwiazdka „*”. Opuszczenie pętli modyfikacji parametru Fvobstep następuje po naciśnięciu przycisku enkodera, a gwiazdka „*”, symbolizująca proces modyfikacji parametru, jest zamieniana na podstawowy symbol, czyli pogrubione „D”. Modyfikacje kolejnych trzech parametrów wobulacji odbywają się w bardzo podobny sposób, każdorazowo po odczekaniu 400 ms od potwierdzającego naciśnięcia przycisku enkodera, z różnicami charakterystycznymi dla danego parametru. W przypadku parametru Fmin zmiana wartości następuje o (być może zmodyfikowaną w poprzednim kroku) wartość parametru Fvobstep, przy czym zakres możliwych wartości jest REKLAMA
ELEKTRONIKA PRAKTYCZNA 3/2017
35
PROJEKTY ograniczony od dołu do 1 Hz a od góry do bieżącej wartości Fmax. Znacznikiem parametru Fmin jest gruba strzałka, skierowana w dół. Analogicznie, w wypadku parametru Fmax zmiana wartości następuje o wartość parametru Fvobstep, przy czym zakres możliwych wartości jest ograniczony od góry do 40 MHz a od dołu do bieżącej wartości Fmin. Znacznikiem parametru Fmax jest gruba strzałka, skierowana w górę. Po modyfikacji Fmin i Fmax wywołana zostaje procedura Deltafcalc, która ponownie przelicza elementarny krok wobulacji Deltaf. Ostatni, czwarty krok modyfikacji dotyczy parametru Fvob, utrzymując go w zakresie 1…40 Hz. Po zmianie wartości zmiennej Fvob jest wywoływana procedura Fvob_chng, wyznaczająca opóźnienie w elementarnym kroku wobulacji. Znacznikiem parametru Fvob jest pogrubiona litera S. W drugiej części pętli Do…Loop jest realizowane przemiatanie ustalonego zakresu częstotliwości, połączone z wysterowaniem osi X oscyloskopu. Obszerny blok modyfikacji parametrów przy normalnej pracy wobulatora nie opóźnia jego działania, ponieważ program wchodzi do tego bloku wyłącznie w trybie konfiguracji urządzenia. Podstawowa pętla wobulatora For…Next iteruje parametr Pwmval w zakresie 0…255, który jest właściwy do ustawienia jako wyjście przetwornika DAC/PWM i równocześnie stanowi REKLAMA
36
ELEKTRONIKA PRAKTYCZNA 3/2017
iterator do wyliczenia narastającej częstotliwości wyjściowej F, liczonej jako iloczyn tego iteratora oraz wyliczonego wcześniej współczynnika skalującego Deltaf, powiększony o wartość Fmin. Tak wyznaczona wartość F jest następnie przeliczana na wartość parametru Freq_d do zaprogramowania AD9850 przez procedurę Dds_setup. Procedura ta jest poprzedzana modyfikacją wyjścia przetwornika PWM/DAC, aby przyśpieszyć propagację sygnału PWM przez filtry dolnoprzepustowe z układami U4A/U4B. Ostatnim działaniem, wykonywanym wewnątrz podstawowej pętli wobulacyjnej, jest wprowadzenie opóźnienia o wartość Tvobwaitusword mikrosekund, odpowiedniego do przyjętej szybkości wobulacji Fvob, wyliczonego przez wywołanie procedury Fvob_chng. Listing 4 zawiera podprogramy pomocnicze wywoływane komendą skoku Gosub. Procedurę Testenc w całości napisano w asemblerze dla procesorów z rdzeniem AVR ATmega – w celu maksymalnego zwiększenia szybkości jej działania, ponieważ jest wywoływana za pomocą przerwania generowanego z częstotliwością około 2 kHz. Procedura wykonuje test stanu styków enkodera z pamięcią poprzednich stanów, a wynik przekazuje do zmiennej Encportbyte, w której istotne są tylko bity b3…b0. W pierwszej kolejności na stos procesora odkładane są wszystkie używane rejestry (SREG, R24
i R25). Następnie poprzednie stany styków enkodera są przesyłane ze zmiennej Encportbyte do rejestru R24. Dalej są usuwane 2 najstarsze bity stanów (b1…b0) poprzez dwukrotne przesunięcie w prawo rejestru R24. Potem aktualne stany enkodera odczytywane są z portu B (PB.4, PB.3) do rejestru R25, w którym maskowane zerami są wszystkie pozostałe bity. Dalsze dorównanie w prawo o jedną pozycję powoduje przesunięcie pobranych wartości na bity b3 i b2. Połączenie alternatywą logiczną rejestrów R24 i R25 tworzy nowy zestaw czterech bitów stanu w rejestrze R24, który następnie jest zapamiętywany w zmiennej Encportbyte. Procedurę kończy pobranie ze stosu poprzednich wartości wszystkich używanych rejestrów. Procedura F_down i F_up, odpowiednio: zmniejsza lub zwiększa częstotliwości pracy generatora o wartość kroku Fstep, dbając jednak o to, aby nie wykroczyły one poza zakres Fstep…40 MHz. Procedura F_step_chng powoduje zmianę kroku strojenia generatora Fstep w sposób cykliczny, tzn. w ciągu od 1 Hz do 1 MHz (z powiększaniem 10×) i dalej z powrotem od 1 Hz. Po realizacji każdorazowej takiej zmiany wywołana zostaje także procedura aktualizacji wyświetlania wartości Fstep na wyświetlaczu LCD. Następnie odczekany zostaje czas, który pozwala uniknąć wielu
Generator DDS na zakres 1 Hz…40 MHz z wobulatorem kolejnych zmian tego parametru przy dłuższym naciśnięciu przycisku enkodera. Procedura Dds_setup realizuje programowanie częstotliwości AD9850. Odbywa się to poprzez wprowadzenie szeregowo najpierw 32-bitowego słowa Freq reprezentującego nową częstotliwość, a następnie 8-bitowej sekwencji Init powodującej wprowadzenie nowej częstotliwości. Procedurę kończy wygenerowanie krótkiego impulsu zatwierdzającego tę zmianę na linii FQ_ UD syntezera. Procedura F_disp realizuje wyświetlanie sformatowanej częstotliwości generatora na wyświetlaczu LCD. Wykorzystywano w niej specjalną, pogrubioną czcionkę „F”, zdefiniowaną jako znak specjalny. Procedura ta najpierw zamienia całkowitą wartość częstotliwości F na ciąg tekstowy Sa, a następnie w ciągu instrukcji If-Then-Elseif-Else-EndIf dokonuje formatowania zależnego od przedziału, do którego należy wyświetlana wartość. Formatowanie to polega na wstawieniu kropek dziesiętnych, oddzielających kolejne trzycyfrowe bloki cyfr, a następnie na końcu dostawia właściwą jednostkę (Hz, kHz lub MHz). Jednostkę „Hz” zaimplementowano w formie pojedynczego, zdefiniowanego na początku programu znaku specjalnego, co pozwoliło na zaoszczędzenie jednego znaku na względnie niewielkim wyświetlaczu LCD. Procedura Df _disp powoduje wyświetlenie sformatowanego kroku strojenia generatora na wyświetlaczu LCD, a odbywa się to z zastosowaniem specjalnej, pogrubionej czcionki „D”, zdefiniowanej jako znak specjalny. W procedurze użyto bloku instrukcji Select-Case-EndSelect, które selekcjonują poszczególne wartości kroków strojenia generatora Fstep i przypisują im odpowiednie napisy, składające się z liczby zakończonej odpowiednią jednostką wielokrotną (Hz, kHz lub MHz). Procedura U_disp ma za zadanie przeskalowanie, sformatowanie i wyświetlenie na ekranie LCD zmierzonego napięcia wyjściowego z generatora. Skalowanie odbywa się wg współczynnika 5/1024 V, odpowiadającego przyjętemu napięciu referencyjnemu Uref=+5 V i rozdzielczości przetwornika A/C. Przeskalowana wartość jest powiększana o około 0,22 V, co odpowiada napięciu progowemu zastosowanego detektora-podwajacza napięcia z diodami Schottky'ego D1 i D2. Zmienna Unew odpowiada wielkości zmierzonej przez detektor, natomiast zmienna Uvolt jest wielkością wyświetlaną na ekranie LCD. Formatowanie z dokładnością do dwóch miejsc po przecinku ma charakter wariantowy, bowiem dla wielkości mniejszych od 0,22 V, z uwagi na niepewną wartość pomiaru, wyświetlany jest jedynie stały komunikat. Procedura Fvob_chng wyznacza opóźnienie Tvobwaitus (w mikrosekundach), które
Fotografia 20. Wygląd ekranu podsumowującego ustawienia należy wprowadzić w elementarnym kroku wobulacji dla przyjętej częstotliwości przemiatania Fvob. Pierwsze dwa wyrażenia realizują: podział jednego cyklu wobulacji na 256 przedziałów (rozdzielczość 8-bitowego przetwornika DAC/PWM) oraz skalowanie od zastosowanej dla parametru Fvob jednostki [Hz] do mikrosekund. Kolejny wiersz wprowadza oszacowaną pomiarowo korektę o stałe czasy wykonania pojedynczej iteracji, a ostatnie wyrażenie dokonuje rzutowania zmiennoprzecinkowego rezultatu opisanych obliczeń na wartość całkowitą. Procedura Deltafcalc wyznacza elementarny krok (przyrost) częstotliwości Deltaf, zastosowany przy przemiataniu. Jest to po prostu różnica skrajnych częstotliwości wobulacji Fmin oraz Fmax, podzielona przez zastosowaną liczbę przedziałów, równą 255. Jak widać, kod programu sterującego urządzeniem nie jest bardzo skomplikowany, choć względnie obszerny (plik w formacie HEX, przeznaczony do zaprogramowania mikrokontrolera ATmega8, wypełnia 99% jego pamięci FLASH). Zachowana w programie prostota struktury, sposób podziału i uporządkowanie różnych funkcji a także liczne, dość wyczerpujące komentarze zachęcają do własnych modyfikacji i eksperymentów z urządzeniem. Krótka, ilustrowana instrukcja obsługi oprogramowania przyrządu zostanie podana w dalszej części tego opracowania.
Obsługa
Tryb pracy można zmienić tylko w chwili włączenia urządzenia – poprzez naciśnięcie i przytrzymanie przycisku enkodera aż do momentu wejścia w menu trybu pracy przyrządu. Po kilku sekundach wyświetlania ekranu powitalnego (fot. 19) zostanie wyświetlony jeden z dwóch ekranów wyboru stanu aktywności wyjścia (buforu) dla sygnału cyfrowego („DIGI OUT: OFF/ON”). Pokręcając gałką enkodera, ustawiamy wyjście cyfrowe jako aktywne („ON”) i zatwierdzamy ten wybór przyciskiem enkodera, tym samym przechodząc do kolejnego poziomu wyboru w menu konfiguracyjnym. W podobny sposób wybieramy tryb pracy przyrządu („MODE: GEN/WOB”). Po wyborze przez kilka sekund będziemy mogli oglądać ekranik podsumowujący wybrane ustawienia, które w przypadku wyboru trybu wobulatora i wyłączenia wyjścia cyfrowego (przykład) wyglądałyby tak, jak na fotografii 20.
Na ekranie przyrządu pracującego w trybie generatora, w górnym wierszu są wyświetlane: po lewej – nastawiona częstotliwość F, po prawej – duża litera „G” lub „W” symbolizująca wybrany tryb pracy. W dolnym wierszu, po lewej stronie można odczytać wybrany krok regulacji częstotliwości, a po prawej międzyszczytową wartość [Vpp] zmierzonego wyjściowego napięcia sinusoidalnego. Z uwagi na zastosowaną metodę pomiaru (detektor szczytowy w układzie podwajacza napięcia z diodami Schottky'ego, skalibrowany programowo dla częstotliwości zbliżonej do 1 MHz) wskazania napięcia należy traktować orientacyjnie. Dodatkowo, z uwagi na napięcie progowe detektora na poziomie około 0,22 V, sygnały wyjściowe o niższym poziomie nie zostaną zmierzone. Obsługa generatora jest bardzo łatwa. Regulację częstotliwości F przeprowadzamy pokrętłem enkodera, a zmianę kroku tej regulacji wykonujemy poprzez naciskanie jego przycisku (kolejne kroki zmieniają się cyklicznie w kierunku rosnącym). Amplitudę sygnału wyjściowego sinusoidalnego zmieniamy liniowym potencjometrem obrotowym PR3, który wyprowadzono na przedni panel urządzenia. Należy w tym miejscu podkreślić, że wyjściowy wzmacniacz szerokopasmowy z tranzystorami Q1..,Q3, o wzmocnieniu około 12 dB, jest w stanie dostarczyć nieprzesterowanego sygnału wyjściowego o maksymalnym poziomie około 2 Vp-p. Może zatem być przesterowany, gdy zostanie zasilony sygnałem z modułu DDS o poziomie przekraczającym około 0,5 Vp-p. Ponieważ różne typy (i różne wykonania) rozważanych tutaj modułów generatorów DDS mają różne poziomy napięć wyjściowych, zmieniające się także znacząco wraz REKLAMA
ELEKTRONIKA PRAKTYCZNA 3/2017
37
PROJEKTY z częstotliwością wytwarzanego przebiegu, kryterium utrzymania poziomu sygnału wyjściowego, nieprzekraczającego około 2 Vp-p, jest prostą i dogodną metodą ograniczania zniekształceń nieliniowych w napięciu wyjściowym generatora. Bardzo ważną czynnością, którą koniecznie należy wykonać, jest wyregulowanie współczynnika wypełnienia generowanego przebiegu prostokątnego na wartość jak najbliższą 50%. Przebieg ten powstaje w szybkim komparatorze w układzie AD9850 jako efekt porównania odfiltrowanego sygnału sinusoidalnego ze stałym napięciem referencyjnym, ustalanym potencjometrem montażowym, umieszczonym na module generatora DDS. Regulację przeprowadzamy tym właśnie potencjometrem, a pomiaru dokonujemy np. oscyloskopem cyfrowym. W ostateczności, jeśli nie dysponujemy odpowiednim przyrządem pomiarowym, można zastosować metodę uproszczoną, polegającą na pomiarze odfiltrowanego dolnoprzepustowo napięcia średniego (filtr RC z R=10 kV i C=100 nF będzie wystarczający z zapasem dla testowej F=1 MHz) i regulacji potencjometrem, umieszczonym na module DDS, aż do uzyskania na wyjściu filtru RC wartości środkowej pomiędzy szczytami napięcia prostokątnego. Przy filtracji i pomiarze napięcia z wyjścia na porcie P3 będzie to wartość w bardzo dobrym przybliżeniu równa połowie napięcia zasilania, pobieranego ze stabilizatora U2 (LM7805), czyli około 2,5 V. Przełączenie urządzenia do trybu wobulatora należy wykonać w sposób opisany wcześniej. Ekran w trybie wobulatora wygląda jak na fotografii 21. Po lewej stronie pokazano dolną (u dołu) i górną (na górze ekranu) częstotliwość graniczną wobulacji. Po prawej stronie wyświetlacza można zobaczyć krok regulacji (u dołu) oraz częstotliwość przemiatania (u góry). Duża litera „W” w prawym, górnym rogu informuje o wybranym trybie pracy wobulatora. Domyślne ustawienia wobulatora to Fmin=20 Hz oraz Fmax=20 kHz (pasmo akustyczne), krok regulacji 100 Hz, szybkość przemiatania 20 Hz. Wciśnięcie przycisku enkodera spowoduje przejście do cyklu zmiany tych
Fotografia 21. Wygląd ekranu przyrządu w trybie wobulatora parametrów, co będzie sygnalizowane zastąpieniem ikonki wskazującej modyfikowany parametr tymczasowym symbolem „*”. Przechodzimy wówczas kolejno przez: krok regulacji częstotliwości, jej granice zmian oraz szybkość wobulacji (w prawo w kierunku obrotu wskazówek zegara). Wybrany parametr zmieniamy pokrętłem enkodera, a jego wartość zatwierdzamy przyciskiem. Jeśli nie chcemy zmieniać parametru, to przechodzimy do kolejnego, po prostu naciskając przycisk enkodera. Podobnie opuszczamy menu zmiany parametrów wobulacji. Korzystanie z trybu wobulatora wymaga wstępnego ustawienia zakresu wartości piłokształtnego napięcia sterującego wejściem „X” oscyloskopu (wyjście „SYNCHRO” na porcie P4 urządzenia). Można to zrobić za pomocą potencjometru montażowego PR1, zamontowanego w pobliżu środka głównej (wykonawczej). Na początku pracy z przyrządem rozsądnie będzie ustawić PR1 na maksimum amplitudy sygnału piłokształtnego na wyjściu „SYNCHRO”. Jeśli jako wyjście generatora-wobulatora wykorzystujemy sygnał cyfrowy (wyjście „DIGI 0/5V”), to potencjometr regulacji poziomu sygnału analogowego (sinusoidalnego) można ustawić na minimum. Natomiast jeśli do wysterowania badanego układu używamy wyłącznie sygnału sinusoidalnego, to przed rozpoczęciem pomiarów należy ustawić jego odpowiedni poziom wyjściowy, a wyjście cyfrowe „DIGI 0/5V” można całkowicie „wygasić” w trybie wstępnej konfiguracji przyrządu. Należy tu zaznaczyć, że pomiar poziomu napięcia wyjściowego sinusoidalnego nie jest dostępny w trybie pracy wobulatora. Poziom wyjściowy wobulowanego napięcia sinusoidalnego, po podłączeniu badanego obwodu,
warto jest zatem skontrolować za pomocą oscyloskopu. Można też ewentualnie dokonać tego za pomocą woltomierza napięć zmiennych lub wbudowanej w przyrząd funkcji pomiarowej – w trybie generatora, zmieniając ręcznie częstotliwość pracy F w zakresie interesujących wartości.
Podsumowanie
Opisany generator-wobulator DDS powstał jako kontynuacja projektu generatora AVT3111. Autor projektu ma poczucie, że udało się osiągnąć cel projektowy, którym był rozsądny kompromis pomiędzy: szerokim wachlarzem możliwości technicznych, ergonomią obsługi, względną prostotą wykonania we własnym zakresie oraz niskim kosztem nabycia potrzebnych podzespołów i elementów. Znaczącym atutem opisanego urządzenia, poza dwufunkcyjnością, jest także możliwość alternatywnego zastosowania jednego z dwóch dość szeroko dostępnych na rynku modułów generatorów DDS z układem AD9850. Kontynuacją tego projektu i publikacji będzie projekt trzech sond pomiarowych (jednej liniowej i dwóch logarytmicznych), w oparciu o które bardziej szczegółowo przedstawione zostaną możliwości opisanego tutaj przyrządu oraz sposoby jego wykorzystania w praktycznych zadaniach konstruktorskich i pomiarowych. Na koniec chciałbym serdecznie podziękować koledze Lucjanowi Bryndzy SQ5FGB za pomoc okazaną przy konfigurowaniu nowej edycji programu KiCAD, którego użyłem do projektowania obu płytek, a także za cenne sugestie dotyczące samego procesu projektowego. Adam Sobczyk, SQ5RWQ [email protected] http://sq5rwq.pl
REKLAMA
sklep.avt.pl 38
ELEKTRONIKA PRAKTYCZNA 3/2017
Ć OŚ W NO
Poznaj cały proces e dycji zdjęć: od sorto wania materiału, poprzez kolorystyczn ą i tonalną korektę ora z techniki retuszerskie, po bard ziej zaawansowane m etody fotomontażu, konwer sji mono, a także two rzenia całego wachlarza efek tów!
SZUKAJ W SALONACH PRASOWYCH ORAZ NA WWW.ULUBIONYKIOSK.PL (PRZESYŁKA GRATIS)
PROJEKTY
Ekonomiczny generator funkcyjny DDS Generator sygnałowy jest jednym z podstawowych przyrządów w pracowni elektronicznej. Niestety, ceny cyfrowych, profesjonalnych urządzeń są zaporą dla wielu amatorów. Z kolei rozwiązania analogowe, oparte chociażby na mostku Wiena nie gwarantują, że generowany sygnał będzie miał stabilne parametry. Prezentowany układ łączy zalety obydwu tych wariantów: cyfrową syntezę częstotliwości oraz niewysoką cenę. Rekomendacje: generator przyda się w warsztacie każdego elektronika. Generator zaprojektowano z myślą o testowaniu urządzeń audio. Cenę obniżono dzięki programowej implementacji generatora DDS, bez użycia zewnętrznego generatora sygnałowego. Kształty sygnałów zostały dostosowane do najczęstszych pomiarów w układach audio: • sinusoidalny: pomiar charakterystyki przenoszenia i wzmocnienia, • trójkątny: ocena zniekształceń nieliniowych, • prostokątny: oscylacje, ocena pasma przenoszenia.
Zasada działania
Bezpośrednia synteza cyfrowa (ang. DDS – Direct Digital Synthesis) to metoda wytwarzania sygnału w oparciu o odczytywanie odpowiednich próbek zapisanych w tablicy. Próbki sygnału są wystawiane na przetwornik cyfrowo-analogowy, który przekształca je w proporcjonalną wartość napięcia. Schemat blokowy zaimplementowanego w tym układzie syntezera przedstawia rysunek 1. Gdyby z tablicy próbek odczytywać wszystkie po kolei, wówczas częstotliwość wytwarzanego sygnału byłaby stała. W tym układzie częstotliwość próbkowania wynosi 300 kHz, zaś tablica próbek zawiera ich 256, więc częstotliwość sygnału wyjściowego wynosiłaby 1171,875 Hz (300 kHz/256). Metoda DDS polega na tym, że nie trzeba odczytywać wszystkich próbek. Zgodnie z twierdzeniem Nyquista wystarczy, aby na jeden okres
40
ELEKTRONIKA PRAKTYCZNA 3/2017
najwyższej częstotliwości w sygnale przypadały nie mniej niż 2 próbki. Dla sygnału sinusoidalnego minimum to dwie próbki na okres. Przy tej samej częstotliwości próbkowania można uzyskać – teoretycznie – sygnał analogowy o częstotliwości 150 kHz. Jak zostanie pokazane dalej, jakość tego sygnału byłaby bardzo niska. Użytkownika nie interesuje jedynie częstotliwość minimalna i maksymalna, lecz także cała gama częstotliwości pośrednich. Można odczytywać co drugą próbkę, co trzecią i tak dalej. Niestety, skok częstotliwości jest równy częstotliwości minimalnej.
300kHz = 2343, 75 Hz 1 ⋅ 256 2 300kHz = 3515, 625 Hz 1 256 ⋅ 3 Generatory fabryczne z powodzeniem generują sygnał o częstotliwości zadanej z precyzją rzędu mHz lub lepszą. Można sobie poradzić z tym problemem na dwa sposoby. Pierwszy z nich to zwiększenie liczby próbek np. do 300 milionów. Wtedy krok regulacji częstotliwości wyniesie 1 mHz, za to potrzebna będzie olbrzymia pamięć na tak liczny zbiór próbek. Drugą opcją jest podział przez liczbę niecałkowitą – tej metody użyto w prezentowanym generatorze. Przy użyciu mikrokontrolera o architekturze 32-bitowej to zadanie zostaje znacznie uproszczone. Jeżeli do zaadresowania jest 256 próbek, wówczas wystarczy do tego tylko
DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb W ofercie AVT* AVT-5581
Podstawowe informacje: yyZakres regulacji częstotliwości: 0,1 Hz…39999,9 Hz. yyKrok zmiany częstotliwości: 0,1 Hz. yyDostępne kształty sygnałów: sinusoidalny, trójkątny, prostokątny (wypełnienie 50%). yyAmplituda sygnału wyjściowego: 0…10 Vpp. yySkładowa stała: zerowa lub sygnał unipolarny (przełączane). yyImpedancja wyjściowa: bliska zeru. yyZasilanie: 12…15 V DC, maksymalnie 50 mA. yySposób regulacji częstotliwości: impulsator. yySposób regulacji amplitudy: potencjometr. Projekty pokrewne na FTP: (wymienione artykuły są w całości dostępne na FTP)
Generator DDS na zakres 1 Hz...40 MHz z wobulatorem (EP 2/2017) Generator DDS (EP 4/2014) Cyfrowy generator sygnału prostokątnego (EP 10/2013) Generator HF z powielaniem częstotliwości (EP 3/2013) Generator DDS (EP 10-11/2008) Generator fali prostokątnej o reg. współczynniku wypełnienia (EP 8/2008)
* Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
Ekonomiczny generator funkcyjny DDS
Rysunek 1. Schemat blokowy syntezera 8 bitów. Pozostałe 24 bity rejestru akumulatora fazy to „część ułamkowa”. Dzięki temu krok regulacji częstotliwości generowanego sygnału wyniesie:
300kHz ≈ 6, 98 ⋅10−5 Hz ≈ 70 µ Hz 32 2
W ten sposób, w pamięci nadal można przechowywać 256 próbek. Przetwornik ma rozdzielczość 12 bitów, zatem próbki są 2-bajtowe – wymagane jest tylko 512 bajtów. Sygnał na wyjściu przetwornika C/A jest aproksymowany za pomocą przebiegu schodkowego. Należy go odfiltrować za pomocą dolnoprzepustowego filtru regeneracyjnego, aby uzyskać zeń sygnał pożądany. W jego widmie jest wiele częstotliwości harmonicznych, w tym składowa sygnału użytecznego
oraz składowa o częstotliwości równej częstotliwości próbkowania. Założono, że maksymalna częstotliwość wytwarzanego sygnału to 40 kHz, natomiast częstotliwość próbkowania wynosi 300 kHz. Charakterystyka amplitudowa filtru w paśmie przepustowym powinna być możliwie płaska. Jednocześnie tłumienie częstotliwości próbkowania powinno być jak najsilniejsze. Są to bardzo rygorystyczne wymagania, których jednoczesne spełnienie nie będzie łatwe. W omawianym układzie zastosowano prosty, dwuczłonowy filtr RC, którego schemat ideowy (z programu symulacyjnego SPICE) pokazano na rysunku 2. Na rysunku 3 zamieszczono jego charakterystykę amplitudową. Jest ona kompromisem pomiędzy jakością pasma przepustowego a tłumieniem częstotliwości próbkowania. Dodatkowe tłumienie składowych o tak wysokich częstotliwościach wniosą użyte wzmacniacze operacyjne, które mają ograniczony czas narastania napięcia wyjściowego.
Budowa generatora
Schemat ideowy generatora pokazano na rysunku 4. Układ generatora należy zasilać napięciem stałym z zakresu 12…15 V, dobrze filtrowanym i najlepiej stabilizowanym. Do dodatkowego filtrowania tętnień o małej częstotliwości służy kondensator C1. To napięcie jest używane do zasilania stopnia wyjściowego. Napięcia +5 V, przeznaczonego dla wyświetlacza LCD, dostarcza stabilizator liniowy typu 7805. Kondensatory C2 i C3 zapobiegają jego wzbudzeniu. Prąd przezeń płynący jest na tyle niski, że nie wymaga
Rysunek 3. Charakterystyka amplitudowa zaprojektowanego filtru obliczona na drodze symulacji
radiatora. Z wyjścia układu 7805 jest zasilany stabilizator napięcia 3,3 V (LD1117-S33TR). To napięcie jest z kolei wymagane przez mikrokontroler STM32F051. Kaskadowe połączenie stabilizatorów pozwala rozłożyć moc w nich traconą. Stabilizator US2 jest układem LDO, który może pracować z tak niewielką (ok. 1,7 V) różnicą napięcia pomiędzy wejściem i wyjściem. Na potrzeby poprawnej pracy wzmacniaczy operacyjnych w torze sygnału, na płytce generatora znajduje się również przetwornica wytwarzająca napięcie ujemne. Jego wartość to ok. –5 V, lecz – jak zostanie dalej pokazane – nie jest to parametr krytyczny. W tej roli bardzo dobrze sprawdza się układ pompy ładunkowej typu ICL7660 w swojej typowej aplikacji. Nie korzysta z elementów indukcyjnych, przez co poziom emitowanych zaburzeń elektromagnetycznych jest niewielki. Przetwornik cyfrowo/analogowy znajdujący się w mikrokontrolerze ma wysoką rezystancję wyjściową, dlatego w pierwszej Wykaz elementów: Rezystory: R1, R6: 100 V SMD0805 R2: 4,7 kV SMD0805 R3: 20 kV SMD0805 R4, R5, R8, R9, R12, R13, R15: 10 kV SMD0805 R7, R10, R11, R14, R17: 330 V SMD0805 R16: 4,7 V SMD0805 RN1, RN2: 4×10 kV SIL5 P1: 10 kV montażowy leżący Potencjometr 10 kV liniowy do obudowy Kondensatory: C1: 1000 mF/25 V C2, C3, C5, C9, C11, C13, C18-C24, C26, C33: 100 nF SMD0805 C4, C6-C8, C10, C25, C30, C34: 10 mF/10 V SMD0805 C12, C14, C15, C27, C32: 1 nF SMD0805 C16: 470 pF SMD0805 C17: 100 mF/25 V C28, C29: 18 pF SMD0805 C31: 10 nF SMD0805 Półprzewodniki: US1: 7805 TO220 US2: LD1117S33TR SOT223 US3: ICL7660AC SO8 US4: TL084 DIP14 US5: STM32F051K8T6 TQFP32 Inne: J1: gniazdo DC 2,1/5,5 mm J2: goldpin 3pin 2,54 mm (opis w tekście) J3: ARK2 5mm J4: goldpin 6pin 2,54 mm JP1: goldpin 2×2pin 2,54 mm + dwie zworki (opis w tekście) JP2: goldpin 3pin 2,54 mm + zworka (opis w tekście) LCD1: 2*16 zgodny z HD44780 + listwa goldpin 16pin 2,54 mm (męska i żeńska) RS1: impulsator z przyciskiem S1: microswitch 22,5 mm 6×6 do druku Q1: kwarc 8 MHz niski THT Podstawka DIL14 Obudowa Z-80 (opis w tekście) Elementy mechaniczne (opis w tekście) ELEKTRONIKA PRAKTYCZNA 3/2017
Ekonomiczny generator funkcyjny DDS kolejności należy podać go na wtórnik napięciowy. Wybrano do tej roli układ typu TL084, ponieważ charakteryzuje się on: niską ceną, dostępnością, bardzo dużą impedancją wejściową (z racji zastosowania tranzystorów typu FET), szybką reakcją wyjścia (slew rate na poziomie 13 V/ms). Napięcie na wyjściu przetwornika C/A zmienia się w zakresie 0…3,3 V, dlatego trzeba zapewnić wzmacniaczom operacyjnym możliwość poprawnego przeniesienia tego sygnału w całym zakresie jego zmienności. Do tego celu służy napięcie ujemne, wytwarzane przez ICL7660. Układ TL084 wymaga ok. 3 V „odstępu” pomiędzy ujemną linią zasilania a napięciem przyłożonym do któregokolwiek z wejść. Podobnie rzecz ma się z wyjściem, które również wymaga pewnego marginesu. Użycie w tym miejscu wzmacniacza typu rail-to-rail byłoby o tyle nieefektywne, że szybkość zmian napięcia wyjściowego w nim jest niewielka (bądź jego ceny są wysokie). Ponadto, impedancja dołączona do wyjścia musi być, na ogół, rzędu kiloomów, co nie rozwiązuje problemu. Napięcie z przetwornika A/C, po zbuforowaniu wtórnikiem napięciowym, trafia na potencjometr ustalający amplitudę. Impedancja wyjściowa takiego dzielnika potencjometrycznego ulega silnym wahaniom (od zera do ok. 5 kV), co wpływałoby na charakterystykę filtru. Z tego powodu, za potencjometrem znajduje się jeszcze jeden wtórnik. Dzięki temu filtr jest sterowany ze źródła o znikomo małej impedancji wyjściowej. Zwora JP1 służy do ewentualnego ominięcia filtru regeneracyjnego i wyprowadzenia sygnału z przetwornika C/A wprost na wyjście. Jak zostanie potem pokazane, ten filtr wpływa negatywnie na czas narastania sygnału prostokątnego. Można w miejsce zwory dołączyć przełącznik odłączający filtr z toru przy generowaniu sygnału prostokątnego. Można również prowadzić testy z własnymi filtrami, o odmiennej topologii – możliwości jest wiele. Za filtrem włączono wzmacniacz nieodwracający o wzmocnieniu ok. 3 V/V. W ten sposób można uzyskać zmiany napięcia wyjściowego w zakresie 0…10 V. Taka amplituda jest przydatna podczas bezpośredniego wysterowania końcówki mocy. Przy okazji, wysoka impedancja wejściowa nie obciąża filtru. Za wzmacniaczem jest kondensator odcinający składową stałą, a ściślej mówiąc, dwa kondensatory połączone równolegle. Duża pojemność C17 ELEKTRONIKA PRAKTYCZNA 3/2017
43
PROJEKTY dobrze sprawdza się dla małej częstotliwości, za to C18 jest potrzebny do przeniesienia stromych zboczy. Rezystor R5 obciąża wstępnie wyjście układu, co polaryzuje kondensatory. Zworką JP2 można te kondensatory zewrzeć i w ten sposób wyłączyć je z toru sygnałowego. Do wskazywania aktualnej częstotliwości oraz kształtu sygnału służy standardowy wyświetlacz alfanumeryczny, zgodny z HD44780 o organizacji 2 wiersze po 16 znaków. Musi być zasilany napięciem 5 V, lecz akceptuje poziomy logiczne wystawiane przez mikrokontroler pracujący w logice 3,3-woltowej. Do mikrokontrolera został dołączony w trybie 4-bitowym. Gdyby wyświetlacz przeszedł w tryb odczytu zawartości rejestrów, na wyprowadzenia mikrokontrolera zostałoby podane napięcie rzędu 5 V. Jednak wyprowadzenia typu FT są w stanie takie napięcie wytrzymać bez żadnych konsekwencji. Potencjometr P1 służy do ustalenia prawidłowego kontrastu wyświetlacza. Rezystor R6 ogranicza prąd pobierany przez podświetlenie ekranu. Drabinka rezystorowa RN1 polaryzuje niewykorzystane wyprowadzenia wyświetlacza. Impulsator z przyciskiem służy do zmiany częstotliwości, zaś oddzielny microswitch jest przeznaczony do zmiany kształtu generowanego sygnału. Elementy stykowe iskrzą podczas przełączania, dlatego zostały do nich dodane elementy filtrujące. Przy styku rozwartym, rezystor 10 kV podciąga potencjał wejścia mikrokontrolera do +3,3 V. Podczas zwierania styku, ładunek z kondensatora jest odprowadzany poprzez rezystor 330 V. Włączenie rezystora szeregowo z kondensatorem zmniejsza prąd płynący podczas przełączania, co pozytywnie wpływa na żywotność styków oraz poziom emitowanych zakłóceń. Zadaniem mikrokontrolera jest – między innymi – generowanie sygnału analogowego. W generatorze zastosowano STM32F051K8T6 w obudowie TQFP32. Ma 64 kB pamięci Flash oraz 8 kB pamięci RAM. Pochodzi z rodziny STM32F0, która cechuje się relatywnie niską wydajnością, za to ich cena jest bardzo przystępna – rzędu nawet kilku złotych. Źródłem sygnału zegarowego dla podzespołów mikrokontrolera jest zewnętrzny rezonator kwarcowy 8 MHz, którego częstotliwość jest powielana sześciokrotnie poprzez wbudowany mnożnik z pętlą PLL. Wyjście wewnętrznego generatora kwarcowego jest sprzęgnięte z rezonatorem poprzez rezystor R17, który utrudnia wzbudzenie na częstotliwościach harmonicznych. W ten sposób, do dyspozycji jest przebieg o stabilnej częstotliwości 48 MHz. Jest on wprawdzie obarczony szumami fazowymi, wynikającymi z samej zasady działania PLL, lecz producent układ zadbał o to, by były one na akceptowalnym poziomie. W tym zastosowaniu nie trzeba się nimi
bardzo przejmować, gdyż budowany generator jest przystosowany do relatywnie niskich częstotliwości. Sekcja analogowa, zawierająca m.in. przetwornik C/A oraz układ PLL, jest zasilana za pośrednictwem filtru RC, składającego się z R16, C30 i C31. Producent sam zaleca, aby dodać ten, którego celem jest zmniejszenie przenikania zakłóceń z ogólnego zasilania 3,3 V, do którego dołączone są układy cyfrowe. Zasilanie dla pozostałych bloków mikrokontrolera jest filtrowane łącznie 6 kondensatorami – po trzy na jedno wejście zasilania. Równoległe połączenie kondensatorów 10 mF, 100 nF i 1 nF zapewnia skuteczne filtrowanie szerokiego spektrum częstotliwości. Wejście BOOT0 służy do wyboru źródła programu. W typowych zastosowaniach jego potencjał powinien być bliski zeru. Gdyby jednak w przyszłości zaszła potrzeba zmiany, wówczas można wylutować rezystor R15, a wolne pole lutownicze połączyć z +3,3 V. Złącze J4 służy do komunikacji z mikrokontrolerem za pośrednictwem protokołu SWD. Układ wyprowadzeń w tym złączu został dostosowany do płytek ewaluacyjnych z mikrokontrolerami z tej rodziny. Zawierają one programator mogący obsługiwać również układy dołączane z zewnątrz.
Oprogramowanie
Oprogramowanie dla mikrokontrolera napisano w środowisku Coocox. Przetwornik C/A jest sterowany w przerwaniach od timera TIM2 (listing 1). Użycie DMA
byłoby o tyle lepsze, że do wystawiania próbek nie byłby potrzebny rdzeń. Niestety, konieczność zbudowania akumulatora fazy i dodawania kolejnych liczb spowodowała, że nie można użyć DMA, które potrafi odczytywać jedynie kolejne adresy z pamięci. Wartości próbek są wpisywane do rejestru wejściowego przetwornika A/C bezpośrednio, bez użycia gotowych funkcji biblioteki StdPeriph. Funkcja ta wykonuje kilka dodatkowych czynności, które tutaj zabierałyby jedynie cenny czas. Tablica próbek tabl_gen jest tablicą dwuwymiarową. Pierwszy jej wymiar to kształt, a drugi to 256 kolejno ułożonych próbek jednego okresu wytwarzanego sygnału. W ten sposób przełączanie między kształtami nie wymaga kopiowania odtwarzanej na wyjściu tablicy, wystarczy przeskoczyć w inny obszar pamięci. Sama konfiguracja przetwornika C/A oraz timera TIM2 znajduje się na listingu 2. Przetwornik wystawia próbkę zaraz po jej pojawieniu się w rejestrze wejściowym, bez zbędnej zwłoki. W ten sposób częstotliwość próbkowania jest zdeterminowana jedynie przez kolejne przerwania od TIM2. Przesyłanie danych wewnątrz struktury zajmuje nieco czasu, który może ulegać zmianom, lecz wynikły z tego szum fazowy nie jest dokuczliwy przy zastosowaniach audio. W module DAC wyłączono bufor wyjściowy, ponieważ jego parametry nie były wystarczające: • bardzo długi czas narastania napięcia wyjściowego (rzędu kilku mikrosekund),
hase
Ekonomiczny generator funkcyjny DDS
Rysunek 5. Schemat montażowy generatora • duża rezystancja wyjściowa, • zawężenie zakresu zmian napięcia wyjściowego o margines wynoszący ok. 0,2 V od napięcia zasilania. Zamiast niego funkcję bufora wyjściowego pełni opisany już wtórnik napięciowy. Konieczne jest również ustawienie odpowiedniego przerwania w kontrolerze przerwań NVIC tak, aby przepełnienie timera TIM2 wymuszało przeskok do obsługi DAC. Na listingu 3 pokazano funkcję, która zamienia ustawioną częstotliwość na wartość przesunięcia w akumulatorze fazy. Wynika to ze wzoru:
= f
108 mm×58 mm, której schemat montażowy przedstawia rysunek 5. Lutowanie elementów należy rozpocząć od warstwy górnej, na której znajduje się mikrokontroler i inne podzespoły w obudowach SMD. Po odwróceniu płytki na drugą stronę można wlutować pozostałe elementy, poczynając od najniższych. Pod układ US4 polecam zastosować podstawkę. Stabilizator US1 można przylutować na dłuższych wyprowadzeniach, po czym położyć na powierzchni laminatu. Na sam koniec polecam zostawienie montażu 16-pinowego złącza męskiego pod wyświetlacz ciekłokrystaliczny. Powinno zo32 stać wlutowane od strony wierzchniej, więc 2 Acc phase = f ⋅ = f ⋅14316 , 55765 jego montaż utrudni pozostałe wcześniejszy 300kHz czynności. Rezonator kwarcowy, jeżeli jest 232 w niskiej obudowie, może znaleźć się na war⋅ = f ⋅14316, 55765 stwie górnej. 300kHz Celowo nie ucięto części ułamkowej, aby Domyślna konfiguracja zworek powinna obliczona wartość była możliwie zbliżona być następująca: JP1 zwarte 2 z 4 oraz 1 z 3 (uaktywnienie filtru dolnoprzepustodo żądanej. Część całkowita i ułamkowa wego), JP2 zwarte 2 z 3 (separacja skłasą mnożone oddzielnie, aby nie wprowadzać dowej stałej). W ten sposób bardzo łatwe zmiennych zmiennoprzecinkowych. Te obliczenia są wykonywane w pętli głównej, dlatego czas ich trwania nie ma większego znaczenia. Częstotliwość jest przechowywana w postaci oddzielnych cyfr, jest to prostsze przy ustawianiu każdej z osobna.
stanie się wykrycie jakiegoś uszkodzenia w torze. Ponadto, do złącza J2 należy podłączyć potencjometr. Po doprowadzeniu zasilania do złącza J1 (12…15 V DC) należy skontrolować wartości napięć wychodzących z układów US1, US2 i US3. W wypadku tego ostatniego napięcie może nie osiągać wartości –5 V, ale wystarczy, aby było niższe od –3 V. Jeżeli kontrola powiodła się, można przejść do ustawienia kontrastu wyświetlacza potencjometrem. Po wyregulowaniu, jeżeli wyświetlacz działa prawidłowo, górny wiersz powinien być wypełniony zaczernionymi prostokątami. Kolejną czynnością jest zaprogramowanie pamięci Flash mikrokontrolera. Może do tego posłużyć programator z interfejsem SWD lub jakakolwiek płytka ewaluacyjna wyposażona w takie złącze. Jeżeli układ generator będzie zasilany podczas programowania, lepiej nie łączyć wyprowadzenia numer 1 złącza J4 z programatorem. Ewentualna różnica napięć zasilających może wywołać przepływ prądu o znaczącej wartości, co może uszkodzić któreś urządzenie. Jeżeli programowanie przebiegło poprawnie, ekran wyświetlacza powinien wyglądać tak, jak na fotografii 6. Płytka drukowana pod układ generatora została przewidziana do montażu w obudowie Z-80. W pokrywie górnej należy wyciąć otwór pod wyświetlacz oraz wywiercić otworki na microswitch, impulsator i śruby mocujące płytkę. Te ostatnie znajdują się 3 mm od krawędzi płytki. W układzie prototypowym wyświetlacz został przykręcony do płytki za pomocą czterech tulei dystansowych M3, co wymagało powiększenia otworów w wyświetlaczu. Tuleje te mają długość 10 mm. Dodatkowo, pomiędzy metalową tuleją a powierzchnią płytki generatora warto dołożyć podkładki z nieprzewodzącego materiału, np. poliamidu. Jeżeli ich grubość wynosi ok. 1 mm lub mniej, złącze wyświetlacza będzie kontaktowało pewnie. W bocznych ściankach obudowy muszą się znaleźć otwory na potencjometr do regulacji amplitudy, wtyk zasilający oraz gniazdo lub przewody z generowanym sygnałem. Polecam również wyprowadzenie przełączników dołączonych do goldpinów JP1 i JP2, aczkolwiek nie jest to konieczne. Płytkę generatora można przykręcić do górnej pokrywy, również używając do tego czterech tulei dystansowych M3 i odpowiednich śrub. Długość tych tulei w układzie prototypowym
Budowa i uruchomienie
Układ generatora został zmontowany na dwustronnej płytce drukowanej o wymiarach
Fotografia 6. Ekran wyświetlacza po uruchomieniu układu ELEKTRONIKA PRAKTYCZNA 3/2017
wyniosła 15 mm. Układ w obudowie można zobaczyć na fotografii 7.
Eksploatacja
Układ generatora z zaprogramowanym mikrokontrolerem oraz prawidłowo ustawionym kontrastem wyświetlacza jest gotowy do użytku. Domyślna częstotliwość wynosi 0 Hz, zatem na wyjściu panuje napięcie stałe, zbliżone do zera. Zmiana częstotliwości odbywa się poprzez ustawianie wartości każdej cyfry z osobna za pomocą enkodera. Przełączanie między cyframi odbywa się poprzez wciskanie osi enkodera. Aktualnie zaznaczona cyfra jest sygnalizowana odpowiednim położeniem kropki nad liczbą wyrażającą częstotliwość. Regulacja odbywa się bezzwłocznie, tj. po zmianie wartości którejkolwiek cyfry, sygnał o nowej częstotliwości pojawia się na wyjściu. Zmiana kształtu odbywa się poprzez wciskanie microswitcha. Trzy kształty są przewijane w pętli: SINE (sinusoida), TRIANGLE (trójkąt), SQUARE (prostokąt o wypełnieniu 50%). Przebiegi czasowe tych sygnałów o częstotliwości 1 kHz i maksymalnej amplitudzie przedstawiają rysunki 8, 9 i 10. Wiernie odwzorowują one założone kształty. Widmo
Fotografia 7. Układ generatora w obudowie amplitudowe sygnału sinusoidalnego jest wolne od harmonicznych i innych zakłóceń, co przedstawia rysunek 11. Pewne zastrzeżenia można mieć do sygnału prostokątnego. Czas narastania jego zboczy wynosi ok. 4,7 ms, co odpowiada pasmu ok. 75 kHz. W niektórych wypadkach to może być zbyt mało, by zaobserwować niepożądane reakcje badanego układu. Dlatego do układu wprowadzono zworkę JP1, która pozwala ominąć filtr regeneracyjny i tym samym zmniejszyć czas narastania. Z wyłączonym filtrem czas narastania maleje do ok. 900 ns, co przekłada
się na poszerzenie pasma sygnału prostokątnego do ok. 390 kHz. Wraz ze wzrostem częstotliwości maleje amplituda generowanego sygnału – ten spadek jest widoczny powyżej ok. 20 kHz. Dlatego warto na bieżąco monitorować amplitudę za pomocą oscyloskopu, ponieważ generator jej nie kontroluje. Zachęcam do własnych eksperymentów z tym układem, zwłaszcza z filtrem dolnoprzepustowym. Zastosowanie innego filtru może diametralnie zmienić jakość generowanego sygnału. Michał Kurzela, EP
Monitorowanie Raspberry Pi poprzez komunikator internetowy Raspberry Pi to świetna platforma do stworzenia np. systemu automatyki domowej. Duża liczba gotowych modułów oraz liczne przykładowe aplikacje pozwalają niemal błyskawicznie zestawić dosyć złożony system nadzorujący mieszkanie lub dom. Problem pojawia się dopiero na etapie tworzenia interfejsu użytkownika. Umieszczenie w nim wszystkich funkcji oraz wbudowanie mechanizmu powiadomień jest po prostu mocno czasochłonne. Zamiast tego można swój bezinterfejsowy system wzbogacić o obsługę komunikatora internetowego i sterować domem w sposób tekstowy. Na wstępie należy przyznać – sterowanie urządzeniami za pomocą komend tekstowych to obecnie archaizm, który w komercyjnych rozwiązaniach konsumenckich raczej nigdy nie będzie miał już zastosowania.
Natomiast używanie komunikatora internetowego w aplikacji przemysłowej to pomyłka (z zastrzeżeniem, o którym piszemy później). Ale dla majsterkowicza, który zna się na elektronice i programowaniu, ale nie
Tabela 1. Biblioteki XMPP dostępne w różnych językach programowania Nazwa
Język programowania
agsXMPP SDK
C# / .net / Mono
Aioxmpp
Python
AnyEvent::XMPP
Perl
as3xmpp
Flash / ActionScript
AXMPP
Ada
Babbler
Java
Blather
Ruby
cl-xmpp
Lisp
Coversant SoapBox SDK Studio
C# / .net / Mono / C++
dojox.xmpp
JavaScript
Dxmpp
C++
Echomine Feridian
Java
Eiffel
PHP
Emite
Java
Escalus
Erlang
Exmpp
Erlang
Frabjous
JavaScript
Gloox
C++
Headstock
Python
Hsxmpp
Haskell
Hxmpp
haXe
Iksemel
C
IP*Works Internet Toolkit
ActiveX, C++, C#,
Iris
C++
ma serca ani talentu (ani czasu) do opracowywania GUI, wykorzystanie komunikatora może być zbawieniem.
Który komunikator wybrać?
Na wstępie warto zdecydować się na któryś z dostępnych komunikatorów internetowych. Wybór nie jest mały, ale jeśli skoncentrować się na jego uniwersalności, niezawodności lub otwartości oraz dostępności narzędzi dla Raspberry Pi, można go szybko ograniczyć. Ostateczna decyzja zależy od tego, kto i za pomocą jakiego urządzenia będzie łączył się z Raspberry Pi. Dobrym wyborem wydaje się użycie bardzo popularnej usługi WhatsApp, które nie tylko dostępna jest prawie na całym
Tabela 1. cd. Nazwa
Język programowania
jabber.net
C# / .net / Mono
jabber.py
Python
JabberLib
Tcl
Jabber Stream Objects (JSO)
Java
JAXL
PHP
jQuery-XMPP-plugin
JavaScript
Jreen
C++/Qt
JSJaC
JavaScript
Libstrophe
C
Libpurple
C/C++
Lightr
PHP
Loudmouth
C
MatriX
C# / .net / Mono
net::XMPP
Perl
node-xmpp
JavaScript
Oajabber
C++
Pontarius XMPP
Haskell
Pyxmpp
Python
pyxmpp2
Python
QXmpp
C++
seesmic-as3-xmpp
Flash / ActionScript
Sharp.Xmpp
C# / .net / Mono
Skates
Ruby
SleekXMPP
Python
Slixmpp
Python ELEKTRONIKA PRAKTYCZNA 3/2017
47
PROJEKTY SOFT Tabela 1. cd. Nazwa
Język programowania
Smack
Java (Java SE 7 and Android)
stanza.io
JavaScript
strophe.js
JavaScript
StropheCappuccino
Objective-J
Swiften
C++
Tinder
Java
Txmpp
C++
Twisted Words
Python
Ubeity
C#
Verse
Lua
XIFF
Flash / ActionScript
xmpp-psn
Python
jaxmpp2
Java / Android / Google Web Toolkit
xmpp4js XMPP4R
Tabela 2. Serwery XMPP dla różnych systemów operacyjnych Nazwa
Platforma (System operacyjny)
Apache Vysper
Windows / Linux
Citadel
Linux
CommuniGate Pro
Linux / Mac OS X / Windows
Coversant SoapBox Server
Windows
Djabberd
Linux
Ejabberd
Linux / Mac OS X / Solaris / Windows
IceWarp
Linux / Windows
iChat Server
Mac OS X
in.jabberd
Linux
Isode M-Link
Linux / Solaris / Windows
Jabber XCP
Linux / Solaris / Windows
jabberd 1.x
Linux
jabberd 2.x
Linux / *BSD / Solaris / Windows
JavaScript
Jerry Messenger
Linux / Windows
Ruby
Kwickserver
Windows
xmpp4r-simple
Ruby
Metronome IM
Linux / Mac OS X
Xmppframework
Objective C
MongooseIM
Linux / Mac OS X
Xmpphp
PHP
Openfire
Linux / Mac OS X / Solaris / Windows
Xmpppy
Python
XMPP-FTW
JavaScript
Oracle Communications IM Server
Linux / Solaris / Windows
Z-XMPP
JavaScript
Prosody IM
Linux / Mac OS X / Windows
Psyced
Linux / Mac OS X / Windows
świecie, ale także oprogramowanie klienckie zostało przygotowane na różne systemy operacyjne, a nawet można z niego korzystać przez przeglądarkę internetową. Zaletą jest też szyfrowanie komunikacji w trybie „end-to-end”, co oznacza – jeśli wierzyć usługodawcy, że przesyłane wiadomości są czytelne tylko dla nadawcy i adresata, a potencjalni włamywacze musieliby zastosować silne maszyny deszyfrujące lub niezłą socjotechnikę. Pewnym problemem jest natomiast to, że WhatsApp wymaga aktywnego numeru telefonu do rejestracji urządzenia klienckiego oraz że jeden numer może być wykorzystywany przez maksymalnie jedno urządzenie w danej chwili. To uproszczenie może sprawiać pewne trudności, ale w obecnych czasach całkiem łatwo jest choćby na chwilę zdobyć numer telefonu, za pomocą którego można zarejestrować się w WhatsApp. Alternatywnym sposobem będzie użycie własnego (lub gotowego, bezpłatnego) serwera XMPP, a więc standardu bazującego na dawniej popularnym Jabberze. Aktualnie XMPP też wspiera szyfrowanie, a możliwość postawienia własnego serwera sprawia, że da się w pełni panować nad stanem komunikacji. Co więcej, XMPP jest otwartym standardem, opartym na XML-u i sformalizowanym przez organizację Internet Engineering Task Force. Lata doświadczeń dużych firm sprawiły, że XMPP uważa się za sprawdzony protokół, który można wykorzystać w przemyśle i świetnie nadaje się on do zastosowań
48
ELEKTRONIKA PRAKTYCZNA 3/2017
Siemens OpenScape w aplikacjach InTigase ter netu R zecz y. Biblioteki XMPP Vines są dostępne m.in. Wokkel w Pythonie, JavaScripcie, C++, PHP i w Javie, przy czym w wielu przypadkach istnieje więcej niż jedno rozwiązanie dla danego języka (tabela 1). Wybór serwerów też jest bardzo duży (tabela 2), nie mówiąc już o liście gotowych aplikacji klienckich (tabela 3).
WhatsApp przez Yowsup
W niniejszym przykładzie pokażemy, jak najszybciej podłączyć Raspberry Pi do popularnego komunikatora, a więc do WhatsAppa. W dalszej części artykułu pokażemy, jak skorzystać z czystego XMPP. By obsłużyć WhatsApp, użyjemy otwartej biblioteki Yowsup w wersji 2.5.0, której szczegóły można poznać na GitHubie, pod adresem https://github.com/tgalal/yowsup. Biblioteka Yowsup została napisana w Pythonie – i jak chwalą się jej autorzy – posłużyła m.in. do utworzenia nieoficjalnej aplikacji klienckiej Wazapp na telefon Nokia N9 a także na system operacyjny Blackberry 10. Yowsup teoretycznie wymaga Pythona 2.6 lub 3.0 albo ich nowszych wersji, przy czym w trakcie naszych testów okazało się, że działa dopiero z Pythonem 3. Ponadto, konieczne jest zainstalowanie dodatkowych pakietów. Będzie to przede wszystkim
Linux Linux / Solaris / Mac OS X / Windows Linux / Mac OS X Linux / Solaris / Mac OS X python3-dateutil, a w przypadku chęci zapewnienia szyfrowania: protobuf, pycrypto i python3-axolotl-curve25519. Jeśli biblioteka ma być obsługiwana z linii komend, należy też doinstalować argparse, readline i ew. pillow, który pozwala przesyłać obrazy. Teoretycznie, po pobraniu obrazu pełnego Raspbiana instalacja Yowsupa powinna być prosta. Powinno wystarczyć polecenie pip install yowsup2, ale już w wypadku obrazu Raspbiana w wersji lite, programu python-pip nie ma domyślnie zainstalowanego. Można go doinstalować poleceniem sudo apt-get install python-pip lub gdy chcemy korzystać z Pythona 3 (u nas dopiero tak działało) sudo apt-get install python3-pip. Wraz z programem python-pip doinstaluje się szereg narzędzi dla Pythona, które też mogą się przydać. Ponadto instalator programu Yowsup2 kończy działanie poleceniem setup.py install, które wymaga uprawnień roota, by móc zmodyfikować wszystkie potrzebne pliki. Stąd instalację najlepiej wywołać za pomocą sudo pip3 install yowsup2. Gdyby instalacja nie powiodła się z jakiegoś powodu, można pobrać źródła programu yowsup i samodzielnie go skompilować. W tym celu należy:
Monitorowanie Raspberry Pi poprzez komunikator internetowy Tabela 3. Aplikacje klienckie XMPP dla różnych systemów operacyjnych Nazwa
Platforma (System operacyjny)
Tabela 3. cd. Nazwa
Platforma (System operacyjny)
Kopete
Linux
Mcabber
Console / Text-Mode
Miranda IM
Windows
Miranda NG
Windows
Monal IM
Mobile (iOS)
Movim
Przeglądarka
Linux
Mozilla Thunderbird
Linux / OSX / Windows Mobile (iOS)
BlueJabb
Mobile (Android, Blackberry (BBOS), Nokia Symbian S40/S60 i Asha)
OneTeam for iPhone OneTeam
Linux / OSX / Windows
Boogie Chat
Mobile (iOS)
Pidgin
Linux / OSX / Windows
Buddycloud
Mobile / Web / Console
Poezio
Console / Text-Mode
Candy
Przeglądarka
Profanity
Console / Text-Mode
ChatSecure
Mobile (Android, iOS)
Psi+
Linux / OSX / Windows
Coccinella
Linux / OSX / Windows
Psi
Linux / OSX / Windows
Conversations
Mobile (Android)
Quiet Internet Pager
Windows
Converse.js
Przeglądarka
Coversant SoapBox Communicator
qutIM
Linux / OSX / Windows
Windows
Salut à Toi
Linux / Console / Text-Mode / Przeglądarka
eM Client
Windows
Sim-IM
Linux
Empathy
Linux
Spark
Linux / OSX / Windows
Finch
Console / Text-Mode
SparkWeb
Przeglądarka
Gajim
Linux / Windows
Swift
Linux / OSX / Windows
GNU Freetalk
Console / Text-Mode
Talkonaut
Mobile
GreenJab
IBM i
Tigase Messenger
Przeglądarka
IM+
Mobile
Tigase Minichat
Przeglądarka
Instantbird
Linux / OSX / Windows
Tkabber
Linux / OSX / Windows
irssi-xmpp
Console / Text-Mode
Trillian
Windows/ OSX / Mobile / Przeglądarka
jabber.el
Linux
V&V Messenger
Windows
Jabbim
Linux / OSX / Windows
Vayusphere
Mobile (BlackBerry)
JAJC
Windows
VSTalk
Windows
Jappix
Przeglądarka
WTW
Windows
Jitsi
Linux / OSX / Windows
Xabber
Mobile (Android)
JSXC
Przeglądarka
xmpp-client
Linux / OSX
JWChat
Przeglądarka
Xmppchat
Przeglądarka
Kadu
Linux / OSX / Windows
XMPPWebChat
Przeglądarka
Kaiwa
Przeglądarka
Yaxim
Mobile (Android)
Adium
OSX
Apple Messages
OSX
AQQ
Windows
AstraChat
Mobile (Android, iOS) / Linux / OSX / Windows
Beem
Mobile (Android)
BitlBee
• utworzyć podkatalog na program yowsup, wejść do niego a następnie pobrać spakowane źródła z githuba wget https://github.com/tgalal/yowsup/archive/ master.zip, • rozpakować je unzip master.zip, • przejść do powstałego katalogu yowsup. W naszym wypadku kompilacja była możliwa po pobraniu dodatkowych bibliotek oraz aktualizacji jednej z bibliotek programu pip. Konkretnie należało doinstalować pakiety poleceniami: sudo apt-get install python3-dateutil sudo apt-get install python3-setuptools sudo apt-get install python3-dev sudo apt-get install libevent-dev
sudo apt-get install ncurses-dev a następnie zaktualizować bibliotekę six, która odpowiada za konwersję pomiędzy pythonem 3 a starszym sudo pip3 install six – upgrade. Wtedy można w końcu rozpocząć kompilację, która powinna przebiec już bez błędów, wywołując sudo python3 setup.py install w katalogu z programem. Następnie należy przeprowadzić autoryzację numeru telefonu podłączonego do sieci WhatsAppa. W tym celu należy wywołać polecenie yowsup-cli registration –requestcode sms –phone 48123456789 –cc 48 –mcc 260 –mnc 98, przy czym liczbę przy opcji phone należy zamienić na posiadany numer telefonu, parametr cc określa numer kierunkowy
kraju, parametr mcc to tzw. Mobile Country Code – numer identyfikujący kraj pod kątem sieci komórkowych. Potrzebny jest też parametr mnc, który identyfikuje konkretną sieć komórkową w ramach danego kraju. Listę kodów MMC można znaleźć pod adresem https://goo.gl/XIqumG, a polskich MNC (Mobile Network Code) na stronie https://goo.gl/ Oc3Duy. Kompletne tabele kodów państw i sieci oraz stan tych sieci można znaleźć pod adresem https://goo.gl/17qUqc. Pomyślna rejestracja powinna zakończyć się potwierdzeniem („status: ok”), a ustawienia powinny zostać zapisane w pliku konfiguracyjnym. Jeśli wszystko jest OK, wysłanie wiadomości whatsAppowej z Raspberry Pi będzie ELEKTRONIKA PRAKTYCZNA 3/2017
49
PROJEKTY SOFT wymagało już tylko wydania polecenia yowsup-cli demos -s 48987654321 „To jest tresc wiadomosci”, gdzie pierwszy parametr to numer telefonu adresata, a drugi to oczywiście treść nadawanej wiadomości. Wysyłanie wiadomości można zautomatyzować, wbudowując w skrypty obsługujące elementy automatyki domowej odpowiednie procedury, które samodzielnie będą wywoływać komendę yowsup-cli z adekwatnymi parametrami. Można w ten sposób np. informować o przekroczeniu pożądanej temperatury na wybranym czujniku czy np. o wykryciu zdarzenia otwarcia drzwi do mieszkania.
Rysunek 1. Rejestracja w serwisie jabbim.pl
Rysunek 3. Dodanie nowego kontaktu do listy
Rysunek 2. Webowy klient XMPP – jwchat.org
Rysunek 4. Lista kontaktów
a następnie, po spacji, hasło. Po zapisaniu pliku należy zmienić dla niego uprawnienia. Inaczej program nie będzie działać chmod 600 ~/.sendxmpprc. Teoretycznie już teraz można korzystać z usługi, ale warto chwilę poczekać – z naszych doświadczeń wynika, że serwer Jabbim.pl potrzebuje kilku minut, zanim „zorientuje się”, że ma nowego użytkownika. Samo wysłanie wiadomości wymaga przekazania na wejście programu sendxmpp przesyłanej treści oraz wskazania nazwy adresata. Przykładowo w ten sposób echo „To jest wiadomość z Raspberry Pi” | sendxmpp -t [email protected]. Jeśli na razie nie chcemy instalować żadnego specjalnego komunikatora, albo użyć dotychczasowych kont na potrzeby testów, możemy użyć darmowego, webowego klienta XMPP – np. jwchat. org (rysunek 2). Wystarczy wejść przeglądarką na stronę jwchat.org i zalogować się za pomocą danych podanych w jabbimie. My zalogowaliśmy się za pomocą drugiego z utworzonych kont. Następnie warto dodać nowy kontakt do listy, tj. wysłać zaproszenie do konta użytego w Raspberry Pi (rysunek 3). Nie ma potrzeby potwierdzać przyjęcia zaproszenia, jeśli nie zależy nam na dzieleniu się statusami wiadomości. Mając już kontakt na liście (rysunek 4), możemy natomiast otworzyć czat do niego i rozmawiać z naszym minikomputerem. Powłoka bash z Raspbiana pozwala na tak wiele, że możemy już za samą jej pomocą, bez
konieczności pisania dodatkowych programów, przesyłać dosyć duo informacji przez komunikator. Przykładowo w komendzie echo można wyświetlić wynik dowolnego polecenia systemowego. Jeśli chcemy przesłać z Raspberry Pi aktualną datę, możemy użyć polecenia echo „Jest już ” $(date) | sendxmpp -t [email protected]. Efekt widać na rysunku 5. To otwiera wiele możliwości. Jeśli np. mamy do Raspberry Pi dołączony czujnik temperatury, z którego wskazanie pobieramy poleceniem ~/temp, to wywołując echo „Aktualna temperatura w domu to: ” $(~/temp) | sendxmpp -t [email protected], prześlemy ją do naszego klienta. Raspberry Pi ma domyślnie wbudowany sensor temperatury, którego wskazanie można zdobyć poleceniem /opt/vc/bin/vcgencmd measure_temp i już teraz można je wykorzystać, bez żadnych dodatkowych czujników, ale trzeba mieć na uwadze, że będzie to wartość temperatury procesora, a nie otoczenia.
XMPP na darmowym serwerze
WhatsApp jest usługą, którą kontroluje jedna konkretna firma i może zajść sytuacja, że zmieni coś w działaniu swojego serwisu, powodując, że istniejąca aplikacja przestanie działać. W przypadku skorzystania z XMPP unikamy tego problemu, szczególnie jeśli sami postawimy serwer XMPP. Na potrzeby tego przykładu, by skrócić artykuł, skorzystamy jednak z gotowego, darmowego serwera XMPP. Wybór tego typu usług jest bardzo duży – można je znaleźć spisane pod adresem https://goo.gl/GYtZVa, gdzie aktualnie zabrano 150 pozycji. Każdy z serwerów na liście ma podaną datę utworzenia, kraj, w którym się znajduje, organizację, która wydała mu certyfikat bezpieczeństwa, wykorzystywane oprogramowanie (dominuje Prosody i ejabberd) wraz z datą aktualizacji oraz ocenę klasy bezpieczeństwa. W Polsce dostępnych jest kilka serwerów, z czego nie wszystkie mają dobre oceny bezpieczeństwa. My skorzystaliśmy z serwisu jabster. pl, który jak się okazało, wskazuje aktualnie na serwery jabbim.pl. Rejestracja w serwisie jabbim.pl jest bardzo łatwa. Wystarczy podać pożądany login i hasło oraz potwierdzić, że nie jest się robotem (rysunek 1). Chwilę później pojawia się ekran potwierdzenia. Jeśli wcześniej nie korzystało się z żadnego konta XMPP, warto stworzyć sobie od razu drugie, na którym będziemy odbierać wiadomości z Raspberry Pi. My do komunikacji z serwerem Jabstera będziemy używać gotowego, perlowego oprogramowania, dostępnego w repozytoriach Raspberry Pi – programu sendxmpp. Można go zainstalować wraz ze wszystkimi potrzebnymi zależnościami za pomocą polecenia sudo apt-get install sendxmpp. Obsługa programu sendxmpp również jest łatwa. Najpierw należy stworzyć plik z danymi konfiguracyjnymi, a więc z nazwą konta i hasłem. Plik ten powinien się nazywać .sendxmpprc i być dostępny tylko dla właściciela. Tworzymy go poleceniem nano ~/.sendxmpprc, a w jego „wnętrzu” wpisujemy w jednej linijce, najpierw nazwę konta, z którego ma korzystać Raspberry Pi,
50
ELEKTRONIKA PRAKTYCZNA 3/2017
Regularnie lub w razie potrzeby
Raspberry Pi może wysyłać informacje regularnie, co określony czas, albo np. tylko w razie potrzeby, gdy wystąpi określone zdarzenie. W tym drugim przypadku wystarczy po prostu napisać stosowny program i umieścić w nim w odpowiednim miejscu wywołanie polecenia systemowego echo z określonymi parametrami. Natomiast, jeśli
Monitorowanie Raspberry Pi poprzez komunikator internetowy Listing 1. Kod skryptu przesyłającego ostrzeżenie o zbyt wysokiej temperaturze #!/bin/bash #pobieranie temperatury procesora i wycinanie z niej jedynie wartości liczbowej, po czym przypisywanie jej do zmiennej temp temp=$(/opt/vc/bin/vcgencmd measure_temp | cut -c6-7) #sprawdzanie czy temperatura przekracza 45 stopni Celsjusza if [ „$temp” -gt 45 ]; then #przesyłanie ostrzeżenia przez XMPP echo Procesor RPi ma zbyt wysoką temperaturę: $(/opt/vc/bin/vcgencmd measure_ temp) | sendxmpp -t [email protected] fi
Rysunek 5. Efekt działania polecenia „echo” chcemy regularnie przekazywać jakieś dane, warto skorzystać z programu crond, który domyślnie dostępny jest w większości, jak nie wszystkich linuksach. Program crond działa w oparciu o plik konfiguracyjny, tzw. crontab. W Raspberry Pi można go utworzyć lub edytować za pomocą polecenia crontab -e. Przy pierwszym uruchomieniu system zapyta o edytor tekstu, którego chcemy użyć do zmiany pliku konfiguracyjnego.
Struktura pliku crontab składa się z linii, w których kolejno podawane są minuty, godziny, dni miesiąca, miesiące i dni tygodnia oraz komendy do wywołania. Poszczególne wartości są od siebie oddzielane tabulatorami lub spacjami. Program crond po uruchomieniu wczytuje tablicę konfiguracyjną do pamięci i następnie co minutę sprawdza, które z wierszy należy w danej chwili wykonać. Wpisanie liczby na pozycji odpowiadającej np. godzinie będzie oznaczało, że komenda z tej linii ma się wykonać tylko, gdy aktualna godzina odpowiada wpisanej wartości. Należy jednak pamiętać, że by komenda była wykonana, muszą być spełnione wszystkie warunki w linii, czyli jeśli chcemy, by akcja była uruchamiana w poniedziałki o godzinie 15, musimy w drugiej kolumnie wpisać 15, a w piątej 1. W pozostałe kolumny powinniśmy wpisać * (gwiazdki), jeśli minuty, dni i miesiące nie mają dla nas znaczenia. Trzeba jednak zauważyć, że pozostawienie gwiazdki w polu minut sprawi, że komenda zostanie wykonana w każdy poniedziałek łącznie 60 razy – od 15:00 do 15:59, co minutę. Jeśli komenda ma być wykonywana tylko o 15:00,
musimy w kolumnie minut wpisać 0. Możemy też zażądać, by wykonywała się co 5 minut – wtedy w kolumnie minut wpisujemy */5. W ramach komend wskazywanych w tablicy crontab można podawać nazwy skryptów, które mogą zawierać szereg poleceń oraz zdarzenia warunkowe. W ten sposób możemy np. co 5 minut sprawdzać temperaturę, ale powiadamiać użytkownika tylko o jej przekroczeniu. Wtedy w crontabie wpisujemy linijkę */5 * * * * ~/temp.sh, a w katalogu domowym użytkownika tworzymy skrypt temp.sh, taki jak na listingu 1.
Podsumowanie
Zaprezentowany sposób to jeden z najszybszych, by utrzymywać powiadomienia komunikatorem z Raspberry Pi. Dalej program można rozbudować o przyjmowanie zdalnych poleceń, wykorzystanie własnego serwera oraz o wykorzystanie eksperymentalnego protokołu XMPP-IoT, który jest opracowywany pod kątem Internetu Rzeczy. Ma on rozwiązywać m.in. problem akceptowania zaproszeń do listy znajomych przez komunikujące się ze sobą rzeczy. Marcin Karbowniczek, EP
Zasilacz LED małej mocy W miarę postępu przekaźnik zastąpiono lampą, lampę – tranzystorem, a wiele tranzystorów – układem scalonym. Nie inaczej jest w zasilaniu LED – kiedyś do najprostszych zastosowań wystarczał rezystor, a dzisiaj jest potrzebny specjalizowany układ scalony. Oczywiście, ma on kilka wyróżniających cech uzasadniających zastosowanie.
AVT-5561
Efektowny sterownik oświetlenia (EP 12/2016) AVT-1918 Oświetlacz pierścieniowy LED (EP 8/2016) AVT-1912 Miniaturowy sterownik taśmy LED RGB (EP 7/2016) AVT-5536 Sterownik taśmy LED ze zdalnym sterowaniem (EP 4/2016) AVT-1867 Sterownik zasilania taśm LED z wyłącznikiem czasowym (EP 8/2015) AVT-3133 Sterownik oświetlenia LED sterowany dowolnym pilotem (EdW 4/2015) AVT-1800 LED Dimmer – regulator oświetlenia LED (EP 5/2014) AVT-1669 Sterownik oświetlenia LED wewnątrz szafy (EP 3/2012) AVT-1627 Żarówki LED (EP 8/2011) AVT-1584 Żarówka LED (EP 8/2010) AVT-1514 Sterownik sekwencyjnego załączania oświetlenia (EP 2/2009) AVT-1509 Sterownik RGB (EP 2/2009) AVT-5164 RGB Driver (EP 12/2008) sterownik_led_3w Sterownik LED RGB o mocy 3 W (EP 3/2015) * Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
52
ELEKTRONIKA PRAKTYCZNA 3/2017
16 15 14 13
(wymienione artykuły są w całości dostępne na FTP)
DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb
niezależnie od zmian zasilania. Wartość prądu jest określana rezystorem Rset. Wartości prądów poszczególnych kanałów są stabilizowane z dokładnością 1%, co zapewnia jednakową jasność i równomierność świecenia zasilanego podświetlania. Ze względu na możliwość zasilania białych LED, ADM8845 ma wbudowaną przetwornicę napięcia. W zależności od wartości napięodpowiadające wyprowadzenie FBx niepodcia zasilania, układ automatycznie przełączy łączone lub podłączone do masy. Moduł, oprócz zasilania 2,7…5,5 V o wykrotność powielania na 1/1,5/2 dla zapewnienia stałego prądu LED przy zmianach dajności dostosowanej do prądu LED, wyzasilania w zakresie 2,7…5,5 V. Całkowita maga także sygnału sterującego PWM. Jeżeli sprawność układu osiąga 88%, przy dopusznie wykorzystujemy regulacji jasności, podczalnym prądzie LED 30 mA. Wejścia CTRL łączenie PWM do masy wyłączy LED, podłąumożliwiają oprócz sterowania dwustanoczenie do VCC załączy LED z maksymalnym wego ON/OFF także regulację jasności za poustalonym prądem. Możliwe jest także zastomocą PWM (f= 0,1…200 kHz). sowanie ADM8843 przeznaczonego do zasilania 4 LED. Wtedy należy wyprowadzenia Schemat ideowy zasilacza pokazano na ry4 i 9 dołączyć krótką zworą do masy. sunku 1. Prąd LED określa wzór I=141,6/ Adam Tatuś, EP Rset. Może on być zmieniany w szerokich granicach, należy tylko skontrolować moc traconą w układzie. C2 Schemat monta1uF PWR C1 żowy zamieszczono GND 1 2.2uF VCC 2 na rysunku 2. ZaPWM 3 silacz zmontowano U1 na dw ust ron nej 17 EP płytce drukowanej. 1 VOUT Montaż nie wymaga CTRL2 12 2 C2+ C2– 11 C3 opisu, należy tylko 3 ISET GND 10 2.2uF 4 R1 FB6 9 FB1 poprawnie przylu6k8 ADM8845ACPZ tować pad termiczny U1. Model pełni C4 funkcję oświetlacza dla czujnika li1uF nii, w którym LED montowane są bezpośrednio na płyD1 D2 D3 D4 D5 D6 tce drukowanej. Dla ułatwienia innych zastosowań jest możliwe odcię- Rysunek 1. Schemat ideowy zasilacza LED małej mocy 5 6 7 8
Opisywany zasilacz LED jest oparty na specjalizowanym sterowniku ADM8845 firmy Analog Devices. Jest on przeznaczony jest do zasilania 6 LED w dwóch grupach i stosowany głównie w sterowaniu układów podświetlenia wyświetlaczy. Każda dioda ma źródło prądowe zapewniające stały prąd,
cie części z diodami i użycie padów na płytce do zasilania diod świecących innego typu. Możliwe jest także zasilanie 3 LED o większych wymogach prądowych (do 60 mA) poprzez zwarcie par wyprowadzeń FB1/FB2, FB3/FB4, FB5/FB6. Możliwe jest także zasilanie mniejszej liczby LED, w tym wypadku należy pozostawić
Rysunek 2. Schemat montażowy zasilacza LED małej mocy
(wymienione artykuły są w całości dostępne na FTP)
AVT-1941
Ośmiokanałowy termometr z I2C (EP 1/2017) AVT-5573 Nieskomplikowany termometr-rejestrator (EP 11/2016) AVT-5535 Termometr 2-kanałowy z interfejsem Bluetooth (EP 4/2016) AVT-5518 Termometr bezprzewodowy (EP 11/2015) AVT-1863 Termometr z interfejsem Bluetooth (EP 8/2015)
* Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
DZ1 NUP2105
1 2 3 4 5
V33 DQ ADR
FB2 BLM21AG151SN1D
C2 0.1uF
10 9 8 7 6
1 2 3 A2 1 2 3
FB1
MAX31850 DNC GND AD3 T– T+ AD2 VDD AD1 AD0 DQ
A1 1 2 3
1 2
U1 C1 10nF
TP TP
TH
A3
A0 1 2 3
2 4 6
DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb W ofercie AVT* AVT-1948
ADR
PP W1
1 3 5
Układy DS1820 i DS1821 umożliwiają łatwy, „cyfrowy” pomiar temperatury z zakresu –55…+155°C. Nieco większym problemem jest pomiar wyższej temperatury za pomocą termopary. Istnieją interfejsy takie jak AD8495 ułatwiające współpracę z termoparą, ale to „tylko” interfejsy analogowe, które dla osiągnięcia pełnej funkcjonalności wymagają współpracy z przetwornikiem A/C. A gdyby tak udało się połączyć łatwość użycia DS1820 i wysoką, dopuszczalną temperaturę, która może być mierzona za pomocą termopary?
1 2 3
Rysunek 1. Schemat ideowy interfejsu 1-Wire dla termopary Projekt umożliwia pomiar temperatury za pomocą termopary typu „K” i jej odczytywanie poprzez interfejs 1-Wire. Jest on oparty na opracowaniu firmy Maxim Integrated – układzie scalonym MAX31850K. Zawiera kompletny, analogowy interfejs termopary z kompensacją zimnego końca, blokiem przeliczenia wartości temperatury, sygnalizacją stanów awaryjnych tj. zwarcia lub rozwarcia termopary oraz interfejs sieciowy 1-Wire z możliwością dołączenia 16 układów MAX31850x na wspólnej magistrali. Możliwa jest praca z zasilaniem własnym lub „sieciowym” w trybie parasite power. W zależności od wersji układu MAX31850, jest możliwa obróbka sygnału z termopar „J”, „K”, „N”, „T” oraz dla bliźniaczego MAX31851 – termopar typu „S” i „R”, co pokrywa użyteczny zakres pomiaru –270…1768°C przy odpowiednim doborze termopary. Użycie magistrali 1-Wire umożliwia łączenie MAX31850 z rodziną DS1820, zapewniając kompletny interfejs wielopunktowego pomiaru temperatury w jej szerokim zakresie. Jest to bardzo przydatne w praktyce, na przykład w sterownikach instalacji grzewczych, w których konieczny jest pomiar temperatury otoczenia i temperatury w komorze spalania.
Rysunek 2. Schemat montażowy interfejsu 1-Wire dla termopary Schemat ideowy interfejsu termopary pokazano na rysunku 1. Oprócz MAX31850K i filtru wejściowego z zabezpieczeniem przepięciowym na DZ1, zawiera on tylko zwory konfiguracji adresu A0…A3 oraz zworę PP przełączającą konfigurację zasilania. Możliwy jest tryb z zasilaniem niezależnym (Vdd=typowo 3,3 V, zwory w położeniu 1-3/2-4) lub poprzez sieć (parasite power, zwory 3-5/4-6). Termoparę dołącza się do złącza TH z zachowaniem polaryzacji. Magistrala 1-Wire jest doprowadzona do złącza W1. Moduł zmontowano na niewielkiej płytce drukowane – jej schemat montażowy pokazano na rysunku 2. Układ nie wymaga uruchamiania, do szybkiego sprawdzenia można wykorzystać dostępne w sieci biblioteki MAX31850_OneWire dla Arduino. Adam Tatuś, EP ELEKTRONIKA PRAKTYCZNA 3/2017
53
MINIPROJEKTY
Włącznik opóźniający 230 V AC Urządzenie, który doskonale sprawdzi się tam, gdzie zachodzi konieczność opóźnienia załączenia dowolnego urządzenia zasilanego z sieci energetycznej 230 V AC. Czas zwłoki załączenia można regulować w zakresie od 2 do około 60 sekund. Schemat ideowy włącznika pokazano na rysunku 1, a montażowy na rysunku 2. Jest on zasilany z sieci 230 V AC za pomocą zasilacza beztransformatorowego. Kondensator C1 ogranicza prąd, który urządzenie może pobrać z sieci energetycznej, a rezystor R1 zabezpiecza mostek B1 przed
DODATKOWE MATERIAŁY NA FTP: ftp://ep.com.pl user: 77322, pass: 8qxonzsb W ofercie AVT* AVT-1950
uszkodzeniem na skutek przeciążenia. Rezystor R2 służy do rozładowania kondensatora C1 po odłączeniu zasilacza. Mostek prostowniczy dołączono do ogranicznika napięcia w postaci diody Zenera 12 V, natomiast kondensatory C2 i C3 pełnią funkcję filtra zasilania. Dioda LED1 informuje o załączeniu napięcia zasilania. Głównym elementem układu jest scalony, programowany timer typu 4541. W proponowanym rozwiązaniu został on skon-
przekaźnika PK1, a dioda LED2 sygnalizuje jego zadziałanie. Montaż układu jest typowy i nie powinien przysporzyć problemów. Zasilacz beztransformatorowy nie zapewnia separacji od sieci energetycznej, dlatego należy mieć na uwadze, że w układzie mogą występować napięcia niebezpieczne dla zdrowia i życia człowieka. Jako układ wykonawczy zastosowano przekaźnik o obciążalności styków 8 A/230 VAC. Przy
+
Wykaz elementów: R1: 150 V/3 W R2 1M R2: 1 MV LED2 IN U1 F1 R3, R4, R6: 4,7 kV R1 6 8 RES Q PK1 C1 R5: 1 kV 12 150/3W 470n RM96P12 A LED1 13 R7: 100 kV B 5 R3 R4 B1 AR PR1: 100 kV (potencjometr) 4,7k 4,7k D2 10 1N4148 MO C3 C1: 470 nF/400 V OUT 9 R5 100nF Q/Q C2: 100
54
ELEKTRONIKA PRAKTYCZNA 3/2017
R3
D2
1
R6
R4
* Uwaga: Zestawy AVT mogą występować w następujących wersjach: AVT xxxx UK to zaprogramowany układ. Tylko i wyłącznie. Bez elementów dodatkowych. AVT xxxx A płytka drukowana PCB (lub płytki drukowane, jeśli w opisie wyraźnie zaznaczono), bez elementów dodatkowych. AVT xxxx A+ płytka drukowana i zaprogramowany układ (czyli połączenie wersji A i wersji UK) bez elementów dodatkowych. AVT xxxx B płytka drukowana (lub płytki) oraz komplet elementów wymieniony w załączniku pdf AVT xxxx C to nic innego jak zmontowany zestaw B, czyli elementy wlutowane w PCB. Należy mieć na uwadze, że o ile nie zaznaczono wyraźnie w opisie, zestaw ten nie ma obudowy ani elementów dodatkowych, które nie zostały wymienione w załączniku pdf AVT xxxx CD oprogramowanie (nieczęsto spotykana wersja, lecz jeśli występuje, to niezbędne oprogramowanie można ściągnąć, klikając w link umieszczony w opisie kitu) Nie każdy zestaw AVT występuje we wszystkich wersjach! Każda wersja ma załączony ten sam plik pdf! Podczas składania zamówienia upewnij się, którą wersję zamawiasz! (UK, A, A+, B lub C). http://sklep.avt.pl
kowanej. Aby poprawić ich obciążalność, C4 to elementy wewnętrznego oscylatora układu U1. Mają one wpływ na długość odmożna pocynować ścieżki lub przylutować mierzanego czasu opóźnienia, który można do nich drut miedziany. EB ustawiać za pomocą potencjometru PR1. Z wyjścia Q układu T1 OUT U1, poprzez rezystor R3 i dalej tranzystor T1, jest sterowany PK1 LED2 LED1 R7 C4 R5 pr z ek a ź n i k z a ł ąR1 R2 czający obciążenie. B1 C1 U1 C3 Dioda D2 zabezpiePR1 cza tranzystor przed IN C2 F1 D1 uszkodzeniem podcza s przełącza n ia Rysunek 2. Schemat montażowy włącznika opóźniającego 2
AVT-5560
Energooszczędny zegar z wyjściem sterującym (EP 2/2017) Programowalny układ czasowy „Tajmerek” (EP 9/2016)
1
AVT-5572
2
(wymienione artykuły są w całości dostępne na FTP)
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.
PROJEKT NR 230
Przedwzmacniacz audio Zbudowanie przedwzmacniacza audio dobrej klasy stanowi nie lada problem. Zastosowany przez mnie specjalizowany układ scalony TDA7313 zawiera selektor wejść oraz regulator siły i barwy dźwięku. Układ może posłużyć jako moduł samodzielnie konstruowanego lub modernizowanego wzmacniacza audio.
Rysunek 1. Funkcje menu użytkownika
Przedwzmacniacz składa się z wyświetlacza, mikrokontrolera oraz niewielu elementów. Sterowanie odbywa się za pomocą 5-przyciskowej klawiatury – funkcje menu pokazano na rysunku 1. Fizycznie, przedwzmacniacz jest złożony z dwóch modułów funkcjonalnych: interfejsu użytkownika oraz regulatora. Ich schematy ideowe pokazano na rysunkach 2 i 3. Sterowaniem i obsługą menu użytkownika zajmuje się mikrokontroler ATmega8. Jest on taktowany za pomocą zewnętrznego rezonatora o częstotliwości 4 MHz. Układ TDA7313 to procesor audio, który jest znany i używany od ponad dziesięciu lat. Charakteryzuje się nieskomplikowaną aplikacją, funkcjonalnością i dobrymi parametrami użytkowymi (małe zniekształcenia, niski poziom szumów, szeroki zakres regulacji). Chip jest oparty na technologii CMOS i może być używany w różnych zastosowaniach, w tym sprzęcie car audio, wzmacniaczach Hi-Fi, mikserach itp. Ma 3 wejścia stereofoniczne i ich selektor umożliwiający wybranie źródła sygnału.
Płyta LCD R1: 10 kV (pot. nastawny) C22: 100 nF C23: 100 mF/25 V S1…S5: mikroswich do druku JP1: gniazdo 14 pin Wyświetlacz 2×16 ELEKTRONIKA PRAKTYCZNA 3/2017
55
PROJEKTY CZYTELNIKÓW S1
Regulacja głośności odbywa się w zakresie –78,75…0 dB (z krokiem 1,25 dB), regulacja tonów wysokich i niskich w zakresie –14… +14 dB. Oprócz tego układ ma też funkcję wyciszania – mute. Układ procesora dźwięku jest sterowany za pomocą interfejsu I2C. Na płytce zamontowano 2 stabilizatory napięcia: LM78705 służy do zasilania mikrokontrolera i wyświetlacza, natomiast LM7809 do zasilania układu procesora dźwięku TDA7313. Schematy montażowe płytek wyświetlacza i regulatora pokazano na rysunkach 4 i 5. Do wykonania połaczeń pomiędzy płytkami należy użyć złącza IDC14 oraz taśmy przewodów. Z mikrokontrolerem zamontowano gniazdo programatora ISP, co umożliwia łatwe modyfikowanie aplikacji sterującej. Montaż należy rozpocząć od wlutowania złącza ARK, dwóch stabilizatorów oraz kondensatorów filtrujących. Teraz należy włączyć zasilanie i skontrolować poprawność napięcia zasilającego mikrokontroler ATmega8, wyświetlacz oraz procesor dźwięku TDA7313. W pierwszym wypadku powinno IN1,2B
ono wynosić +5 V, a w drugim +9 V. Gdy wszystko mamy sprawdzone, możemy wlutować mikrokontroler ATmega oraz układ TDA. Kolejnym krokiem jest przylutowanie reszty elementów oraz zaprogramowanie mikrokontrolera. Bity konfiguracyjne należy ustawić zgodnie z rysunkiem 6. Przedwzmacniacz należy zasilić napięciem 12 V DC. Poprawnie zmontowany powinien działać po włączeniu zasilania. Impedancja wyjścia wynosi ok. 2 kV, więc nie należy do niego dołączać słuchawek, bo układ nie zadziała. Do wyjścia należy dołączyć wejście wzmacniacza mocy audio. Adrian Wypenda
REKLAMA
na tabletach z systemami iOS i Android ELEKTRONIKA PRAKTYCZNA 3/2017
57
PREZENTACJA
EPM-153 wzmacniacz LED do zadań specjalnych Na rynku jest dostępnych wiele wzmacniaczy LED o różnych parametrach. Spośród nich mocno wyróżnia się wzmacniacz EPM-153 produkowany przez krakowską firmę Enterius. To urządzenie jest przeznaczone do profesjonalnych instalacji z taśmami LED i ma szereg funkcji, które pomagają w likwidowaniu typowych problemów towarzyszących taśmom LED. Wzmacniacz EPM-153 ma co najmniej kilka wyjątkowych cech, których próżno szukać w innych produktach. Tę listę otwiera 5-letnia gwarancja, która wyraźnie sugeruje, że mamy do czynienia z urządzeniem profesjonalnym o dużej niezawodności. Potwierdzają to oględziny urządzenia. Już na pierwszy rzut oka wrażenie solidności wykonania sprawiają wysokiej jakości elementy oraz laminat płytki drukowanej, a także precyzyjny montaż całości. Wz m ac n i ac z je st stos u n kowo du ż y (120 mm×90 mm×24 mm), ale to nic dziwnego przy tak dużej mocy dostarczanej do obciążenia oraz liczbie dodatkowych obwodów. Od razu rzucają się w oczy trzy c z a r ne radiatory służące do chłodzenia obwodów wyjściowych. Dzięki nim wzmacniacz nie grzeje się prawie wcale mimo potężnej obciążalności prądowej, która wynosi aż 3×15 A. Urządzenie może pracować w zakresie napięcia 8…24 V DC, zatem jest w stanie obsłużyć taśmy LED o mocy aż 1080 W! To zdecydowanie najmocniejszy wzmacniacz LED na rynku. Tak duża moc niesie jednak za sobą ryzyko dużych problemów z zaburzeniami generowanymi przez impulsowe sterowanie jasnością lub kolorem taśm LED. Tu jednak EPM-153 także staje na wysokości zadania, gdyż w każdym kanale jest wyposażony w mocne filtry przeciwzakłóceniowe. Dzięki nim, przy poprawnie wykonanej instalacji, nie musimy martwić się zaburzeniami lub skróconą żywotnością taśm LED. Kolejnym ciekawym rozwiązaniem jest pełna separacja galwaniczna wejść wzmacniacza EPM-153. Wejścia są w pełni odizolowane od reszty urządzenia, co drastycznie zwiększa bezpieczeństwo podłączanych ściemniaczy lub sterowników LED. Ponadto separowane galwanicznie wejścia w bardzo dużym stopniu przyczyniają się do likwidowania problemów z pętlami indukcyjnymi oraz prądami wyrównawczymi, a to może oszczędzić bardzo wielu kłopotów. Zwłaszcza w dużych instalacjach o dużych mocach lub takich, gdzie wzmacniacze i sterowniki są zasilane z różnych faz. Skoro już mowa o wejściach wzmacniacza, to warto również wspomnieć, że mają one układ automatycznego rozpoznawania polaryzacji. Nie trzeba się więc martwić tym, gdzie jest „plus”, a gdzie „minus” sygnału sterującego. Możemy podłączyć go dowolnie, a i tak wszystko zadziała. W przypadku braku takiego układu często jeden mały błąd powoduje długotrwałe szukanie przyczyny niedziałającej instalacji. Ale to wciąż nie wszystko! Wzmacniacz ma unikatowy, cyfrowy układ regeneracji kształtu modulacji PWM, stosowanej do regulacji jasności i kolorów taśm LED. Modulacja ta teoretycznie powinna mieć przebieg prostokątny, ale w praktyce nie zawsze tak jest. Elementy
58
ELEKTRONIKA PRAKTYCZNA 3/2017
Więcej informacji: Enterius Os. Kolorowe 10, 31-939 Kraków Biuro/dział handlowy: [email protected] tel. 12 644 64 70, 607 180 964 Dział techniczny: [email protected] tel. 12 644-64-70 w.21, 607-180-968 www.enterius.eu
instalacji oświetlenia LED, takie jak: przewody, filtry przeciwprzepięciowe, a także zakłócenia i nawet same diody LED deformują przebieg zasilający PWM. Może to powodować problemy z synchronizacją sygnałów i w efekcie odchyłki jasności lub koloru w różnych punktach instalacji. Wzmacniacz EPM-153 eliminuje tego typu problemy. Wbudowany układ cyfrowy analizuje sygnał modulacji PWM na wejściach i przywraca jej właściwy kształt na wyjściach. Pozwala to na budowanie nawet bardzo rozległych i dużych instalacji oświetlenia LED bez problemów z synchronizacją sygnałów. Na koniec listy zalet tego urządzenia warto wspomnieć, że wyjścia wzmacniacza mogą być mostkowane (łączone równolegle) w celu podniesienia obciążalności prądowej. Pozwala to na uzyskanie jednego kanału o maksymalnej obciążalności prądowej aż 45 A! Jeśli jednak nie ma takiej konieczności, to lepiej wystrzegać się aż tak dużych prądów w obwodach oświetlenia LED i dzielić je na większą liczbę obwodów, w których będzie płynął prąd o mniejszym natężeniu. Podsumowując, wzmacniacz EPM-153 to profesjonalne urządzenie przeznaczone do wszystkich wymagających instalacji oświetlenia LED. Jest to właściwie jeden z bardzo niewielu wzmacniaczy LED na rynku nadających się do realizacji wymagających wysokiej jakości i niezawodności. Dzięki wbudowanym funkcjom i układom elektronicznym ułatwia instalację, zapobiega często spotykanym problemom oraz wydłuża żywotność taśm LED. Duża obciążalność prądowa wyjść pozwala na bezpieczne tworzenie naprawdę dużych instalacji z taśmami LED (lub podobnymi źródłami LED). Sporym atutem tego wzmacniacza (zwłaszcza w instalacjach komercyjnych) jest spełnianie wszystkich norm wymaganych dyrektywami europejskimi, co zostało potwierdzone badaniami laboratoryjnymi przeprowadzonymi przez Politechnikę Krakowską. Szczegółowe informacje na temat wzmacniacza EPM-153 znajdują się na stronie www.enterius.eu/13. Krzysztof Ratyński
Firma Contrans TI obchodzi w 2017 roku 25-lecie działalności Marka Contrans TI utworzona została w 1992 roku z zadaniem promowania i dystrybucji mikrokontrolerów i procesorów Texas Instruments. Podjęte wspólnie z amerykańskim producentem działania szybko zaowocowały szeregiem sympozjów tematycznych, a wkrótce dużym zainteresowaniem klientów. Oferta firmy Contrans TI otwarła szeroko bramy do nowoczesnych technologii, trudno dostępnych w początkach nowej ery przedsiębiorczości. Firma jednocześnie kontynuowała swoją dotychczasową działalność – dystrybucję komponentów elektronicznych, w tym mikroprocesorów uznanych europejskich producentów, i sprzętu komputerowego. Współpraca z wielkim amerykańskim koncernem bardzo pozytywnie wpłynęła na organizację. Partner wymagał od firmy zdecydowanych kroków i dynamicznego rozwoju ale i nie szczędził wsparcia. Otrzymaliśmy szeroki dostęp do dokumentacji i bogatej oferty szkoleń dla klientów. Szybko nabywaliśmy doświadczenia niezbędnego w promowaniu tak złożonych produktów jak półprzewodniki. W kolejnych latach Contrans TI nawiązał również współpracę z innymi producentami elementów i materiałów elektronicznych, jak Supertex, Ferroxcube, Weisser, Adels Contact, Erni, Ilme, MPS, ACP. Oferta dystrybucyjna Contrans TI ewoluowała, by skupić się w dużej mierze wokół komponentów przeznaczonych do układów przetwarzania energii, w tym półprzewodników z oferty Supertex i Texas Instruments, przez rdzenie ferrytowe Ferroxcube, karkasy firmy Weisser i materiały magnetyczne Vacuumchmelze po akcesoria, jak zabezpieczenia termiczne Uchiya. Również w przyszłości dziedzina ta będzie z pewnością filarem oferty firmy. Przez ćwierć wieku firma konsekwentnie realizuje misję zawartą w motto: „być konkurencyjnymi poprzez odpowiednią jakość świadczonych usług przy wykorzystywaniu najnowszych technologii”. Zdobyliśmy ogromne doświadczenie, dzięki któremu dostarczamy klientom produkty i usługi najwyższej jakości.
Contrans TI dzisiaj
Zmiany rynku komponentów elektronicznych, konsolidacje i ewolucja modelu dystrybucji skłoniły nas do przebudowania oferty. Współpracujemy z producentami ceniącymi bezpośredni kontakt ze swoimi klientami, unikając przy tym powielania oferty globalnych dystrybutorów. Oferujemy też rozwiązania niszowe, często znane tylko wąskiemu kręgowi odbiorców, co wynika ze specyficznych potrzeb naszych klientów. Współpracujemy z sektorem małych i średnich producentów, którym proponujemy dostawy komponentów i usługi projektowania. Wielu odbiorców spoza branży widzi potrzebę stosowania
PREZENTACJE
Więcej informacji: CONTRANS TI Sp. z o.o. ul. Polanowicka 66 51-180 Wrocław tel. +48 71 325 26 21, faks +48 71 325 44 39 www.contrans.com.pl elektroniki w swoich produktach ale nie projektuje i nie buduje jej samodzielnie. Tej grupie klientów oferujemy przygotowane na zamówienie projekty podzespołów elektronicznych i organizujemy ich produkcję.
Sklep Contrans Presto
Zapraszamy także do korzystania z naszego sklepu internetowego. Usługa Contrans Presto to szybka metoda zaopatrywania się w komponenty, bez kłopotliwych zapytań ofertowych i negocjacji cen. Jakość oferowanych przez nas usług zapewnia wdrożony już w 2003 roku system zapewniania jakości, potwierdzony certyfikatem PN-EN ISO 9001:2009.
Świętujemy 25-lecie
Na 25-tą rocznicę istnienia firmy sprawiliśmy sobie odświeżony, nowoczesny logotyp, symbolizujący postęp jakiego Contrans TI dokonał w ostatnim ćwierćwieczu. Nasz serwis internetowy www.contrans.pl oraz sklep internetowy Contrans Presto przechodzą również modernizację. Dziękujemy serdecznie naszym klientom oraz dostawcom za współpracę przez ostatnie ćwierć wieku i zapraszamy Państwa do odwiedzenia nas na targach Automaticon 2017 i Światło 2017.
Targi Światło – D18, hala 1 • Targi Automaticon – A23, hala 1 ELEKTRONIKA PRAKTYCZNA 3/2017
59
PREZENTACJE
Nowoczesne układy i moduły do zastosowania w IoT Ewolucja Internetu Rzeczy z każdym rokiem dostarcza nowych rozwiązań adresowanych do sieci bezprzewodowych, systemów poprawiających komfort oraz bezpieczeństwo użytkowników. Producenci dostarczają nowe rozwiązania sprzętowe oraz software'owe, aby sprostać wymaganiom rynku i wyprzedzić konkurencję, natomiast firmy projektujące elektronikę prześcigają się w wymyślaniu i projektowaniu urządzeń IoT.
Obecnie firmy zaangażowane w takie sektory, jak: przemysł, motoryzacja, automatyka budynkowa, elektronika użytkowa i podobne, wdrażają produkty oparte na komunikacji bezprzewodowej i wyposażone w różnorodne sensory, stanowiące odpowiedź na ewolucję IoT. Głównym celem dla projektu aplikacji jest wprowadzenie produktu konkurencyjnego cenowo w możliwie najkrótszym czasie. Przy wyborze rozwiązań poszukiwane są takie, które pozwalają na spełnienie warunków ceny i czasu projektu oraz zapewniające prawidłowe wymagania funkcjonalne aplikacji. Dlatego nacisk kładziony
Rysunek 1. Schemat blokowy układów rodziny EFR32
Rysunek 2. Schemat blokowy modułów BGM111/113 oraz BGM121/123
60
ELEKTRONIKA PRAKTYCZNA 3/2017
Nowoczesne układy i moduły do zastosowania w IoT
Rysunek 3. Schemat blokowy modułu WGM110
Rysunek 4. Schemat blokowy układu AS3953
Rysunek 5. Schemat blokowy układu SL13A przy wyborze układu sprowadza się do zdefiniowania ceny, wsparcia technicznego, dokumentacji oraz kosztów związanych ze środowiskiem deweloperskim.
Komunikacja bezprzewodowa
Rynek standardów komunikacyjnych jest uzależniony od postępu dokonywanego w zakresie rozwoju stosów poszczególnych protokołów. Obecnie dużą wagę przywiązuje się do komunikacji opartej o Bluetooth, Wi-Fi, ZigBee, Thread, SigFox, LoRA, NFC/RFID oraz pasmo Sub-GHz. W zależności od wymagań projektowych związanych m.in. z zasięgiem transmisji, szybkością transmisji danych, strukturą sieci, poborem prądu i innymi, projektanci muszą dokonać wyboru będącego kompromisem pomiędzy czynnikami. Każda z powyższych sieci będzie pasować do określonego zestawu aplikacji oraz sektorów zastosowania. Firma Silicon Labs ma układy scalone transceiverów odpowiednie do większości standardów komunikacyjnych np. Wi-Fi, Bluetooth (obecnie 4.2), ZigBee/Thread, certyfikację dla sieci SigFox oraz pasma
Sub-GHz. Ponadto jako jedyna z firm dostarcza zintegrowane w IDE protokoły komunikacyjne dla swoich produktów, udostępniane za darmo wraz z całym IDE. Projektanci szukający rozwiązań z uwzględnieniem kryteriów różnorodności zasobów, gabarytów, możliwości konfiguracji oraz optymalizacji powinni zwrócić uwagę na: Układy System on Chip z serii EFR32xx (rysunek 1) mające: możliwość pracy z kilkoma protokołami, możliwość pracy w pasmach dwuzakresowych 2,4 GHz oraz 868 MHz, zróżnicowane tryby pracy układów, zwiększające oszczędność energetyczną, konfigurowalną moc nadawczą, zintegrowany procesor ARM Cortex-M4. Moduły BGM111/113 (rysunek 2): działające w oparciu o Bluetooth 4.2, kompatybilne pod względem wyprowadzeń z modułami BT 5.0 (Q2/Q3 2017), mające zintegrowaną antenę ceramiczną, o mocy nadawczej konfigurowalnej w zakresie +3…+20 dBm, czułości –94 dBm z wbudowanym procesorem z rdzeniem Cortex-M4 dla operacji typu stand-alone. Moduły mają zintegrowany Bluetooth Smart Stack i mogą być programowane w: BGAPI, BGLIB, BGScript. Moduły BGM121/123 (rys. 2): działające w oparciu o Bluetooth 4.2, będące najmniejszymi modułami dostępnymi na rynku (wymiary 6,4 mm×6,4 mm×1,4 mm), kompatybilne pod względem wyprowadzeń z modułami BT 5.0 (Q2/Q3 2017), mające możliwość programowania przez OTA, ze zintegrowaną anteną ceramiczną lub wyprowadzeniem RF, o mocy nadawczej konfigurowalnej w zakresie +3…+20 dBm, z wbudowanym procesorem z rdzeniem Cortex-M4 dla operacji typu stand-alone. Moduły mają zintegrowany Bluetooth Smart Stack i mogą być programowane w: BGAPI, BGLIB, BGScript. Moduły WGM110: zapewniające łączność Wi-Fi i zasięg od 450 m do 500 m. Obsługujące szyfrowanie transmisji: WPA2/WPA Personal, WPA2/WPA Enterprise, WEP. Mające wbudowany stos IP, osiągające prędkość transmisji danych do 72,2 Mb/s, ze zintegrowaną anteną ceramiczną lub złączem U.FL. Wyposażone w procesor ARM Cortex-M3 oraz interfejs SDIO. Zgodne ze standardem WMM. Dla systemów wymagających komunikacji bliskiego zasięgu, celem weryfikacji, identyfikacji i rejestracji obiektów lub zabezpieczeń oraz bardzo małego poboru energii, stosuje się układy NFC/RFID lub EPC. Firma Austria Micro System dostarcza rozwiązania do systemów komunikacji bliskiego zasięgu takie jak np.: AS3953, AS3955 (rysunek 4) interfejs NFC – SPI: pracujący zgodnie ze standardem ISO 14443A na częstotliwości 13,56 MHz, zapewniający prędkość transmisji do 848 kb/s, dostarczany w obudowie MLPD10, WL-CSP, zasilany z pola RF lub bateryjnie, mechanizm energy harvesting pozwalający uzyskiwać do 5 mA prądu. SL13A RFID Tag (rysunek 5): zasilany polem RF lub bateryjnie, pracujący zgodnie ze standardem ISO 15693/FNC-V, mechanizm ELEKTRONIKA PRAKTYCZNA 3/2017
61
PREZENTACJE energy harvesting pozwalający uzyskiwać do 5 mA prądu, dostarczany w obudowie QFN-16, zintegrowany czujnik temperatury oraz zegar RTC, działający w trybie pasywnym lub półpasywnym. SL900A EPC Tag (rysunek 6): pracujący z protokołem EPC Gen2 w zakresie 860…960 MHz, zasilany polem RF lub bateryjnie, działający w trybie pasywnym lub półpasywnym, ze zintegrowanym czujnikiem temperatury oraz zegarem RTC, dostarczany w obudowie QFN-16.
Rysunek 6. Schemat blokowy układu SL900A
Sensory biomedyczne
Rozwój produktów Internetu Rzeczy jest definiowany przez różnorodne kryteria, z których głównym czynnikiem jest potrzeba zbierania danych środowiskowych, monitorowania obiektów, sterowania czy monitorowania parametrów biomedycznych człowieka. W celu zrealizowania wymienionych funkcjonalności urządzenia IoT zostają wyposażone w czujniki temperatury, wilgotności, detektory gazów VOC, czujniki jakości powietrza, sensory biomedyczne. Do zastosowań w aplikacjach wearables o małym poborze mocy oraz niewielkich wymiarach, przeznaczonych do monitorowania parametrów człowieka, takich jak HRM, temperatura lub nasycenie krwi tlenem, ciekawymi rozwiązaniami będą czujniki: Czujnik biomedyczny MAX30101 (rysunek 7, Maxim Integrated): zintegrowane diody świecące IR oraz zielona, pomiar HRM oraz nasycenia krwi tlenem, pobór prądu 600 m>A, wymiary 5,6 mm×3,3 mm×1,55 mm, zużycie mocy <1 mW przy pomiarze HRM, dostępny zestaw startowy. Czujnik temperatury Si7051 (rysunek 8, Silicon Laboratories): dokładność pomiaru 0.1°C w zakresie +36…+41°C, obudowa DFN o wymiarach 3 mm×3 mm, pobór prądu przy próbkowaniu 1 Hz – 195 nA, skalibrowany fabrycznie, 14-bitowy przetwornik A/C. Czujnik biomedyczny ze zintegrowanym MCU AS7000 (rysunek 9, ams): zintegrowany procesor Cortex M0, zintegrowane diody podczerwieni oraz zielona, zintegrowane filtry na sensorach optycznych, nie wymaga zewnętrznych układów zarządzających, zintegrowane drivery LED, dostępne algorytmy HRV, PRV. Dostępny zestaw startowy.
Sensory gazów VOC, TVOC
Rysunek 7. Schemat blokowy układu MAX30101
Rosnące zanieczyszczenia atmosfery powodują potrzebę monitorowania stanu jakości powietrza. W aplikacjach monitorujących parametry powietrza wewnątrz budynku zastosowanie znajdą czujniki jakości powietrza iAQ-core C oraz iAQ-core P (rysunek 10, ams). Charakteryzują się one: zużyciem energii 67 mW/9 mW, detekcją gazów TVOC oraz CO2 eq, zakresem pomiarowym 450…2000 ppm CO2 eq, wymiarami 15,24 mm×17,78 mm, interfejsem komunikacyjnym I2C, zakresem temperatury pracy 0…50°C. W aplikacjach zasilanych bateryjnie z potrzebą detekcji gazów VOC oraz określenia wartości bezwzględnej zanieczyszczenia zastosowanie znajdą układy detektorów gazów organicznych oraz jakości powietrza CCS801, CCS803, CCS811, AS-MLV-P2 (ams). Charakteryzuje
Rysunek 8. Schemat blokowy układu Si7051 Rysunek 10. Schemat aplikacji układu iAQ-core
Rysunek 9. Schemat blokowy układu AS7000
62
ELEKTRONIKA PRAKTYCZNA 3/2017
Rysunek 11. Schemat aplikacji układu CCS811
Nowoczesne układy i moduły do zastosowania w IoT
Rysunek 12. Schemat blokowy układów EFM8SB je: zużycie energii do 46 mW, detekcja gazów VOC, TVOC, CO oraz etanolu, zakres temperatury pracy –5…+50°C, dostępność w obudowach DFN, LGA. Czas do startu pomiaru <25 ms. Wersja CCS811 ma zintegrowany MCU (rysunek 11).
Energooszczędne mikrokontrolery
Dużym ułatwieniem oraz opcją dla zmniejszenia poboru energii są mikrokontrolery przeznaczone do aplikacji przenośnych, z wbudowanym interfejsem pojemnościowym. Optymalizację zużycia energii uzyskuje się dzięki trybom pracy wyłączającym poszczególne bloki układu, jak również poprzez zmniejszenie częstotliwości pracy zegara. Przykładem takich mikrokontrolerów jest seria SleepyBee firmy Silicon Laboratory. Mikrokontrolery EFM8SBxxx (rysunek 12, Silicon Laboratory) mają następujące parametry techniczne: prąd w stanie uśpienia 50 nA, prąd w stanie aktywnym 150 mA/MHz przy 24,5 MHz, czas wybudzenia bloków cyfrowych oraz analogowych <2 ms, do 14 wejść sensorów pojemnościowych, zintegrowany LDO dla zmniejszenia zużycia energii, kwalifikacje automotive.
Podsumowanie
Przedstawione rozwiązania są łatwe do zastosowania w projekcie. Mają przy tym małe zużycie energii, wbudowany mechanizm
zarządzania zasilaniem, a niektóre z nich częściowo pokrywają zapotrzebowanie na zasilanie (energy harvesting). Właściwe dobranie rozwiązań zagwarantuje zoptymalizowanie aplikacji pod względem ceny, czasu pracy baterii, krótkiego czasu opracowywania projektu oraz elastyczności konfiguracji układu. Wybrane układy są wyselekcjonowanym wycinkiem całego portfolio producentów. Dodatkowo, projektanci mają do dyspozycji czujniki optyczne (np. zbliżeniowe, podczerwieni, koloru), czujniki obrazu (matryce optyczne), kamery etc. znajdujące się w portfolio każdego z producentów. Firma Computer Controls jako oficjalny dystrybutor dostawców m.in. Silicon Labs, Austria Micro System (ams) oraz Maxim Integrated oferuje dostęp do darmowych próbek oraz zestawów startowych. Ponadto dostarcza wsparcie techniczne w zakresie doboru rozwiązań oraz na wszystkich etapach projektu. Właściwe zdefiniowanie kryteriów poszukiwanego rozwiązania lub samo nakreślenie wymagań aplikacyjnych pozwala inżynierom firmy na wyselekcjonowanie właściwych rozwiązań produktowych dla potrzeb aplikacji. Kamil Prus | Inżynier aplikacyjny [email protected] Computer Controls Sp. z o.o. ul. Powązkowska 15, 01-797 Warszawa tel. 22 718 31 90 www.ccontrols.pl
REKLAMA
Najlepszy Mobilny Adres w Sieci http://m.ep.com.pl ELEKTRONIKA PRAKTYCZNA 3/2017
63
TEMAT NUMERU
Co powinien wiedzieć z zakresu EMC inżynier projektujący elektronikę?
EMC
Czy konstruktor elektronik musi znać się na testowaniu i badaniach EMC? Tak, a przynajmniej musi wiedzieć, z jakimi wiąże się to zjawiskami, zakresami częstotliwości i poziomami. Jakie elementy będą sprawdzane, które z nich najbardziej mogą być narażone oraz którędy może wpłynąć zaburzenie. To tak, jak podczas wojny – im lepiej znamy przeciwnika, jego potencjał militarny, tym lepiej możemy się przygotować.
NOTATNIK KONSTRUKTORA
Konstruktorzy wiedzą, że proces projektowania elektroniki jest skomplikowany, gdyż trzeba uwzględnić bardzo wiele czynników. Zaczynając od wymagań funkcjonalnych (co wykona urządzenie), poprzez sposób działania i realizacji (jak to wykona), wreszcie koszty, czas (za ile i kiedy zbudujemy), wymagania prawne (jakie normy musi spełnić), przez temperaturę, pobór energii i miejsce w obudowie. Wydaje się to niemałym wyzwaniem i faktycznie tak jest. Jednym z tych nieszczęsnych wymagań prawnych (nie tylko prawnych, ale możemy tak to uogólnić na potrzeby artykułu) jest kompatybilność elektromagnetyczna – EMC. Choć do Polski wkracza ona już od około 1998 r. (niektórzy mówią, że już nawet od 89 r.), to zaczyna „funkcjonować” dopiero w 2004 r., a wielu producentów dopiero od niedawna (kilku lat) zaczyna brać ten temat pod uwagę.
Rosnąca świadomość odbiorców i producentów
Skąd rosnąca świadomość wymagań EMC? Wynika to nie tylko z kontroli urzędów (www.uke.gov.pl) czy samych przepisów, ale w dużej mierze z wymagań rynku (niewidzialna ręka). Objawia się to wymaganiami odbiorców w stosunku do producentów czy importerów. Warunek jest prosty: Chcesz mi dostarczać produkty? Muszą one spełniać pewne standardy, m.in. EMC, bo ja chcę mieć pewność, że to, czego używam (czy sprzedaję), nie spowoduje błędnego działania systemów radiokomunikacyjnych oraz samo nie utraci funkcjonalności pod wpływem czynników występujących w środowisku. Bardzo często kojarzymy spełnienie wymagań z jakością i niezawodnością produktu (i bardzo dobrze). Niestety, najczęściej bywa tak, że producent boleśnie przekonuje się o wymaganiach EMC, gdy jest już bardzo późno. Oto przykład z życia: Zespół zbudował urządzenie, które działa funkcjonalnie i dowiedział się, że należy je przebadać, aby mieć papier. Wysyła więc produkt do testów i… okazuje się, że nie spełnia on norm EMC. Co teraz? Jesteśmy po terminie, klient czeka na produkt. W tym momencie poprawa jest bardzo trudna i kosztowna.
Musimy (nie możemy) myśleć o wymaganiach EMC od samego początku
Łatwo powiedzieć, trudniej zrobić, bo skąd inżynier ma wiedzieć, jak sobie z tym wszystkim poradzić? Niestety wymaga to dodatkowej edukacji, a często inwestycji (szkolenia, sprzęt, badania). A do tego wiedza zdobyta kilka lat temu dezaktualizuje się, gdyż widzimy postępującą
64
ELEKTRONIKA PRAKTYCZNA 3/2017
integrację urządzeń (są coraz mniejsze), zwielokrotnienie funkcjonalności (jaką funkcję pełni telefon komórkowy?), wzrastającą szybkość układów (np. przetwornice), krótki czas rozwoju produktu czy redukcję kosztów, aby zachować konkurencyjność. Bardzo często wszystkie te rodzaje ryzyka spadają na barki projektantów (hardware, layout i software), którzy świetnie znają się na rozwiązywaniu problemów funkcjonalnych, a elektronikę znają od strony świata niskich częstotliwości. Jednak EMC to zjawiska, które w widmie częstotliwości sięgają bardzo wysokich zakresów (od kHz, 103 Hz do GHz, 109 Hz), a wtedy intuicja i znane proste prawa już nie działają. To wszystko generuje frustrację, opóźnienia i dodatkowe koszty, choćby w postaci kolejnych podejść do testów czy dodatkowych prototypów.
O czym powinien wiedzieć inżynier rozwijający produkty?
Tematów jest wiele, ale żeby uporządkować wiedzę, warto podać listę ogólnych zagadnień, które pokazują zakres pokrywający obszar EMC dla inżyniera elektronika (nie tylko dla osób testujących). Warto posiadać poniższe kompetencje w firmie czy zespole projektującym urządzenia elektroniczne: • Po co testuje się urządzenie pod kątem EMC? • Wymagania prawne, przyczyny (dyrektywy, normy, kontrola), • Zjawiska fizyczne (zakresy częstotliwości, sposoby propagacji), • Zagrożenia (skutki, wpływ na układy), • Uproszczone analizy zagadnień (proste symulacje), • Sposoby testowania i metody badań (full-compliance), • Przygotowanie urządzenia do badań, • Interpretacja wyników, • Zasady projektowania (schemat, PCB, layout, filtry), • Komponenty (dobór, różne układy, elementy filtrujące), • Namierzanie przyczyn problemów (analiza wyników), • Uproszczone metody pomiarów (pre-compliance, troubleshooting), • Sposoby usuwania przyczyn problemów… …i z pewnością jeszcze kilka innych. Jak widać, jest tego dużo i nie wyobrażam sobie, że ktoś będzie w stanie przyswoić sobie całą wiedzę w kilka dni. Zwykle taki proces
Co powinien wiedzieć z zakresu EMC inżynier projektujący elektronikę? zdobywania wiedzy i doświadczeń może trwać latami. Warto co jakiś czas odświeżyć wiadomości, poszerzyć wiedzę, dzięki czemu można ją przyswajać partiami (utrwalenie), zastosować w życiu, uzupełnić (przeniesienie do pamięci długotrwałej) i jeszcze lepiej skorzystać z kolejnych etapów edukacji. Dobrym sposobem jest gromadzenie wiedzy w firmie i wymiana doświadczeń (szkolenie wzajemne, dzielenie się przypadkami). Będąc związanym z projektowaniem elektroniki, nie uciekniemy od wymagań EMC, i wcześniej czy później będziemy musieli poznać zagadnienia, o których mówimy. Warto pomyśleć, jak zdobywać wiedzę, aby było to efektywne.
Po co jest ta wiedza i jak z niej skorzystać?
Może wydawać się, że nie wszystkie te zagadnienia są potrzebne, jednak doświadczenia z pracy w laboratorium pokazują, że jest to niezwykle istotne i jak mocno wpływa na czas rozwoju produktu. Okazuje się, że świadomość obszarów stykających się z projektowaniem elektroniki może zmniejszyć koszty produkcji, powtórnych badań (co najczęściej wydłuża proces) czy tzw. przeprojektowywania produktu. W większości przypadków wystarczyłaby znajomość zjawisk, z jakimi zderzy się urządzenie podczas badań. Uzupełnianie wiedzy i chęć zrozumienia czynników, jakie mają wpływ na proces i efekt końcowy, to niezbędnik dla każdego inżyniera.
Od czego zacząć proces rozwoju kompetencji w zakresie EMC?
W Internecie jest wiele informacji (choć czasem nieaktualnych). Warto, co jakiś czas, poczytać na temat EMC, aby być na bieżąco. Na szczęście pojawiają się ciekawe inicjatywy, takie jak darmowe szkolenia wideo, Szkoła dla eksportera, organizowane przez PARP i EEN [1]. Ponadto pojawia się coraz więcej blogów specjalistycznych [2, 3]. Są także książki, jednak te z tzw. wyższej półki są w języku angielskim i cena ich zakupu jest wyższa, niemniej jednak warto je kupić do biblioteki firmy lub wypożyczyć. Tutaj polecę tylko kilka moich ulubionych pozycji: 1. Electromagnetic Compatibility Engineering – Henry W. Ott (praktyczne podejście, głównie do testowania, ale i porady dla projektantów), 2. EMC made simple – Mark I. Montrose (bardzo praktyczne i proste wytłumaczenie, głównie dla projektantów elektroniki, pokazujące zasady i błędy w projektowaniu), 3. EMI Troubleshooting Cookbook for Product Designers – Patrick G. André and Kenneth Wyatt (praktyczny poradnik pokazujący, jak radzić sobie z problemami podczas różnych testów, dobrze porządkuje wiedzę i daje sporo wskazówek), 4. Introduction to Electromagnetic Compatibility – Clayton R. Paul (bardzo zaawansowana i z dużą ilością teorii oraz wzorów, jednak jest to przekrój przez wszystkie zagadnienia, klasyka), 5. Kompatybilność elektromagnetyczna. Zakłócenia w urządzeniach elektronicznych – Alain Charoy (w języku polskim, kilka tomów, ciekawy przekrój tematów, specyficzne podejście, ale warto się z nim zapoznać).
Na początek proponuję przeczytać Dyrektywę EMC 2014/30/UE i Dyrektywę RED 2014/53/UE [4, 5]. Zobaczysz tam definicje i podstawowe założenia. Do tego zakres i wymagania. Będzie to dobry początek. Później proponuję przejrzeć listę norm zharmonizowanych [6] z powyższymi dyrektywami i po tytułach zobaczyć, które mogą dotyczyć naszego urządzenia. Jeśli któraś norma ewidentnie pasuje, warto ją kupić i poznać. Na początku mogą być pewne rzeczy nie do końca oczywiste i zrozumiałe – jest to normalne, pamiętajmy, że każda podróż zaczyna się od pierwszego kroku. Są również dostępne świetne szkolenia z tego zakresu i warto się rozejrzeć, aby skorzystać z doświadczeń innych, gdyż z pewnością zaoszczędzi to wiele czasu i nerwów. Jednym z lepszych sposobów nauki jest telefon lub wizyta w laboratorium, w celu ustalenia przebiegu testów czy programu badań.
Podsumowując
Świat kompatybilności elektromagnetycznej to obszerny temat, w którego skład wchodzi wiele czynników, które mogą wydawać się skomplikowane (czasem porównuje się je z czarną magią). Jednak, jeśli zdobywanie wiedzy potraktujemy jako proces, pewną drogę, to okaże się, że fragmenty informacji zaczną składać się w jeden spójny obraz, a całość przysporzy wiele satysfakcji i staniemy się lepszymi specjalistami. Do tego zastosowanie zdobytej wiedzy w praktyce przyniesie wiele wymiernych korzyści w projektach. Zachęcam do poszukiwania odpowiedzi samodzielnie oraz nawiązywania kontaktów z osobami doświadczonymi, które mogą pomóc. Tomasz Utkowski Inżynier EMC, trener, konsultant EMC for Business – Akademia EMC [email protected] www.emc4b.com Przydatne linki: 1. Szkolenie wideo – Szkoła dla eksportera: Wprowadzanie urządzeń elektronicznych na rynek UE – https://goo.gl/TXDDdQ. 2. Blog EMC po polsku (rozwijany) – www.emc4b.com/blog. 3. Blog EMC w języku angielskim – https://goo.gl/sWbS1r. 4. Dyrektywa EMC – https://goo.gl/YifDf9. 5. Dyrektywa RED – https://goo.gl/jxiTRv. 6. Normy zharmonizowane do wszystkich dyrektyw – https://goo.gl/IpRxg6. ELEKTRONIKA PRAKTYCZNA 3/2017
65
TEMAT NUMERU
EMC
PREZENTACJE
Unitor
Więcej informacji: P.P. Unitor ul. Rydygiera 30/32, 87-100 Toruń email: [email protected] www.unitor.com.pl
– obszerna oferta przyrządów do pomiaru pól elektromagnetycznych Unitor to toruńska firma od wielu lat zajmująca się sprzedażą urządzeń pomiarowych do pomiarów wielkości elektrycznych i nieelektrycznych. W ostatnich latach dużą wagę przywiązuje do rynku przyrządów służących do pomiarów pól elektromagnetycznych. W ofercie firmy Unitor jest obszerna oferta przyrządów obejmująca mierniki przeznaczone do badania zjawisk w dziedzinie elektrostatyki, gausomierze do pomiarów pól magnetycznych stałych i wolnozmiennych, profesjonalne mierniki do oceny ekspozycji pracowników na pola elektromagnetyczne. W jej ofercie znajdują się również łatwe w obsłudze, nieskomplikowane, tanie mierniki do wstępnej oceny zagrożeń elektromagnetycznych. Rozwiązanie problemów związanych z zagrożeniami wynikającymi z gromadzenia na urządzeniach ładunku elektrycznego i rozładowania tego ładunku wymaga stosowania odpowiednich przyrządów pomiarowych. Oferujemy mierniki pola elektrostatycznego, ładunku elektrostatycznego, zawartości jonów w powietrzu. Dobrym reprezentantem uniwersalnego miernika do pomiaru pola magnetycznego jest przyrząd GM 2 mierzący indukcję magnetyczną pól stałych i zmiennych. Główne zastosowanie to: • Badanie pola magnetycznego silnych magnesów stałych, elektromagnesów, cewek itp.
• Pomiary pola magnetycznego rozdrabniaczy, separatorów, magnesów neodymowych. Pomiary w trudno dostępnych miejscach np. w szczelinach. • Wykrywanie szczytowych wartości pola w długich odcinkach czasu. • Badania nieniszczące powierzchni m a t e r i a łó w f e r r o m a g n e t y c z ny c h magnetyczno-proszkowych. Ciekawą propozycją jest miernik małej indukcji magnetycznej MGM mierzący z rozdzielczością 0,01 mG i dokładnością 0,5%. Dodatkową zaletą jest bardzo duża stabilność w czasie oraz bardzo mały współczynnik temperaturowy. Przyrząd jest szczególnie polecany do kontroli przesyłek, które są wysyłane drogą lotniczą. Miernik NHT-3D jest doskonałym narzędziem przeznaczonym do wykonywania pomiarów w paśmie 0…40 GHz i oceny ekspozycji lub narażenia na pola –EM w środowisku pracy. Dodatkowo, zapewnia dokładne pomiary i analizy ELF pól elektromagnetycznych, o złożonych przebiegach, zdecydowanie odbiegających od sinusoidy w paśmie 5 Hz…400 kHz. Miernik pozwala na analizowanie sygnału w dziedzinie czasu
Przyrząd GM2 do pomiaru natężenia pola magnetycznego
Miernik napięcia elektrostatycznego SVM
66
ELEKTRONIKA PRAKTYCZNA 3/2017
i częstotliwości, przy zastosowaniu specjalnych algorytmów obliczeniowych. Dzięki temu można przekonać się, jakie częstotliwości składowe i ich amplitudy mają wpływ na ostateczny kształt (przebieg) sygnału. Miernik jest wyposażony w filtry cyfrowe przydatne do odcięcia tych częstotliwości, które nie są interesujące dla operatora: składowa stała, składowa 50 Hz, częstotliwości powyżej 1 kHz, częstotliwości powyżej 20 kHz, częstotliwości powyżej 400 kHz. Można stosować różne kombinacje filtrów, w zależności od pasma i używanej sondy. Szczególnie interesująca jest funkcja tłumienia częstotliwości 50 Hz (również dla sond wysokiej częstotliwości). Funkcje filtrów zwiększają odporność elektromagnetyczną miernika na zakłócenia zewnętrzne. Grupa tanich przyrządów TM-190, TM192, TM-195, TM-196 może być również z powodzeniem stosowana do wstępnej oceny pól elektromagnetycznych występujących w środowisku naturalnym człowieka. Większość oferowanych przyrządów umożliwia zapis danych pomiarowych i ich przedstawianie w formie graficznej. Służymy pomocą w doborze odpowiedniego zestawu pomiarowego. Zapraszamy do współpracy. Paweł Polak [email protected]
Miernik NHT-3D do pomiaru pola elektromagnetycznego w paśmie 0…40 GHz
TEMAT NUMERU
EMC
NOTATNIK KONSTRUKTORA
Zaburzenia elektromagnetyczne zagrożeniem prawidłowej pracy urządzeń elektronicznych Wymagania stawiane projektantowi zmierzają ku zapewnieniu niezawodnej, niezakłóconej pracy urządzenia elektronicznego w przewidywanym środowisku elektromagnetycznym. W celu ułatwienia tych działań opracowano szereg norm zharmonizowanych. Projektant wybiera odpowiednie normy dotyczące opracowywanego urządzenia. Duża grupa norm jest przeznaczona dla konkretnych produktów. Typowymi grupami urządzeń elektronicznych do zastosowań cywilnych są urządzenia: powszechnego użytku, przemysłowe, medyczne, informatyczne. Mimo istnienia wielu norm EMC czasami dla konkretnego produktu trudno dokonać właściwego wyboru. Często projektowane urządzenia pracują w środowiskach elektromagnetycznych trudnych do przewidzenia. Ciągle powstają urządzenia będące źródłem pól PEM o nowych właściwościach. Dlatego niezbędna jest identyfikacja głównych źródeł zaburzeń elektromagnetycznych, potencjalnie oddziaływujących na projektowane urządzenie.
Już na etapie projektowania płytek drukowanych należy uwzględnić potencjalne źródła emisji. Istotny jest optymalny projekt płytki uwzględniający liczbę warstw, odpowiednie rozmieszczenie elementów, sposób poprowadzenia masy, odpowiednie usytuowanie obwodów wejściowych i wyjściowych. Wymienione czynności mają zasadnicze znaczenie dla osiągnięcia zamierzonego celu. Szczegółowe zalecenia w tym zakresie były już omawiane w „Elektronice Praktycznej”. Niewrażliwość urządzeń sprzętu elektronicznego na zakłócenia elektromagnetyczne osiąga się, stosując ekranowanie, uszczelnianie, właściwe prowadzenie okablowania. Niezbędne jest też wykorzystywanie specjalnych przepustów, filtrów, i komponentów. Każde z wymienionych działań wymaga odpowiedniej wiedzy inżynierskiej i dużego praktycznego doświadczenia. Dobry projekt elektryczny i mechaniczny jest podstawą sukcesu. Warto pamiętać o jednym z podstawowych praw fizycznych mówiącym, że natężenie pola elektromagnetycznego silnie zależy od odległości źródła. Uwzględnienie tej zasady może rozwiązać wiele problemów. Wiedza o właściwościach źródeł pól elektromagnetycznych jest szczególnie przydatna w projektowaniu ekranów ELEKTRONIKA PRAKTYCZNA 3/2017
67
TEMAT NUMERU
EMC
NOTATNIK KONSTRUKTORA i obudów pełniących funkcję ekranów. Użyty materiał zastosowany do tych celów powinien mieć odpowiednie właściwości fizyczne i elektryczne. Wymiary ekranu, usytuowanie i wielkość otworów są ściśle uzależnione od długości fali zakłócającej. Zakłócające promieniowanie elektromagnetyczne może zawierać sygnały składowe o różnych częstotliwościach. Ważna jest również informacja, z jakimi poziomami natężenia składowej elektrycznej i magnetycznej mamy do czynienia i czy mają one charakter ciągły, czy impulsowy. W pewnych sytuacjach należy uwzględnić polaryzację występującego pola i jego rozkład przestrzenny. Skutkiem oddziaływania pól elektromagnetycznych może być przepływ prądów indukowanych w obiektach przewodzących. W wypadku materiałów przewodzących, odizolowanych od ziemi lub materiałów izolacyjnych, możliwe jest pojawienie się niezrównoważonego ładunku elektrycznego. Obecnie powszechnie stosuje się obudowy z tworzyw sztucznych, które charakteryzują się dużą rezystywnością powierzchniową i skrośną. Aby obudowa miała właściwości ekranujące, niezbędne jest stosowanie dodatkowych pokryć warstwą przewodzącą.
Urządzenia i czynności, które mogą przyczynić się do powstania zagrożeń elektromagnetycznych
W większości wypadków zagrożenia elektromagnetyczne można rozpoznać i ocenić, znając parametry techniczne urządzeń będących ich źródłem. Emisja elektromagnetyczna takich źródeł jest zwykle znana. Problem może pojawić się, gdy na skutek innych czynników nastąpi deformacja rozkładu przestrzennego pola. Takimi czynnikami mogą być obiekty techniczne. Skutkiem „indukowania się” pola w elementach przewodzących może być przepływ prądów kontaktowych. W wypadku pól elektrostatycznych ważną rolę odgrywa wilgotność i temperatura. Niestety gwałtownie rosnąca liczba urządzeń będących źródłami pól elektromagnetycznych nie ułatwia dokonania właściwej oceny zagrożeń. Jednym z rozwiązań jest zastosowanie odpowiedniego sprzętu pomiarowego do badania pól elektromagnetycznych. W celu scharakteryzowania podstawowych źródeł pól elektromagnetycznych można wprowadzić podział w zależności od częstotliwości: 1. Urządzenia wytwarzające pole elektrostatyczne o f≤5 Hz. 2. Urządzenia wytwarzające pole magnetostatyczne o f≤5 Hz. 3. Urządzenia wytwarzające zmienne pole -E i pole -M małej częstotliwości z zakresu 5 Hz…100 kHz. 4. Urządzenia wytwarzające zmienne pole -EM dużej częstotliwości z zakresu 100 kHz…300 MHz. 5. Urządzenia wytwarzające promieniowanie mikrofalowe z zakresu 300 MHz…3 GHz.
Źródła zagrożeń elektrostatycznych
Typowym źródłem pól elektrostatycznych są urządzenia do wytwarzania i przetwarzania tworzyw sztucznych. Do czynności wywołujących elektryzowanie zaliczamy: • przesypywanie, rozdrabnianie, transport materiałów sypkich • przepływ, przelewanie cieczy, • procesy technologiczne związane z wytwarzaniem materiałów o dużej powierzchni, • przemieszczanie się ludzi, wózków i produktów po powierzchniach z materiałów nieprzewodzących, • indukcja. Wystąpienie niezrównoważonego ładunku elektrycznego na urządzeniach elektronicznych lub na osobach korzystających z tych urządzeń może prowadzić do zakłóceń w działaniu elementów półprzewodnikowych. Znane są przypadki wadliwego działania wyświetlaczy smartfonów używanych w warunkach wysokiej temperatury i małej wilgotności powietrza. Wyładowania
68
ELEKTRONIKA PRAKTYCZNA 3/2017
elektrostatyczne mogą prowadzić do trwałego uszkodzenia elementów elektronicznych. Elektryzacja przyczynia się również do osadzania kurzu na płytkach drukowanych. Typowe wartości mierzonego napięcia elektrostatycznego na powierzchni obiektu mieszczą się w przedziale 100 V…20 kV.
Typowe źródła emisji zaburzeń elekromagnetycznych
Źródłem pól elektromagnetycznych o małej częstotliwości i pól magnetostatycznych jest bardzo duża grupa urządzeń elektrycznych powszechnego użytku, urządzeń i instalacji przemysłowych, urządzeń medycznych. Dla pól niskiej częstotliwości można przyjąć zasadę, że natężenie pola elektrycznego jest funkcją napięcia, natomiast natężenie pola magnetycznego zależy od natężenia prądów płynących w ocenianym obiekcie. Instalacje i urządzenia zasilane energią elektryczną o częstotliwości 50 Hz są głównie źródłem pól składowej magnetycznej. Sprzęt elektryczny powszechnego użytku wytwarza najczęściej pola o indukcji nie większej niż 100 mT. Natomiast falowniki, silniki elektryczne, zgrzewarki oporowe, piece indukcyjne i inne urządzenia przemysłowe są źródłem pola magnetycznego o indukcji rzędu nawet od kilku do kilkudziesięciu mT. Na wartość natężenia pola elektrycznego o częstotliwości 50 Hz ma wpływ głównie napięcie i odległość od jego źródła. Mierzone wartości mieszczą się zwykle w przedziale od kilkuset V/m do 20 kV/m. Metalowe konstrukcje znajdujące się w pobliżu linii wysokiego napięcia mogą być wtórnym źródłem pola. Typowymi urządzeniami medycznymi, będącymi źródłami silnych pól, są urządzenia do magnetoterapii i przeprowadzania badania metodą rezonansu magnetycznego. Urządzenia do magnetoterapii wytwarzają pole elektromagnetyczne o częstotliwości z zakresu 1…100 Hz i indukcji do kilkunastu mT. Są to przebiegi niesinusoidalne, odkształcone, zawierające również harmoniczne wyższych częstotliwości. Tomograf do rezonansu magnetycznego jest źródłem pola magnetostatycznego o indukcji do 3 T. Tak silne pole może zakłócać pracę urządzeń sterujących i uszkadzać magnetyczne nośniki pamięci. Źródłem pól elektromagnetycznych o dużej częstotliwości są urządzenia telekomunikacji bezprzewodowej, takie jak: radiowe i telewizyjne stacje nadawcze, anteny stacji bazowych GSM itp. Do tej grupy zaliczamy również: diatermie krótkofalowe, aparaty do elektrochirurgii, prasy wielkiej częstotliwości, zgrzewarki dielektryczne. Najwyższe natężenia pola elektrycznego w radiokomunikacji, w zależności od typu urządzeń, wynoszą od kilku V/m do 150 V/m. W urządzeniach medycznych górne wartości osiągają 1000 V/m. Niedużo mniejsze wartości pola są charakterystyczne też dla zgrzewarek. Należy pamiętać, że podane wartości pola elektrycznego odnoszą się w większości do pomiarów wykonanych w niewielkiej odległości od urządzeń. Promieniowanie elektromagnetyczne z zakresu mikrofalowego jest wytwarzane przez takie urządzenia nadawcze, jak: urządzenia telefonii komórkowej, radary, mikrofalowe czujki ruchu. Cechą charakterystyczną tych urządzeń jest impulsowy typ modulacji.
Przyrządy do pomiaru pól elektrostatycznych
Kontrola zagrożeń powodowanych przez elektryczność statyczną jest szczególnie istotna dla aparatury elektronicznej. Pomiary wielkości, które charakteryzują pole elektrostatyczne, są technicznie trudne do przeprowadzenia. Można mierzyć: natężenie pola, napięcie elektrostatyczne, wartość ładunku, czas zaniku ładunku, rezystywność powierzchniową, rezystywność skrośną, pojemność obiektu. W niektórych wypadkach pomocnym parametrem mierzonym jest wyznaczenie liczby jonów w powietrzu. Do bezkontaktowego pomiaru potencjału elektrostatycznego stosuje się dwa rodzaje przyrządów: • Woltomierz napięcia stałego o dużej rezystancji wejściowej, wykorzystujący metodę indukcji.
Zaburzenia elektromagnetyczne zagrożeniem prawidłowej pracy urządzeń elektronicznych • Woltomierz napięcia zmiennego wykorzystujący konstrukcję tzw. młynka polowego. W drugim wypadku metoda pomiarowa eliminuje problemy związane z wpływem jonizacji powietrza i można wykonywać pomiary w nieograniczonym czasie, bez konieczności zerowania.
Przyrządy do pomiaru pól elektromagnetycznych
Najczęściej spotyka się dwa rodzaje mierników: • Selektywne, o wąskim paśmie pomiarowym, przeznaczone do pomiaru pola elektromagnetycznego o określonej częstotliwości. • Szerokopasmowe, o stałej czułości w określonym paśmie częstotliwości. Mierniki szerokopasmowe mają wymienne sondy pomiarowe z czujnikami pozwalającymi wykonywać pomiary pola elektrycznego i magnetycznego w określonym paśmie, o zróżnicowanej czułości. Często przyrządy tego typu mają możliwość stosowania filtra pasmowego lub filtrowania składowej o określonej częstotliwości (np. 50 Hz). Możliwość rejestrowania wyników w długim okresie jest bardzo pożądaną cechą. Niektóre mierniki umożliwiają analizę sygnału w dziedzinie czasu i częstotliwości, przy zastosowaniu specjalnych algorytmów obliczeniowych. Dzięki temu można przekonać
się, jakie częstotliwości składowe oraz wartości ich amplitudy mają wpływ na ostateczny kształt (przebieg) sygnału.
Podsumowanie
Przed przystąpieniem do realizacji projektu nowego urządzenia zawierającego układy elektroniczne należy przeanalizować potencjalne zagrożenia elektromagnetyczne występujące w przewidywanych warunkach pracy. Warto też uwzględnić nietypowe, trudne do przewidzenia możliwości zakłócania poprawnej pracy urządzenia. Wzajemne niekorzystne oddziaływanie urządzeń może prowadzić do awarii w systemach sterowania, kontroli, przesyłania informacji. Niewłaściwe prowadzenie napraw serwisowych może prowadzić do niezachowania ciągłości ekranów i w konsekwencji zwiększenia wrażliwości poprawnie pracujących układów elektronicznych. Pola elektromagnetyczne mogą stanowić szczególne zagrożenie dla osób z wszczepionymi aktywnymi wyrobami medycznymi. Zwiększone ryzyko dotyczy niektórych grup pracowników pracujących w pobliżu bardzo silnych pól. W wypadku, gdy maszyny mogą emitować promieniowanie niejonizujące, które może być szkodliwe, producent jest zobowiązany dostarczyć informacje dotyczące wielkości emisji w odniesieniu do operatorów i wszystkich innych narażonych osób. Paweł Polak
REKLAMA
Wygraj płytkę Microchip BM64 Bluetooth Audio Evaluation Board Firma Microchip organizuje konkurs dla czytelników Elektroniki Praktycznej, w ramach którego mogą oni wygrać płytkę deweloperską BM64 Bluetooth Audio Evaluation Board (model BM64-EVB-C2). Płytka pozwala na łatwe prototypowanie z użyciem nowych układów serii IS206X oraz modułów pracujących zgodnie ze standardem Bluetooth Low Energy (Bluetooth Smart). Płytka zawiera moduł stereo audio Bluetooth Class 2 I jest zasilana z komputera PC, do którego można ją podłączyć za pomocą kabla microUSB. Alternatywnie można wykorzystać akumulator litowo-jonowy. Ponadto wbudowany jest wzmacniacz stereofoniczny klasy D o mocy 3 W, interfejs NFC, wyjście stereofoniczne audio oraz diody LED do wskazywania stanu układu. Płytka świetnie nadaje się do opracowywania urządzeń Internetu Rzeczy lub przeznaczonych do noszenia na ubraniu lub na ręce. Wartość płytki to 125 USD.
Aby wziąć udział w konkursie wystarczy wejść na stronę ELEKTRONIKA PRAKTYCZNA 3/2017 www.microchip-comps.com/elekprak-m64blue i zarejestrować się.
69
TEMAT NUMERU
EMC
PREZENTACJA
Laboratorium EMC Instytutu EMAG Instytut Technik Innowacyjnych EMAG jest instytutem badawczym działającym z mocy ustawy z dn. 30 kwietnia 2010 r. o instytutach badawczych, nadzorowanym przez Ministra Cyfryzacji. W 2016 roku uzyskał akredytację Ministra Rozwoju jako Ośrodek Innowacyjny. EMAG działa już 40 lat, prowadząc badania naukowe i prace rozwojowe, a także opracowując i wdrażając na całym świecie urządzenia, systemy oraz technologie, służące poprawie bezpieczeństwa oraz efektywności. Unowocześniają one i czynią bezpiecznymi procesy przemysłowe w wielu dziedzinach gospodarki, a także poprawiają funkcjonowanie sektora administracji samorządowej i publicznej oraz sektora bezpieczeństwa narodowego. W tym czasie realizowano setki przedsięwzięć naukowych, opracowano i wdrożono tysiące innowacyjnych rozwiązań. Od dekady nowymi obszarami działania są również systemy informatyczne, telemetryczne specjalistyczne pomiary medyczne oraz zarządzanie procesami technologicznymi i biznesowymi. Opracowywane są też rozwiązania przeciwdziałające wykluczeniu społecznemu. Obecnie główne zadania EMAG realizowane są przez wydzielone w strukturze organizacyjnej specjalistyczne centra, dysponujące wykwalifikowaną i doświadczoną kadrą. Jednym z nich jest Centrum Badań i Certyfikacji CBC, które oferuje szeroki zakres usług, w tym: • pomiary i badania laboratoryjne, • wzorcowania przyrządów elektrycznych i aparatury pomiarowej,
70
ELEKTRONIKA PRAKTYCZNA 3/2017
Więcej informacji: Instytutu Technik Innowacyjnych EMAG ul. Leopolda 31, 40-189 Katowice tel. +48 32 200 75 11, [email protected] www.cbc.ibemag.pl
• procesy opiniowania (techniczne, atestacyjne), • procesy certyfikacji wyrobów, • ocenę zgodności wyrobów. Instytut EMAG od wielu lat posiada uznawane kompetencje, potwierdzone certyfikatami Polskiego Centrum Akredytacji dla poniższych jednostek: • Zespół Laboratoriów Badawczych (AB 261): – Laboratorium Badań Kompatybilności Elektromagnetycznej (EMC), – Laboratorium Badań Kabli i Badań Środowiskowych, – Laboratorium Badań Maszyn i Urządzeń Elektrycznych, – Laboratorium Badań Urządzeń Gazometrycznych, • Laboratorium Wzorcujące (AP 051): – wzorcowanie przyrządów pomiarowych małych częstotliwości (m.cz.), – wzorcowanie przyrządów pomiarowych wysokich częstotliwości (w.cz). • Jednostka Certyfikująca Wyroby (AC 053).
Laboratorium EMC instytutu EMAG
Wieloletnie doświadczenie w prowadzeniu badań z zakresu kompatybilności elektromagnetycznej (EMC) plasuje Instytut EMAG na wysokiej pozycji wśród czołowych centrów badawczych w kraju. W Centrum Badań i Certyfikacji CBC realizujemy badania dla branży kolejowej, energetycznej, IoT, AGD, automotive, medycznej, telekomunikacyjnej, informatycznej, przemysłu zbrojeniowego, producentów elektroniki użytkowej (domowej) oraz dla wielu innych, nowych obszarów. Współpracujemy z organami nadzoru rynku i prowadzimy badania na ich rzecz. W ciągu 14 lat akredytowanej działalności CBC zdobyło rzeszę zaufanych klientów, a liczne pozytywne opinie o nas trafiają do nowych przedsiębiorców, którzy stają się naszymi parterami w zakresie usług badawczych. Przykładem tego jest ponad 5-letnie już prowadzenie specjalistycznych badań dla sektora automotive, dla którego jesteśmy jedną z nielicznych jednostek w kraju świadczących takie usługi. Heraklit z Efezu rzekł: „W życiu nie ma niczego stałego poza zmianą”. W pełni zgadzamy się z tymi słowami i dlatego stale się rozwijamy, doskonalimy i rozbudowujemy. W odpowiedzi na rosnące potrzeby rynku otworzyliśmy oddział zamiejscowy w województwie podlaskim na terenie Białostockiego Parku Naukowo-Technologicznego, w którym uruchomione zostało laboratorium badań kompatybilności elektromagnetycznej (EMC). Jest to już drugie takie laboratorium w Centrum Badań i Certyfikacji. Obydwa laboratoria EMC (katowickie i białostockie) wyposażone są w kompletne zestawy aparatury, w tym komorę semibezodbiciową (SAC). W laboratoriach można prowadzić
badania według metod określonych w normach PN-EN 55016-2-1, PN-EN 55016-2-3, PN-EN 55011, PN-EN 55022, normach z serii PN-EN 61000-4-xx oraz innych. W laboratoriach EMC możemy badać urządzenia zasilane napięciem 3-fazowym, aż do 32 A/fazę. Zakres częstotliwości dla pomiarów elektromagnetycznych zaburzeń promieniowanych w obydwu laboratoriach wynosi od 1 kHz do 18 GHz, a dla badań odporności na pole EM o częstotliwości radiowej do 6 GHz. Ponadto wykonujemy szereg testów na przyłączach zasilania, telekomunikacyjnych, I/O i innych. Oferta usługowa CBC jest kompleksowa i pokrywa wymagania dyrektyw EMC i LVD stawiane producentom urządzeń elektrycznych i elektronicznych. Wyposażenie laboratorium badań środowiskowych w pięć komór klimatycznych (największa o objętości 30 m3) oraz stanowisko do badań wibracyjnych i udarów mechanicznych (wzbudnik o sile 49,5 kN) zapewnia swobodę w doborze ostrości prób oraz zwiększa dostępność laboratorium dla klientów. Instytut Technik Innowacyjnych EMAG – działający jako CAB (jednostka oceniająca zgodność) – buduje model długoletniej współpracy ze swoimi klientami, co wyraża się pozytywnym feedbackiem. Zmieniamy się dla naszych klientów – podnosimy kompetencje, by móc sprostać ich rosnącym wymaganiom. Szybka reakcja na ich potrzeby owocuje stałym poszerzaniem oferty usługowej i sprawia, że jesteśmy godnym zaufania partnerem biznesowym i dostawcą usług badawczych wielu przedsiębiorstw. EMAG
ELEKTRONIKA PRAKTYCZNA 3/2017
71
TEMAT NUMERU
EMC
WYBÓR KONSTRUKTORA
Laboratoria EMC Kompatybilność elektromagnetyczna to wymóg naszych czasów. Urządzeń elektronicznych i elektrycznych w naszym otoczeniu jest coraz więcej. Zapewnienie ich niezakłóconego funkcjonowania jest tym ważniejsze, że często zależy od nich nasze życie. Nie jest to twierdzenie przesadzone i nie mam na myśli tego, że każdy z nas ma np. rozrusznik serca, ale nawet jeśli nie zdajemy sobie z tego sprawy, to w wielu sytuacjach zależymy od różnych sterowników, przekaźników, urządzeń nawigacyjnych, przenoszących naszą decyzję do systemu komputerowego, a następnie reagujących milionami impulsów elektrycznych. Konstruktor elektronik budujący urządzenie elektroniczne może intuicyjnie czuć, że zbudował urządzenie zgodnie ze swoją wiedzą i najlepszymi umiejętnościami. Być może też wykonał podstawowe, możliwe do przeprowadzenia w warsztacie testy. A skoro tak, to powinno ono spełniać wszystkie wymagania norm kompatybilności elektromagnetycznej, a więc w szczególności nie zakłócać działania innych urządzeń i być odpornym na zaburzenia zewnętrzne, przewodzone i promieniowane. Jednak o tym, czy tak faktycznie jest, może go przekonać dopiero badanie w laboratorium kompatybilności elektromagnetycznej, dysponującym odpowiednim, specjalistycznym sprzętem, nierzadko bardzo drogim, a przez to niedostępnym. Niektóre badania i pomiary są bardzo czasochłonne. Na przykład pomiary zaburzeń promieniowanych wymagają ustawienia urządzenia na stoliku, obracania tym stolikiem o zadany kąt, a następnie pomiarów za pomocą anteny kierunkowej lub zespołu anten w różnych pasmach częstotliwości. Dodatkowo, zmienia się wysokość, na której jest zamontowana taka antena – wszystkie te czynności trwają i nie dadzą się wykonać w przysłowiowe „5 minut”. Mało tego – zarówno komora, jak i stolik muszą być tak skonstruowane, aby nie wprowadzały żadnych odbić, tłumień lub zaburzeń sygnałów. A co, jeśli okaże się, że pomimo naszych wysiłków urządzenie nie spełnia norm? To zależy. Czasami wystarczy inaczej poprowadzić kable, czasami trzeba zastosować dławiki ferrytowe lub ekranowanie.
72
ELEKTRONIKA PRAKTYCZNA 3/2017
Niekiedy zmienić płytkę drukowaną, rozmieszczenie komponentów lub samem komponenty. Tu nieoceniona jest pomoc pracowników laboratorium. Autor artykułu sam był w takiej sytuacji, w której podczas badania urządzenia, gdy zaczęło ono wyświetlać „dziwne” symbole, pracownik laboratorium przyniósł pokaźną skrzynię z rdzeniami ferrytowymi i pomógł w ustaleniu przyczyny. Taka pomoc jest tym bardziej cenna, że te osoby mają doświadczenie – po prostu codziennie rozwiązują tego typu problemy. Mimo że certyfikat wydany dla laboratorium upewnia nas, że badanie będzie przeprowadzone właściwe, sprzętem o odpowiedniej jakości, to konieczność spełnienia norm z zakresu EMC nie oznacza, że musi ono być wykonane przez certyfikowane laboratorium, ponieważ to podmiot wprowadzający produkt na rynek bierze na siebie odpowiedzialność za zgodność wyrobu z normami. To on wystawia stosowną deklarację zgodności (a nie laboratorium, jak nadal uważa wiele osób!), oznaczając produkt znakiem CE. W praktyce chodzi o to, aby w razie problemów producent miał „podkładkę”, że przeprowadzono stosowne badania i pomiary. Nie zwalnia go to jednak od odpowiedzialności za produkt i nie zabezpiecza przed konsekwencjami. Zgodnie z prawem obowiązującym na terenie UE zakłada się, że produkty oznaczone znakiem CE spełniają normy unijne, a producent jest uczciwy. Z kolei producent musi założyć, że laboratorium dobrze wykonało swoją pracę, że dysponowało odpowiednim sprzętem. Ale jak usłyszałem kiedyś „naczelną zasadą zaufania jest kontrola”, więc powołano też do życia instytucje, które sa uprawnione do sprawdzania zgodności urządzeń z normami zharmonizowanymi. W Polsce tę funkcję pełni Prezes Urzędu Komunikacji Elektronicznej. W razie stwierdzenia niezgodności, producent może być ukarany karą pieniężną oraz zostaje wydany nakaz wycofania produktu z rynku. Może też być wydany zakaz dalszej jego sprzedaży. Koszt pełnego badania w certyfikowanym laboratorium może być zbyt wysoki dla niewielkich biur projektowych i małych firm. Jest też raczej nieopłacalny, jeśli urządzenie jest produkowane w niewielkich ilościach. Niektóre badania mogą być niszczące i trzeba na nie „odżałować” urządzenie (np. odporność na ESD). Nie ma też gwarancji, że koszty ograniczą się do jednego badania. W sytuacji, gdy laboratorium w wyniku przeprowadzonych badań stwierdzi, że sprzęt nie spełnia norm, konieczne będzie dokonanie poprawek projektu.
Laboratoria EMC Po ich wykonaniu trzeba będzie wykonać badanie ponownie i jeszcze raz za nie zapłacić. Tu bezcenne jest doświadczenie, ponieważ jak nietrudno zauważyć, kilka błędów będzie skutkowało znaczącym wzrostem kosztu całego projektu. Dlatego poszukuje się pewnych dróg na skróty, ale nic nie jest w stanie zastąpić badania w certyfikowanym laboratorium. Programy symulacyjne mogą być pomocne, ale nie dają gwarancji, że otrzymane wyniki będą zgodne z rzeczywistością. Na własne laboratorium, wyposażone w profesjonalną aparaturę i spełniające normy, mogą pozwolić sobie jedynie największe firmy. Co prawda można mniejszym kosztem przeprowadzić wstępne badania, ale i tak na końcu trafimy do laboratorium. Aby ułatwić poszukiwania, zdecydowaliśmy się na opublikowanie listy laboratoriów, w których można wykonać badanie lub szukać pomocy. W naszej tabeli podaliśmy dane
Badania i pomiary w zakresie kompatybilności elektromagnetycznej (EMC) m.in. dla urządzeń medycznych, laboratoryjnych, przemysłowych i telekomunikacyjnych oraz zgodnie z Dyrektywą 2004/104/WE, odnoszącą się do pojazdów i komponentów stosowanych w branży Automotive, dla komponentów elektrycznych i elektronicznych stosowanych w pojazdach.
Instytut Automatyki Systemów Energetycznych Sp. z o.o. Centrum Badawczo-Rozwojowe ul. Wystawowa 1 51-618 Wrocław www.iase.wroc.pl [email protected]
Badania kompatybilności elektromagnetycznej. Wzorcowanie wyposażenia badawczego i pomiarowego. Doprowadzanie urządzeń do zgodności z wymaganiami EMC. Sprawdzanie stanowisk do badań EMC. Ekspertyzy techniczne dotyczące zagadnień EMC. Doradztwo techniczne w dziedzinie EMC. Badania tłumienności ekranów elektromagnetycznych. Badania w zakresie ERM/EMC urządzeń do transmisji radiowej. Badania z zakresu bezpieczeństwa użytkowania. Badania klimatyczne i wytrzymałości mechanicznej.
Akredytacja Laboratorium Badawczego AB 1384 Akredytacja Laboratorium Wzorcującego AP 145 Politechnika Wrocławska Laboratorium Kompatybilności Elektromagnetycznej (LKE) ul. Janiszewskiego 9 50-372 Wrocław www.ktt.pwr.wroc.pl [email protected] Akredytacja AB 167
Lubelskie
kontaktowe oraz zakres wykonywanych badań – warunki badania, termin oraz cenę trzeba ustalić samodzilenie. Teksty zawierające opis oferty zostały wykonane przez same laboratoria – my jedynie odnaleźliśmy je i skontaktowaliśmy się z nimi. Niektóre z laboratoriów podały numer swojej akredytacji, inne nie. Brak numeru akredytacji nie oznacza, że laboratorium jej nie posiada, ale jedynie tyle, że po prostu jej nie podało. W tej sprawie należy skontaktować się ze wskazaną jednostką. Laboratoria są ułożone w kolejności alfabetycznej. Dla łatwiejszej orientacji w pierwszej kolumnie umieściliśmy województwo, co naszym zdaniem pozwoli na łatwe odnalezienie laboratorium znajdującego się najbliżej siedziby naszej firmy. Lista kontaktowa ułatwi wybór i ewentualne porównanie oferty. Jacek Bogusz, EP
Badania z zakresu kompatybilności elektromagnetycznej (EMC) urządzeń i systemów. Pomiary emisji zaburzeń elektromagnetycznych (w tym pomiary emisji zaburzeń promieniowanych w komorze SAC z odległości 10 m) oraz badania odporności na zaburzenia elektromagnetyczne ciągłe i impulsowe, objęte zakresem akredytacji. Pomiary skuteczności ekranowania elektromagnetycznego. Pomiary parametrów kabli koncentrycznych. Długo- i krótkookresowe monitorowanie widma elektromagnetycznego, pomiary parametrów urządzeń radiowych, telekomunikacyjnych i telewizji kablowej. Szkolenia i doradztwo techniczne w zakresie EMC.
Radiotechnika Marketing Sp. z o.o. ul. Fabryczna 20, Pietrzykowice 55-080 Kąty Wrocławskie radiotechnika.com.pl [email protected]
Badania emisji zaburzeń przewodzonych i promieniowanych oraz odporności na pole radiowe. Stanowiska pomiarowe zgodne z wymaganiami przemysłowymi CISPR i wojskowymi, m.in. NO-06-A200 i A 500 oraz MIL-STD 461. Realizacja badań w komorze bezodbiciowej, z odległością pomiarową 3 m, oraz badania in-situ, wykonywane w terenie lub w siedzibie Klienta. Komora bezodbiciowa wyposażona w układ odprowadzania spalin. Pomiary charakterystyk filtrów przeciwzakłóceniowych. Także badania środowiskowe, w tym odporności na wibracje sinusoidalne i losowe oraz udary mechaniczne i narażenia klimatyczne.
W2 ul. Czajcza 6 86-005 Białe Błota www.w2.bydgoszcz.pl [email protected]
Pomiary emisji promieniowanej z wykorzystaniem skanera EMC (zakres do 4 GHz). Badanie odporności na wahania, zaniki, zapady napięcia zasilającego. Pomiary zaburzeń przewodzonych. Badania inżynierskie związane z odpornością urządzeń na zaburzenia elektromagnetyczne (EFT, zaburzenia RF).
Laboratorium Kompatybilności Elektromagnetycznej Instytut Elektrotechniki i Elektrotechnologii Politechnika Lubelska ul. Nadbystrzycka 38A 20-618 Lublin iee.pollub.pl/index.php/pl/ struktura-instytutu/lke [email protected][email protected]
Badania z zakresu kompatybilności elektromagnetycznej urządzeń elektrycznych (pre-compilance), badania wpływu materiału i geometrii dławików przeciwzakłóceniowych na tłumienność wtrąceniową, wyznaczanie przestrzennego rozkładu pola elektrycznego i magnetycznego w zakresie ELF i VLF, analizy poziomu emisji w zakresie 30 MHz…3 GHz, analiza harmonicznych obwodów zasilania urządzeń elektrycznych, badanie emisji zakłóceń przewodzonych w torach zasilania urządzeń elektrycznych. W zakresie testów odporności realizowane są badania odporności na serie szybkich elektrycznych stanów przejściowych „BURST” (PN-EN 61000-4-4), odporności na udary „SURGE” (PN-EN 61000-4-5), badania odporności na wyładowania elektrostatyczne „ESD” (PN-EN 61000-4-2), badania odporności na pole magnetyczne o częstotliwości sieci elektroenergetycznej 50 Hz (PN-EN 61000-4-8) i odporności na impulsowe pole magnetyczne (PN-EN 61000-4-9), badanie odporności na zapady, krótkie przerwy i zmiany napięcia zasilania PQT (PN-EN 61000-4-11).
ELEKTRONIKA PRAKTYCZNA 3/2017
73
Małopolskie
MAWI M.PISZCZEK & W.DZIEDZIC Spółka Jawna Laboratorium BEMC ul. Przemysłowa 75 32-765 Rzezawa bemc.pl [email protected] tel.: 48 693 663 555 Numer akredytacji AB 1555 Centralne Laboratorium Aparatury Medycznej Celamed Sp. z o.o. Os. Henryka Sienkiewicza 33 32-080 Zabierzów
Badania EMC i LVD wyrobów i wyposażenia elektrycznego, telekomunikacyjnego, elektronicznego i medycznego. Zakres badań i pomiarów: emisja zaburzeń promieniowanych do 1 GHz, emisja zaburzeń przewodzonych: napięcie zaburzeń, moc zaburzeń, fluktuacje i migotanie napięcia zasilania, emisja harmonicznych do sieci. Odporność na: wyładowania elektrostatyczne (ESD), pole elektromagnetyczne o częstotliwościach radiowych RF, szybkie stany przejściowe, udary, przewodzone zaburzenia indukowane przez pola o czętotliwościach radiowych RF, zapady napięcia i przerwy w zasilaniu. LVD: prąd upływu, prąd dotykowy, prąd upływu uziomowy, wytrzymałość elektryczna, rezystancja uziemienia.
Mazowieckie
Akredytowane Laboratorium wykonuje badania EMC (badania odporności na zaburzenia ciągłe i przejściowe oraz pomiar emisyjności zaburzeń radioelektrycznych), których celem jest potwierdzenie zgodności z odpowiednimi dyrektywami unijnymi i normami zharmonizowanymi. Pozytywne wyniki tych badań stanowią podstawę do wystawienia deklaracji zgodności i oznaczenia wyrobu znakiem CE dopuszczającym do obrotu na terenie EU. Laboratorium umożliwia również przeprowadzenie badań konstruktorskich na każdym etapie konstruowania i produkcji. Laboratorium wykonuje badania EMC dla wyrobów: medycznych elektrycznych i elektronicznych, medycznych systemów elektrycznych, powszechnego użytku, narzędzi elektrycznych i elektronicznych, informatycznych elektrycznych i elektronicznych, środowiska mieszkalnego, handlowego i lekko przemysłowego, środowiska przemysłowego, pozostałych, których wielkości probiercze mogą być osiągnięte przez posiadane wyposażenie pomiarowe. Badania odporności: PN-EN 61000-4-2 – badanie odporności na wyładowania elektrostatyczne (ESD), PN-EN 61000-4-4 – badanie odporności na serie szybkich elektrycznych stanów przejściowych (BURST), PN-EN 61000-4-5 – badanie odporności na udary (SURGE), PN-EN 61000-4-11 – badanie odporności na zapady napięcia, krótkie przerwy i zmiany napięcia (PQT), PN-EN 61000-4-8 – badanie odporności na pole magnetyczne o częstotliwości sieci (POWERM), PN-EN 61000-4-9 – badanie odporności na impulsowe pole magnetyczne (PULSEM), PN-EN 61000-4-6 – badanie odporności na zaburzenia przewodzone indukowane przez pola o częstotliwości radiowej, PN-EN 61000-4-3 – badanie odporności na pole elektromagnetyczne o częstotliwości radiowej. Badanie emisji w zakresie częstotliwości radiowej (EMI): PN-EN 55011, EN 55022 – pomiar poziomu napięć zaburzeń elektromagnetycznych przewodzonych o częstotliwości radiowej na przewodach sieci zasilania, PN-EN 55011, EN 55022 – pomiar poziomu natężenia pola zaburzeń elektromagnetycznych promieniowanych o częstotliwości radiowej (badanie w komorze bezodbiciowej o 3 m odległości pomiarowej, maszt antenowy umożliwiający zmianę wysokości anteny od 1 m do 4 m, stół obrotowy o średnicy 2 m i nośności do 500 kg). Badanie emisji w publicznych sieciach zasilających: PN-EN 61000-3-2 – pomiar emisji harmonicznych prądu sprzętu elektrycznego i elektronicznego, PN-EN 61000-3-3 – pomiar wahań napięcia i migotania światła sprzętu elektrycznego i elektronicznego.
Instytut Technologii Eksploatacji Państwowy Instytut Badawczy Radom ul. K. Pułaskiego 6/10 26-600 Radom Laboratorium Systemów Sterowania www.itee.radom.pl [email protected] tel. 48 483 649 354
Pomiary emisji: pomiar napięcia zaburzeń przewodzonych ciągłych w zakresie 9 kHz…30 MHz;, pomiar mocy zaburzeń emitowanych w zakresie 30…300 MHz, pomiar składowych harmonicznych prądu w zakresie od 1 do 40 harmonicznej. Badania odporności: badanie odporności na udary elektryczne w zakresie 0,16…4 kV, badanie odporności na zapady napięcia, krótkie przerwy i zmiany napięcia, badanie odporności na serie szybkich elektrycznych stanów przejściowych w zakresie 0,2…4 kV, badanie odporności na wyładowania elektrostatyczne w zakresie 1…16 kV.
Mazowieckie
Małopolskie
Numer akredytacji AB 1604
Intertek Poland Sp. z o.o. ul. Cyprysowa 23 B (II piętro) 02-265 Warszawa www.intertek.pl laboratorium.polska@intertek. com [email protected]
Firma Intertek to globalna sieć laboratoriów badawczych posiadających akredytację (NRTL – Nationally Recognized Testing Laboratory). Zatrudniamy inżynierów na całym świecie. Jesteśmy akredytowani przez krajowe organizacje, agencje i organy regulacyjne, w tym przez agencję bezpieczeństwa i zdrowia w pracy (ang. OSHA – Occupational Safety & Health Administration), do oceniania produktów i sporządzania list produktów zgodnie z normami bezpieczeństwa dla sprzętu elektrycznego. Wraz z globalnym zespołem inżynierów wspieramy firmy, aby ich produkty spełniały najwyższe normy jakościowe.
Badanie emisji zaburzeń elektromagnetycznych: napięcia zaburzeń ciągłych na zaciskach sieci zasilającej (9 kHz…30 MHz), moc zaburzeń (30 MHz…300 MHz), napięcia zaburzeń nieciągłych na zaciskach sieci zasilającej , natężenie prądu indukowanego przez pole magnetyczne w antenie pętlowej (9 kHz…30 MHz), zaburzenia promieniowane (1 GHz…18 GHz), emisja harmonicznych prądu, parametry wahania napięcia i migotania światła. Badania odporności na: wyładowania elektrostatyczne (ESD), pole elektromagnetyczne o częstotliwości radiowej (80 MHz…2,7 GHz), na serie szybkich elektrycznych stanów przejściowych (BURST), na udary (SURGE), na zaburzenia przewodzone indukowane przez pola o częstotliwości radiowej (0,15 MHz…230 MHz), na pole magnetyczne o częstotliwości sieci zasilającej, na zapady, krótkie przerwy i zmiany napięcia, na harmonicznie i interharmoniczne w przyłączu zasilania prądu przemiennego, na wahania napięcia, na asymetrię napięcia, na zmiany częstotliwości sieci zasilającej. Pomiary widma radiowego (ERM): efektywna moc promieniowania (ERP), emisja w sąsiedztwie pasma pożądanego, emisja w paśmie niepożądanym, moc przejściowa, pasmo modulacji.
Mazowieckie
TEMAT NUMERU
EMC
WYBÓR KONSTRUKTORA
74
ELEKTRONIKA PRAKTYCZNA 3/2017
Laboratorium Badań Kompatybilności Elektromagnetycznej i Pomiarów Pól Elektromagnetycznych (LBEMC) Wojskowy Instytut Techniczny Uzbrojenia Zakład Badań Systemów Radiolokacyjnych, Kompatybilności Elektromagnetycznej i Optoelektroniki ul. Pr. St. Wyszyńskiego 7 05-220 Zielonka www.witu.mil.pl/www/laboratoria/lab_b_radiolok/strona_glowna_laboratorium.htm [email protected] Numer akredytacji AB 171
Mazowieckie Mazowieckie
Organizacja i wykonywanie badań z zakresu kompatybilności elektromagnetycznej techniki wojskowej i cywilnej, w zakresie: odporności na przewodzone zaburzenia wąskopasmowe RF w paśmie 10 kHz…400 MHz, na zaburzenia LF przewodzone oraz testy polem magnetycznym o niskiej częstotliwości 10 Hz…250 kHz, odporność na promieniowane pola elektromagnetyczne w odległości 1 m, pól o natężeniach: 200 V/m (9 kHz...30 MHz), 60 V/m (30 MHz...18 GHz), 200 V/m (18…40 GHz). Badania odporności na promieniowane pola elektromagnetyczne w odległości 3 m pola jednorodnego o natężeniu 10 V/m (AM 80%, 18 V/m CW, 80 MHz...1 GHz oraz 1 GHz…6 GHz), w odległości 1 m pola jednorodnego w obszarze 0,5 m×0,5 m o natężeniu 10 V/m (AM 80%, 18 V/m CW, 640 GHz). Badanie odporności na narażenia przewodzone, pobudzanie impulsowe, na narażenia przewodzone, tłumiona fala sinusoidalna, przewody zasilania i sygnałowe 10 kHz…100 MHz. Badanie odporność na wyładowania elektrostatyczne do 30 kV, serie szybkich elektrycznych stanów przejściowych (burst) do 4,5 kV, udary elektryczne (surge) do 4 kV, zaniki i zapady napięcia. Badanie odporności na pola magnetyczne o częstotliwości sieci 50 Hz do 100 A/m, impulsowe pola magnetyczne do 1000 A/m. Pomiar harmonicznych i interharmonicznych prądów zasilania do 63 A. Pomiar wahań napięcia i migotania światła do 32 A na fazę. Pomiar emisji zaburzeń elektromagnetycznych promieniowanych i przewodzonych: emisji promieniowanej w paśmie 20 Hz…40 GHz, emisji przewodzonej dla sieci 1 fazowej w paśmie 0,1…200 MHz, do 100 A; emisji przewodzonej dla sieci 3 fazowych w paśmie 9 kHz…30 MHz, do 32 A. Badanie odporności na wahania napięcia, asymetrię napięcia oraz zmiany częstotliwości sieci zasilającej. Pomiary parametrów anten oraz skutecznej powierzchni odbicia 300 MHz…40 GHz i 75…110 GHz. Pomiary pola elektromagnetycznego w zakresie 5 Hz…40 GHz. Natężenie pola elektrycznego w paśmie 5 Hz…40 GHz, od 0,01 V/m do 100 kV/m. Natężenie pola magnetycznego w paśmie od 5 Hz do 1 GHz, w zakresie od 1 nT do 10 mT lub 0,0120 A/m. Gęstość mocy w paśmie 20 MHz…40 GHz oraz 75…110 GHz (w tym pole impulsowe). Pole impulsowe od 50 ns w paśmie 50 MHz…40 GHz. Prowadzenie nieakredytowanych badań odporności na bliskie wyładowania atmosferyczne (LEMP). Z końcem 2017 roku będą możliwe badania z użyciem stanowiska wykorzystującego wysokomocowe impulsy HPM. Stanowisko to pozwala na uzyskanie gęstości mocy rzędu 14 MW/ m2 oraz natężenia pola elektrycznego 74 kV/m. Ponadto istnieje możliwość wykorzystania 3-fazowego wielofunkcyjnego źródła zasilania Netwave 30, które pozwala na osiągnięcie wartości mocy 36 kW dla prądu stałego i 30 kVA dla prądu zmiennego. Realizowana jest też inwestycja związana z budową semibezodbiciowej komory pomiarowej, która umożliwi wykonywanie pomiarów i badań z odległości 10 m zgodnie z normami cywilnymi i wojskowymi.
Laboratorium Kompatybilności Elektromagnetycznej WEL WAT ul. Gen. S. Kaliskiego 2 00-908 Warszawa www.labkem.wat.edu.pl/Kontakt.htm [email protected]
Urządzenia powszechnego użytku: pomiar poziomu napięć zaburzeń na zaciskach zasilania w zakresie 148,5 kHz…30 MHz (PN-EN 55014-1:2012 pkt 5), pomiar zaburzeń promieniowanych w zakresie 30 MHz…1 GHz (PN-EN 55014-1:2012 pkt 9), pomiar odporności na promieniowane pole elektromagnetyczne o częstotliwości radiowej (PN-EN 55024:2011 pkt 4.2.3 + PN-EN 55024:2011/A1:2015-08, PN-EN 61000-4-3:2007 + A1:2008 + A2:2011). Urządzenia informatyczne: pomiar zaburzeń przewodzonych na zaciskach zasilania w zakresie 150 kHz…30 MHz (PN-EN 55022:2011 p. 9, EN 55022 p. 9), pomiar zaburzeń promieniowanych w zakresie częstotliwości 30 MHz…6 GHz wg (PN-EN 55022:2011 p.10, EN 55022 p. 10), pomiar odporności na promieniowane pole elektromagnetyczne o częstotliwości (PN-EN 55024:2011 pkt 4.2.3 + PN-EN 55024:2011/ A1:2015-08, PN-EN 61000-4-3:2007 + A1:2008 + A2:2011). Wyposażenie wojskowe: pomiar zaburzeń elektromagnetycznych w zakresie częstotliwości 10 kHz… 10 MHz, przewodzonych w przewodach zasilania (NO-06-A500:2012, pkt 3.2 – procedura PCE 02, MIL-STD-461F p. 5.5 (CE102)), pomiar zaburzeń elektromagnetycznych promieniowanych (pole elektryczne) w zakresie 2 MHz…18 GHz (NO-06-A500:2012, pkt 3.14, procedura PRE-02, MIL-STD-461F p. 5.17 (RE102)), pomiar odporności na oddziaływanie pola elektromagnetycznego o przebiegu sinusoidalnym 80 MHz…2,5 GHz (NO-06-A500:2012, pkt 3.17, procedura PRS-02, MIL-STD-461F p. 5.20(RS103)), pomiar zaburzeń elektromagnetycznych promieniowanych (pole magnetyczne) w zakresie 30 Hz…100 kHz (NO-06-A500:2012, pkt 3.13, procedura PRE-01, MIL-STD-461F p. 5.16 (RE101)). Pomiar charakterystyk promieniowania i parametrów anten (ANSI/IEEE Std 149-1979), pomiary torów w.cz. (PN-EN60966-1:2002U pkt A.2.1, A.2.2 oraz PN-EN 3475-806:2006 pkt 4.2).
Polskie Centrum Badań i Certyfikacji S.A. ul. Kłobucka 23A 02-699 Warszawa www.pcbc.gov.pl [email protected]
Badania bezpieczeństwa użytkowania, badania EMC (kompatybilność elektromagnetyczna): emisja, odporność. Badania oddziaływania pól elektromagnetycznych na człowieka. Pomiary sprawności energetycznej oraz poboru mocy w stanie czuwania. Badania na zgodność z normami i specyfikacjami technicznymi w zakresie uzgodnionym między laboratorium a klientem.
Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202 02-486 Warszawa www.piap.pl [email protected]
Badania odporności na: wyładowania elektrostatyczne ESD wg PN-EN 61000-4-2, serie szybkich elektrycznych stanów przejściowych EFT/B wg PN-EN 61000-4-4, wyładowania impulsowe dużej energii – udary 1,2/50 µs (8/20 µs) wg PN-EN 61000-4-5, sinusoidalne przewodzone, indukowane przez pola o częstotliwościach radiowych 0,15…80 MHz wg PN-EN 61000-4-6, polem magnetycznym o częstotliwości sieci wg PN-EN 61000-4-8, polem magnetycznym impulsowym wg PN-EN 61000-4-9. Odporność na zapady, krótkie przerwy i zmiany napięcia wg PN-EN 610004-11. Badania i pomiary emisji zaburzeń przewodzonych w zakresie 0,15…30 MHz dla obwodów zasilania i interfejsowych, emisji promieniowanej przy użyciu sond bliskiego pola elektromagnetycznego (identyfikacja źródeł zaburzeń wewnątrz urządzeń oraz nieszczelności elektromagnetycznej obudów urządzeń). Laboratorium prowadzi również doradztwo techniczne w zakresie przygotowania programu badań EMC oraz przygotowania obiektu do badań, identyfikacji przyczyn braku zgodności z wymaganiami EMC oraz sposobów ich wyeliminowania, podwyższenia odporności urządzeń i systemów na zburzenia elektromagnetyczne do poziomu akceptowanego przez użytkownika lub Dyrektywy EMC. Badane wyroby: elementy, urządzenia i systemy automatyki przemysłowej oraz inne wyroby elektryczne i elektroniczne.
Mazowieckie
Mazowieckie
Laboratoria EMC
ELEKTRONIKA PRAKTYCZNA 3/2017
75
Badania pod kątem EMC: sprzętu radiowego i telekomunikacyjnego, elektroniki motoryzacyjnej, wyrobów medycznych, sprzętu IT, produktów do użytku domowego i komercyjnego, sprzętu gospodarstwa domowego oraz narzędzi elektrycznych (do użytku domowego i przemysłowego), oświetlenia, sprzętu laboratoryjnego, zabawek elektrycznych, produktów dla przemysłu ciężkiego, maszyn i sprzętu budowlanego, systemów i alarmów bezpieczeństwa, sprzętu kolejowego.
Mazowieckie
Zakład Elektroniczny Bornico ul. Małęczyńska 25 26-604 Radom www.bornico.pl [email protected]
Laboratorium EMC prowadzące badania środowiskowe urządzeń w zakresie odporności na zakłócenia przewodzące i o częstotliwościach radiowych oraz w zakresie oddziaływań klimatycznych. Badanie odporności na wyładowania elektrostatyczne (ESD). Badanie odporności na szybkie przejściowe/wiązki zaburzeń elektrycznych (EFT/B). Badanie odporności na udary (surge). Badanie odporności na zapady napięcia, krótkie przerwy i zmiany napięcia (PQT).
Podkarpackie
EAE Elektronik Spółka z o.o. ul. Przemyska 24d 38-500 Sanok www.eae-elektronik.pl [email protected]
Pomiar zaburzeń przewodzonych (150 kHz…30 MHz). Pomiar zaburzeń impulsowych – generatory ESD, burst i surge. Badanie odporności na serie szybkich, elektrycznych stanów przejściowych burst. Badanie odporności na udary surge. Badanie odporności na wyładowania elektrostatyczne ESD. Badanie odporności na zapady napięcia, krótkie przerwy i zmiany napięcia.
Politechnika Rzeszowska Wydział Elektrotechniki i Informatyki Katedra Systemów Elektronicznych i Telekomunikacyjnych ul. Wincentego Pola 2 35-959 Rzeszów tel. 48 178 651 239 www.zseit.portal.prz.edu.pl/pl/ nauka/laboratoria-badawcze/ emc/ [email protected]
Pomiar emisji zaburzeń o częstotliwościach radiowych w przedziale częstotliwości od 9 kHz do 18 GHz, w komorze semibezechowej z uwzględnieniem wymagań norm komercyjnych i lotniczych. Pomiar napięcia zaburzeń na zaciskach zasilania w paśmie 9 kHz…200 MHz w obwodach o obciążalności do 32 A/faza, z wykorzystaniem zestawu sieci LISN oraz zestawu sond pasywnych i aktywnych, z uwzględnieniem wymagań norm cywilnych i lotniczych. Pomiar emisji harmonicznych prądów zasilających oraz wahań i migotania światła dla odbiorników jedno- i trójfazowych o mocy do 45 kVA zgodnie z wymaganiami m.in. standardów PN/EN 61000-3-2, -3-3, -3-11, 3-12*. Laboratorium kompatybilności elektromagnetycznej Politechniki Rzeszowskiej posiada na wyposażeniu komorę semibezechową 3M firmy TDK, która umożliwia pomiary emisji zaburzeń elektromagnetycznych emitowanych przez urządzenia elektryczne i elektroniczne w zakresie częstotliwości od 30 MHz do 18 GHz oraz ich odporności w zakresie od 26 MHz do 18 GHz. Komora spełnia wymagania standardów: EN50147-1, MIL-STD-285, NSA 65-5 – w zakresie skuteczności ekranowania; EN50147-2, ANSI C63.4, CISPR-16-1-4 w zakresie znormalizowanego tłumienia stanowiska badawczego; NSA 3.5 dB, objętość testowa o średnicy 2 m i wysokości 2 m, odległość pomiarowa 3 m; EN 61000-4-3 – w zakresie możliwości wytworzenia jednorodnego pola z tolerancją 0…6 dB dla 75% punktów pomiarowych, w płaszczyźnie pomiarowej 1,5 m×1,5 m umiejscowionej na wysokości 0,8 m od podłogi. Parametry komory zostały potwierdzone certyfikatem wydanym przez niezależne laboratorium ARC Seibersdorf (raporty pomiarów Nr EH-H26/07) na podstawie przeprowadzonych testów. Wyposażenie komory semibezechowej: stół obrotowy DS2000S1t-H300 firmy INNCO o nośności 1 tony i średnicy 2 m; maszt antenowy MA 4000-NS firmy INNCO; kontroler masztu i stołu CO2000 firmy INNCO; zestaw audio-wideo VCS-04 firmy TDK o odporności na pola elektromagnetyczne na poziomie 200 V/m, w zakresie 26 MHz…18 GHz. Pomiar odporności urządzeń, systemów, elektrycznych i elektronicznych na pola elektromagnetyczne o natężeniu do 10 V/m z modulacją AM 80% (18 V/m CW) w odległości system – antena od 1 m do 3 m, w przedziale częstotliwości od 80 MHz do 6 GHz zgodnie z wymaganiami standardu PN/EN 61000-4-3. Pomiar odporności urządzeń jedno i trójfazowych na udary, zgodnie z wymaganiami standardów PN/EN 610004-5, serii szybkich przejściowych stanów nanosekundowych 5/50 ns, zgodnie z wymaganiami standardów PN/EN 61000-4-4 w obwodach o obciążalności do 63 A. Pomiar odporności urządzeń jedno- i trójfazowych na zapady, zaniki i zmiany napięcia zasilającego w obwodach jedno- i trójfazowych zgodnie z wymaganiami standardów PN/EN 61000-4-11 w obwodach o obciążalności do 63 A. Pomiar odporności urządzeń jedno- i trójfazowych na zaburzenia przewodzone indukowane przez pola o częstotliwościach radiowych, wstrzykiwane do obwodów zasilania i sterowania, w zakresie częstotliwości od 9 kHz do 400 MHz, do aplikacji CDN, BCI, stripline zgodnie z wymaganiami m.in. standardów PN/EN 61000-4-6, RTCA DO 160. Pomiar odporności urządzeń na zaburzenia przewodzone asymetryczne „common-mode” od 0 Hz do 150 kHz zgodnie z wymaganiami standardu PN/EN 61000-4-16. Pomiar odporności urządzeń elektrycznych i elektronicznych na wyładowania elektrostatyczne o poziomie udaru do 30 kV, zgodnie z wymaganiami standardu PN/EN 61000-4-2 .
Podkarpackie
Mazowieckie
SGS Polska Sp. z o.o. ul. Jana Kazimierza 3 01-248 Warszawa www.sgs.pl/pl-PL/IndustrialManufacturing/Services-Relatedto-Production-and-Products/ Product-Certification/NewMachinery-Certification/EMCTesting.aspx
Pomorskie
TEMAT NUMERU
EMC
WYBÓR KONSTRUKTORA
76
Wyposażenie laboratorium zakupione z funduszy UE. Laboratorium nie posiada na dzień dzisiejszy możliwości wykorzystania aparatury do badań komercyjnych.
Laboratorium Badawcze Spółki Radmor S.A. ul. Hutnicza 3 81-212 Gdynia www.laboratorium.radmor.com.pl laboratorium.badawcze@radmor. com.pl
ELEKTRONIKA PRAKTYCZNA 3/2017
Zakres świadczonych usług obejmuje: badania parametrów w.cz. radiotelefonów i radiostacji VHF, badania kompatybilności elektromagnetycznej (EMC) wyrobów, badania mechaniczne i klimatyczne wyrobów, badania stopni ochrony zapewnianych przez obudowy, kod IP (hermetyczność, pył). Nowoczesne wyposażenie pomiarowe oraz badawcze (wstrząsarki, komory klimatyczne). Wykwalifikowany personel wykona badania w sposób spełniający wymagania klienta. Odporności urządzeń na zakłócenia wprowadzane poprzez przyłącze zasilania (PN-EN 61000-4-4, -5, -11). Pomiar poziomu emisji zakłóceń przewodzonych poprzez złącze zasilania (PN-EN 55022 oraz NO-06-A500). Poziom emisji na złączu antenowym nadajników i odbiorników (PCE-03 normy NO-06-A500). Badanie odporności urządzeń na wyładowania elektrostatyczne (PN-EN 61000-4-2) w zakresie do 15 kV.
Satel sp. z o.o. ul. Budowlanych 66 80-298 Gdańsk www.satel.pl [email protected]
Badanie odporności na wyładowania elektrostatyczne (ESD). Badanie odporności na pole elektromagnetyczne o częstotliwości radiowej. Badanie odporności na szybkie stany przejściowe/ wiązki zaburzeń elektrycznych (burst). Badanie odporności na udary (surge). Badanie odporności na zaburzenia przewodzone indukowane przez pola o częstotliwości radiowej. Badanie odporności na zapady napięcia, krótkie przerwy i zmiany napięcia. Badania emisji zaburzeń radioelektrycznych przewodzonych w paśmie 150 kHz…30 MHz oraz radiowych w paśmie 30 MHz…1000 MHz.
Computers & Control Sp. z o.o. ul. Hutnicza 10 40-241 Katowice www.computers-and-control.pl/ uslugi/badania-emc/ [email protected]; [email protected] tel. 48 322 042 528 wew. 209 lub 401
Badania inżynieryjno-konstruktorskie z zakresu EMC: odporność na wyładowania elektrostatyczne (poziom probierczy 15 [kV] – wyładowanie przez powietrze, 8 [kV] – wyładowanie przez kontakt), badanie odporności na serie szybkich elektrycznych stanów przejściowych (poziom probierczy do 4,4 [kV], częstotliwość powtarzania 5 kHz lub 100 kHz), badanie odporności na udary (poziom probierczy do 4,4 kV, badanie odporności na krótkie przerwy napięcia UT (poziom 0% UT), pomiar poziomu zaburzeń elektromagnetycznych przewodzonych do 1 GHz.
Pomiary emisji zaburzeń przewodzonych 9 kHz…30 MHz oraz pomiary zaburzeń emisji promieniowanych 30 MHz…1 GHz, zgodnie z wymaganiami norm PN-EN 61000-6-3, PN-EN 61000-6-4, PN-EN 55032. Badania odporności wg PN-EN 61000-6-1, PN-EN 61000-6-2, PN-EN 55024: odporność na wyładowania elektrostatyczne ESD wg PN-EN 61000-4-2, odporność na serie szybkich elektrycznych stanów przejściowych burst wg PN-EN 61000-4-4, odporność na udary surge wg PN-EN 61000-4-5, oporność na zaburzenia przewodzone, indukowane przez pola o częstotliwości radiowej wg PN-EN 61000-4-6, odporność na zapady i krótkie przerwy oraz zmiany napięcia zasilania PQT wg PN-EN 61000-4-11.
Instytut Techniki i Aparatury Medycznej ITAM ul. Roosevelta 118 41-800 Zabrze www.itam.zabrze.pl [email protected] tel. 48 322 716 013
Pracownia kompatybilności elektromagnetycznej EMC-ITAM świadczy usługi w zakresie badań konstruktorskich kompatybilności elektromagnetycznej urządzeń elektrycznych, w szczególności urządzeń medycznych. Zakres oferowanych usług obejmuje: badanie odporności na wyładowania elektrostatyczne (wg PN-EN 61000-4-2), badanie odporności na pole elektromagnetyczne o częstotliwości radiowej (wg PN-EN 61000-4-3) w zakresie 80 MHz...2,7 GHz, badanie odporności na serie szybkich elektrycznych stanów przejściowych (wg PN-EN 61000-4-4), badanie odporności na udary (wg PN-EN 61000-4-5), odporności na zaburzenia przewodzone indukowane przez pola o częstotliwości radiowej (wg PN-EN 61000-4-6), odporności na pole magnetyczne o częstotliwości sieci elektroenergetycznej (wg PN-EN 61000-4-8), odporności na impulsowe pole magnetyczne (wg PN-EN 61000-4-9), odporności na zapady napięcia, krótkie przerwy i zmiany napięcia (wg PN-EN 61000-4-11), poziom napięć zaburzeń na zaciskach sieci zasilającej (wg PN-EN 55011), poziom elektromagnetycznych zaburzeń promieniowanych (wg PN-EN 55011). Pracownia oferuje również możliwość przeprowadzenia konsultacji lub udziału doświadczonych konstruktorów z Instytutu Techniki i Aparatury Medycznej ITAM celem określenia i likwidacji przyczyn niezgodności badanych urządzeń z wymaganiami EMC. Służymy także pomocą w zakresie udoskonalenia konstrukcji badanych urządzeń. Pracownia jest wyposażona w komorę GTEM 1000 z przestrzenią pomiarową 0,75 m×0,74 m×0,66 m oraz aparaturę pozwalającą prowadzić badania odporności do częstotliwości 2,7 GHz dla urządzeń 1-fazowych, o prądzie zasilającym do 16 A dla poziomu 10 V/m (w niektórych przypadkach do 20 V/m).
Instytutu Technik Innowacyjnych EMAG ul. Leopolda 31 40-189 Katowice www.cbc.ibemag.pl [email protected]
EMAG dysponuje dwoma niezależnymi kompleksowo wyposażonymi laboratoriami badawczymi do prowadzenia testów z zakresu kompatybilności elektromagnetycznej (EMC) w zakresie pomiarów emisji zaburzeń elektromagnetycznych (przewodzonych i promieniowanych) oraz badań odporności na zaburzenia (przewodzone i promieniowane) dla urządzeń podlegających normom z serii IEC oraz podzespołów stosowanych w branży automotive (normy ISO oraz wymagania wewnętrzne koncernów samochodowych). Badania prowadzone są w oparciu o metody badawcze określone w normach z serii PN-EN 61000-4-x (IEC/EN 61000-4-x), PN-EN 550xx (CISPR 11, 14, 15, 16-x-x, 22, 24, itd.) oraz stosownie do wymagań wszystkich koncernów samochodowych. Oferujemy badania dla urządzeń zasilanych napięciem 1- i 3-fazowym (w tym także napięciem z izolowanym punktem neutralnym 3×500 V AC i 3×1000 V AC). Masa obiektów, które jesteśmy w stanie badać w warunkach laboratoryjnych: do 3 ton. Ponadto wykonujemy badania tzw. IN SITU – poza siedzibą laboratorium. Dysponujemy aparaturą wiodących światowych producentów, m.in.: Rohde & Schwarz, EM TEST, TESEQ, FCC, Erika Fiedler, Albatross Project, ComTest, INNCO, MATURO, Schwarzbeck, Amplifier Research, ETS Lindgren, AH Systems, itd. Prowadzimy badania na potrzeby oceny zgodności (zarówno dla producentów, jak i Jednostek Certyfikujących Wyroby JCW) oraz oferujemy badania na etapie prototypu, weryfikacyjne etapy konstrukcji – tzw. inżynierskie. Dysponujemy dodatkową infrastrukturą pozwalającą na efektywną lokalizację źródeł emisji zaburzeń RF lub najbardziej wrażliwych miejsc w urządzeniach. Do dyspozycji naszych klientów są darmowe elementy odkłócające firmy Wurth Elektronik oraz filtry Schaffner czy EPCOS. Laboratoria zlokalizowane są w Katowicach i Białymstoku.
Śląskie Podlaskie
Śląskie
Śląskie
Śląskie
Pomorskie
Laboratoria EMC
Oddział zamiejscowy na terenie Białostockiego Parku Naukowo-Technologicznego ul. Żurawia 71 15-540 Białystok Zakres akredytacji dostępny jest pod numerem AB 261
www.ep.com.pl/kap ELEKTRONIKA PRAKTYCZNA 3/2017
77
Wielkopolskie
Śląskie
Śląskie
Murrelektronik Sp. z o.o. ul. Jordana 11 40-056 Katowice www.murrelektronik.pl/pl/firma/ centrum-testowe.html [email protected] Centrum testowe znajduje się w siedzibie głównej Murrelektronik GmbH w Oppenweiler (Niemcy).
78
Centrum Kontroli Jakości Murrelektronik to jeden z ważniejszych działów całego przedsiębiorstwa – dysponując szerokimi możliwościami diagnostycznymi, świadczy ono także usługi podmiotom zewnętrznym. Zanim produkty Murrelektronik trafią na rynek, poddaje się je licznym testom. Nie tylko po to, by zadośćuczynić wymogom odpowiednich przepisów prawnych, lecz przede wszystkim, by sprostać wysokim wymogom jakościowym naszych klientów oraz wewnętrznym, bardzo surowym kryteriom. W laboratorium EMC w Centrum Kontroli Jakości Murrelektronik przeprowadzane są testy dokumentujące kompatybilność elektromagnetyczną poszczególnych produktów. Wykonywane są między innymi pomiary prądów zwarciowych, testy wysokonapięciowe oraz określane są obszary możliwych wyładowań. Centrum otrzymało akredytację na prowadzenie bieżących badań kompatybilności elektromagnetycznej oraz zezwolenie na prowadzenie większości testów koniecznych do udokumentowania, że wymogi dyrektywy niskonapięciowej są spełnione. Podczas testów kontrolowane są wszystkie techniczne właściwości produktów, przy czym szczególny nacisk kładziony jest na sprawdzenie i udokumentowanie przydatności w zastosowaniach przemysłowych każdego poszczególnego komponentu. Badania odporności na wpływy środowiska zewnętrznego i mediów pozwalają wyciągnąć wnioski dotyczące przydatności do przemysłowych zastosowań w najbardziej niekorzystnych warunkach zewnętrznych. W trwających nawet kilka tygodni testach wytrzymałościowych produkty poddawane są skrajnym obciążeniom mechanicznym i chemicznym. Szczegółowa analiza wyników pozwala na ciągłe podnoszenie standardów jakościowych.
Signal Cert Sp. z o. o. Laboratorium Badawcze Urządzeń i Systemów Sterowania Transportu Szynowego ul. Modelarska 12 40-142 Katowice www.signalcert.pl/pl/oferta/ badania-elektryczne-i-emc.html [email protected]
Odporność na wyładowania elektrostatyczne (ESD) wg PN-EN 61000-4-2:2011. Odporność na serie szybkich elektrycznych stanów przejściowych typu burst wg PN-EN 61000-4-4:2013-05. Odporność na wysokoenergetyczne udary typu surge wg PN-EN 61000-4-5:2010.
Instytut Logistyki i Magazynowania Laboratorium Urządzeń Elektronicznych ul. E. Estkowskiego 6 61-755 Poznań www.ilim.poznan.pl/LA [email protected] tel. 48 618 504 989
Laboratorium wyposażone jest w samodzielne stanowiska badawcze kompatybilności elektromagnetycznej światowych producentów aparatury. Wśród stosowanych technik badawczych należy wymienić: pomiar emisji napięć, mocy i pól zaburzeń do 18 GHz w komorze bezodbiciowej i GTEM (EN 55022), harmonicznych prądu, w tym LED (EN 61000-3-2) i migotań światła (EN 61000-3-3) a także badanie odporności na wyładowania elektrostatyczne (EN 61000-4-2), odporności na pole elektromagnetyczne o częstotliwościach radiowych do 6 GHz (EN 61000-4-3), odporności na szybkie elektryczne stany przejściowe (EFT/burst) (EN 61000-4-4), odporności na zaburzenia udarowe (surge) (EN 61000-4-5), odporności na zaburzenia radioelektryczne wprowadzane do przewodów (EN 61000-4-6), odporności na pole magnetyczne o częstotliwości sieci elektroenergetycznej (EN 61000-4-8), odporności na impulsowe pole magnetyczne (EN 61000-4-9), odporności na spadki, krótkie zaniki i wahania napięcia zasilającego (EN 61000-4-11), odporności na harmoniczne i interharmoniczne małej częstotliwości w przyłączu prądu przemiennego łącznie z sygnałami przesyłanymi w sieciach zasilających (EN 61000-4-13), odporności na wahania napięcia (EN 61000-4-14), odporności na tętnienia na przyłączu zasilania prądem stałym (EN 61000-4-17), odporności na zmiany częstotliwości w sieci zasilającej (EN 61000-4-28) oraz odporności na zapady napięcia, krótkie przerwy i zmiany napięcia na przyłączu zasilania prądu stałego (EN 61000-4-29). Badania te są powoływane przez normy zharmonizowane z dyrektywą EMC 2014/30/EU.
Certyfikat akredytacja PCA nr AB053. EC Notified Body 1664
Urząd Dozoru Technicznego ul. Szczęśliwicka 34 02-353 Warszawa www.udt.gov.pl Wielkopolskie Mazowieckie
Pomiary i badania urządzeń zasilanych napięciem stałym do 60 V przy poborze prądu do 16 A i przemiennym do 250 V przy poborze prądu do 16 A. Pomiary emisji: pomiar natężenia pola zaburzeń radioelektrycznych promieniowanych w zakresie 20 MHz…3 GHz (PN-EN 55011, PN-EN 55022), pomiar natężenia zaburzeń przewodzonych 150 kHz…30 MHz (PN-EN 55011, PN-EN 55022). Pomiary wykonywane są w komorze bezodbiciowej o polu pomiarowym 3 m. Badanie odporności na pole elektromagnetyczne o częstotliwości radiowej 230 MHz…1 GHz z poziomem narażenia do 10 V/m oraz 1 GHz…3 GHz z poziomem narażenia do 3 V/m (PN-EN 61000-4-3 – pomiary wykonywane są w komorze bezodbiciowej o polu pomiarowym 3 m). Badanie odporności na zaburzenia przewodzone, indukowane przez pola o częstotliwości radiowej 100 kHz…200 MHz (PN-EN 61000-4-6). Badanie odporności na serie szybkich, elektrycznych stanów przejściowych burst (PN-EN 61000-4-4). Badanie odporności na udary surge (PN-EN 61000-4-5). Badanie odporności na wyładowania elektrostatyczne (PN-EN 61000-4-2). Badanie odporności na pole magnetyczne o częstotliwości sieci elektroenergetycznej 50 Hz i 60 Hz (PN-EN 61000-4-8). Badanie odporności na impulsowe pole magnetyczne (PN-EN 61000-4-9). Badanie odporności na zapady napięcia, krótkie przerwy i zmiany napięcia zasilania (PN-EN 61000-4-11). Pomiary poziomów dopuszczalnych emisji harmonicznych prądu (PN-EN 61000-3-2).
www.ep.com.pl
ELEKTRONIKA PRAKTYCZNA 3/2017
AUTOMATYKA I MECHATRONIKA
Siemens LOGO! 8.FS4
– nowe możliwości ósmej generacji LOGO! Ósma wersja popularnego LOGO! jest na rynku od kilku lat. Jego bogate wyposażenie, zaawansowane możliwości wersji 0BA8 powodowały i silne „usieciowienie” powodują, że cieszy się ona dużą popularnością wśród projektantów systemów małej automatyki.
Stosunkowo skąpe informacje na temat wprowadzenia przez Siemensa nowej wersji LOGO! 8 powodują, że większość użytkowników może nie zdawać sobie sprawy z tego, że używa w swoich projektach wersji oznaczonej symbolem LOGO! 8.FS4. Najnowsza wersja LOGO! 8 różni się od wcześniej dostępnych na rynku wyłącznie oprogramowaniem (firmware), natomiast numery katalogowe wszystkich modeli LOGO! 8 pozostały takie same (przykład na fotografii 1 i fotografii 2).
Najnowsze modyfikacje wprowadzone do LOGO! 8, dotychczas bardzo słabo nagłaśniane przez producenta, znacznie poszerzają obszary łatwego i wygodnego aplikowania tego sterownika. Przekonajcie się o tym czytając artykuł.
Fotografia 1. Numery katalogowe LOGO! 8 (na górze) i LOGO! 8.FS4 (na dole) są identyczne
Fotografia 2. Numery katalogowe na obudowach LOGO! 8 (z lewej) i LOGO! 8.FS4 (z prawej) są także identyczne ELEKTRONIKA PRAKTYCZNA 3/2017
79
AUTOMATYKA I MECHATRONIKA
Fotografia 3. Na górnych częściach etykiet opakowań wyraźnie oznaczono wersję LOGO!
Rysunek 6. Widok okna pakietu LOGO! Soft Comfort z konfiguracja sieciową obejmująca urządzenia dołączane za pomocą Modbusa
Fotografia 4. Oznaczenie wersji FS sterowników LOGO! wygrawerowano na bocznych ściankach obudów
Fotografia 5. Alternatywnym sposobem identyfikacji wersji sterownika jest sprawdzenie wersji firmware
80
ELEKTRONIKA PRAKTYCZNA 3/2017
Rysunek 7. Jedną z nowych możliwości LOGO! 8.FS4 jest odczyt czasu z serwera NTP i rozgłaszanie czasu jako lokalny serwer NTP Identyfikację wersji sterownika umożliwia nadruk na górnej części etykiety opakowania (fotografia 3) oraz symbol wygrawerowany na boku obudowy LOGO! 8 (fotografia 4). Jeżeli z jakichś przyczyn identyfikacja wersji LOGO! nie jest możliwa, można pokusić się o sprawdzenie wersji firmware zapisanej w pamięci sterownika (w menu konfiguracyjnym wybieramy Diagnostics>Software>FW Version – fotografia 5). Modele FS4 zaczynają się od wersji firmware o numerze V1.81.01, niezależnie od typu LOGO! Aplikacje dla LOGO! 8.FS4 można tworzyć za pomocą oprogramowania LOGO! Soft Comfort w wersji 8 lub nowszej (obecnie jest już dostępna 8.1). Wersja LOGO! Soft Comfort 8.1 udostępnia narzędzia pozwalające w pełni wykorzystać możliwości LOGO! 8.FS4, co nie jest możliwe przy wykorzystaniu wersji LOGO! Soft Comfort 8. Nowości w LOGO! 8.FS4 są następujące: • Poszerzono zakres temperatury pracy do przedziału –20…+55oC. • Interfejs sieciowy Ethernet obsługuje protokół Modbus, za pomocą którego LOGO! może komunikować się (jak master lub slave) z urządzeniami z rodziny SIMATIC S7 oraz urządzeniami z interfejsem Modbus pochodzących od innych producentów (rysunek 6). LOGO! 8.FS4 umożliwia utworzenie do 16 dynamicznych połączeń logicznych S7/Modbus lub 8 statycznych połączeń tego typu.
Siemens LOGO! 8.FS4 – nowe możliwości ósmej generacji LOGO!
Rysunek 8. Okno konfiguracji konwertera liczb z postaci float do integer
Rysunek 11. W LOGO! Soft Comfort 8.1 wprowadzono kolorowane symbole komórek o specjalnych funkcjach – zmianie kolorów podświetlania LCD
Rysunek 12. LOGO! Soft Comfort 8.1 umożliwia import projektów do urządzeń z rodziny S7 dołączonych za pomocą Modbusa
Rysunek 9. Okno konfiguracji konwertera liczb z postaci integer do float
Rysunek 10. Modyfikacje objęły także symbol rejestru przesuwnego, który wyposażono w wejście zerujące • Możliwość synchronizacji zegara RTC za pomocą zewnętrznego serwera czasu NTP (rysunek 7), co wymaga podania jego stałego adresu IP. LOGO! może spełniać rolę klienta NTP, pobierając czas z zewnętrznego serwera i jednocześnie pracować jako lokalny serwer NTP, synchronizując swoim zegarem urządzenia w sieci lokalnej. • Zintegrowano mechanizmy współpracy z Excelem, do czego służy dystrybuowane przez producenta bezpłatne narzędzie LOGO! Access Tool, które ma postać pliku dodatków dla Excela (xlam). Narzędzie udostępnia użytkownikom Excela polecenie =LOGOVAR(„xxx”), gdzie xxx oznacza symbol monitorowanych zmiennych, jak przyciski, wejścia, wyjścia, bity rejestrów przesuwnych, komórki pamięci itd.
Dzięki wykorzystaniu do realizacji projektów na LOGO! 8.FS4 oprogramowania LOGO! Soft Comfort 8.1 projektanci mają dostęp do kilku nowych funkcjonalności: • Konwerterów Float Integer (rysunek 8) oraz Integer>Float (rysunek 9), które obsługują liczby float i double float oraz mają skalowane dokładności konwersji. Funkcje te ułatwiają komunikację z urządzeniami S7, ponieważ LOGO! operuje wyłącznie na liczbach integer, a sterowniki PLC z rodziny S7 mogą operować na zmiennych float i double float. • Rejestr przesuwny (rysunek 10) wyposażono w wejście zerujące, które po zmianie stanu z 0 na 1 (zbocze narastające) zeruje wszystkie linie wyjściowe rejestru. • Kolory symboli flag specjalnych odpowiadających za kolory podświetlenia LCD zmieniono w taki sposób (rysunek 11), że odpowiadają one kolorom podświetlenia. • Zmodyfikowano także okna edycji/konfiguracji loggera danych, komunikatów tekstowych, a także domyślnego działania symulowanych przycisków kursorów w LOGO! i panelu TDE (z bistabilnych na wygodniejsze w monostabilne/chwilowe). • W oknie edycji właściwości urządzeń S7 dołączonych za pomocą Modbusa możliwe jest importowanie plików projektów (rysunek 12). W LOGO! Soft Comfort projekty zawierające urządzenie z interfejsem Modbus są zapisywane w nowym formacie mnp, projekty bez takich urządzeń w dotychczas stosowanym formacie lnp. W ten sposób ekspresowo przedstawiliśmy najważniejsze zmiany wprowadzone do LOGO! 8.FS4, szczegółową prezentacją użycia nowych funkcji i możliwości będziemy się zajmować w kolejnych artykułach publikowanych na łamach EP. Piotr Zbysiński, EP Najnowsza wersja oprogramowania LOGO! Soft Comfort 8.1 jest dodawana bezpłatnie do zestawów startowych z LOGO! 8.FS4 znajdujących się np. w ofercie sklepu KAMAMI.pl.
ELEKTRONIKA PRAKTYCZNA 3/2017
81
PODZESPOŁY
LTC4123
– miniaturowa ładowarka bezprzewodowa Pomimo rozwoju tej techniki, ładowanie bezprzewodowe raczej z dużą trudnością adaptuje się w sprzęcie powszechnego użytku. Zbyt długie prace nad standardem, obecność kilku konkurencyjnych rozwiązań nie ułatwiają wyboru i „doposażenia” własnych konstrukcji w funkcje ładowania bezprzewodowego. W artykule przedstawiono rozwiązanie proponowane przez Linear Technology służące do bezprzewodowego ładowania akumulatora NiMH o niewielkiej pojemności.
W ofercie firmy Linear Technology jest kilka układów do ładowania bezprzewodowego np.: LTC4120, LTC4123, LTC4125. Pracują one ze względnie małą częstotliwością nośną (kilkaset kHz), a do transmisji energii wykorzystują bezpośrednie sprzężenie obwodów magnetycznych cewki nadawczej i odbiorczej będących w rezonansie. Układy nadajnika i odbiornika nie wykorzystują żadnych standardowych protokołów komunikacyjnych, więc są łatwe w aplikacji i nie wymagają specjalnych procesorów nadzorujących. Najprostszy z układów – LTC4123, zastosowany w opisywanym zestawie, jest kompleksowym rozwiązaniem odbiornika, zawierającym układ pozyskujący energię ze sprzężonego z cewką nadawczą obwodu rezonansowego, prostownika oraz obwodu ładowania, detekcji i nadzoru akumulatora. Schemat blokowy LTC4123 zamieszczono na rysunku 1. W związku z przeznaczeniem LTC4123 dla elektroniki „noszonej” (wearable) współpracuje on z miniaturowym akumulatorem pastylkowym NiMH o niewielkiej pojemności (do kilkudziesięciu mAh). Taki akumulator jest bezpieczniejszy w eksploatacji oraz przy odpowiednim doborze typu – zgodny mechanicznie z baterią pastylkową, która w sytuacjach awaryjnych może go zastąpić (szczególnie ważne np. w aparacie słuchowym).
Rysunek 1. Schemat blokowy układu LTC4123 (na podst. Linear Technology)
Fotografia 3. Płytka nadajnika (po lewej) i odbiornika ładowarki (po prawej) W skład zestawu testowego (rysunek 2) wchodzą: płytki nadajnika i odbiornika, akumulator, elementy mechaniczne ustalające położenie, ułatwiające eksperymenty z zestawem. Dla sprawdzenia zestawu jest konieczny zasilacz 5 V/0,5 A z wtykiem micro USB lub zasilacz laboratoryjny 4,5…5,5 V/0,5 A. Zasilanie doprowadzamy do płytki nadajnika (rysunek 3, po lewej DC2301A). Ideę aplikacji do ładowania bezprzewodowego pokazano na rysunku 4. Zastosowany układ LTC4123 jest produkowany w obudowie DFN6 o wymiarach 2 mm×2 mm. Razem z elementami towarzyszącymi (bez cewki) zajmuje kilkanaście mm2 powierzchni płytki. Układ nadajnika składa się z generatora przebiegu prostokątnego zasilającego cewkę nadawczą, z której poprzez sprzężenie magnetyczne energia przekazywana jest do cewki odbiorczej. Częstotliwość pracy jest stała. Doprowadzenie zasilania do nadajnika jest sygnalizowane świeceniem
Rysunek 4. Uproszczony schemat układu ładowania
LTC4123 – miniaturowa ładowarka bezprzewodowa LED D1. Od tego momentu cewka niezależnie od położenia odbiornika generuje pole elektromagnetyczne. Przebieg sygnału przedstawia rysunek 5 (sygnał zmierzono 10-zwojową cewką o średnicy 10 mm podłączoną bezpośrednio do wejścia oscyloskopu). Częstotliwość nośna sygnału wynosi ok. 245 kHz. Amplituda zależna jest od współczynnika sprzężenia cewek. Jak widać na oscylogramie, sygnał rzeczywiście nie zawiera żadnej transmisji, tylko czysty przebieg nośny (nie licząc gasnących oscylacji kluczowania). Moc nadajnika ograniczona jest koniecznością spełnienia wymagań USB 1.0. Limituje to pobierany przez nadajnik prąd do 100 mA, rzutując bezpo- Rysunek 5. Przebieg sygnału nieobciążonego nadajnika średnio na przekazywaną moc. Do zestawu dodano komplet podkładek dystansowych umożliwiających sprawdzenie wpływu oddalenia cewek na ilość przekazanej energii. Zestaw pracuje poprawnie w zakresie przerwy pomiędzy cewkami od 0,8…4 mm. Przebieg wejściowy (ACIN) uzyskany na płytce odbiornika (rys. 3, prawa strona DC2300A) przy szczelinie 4 mm (4 podkładki) pokazano na rysunku 6. Zależność pomiędzy przekazaną mocą i odległością cewek przedstawia rysunek 7. Jak wspomniano, układ LTC4123 zawiera oprócz obwodów pozyskiwania energii, kompletną ładowarkę CC-CV dla akumulatora NiMH 1,5 V. Prąd ła- Rysunek 6. Przebieg na wejściu ACIN odbiornika przy szczelinie 4 mm dowania jest ustalany rezystorem Rprog zgodnie ze wzorem: ICHG = 24 V/R RPROG Obwód ładowania integruje wszystkie podstawowe zabezpieczenia akumulatora, timer chroniący przed przeładowaniem o ustalonym na 6 godzin czasie ładowania, zabezpieczenie przed odwrotną polaryzacją i przekroczeniem temperatury akumulatora. Ładowarka dostosowuje prąd ładowania w zależności od temperatury otoczenia (2,5 mV/°C). W związku z możliwą zamienną współpracą w niektórych aplikacjach z nieładowalnym ogniwem cynkowo-powietrznym, LTC4123 ma dodatkowo układ detekcji ogniwa blokujący ładowanie. Oprócz zasilania „bezprzewodowego”, układ może zostać zasilony w typowy sposób napięciem z przedziału 2,2…5,5 V przez pin VCC. Umożliwia to budowę zasilaczy hybrydowych, łączących ładowanie bezprzewodowe i przewodowe. Wbudowana w układ odbiornika LED D1 sygnalizuje kilka sta- Rysunek 7. Zależność przekazanej mocy od odległości cewek Rx-Tx (na podst. Linear Technology) nów pracy: • Zasilanie i ładowanie – powolne miganie z częstotliwością ok. 1 Hz. • Brak zasilania i ładowania – LED D1 zgaszona. • Usterka, co może oznaczać brak lub odwrotne przyłączony akumulator, baterię Zn-Air, przekroczoną temperaturę, początek procesu ładowania – szybkie miganie z częstotliwością ok. 5 Hz. • Ładowanie zakończone – wyjście przechodzi w stan wysokiej impedancji (LED D1 gaśnie). Ładowarka umożliwia szybkie sprawdzenie idei ładowania bezprzewodowego małej mocy. Układ LTC4123 pomimo stosunkowo niewielkiej mocy jest interesującym rozwiązaniem i z pewnością znajdzie zastosowanie w przyszłych projektach. Szczególnie przydatny może okazać się nie tylko w aplikacjach „noszonych”, ale także razem
z przetwornicą podwyższającą napięcie 1,5 V/3,3 V jako alternatywne źródło zasilania przyrządów pomiarowych, rejestratorów itp. Zwykle do zasilania których wystarczy niewielka ilość energii, a ważne jest zachowanie szczelności lub iskrobezpieczności. Niestety, ze względu na ceny elementów indukcyjnych nie jest to rozwiązanie tanie, ale gdy weźmiemy pod uwagę koszt złączy hermetycznych, to różnica jest niewielka. Zaletą testowanego układu jest prostota aplikacji, dostępność elementów (szczególnie indukcyjnych), wadą mała sprawność i cena rozwiązania – niestety jest to wspólna bolączka układów ładowania bezprzewodowego, ograniczająca ich szersze zastosowanie. Adam Tatuś, EP
ELEKTRONIKA PRAKTYCZNA 3/2017
83
DLA PRAKTYKA
SPRZĘT
Voltcraft BL-20TRH i FM-200 Zestaw – higrometr i miernik wilgotności W pracach remontowych oraz budowlanych bardzo ważna jest kontrola warunków środowiskowych. Badanie wilgotności materiałów budowlanych oraz wilgotności wewnętrznej okazuje się szczególnie istotne podczas początkowych procesów budowlanych. Do tych czynności wymagane są jednak 2 różne urządzenia. Dzięki zestawowi Voltcraft BL-20TRH i FM-200 uzyskanie dokładnych danych pomiarowych staje się o wiele łatwiejsze. Zestaw opisywanych przyrządów przyda się przede wszystkim tym, którzy zajmują się stolarstwem lub budownictwem. Pierwszym pomoże w wyborze właściwego materiału i pozwoli na zaoszczędzenie pieniędzy. Każdy stolarz wie, że drewno o zbyt dużej wilgotności wysycha, kurczy się i krzywi, i nie wolno stosować go jako materiał na podłogi, schody, meble i inne wyroby. Zbyt duża wilgotność drewna spowoduje, że ulegną one skrzywieniu, wypaczeniu i cała praca pójdzie na marne. Stolarzowi zatem miernik wilgotności przyda się przy wyborze materiału, a higrometr przy sezonowaniu drewna. Opisywany zestaw przyda się też budowlańcowi. Dzięki niemu można wybrać odpowiednie drewno na krokwie, zmierzyć wilgotność cementu, tynku na ścianie itp. Z drugiej strony, życie stawia przed nami różne wyzwania i niekiedy, budując własny dom czy wyposażając mieszkanie w stanie deweloperskim, musimy na chwilę stać się budowlańcami, elektrykami i architektami. Wtedy opisywany zestaw przyda się i nam. Bez trudu można znaleźć w Internecie porady, jak dobierać materiały, jaką powinny mieć wilgotność i tym podobne informacje, ale jeśli nie mamy doświadczenia, to trzeba dysponować odpowiednim sprzętem. Mając oba mierniki w zestawie bez trudu odróżnimy ich przeznaczenie. Higrometr jest wyposażony w sensor umieszczony w metalowej rurce, natomiast miernik wilgotności ma dwie sondy pomiarowe w postaci igieł. Metoda pomiaru za pomocą pierwszego jest oparta o czujnik półprzewodnikowy zapewne zbliżony do tych, których
W zakresie -20…+0°C: ±2°C W zakresie 0…+40°C: ±1°C W zakresie +40…+60°C: ±2°C
°F
-4…+140°F
0,1
W zakresie -4…+32°F: ±2°F W zakresie +32…+104°F: ±1°F W zakresie +104…+140°C: ±2°F
0…100%
0,1
W zakresie 0…20%: ±5% W zakresie 20…80%: ±3,5% W zakresie 80…100%: ±5%
Wilgotność względna
84
Niepewność
ELEKTRONIKA PRAKTYCZNA 3/2017
Więcej informacji: Redakcja Elektroniki Praktycznej dziękuje firmie Conrad za udostępnienie zestawu zawierającego higrometr Voltrcraft BL-20TRH i miernik wilgotności Voltcraft FM-200 do testów. Więcej informacji na temat opisywanych przyrządów znaleźć można na stronie https://goo.gl/rnllFc.
aplikację wiele razy opisywaliśmy w Elektronice Praktycznej. Drugi z przyrządów mierzy po prostu rezystancję materiału pomiędzy elektrodami dotykającymi jego powierzchni. Zależnie od tego czy mierzymy drewno, czy np. powierzchnię zaprawy murarskiej, należy przesunąć selektor umieszczony pod wyświetlaczem w prawo (zaprawa, pozycja „building”) lub w lewo (drewno, pozycja „wood”). Przyjrzyjmy się obu przyrządom.
Higrometr Voltrcraft-20TRH
Wilgotność względna jest stosunkiem ciśnienia cząstkowego pary wodnej zawartej w powietrzu do ciśnienia nasycenia nad płaską powierzchnią czystej wody, określającego maksymalne ciśnienie cząstkowe pary wodnej w danej temperaturze. Ciśnienie cząstkowe jest ciśnieniem, które miałby gaz, gdyby zajmował całą dostępną objętość. Jak można zauważyć w przytoczonej definicji, wilgotność względna jest zależna od temperatury. Dlatego też sensory wilgotności względnej mierzą nie tylko procentową zawartość wody w powietrzu, ale również temperaturę powietrza i na jej podstawie dokonują odpowiedniej korekty wyniku
O RETY, WIOSNA
Zamów ZA DARMO Gardeners’ World Tabela 2. Podstawowe parametry miernika wilgotności Voltcraft FM-2000 Zasilanie
(najczęściej odbywa się to już w samym sensorze). Dlatego też higrometry pełnią podwójną rolę: termometru i wskaźnika wilgotności względnej. Higrometr Voltcraft mierzy temperaturę w skali Celsiusa lub Farenheita. Zakres pomiarowy jest dopasowany do klimatu umiarkowanego i rozciąga się od –20 do +60°C (–4…+140°F). W podanym zakresie temperatury można mierzyć wilgotność względną powietrza od 0 do 100%. Pomiar rozpoczyna się natychmiast po włączeniu przyrządu. Jedyne, co może zrobić użytkownik, to wybór jednostki. Wynik jest pokazywany w dwóch liniach czytelnego wyświetlacza LCD: w górnej, większymi cyframi – wynik pomiaru wilgotności, w dolnej, mniejszymi – wynik pomiaru temperatury. Podczas pomiaru są zapamiętywane wartości minimalna i maksymalna, co może być bardzo przydatne w niektórych zastosowaniach. Podstawowe parametry higrometru Voltcraft-20TRH umieszczono w tabeli 1.
Miernik przepływu i temperatury powietrza EDYCJA POLSKA
www.zielonyogrodek.pl/wiosna
wilgotności w czasie (schnięcie materiału) lub po prostu na określenie, czy wilgotność materiału jest zgodna z oczekiwaniami lub normami. Wynik pomiaru jest pokazywany za pomocą wyświetlacza LCD, w postaci słupka (bargrafu) oraz liczbowej. W ten sposób słupek pozwala na szybkie oszacowanie wilgotności już na pierwszy rzut oka, a liczba podaje dokładną wartość, jeśli ta jest potrzebna. Podstawowe parametry miernika wilgotności Voltcraft FM-200 umieszczono w tabeli 2. Wygląd obu przyrządów pokazano na fotografiach. Oba mają zbliżone, estetyczne, lekkie obudowy z tworzywa sztucznego. W higrometrze sensor jest umieszczony w metalowej osłonie, w mierniku wilgotności elektrody pomiarowe mają postać wymiennych igieł o długości około 8 mm (dołączono 10 sztuk w zapasie). Dla bezpieczeństwa, na igły założona jest osłona z tworzywa sztucznego, pełniąca jednocześnie włącznik urządzenia. Jacek Bogusz, EP
Miernik wilgotności materiałów budowlanych Voltcraft FM-200
Innym rodzajem przyrządu pomiarowego, wykorzystującym inną metodę pomiarową, jest miernik wilgotności FM-200. Jego zasada działania opiera się nie o zastosowanie specjalnego sensora wilgotności, ale o pomiar rezystancji włączonej pomiędzy dwiema elektrodami, a następnie jej zamianę na wartość wilgotności względnej. Jak dobrze wiadomo, rezystancja materiałów nieprzewodzących, takich jak drewno czy zaprawa budowlana, zależy od zawartości wody, ponieważ to ona przewodzi prąd. Śmiało można założyć, że im więcej wody, tym gorszym izolatorem staje się drewno. Właśnie tę właściwość wykorzystują mierniki wilgotności – dla lepszego kontaktu elektrycznego, drewno czy inny materiał nakłuwa się za pomocą zaostrzonych elektrod pomiarowych i mierzy rezystancję występującą pomiędzy tymi elektrodami. Dlatego też – co należy podkreślić – miernik nadaje się jedynie do pomiaru materiałów stałych, nasiąkliwych, mineralnych oraz drewna, nie przyda się np. do tworzyw sztucznych i materiałów sypkich. Właśnie taką zasadę działania wykorzystuje miernik Voltcraft FM-200. Działa on jak omomierz mierzący bardzo dużą rezystancję, ale wyświetlacz jest wyskalowany nie w Omach, lecz w procentach wilgotności. Miernik doskonale nadaje się do pomiarów porównawczych wilgotności drewna i materiałów mineralnych. Pozwala to na kontrolowanie ELEKTRONIKA PRAKTYCZNA 3/2017
85
AUTOMATYKA I MECHATRONIKA
Projekt maszyny do piaskowania automatycznego Piaskarka, której dotyczy opisywana modyfikacja, została zakupiona jako używana z uszkodzoną instalacją elektryczną. Przedstawiony projekt dotyczy jedynie wymiany sterowania elektrycznego. W artykule opisano sposób działania maszyny oraz rozwiązanie służące do jej sterowania, wykorzystujące sterownik PLC firmy Mitsubishi. Piaskarka służy do czyszczenia zużywających się części maszyn poddawanych następnie procesowi regeneracji. Zanim jednak zostaną zregenerowane, muszą zostać dokładnie oczyszczone z resztek odczynników chemicznych. Takie oczyszczanie odbywa się w procesie piaskowania. Aby zwiększyć wydajność produkcji, do piaskowania używa się piaskarki w aplikacji powodującej maksymalne zautomatyzowanie procesu. Jej zastosowanie podnosi wydajność produkcji, poprawia bezpieczeństwo i higienę pracy oraz daje czas na inne czynności pracownikowi, który dawniej był na przysłowiowe 110% zajęty piaskowaniem. Pokazana na fotografii tytułowej piaskarka składa się z oświetlonej hermetycznej kabiny, w której znajduję się obrotowy stół (fotografia 1). Na tym stole operator umieszcza czyszczony element. Stół obrotowy jest umieszczony na prowadnicach umożliwiających jego swobodne przesuwanie. Prędkość obrotowa stołu jest regulowana w zakresie 0…20 obrotów/minutę. Proces piaskowania odbywa się za pomocą ramienia poruszającego się w jednej osi. Ramię porusza się w kierunku przód tył. Na ramieniu Fotografia 1. Stół obrotowy piaskarki są umieszczone dwie dysze, przez które wydobywa się piasek ze sprężonym powietrzem. Każda z dysz ma oddzielny komplet zaworów służący do podawania piasku ze sprężonym powietrzem. W czasie uruchamiania piaskarki okazało się, że najlepszą wydajność uzyskuje się przy jednoczesnej pracy obu dysz. Po zakończeniu piaskowania przez 60 sekund stół obraca się i jest uruchomiana dodatkowa dysza podająca sprężone powietrze, które to powoduje oczyszczenie obrabianego detalu z drobin piasku. Piasek opada na dół kabiny, gdzie jest filtrowany i zasysany poprzez podciśnienie wytworzone przez wentylator wyciągowy do cyklonu. Cięższe ziarna piasku, nadające się do ponownego wykorzystania pozostają w cyklonie, natomiast mniejsze wraz z pyłem wędrują do zespołu filtrów. Co pewien interwał czasowy, ustawiany za pomocą menu serwisowego, do wewnątrz filtrów jest wpuszczane sprężone powietrze oraz dodatkowo filtry są wstrząsane za pomocą siłownika pneumatycznego w celu oczyszczenia. Po zakończeniu procesu piasek odzyskany w cyklonie jest zrzucany do komory, skąd jest pobierany do czyszczenia kolejnego detalu. W dolnej części zespołów filtrów znajduje się pojemnik, do którego spadają zanieczyszczenia. Po zakończonej pracy poziom zapełnienia pojemnika jest sprawdzany przez czujnik pojemnościowy, ustawiony w taki sposób, aby reagował na zużyty materiał.
86
ELEKTRONIKA PRAKTYCZNA 3/2017
Projekt maszyny do piaskowania automatycznego
Fotografia 2. Sterownik PLC z serii FX3G zastosowany w projekcie
Sterownik PLC, wejścia i wyjścia
Sterowanie maszyny realizowane jest poprzez sterownik programowalny PLC. W tym przypadku został użyty sterownik firmy Mitsubishi Electric serii FX3G (fotografia 2). Jest to sterownik z serii kompaktowej, nadający się idealnie do średnich aplikacji. Sterowniki współpracuje z modułem 8 wyjść cyfrowych FX2N-8EYT-ESS. Sterownik pracuje w logice PNP. Jego wyjścia są odłączane w czasie zatrzymania awaryjnego poprzez zdejmowanie potencjału z zacisków COM. Wejścia sterownika PLC są dołączone do następujących sensorów i włączników: • Czujnik osi ramienia w lewej pozycji. • Czujnik osi ramienia w prawej pozycji. • Czujnik pozycji bazowej osi ramienia.
Fotografia 3.Wygląd szafy elektrycznej sterownika
• Włącznik krańcowy sygnalizujący lewą pozycję maksymalną. • Włącznik krańcowy sygnalizujący prawą pozycję maksymalną. • Czujnik ciśnienia powietrza. • Przyciski „start auto”, „stop auto”, „głowica lewo”, „głowica prawo”. • Przełączniki „ręka/automat” i „nr programu”. • Wyjście statusu przekaźnika bezpieczeństwa. • Czujnik sygnalizujący wypełnienie rury zasypowej. Wyjścia sterownika PLC załączają następujące urządzenia: • Silnik wentylatora. • Silnik napędzający stół obrotowy. • Start głowicy. • Głowica tył. • Zawór główny. • Zawór piasek. • Zawór powietrze. • Oświetlenie kabiny. • Odmuchiwanie (oczyszczanie) stołu. • Sygnalizator awarii. • Czyszczenie filtrów, dysze 1…4. • Czyszczenie filtrów – zawór urządzenia powodującego wstrząsanie filtrem. Dla zrozumienia zasady działania oraz jej zilustrowania w materiałach dodatkowych do artykułu na serwerze ftp można znaleźć schemat ideowy połączeń elektrycznych. Widok szafy elektrycznej pokazano na fotografii 3.
Sterowanie
Schemat elektryczny urządzenia jest typowy dla takiej aplikacji. Jednostką sterującą jest wspomniany sterownik PLC z dołączonym ekranem HMI służącym do parametryzowania urządzenia. Praca urządzenia musi być możliwe również wtedy, gdyby panel HMI został uszkodzony, więc piaskarkę wyposażono w przyciski do uruchomienia trybu automatycznego oraz selektor do wyboru numeru receptury (1, 2, 3). Za regulację szybkości przesuwu głowicy piaskującej odpowiada falownik. Jeden sygnał sterujący oznacza sygnał startu, gdzie poziom wysoki oznacza start napędu, natomiast zmiana poziomu logicznego z „0” na „1” na drugim wejściu falownika oznacza zmianę kierunku napędu. Sygnał szybkości pracy zadawany jest poprzez potencjometr umieszczony wraz z skalą na drzwiach szafy elektrycznej. Za regulację szybkości obrotowej stołu odpowiada napęd prądu stałego. Rozwiązanie takie zostało zastosowane z uwagi na konieczność zastosowania małogabarytowego silnika, z możliwością pracy bez chłodzenia umieszczonego pod stołem obrotowym. Napęd wymaga podania jedynie sygnału startu oraz – podobnie jak wcześniej opisany falownik – sygnału napięciowego z potencjometru do zadawania szybkości. Oba napędy mają wbudowany tak zwany „przekaźnik zdrowia”, normalnie zamknięty w czasie pracy. Szeregowe połączenie styków powoduje podawanie napięcie na wejście sterownika tylko wtedy, jeśli oba sterowniki napędu działają poprawnie. Napęd głowicy piaskującej jest realizowany za pomocą przekładni liniowej. Przekładnia taka jest zbudowana z silnika asynchronicznego AC, reduktora, prowadnicy, paska napędowego, który jest połączony z głowicą. Aby głowica poruszała się w bezpiecznie w polu roboczym, zastosowano dwa czujniki indukcyjne służące do zmiany kierunku głowicy oraz dwie krańcówki typu NC powodujące zatrzymanie napędu głowicy w momencie, gdy ta znajdzie się w obszarze zabronionym. Instalacja pneumatyczna jest sterowana za pomocą wyspy zaworowej, która podaje powietrze na odpowiednie zawory wykonawcze maszyny. Za bezpieczeństwo maszyny odpowiada przekaźnik bezpieczeństwa. Zbiera on stany z wyłączników bezpieczeństwa (grzybków) oraz krańcówek umieszczonych na wszystkich drzwiach maszyny. Po zadziałania któregokolwiek z urządzeń zatrzymania awaryjnego następuje zatrzymanie pracy maszyny wraz z odłączeniem wyjść ELEKTRONIKA PRAKTYCZNA 3/2017
87
AUTOMATYKA I MECHATRONIKA sterownika PLC. Ponowne uruchomienie procesu jest możliwe po odblokowaniu wyłączników bezpieczeństwa (grzybków), pozamykaniu i zablokowaniu wszystkich drzwi maszyny i zresetowaniu odpowiednim przyciskiem przekaźnika bezpieczeństwa.
Obsługa piaskarki
Interfejs użytkownika zbudowano z użyciem panelu operatorskiego LSIS XP30. Za jego pomocą obsługuje się piaskarkę w trybie pracy ręcznej (rysunek 4) oraz automatycznej (rysunek 5). Tryb pracy ręcznej służy do ewentualnego poprawienia operacji piaskowania, w sytuacji, gdy detal po obróbce w trybie automatycznym nie był dokładnie oczyszczony. Ten tryb jest też pomocny przy
usuwaniu usterek. Pozwala na szybkie uruchamianie poszczególnych komponentów piaskarki celem ich przetestowania przez pracownika technicznego. Tryb pracy automatycznej służy do wykonania zaprogramowanego cyklu pracy automatycznego. Cykle pracy i przerwy, programowalne z poziomu receptury, są konieczne z uwagi na bardzo duże zapotrzebowanie na sprężone powietrze. Parametry nastawiane przez pracownika to: czasy przerwy i pracy oraz liczbą zapętleń wykonywanych operacji piaskowania. Dodatkowo, w zależności od wielkości obrabianego detalu, operator ustawia czas działania wyciągu zużytego piasku oraz czas oczyszczania filtrów po zakończeniu procesu. Przewidziano 3 receptury technologiczne, które z uwagi na ograniczenia użytego panelu HMI zdecydowałem się zaimplementować w sterowniku PLC.
Implementacja receptur w sterowniku PLC
Rysunek 5. Piaskarka w trybie pracy automatycznej
Wyobraźmy sobie proces technologiczny jako zespół parametrów. Parametry te mogą zmieniać się w zależności od wybranej receptury, pozwalać na wykonywanie pewnych operacji bądź nie. Parametry charakteryzujące dany proces technologiczny przedstawmy w postaci struktury danych. Dla opisywanej maszyny struktura taka ma postać jak na rysunku 6. Zaletą typów strukturalnych jest to, że mogą zawierać zmienne różnego typu oraz tablice zmiennych. Zmienne z tej struktury wyświetlamy z możliwością edycji na panelu HMI maszyny i te zmienne służą również do wykonywania programu w sterowniku PLC. W tym momencie jesteśmy w stanie wykonać podobną strukturę, którą zadeklarujemy jako zmienną tablicową o 3 elementach (3 receptury technologiczne). Strukturę nazwiemy RecepturyPamięć i umieścimy koniecznie w przestrzeni pamięci podtrzymywanej sterownika PLC. W tym momencie, przy wykryciu zmiany numeru receptury, kopiujemy daną recepturę z pamięci na obszar roboczy nazwany RecepturaAktualna. Podczas edycji receptury wykonujemy operację odwrotną, czyli wykonujemy kopię parametrów z przestrzeni roboczej do aktualnego numeru receptury zapamiętywanej. Wyżej opisaną funkcjonalność można zrealizować za pomocą kodu pokazanego na rysunku 7. W networkach 1…3, za pomocą kombinacji wejść sterownika, ustawiamy odpowiedni numer receptury technologicznej. W networku 4 wykrywamy zmianę numeru receptury. W tym celu, następną operacją jest przypisanie do zmiennej pomocniczej wartości numeru aktualnie wybranej receptury – zmienna RecOffset. Network numer 6 w momencie wykrycia zmiany aktualnie wybranej receptury powoduje przesłanie za pomocą instrukcji, przesunięcia bloku danych BMOV zawartości wybranej receptury z pamięci podtrzymywanej do receptury aktualnej, wyświetloną na panelu HMI. Po załadowaniu wybranej receptury i wystartowaniu maszyny, program zacznie wykonywać odliczanie czasu pracy i sekwencyjne załączanie urządzeń zgodnie z zadanymi parametrami czasowymi.
Rysunek 6. Struktura danych używana w programie sterownika
Rysunek 7. Program wybierający i zmieniający recepturę
Rysunek 4. Piaskarka w trybie pracy ręcznej
88
ELEKTRONIKA PRAKTYCZNA 3/2017
Projekt maszyny do piaskowania automatycznego W czasie trwania programu na ekranie wyświetla się czas pozostający do końca procesu.
Implementacja alarmów w sterowniku PLC i HMI
Rysunek 8. Lista alarmów
Aby sterowanie maszyny było kompletne, należy obsłużyć alarmy mogące pojawić się w czasie pracy. W tym przypadku możliwych alarmów jest bardzo niewiele, co znacząco upraszcza ich obsługę. Listę alarmów pokazano na rysunku 8. Każdy z Alarmów jest zmienną typu Bit z przypisanym adresem M10…M13. W momencie wystąpienia odpowiedniego poziomu logicznego na wejściu sterownika sterownik, rejestruje on alarm oraz uruchamia wyjście sterującą syreną alarmową, uruchamianą w celu przywołania operatora. Co ważne, każdy z alarmów przerywa proces automatyczny. W momencie wystąpienia alarmów osiągnięcia pozycji krańcowej głowicy piaskującej, jest możliwość pracy głowicy w przeciwnym kierunku, aby w trybie ręcznym operator mógł powrócić głowicą Rysunek 9. Kod PLC odpowiadający za rejestrowanie alarmów (bit HMIKana pole robocze. Kod PLC odpowiadający za rejestrację alarmów pokazano sujAlarm służy do skasowania zatrzaśniętego alarmu z poziomu HMI, bit na rysunku 9. Z punktu widzenia HMI, aby opisany kod Alarm służy do zatrzymywania piaskarki) był użyteczny dla operatora maszyny, zastosowano wbudowaną w panel funkcjonalność obsługi alarmów typu Flow Alarm (rysunek 10). Każdy z adresów bitowych sterownika ma przypisany odpowiedni numer komentarza z tabeli komentarzy. W momencie wystąpienia awarii operator w górnej części HMI zaobserwuje przesuwający Rysunek 10. Użycie funkcjonalności Flow Alarm się tekst z treścią alarmu.
Podsumowanie
W krótkim artykule opisuję jedynie zarys sterowania maszyną. W kolejnych artykułach będę opisywał inne maszyny pokazując inne ciekawe rozwiązania, aby czytelnik mógł poza zapoznaniem
się z zasadą działania maszyny, poznawać pewne rozwiązania stosowane w automatyce. Tomasz Świontek [email protected]
Osobliwości kompilatora AVR-GCC i mikrokontrolerów AVR (1) Kompilator AVR GCC jest chętnie stosowany do kompilowania programów dla mikrokontrolerów AVR. Jak każdy kompilator ma swoje wady i zalety. Specyfika kompilatorów może być istotna, gdy program ma działać szybko lub zajmować mało miejsca w pamięci. Bałagan w definicjach rejestrów czy ich funkcjonalność zmieniana przez producenta w niektórych typach procesorów nie ułatwia pisania programów. Najwięcej materiałów do artykułu dostarczyło pisanie programu funkcjonującego z wykorzystaniem przerwań, emulującego układy 1-Wire pracujące w trybie overdrive. W tym trybie trzeba w ciągu maksymalnie 2 ms od opadającego zbocza sygnału odczytu wystawić transmitowany bit. Czas wykonania jednego rozkazu przy zegarze 16 MHz to około 0,0625 ms. Biorąc pod uwagę fakt, że gdy pisze się aplikację w GCC, przy wejściu w przerwanie operacje na stosie zajmują około 2 ms (na stos jest odkładana zawartość 20 rejestrów), wydaje się niemożliwe obsłużenie tego trybu. A jednak się udało, o czym dalej.
Zakres zmiennych
Wydawałoby się, że wynikiem mnożenia dwóch liczb unsigned int będzie unsigned long. Czy na pewno? Spróbujmy: unsigned int a=10000, b=10; unsigned long w; Program działa poprawnie, jeśli wynikiem mnożenia jest liczba typu unsigned int. Gdy jest większy, nieoczekiwanie otrzymujemy dziwne rezultaty. Bliższe przyjrzenie się wynikom operacji w debuggerze ujawnia, że starsze bajty zmiennej są zerem. Jak rozwiązać problem? Trzeba wykonać jawną konwersję typu i operację zapisać tak: w = (unsigned long)a * b; Dlaczego tak niewielka zmiana spowodowała poprawne działanie programu? Otóż kompilator wykonuje następujące działania: a * b -> w A więc mnoży zmienną „a” przez zmienną „b”, zapisując wynik w zmiennej „a”, po przepisuje go do zmiennej „w”. Gdy zmienna „a” była zadeklarowany jako unsigned int, kod wynikowy programu w asemblerze wyglądał następująco: „w = a * b;” 1c74: 20 91 02 01 lds r18, 0x0102 1c78: 30 91 03 01 lds r19, 0x0103 1c7c: 80 91 00 01 lds r24, 0x0100 1c80: 90 91 01 01 lds r25, 0x0101 1c84: ac 01 movw r20, r24 1c86: 24 9f mul r18, r20 1c88: c0 01 movw r24, r0 1c8a: 25 9f mul r18, r21 1c8c: 90 0d add r25, r0 1c8e: 34 9f mul r19, r20 1c90: 90 0d add r25, r0 1c92: 11 24 eor r1, r1 1c94: a0 e0 ldi r26, 0x00 ; 0
Mikrokontrolery AVR nie mają możliwości wywoływania przerwań z aplikacji użytkownika. Pomijam tu asemblerową instrukcję BREAK, której działanie nie jest szeroko opisane. Jeśli istnieje potrzeba wygenerowania takiego przerwania i mamy wolne wejście przerwań zewnętrznych, można poradzić sobie w następujący sposób: Skonfigurować wejście INTx jako wywołujące przerwanie opadającym zboczem sygnału. Ustawić pin jako wyjście. Aby wywołać przerwanie, wykonać rozkaz PORTx &= ~_BV(y);. W programie obsługi przerwania wykonać PORTx |= _BV(y); i obsłużyć przerwanie. Rozwiązania tego używałem w celu emulowania impulsatora za pomocą UART obsługiwanego z terminalu na komputerze PC.
Przerwanie od WDG
W niektórych mikrokontrolerach AVR układ czasowy watchdog (WDG) może generować przerwanie. Jeśli w obsłudze tego przerwania nie ustawimy flagi WDIE (kasowana automatycznie przez przerwanie od WDG), to kolejne zadziałanie WDG spowoduje restart CPU. Aby funkcjonalność przerwań od WDG zadziałała, nie może być ustawiony bit WDTON w bitach konfiguracyjnych. Funkcjonalność IRQ od WDG włączamy, ustawiając WDIE poleceniem WDTCSR |= (1<
Osobliwości kompilatora AVR-GCC i mikrokontrolerów AVR Listing 1. Przykładowa procedura obsługi przerwania od WDG /* „czas” - define czau zadziałania WDG, dostępne wartości: WDTO_30MS, WDTO_60MS, WDTO_120MS, WDTO_250MS, WDTO_500MS, WDTO_1S, WDTO_1S *funkcja - adres funkcji wywołanej przed wyjśiem z przerwania od WDG W zmiennej globalnej „adrCallWdg” znajduje sie adres z którego nastąpiło przerwanie WDG. Jeśli „funkcja” = 0 to skok nie będzie wykonany void InitWdgI( byte czas, long *funkcja ) { byte cSREG; cSREG = SREG; cli(); InitWdg( czas ); #if defined(__AVR_ATmega640__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega2560__) || defined(__ AVR_ATmega2561__) WDTCSR |= (1<> 1; (*((void(*)(void))adrCall))(); // CALL do funkcji o adresie „adrUserCallWdg” } #ifdef WDGI_NAKED while( true ); #endif } #endif //Deklaracje: #define DEF_RST_SOFT 0x534f4654 #define DEF_RST_UNKOWN (DEF_RST_SOFT ^ 0xaa55a55a) #define WDGI_NAKED //Po obsłudze IRQ wykonanie resetu (krótszy kod). long IdSoftReset NOINIT; long adrUserCallWdg=0, adrCallWdg=0; extern void InitWdgI( byte czas, long *funkcja ); // Init IRQ od WDG extern void InitWdg( byte czas ); // Init WDG #define SoftReset() IdSoftReset=DEF_RST_SOFT; IdSoftReset=DEF_RST_UNKOWN; while(true);
ELEKTRONIKA PRAKTYCZNA 3/2017
91
NOTATNIK KONSTRUKTORA Listing 2. Procedura konwersji zmiennej long na łańcuch znaków void sPrintfLongDec( char *str, long dec ) { void sPrintfLongDec( char *str, long dec ) { ulong w; byte z = TRUE; if ( dec & 0x80000000 ) // Jeśli liczba ujemna { dec = ~dec + 1; *str++ = ‚-’; } // 2147483647 (0x7FFFFFFF) w = dec / 1000000000; dec %= 1000000000; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 100000000; dec %= 100000000; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 10000000; dec %= 10000000; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 1000000; dec %= 1000000; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 100000; dec %= 100000; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 10000; dec %= 10000; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 1000; dec %= 1000; f ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 100; dec %= 100; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } w = dec / 10; dec %= 10; if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } *str++ = ( dec + ‚0’ ); *str = 0; } void sPrintfWordDec( { word w; byte z = TRUE; w = dec / 10000; z = FALSE; } w = dec / 1000; w = dec / 100; w = dec / 10; *str++ = ( dec + }
if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } if ( w || !z ) { *str++ = ( w + ‚0’ ); z = FALSE; } 0;
ELEKTRONIKA PRAKTYCZNA 3/2017
W przerwaniu od WDG możemy poznać adres, z którego program skoczył do obsługi IRQ. Każde CPU, skacząc do procedury obsługi IRQ, odkłada na stos adres powrotu, a niektóre także rejestr stanu. Dodatkowo jest zapamiętywany stan flagi „I”. Jeśli przerwanie jest zadeklarowane jako INTERRUPT lub ISR z atrybutem NOBLOCK, pierwszym rozkazem w obsłudze przerwań jest sei(). Umożliwia to obsługę kolejnego przerwania podczas obsługi aktualnego. Używając INTERRUPT, trzeba pamiętać, że nie wszystkie przerwania po wejściu do procedury obsługi automatycznie zerują bit powodujący ich zgłoszenie, dlatego użycie INTERRUPT dla przerwań od UART czy wejścia INT wyzwalanego poziomem spowoduje przepełnienie stosu. Jeśli zależy nam na obsłudze innych przerwań podczas obsługi przerwania od np. UART, to można to zrobić na przykład tak: SIGNAL ( INT _ UART _ vect ) { unsigned char a, b, d; a = UCSRA; b = UCSRB; d = UDR; sei(); //tu obsługa IRQ } Instrukcja sei() pojawia się po odczycie rejestru UDR. Odczyt UDR kasuje flagę RXC (UDRE), dlatego kolejne przerwanie od UART nie będzie wywołane (chyba że pojawi się kolejny znak). Rejestry UDRa, UDRb, UDRc muszą być zapamiętane przed odczytem UDR, ponieważ tak jak rejestr UDR, flagi RXB8 (błędów) są zaopatrzone w FIFO (w AVR – 2 bajty). Trochę odbiegliśmy od głównego tematu. Jak więc poznać adres, z którego nastąpił skok do obsługi przerwania? Należy odjąć od wskaźnika stosu (SP) 2 lub 3 bajty. Tu należy wiedzieć, że adres powrotu dla mikrokontrolerów AVR z pamięcią Flash większą niż 128 kB jest 3-bajtowy. Niestety, zanim zostanie wykonany kod obsługi przerwania, kompilator odłoży na stos rejestry używane w przerwaniu (chyba że użyjemy flago NAKED). To, ile rozkazów push zostanie użytych, zależy od kodu procedury przerwania. Nie ma tu uniwersalnej metody – należy obejrzeć wynik kompilacji w asemblerze i wpisać odpowiednią wartość. Na szczęście, jeśli nie będziemy modyfikować naszej procedury, liczba rozkazów push nie zmieni się. Jako pierwszej instrukcji obsługi przerwania można by oczywiście użyć rozkazu nop(), w obsłudze przerwania odliczyć liczbę rozkazów push i zmodyfikować wskaźnik stosu. Można też użyć atrybutu ISR_NAKED. Wtedy rejestry nie będą odkładane na stos. Z procedury przerwania nie można wyjść, ponieważ program główny „pójdzie w maliny” z powodu zmiany stanu rejestrów. Ponadto, samemu trzeba by procedurę zakończyć rozkazem reti(). Przykładową procedurę obsługi przerwania od czasomierza WDG pokazano na listingu 1. Uruchomienie WDG przebiega w następujący sposób: InitWdgI(WDTO _ 500MS, &IrqWdg); // Inicjowanie przerwania od WDG sei(); // sei() konieczne, aby działały przerwania; w przeciwnym //wypadku, po 2-krotnym przepełnieniu timera WDG, nastąpi
Zaburzenia elektromagnetyczne zagrożeniem prawidłowej pracy urządzeń elektronicznych //restart mikrokontrolera Deklaracja #define WDGI_NAKED zmniejszy rozmiar kodu wynikowego procedury i wywoła reset po obsłudze przerwania od WDG. W funkcji InitWdgI() adres funkcji użytkownika nie jest konieczny – można wpisać zero. Nie ma to jednak większego sensu, bo przeważnie chcemy poznać adres, na którym zadziałało przerwanie. Funkcja użytkownika może wyglądać następująco: void IrqWdg() { PrintString _ P( (char*)PSTR(CRLF”********”CRLF) ); if ( IdSoftReset == DEF _ RST _ SOFT ) PrintString _ P( (char*)PSTR(„Soft Reset”) ); else PrintString _ P( (char*)PSTR(„Wdg Error”) ); PrintLongHex( adrCallWdg ); PrintString _ P( (char*)PSTR(CRLF”********”CRLF) ); } Funkcja odróżnia przerwanie wywołane przez WDG od resetu programowego, w tem celu należy zadeklarować IdSoftReset (najlepiej jako long). W procedurze main() nadać wartość zmiennej IdSoftReset: IdSoftReset = DEF _ RST _ SOFT ^ 0xFFFFFF; Aby wywołać reset programowy, należy wykonać: IdSoftReset = DEF _ RST _ SOFT; while( true ) ; Jeśli nie korzystamy z funkcji IrqWdg(), adres, z którego nastąpiło zadziałanie WDG, będzie znajdował się w zmiennej adrCallWdg. Adres będzie ważny, jeśli flaga WDFR w MCUSR będzie ustawiana.
Adres powrotu z funkcji
Podczas debugowania przydatna jest znajomość adresu powrotu z funkcji. W asemblerze jest to proste – wystarczy sprawdzić adres PC na stosie. W języku C, zanim zostanie wykonany pierwszy rozkaz funkcji na stosie mogą być odkładane rejestry. Aby nie sprawdzać po każdej kompilacji liczby odłożonych danych, można posłużyć się fragmentem kodu umieszczonym pomiędzy „gwiazdkami” na list. 1. Ten fragment można zawrzeć w funkcji, ale należy pamiętać, że adres powrotu zwiększy się o adres powrotu i ewentualnie odkładane rejestry. Odkładania adresu powrotu można uniknąć, deklarując funkcję jako inline. Wywołanie funkcji nie musi powodować odłożenia adresu powrotu na stosie. Nie zostanie on zapamiętany, jeśli: Funkcję zadeklarowano jako inline. Funkcji użyto tylko raz (!). Jest to ostatnie (niekoniecznie) użycie funkcji w kodzie programu.
Skupmy się na drugim przypadku, dlaczego tak może się stać? Przy włączonej optymalizacji, jeśli funkcja jest użyta raz, kompilator zamiast skompilować kod C: main() { // polecenia main funkcja() // rozkazy main } void funkcja() { //rozkazy funkcji } do postaci symbolicznej: main: …rozkazy main… call funkcja …rozkazy main… funkcja: …rozkazy funkcji… ret wygeneruje kod asemblerowy w postaci: main: ...rozkazy main ...rozkazy funkcji ...rozkazy main Natomiast w trzecim wypadku, program w języku C w postaci: main() { ...rozkazy main funkcja() funkcja() funkcja() } void funkcja() { ...rozkazy funkcji } skompiluje do:
Listing 3. Przykładowy sposób określenia zużycia pamięci // Sekcja „.initX” (ZERO zainicjalizowane) unsigned char DnoStosu NOINIT; // Kontrola stosu void ClrIntRam(void) __attribute__ ((naked)) __attribute__ ((section („.init3”))); void ClrIntRam(void) { unsigned char *AdrRam; // Zapisujemy od ostatniej zajetej komórki ram do wierzchołka stosu -32 bajty rezerwy for (AdrRam=&DnoStosu; AdrRam < (unsigned char*)RAMEND-32; AdrRam++) // Wpisanie do IntRam $FF { *AdrRam = 0xFF; } DnoStosu = ‚@’; // Kontrola stosu } //Przykład sprawdzania zajętości pamięci. Najlepiej wywoływać cyklicznie, na przykład co 100ms w pętli głównej programu: void TestStosu() { unsigned char *AdrRam; unsigned int cnt=0; // Sprawdzamy od ostatniej zajetej komórki ram do wierzchołka stosu -32 bajty rezerwy for (AdrRam=(&DnoStosu)+1; AdrRam < (unsigned char*)RAMEND-32; AdrRam++) // Wpisanie do IntRam $FF { cnt++; if (*AdrRam != 0xFF) { FreeRam = cnt; // Wolny obszar RAM’u if (FreeRam < 32 ) { // Jeśli za mały obszar to generuj błąd PrintError( ERR_STOS ); LedErrorOn(); sprintf_P(str, PSTR(„ Free $%04x RAM”CRLF), FreeRam); PrintString(str); } return; } } }
ELEKTRONIKA PRAKTYCZNA 3/2017
93
NOTATNIK KONSTRUKTORA Listing 4. Procedura do szacowania częstotliwości taktowania /* Oszacowanie częstotliwości taktowania mikrokontrolera. Funkcja musi być umieszczona jako pierwsza w kodzie (za main). W innych miejscach może działać nieprawidłowo lub niepotrzebnie wydłużyc start programu (pomiar musi spowodować zadziałanie WDG. */ word fcpuCalculate() { word fcpu; if ( PomiarFCLK != DEFPWRRST ) // Jeśli pomiar nie był wykonany { PomiarFCLK = DEFPWRRST; f_us = 0; cli(); // Koniecze jeśli funkcja wywołania po włączeniu IRQ wdt_enable( WDTO_30MS ); // Ustawienie WDG (IRQ muszą byc wyłączone) wdt_reset(); // Koniecze jeśli funkcja wywołania gdy WDG był już w użyciu lub włączony bit WDTON w fuses while( true ) { f_us++; // Zmienną zwiększamy co 1ms do czasu aż WDG zrestartuje mikrokontroler _delay_ms(1); } } else // Pomiar zakończony, interpretuj wynik { Gdy stos mikrokontrolera zajmie obszar przeznaczony na dane, praca apli// FCPU_TPOM - czas pomiaru WDTO_30MS (uwagi w pliku „.h” fcpu = (long)F_CPU/1000 * f_us / FCPU_TPOM; kacji zakończy się w trudno przewidywalny sposób. Warto więc wiedzieć, // Procentowa odchyłka częstotliwości fcpuDeviation = ((long)fcpu * 100 / (F_CPU/1000)) - 100 ; jakie jest bieżące i maksymalne zużycie pamięci. Przykładowy sposób } określenia zużycia pamięci pokazano na listingu 3. Deklarację zmiennej return( fcpu ); }
Zużycie pamięci RAM
//Definicje: byte volatile f_us NOINIT; int fcpuDeviation; long PomiarFCLK NOINIT;
main: ...rozkazy main funkcja() funkcja() funkcja: ...rozkazy funkcji ret
Sprintf i scanf
Funkcja sprintf operuje na argumentach typu int. Jak wyświetlić zmienną typu long? Rozwiązaniem jest własna procedura konwersji zmiennej long na łańcuch znaków. Pokazano ją na listingu 2. Przytoczone tu funkcje działają dość szybko i zajmują mało miejsca w pamięci Flash, ponieważ nie obsługują formatowania stringów. Funkcje scannf _P i sprintf _P w drugim parametrze (string w pamięci Flash umieszczony za PSTR) adresują tylko 64 kB Flash (nie ustawiają RAMPZ). Na szczęście kompilator wszystkie stałe umieszcza na początku pamięci Flash, więc nie stanowi to problemu. Kłopoty zaczynają się, gdy przesuniemy sekcję „.text” na adres ponad 64 kB. Rozwiązaniem jest zastąpienie scannf _P i sprintf _P przez scannf i sprintf. Zajmą one więcej pamięci RAM, ale procesory z Flash mieszczącą więcej niż 64 kB danych mają jej dużo, a bootloader potrzebuje niewiele pamięci RAM.
Porównanie bitów
Porównanie bitów przez if( (bajt1 & _ BV(bit1)) == (bajt2 & _ BV(bit2)) ) { …. } najczęściej nie zadziała, bo wynikiem fałszu jest zawsze zero, ale prawdą wynik różny od zera, który to – zwłaszcza przy sprawdzaniu stanu bitu w peryferiach – będzie zależał od numeru sprawdzanego bitu/bitów. Aby porównanie zadziałało prawidłowo, należy je wykonać w następujący sposób: if ( ((bajt1 & _ BV(bit1) == 0) && ((bajt2 & _ BV(bit2)) != 0) || ((bajt1 & _ BV(bit1) != 0) && ((bajt2 & _ BV(bit2)) == 0) ) { …. }
94
ELEKTRONIKA PRAKTYCZNA 3/2017
DnoStosu należy umieścić bezpośrednio przed main(). Zagwarantuje to, że zmienna będzie zadeklarowana jako ostatnia i będzie zajmowała najwyższy adres w RAM. Nieprzypadkowo też jest to zmienna z atrybutem NOINIT, „zwykła” zmienna zadeklarowana przed main() wcale nie musi być umieszczona w pamięci jako ostatnia. Czy faktycznie jest ona ostatnia można upewnić się sprawdzając wyniki kompilacji.
Do czego może przydać się ta funkcja? Zdarza się pomylić kwarc. W dobie wszechstronnej miniaturyzacji napisy są coraz trudniejsze do odczytania. Zdarza się też trafić na kwarc overtonowy, przeznaczony do pracy na częstotliwości harmonicznej. W takim przypadku częstotliwość podstawowa jest kilkukrotnie niższa. W takiej sytuacji program może poinformować o złej częstotliwości taktującej. Jeśli w mikrokontrolerze mamy dostępny sygnał wzorcowy, to nie ma problemu z policzeniem, ile rozkazów wykona mikrokontroler w zadanym czasie. Co jednak, gdy takiego sygnału nie ma? Jeśli mamy wolne wyprowadzenie mikrokontrolera, można do niego dołączyć obwód RC i zmierzyć czas ładowania się kondensatora. Zależność ta jest nieliniowa, ale nie zależy nam na dokładnym pomiarze, lecz oszacowaniu częstotliwości, a właściwie stwierdzeniu zbyt dużej jej odchyłki. Bez obwodu RC można pokusić się o pomiar pojemności własnej niepodłączonego wyprowadzenia. Co jeśli, wszystkie piny są wykorzystane? Manipulując bitami konfiguracyjnymi, można by przełączyć taktowanie na wewnętrzny generator RC, dokonać pomiaru i operację powtórzyć z zegarem zewnętrznym. Niestety, operacji takiej nie należy przeprowadzać zbyt często, bo przekroczymy liczbę dopuszczalnych zapisów do pamięci Flash. Na listingu 4 pokazano procedurę, która nie wymaga zewnętrznych sygnałów wzorcowych i można ją zaimplementować w każdym współczesnym mikrokontrolerze. W tym celu wykorzystamy wewnętrzny generator RC, który służy do taktowania operacji na EEPROM, ale nie będziemy mierzyć czasu zapisu, a właściwie kasowania komórki tej pamięci, tylko skorzystamy z usług watchdog, taktowanego tym samym sygnałem. Dokładność tego sygnału nie jest rewelacyjna, zależy od wielu czynników, między innymi od napięcia zasilania, ale do naszych celów jest wystarczająca. W mikrokontrolerach z rozbudowanym układem WDG, który może generować przerwanie po przepełnieniu timera, pomiar jest stosunkowo prosty, ale stosując się do kilku reguł, można skorzystać z WDG każdego mikrokontrolera. Funkcja fcpuCalculate zwraca częstotliwość taktowania mikrokontrolera podzieloną przez 1000. W zmiennej fcpuDeviation zwraca odchyłkę od częstotliwości nominalnej, dla której skompilowano kod – stała F_CPU. Dokładność obliczeń można zwiększyć, wydłużając czas pomiaru. Przy zmianach trzeba zadbać o to, aby nie przekroczyć zakresu zmiennych. Funkcja wykonuje się 30 ms, czas ten jest tak długi tylko przy pierwszym uruchomieniu mikrokontrolera po włączeniu zasilania. Sławomir Skrzyński, EP
Krok po kroku Kursy EP
Systemy dla Internetu Rzeczy (4) Zestaw CC1310 LaunchPad
Istotnym czynnikiem użyteczności sieci bezprzewodowej jest zasięg działania poszczególnych węzłów. Przy wykorzystaniu pasma ISM 868 MHz zasięg działania rośnie z kilkunastu metrów (dla pasma 2,4 GHz) do kilku kilometrów. Użycie zestawu startowego CC1310 LanuchPad umożliwia łatwe rozpoczęcie pracy w tym paśmie. Zastosowany w zestawie układ scalony CC13100 ma architekturę zgodną z układami CC2650 i CC1350 oraz taki sam rozkład wyprowadzeń. Do jego programowania używany jest ten sam pakiet programowy i ten sam system operacyjny czasu rzeczywistego. Zmodyfikowany jest tylko interfejs radiowy.
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
W poprzednich odcinkach kursu został omówiony zestaw CC2650 SensorTag i jego użytkowanie oraz moduły rozszerzeń DevPack. Teraz pora na zestaw startowy z układem scalonym CC1310. Jest to układ bardzo niskiej mocy (ULP – Ultra Low Power) oraz dużego zasięgu (Long Range). Pozwala on na tworzenie sieci rozległych LPWAN, np. układ może pracować w sieci SigFox.
Dokumentacja
Dotarcie do opisu zestawu CC1310 LaunchPad nastręcza (tradycyjnie) pewne kłopoty. Podstawowym miejscem informacji jest strona produktu CC1310 [4]. Na kilku zakładkach znajduje się sporo informacji wiele odnośników do dokumentacji, oprogramowania, projektów i modułów sprzętowych. Na stronie zestawu CC1310 LaunchPad [5] znajdują się odnośniki do krótkiego opisu wyprowadzeń zestawu [6], schematu [7] oraz strony opisu pakietu programowego SDK dla układów CC13x0 [8]. Jest też niedziałający link do strony „Meet the CC1310 Launchpad” [9]. A to właśnie tylko na tej stronie jest informacja o oprogramowaniu firm-ware. Największy zbiór odnośników znajduje się na stronie Wiki „Sub-1GHz” [10]. Na portalu społecznościowym TI E2E Community znajduje się bardzo przydatna strona [11]. Jest ona często aktualizowana i zawiera odpowiedzi na najczęściej zadawane pytania. Projekty przykładowe dla zestawu CC1310 LaunchPad znajdują się na stronie TI Resource Explorer [12]. Są one zgrupowane w dwóch ścieżkach: SimpleLink CC13x0 SDKCC1310 oraz TI-RTOS for CC13XX and CC26XX. W ścieżce TI Resource Explorer\ CC13X0\CC1310F128 jest dostęp do plików dokumentacji, not aplikacyjnych oraz firmowych projektów sprzętowo-programowych TI Designs.
Jest jednak miejsce w sieci gdzie można znaleźć dużą ilość użytecznej informacji. Na portalu element14 jest dostępna seria artykułów blogu RoadTest. Można zacząć od strony “SimpleLink™ Sub-1 GHz Wireless Microcontroller – Check Received Signal Strength” [14]. Zamieszczony jest tam bardzo przydatny film “How-To: Sub-1 GHz Radio with SimpleLink CC1310 LaunchPad Out of Box” [15]. Kolejne przydatne miejsce to portal SimpleLink Academy [16]. Znajduje się tam opis (ze źródłami) wielu warsztatów z projektami dla zestawu CC1310 LaunchPad.
Układ scalony CC1310
Mikrokontroler komunikacji bezprzewodowej CC1310 jest układem złożonym typu SOC i zawiera trzy sprzętowe rdzenie użytkowe: ARM Cortex-M3 (48 MHz), ARM Cortex-M0, który steruje sekcją radiową oraz specjalizowany rdzeń Sensor Controller (bardzo małej mocy) do obsługi modułów peryferyjnych [4]. Rdzeń ARM Cortex-M3 zawiera dużą pamięć Flash (układ na płytce ma 128 kB), 8 kB SRAM, 20 kB pamięci SRAM o bardzo małym prądzie upływu. Każdy sygnał układu peryferyjnego może być przypisany do dowolnego wyprowadzenia układu scalonego. Układ udostępnia 4 moduły timerów, 8-kanałowy przetwornik A/C 12 bit/200 kSa, komparatory, UART, SPI, I2C, I2S, RTC, czujnik temperatury, generator liczb losowych oraz moduł szyfrowania AES-128. Sekcja radiowa cechuje się dużą czułością –124 dBm (–110 dBm at 50 kbps), selektywnością 56 dB (±100 kHz), programowaną mocą wyjściową do +15 dBm. Pozwala na bezpośrednie dołączenie wzmacniacza mocy CC1190. Układ wyróżnia się bardzo niskim poborem mocy. Zawiera wewnętrzną przetwornicę DC-DC. Przy zasilaniu 3 V pobiera: MCU 51 mA/MHz, RX 5,4 mA, TX
ELEKTRONIKA PRAKTYCZNA 3/2017
95
KROK PO KROKU KursY ep
Rysunek 1. Elementy zestawu CC1310 LaunchPad [9] 13,4 mA (+10 dBm). Prądy dla uśpienia układu są bardzo małe: stan Standby 0,7 mA (pracuje RTC Running i podtrzymanie zawartości RAM/CPU), stan Shutdown 185 nA (wybudzanie zdarzeniem zewnętrznym).
Płytka zestawu CC1310 LaunchPad
96
ELEKTRONIKA PRAKTYCZNA 3/2017
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Płytkę podzielono na dwie części: u góry jest emulator sprzętowy standardu XDS110 a na dole układ scalony CC1310F128RGZT (rysunek 1). Patrząc od góry, na płytce znajduje się złącze USB micro. Do niego może być dołączona ładowarka USB lub komputer. Emulator standardu XDS110 został zrealizowany z wykorzystaniem procesora komunikacyjnego TM4C129 (Tiva). Procesor ten zapewnia obsługę pełnego łącza emulacyjnego JTAG procesora CC1310. Do układu dołączone są dwie diody LED sygnalizujące aktywność komunikacyjną. Regulator LDO 3,3 V, dołączony do gniazdka USB, dostarcza zasilanie do emulatora i procesora. W środku płytki znajduje się poziomy szereg zwor które pozwalają na rozłączenie połączenia pomiędzy emulatorem i procesorem. Osiem sygnałów jest łączonych przez zwory M1-M8 (P4.1-P4.16). Dalej są zwory połączenia zasilania: • Zwora M9: Napięcie 3,3 V (XDS_VCC) z regulatora LDO modułu XDS110, jest dołączane jako główne zasilanie układu procesora. • Zwora M10: Napięcie 5 V (USB_VBUS) z gniazdka USB-micro modułu XDS110, jest doprowadzane do złącza J1 oraz P2 (+5 V) tylko w celu kompatybilności ze standardem LAUNCHXL. Nie jest ono używane w układzie procesorowym. • Zwora M11: Masa modułu XDS110 jest dołączana do masy układu procesora. Złącze P10 („VSENSE”) umożliwia wybór zasilania translatorów poziomów napięcia sygnałów łącza JTAG modułu XDS110. Zwora w pozycji P10.1-2 umożliwia zasilanie translatorów z LDO emulatora („XDS110 Power”). Zwora w pozycji P10.2-3 umożliwia zasilanie translatorów napięciem układu procesora (‘Extern. Pwr”). Typowo jest to zasilanie zewnętrzne poprzez wyprowadzenia „3V3” złącz P1 i J1. Pełne rozłączenie obu stron pozwala na:
• Zastosowanie emulatora XDS110 do debugowania innego układu elektronicznego z układem scalonym serii CC13xx/ CC26xx przy zastosowaniu złącza P7 („XDS110 Out”). • Debugowanie układu CC1310 na płytce LaunchPad przez zewnętrzny emulator przy zastosowaniu złącza P5 („CC1310 In”). Wyprowadzenia układu scalonego CC1310, umieszczonego w środku płytki, są udostępnione na dwóch złączach 40-to wyprowadzeniowych. Po lewej stronie płytki znajduje się złącze oznaczone na schemacie jako J1 a po prawej stronie złącze J2. Jednak oznaczenia widoczne na płytce drukowanej dotyczą standardu LAUNCHXL firmy Texas Instruments [19]. Są to oznaczenia zgodne ze standardem aplikacji Energia – wersji Arduino dla płytek LanuchPad Tfirmy Texas Instruments: • lewa kolumna (po lewej) numerowana od 1 do 10 (od góry do dołu) jako J1, • prawa kolumna (po prawej) numerowana od 11 do 20 (od dołu do góry) jako J2, • lewa kolumna (po prawej) numerowana od 21 do 30 (od góry do dołu) jako J3, • prawa kolumna (po lewej) numerowana od 31 do 40 (od dołu do góry) jako J4. W dokumencie CC1310 LaunchPad Getting Started Guide [6] jest błędny opis wyprowadzenia numer 39 – powinno być DIO6. Opis na płytce drukowanej zestawu jest poprawny. Fizyczne rozmieszczenie złączy na płytce LanuchPad nie jest zgodne ze standardem Arduino. Zastosowane na płytce złącza są podwójne, na górze płytki męskie a na dole żeńskie. Umożliwia to nakładanie na płytkę modułów rozszerzeń (BOOST??) oraz składanie płytek w stos. Na złączach J1-J4 są udostępnione wszystkie trzydzieści wyprowadzeń wejścia-wyjścia (GPIO) układu scalonego CC1310 oznaczane „DIOxx”, gdzie xx-numery od 01 do 30 oraz cztery sygnały łącza JTAG i sygnał reset („LPRESET”). Dodatkowo, na dole płytki są umieszczone dwa potrójne złącza z wyprowadzoną masą „GND” oraz zasilaniem „3V3” oraz „5V”. Do wyprowadzenia DIO7 układu scalonego CC1310 jest dołączona zielona dioda LED poprzez złącze P6 3-4. Do wyprowadzenia DIO6
Krok po kroku Kursy EP Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Rysunek 2. Zestaw CC1310 LaunchPad z dołączonym modułem LCD jest dołączona czerwona dioda LED poprzez złącze P6 1-2. Do wyprowadzenia DIO13 jest poprzez rezystor 100 V dołączony przycisk SW1 „BTN-1” (po lewej stronie płytki). Do wyprowadzenia DIO14 jest poprzez rezystor 100 V dołączony przycisk SW2 „BTN2” (po prawej stronie płytki). Na samym dolej jest umieszczona antena wykonana na płytce drukowanej. Antena pozwala na pracę w pasmach ISM: 868 MHz (Europa) i 915 MHz (USA). Na płytce jest zamontowane złącze radiowe P11 (typu uSMA(JSC), żeńskie 50 V). Umożliwia ono dołączenie anteny zewnętrznej, po usunięciu rezystora R12 i zamontowanie w miejsce R13 rezystora 0 V. Do układu scalonego CC1310 są dołączone, umieszczone na płytce, rezonatory kwarcowe: główny zegar systemowy 24 MHz, zegar RTC 32768 Hz oraz pamięć Flash 8 Mbit (o małym poborze mocy), obsługiwana poprzez 4-sygnałowe łącze SPI.
Użytkowanie zestawu CC1310 LaunchPad
Zestaw CC1310 LaunchPad jest dostarczany z fabrycznie zaprogramowanym programem „CC1310 LaunchPad Out of the Box Demo” dostępnym w pakiecie systemu TI-RTOS, np.w portalu TI Resource Explorer [12] jako przykładowy projekt „Packet Error Rate (PER)” [20]. Nazwa Out of the Box Application pojawia się wielokrotnie w dokumentacji stosu TI 15.4 [4, 5]. Dotyczy ona wszystkich aplikacji gotowych do działania „z pudełka”. Do zestawu CC1310 LaunchPad można dołączyć moduł rozszerzeń Sharp Memory LCD BoosterPack z wyświetlaczem LCD [21]. Wtedy informacje generowane przez aplikację będą poprzez łącze SPI dodatkowo wyświetlane na ekranie LCD. 1. Dołącz zestaw CC1310 LaunchPad kablem USB do komputera. Zostaną zainstalowane sterowniki. Na komputerze zostanie udostępniony port wirtualne UART XDS110 Class Application/ User UART (COMxx).
2. Uruchom terminal ASCII (np. PuTTy). Skonfiguruj go na Serial, port COMxx z ustawieniami 115200 kbps, 8 data bits, 1 stop bit, no parity. 3. Naciśnij przycisk Reset na płytce zestawu CC1310 LaunchPad. W terminalu wyświetlana jest informacja (i jeśli dołączony to również na ekranie LCD, rysunek 2): CC1310 PER TEST Select: BTN-1 Navigate: BTN-2 Push a button to proceed... 4. Naciśnij przycisk BTN-1 lub BTN-2. Powoduje to wyświetlenie menu: Main Menu >Test: 2-GFSK Freq: 868.0 Pkts: 10 Mode: Rx Start... Przycisk BTN-1 (lewy) jest używany do wyboru a przycisk BTN-2 (prawy) jest używany do nawigacji – przejście do następnej pozycji menu. Aplikacja udostępnia następujące tryby komunikacji RF [9]: 2-GFSK (50 kBit/s, 25 kHz deviation) : Generic frequency shift keying (GFSK) with binary symbols, IEEE 802.15.4g LR Mode (625 Bit/s): Long-range mode (GFSK, 5 kHz deviation, 40 kHz FR BW) OOK (4,8 kBit/s, 40 kHz RX BW): On-off keying HS Mode (4 MBit/s, shaped 8-FSK): High-speed mode Custom – tylko dla aplikacji w wersji 2.0 Obsługiwane jest pasmo 868 MHz ISM (Europa) i 915 MHz ISM (USA) oraz Custom dla aplikacji w wersji 2.0. Dostępne są ustawienia liczby pakietów do przesłania 10, 100, 1000, 10000 Pkts. Zestaw CC1310 LaunchPad może pracować jako odbiornik Rx lub nadajnik Tx.
Test połączenia radiowego
Do przeprowadzenia testu potrzebne są dwa zestawy CC1310 LaunchPad. 5. Dołącz drugi zestaw kablem USB do komputera i poczekaj na zainstalowanie jego sterowników. 6. Uruchom drugą instancję programu terminala (PuTTy). Skonfiguruj go na Serial, port COMxx z ustawieniami 115200 kbps, 8 data bits, 1 stop bit, no parity. 7. Naciśnij przycisk Reset na drugiej płytce zestawu CC1310 LaunchPad. 8. Naciśnij przycisk BTN-1 lub BTN-2 na drugiej płytce zestawu. 9. W menu zmień tryb pracy na nadajnik (Tx). Main Menu Test: 2-GFSK Freq: 868.0 Pkts: 10 Mode: Tx >Start... 10. W menu pierwszego zestawu - odbiornika (Rx) przejdź (przycisk BTN-2, prawy)do pozycji Start i naciśnij BTN-1 (lewy). Receiving... 2-GFSK 868.0 Packets ok: 0 RSSI [dBm]: n/a PER [%]: n/a Push a button to abort. Odbiornik oczekuje na transmisję.
ELEKTRONIKA PRAKTYCZNA 3/2017
97
98
ELEKTRONIKA PRAKTYCZNA 3/2017
12. TI Resource Explorer, https://goo.gl/TxDl5J 13. TI-15.4 Stack: IEEE802.15.4e/g Standard Based Star Networking Software Development Kit (SDK), v.2.0.0, 03-June-2016, https://goo.gl/SJuYhp 14. SimpleLink™ Sub-1 GHz Wireless Microcontroller – Check Received Signal Strength, https://goo.gl/mhJMHL 15. How-To: Sub-1 GHz Radio with SimpleLink CC1310 LaunchPad Out of Box, Video, 3:38, pitface123, 21.06.2016, https://goo.gl/iW1JLJ 16. SimpleLink Academy, https://goo.gl/HXOxli 17. TI Cloud Agent, 27 October 2016, https://goo.gl/G6lfju 18. Texas Instruments Cloud Tools, https://goo.gl/xwd8i8 19. BoosterPack Module Pinout Standard, https://goo.gl/LCQIor 20. Packet Error Rate, https://goo.gl/hYeFHS 21. Sharp Memory LCD BoosterPack (430BOOST-SHARP96), https://goo.gl/E2RnMx 22. TI-RTOS downloads, ver.2.21.00.08, 13 Sep 2016, https://goo.gl/IvmcSF
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Literatura: 1. Systemy dla Internetu Rzeczy (1): Zestaw CC2650 SensorTag, Elektronika Praktyczna, 12/2016 2. Systemy dla Internetu Rzeczy (2): Użytkowanie zestawu CC2650 SensorTag, Elektronika Praktyczna, 1/2017 3. Systemy dla Internetu Rzeczy (3): Moduły rozszerzeń DevPack dla zestawu SensorTag, Elektronika Praktyczna, 2/2017 4. CC1310 SimpleLink Sub-1 GHz Ultra-Low Power Wireless Microcontroller, https://goo.gl/UE8N5i 5. SimpleLink™ CC1310 Sub-1 GHz wireless microcontroller (MCU) LaunchPad™ development kit, https://goo.gl/rhLazK 6. CC1310 LaunchPad Getting Started Guide, SWRU477.pdf, 10 Mar 2016, https://goo.gl/hZQaU8 7. LAUNCHXL-CC1310 Design Files, SWRC319.zip, 27 Apr 2016, https://goo.gl/MEByG4 8. SimpleLink™ CC13x0 Software Development Kit, v1.0.0,23-Nov-2016, https://goo.gl/hCU7ua 9. Meet the CC1310 LaunchPad, https://goo.gl/icW15H 10. Sub-1GHz (Wiki), https://goo.gl/0ecDBp 11. CC11xx, CC12xx, CC13xx, Sub-1 GHz software and applications, https://goo.gl/u7OGIL
Krok po kroku Kursy EP
11. W menu drugiego zestawu – nadajnika (Tx) przejdź (przycisk BTN-2, prawy)do pozycji Start i naciśnij BTN-1 (lewy). Startuje transmisja ustawionej liczby (Pkts) pakietów. Sending... 2-GFSK 868.0 Packets sent: 7 Po wysłaniu wszystkich pakietów transmisja zostaje przerwana. Sending... 2-GFSK 868.0 Packets sent: 10 ...finished. Push a button...W oknie odbiornika wyświetlane jest informacja o odebraniu transmisji Rysunek 3. Okno Resource Explorer Classic z projektem demo Receiving... 2-GFSK 868.0 Packets ok: 10 Programowanie w środowisku RSSI [dBm]: -15 Code Composer Studio PER [%]: 0.00 Oprogramowanie dla procesorów serii CC13x0 jest zbudowane Push a button z zastosowaniem systemu operacyjnego TI-RTOS oraz stosu TI to abort. 15.4 [13]. Zestaw CC1310 LaunchPad jest dostarczany z fabrycznie Odbiornik pokazuje liczbę pomyślnie odebranych pakietów zaprogramowanym programem „CC1310 LaunchPad Out of the Box (Packets ok). Jeśli zostanie przesłane (odebrane) więcej pakieDemo”. Projekt tego programu jest dostępny w pakiecie systemu TI-RTOS. Pierwszym sposobem użycia tego projektu jest zainstatów niż liczba ustawiona w odbiorniku to nie jest liczny poziom lowanie pakietu TI-RTOS na komputerze. błędu (PER). Pokazywany jest też poziom odbieranego sygnału Najpierw należy zainstalować środowisko Code Composer Stu(RSSI) aktualizowany dla każdego pakietu w trakcie transmisji. Odbiornik aplikacji Packet Error Rate po wystartowaniu pracuje dio. Darmową aktualną wersję pełną CCS można pobrać ze strony w pętli nieskończonej [20]. Jeśli zostanie wykryta kolejna transwww.ti.com. Obecnie jest dostępna wersja CCS 7.0.0.00043. Podmisja to liczba poprawnie odebranych pakietów zostanie dodana czas instalowania należy na liście produktów do zainstalowania zaznaczyć SimpleLink CC13xx and CC26cc Wireless MCUs. do licznika Packets ok. Pracę aplikacji można przerwać i powrócić Po zainstalowaniu środowiska CCS można przystąpić do zaindo menu poprzez naciśniecie dowolnego przycisku [14]. Dla nadajnika, po powrocie do menu, można ponownie wybrać Start i zostastalowania pakietu TI-RTOS. Plik instalacyjny pakietu w najnownie wysłana kolejna porcja Pkts pakietów. Jeśli odbiornik zostanie szej wersji (np. 2.21.00.08) można pobrać ze strony TI [22]. Dostępne odsunięty od nadajnika w trakcie transmisji to na wskaźniku są również starsze wersje pakietu (potrzebne czasami dla zgodnoRRSI można obserwować zmiany poziomu odbieranego sygnału. ści wersji projektów). Po zainstalowaniu pakietu na komputerze Na portalu element14 jest zamieszczony film “How-To: Sub-1 GHz będzie dostępny projekt rfPacketErrorRate w ścieżce C:\ti\tirtos_ Radio with SimpleLink CC1310 LaunchPad Out of Box” pokazujący cc13xx_cc26xx_2_21_00_08\examples\TI\CC1310_LAUNCHX\. opisaną powyżej sekwencję [15]. Jeśli mamy więcej zestawów CC1310 W tym samym folderze znajduje się plik README.html z dokładLaunchPad to możemy je skonfigurować jako odbiorniki i obserwoniejszym opisem tego projektu. W trakcie instalowania pakietu wać jednoczesne odbieranie informacji w sieci typu gwiazda. TI-RTOS wykonywane są też modyfikacje w ścieżce instalacyjnej
KROK PO KROKU KursY ep
Rysunek 4. Przycisk reprogramowania
Rysunek 5. Pierwsza instrukcja instalacyjna
Rysunek 6. Ostatnia instrukcja instalacyjna środowiska CCS v7 (C:\ti\ccsv7). W środowisku CCS v7.0 (v6.2 lub nowsza) należy z menu wybrać View Resource Explorer Classic. Po rozwinięciu drzewa pakietu TI-RTOS (rys.3) można projekt rfPacketErrorRate załadować, zbudować i zaprogramować na dołączonym zestawie CC1310 LaunchPad. Pierwsze dołączenie nowego zestawu CC1310 LaunchPad do środowiska CCS powoduje typowo wyświetlenie informacji o konieczności aktualizacji oprogramowania firmowego emulatora sprzętowego XDS110 zestawu. Należy kliknąć na odpowiedni przycisk i koniecznie to wykonać. Aplikacja zgłasza się jako „PER TEST Version 2.0”.
Ponowne zaprogramowanie zestawu CC1310 LaunchPad programem firmowym „CC1310 LaunchPad Out of the Box Demo” jest możliwe z wykorzystaniem strony „Meet the CC1310 Launchpad” [9]. Znajduje się tam przycisk (rysunek 4) służący do zaprogramowania pamięci Flash układu scalonego CC1310 zestawu LaunchPad dołączonego do komputera PC kablem USB. Po kliknięciu na przycisk reprogramowania pierwszy raz wyświetlana jest plansza z instrukcją (rysunek 5). W pierwszym kroku jest instalowana wtyczka TI Cloud Agent Bridge [17] dla przeglądarki internetowej (Firefox, Chrome, Safari lub IE). Jest
Rysunek 8. Pomyślne zakończenie
to mała aplikacja która umożliwia programowanie i debugowanie układu scalonego bezpośrednio z narzędzi sieciowych Texas Instruments Cloud Tools [18]. W drugim kroku jest pobierany plik instalacyjny ticloudagent.exe (14 MB) aplikacji TI Cloud Agent. Należy go uruchomić i zainstalować aplikację w domyślnej lokalizacji. Po ponownym kliknięciu na przycisk reprogramowania pojawia się plansza z nową informacją (rysunek 6). Odnośniki na planszy dotyczą strony TI Cloud Agent [17] z dodatkowymi informacjami. Należy kliknąć na FINISH. Aby rozpocząć przesłanie programu do płytki należy ponownie kliknąć na przycisk reprogramowania. Uruchamiane jest instalowanie sterowników sprzętowych. Należy kliknąć Dalej a na następnej planszy Zakończ. Pojawia się następne okno instalowania sterowników sprzętowych. Należy kliknąć Dalej a następnie Zakończ. Diody komunikacyjne emulatora XDS110 zestawu CC1310 LaunchPad zaczynają błyskać i pokazywana jest plansza z rysunku 7. Po zakończeniu pracy jest wyświetlana nowa informacja (rysunek 8). Należy kliknąć OK. Lewa dioda XDS110 gaśnie. I już można pracować z zaprogramowanym pierwotną wersją firmowej aplikacji zestawem CC1310 LaunchPad.
Warsztaty SimpleLink Academy
Bardzo ciekawą pomocą dla każdego, który zaczyna pracować z procesorami rodziny CC13xx, są ćwiczenia warsztatowe SimpleLink Academy [16]. Dostępnych jest wiele ćwiczeń z dokładnym opisem oraz kodem źródłowym. Dla wielu ćwiczeń jest udostępniony zapis wideo. Dosyć dokładne omówienie ustawiania parametrów pracy nadajnika i odbiornika radiowego układu rodziny CC13xx jest zamieszczone w opisie warsztatu „Getting started with the RF driver for CC13xx”. Dostępne jest też wideo “How to get started with CC1310 Packet RX/TX example” (czas 3:52) z prezentacją wykonania tego warsztatu. Henryk A. Kowalski [email protected] (zdjęcia: Piotr T. Kowalski)
Wydanie specjalne „Raspberry Pi” to polski przekład światowego bestsellera na temat słynnego minikomputera
WYDANIE SPECJALNE „MŁODEGO TECHNIK A”
Raspberry Pi Ależ to bardzo proste!
NR 1/2015
Ależ to bardzo proste!
Jak w pełni wykorzystać możliwości minikomputera Raspberry Pi
196
pomysłów i porad
KOMPENDIUM DLA NIEELEKTRONIKÓW ROZPOCZĘCIE PRACY
PODSTAWOWE UMIEJĘTNOŚCI
PROGRAMOWANIE
(w tym 5% VAT)
(przesyłka GRATIS)
34 zł
www.UlubionyKiosk.pl
cena:
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Reprogramowanie zestawu CC1310 LaunchPad
Rysunek 7. Reprogramowanie
PROJEKTY
001_CBN79.cover_whs.indd 1 20.02.2015 13:40
ELEKTRONIKA PRAKTYCZNA 3/2017
99
KROK PO KROKU KursY ep
Pierwsze kroki z FPGA (9) Obsługa wyświetlacza OLED z kontrolerem SSD1331
Celem projektu było obsłużenie sprzętowego kontrolera kolorowego wyświetlacza OLED za pomocą układu FPGA zestawu maXimator. Zastosowany w przykładzie wyświetlacz wyposażono w kontroler SSD1331, z którym aplikacja użytkownika komunikuje się poprzez interfejs SPI. Prezentowany w artykule projekt wykonano z użyciem bezpłatnego oprogramowania narzędziowego Intel Quartus Prime, które można pobrać ze strony internetowej https://goo.gl/kuHmWj. Moduł z kolorowym wyświetlaczem OLED-RGB dołączono do maXimatora zgodnie ze schematem pokazanym na rysunku 1 i opisem umieszczonym w tabeli 1. Dodatkowo, wyprowadzenie D14 maXimatora jest używany jako wejście zerujące o aktywnym poziomie wysokim – podczas normalnej pracy ta linia musi być dołączona do masy zasilania.
Jednostka TOP LEVEL
Rysunek 1. Schemat połączeń płytki maXimatora z wyświetlaczem
100
ELEKTRONIKA PRAKTYCZNA 3/2017
Pokazana na rysunku 2 jednostkaTOP LEVEL składa się z następujących elementów: Bloku OLED, który jest odpowiedzialny za inicjalizację oraz przesyłanie komend i danych do kontrolera wyświetlacza. Bloku EXAMPLE_OLED_Logic, w którym pokazano użycie przykładowych komponentów do sterowania wyświetlaczem:
Tabela. 1. Sposób dołączenia modułu OLED-RGB Pin OLED
maXimator
VCC
+5V
GND
GND
DIN
D0
CLK
D1
CS
D2
D/C
D3
RES
D4
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Więcej informacji: Projekt powstał w Katedrze Elektroniki Wydziału Informatyki, Elektroniki i Telekomunikacji AGH, pod kierunkiem dr inż. Pawła Rajdy i dr inż. Jerzego Kasperka.
KROK PO KROKU KursY ep Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Rysunek 2. Wygląd projektu
Tabela 2. Wyprowadzenie modułu OLED
CLS_Command – czyści wyświetlacz, SetPixel_Commmand – ustawia wybrany piksel wyświetlacza na wybrany kolor, DrawImageFull_Commmand – rysuje cały obrazek uprzednio pobierając go z pamięci. Bloku Flash, który implementuje blok pamięci typu Flash zainicjalizowanej plikiem onchip_ flash.dat. Przechowane są w niej mapy bitowe dwóch obrazów, które będą przesłane do wyświetlacza. Oprócz wyżej wymienionych, na schemacie blokowym możemy znaleźć jeszcze blok odpowiedzialny za debouncing przycisku zerowania oraz blok generatora pętli PLL, na którego na wyjściu występuje przebieg o częstotliwości 50 MHz.
CLK
Sygnał zegarowy
RST
Sygnał reset
DATA_INPUT[7..0]
Wejście 8-bitowe dla danych
Moduł OLED
Moduł OLED (rysunek 2) jest głównym elementem projektu. Odpowiada on za komunikację za pomocą interfejsu SPI, inicjalizację wyświetlacza oraz późniejsze przekazywanie komend i danych. Sygnały modułu OLED opisano w tabeli 2. Moduł OLED zawiera w sobie następujące bloki (rysunek 3):
Port
Funkcja
DATA_LATCH
Wejście zatrzaskujące wejście DATA_INPUT[7..0]
COMMAND_INPUT[7..0]
Wejście 8-bitowe dla komend
COMMAND_LATCH
Wejście zatrzaskujące wejście COMMAND_INPUT[7..0]
SCLK
Sygnał zegarowy SPI
SS
Slave Select wybór urządzenia slave SPI
MOSI
Master Output Slave Input interfejsu SPI
D_C
Linia informująca kontroler o tym czy przesyłamy dane czy komendy
OLED_RST
Sygnał służący resetowaniu wyświetlacza OLED
OLED_INITIALISED
Sygnał informujący o tym, że wyświetlacz został zainicjalizowany
BUSY
Sygnał informujący o tym, że moduł OLED jest w trakcie przetwarzania komendy, danych. Nowe komendy/dane należy przesyłać wtedy, gdy stan tego pinu jest niski.
STATUS_LED
Sygnał sterujący LED
Rysunek 3. Bloki zawarte w module OLED
ELEKTRONIKA PRAKTYCZNA 3/2017
101
Tabela 3. Wyprowadzenie modułu spi_master Port
Funkcja
Moduł Example_OLED_Logic
Moduł wykonano, aby pokazać, jak należy sterować modułem OLED poprzez odpowiednie komendy. W jego architekturze zawarto trzy komponenty: CLS_Command, który ma za zadanie wyczyścić wyświetlacz, tzn. wypełnić go zadanym kolorem. Funkcje jego wyprowadzeń pokazano w tabeli 6.
Tabela 4. Zawartość pamięci LMP_ROM Bajt
Wyłączenie wyświetlacza OLED
0x75
Ustawienie adresu wiersza
0x00 0x3F 0x15 0x5F 0xA0
RGB 565
0xA1
Ustawienie wiersza startowego RAM
reset
Sygnał reset
en
Sygnał inicjujący transakcję
cont
Sygnał określający, czy mamy do czynienia z transakcją ciągłą czy pojedynczą
data_in[7..0]
Bajt który zostanie przesłany poprzez SPI
miso
Wejście Master Input Slave Output (nie używane)
sclk
Sygnał zegarowy SPI
0xAD
0x00 0xA2 0xA4
Ustawienie trybu wyświetlacza
0xA8
Ustawienie multipleksera
0x3F
Slave Select
data_out[7..0]
Bajt otrzymany od urządzenia slave
0xB0
mosi
Wyjście Master Output Slave Input
0x1A
busy
Sygnał informujący o zajętości modułu spi_master
0xB1
Funkcja Sygnał zegarowy
us_clk
Drugi sygnał zegarowy
reset
Sygnał reset
init_rom_input[7..0]
Tryb ciągłego przesyłania danych (nie używany)
data_latch
Zatrzask danych
data_input[7..0]
Dane wejściowe
0xB3
Ustawienie okresu fazy 1 oraz 2 Ustawienie stosunku dzielnika zegara do częstotliwości oscylatora
0xD0 0x8A
Ustawienie poziomu Second Pre-charge Speed dla koloru A
0x81 0x8B
Ustawienie poziomu Second Pre-charge Speed dla koloru B
0x82 0x8C
Zatrzask komendy
0x83
command_input[7..0]
Komenda
0xBB
Rom_clk_en
Sygnał aktywujący licznik sterujący adresacją pamięci ROM
0x3E
Rom_clk_clr
Sygnał służący wyzerowaniu ww. licznika
0x3E
Spi_en
Sygnał aktywujący moduł SPI
D_c
Sygnał określający, czy przesyłamy dany czy komendę
0xBE 0x87
Ustawienie poziomu Second Pre-charge Speed dla koloru C Ustawienie wartości Pre-charge Ustawienie poziomu VCOMH Konfiguracja wartości natężenia prądu
0x0F 0x81
Konfiguracja kontrastu A
0x80
Spi_data[7..0]
Dane przesyłane do modułu SPI
Oled_res
Sygnał zerujący sterownik wyświetlacza
Spi_ss
Sygnał Slave Select
busy
Sygnał informujący o zajętości modułu
0x83
initialized
Sygnał informujący o tym, że wyświetlacz został zainicjalizowany
0xAF
ELEKTRONIKA PRAKTYCZNA 3/2017
Konfiguracja trybu oszczędzania energii
0x74
command_latch
102
Ustawienia ogólnej konfiguracji
0x82
Konfiguracja kontrastu B
0x80 Konfiguracja kontrastu C
0x80 Uruchomienie wyświetlacza
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
clk
Ustawienie offsetu wyświetlacza
0x00
0x8F
Port
Ustawienie formatu danych
0x72
Sygnał zegarowy
Tabela 5. Funkcje wyprowadzeń bloku main_controller
Ustawienie adresu kolumny
0x00
clk
ss
Znaczenie
0xAE
Krok po kroku Kursy EP
spi_master będący sprzętową implementacją sterownika SPI, komunikującego się bezpośrednio z kontrolerem wyświetlacza OLED. Funkcje jego wyprowadzeń zebrano w tabeli 3. LPM_ROM to gotowy IP będący pamięcią ROM. Zapisany w nim plik .mif (SD1331_INIT.mif ) zawiera sekwencję komend służących do inicjalizacji wyświetlacza. Dokładne znaczenie poszczególnych bajtów znajduje się w dokumentacji kontrolera SSD1331. Zawartość pamięci bloku LMP_ROM opisano w tabeli 4. main_controller to blok ten jest odpowiedzialny za odczyt sekwencji inicjalizującej z bloku LPM_ROM, a także sterowaniem blokiem spi_master. Funkcje jego wyprowadzeń opisano w tabeli 5. clk_gen jest dzielnikiem sygnału taktującego, na wyjściu main_ clk występuje wejściowy sygnał zegarowy o częstotliwości dzielonej przez 2, a na wyjściu us_clk – sygnał zegarowy o częstotliwości dzielonej przez 6.
KROK PO KROKU KursY ep
Aplikacje maXimatora Pod adresem https:// goo.gl/f7NsHq są dostępne przykładowe projekty przygotowane za pomocą bezpłatnego programu Intel Quartus Prime dla zestawu maXimator. Dostępne jest tam także kompletny zestaw plików źródłowych projektu prezentowanego w EP.
Rysunek 4. Przebiegi sygnałów w module Flash podczas odczytu
Tabela 6. Funkcje wyprowadzeń bloku CLS_Command Port
Funkcja
Clk
Sygnał zegarowy
Reset
Sygnał reset
Busy
Sygnał zajętości modułu OLED
Start
Sygnał aktywujący komponent
oled_initialised
Sygnał informujący o zainicjalizowaniu wyświetlacza OLED
data_latch
Zatrzask magistrali danych
data_output[7..0]
Magistrala danych
command_latch
Zatrzask magistrali komend
command_output[7..0]
Magistrala komend
busy_out
Sygnał informujący o zajętości komponentu CLS_Command
Tabela 7. Funkcje wyprowadzeń bloku SetPixel_Command
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Port
Funkcja
Clk
Sygnał zegarowy
reset
Sygnał reset
Busy
Sygnał zajętości modułu OLED
start
Sygnał aktywujący komponent
oled_initialised
Sygnał informujący o zainicjalizowaniu wyświetlacza OLED
pos_X
Numer wiersza
pos_y
Numer kolumny
color
Kolor piksela w formacie RGB565
data_latch
Zatrzask magistrali danych
data_output[7..0]
Magistrala danych
command_latch
Zatrzask magistrali komend
command_output[7..0]
Magistrala komend
busy_out
Sygnał informujący o zajętości komponentu DrawPixel_Command
SetPixel_Command, którego zadaniem jest zaświecenie w zadanym kolorze pojedynczego piksela o ustalonym adresie. Funkcje jego wyprowadzeń pokazano w tabeli 7. DrawImageFull_Command, który pobiera zapisany w pamięci Flash obraz w celu wyświetlenia go na ekranie. Funkcje jego wyprowadzeń pokazano w tabeli 8.
Moduł Flash
Ten moduł służy do implementacji pamięci Flash (UFM), która może być zainicjalizowana odpowiednio przygotowanym plikiem hex lub mif (memory initialization file). Na rysunku 4 pokazano
Rysunek 5. Wprowadzenie ścieżki dostępu do plików obrazu
Rysunek 6. Ekran powitalny programu Konwerter_RGB565 przebiegi sygnałów podczas odczytu. Pojemność pamięci w układzie MAX10 znajdującym się w zestawie MAXimator pozwala na zapamiętanie dwóch obrazków o rozdzielczości 96×64 pikseli w formacie RGB565. Aby wybrać plik, który ma zostać wgrany należy w pliku Flash.vhd w linii 93 (rysunek 5) podać ścieżkę bezwzględną np: INIT_FILENAME => „D:/Projekty/Maximator/ OLED/Test.mif”.
Dodatkowe oprogramowanie
W ramach projektu utworzono aplikację Konwerter_RGB565, której zadaniem jest wygenerowanie pliku .mif z wybranych przez
ELEKTRONIKA PRAKTYCZNA 3/2017
103
KROK PO KROKU KursY ep
Tabela 8. Funkcje wyprowadzeń bloku DrawImageFull_Command Port
Funkcja
clk
Sygnał zegarowy
reset
Sygnał reset
busy
Sygnał zajętości modułu OLED
start
Sygnał aktywujący komponent
oled_initialised
Sygnał informujący o zainicjalizowaniu wyświetlacza OLED
flash_data
Magistrala danych pamięci Flash
flash_read_data_valid
Sygnał informujący o gotowości danych do odczytu
flash_address_offset
Offset adresu pamięci Flash
flash_read
Sygnał inicjalizujący odczyt danych
flash_address
Adres z którego odczytujemy dane
data_latch
Zatrzask magistrali danych
data_output[7..0]
Magistrala danych
command_latch
Zatrzask magistrali komend
command_output[7..0]
Magistrala komend
busy_out
Sygnał informujący o zajętości komponentu DrawImageFull_Command
użytkownika obrazków w formacie .bmp i wymiarach 96×64 piksele (odpowiada matrycy OLED użytego wyświetlacza). Skompilowana aplikacja jest dostępna w portalu https://goo.gl/HxTqGr. Po uruchomieniu programu (rysunek 6) należy kliknąć przycisk Wczytaj obraz(y), po czym zostanie wyświetlone okno wyboru plików do wczytania. Należy zaznaczyć jeden lub dwa obrazy (mając dwa obrazy trzeba je zaznaczyć jednocześnie, np. za pomocą klawisza CTRL). Obrazy powinny mieć format BMP, 24-bity, RGB, wymiary 94×64 piksele, 96 DPI). Po wybraniu i otwarciu obrazków są wyświetlane ich miniaturki. Przycisk „Zapisz plik .mif” jest aktywny. Po jego kliknięciu program zapyta się, gdzie zapisać wygenerowany plik .mif. Na fotografii 7 pokazano przykładowy efekt działania projektu: wyświetlenie obrazka, miniaturowej fotografii zestawu maXimator na wyświetlaczu OLED. Mateusz Mamala, AGH
Fotografia 7. Wynik działania projektu z przykładu
REKLAMA
104
ELEKTRONIKA PRAKTYCZNA 3/2017
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Elektronika Praktyczna na
Krok po kroku Kursy EP
Pomiary z udostępnieniem wyników w sieci lokalnej Użytkowanie Odroid-C1+ (4) Podczas pracy przy projektach programistycznych, bardzo rzadko używa się wyłącznie jednego języka programowania. Najczęściej projekty są podzielone na moduły, które mogą być tworzone za pomocą różnych narzędzi i bibliotek. Dotyczy to także systemów wbudowanych, zwłaszcza tych działających pod kontrolą systemu operacyjnego, takiego jak Linux. W artykule, będącym kolejną częścią cyklu poświęconego ODROIDowi, zostanie pokazany sposób na pomiar wilgotności oraz temperatury z udostępnieniem wyników w sieci lokalnej, z wykorzystaniem języków C, Python i JavaScript.
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Fotografia 1. Moduł z czujnikiem HTS221 Jako pierwszy zostanie opisany użyty w projekcie, pokazany na fotografii 1, sensor HTS221 (https://goo.gl/AFFkfS). Jest to czujnik wilgotności i temperatury firmy ST, komunikujący się za pomocą interfejsu SPI lub I2C. Przed rozpoczęciem pomiarów nie wymaga kalibracji, ale za to jest konieczna interpolacja zmierzonych wyników za pomocą zapisanych w pamięci urządzenia współczynników. W przykładzie sensor HTS221 dołączono do magistrali I2C Odroida w sposób opisany w tabeli 1.
Sterownik HTS221
Po wykonaniu połączeń czujnika i płytki Odroida, można rozpocząć pisanie sterownika. Podobnie jak w poprzedniej części, zostanie użyty podsystem iio (Industrial Input Output) jądra, jednak tym razem sterownik będzie obsługiwał dwa kanały pomiarowe i jeden kanał do testowania
Tabela 1. Połączenie Odroida z modułem KAmodHTS221 Odroid 1 (3V3)
HTS221 (KAmodHTS221) +VIN
6 (GND)
GND
3 (SDA1)
SDA
5 (SCL1)
SCL
komunikacji z urządzeniem. Do pracy będą oczywiście potrzebne źródła jądra oraz kompilator, co opisano wcześniej. W pierwszym kroku, w katalogu ze źródłami Linuxa, zostaną dodane pliki niezbędne do kompilacji nowego sterownika: • drivers/iio/humidity/Kconfig (dodaje sekcję czujników wilgotności do konfiguracji jądra), # Humidity sensors menu „Humidity sensors” config HTS221 tristate „STMicroelectronics humidity and temperature sensor” depends on I2C help Say yes here to build support for HTS221 humidity and temperature sensor. To compile this driver as a module, choose M here: the module will be called hts221. endmenu • drivers/iio/humidity/Makefile (dodaje kod sterownika do kompilacji jądra) # Makefile for industrial I/O Humidity sensor drivers obj-$(CONFIG _ HTS221) += hts221.o Ponadto, należy zmodyfikować plik drivers/iio/Kconfig, dodając ścieżkę do utworzonego pliku drivers/iio/humidity/Kconfig – source „drivers/iio/humidity/Kconfig”, a w pliku drivers/iio/Makefile podać ścieżkę do nowego katalogu humidity – obj-y += humidity/. Nowy sterownik będzie też wymagał drobnej zmiany w samym podsystemie iio. W pliku nagłówkowym include/linux/iio/types.h, do enumeracji iio_chan_type, zawierającej typy mierzonych wartości, należy dodać dwa pola: IIO_ID oraz IIO_HUMIDITY. Pierwsze z nich będzie używane do sprawdzenia połączenia z sensorem, natomiast drugie do pomiaru wilgotności. Do pomiaru temperatury posłuży istniejące już pole IIO_TEMP. Dodane dwa nowe typy kanałów wymagają także nazw plików tworzonych automatycznie po rejestracji urządzenia wykorzystującego sterownik. Można je ustawić w tablicy iio_chan_type_name_spec, znajdującej się w pliku drivers/iio/industrialio-core.c, dodając na końcu: [IIO _ ID] = „id”, [IIO _ HUMIDITY] = „humidity”, ELEKTRONIKA PRAKTYCZNA 3/2017
105
ELEKTRONIKA PRAKTYCZNA 3/2017
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
106
Krok po kroku Kursy EP
Listing 1. Funkcja hts221_read_raw Po wykonaniu powyższych kroków można static int hts221_read_raw(struct iio_dev *indio_dev, struct iio_chan_spec const *chan, int *val, int *val2, long mask) zabrać się za przygotowanie sterownika. { struct hts221_data *data = iio_priv(indio_dev); Sama struktura kodu jest bardzo podobna char buf[2]; do omawianych poprzednio sterowników int raw; switch (mask) { MCP4716 i MCP3021, dlatego nie będzie tucase (IIO_CHAN_INFO_RAW): switch (chan->type) { taj dokładnie opisywana. Komentarza wymacase (IIO_ID): gają jedynie tablica struktur hts221_channels, hts221_read_i2c_value(data->client, chan->address, buf, 1); *val = (int)buf[0]; struktura hts221_data oraz funkcje hts221_ return IIO_VAL_INT; case (IIO_TEMP): read_raw i hts221_setup. case (IIO_HUMIDITY): hts221_read_i2c_value(data->client, chan->address, buf, 2); Tablica hts221_channels zawiera nie*val = (short)((short)buf[0] + ((short)buf[1] << 8)); zbędne informacje na temat wszystkich kareturn IIO_VAL_INT; default: nałów udostępnianych przez sterownik. return -EINVAL; } W przykładzie wyodrębniono trzy kanały: case (IIO_CHAN_INFO_PROCESSED): switch (chan->type) { 1. IIO_ID służący do testu komunikacase (IIO_TEMP): cji z sensorem poprzez odczyt rejestru hts221_read_i2c_value(data->client, chan->address, buf, 2); raw = (short)((short)buf[0] + ((short)buf[1] << 8)); WHO_AM_I o adresie 0x0F. Po zarejeraw = (raw * data->aTx1000 + data->bTx1000); *val = raw / 1000; strowaniu urządzenia w odpowiednim *val2 = (raw % 1000) * 1000; return IIO_VAL_INT_PLUS_MICRO; katalogu zostanie utworzony plik in_id_ case (IIO_HUMIDITY): raw, którego odczyt zawsze powinien hts221_read_i2c_value(data->client, chan->address, buf, 2); raw = (short)((short)buf[0] + ((short)buf[1] << 8)); zwrócić wartość 0xBC. raw = (raw * data->aHx1000 + data->bHx1000) / 1000; if (raw < 0) *val = 0; .type = IIO _ ID, else if (raw > 100) *val = 100; else *val = raw; .indexed = 0, return IIO_VAL_INT; .info _ mask _ separate = default: return -EINVAL; BIT(IIO _ CHAN _ INFO _ RAW), } default: .address = HTS221 _ WHO _ AM _ I, return -EINVAL; } 2. IIO_TEMP to kanał reprezentujący po} miar temperatury. W przeciwieństwie do poprzedniego, poza bitem IIO_CHAN_ Listing 2. Informacja o sensorze współpracującym z płytką INFO_RAW, ma ustawiony także bit IIO_CHAN_INFO_PROCESi2c@c1108500{ /*I2C-A*/ compatible = „amlogic,aml_i2c”; SED. W rezultacie, po rejestracji, zostaną utworzone dwa pliki: dev_name = „i2c-A”; status = „ok”; in_temp_raw i in_temp_input. Odczyt pierwszego z nich zwróci reg = <0xc1108500 0x20>; 16-bitową wartość ze znakiem, odczytaną z rejestrów 0x2A oraz device_id = <1>; pinctrl-names=”default”; 0x2B, natomiast po odczytaniu drugiego pliku zostanie zwrócona pinctrl-0=<&a_i2c_master>; #address-cells = <1>; wartość temperatury po interpolacji. Ponadto, w adresie rejestru #size-cells = <0>; został ustawiony najstarszy bit, który oznacza inkrementację aduse_pio = <0>; master_i2c_speed = <100000>; 2 resu podczas transakcji na magistrali I C. Może być to wykorzyhts221@5f{ compatible = „st,hts221”; stane do odczytu dwóch lub więcej kolejnych rejestrów urządzenia. reg = <0x5f>; .type = IIO _ TEMP, }; }; .indexed = 0, .info _ mask _ separate = BIT(IIO _ CHAN _ INFO _ RAW) | BIT(IIO _ CHAN _ INFO _ PROCESSED), dodano x1000 w celu podkreślenia, że ich wartości zostały po.address = HTS221 _ TEMP _ OUT | mnożone przez 1000. Mnożenie to jest wykonywane dla unikHTS221 _ INC _ ADDR, nięcia operacji zmiennoprzecinkowych w kodzie modułu jądra, 3. IIO_HUMIDITY jest kanałem służącym do odczytu wilgotnoktórym jest sterownik. Należy mieć na uwadze, że takie podejście zmniejsza dokładność obliczeń podczas interpolacji. ści, skonfigurowanym tak samo, jak kanał temperatury. Po reSpośród funkcji znajdujących się w sterowniku HTS221 warto jestracji generuje pliki in_humidity_raw i in_humidity _input. .type = IIO _ HUMIDITY, zwrócić szczególną uwagę na hts221_setup. Jest ona wywoływana .indexed = 0, podczas rejestracji urządzenia i wykonuje jego konfigurację oraz .info _ mask _ separate = BIT(IIO _ CHAN _ INFO _ oblicza współczynniki prostych interpolacyjnych na podstawie RAW) | BIT(IIO _ CHAN _ INFO _ PROCESSED), odczytanych rejestrów kalibracyjnych. Przy ich odczycie należy .address = HTS221 _ HUMIDITY _ OUT | zwrócić uwagę na to, które są wartościami ze znakiem, a które bez. HTS221 _ INC _ ADDR, Funkcja hts221_read_raw jest z kolei wywoływana przy każdym Dane sterownika przechowywane są w strukodczycie plików sterownika. Na podstawie przekazywanych arturze hts221 _ data: gumentów decyduje ona, który kanał jest odczytywany i czy nastruct hts221 _ data { leży zwrócić wartości bezpośrednio odczytane z rejestrów, czy też struct i2c _ client *client; interpolowane. Decyzja o wartości zwracanej podejmowana jest int aHx1000; na podstawie argumentów mask i chan (pole type). Wartości wilgotint bHx1000; ności są liczbami całkowitymi od 0 do 100. Natomiast temperatura int aTx1000; jest zwracana jako liczba z przecinkiem, której część całkowita jest int bTx1000; wpisywana do zmiennej val, a ułamkowa do val2. Funkcja musi }; zwrócić typ odczytywanej wartości, lub informację o błędzie. Kod funkcji hts221_read_raw przedstawiono na listingu 1. InformaSą to: wskaźnik na klienta i2c (dostarczany podczas rejestracji) oraz współczynniki a i b prostych do interpolacji wyników cję o współpracującym sensorze, podobnie jak w przypadku poprzednich urządzeń, należy umieścić w pliku arch/arm/boot/dts/ pomiaru temperatury i wilgotności. Do nazw współczynników
Krok po kroku Kursy EP Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Listing 3. Aplikacja odczytująca wyniki pomiarów i umieszczająca je w bazie danych / meson8b_odroidc.dts w sekcji mahome/odroid/measurements/measurements_database #include gistrali I2C-A (listing 2). #include #include Po przygotowaniu kodu sterow#include nika można przygotować jądro #include do kompilacji wywołując kolejno: static bool executeStatement(sqlite3* database, const char* statement) { make ARCH=arm CROSS _ COMchar* errMsg; PILE=arm-linux-gnueabihfif(sqlite3_exec(database, statement, NULL, NULL, &errMsg) != SQLITE_OK) { fprintf(stderr, „Can’t create table: %s\n”, errMsg); odroidc _ defconfig return false; } make ARCH=arm CROSS _ COMreturn true; } PILE=arm-linux-gnueabihfmenuconfig int main(int argc, char* argv[]) { Następn ie na leż y dodać sqlite3* database; //Open the measuements database. do kompilacji jądra sterownik I2C, const char* databasePath = „/home/odroid/measurements/measurements_database”; if(sqlite3_open(databasePath, &database) != SQLITE_OK) { podsystem IIO i napisany sterowfprintf(stderr, „Can’t open database: %s\n”, sqlite3_errmsg(database)); nik HTS221: sqlite3_close(database); return -1; Device Drivers > Amlogic } //Create measurements table if not exists. Device Drivers > I2C Hardconst char* createTableStatement = „CREATE TABLE IF NOT EXISTS measurements „ ware Bus support > Amlogic „(Timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,” I2C Driver „ Humidity INT NOT NULL,” „ Temperature REAL NOT NULL)”; Device Drivers > Indusif(!executeStatement(database, createTableStatement)) { sqlite3_close(database); trial I/O support return -1; } Device Drivers > In//Read humidity and temperature from HTS221 driver. dustrial I/O support > const char* humidityFilePath = „/sys/bus/iio/devices/iio:device0/in_humidity_input”; const char* temperatureFilePath = „/sys/bus/iio/devices/iio:device0/in_temp_input”; Humidity sensors > STMichar valueStr[128]; int fd; croelectronics humidity int humidity; float temperature; and temperature sensor if((fd = open(humidityFilePath, O_RDONLY)) < 0) { Ostatni z nich warto dodać jako fprintf(stderr, „Error opening file for read: %s\n”, humidityFilePath); return -1; moduł, zwłaszcza podczas testo} if(read(fd, valueStr, 128) <= 0) { wania. Dzięki temu wystarczy wyfprintf(stderr, „Error reading file: %s\n”, humidityFilePath); return -1; mienić moduł na karcie SD (/lib/ } modules/3.10.104/kernel/drivers/iio/ if(close(fd)<0) { printf(„Error closing file: %s\n”, humidityFilePath); humidity/hts221.ko, ścieżka może się return 1; } różnić w zależności od wersji źróhumidity = atoi(valueStr); if((fd = open(temperatureFilePath, O_RDONLY)) < 0) { deł), bez potrzeby ponownej kompifprintf(stderr, „Error opening file for read: %s\n”, temperatureFilePath); lacji całego jądra. Kompilację należy return -1; } przeprowadzić za pomocą poleceń: if(read(fd, valueStr, 128) <= 0) { fprintf(stderr, „Error reading file: %s\n”, temperatureFilePath); make ARCH=arm CROSS _ COMreturn -1; } PILE=arm-linux-gnueabihfif(close(fd)<0) { make ARCH=arm CROSS _ COMprintf(„Error closing file: %s\n”, temperatureFilePath); return 1; PILE=arm-linux-gnueabihf} temperature = atof(valueStr); modules //Insert measured values into database. char insertDataStatement[128]; make ARCH=arm CROSS _ COMsprintf(insertDataStatement, „INSERT INTO measurements (Humidity, Temperature) VALPILE=arm-linux-gnueabihfUES (%d, %f)”, humidity, temperature); INSTALL _ MOD _ PATH=../ if(!executeStatement(database, insertDataStatement)) { sqlite3_close(database); modules modules _ install return -1; } make ARCH=arm CROSS _ COMsqlite3_close(database); PILE=arm-linux-gnueabihfreturn 0; } uImage make ARCH=arm CROSS _ COMPILE=arm-linux-gnueabihf- dtbs na jej kilka cech mających znaczenie w zastosowaniu w systemach Po zakończeniu skopiować obraz jądra (./arch/arm/boot/uImage) wbudowanych. Nie wymaga ona serwera ani konfiguracji i jest wiwraz z drzewem urządzeń (./arch/arm/boot/dts/meson8b_odroidc. doczna jako plik w lokalnym systemie plików. Komunikacja z nią dtb) na partycję BOOT karty SD, a moduły na partycję systemową odbywa się za pomocą zapytań języka SQL. Aby w kodzie programu można było korzystać z bazy danych do katalogu /lib/. Powyższe kroki zostały dokładniej opisane w poprzednich częściach cyklu. należy dołączyć nagłówek #include . Następnie można Po uruchomieniu Odroida powinien zostać utworzony katalog wywołać m. in. funkcje: /sys/bus/iio/devices/iio:device0 zawierający pliki sensora HTS221 • sqlite3_open, (rysunek 2). Jego działanie można zweryfikować odczytując plik • sqlite3_exec, in_id_raw, który powinien zawierać wartość 188. • sqlite3_close. Pierwsza z nich otwiera połączenie z bazą danych, druga umożliwia wykonywanie zapytań SQL przekazywanych jako łańcuchy znaPomiary i baza danych Kolejnym krokiem jest przygotowanie programu, który będzie ków, natomiast ostatnia zamyka połączenie. Przykładowe zapytania to: w stanie odczytać i zarchiwizować wyniki pomiarów w bazie • Utworzenie tabeli o nazwie measurements w bazie (o ile tabela danych. Do przykładu została wybrana baza SQLite ze względu o podanej nazwie nie istnieje) – tabela będzie zawierała trzy
ELEKTRONIKA PRAKTYCZNA 3/2017
107
Aplikacja webowa
108
ELEKTRONIKA PRAKTYCZNA 3/2017
var mychart = document.getElementById(„humidityChart”).getContext(„2d”); steps = 10 max = 100 min = 0 var humidityChart = new Chart(mychart).Line(lineData, { scaleOverride: true, scaleSteps: steps, scaleStepWidth: Math.ceil(max / steps), scaleStartValue: 0, scaleShowVerticalLines: true, scaleShowGridLines : true, barShowStroke : true, scaleShowLabels: true, });
Poprzednie części kursu i dodatkowe materiały dostępne są na FTP: ftp://ep.com.pl, user: 77322, pass: 8qxonzsb
Trzecią i jednocześnie ostatnią warstwą projektu jest aplikacja webowa prezentująca wyniki pomiarów odczytane z bazy danych. Do tego zadania wybrany został Python wraz z frameworkiem Flask i skryptami JavaScript Chart.js. Dzięki takiemu połączeniu można w bardzo łatwy sposób wygenerować wykresy danych pomiarowych i udostępnić je w sieci lokalnej do wyświetlenia za pośrednictwem przeglądarki internetowej. Na początek trzeba zainstalować na ODROIDzie menadżera bibliotek Pythona i pakiet Flask: sudo apt-get install python-pip sudo pip install flask Sama aplikacja Pythona jest bardzo prosta i sprowadza się do kilku operacji. Pierwszą z nich jest otworzenie połączenia z bazą danych za pomocą wywołania sqlite3. connect, które przyjmuje pełną ścieżkę do pliku utworzonego przez program zapisujący dane, z poprzedniego rozdziału. Otrzymane połączenie można wykorzystać do pobrania danych z bazy SQLite: SELECT * FROM (SELECT time(Timestamp, ‚localtime’) AS LocalTimestamp, Humidity, Temperature FROM measurements ORDER BY Timestamp DESC LIMIT 80) ORDER BY LocalTimestamp ASC Oznacza ono, że ze wszystkich danych tabeli measurements, posortowanych według malejących znaczników czasowych, zostanie pobranych 80 pierwszych wyników i uszeregowanych rosnąco. Równie dobrze