5/2013
P O M I A RY • A U T O M AT Y K A • R O B O T Y K A
PAR miesięcznik naukowo-techniczny
ISSN 1427-9126 Indeks 339512 Cena 10,00 zł w tym 8 % VAT
www.par.pl
Bądź innowacyjny w automatyce napędowej, zaufaj ekspertom Danfoss i produktom marki VLT® AutomationDrive Najlepszą kontrolę silnika elektrycznego napędzającego maszynę zapewni przetwornica częstotliwości VLT®. Danfoss dzięki globalnej organizacji sprzedaży i serwisu jest obecny i oferuje swoje produkty oraz usługi w ponad 100 krajach. Także w Polsce nasi eksperci służą Klientom fachowym doradztwem.
to rok w historii, kiedy Danfoss, jako pierwsza firma na świecie, rozpoczął masową produkcję przetwornic częstotliwości o nazwie VLT®
www.danfoss.pl/napedy
Danfoss Poland Sp. z o.o., ul. Chrzanowska 5, 05-825 Grodzisk Mazowiecki Telefon: (48 22) 755 06 68 telefax: (48 22) 755 07 01 vlt@danfoss.pl
.
THE REAL DRIVE
Temat Numeru
rozmowa par
dodatek specjalny
Termowizja i systemy wizyjne
Profesor Józef Piotrowski i Maciej Rzeczkowski z VIGO System
XVII Konferencja Automatyków RYTRO 2013
14
30
57
2
Pobierz bezpłatną aplikację PAR+ i odkryj trzeci wymiar papieru PAR+ to bezpłatna aplikacja mobilna na systemy iOS oraz Android, dzięki której Czytelnicy miesięcznika „Pomiary Automatyka Robotyka” uzyskują bezpośredni dostęp do dodatkowych treści powiązanych z wybranymi publikacjami. PAR jest pierwszym miesięcznikiem naukowo-technicznym w Polsce, który oferuje swoim odbiorcom to unikatowe rozwiązanie. Dzięki PAR+można jednym dotknięciem palca obejrzeć film lub animację powiązaną z artykułem, przejść na stronę internetową lub do galerii zdjęć z wydarzenia opisanego w relacji prasowej, przeczytać rozszerzoną wersję artykułu, przejrzeć i pobrać specyfikację produktu opisywanego w artykule, skomentować artykuł na Facebooku, i wiele, wiele więcej. Więcej informacji na par.pl/plus
Pobierz i uruchom bezpłatną aplikację PAR+
2
Skieruj kamerę telefonu lub tabletu na stronę artykułu oznaczonego ikoną PAR+
3
Na wyświetlaczu urządzenia pojawi się sześcian z logo PAR+ oraz przyciski prowadzące do dodatkowych treści
Zobacz więcej Pobierz bezpłatną aplikację PAR+ App Store | Google Play
VIDEO
Spis treści
Wydarzenia
EuroLab 2013 – nie tylko laboratoria
8
12 kwietnia 2013 r. w Centrum Targowo-Kongresowym MT Polska w Warszawie przy ul. Marsa 56c odbyły się jubileuszowe XV Międzynarodowe Targi Analityki i Technik Pomiarowych EuroLab, połączone z II Międzynarodowymi Targami Techniki Kryminalistycznej CrimeLab. W imprezach tych uczestniczyli liczący się dostawcy aparatury analitycznej działający na polskim rynku.
Nowości
24
Wizja dla automatyki
6
26
Kamery termograficzne SWIR firmy Xenics
Nowe produkty
Wydarzenia
Aplikacje
11
Solution Day – integracja systemów automatyki w praktyce
12
Metrologia w przemyśle – automatyzacja procesów pomiaru masy
52
Kalendarium PAR
Rozmowa PAR
56
Międzynarodowa konferencja Diagnostics of Processes and Systems
30
28
Kaskadowy układ zasilania w wodę sterowany przetwornicą Danfoss VLT Aqua
Łączymy naukę z przemysłem Józef Piotrowski, dyrektor ds. badań i rozwoju, Maciej Rzeczkowski, kierownik Wydziału Elektroniki – VIGO System
Temat numeru Termowizja i systemy wizyjne
Robotyka
20
Czujniki wizyjne BVS
33
22
System wizyjny – niezawodna kontrola nadruków
Temat numeru
Dokładne pomiary wielkości geometrycznych za pomocą systemów wizyjnych
14
Systemy wizyjne realizują różnorodne zadania. W przypadku niektórych z nich, jak kontrola obecności, kontrola poprawności montażu, czytanie kodów lub tekstów, zliczenie elementów, często nie jest potrzebna zaawansowana analiza, by proces zakończył się sukcesem. Natomiast pomiarowe systemy wizyjne są obarczone wymaganiami o innej skali trudności.
4
Miniaturowe złącza elektryczne serii SureCon 360 firmy OMNETICS
54
66
Pierwszy na świecie skaner optyczny 2D umożliwiający pomiar w pełnych 360°!
68
Partner w automatyce
70
Nowoczesne kable i przewody spełniające specyficzne wymagania klienta
72
Manometry: ukryte zagrożenie lub widoczne bezpieczeństwo
Robotyka
Systemy wymiany narzędzi: szybkozłącza do robotów przemysłowych i laboratoryjnych firmy SCHUNK Firma SCHUNK, lider w zakresie produkcji komponentów
Polecane książki 77
Zdzisław Mrugalski: Zegary elektryczne i elektroniczne. Zarys historii
do automatyzacji procesów produkcyjnych, oferuje szeroki wachlarz produktów przeznaczonych do wyposażenia robotów przemysłowych i laboratoryjnych, pozwalający zarówno na tworzenie aplikacji standardowych, jak i dedykowanych do rozwiązań specjalnych.
Automatyka
Nauka 78
Rekonfigurowalny akcelerator kryptograficzny
dr inż. Tomasz Kryjak – AGH Akademia Górniczo-Hutnicza, Wydział EAIiIB, Katedra Automatyki i Inżynierii Biomedycznej
86
Układ elektroniczny cyfrowej syntezy rezystancji do dokładnej symulacji rezystancyjnych czujników temperatury
34
Programowanie sterowników PLC zgodnie z normą IEC 61131-3. Część 3
dr inż. Jacek Korytkowski, prof. PIAP – Przemysłowy Instytut Automatyki i Pomiarów PIAP
44
Śpisz spokojnie dzięki certyfikowanym produktom Festo
93
Robot mobilny o zmiennym sposobie lokomocji – system sterowania
46
JZ20 – nowa generacja sterowników PLC z serii Jazz firmy UNITRONICS
dr inż. Tomasz Winiarski, mgr inż. Dawid Seredyński – Instytut Automatyki i Informatyki Stosowanej, Politechnika Warszawska
100
Realizacja programowa algorytmów filtracji, estymacji i sterowania w PLC/PAC
dr inż. Jarosław Tarnawski – Katedra Inżynierii Systemów Sterowania, Wydział Elektrotechniki i Automatyki, Politechnika Gdańska
Pomiary 48
Pirometry LAB-EL – nie ma się czego bać. Część I
51
Laserowe czujniki dalekiego zasięgu
108
Indeks firm
53
Rejestracja rozkładów temperatury w hutnictwie i odlewnictwie
110
Prenumerata 5/2013
P O M I A RY • A U T O M AT Y K A • R O B O T Y K A
Rytro 2013 59
Przemysłowe elementy grzejne
60
Danfoss Drives światowym liderem w produkcji napędów regulowanych elektronicznie
61
Czujniki bezprzewodowe SureCross Q45
62
System SmartWire-DT w polach kasetowych xEnergy XW
Miesięcznik naukowo-techniczny Pomiary Automatyka Robotyka Rok 17 (2013) nr 5 (195) ISSN 1427-9126, Indeks 339512
PAR miesięcznik naukowo-techniczny
ISSN 1427-9126 Indeks 339512 Cena 10,00 zł w tym 8 % VAT
www.par.pl
Bądź innowacyjny w automatyce napędowej, zaufaj ekspertom Danfoss i produktom marki VLT® AutomationDrive Najlepszą kontrolę silnika elektrycznego napędzającego maszynę zapewni przetwornica częstotliwości VLT®. Danfoss dzięki globalnej organizacji sprzedaży i serwisu jest obecny i oferuje swoje produkty oraz usługi w ponad 100 krajach. Także w Polsce nasi eksperci służą Klientom fachowym doradztwem.
to rok w historii, kiedy Danfoss, jako pierwsza firma na świecie, rozpoczął masową produkcję przetwornic częstotliwości o nazwie VLT®
Na okładce: przetwornica częstotliwości VLT firmy Danfoss
www.danfoss.pl/napedy
Danfoss Poland Sp. z o.o., ul. Chrzanowska 5, 05-825 Grodzisk Mazowiecki Telefon: (48 22) 755 06 68 telefax: (48 22) 755 07 01 vlt@danfoss.pl
.
THE REAL DRIVE
TemaT Numeru
rozmowa par
dodaTek specjalNy
Termowizja i systemy wizyjne
profesor józef piotrowski i maciej rzeczkowski z VIGo system
XVII konferencja automatyków ryTro 2013
14
30
Pomiary Automatyka Robotyka nr 5/2013
57
5
Nowości Nowe produkty
Miniaturowe złącza o rastrze 1,27 mm do montażu obiektowego: har-flexicon
Firma HARTING tworzy nowe standardy w dziedzinie rozwiązań PCB, wprowadzając na rynek har-flexicon – miniaturowe złącza o rastrze 1,27 mm,
przeznaczone do montażu obiektowego. Złącza tej linii służą do łączenia PCB bezpośrednio z przewodami. Wpasowują się one w najnowsze trendy w dziedzinie rozwiązań I/O: umożliwiają szybki i niezawodny montaż bez użycia specjalistycznych narzędzi. Złącza har-flexicon są przystosowane do automatycznego montażu na PCB, co pozwala obniżyć koszty produkcji. Nowa rodzina produktów spełnia aktualne wymogi dotyczące
miniaturyzacji. Najnowsze i najbardziej efektywne urządzenia zawierają coraz większą liczbę komponentów umożliwiających zwiększenie funkcjonalności i zastosowań. Jednakże rosnące nasycenie komponentami pociąga za sobą konieczność ich miniaturyzacji. Ta tendencja dotyczy również klasycznych złączy PCB. Aczkolwiek przy wymaganiach dotyczących redukcji rozmiaru, użytkownicy oczekują równocześnie wysokiej trwałości i jakości
oraz szybkiego montażu. Złącza har-flexicon spełniają te wymagania, są bardzo dobrym przykładem szybkiego i dogodnego montażu dla coraz bardziej kompaktowych urządzeń, dla których istotne jest obniżenie kosztów montażu. HARTING Polska Sp. z o.o. ul. Duńska 9, 54-427 Wrocław tel. 71 352 81 71 fax 71 350 42 13 e-mail: pl@HARTING.com www.HARTING.pl
Programowalny skaner liniowy OptiLineScan OptiLineScan – autorskie rozwiązanie firmy OptiNav – to programowalny skaner liniowy, w którym na długości 215 mm zastosowano 64 punkty pomiarowe w postaci fototranzystorów. Skaner ma zastosowanie wszędzie tam, gdzie ilość miejsca jest ograniczona i nie można umieścić tradycyjnej kamery liniowej. W przypadku OptiLineScan wystarczy 20 mm
skanująca sterowana jest komputerem jednopłytkowym (sbRIO firmy NI) z systemem operacyjnym czasu rzeczywistego.
OPTINAV Sp. z o.o. ul. H. Sienkiewicza 5a
przestrzeni (np. nad przesuwającą się linią produkcyjną). Cechuje go też wysoka elastyczność w zakresie montażu nad
ruchomą linią – skaner ten może pracować w odległości od kilku do kilkudziesięciu milimetrów nad skanowanym obiektem. Płytka
na przykład proste korbki. Rękojeść składa się ze stalowej tulei, na której obrotowo zamocowany jest dwustopniowy korpus z poliamidu. Stopniowany kształt korpusu gwarantuje pewny chwyt dłonią. Tuleja natomiast (na powierzchni oporowej) ma specjalne radełkowanie,
zapobiegające jej obracaniu podczas dokręcania rękojeści. Najczęstsze zastosowanie rękojeści obrotowych to wszelkiego typu elementy
76-200 Słupsk tel. 662 010 174, 501 664 562 e-mail: info@optinav.pl www.optinav.pl
Rękojeść obrotowa GN 798.2
6
Promocja
napędu ręcznego, takie jak korby czy koła ręczne.
ELESA+GANTER Polska Sp. z o.o. tel. 22 737 70 47 fax 22 737 70 48 e-mail: egp@elesa-ganter.com.pl www.elesa-ganter.pl www.elesa-ganter.info.pl
Fot. HARTING, Optinav, Elesa+Ganter, Elmark
W ofercie Elesa+Ganter Polska jest już dostępna najnowsza rękojeść obrotowa o oznaczeniu GN 798.2. Jest to pierwszy element tego typu w ofercie firmy. Zamiast nagwintowanej szpilki ma on otwór z gwintem wewnętrznym. Rozwiązanie zaprojektowano z myślą o mocowaniu do elementów, których ramię jest wykonane z cienkiej blachy, jak
ICRON USB 3.0 Spectra 3022 – rozszerzenie transmisji dwóch portów USB 3.0 do 100 m przez światłowód wielomodowy Icron to lider w projektowaniu wysokiej jakości urządzeń pozwalających na rozszerzenie transmisji wideo i USB w aplikacjach przemysłowych i konsumenckich. Firma w związku z coraz większą popularnością interfejsu USB 3.0 wprowadziła do oferty urządzenie pozwalające rozszerzyć jego właściwości. W standardowym wydaniu umożliwia on jedynie transmisję na odległość do 3 m, co w zastosowaniach przemysłowych jest zdecydowanie zbyt małą wartością. Dobrym rozwiązaniem okazuje się nowy produkt firmy Icron – Spectra 3022.
Umożliwia on wydłużenie transmisji dwóch portów USB 3.0 do 100 m z wykorzystaniem światłowodu wielodomowego w standardzie OM3. Stosowanie tego rozwiązania nie wpływa negatywnie na przepustowość standardu 3.0 i wynosi 5 Gbps oraz zapewnia wydajność prądową do 900 mA. Pozwala to na przykład na bezpośrednie podłączenie kamery USB3 Vision. Niewątpliwą zaletą tego produktu jest także niezwykle prosta instalacja plug&play. Spectra 3022 jest kompatybilny z systemami Windows, Mac OS X oraz Linux, dzięki
czemu nie wymaga instalacji żadnych dodatkowych sterowników. Zadaniem użytkownika jest jedynie zestawienie pożądanego połączenia. Dzięki swoim parametrom urządzenie znajduje coraz większe zastosowanie w aplikacjach przemysłowych – wszędzie tam, gdzie standardowy zasięg USB 3.0 to za mało. Właściwości: • rozszerzenie dystansu USB 3.0 do 100 m, • prędkość transmisji do 5 Gbps,
• wsparcie dla Windows, Mac OS X oraz Linux, • intuicyjne podłączenie (plug&play), • kompatybilność ze standardem USB3 Vision, • dwa lata gwarancji.
rozładowaniem akumulatora. Urządzenia te pracują przy swobodnej konwekcji powietrza, a szeroki zakres temperatury pracy, od – 20 °C do +70 °C,
umożliwia ich stosowanie zarówno wewnątrz, jak i na zewnątrz obiektów.
Więcej informacji można znaleźć na stronie www.elmark.com.pl/ products/produkty/index. php?id=1252.
ELMARK Automatyka Sp. z o.o. www.elmark.com.pl
Fot. HARTING, Optinav, Elesa+Ganter, Elmark
Zasilacz z wyjściem ładowania akumulatora
Jednym z głównych wymagań dotyczących systemów związanych z bezpieczeństwem jest zapewnienie ciągłości zasilania, niezależnie od napięcia dostarczanego z sieci. Zasilacze AD-55 i AD155 doskonale nadają się do systemów alarmowych, monitoringu, kontroli dostępu lub innych tego typu aplikacji, w których nieprzerwane i niezawodne zasilanie ma kluczowe znaczenie. W czasie normalnej pracy zasilacz dostarcza napięcie do zasilania podłączonego
odbiornika i jednocześnie ładuje akumulator. W przypadku braku zasilania sieciowego urządzenie czerpie energię z podłączonego akumulatora. Modele AD-55 (55 W), ADD-155 (155 W) występują w dwóch wersjach z podwójnym wyjściem 13,8 V DC lub 27,6 V DC. Napięcie jednego z wyjść można regulować za pomocą trymera w zakresie 12– 15 V i 24– 29 V, natomiast drugie ma stałą wartość i jest przeznaczone do ładowania zewnętrznego akumulatora 12 V lub 24 V. Modele ADD różnią się od AD dodatkowym wyjściem 5 V. Standardowo zasilacze wyposażone są w zabezpieczenia przeciwzwarciowe, nadnapięciowe, przeciążeniowe oraz dodatkowo w zabezpieczenie przed odwrotnym podłączeniem i nadmiernym
ELMARK Automatyka Sp. z o.o. www.elmark.com.pl
REKLAMA
Pomiary Automatyka Robotyka nr 5/2013
7
Wydarzenia Relacje
EuroLab 2013 – nie tylko laboratoria 12 kwietnia 2013 r. w Centrum Targowo-Kongresowym MT Polska w Warszawie przy ul. Marsa 56c odbyły się jubileuszowe XV Międzynarodowe Targi Analityki i Technik Pomiarowych EuroLab, połączone z II Międzynarodowymi Targami Techniki Kryminalistycznej CrimeLab. W imprezach tych uczestniczyli liczący się dostawcy aparatury analitycznej działający na polskim rynku.
Mikroskop VW-9000 firmy Keyence
8
nowoczesnych laboratoriów, szeroko rozumianych jako aparatura i elementy towarzyszące, aż po odzież ochronną i środki czystości – powiedział podczas uroczystego otwarcia piętnastej edycji targów EuroLab i drugiej CrimeLab prof. dr hab. Michał Kleiber, patron honorowy targów.
Terminal wagowy hty4f 300 c4 firmy Radwag
Fot. PAR
– Teoria musi iść ramię w ramię z eksperymentem. Eksperyment wymaga laboratoriów, a laboratoria wymagają wyposażenia. Krótko mówiąc, z punktu widzenia nowoczesnego państwa i nowoczesnej gospodarki wspomaganej przez naukę, nie można sobie wyobrazić nauki, która nie ma do dyspozycji
www.schmersal.pl Podczas trwających trzy dni targów, w Centrum Targowo-Kongresowym MT Polska w Warszawie przy ul. Marsa 56c ofertę zaprezentowało 170 wystawców, a same targi odwiedziło ponad 5700 osób. Odbyło się 17 merytorycznych wydarzeń towarzyszących, w których udział wzięło łącznie około 1500 osób. W trakcie tegorocznej imprezy wyraźnie widać było wzrost znaczenia dostawców zaawansowanych technologii pomiaru masy. Wśród firm oferujących najwyższej klasy wagi laboratoryjne wyróżniała się firma Radwag. W jej ofercie znajdują się nie tylko zaawansowane wagi analityczne o wysokiej dokładności, ale także wyrafinowane wagosuszarki oraz urządzenia do odmierzania płynów. Warto zauważyć, że Radwag to polski producent wag, którego oferta powstaje w rezultacie własnych prac badawczych i rozwojowych. Produkty tej firmy lokują się w obszarze najbardziej zaawansowanych rozwiązań technologicznych w przyrządach do pomiaru masy. Nowością targów EuroLab była prezentacja możliwości laboratoriów Generalnej Dyrekcji Dróg Krajowych i Autostrad oraz Instytutu Badawczego Dróg i Mostów. Podczas imprezy zaprezentowało się także wiele innych firm i instytucji zajmujących się analizą jakości inwestycji drogowych. Na targach CrimeLab przedstawiona została oferta narzędzi oraz aparatury wykorzystywanej w badaniach miejsc zdarzeń, w tym w ujawnianiu, dokumentowaniu i zabezpieczeniu materiału dowodowego, a także w laboratoryjnych badaniach kryminalistycznych. Zaprezentowano też systemy informatyczne wspomagające procesy identyfikacji oraz zarządzanie obiegiem materiału dowodowego. Na wyróżniającym się stoisku Centralnego Laboratorium Kryminalistycznego Policji można było zapoznać się z działalnością tego instytutu oraz jego projektami badawczo-rozwojowymi z dziedziny kryminalistyki, jak również z ofertą
Wyłącznik bezpieczeństwa AZ 16 Milion zastosowań na całym świecie Bezpieczne przełączanie i monitorowanie n Wyłączniki do kontroli otwarcia osłon n Urządzenia sterownicze z funkcją bezpieczeństwa n Naciskowe urządzenia bezpieczeństwa n Optoelektroniczne urządzenia bezpieczeństwa Moduły i sterowniki programowalne n Moduły przekaźnikowe bezpieczeństwa n Sterowniki programowalne bezpieczeństwa n Przemysłowe sieci bezpieczeństwa Automatyka przemysłowa
Warsztaty „Miejsce zdarzenia” na stoisku Centralnego Laboratorium Kryminalistycznego Policji
reklama
Fot. PAR
n Pozycjonowanie n Osprzęt tablicowy
Pomiary Automatyka Robotyka nr 3/2013
9
Wydarzenia Relacje
wydawniczą. Ciekawostką targów CrimeLab była możliwość wypróbowania tzw. wykrywacza kłamstw (czyli wariografu) oraz zobaczenia, jak wykonuje się portrety pamięciowe. Podczas tegorocznej imprezy Centralne Laboratorium Kryminalistyczne Policji wraz z Europejską Siecią Instytutów Nauk Sądowych oraz Fundacją Europejskie Centrum Inicjatyw w Naukach Sądowych zorganizowały międzynarodową konferencję naukową zatytułowaną „Miejsce zdarzenia”. Zaprezentowano aktualnie prowadzone prace badawczo-rozwojowe z zakresu techniki kryminalistycznej, między innymi najnowsze metody identyfikacji substancji stosowane na potrzeby wymiaru sprawiedliwości, opracowanie metody replikacji śladów kryminalistycznych oraz badanie prędkości pocisków o niskiej energii. Szczególnie przyciągało uwagę nowatorskie rozwiązanie dedykowane specjalistom kryminalistyki pracującym w niebezpiecznych warunkach – zdalnie sterowany robot kryminalistyczny, który pomaga zabezpieczać ślady na miejscu zdarzenia. Choć targi EuroLab skierowane są przede wszystkim do osób z branży laboratoryjnej, pojawili się na nich także przedstawiciele firm nieobcych i automatykom, takich jak choćby Flir, Raytek, Keyence czy Merazet. Ich oferta była oczywiście dostosowana do profilu odbiorców targów. A skoro o zwiedzających mowa – z rozmów z wystawcami wynika, że tym, co wyróżnia targi EuroLab, jest – obok bardzo profesjonalnej organizacji całej imprezy – możliwość nawiązania owocnych kontaktów biznesowych z wyjątkowo dobrze stargetowanym klientem. Przychodzi on na targi z konkretnym problemem, a swoje kroki zwykle od razu kieruje w stronę wybranych stoisk. Niewielu jest tu przypadkowych gapiów czy tzw. kolekcjonerów gadżetów, a to głównie za sprawą rejestracji zwiedzających. Skutecznie zniechęca to osoby spoza branży, stwarzając tym samym dogodniejsze warunki do
Stoisko firmy LAB-EL Elektronika Laboratoryjna
10
Centralne Laboratorium Kryminalistyczne Policji – Instytut Badawczy
nawiązywania relacji biznesowych. Rozwiązanie to na pewno warto zarekomendować organizatorom targów z branży automatyki i pomiarów przemysłowych. PAR, mat. pras. MT Targi
Stoisko firmy Merazet
Zapowiedzi
Wydarzenia
Solution Day – integracja systemów automatyki w praktyce Firma B&R, wraz z firmami współpracującymi: ASCO Numatics, Cognex, Copa-Data, zaprasza na jednodniowe praktyczne seminaria skierowane do osób projektujących, modernizujących, budujących lub użytkujących systemy automatyzacji maszyn i linii technologicznych. Odbędą się one we Wrocławiu (23 maja 2013), Gdańsku (28 maja 2013) i Krakowie (6 czerwca 2013). Tematem przewodnim spotkań będzie pokazanie, jak za pomocą ethernetowych sieci czasu rzeczywistego łatwo i skutecznie integrować tak różne obszary automatyki, jak: systemy sterowania i wizualizacji, przemysłowe systemy wizyjne, inteligentne rozwiązania pneumatyki, wraz z ich monitorowaniem i diagnostyką. Uczestnicy dowiedzą się, w jaki sposób, wykorzystując proste i niedrogie rozwiązania automatyzacji: • rozwiązać kwestie predykcyjnego utrzymania i wdrożyć monitorowanie stanu maszyn, • rozwiązać zagadnienia monitorowania energii,
• dokonać wizualizacji procesów, • zastosować system wizyjny, • wybrać najlepszą pneumatykę do własnych zastosowań. Zaprezentowane zostaną też stanowiska demonstracyjne dotyczące wymienionych zagadnień. Do dyspozycji uczestników spotkania będą specjaliści – inżynierzy z wiodących firm o zasięgu globalnym, reprezentujący takie branże, jak: • zintegrowane systemy automatyzacji (B&R), • systemy wizyjne i czytniki kodów (Cognex), • oprogramowanie do automatyki przemysłowej (Copa-Data),
• pneumatyka siłowa (ASCO Numatics). Solution Day to dzień praktycznych rozwiązań i inżynierskiej wymiany wiedzy. Udział w seminarium przedstawicieli firm jest bezpłatny. Uwaga: liczba miejsc jest ograniczona (decyduje kolejność zgłoszeń). Dodatkowe informacje i formularz zgłoszeniowy są dostępne na stronie www.br-automation.com/SolutionDay. Serdecznie zapraszamy do wzięcia udziału w seminarium.
Mat. pras. B&R
Fot. PAR, B&R
REKLAMA
Pomiary Automatyka Robotyka nr 5/2013
11
Wydarzenia ZAPOWIEDZI
Metrologia w przemyśle – automatyzacja procesów pomiaru masy W dniach 4–18 czerwca 2013 r. odbędą się bezpłatne seminaria naukowo-techniczne, organizowane przez firmę Radwag Wagi Elektroniczne oraz Centrum
Radwag Wagi Elektroniczne już po raz piąty organizuje duży cykl seminariów naukowo-technicznych odbywających się na terenie całego kraju. Obecne przedsięwzięcie jest kontynuacją działalności edukacyjno-informacyjnej w zakresie dobrych praktyk metrologicznych, zapoczątkowanej w 2008 r. cyklem seminariów „Ważenie – teoria i praktyka”
i kontynuowanej w kolejnych latach poprzez projekty: „Kontrola towarów paczkowanych – optymalizacja procesu”, „Metrologia pipet tłokowych” oraz „Analiza ryzyka w pomiarach masy”. Warto podkreślić, że we wszystkich poprzednich projektach – realizowanych głównie w formule otwartej – w całej Polsce wzięło udział ponad trzy tysiące osób.
Metrologii im. Zdzisława Rauszera. Seminaria przeznaczone są
m.in. kadry technicznej zakładów przemysłowych oraz pracowników naukowych placówek dydaktycznych i jednostek badawczych.
12
Promocja
Fot. Radwag Wagi Elektroniczne
dla szerokiego grona odbiorców,
Tematyka Celem seminarium jest omówienie i przedstawienie obecnego poziomu stanu techniki w obrębie przemysłowych systemów pomiaru masy, związanych z tymi pomiarami układów sterowania oraz archiwizacji i obróbki danych. Prelegenci skupią się na przedstawieniu obecnych trendów w systemach kontroli towarów paczkowanych przeprowadzanych metodami referencyjną i stuprocentową. Omówione zostaną systemy dozujące oraz układy sprzężenia zwrotnego wag z układami pakującymi i ich wpływ na poprawę ekonomiki produkcji oraz ograniczenie strat własnych zakładu. Na przykładzie autorskich rozwiązań firmy Radwag zaprezentowane zostaną systemy nadzorowania rozproszonych układów wagowych oraz metody obróbki i archiwizacji danych. Wstępem do tych zagadnień będzie blok poświęcony tematyce metrologii prawnej, błędom pomiarów masy oraz klasyfikacji pomiarów masy w przemyśle.
Prelegenci Seminaria poprowadzą pracownicy laboratoriów Radwag oraz działów
badawczo-rozwojowych systemów przemysłowych, mający wieloletnie doświadczenie w dziedzinie zagadnień metrologii przemysłowej, systemów pomiaru masy w procesach produkcyjnych, walidacji, systemów zarządzania oraz eksploatacji przemysłowych wag elektronicznych. Podczas seminariów prezentowane będą w formie wystawy rozwiązania autorskie firmy Radwag, umożliwiające praktyczne zapoznanie się z tym, co będzie stanowiło tematykę spotkania.
Program • wprowadzenie do metrologii oraz podstawowe pojęcia metrologiczne, • zagadnienia metrologii prawnej w odniesieniu do wag i wzorców masy, • metrologia pomiarów masy, podział oraz charakterystyki wag, • błędy pomiaru masy – błędy wag oraz niepewności pomiaru masy, • klasyfikacja pomiarów masy w przemyśle, • dynamiczne pomiary masy – wagi automatyczne, • automatyzacja systemów pomiarowych, • komputerowe wspomaganie procesów ważenia, • wymagania prawne oraz metody kontroli towarów paczkowanych.
Terminy
Fot. Radwag Wagi Elektroniczne
• • • • • •
Gdańsk – 04.06.2013, Poznań – 05.06.2013, Wrocław – 06.06.2013, Kraków – 11.06.2013, Katowice – 12.06.2013, Warszawa – 18.06.2013. Tradycyjnie uczestnicy otrzymają materiały informacyjne dotyczące omawianych zagadnień oraz certyfikat potwierdzający udział w seminarium.
RADWAG Wagi Elektroniczne ul. Bracka 28, 26-600 Radom tel./fax 48 384 88 00 www.radwag.pl
Pomiary Automatyka Robotyka nr 5/2013
13
Temat numeru Termowizja i systemy wizyjne
Dokładne pomiary wielkości geometrycznych za pomocą systemów wizyjnych Systemy wizyjne realizują różnorodne zadania. W przypadku niektórych z nich, jak kontrola obecności, kontrola poprawności montażu, czytanie kodów lub tekstów, zliczenie elementów, często nie jest potrzebna zaawansowana analiza, by proces zakończył się sukcesem. Natomiast pomiarowe systemy wizyjne są obarczone wymaganiami o innej skali trudności. Rys. 1. Pomiar kąta z czterech punktów konturu
1. Projektowanie urządzeń pomiarowych Pomiar to porównanie mierzonego wymiaru z wzorcem. Oznacza to, że: • albo przed pomiarem, np. po zmontowaniu systemu wizyjnego, system musi zostać skalibrowany na wzorcu i od momentu kalibracji do momentu pomiaru istotne parametry systemu (np. geometria układu) nie mogą ulec zmianie, • albo w każdym pomiarze (w każdym obrazie) widoczny jest i mierzony obiekt, i wzorzec kalibracyjny. Zarówno kalibracja początkowa, jak i jednoczesna rejestracja obrazu wzorca oraz obiektu wymagają zachowania pełnej kontroli nad geometrią systemu, zwłaszcza nad powiększeniem optycznym. Konsekwencją takiej definicji pomiaru jest definicja błędu pomiaru:
14
Błąd pomiaru (E) jest sumą błędu kalibracji (Ek) i błędu porównania podczas pomiaru (Ep). Błąd systematyczny wyliczymy z sumy arytmetycznej: E = Ek + Ep
(1)
a błędy przypadkowe lub zakres niepewności pomiarowej z sumy geometrycznej: E = √ [Ek^2 + Ep^2]
(2)
Sens praktyczny jest następujący: • jeśli wzorzec ma stały błąd, np. „–0,2 mm”, a stały błąd porównania wynosił np. „+0,3 mm”, to błąd kalibracji wynosi: –0,2 +0,3 = +0,1 mm, • jeśli przedział niepewności wymiaru wzorcowego wynosi np. „±0,2 mm”, a przedział niepewności dla samego pomiaru wzorca wynosi np. „±0,3 mm”, to błąd kalibracji wynosi: √ (0,2^2 + 0,3^2) = ±0,36 mm.
Model matematyczny Pierwszym etapem projektowania układu pomiarowego jest stworzenie koncepcji i jej modelu matematycznego. Zmierzenie odległości dwóch krawędzi daje wynik „P” px. Najprostszy model matematyczny pomiaru odległości to: W = P × S
(3)
gdzie: W = wymiar odległości krawędzi [mm], P = odległość zmierzona na obrazie [px], S = skala, czyli wynik kalibracji systemu [mm/px].
Fot. Imaco
Wielu integratorów systemów wizyjnych, zwłaszcza automatyków i informatyków, podejmuje się realizacji wizyjnych systemów pomiarowych, nie będąc świadomym metodyki ich projektowania i stopnia trudności. Poniżej przedstawiono wybrane zagadnienia dotyczące projektowania wizyjnego systemu pomiarowego. Nie wszystkie zadania wizyjne są bardzo skomplikowane. Realizacja wielu z nich może się udać z pominięciem przedstawionej poniżej analizy, zwłaszcza gdy zadanie pomiarowe jest proste, a wymagana dokładność pomiaru nie jest wysoka. Jeśli jednak błąd pomiaru ma być mały lub mierzonego wymiaru nie widać bezpośrednio na obrazie, pomiar jest pośredni, wówczas jest bardzo prawdopodobne, że bez dogłębnej analizy zadania i rachunku błędów projekt zakończy się niepowodzeniem.
Przypadek nieco bardziej złożony to np. pomiar kąta pomiędzy dwiema krawędziami wykroju blachy (zakładam równą grubość wzorca i mierzonej blachy); rys. 1. Po wyskalowaniu systemu na płaskim wzorcu uzyskamy skalę obrazu „S” [mm/px]. Wyznaczając z obrazu współrzędne X i Y czterech punktów (po dwa punkty na każdej krawędzi), uzyskujemy dane do obliczenia kąta pomiędzy tymi krawędziami. ALFA = ATG[(Y2*S – Y1*S)/(X2*S – X1*S)] – – ATG[(Y4*S – Y3*S)/(X4*S – X3*S)] = = ATG[(Y2 – Y1)/(X2 – X1)] – ATG[(Y4 – Y3)/(X4 – X3)] (4) Jak widać, wynik pomiaru kąta ALFA jest niezależny od skali „S”, a więc pomiar kąta nie wymaga kalibracji (jeśli pominiemy problem dystorsji obiektywu, czyli nierównomierności skali na obszarze obrazu).
Rachunek błędów = różniczka zupełna Rachunek błędów oparty jest na różniczce zupełnej, która jest działaniem określającym, jak zmienia się wartość funkcji w wyniku zmian wartości zmiennych wejściowych. n dF = ∑ ∂(F)/∂(Xi) * dXi i = 1
co po wyliczeniu różniczek: (∂(ALFA)/∂X1)^2 = [(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * ((Y2 – Y1)/(X2 – X1)^2)]^2 (∂(ALFA)/∂X2)^2 = [(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * – ((Y2 – Y1)/(X2 – X1)^2)]^2 (∂(ALFA)/∂Y1)^2 = [(1/ (1 + ((Y2 – Y1)/(X2 – X1))^2)) * * – (1/(X2 – X1))]^2 (∂(ALFA)/∂Y2)^2 = [(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * (1/(X2 – X1))]^2 (∂(ALFA)/∂X3)^2 = [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * ((Y4 – Y3)/(X4 – X3)^2)]^2 (∂(ALFA)/∂X4)^2 = [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * ((Y4 – Y3)/(X4 – X3)^2)]^2 (∂(ALFA)/∂Y3)^2 = [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * – (1/(X4 – X3))]^2 (∂(ALFA)/∂Y4)^2 = [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * – (1/(X4 – X3))]^2 (8) oraz podstawieniu i przekształceniach da:
(6)
Rachunek błędów przypadkowych dla opisanego powyżej pomiaru kąta:
Fot. Imaco
(7)
(5)
Czyli: zmiana wartości funkcji równa jest sumie iloczynów zmian poszczególnych parametrów wejściowych i ich współczynników wpływów. Współczynnik wpływu danej zmiennej to pochodna cząstkowa funkcji po danej zmiennej. Jeśli jako „zmiany parametrów wejściowych” wstawimy błędy poszczególnych wartości wejściowych, to jako wynik „dF” otrzymamy całkowity błąd pomiaru. W przypadku błędów systematycznych błędy elementarne sumuje się liniowo jak w równaniu (5). W przypadku błędów przypadkowych błędy elementarne sumuje się geometrycznie: n dF = √ [∑ (∂(F)/∂(Xi) * dXi)^2] i = 1
BŁĄD = d(ALFA) = √ [(∂(ALFA)/∂X1*dX1)^2 + + (∂(ALFA)/∂X2*dX2)^2 + (∂(ALFA)/∂Y1*dY1)^2 + + (∂(ALFA)/∂Y2*dY2)^2 + ……. + + (∂(ALFA)/∂X3*dX3)^2 + (∂(ALFA)/∂X4*dX4)^2 + + (∂(ALFA)/∂Y3*dY3)^2 + (∂(ALFA)/∂Y4*dY4)^2 +]
BŁĄD = √ {[(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * ((Y2 – Y1)/(X2 – X1)^2)]^2 * dX1^2 + + [(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * – ((Y2 – Y1)/(X2 – X1)^2)]^2 * dX2^2 + + [(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * – (1/(X2 – X1))]^2 * dY1^2 + + [(1/(1 + ((Y2 – Y1)/(X2 – X1))^2)) * * (1/(X2 – X1))]^2 * dY2^2 + + [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * ((Y4 – Y3)/(X4 – X3)^2)]^2 + dX3^2 + + [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * ((Y4 – Y3)/(X4 – X3)^2)]^2 + dX4^2 + + [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * – (1/(X4 – X3))]^2 * dY3^2 + [(1/(1 + ((Y4 – Y3)/(X4 – X3))^2)) * * – (1/(X4 – X3))]^2 * dY4^2}
(9)
Rys. 2. Po lewej obraz nieprześwietlony, bez bloomingu, z poprawnymi średnicami otworów, a po prawej – prześwietlony z efektem bloomingu powiększającym średnice otworów
Pomiary Automatyka Robotyka nr 5/2013
15
Temat numeru Termowizja i systemy wizyjne
takiej kalibracji, jak długo intensywność światła oświetlacza i geometria układu nie ulegną zmianie, tak długo kalibracja będzie ważna, a pomiar dokładny.
B. Optyka (skala, dystorsja, rozdzielczość) Rys. 3. Konfiguracja systemu do dokładnego pomiaru średnic wałków
Nie wygląda zachęcająco, ale wyliczenie błędu to tylko kwestia pracy. W pewnym zadaniu pomiaru kąta: • o wielkości ok. 18°, • kamerą o rozdzielczości 1280 × 960 pix i z polem widzenia ok. 40 × 30 mm (0,031 mm/px), • przy zachowaniu dystansów w parze punktów pomiarowych 1–2 lub 3–4 równych ok. 400 px, przy rozdzielczości 0,031 mm/px, pomijając inne źródła błędów (np. dystorsję), uzyskaliśmy błąd pomiaru kąta ±0,29° tylko uwzględniając rozdzielczość 0,031 mm/px. Jeśli taka wielkość błędu spełnia wymagania zadania pomiarowego – można budować system. Jeśli nie spełnia – trzeba weryfikować koncepcję i redukować błędy elementarne, np. poprawić rozdzielczość systemu, zmieniając kamerę lub zawężając pole widzenia.
świetle przechodzącym (back light) przedstawiono na rysunku 3. Kolimator tworzy wiązkę równoległą, w której umieszczany jest mierzony obiekt. Profil rozkładu światła na sensorze nie jest prostokątem, tylko linią bardzo złożoną, a na granicy pomiędzy obszarami jasnymi i ciemnymi występują pochylone linie zmiany jasności (rys. 4). Zależnie od doboru poziomu binaryzacji obrazu (np. w algorytmie wyszukiwania krawędzi) pomiar szerokości wałka wyjdzie różnie (rys. 5). Optymalny poziom binaryzacji można dobrać podczas kalibracji na wałku o znanej średnicy. Trzeba wyszukać taki poziom, aby po binaryzacji algorytm pomiarowy wykazał średnicę zgodną z rzeczywistą średnicą wałka wzorcowego. Po
Skala Do aplikacji pomiarowych najkorzystniejsze jest użycie obiektywu telecentrycznego, którego powiększenie jest stałe, niezależne od odległości obiektu od obiektywu (rys. 6). Jeśli nie można użyć obiektywu telecentrycznego, np. ze względu na zbyt duże wymiary obiektu, to konieczne jest użycie obiektywu entocentrycznego (standardowego). Aby utrzymać stałe powiększenie obiektywu entocentrycznego, konieczne jest utrzymanie stałego dystansu na linii obiekt – obiektyw. Można też zaniedbać stałość powiększenia i ciągle kontrolować dystans pomiędzy obiektem a obiektywem, np. za pomocą metody triangulacyjnej, a zmienność powiększenia wynikającą ze zmienności dystansu uwzględniać jako poprawkę w wynikach pomiarów.
2. Źródła błędów wizyjnego systemu pomiarowego A. Światło (blooming, dyfrakcja, cienie)
16
Rys. 4. Rozkład światła w wiązce za przesłoną (wałkiem)
Rys. 5. Wpływ poziomu binaryzacji (Thr1, Thr2, Thr3) na wynik pomiaru szerokości lub średnicy
Fot. Imaco
Blooming to wada sensorów CCD, która nie występuje w sensorach CMOS. Objawia się powiększeniem powierzchni jasnych obszarów w przypadku prześwietlenia sensora kamery (rys. 2). Aby wyeliminować błędy pomiarów wynikających z bloomingu, należy unikać prześwietlenia sensora, czyli ustawić poprawnie albo oświetlenie, albo czas ekspozycji, albo wzmocnienie kamery, albo przesłonę obiektywu, tak aby żaden piksel w obrazie nie był nasycony (równy 255 przy rozdzielczości 8 bit/px). Na rys. 2 efekt bloomingu jest wyraźny. W przypadku gdy nie jest on tak wyraźny, błąd pomiaru pojawi się, ale nie będziemy tego świadomi. Dyfrakcja na krawędzi obiektu, przy oświetleniu tylnym (tła, czyli back light) to zjawisko normalne, występujące zawsze, ale jest to nieistotne przy pomiarach o małej dokładności. Typową koncepcję wizyjnego systemu pomiarowego do dokładnego pomiaru średnic wałków w skolimowanym
Dystorsja Dystorsja to deformacja obrazu wynikająca ze zmienności powiększenia obiektywu wraz ze zwiększaniem odległości od osi obiektywu (rys. 7). Ponieważ producenci dobrych obiektywów udostępniają charakterystykę dystorsji i jest ona niezmienna dla serii obiektywów – można uwzględnić ją jako poprawkę błędu systematycznego. Ze względu na nieliniową charakterystykę dystorsja jest szczególnie istotna przy pomiarach elementów zmieniających położenie w polu widzenia (rys. 8). Przykładowo przy polu widzenia 40 × 30 mm, z niedrogim obiektywem o dystorsji do 3 %, średnica wałka 14 mm ulokowanego symetrycznie w polu widzenia, bez korekty na dystorsję, zmierzona będzie jako 14 – 1% – 1% = 14 – 2% = 13,72 mm, a średnica wałka ustawionego jedną krawędzią na środku pola widzenia, zaś drugą krawędzią w pobliżu brzegu pola widzenia, bez korekty na dystorsję, zmierzona będzie jako 14 – 0% – 3% = 14 – 3% = 13,58 mm.
Rys. 6. Obiektyw entocentryczny ma powiększenie zmienne z dystansem roboczym, a obiektyw telecentryczny ma powiększenie stałe w pewnym zakresie dystansów
w mikrosoczewki. Jednak mikrosoczewki też nie są dużym ulepszeniem, bo ich zadaniem jest zwiększanie obszaru zbierania światła, bez względu na równomierność czułości optycznej piksela z mikrosoczewką. Wyższa rozdzielczość podpikslowa jest możliwa, jeśli sensor ma fill factor 100 %, czyli
z kamerami liniowymi oraz z sensorami Frame Transfer i Full Frame. Niektóre z tych sensorów umożliwiają użycie rozdzielczości podpikselowej znacznie większej niż 1:10. Równomierność podziału sensora na piksele to zagadnienie przemilczane przez cały rynek wizyjny.
Rozdzielczość obiektywu Wpływa ona na ostrość krawędzi i na wykrywanie drobnych faktur. Niska rozdzielczość obiektywu zadziała podobnie jak dyfrakcja: rozmyje krawędzie i znów poprawność pomiaru zależna będzie od poprawności ustawienia poziomu binaryzacji obrazu.
Fot. Imaco
C. Sensor kamery (rozdzielczość sensora, fill factor, równomierność rozstawu pikseli) Rozdzielczość sensora jest głównym ograniczeniem możliwości systemu wizyjnego i jednym ze źródeł błędów, więc im mniejszy piksel i im wyższa rozdzielczość, tym mniejszy błąd pomiaru. Fill factor to procentowy współczynnik wielkości powierzchni światłoczułej piksela w stosunku do całej powierzchni piksela (rys. 9). Większość kamer 2D używanych w widzeniu maszynowym ma sensory, w których fill factor wynosi 10–30 %, jeśli sensor nie ma mikrosoczewek, a dochodzi do 70 % w sensorach z mikrosoczewkami. Przy małym fill factor pomiary bazujące na ocenie pozycji krawędzi mają pewne obszary nieczułości (rys. 10). Zastosowanie rozdzielczości podpikslowej (interpolacja w obszarze 1 px) na poziomie 1:2–1:3 może mieć sens w przypadku kamer z sensorem IT CCD (Interline Transfer) lub CMOS, tylko jeśli sensory są wyposażone
Rys. 7. Deformacje obrazu spowodowane dystorsją obiektywu (u góry dystorsja ujemna, zwana baryłkowatą; w środku dystorsja dodatnia, zwana poduszkowatą; na dole obraz idealny, bez dystorsji)
Rys. 8. Różny wpływ dystorsji na wynik pomiaru średnic wałka, zależnie od pozycji wałka. System wykaże średnicę D1 przy centralnym ustawieniu wałka w polu widzenia, a inną D2 przy niecentralnym ustawieniu wałka
Pomiary Automatyka Robotyka nr 5/2013
17
Temat numeru Termowizja i systemy wizyjne
E. Algorytm (błędy i zaokrąglenia, uśrednianie i poprawki)
Rys. 10. Struktura pikseli i obraz przesłony. Przykład wpływu niepełnej czułości piksela na rozdzielczość wykrywania pozycji krawędzi. Jeśli obraz krawędzi przesłony przemieszcza się po pikselach sensora, pewne zmiany (np. na rysunku przesunięcie w górę) są niewidoczne dla kamery, bo nie odsłaniają lub nie zasłaniają powierzchni światłoczułych (na rysunku – czerwonych pól).
Jeśli w charakterystyce kamery podane jest, że piksel ma wymiar 7,4 µm, to wszyscy wierzą, że wszystkie piksele mają wymiar i rozstaw 7,400 ± 0 µm, co nie jest prawdą. Żadna ze specyfikacji sensorów Sony lub Truesense nie podaje informacji o rozrzucie okresów pikseli. Obejściem problemu niepewności w zakresie nierównomiernego podziału sensora na piksele może być kalibracja, ale powinna ona być bardzo precyzyjna.
D. Szumy Szumy kamery powodują nieznaczne lokalne zmiany jasności pikseli i mogą wpływać na lokalny wynik pomiaru, np. szukania krawędzi, o ile punkt pomiarowy trafi na piksel o zafałszowanej szumem wartości sygnału. Sposobem na redukcję wpływu szumów na wynik pomiaru jest albo uśrednianie wyniku z pomiarów na wielu pikselach, albo z pomiaru na wielu obrazach.
18
F. Kalibracja (wstępna lub jednoczesna) Dokładność pomiarów systemu wizyjnego będzie gorsza niż dokładność kalibracji, czyli im lepsza kalibracja, tym większa szansa na dokładne pomiary. Kalibracja powinna obejmować całe pole widzenia i być zrobiona z dużą rozdzielczością (wzorzec w postaci gęstej kraty lub gęstej matrycy kropek). Najpopularniejsze wzorce kalibracji wstępnej to wydrukowane na drukarce laserowej matryce kropek lub krata. Na kartce A4 spodziewać się można dokładności wzorca rzędu 0,2–0,5 mm. Wzorce kropkowe szklane mają dokładność pozycji kropki rzędu ±1–2 µm. Kalibrację jednoczesną uzyskamy, ustawiając taki wzorzec kropkowy jako tło mierzonego obiektu. Innym rozwiązaniem kalibracji jednoczesnej jest ustawienie w pobliżu mierzonego obiektu innego przedmiotu wzorcowego o znanej wielkości (rys. 12), a w analizie obrazu porównanie mierzonej wielkości z wielkością obiektu wzorcowego.
4. Pomiar 2. Dokładny pomiar średnicy wałka Jeśli pomiar ma się odbywać na końcówce wałka, to jednoczesne wstawienie do pola widzenia końcówki wałka mierzonego i wałka wzorcowego (rys. 12) da możliwość dynamicznego dopasowania poziomu binaryzacji (thersholdu) do poprawnej oceny średnicy wałka mierzonego.
5. Pomiar 3. Pomiar kąta w dwóch wykonaniach A. Podejście niemetrologiczne
3. Pomiar 1. Pomiar wymiarów płaskiego wykroju blachy lub kartonu w oświetleniu tła (back light) Ocena konturów w świetle przechodzącym to jedno z najłatwiejszych zadań pomiarowych.
Rys. 11. Wyznaczenie konturów obiektu z cech linii dopasowanych do zbioru punktów na konturze
Fot. Imaco
Rys. 9. Piksel sensora IT CCD lub CMOS nie ma obszaru światłoczułego (czerwone pole) na całej powierzchni. Tylko mały fragment powierzchni piksela (10–30 % powierzchni) jest światłoczuły
Algorytm to sposób obróbki danych pomiarowych. Jeśli algorytm nie zawiera błędów logicznych lub matematycznych, to dla optymalizacji pomiaru zalecane są: • formatowanie liczb i wyników z wystarczająco dużą liczbą miejsc znaczących, • wyliczanie i uwzględnianie poprawek na systematyczne błędy pomiaru, jak dystorsja, paralaksa, błąd skali, projekcja ukośna itp., • uśrednianie wyników obciążonych błędami przypadkowymi, będącymi poza naszą kontrolą, jak np. szumy, drgania obiektu, zmienne warunki otoczenia. Uśrednianie może być realizowane jako liczba średnia z kilku liczb albo przez dopasowanie prostej lub krzywej do spróbkowanego konturu obiektu (np. metodą najmniejszych kwadratów) i wyliczenie parametrów tej prostej lub krzywej, np. wierzchołka łuku lub promienia łuku (rys. 11).
Jeśli mierzymy obiekty płaskie o stałej i bardzo małej grubości, możemy użyć obiektywu entocentrycznego, a po wyskalowaniu systemu na wzorcu kropkowym można mierzyć. W celu uzyskania możliwie wysokiej dokładności pomiarów długości i szerokości korzystnie jest wyznaczyć każdą krawędź konturu w wielu punktach (rys. 11) i do znalezionych punktów dopasować linie metodą najmniejszych kwadratów. Odległość naprzeciwległych linii daje poszukiwany wymiar konturu. Rozstawy otworów należy wyznaczyć jako odległość środków okręgów dopasowanych metodą najmniejszych kwadratów do punktów (rys. 11) znalezionych na krawędziach otworów. Stosując metodę najmniejszych kwadratów do wyznaczenia linii konturów obiektu, można uzyskać błąd pomiaru mniejszy niż rozdzielczość pomiaru (niż wielkość piksela przeliczona na powierzchnię obiektu).
Zakończenie
Rys. 12. Pomiar średnicy wałka przez porównanie ze średnicą wałka wzorcowego widocznego w tym samym obrazie
Z obrazu jak na rys. 1 zdejmujemy współrzędne punktów charakterystycznych X1, Y1; X2, Y2; X3, Y3; X4, Y4. Wyliczamy kąt z równania (2) WYNIK = ALFA
B. Podejście metrologiczne Z obrazu jak na rys. 1 zdejmujemy współrzędne punktów charakterystycznych X1, Y1; X2, Y2; X3, Y3; X4, Y4. Wyliczamy kąt z równania (2) Wyliczamy BŁĄD pomiaru z równania (9) WYNIK = ALFA ± BŁĄD
prowadzeniu skanowanego obiektu, o tyle wysoka dokładność pomiaru w osi Y (w kierunku skanowania) wymaga dużej rozdzielczości enkodera, w miarę możliwości użycia enkodera programowalnego (w celu dopasowania rozdzielczości), małego bicia i małych błędów kołowości wałka napędowego, na osi którego zamocowany jest enkoder, oraz współosiowości enkodera z osią wałka napędowego. Dokładność rzędu ±0,01 mm w osi X jest realna, ale w osi Y trudna do uzyskania.
Opisane wyżej aspekty należy rozważyć i przeliczyć przed zakupem komponentów do wizyjnego systemu pomiaru wielkości geometrycznych o dużej dokładności. W przypadku tworzenia systemu o bardzo wysokiej dokładności trzeba dodatkowo przeanalizować skutek uzmiennienia wszystkich stałych i zerowych wartości i źródeł błędów, zwykle pomijanych w analizie, np.: • na rys. 3 – nieprostopadłość sensora do osi wiązki (sensor zarejestruje obraz rzutu ukośnego), • odnośnie rys. 5 – winietowanie obiektywu daje nierówną jasność obrazu i właściwie poziom binaryzacji nie powinien być stały na całej powierzchni obrazu, • typowy w analizie metrologicznej czynnik rozszerzalności termicznej (np. 1 °C zmiany temperatury pręta stalowego o długości 1 m daje zmianę długości 0,011–0,016 mm). Dużo pracy, ale opłaci się. Dobrze przemyślany i przeliczony system będzie mierzył z oczekiwaną dokładnością i przez wiele lat. Największy problem w tym, żeby zleceniodawca był gotowy za tę pracę zapłacić.
Marek Kania www.imaco.pl
Fot. Imaco
6. Pomiar 4. Skanowanie kamerą liniową Kamera liniowa tworzy obraz z sumy kolejno rejestrowanych linii, których naświetlanie wyzwalane jest przez enkoder. Skala takiego skanera liniowego jest inna w kierunku ruchu skanera, a inna w kierunku poprzecznym. Kalibracja powinna wykazać dwie mniej lub bardziej różniące się skale wyrażone w mm/px. W rzeczywistości skaner to dwa układy pomiarowe w jednym urządzeniu (rys. 13). Impulsy enkodera narzucają rozstaw linii obrazu, czyli skalę Y. Okres pikseli na sensorze, ogniskowa obiektywu i dystans roboczy narzucają skalę X. Zmiana enkodera lub rolek transportowych, a także zużycie rolek transportowych lub taśmy transportowej wymagają nowej kalibracji systemu w osi Y. Zmiana dystansu roboczego lub przeogniskowanie obiektywu wymaga nowej kalibracji w osi X. O ile pomiary w osi X mogą być dosyć dokładne przy precyzyjnym
Rys. 13. Skaner z kamerą liniową, czyli dwa w jednym. Szerokość obszaru skanowania (SZ) i rozdzielczość sensora kamery definiują rozdzielczość w poprzek kierunku skanowania, a rozdzielczość enkodera i średnica wałka transportowego sprzężonego z enkoderem definiują rozdzielczość w kierunku skanowania (DL)
Pomiary Automatyka Robotyka nr 5/2013
19
Temat numeru TERMOWIZJA I SYSTEMY WIZYJNE
Czujniki wizyjne BVS Oferta czujników wizyjnych BVS firmy Balluff została ostatnio powiększona o dwa nowe rozwiązania. Dotychczas dostępne wersje, czyli Standard, Advanced oraz Ident, rozszerzono o opcje z zabudowanym oświetleniem podczerwonym. Całkowitą nowością jest kolejna generacja czujników w wersji Universal.
BVS Infrared – niewidoczne oświetlenie Aplikacje wizyjne są bardzo często narażone na wpływ zmiennych zewnętrznych źródeł światła, które mogą zakłócać proces kontroli wizyjnej. Dodatkowo, na niektórych stanowiskach operatorom przeszkadza błyskające światło generowane przez oświetlenia czujników wizyjnych, co istotnie obniża ich komfort pracy. Jak sobie z tym poradzić? Oświetlić
w niewidzialny sposób? Rozwiązaniem tych problemów są czujniki wizyjne nowej generacji – BVS Infrared. Światło tych urządzeń jest niewidoczne dla ludzkiego oka, dzięki czemu czujnik – nawet umieszczony optyką w kierunku operatora – w żaden sposób nie przeszkadza w pracy. Zabudowany w nim filtr podczerwieni eliminuje wpływ światła dziennego oraz innych źródeł światła widzialnego na stanowisku. Pozwala to na znaczące zwiększenie niezawodności procesu. Zintegrowane w czujniku oświetlenie podczerwone ma o 10 % większą efektywność od zabudowanego światła czerwonego, co poprawia jego skuteczność przy większych odległościach pracy. Ponadto, światło podczerwone ma lepszą penetrację, co umożliwia pewną kontrolę elementów, na przykład poprzez przeźroczyste elementy. Światło podczerwone pozwala też na lepsze odwzorowanie różnych kolorów w skali szarości oraz uzyskanie doskonałego kontrastu w przypadku odczytu kodów. Nowy typ oświetlenia dostępny jest we wszystkich oferowanych wersjach czujników wizyjnych: Standard, Advanced oraz Ident. Oświetlenie to jest całkowicie bezpieczne dla operatora, czego potwierdzeniem jest certyfikat CE w oparciu o normę EN 62471:2008.
W przypadku aktualnie dostępnych wersji czujników musieliśmy wybierać pomiędzy tymi dedykowanymi do zadań kontrolnych, czyli wersjami Standard oraz Advanced, lub czujnikami przeznaczonymi do odczytu kodów kreskowych i kodów 2D. Nowa seria – BVS Universal – łączy te wszystkie funkcjonalności w jednym prostym urządzeniu. Zakres aplikacji
20
Promocja
Fot. Balluff
BVS Universal – jeden do wszystkiego
SENSOR SOLUTIONS AND SYSTEMS Do wszystkich obszarów automatyki przemysłowej
obejmuje obszar od zadań kontrolnych w procesach montażowych, poprzez odczyt i weryfikację kodów, aż do zaawansowanego określania pozycji elementów. Szczególną cechą tej rodziny produktów jest nowe narzędzie bazujące na konturze i umożliwiające pewną detekcję wybranych cech produktów niezależnie od ich pozycji. Dodatkowo, informacja o położeniu tych elementów może być przesyłana do systemu sterowania za pośrednictwem interfejsu czujnika. Takie narzędzia można było dotychczas spotkać jedynie w zaawansowanych i kosztownych systemach wizyjnych, a nie w czujnikach wizyjnych. Czujniki wizyjne serii BVS firmy Balluff są wyposażone w różnorodne narzędzia, które umożliwiają wykonywanie wielu funkcji kontrolnych jednocześnie. Co warte podkreślenia, te kompaktowe czujniki pozwalają na odczyt kodów DPM, czyli 2D nanoszonych bezpośrednio na produkty, między innymi za pomocą znakowarek laserowych lub wybijanych na metalowych elementach. Aplikacje te stanowią szczególne wyzwanie, gdyż kody DPM wykonywane są często na odlewach lub materiałach o bardzo błyszczącej powierzchni. Osiągnięcie tak doskonałych parametrów i stabilnej pracy czujnika możliwe jest dzięki zastosowaniu zaawansowanego algorytmu odczytu. Wymaga on mniejszej liczby pikseli do rozpoznania poszczególnych elementów symbolu (punktów) w kodzie Data Matrix niż w przypadku tradycyjnych urządzeń odczytu kodów 2D. W zaledwie 1 s czujniki te mogą odnaleźć, odczytać i zweryfikować do 40 kodów. W nowym czujniku, oprócz standardowych sygnałów binarnych, użytkownik ma do dyspozycji opcję umożliwiającą przesłanie wartości odczytanego kodu za pośrednictwem interfejsu RS-232 lub Ethernet. Urządzenie posiada również narzędzie OCV, dzięki któremu można zweryfikować teksty lub sekwencje liczb w oparciu o zaprogramowane wzorce. Nowa seria to jedno kompaktowe rozwiązanie do wielu różnych zadań kontrolnych. Czujniki Universal dostępne są zarówno z oświetleniem czerwonym, jak i z podczerwienią.
Jako firma globalna, reprezentujemy specjalistyczną wiedzę w dziedzinie kompleksowych systemów, ciągłe innowacje, najwyższą jakość i największą niezawodność. Balluff oznacza różnorodność technologii i najwyższą jakości obsługi. 2450 pracowników na całym świecie pracuje aby to zagwarantować.
Systemy i usługi
Sieci przemysłowe i połączenia
Identyfikacja przemysłowa
Detekcja obiektów
Pomiar drogi i odległości
Pomiar ciśnienia i poziomu
Akcesoria
BALLUFF Sp. z o.o. tel. 71 338 49 29, fax 71 338 49 30 e-mail: balluff@balluff.pl www.balluff.pl
REKLAMA
Fot. Balluff
ul. Muchoborska 16, 54-424 Wrocław
Telefon +48 71 338 49 29
www.balluff.pl
Pomiary Automatyka Robotyka nr 5/2013
21
Temat numeru Termowizja i systemy wizyjne
Współczesne zakłady produkcyjne w coraz większym stopniu inwestują w nowe rozwiązania automatyki przemysłowej w celu usprawnienia procesów wytwarzania i zapewnienia odbiorcom produktów najwyższej jakości. Często decydują się na zakup zautomatyzowanych linii produkcyjnych lub modernizację już istniejących, z wykorzystaniem najnowszej aparatury kontrolno-pomiarowej. Przykładem takiego uniwersalnego rozwiązania są systemy wizyjne SensoPart VISOR.
Czytanie oznaczeń pojawiających się w różnych częściach opakowania – bazą jest symbol graficzny obok tekstu
Automatyzacja procesów produkcyjnych jest naturalną konsekwencją obecnej sytuacji rynkowej. Duża konkurencja, konieczność racjonalizacji kosztów i coraz wyższe wymagania jakościowe stawiane produktom wymuszają stosowanie coraz bardziej nowoczesnych i niezawodnych technologii. Współczesne zakłady produkcyjne coraz częściej decydują się na zakup nowych, zautomatyzowanych linii produkcyjnych i pakujących, gdzie praca fizyczna i umysłowa jest ograniczana do niezbędnego minimum lub na modernizację istniejących linii z wykorzystaniem
22
Promocja
najnowszych urządzeń automatyki przemysłowej z odpowiednim systemem sterowania. Nowoczesne zakłady produkcyjne, bez względu na profil produkcji, wprowadzają systemy wizyjne, których zadaniem jest szeroko pojęta kontrola jakości. Funkcjonalność inspekcji wizyjnej dobierana jest zawsze do wymagań zakładu produkcyjnego, a dokładniej do założeń działu jakości. Przykładem może być etykietowanie butelek. Kluczowym elementem kontroli jest obecność etykiety, czasem nadruk daty i numer serii.
Dla jednych kontrola będzie w zupełności satysfakcjonująca, kiedy w odpowiedzi system wystawi sygnał logiczny kwalifikujący lub odrzucający produkt z linii. Wiele zakładów dokonuje kontroli jakościowej, kontroli pozycji etykiety na opakowaniu, jak również kontroluje, czy pracownik włożył do zasobnika etykiety związane z właściwym produktem oraz w języku kraju przeznaczenia. Dotychczas do zrealizowania takiego zadania używano systemu wizyjnego bazującego na komputerze PC lub kilku prostych czujników wizyjnych. Pierwsze rozwiązanie było kłopotliwe z punktu widzenia programowania – zazwyczaj systemy wizyjne mają swoje unikalne języki programowania, trudne do opanowania przez inżynierów utrzymania ruchu. Drugie rozwiązanie, mimo iż czujniki mają prostsze interfejsy, pozostaje nieekonomiczne i mało funkcjonalne. Firma SensoPart wprowadziła na rynek innowacyjne rozwiązanie. W maju 2012 r. po raz pierwszy zaprezentowała czujnik wizyjny SensoPart VISOR V20 Professional, który ze względu na stosunek funkcjonalności do ceny pozostaje jedyny w swojej klasie. W rozdzielczości 1280 × 1024 px czyta standardowe kody kreskowe 1D, kody DataMatrix 2D, jak również OCR (Optical Character Recognition). Dodatkowo ma cztery detektory czujnika obiektowego – wzorca, kontrastu, jasności, poziomu szarości – pozwalające kontrolować cechy obiektowe produktu (znaki, loga itp.) w jednym zadaniu detekcji. Wszystkie narzędzia mieszczą się w niewielkiej obudowie o wymiarach 65 × 45 × 45 mm ze zintegrowanym oświetlaczem i obiektywem. Czujnik wizyjny po zaprogramowaniu przez komputer jest urządzeniem autonomicznym. Wystawia wyniki inspekcji poszczególnych detektorów pojedynczo na programowalnych wyjściach logicznych lub wykonuje operacje logiczne między nimi i w odpowiedzi przedstawia ogólny wynik kontroli. Niemniej jednak do dyspozycji użytkownika pozostaje interfejs Ethernet, Ethernet-IP, RS-422 oraz RS-232, dzięki którym
Fot. Sels
System wizyjny – niezawodna kontrola nadruków
Sprawdzenie pozycji etykiety na butelce – kontrola kodu 1D, 2D oraz numeru serii jednym czujnikiem wizyjnym
można archiwizować zdjęcia występujących wad i analizować dane liczbowe inspekcji. Programowanie i obsługa czujnika w języku polskim.
Czujnik wizyjny VISOR V20 Professional czytnik kodów 1D, 2D, OCR
Kontrola nadruku na opakowaniach zbiorczych Czujnik wizyjny SensoPart V20 Professional OCR został z powodzeniem zastosowany przez jednego z największych na świecie producentów nakłuwaczy personalnych i igieł insulinowych. Normy jakościowe narzuciły zastosowanie czujnika wizyjnego do kontroli nadruku na opakowaniach zbiorczych. Próbowano różnych rozwiązań dostępnych na rynku, jednak ze względu na występujące przesunięcia miejsca oznaczenia na opakowaniu żadne z nich nie gwarantowało prawidłowego odczytu. Kluczowe okazało się narzędzie bazowania detektorów czujnika wizyjnego VISOR V20. Podczas inspekcji algorytmy przetwarzania obrazu przeszukiwały obraz z kamery i ustalały pozycję zaprogramowanego wzorca. Po znalezieniu rozmieszczały trzy pola detektorów OCR do czytania wierszy z nadrukiem daty produkcji, daty przydatności do użycia oraz numeru serii LOT. Operator wiedział, jakich nadruków się spodziewa, więc narzucił detektorom ciągi referencyjne, a czujnik wyjściem logicznym tylko potwierdzał ich obecność. Ten sam czujnik można użyć do przesyłania przeczytanych ciągów do sterownika PLC lub panelu operatorskiego i dalszej obróbki.
Kontrola etykiety na butelce
PRODUKT ROKU 2012
Pięć typów detektorów czujnika wizyjnego SensoPart VISOR V20 Professional OCR można swobodnie stosować w jednym zadaniu inspekcji. Przykładem może być kontrola etykiety na butelce z szamponem, gdzie oprócz obecności etykiety klient wymagał sprawdzenia szeregu innych cech. Inspekcja obejmowała: • określenie pozycji butelki w obszarze widzenia (bazowanie), • położenie etykiety w odniesieniu do pozycji butelki (dwa detektory obiektowe), • kod kreskowy 1D i porównanie z ciągiem referencyjnym, • kod kreskowy 2D i porównanie z ciągiem referencyjnym; kod ma wymiar 5 × 5 mm, 14 × 14 segmentów, • ciąg alfanumeryczny detektorem OCR. Wszystko to przy rozdzielczości 1,3 Mpx 1280 × 1024 zapewniającej optymalną jakość obrazu i czas odczytu mniejszy niż 300 ms.
- Czytnik kodów 1D i 2D, również DPM - Detekcja tekstu OCR - Detektory obiektowe - Filtry obrazu - Zintegrowane oświetlenie LED i obiektyw - Rozdzielczość 1280x1024 px - Kompaktowa obudowa 65x45x45 mm - Zaawansowane funkcje logiczne - 10 portów We/Wy - Powiązania czasowe wyjść - Interfejs EtherNet-IP, RS-422, RS-232
SELS Sp. z o.o. sp. k. www.sels.pl
REKLAMA
Fot. Sels
mgr inż. Robert Makowski specjalista ds. systemów wizyjnych
SELS Sp. z o.o. Spółka Komandytowa ul. Malawskiego 5a, 02-641 Warszawa tel.: +48 22 848 08 42, +48 22 848 52 81 fax.: +48 22 848 16 48 www.sels.pl e-mail: sels@sels.pl
Pomiary Automatyka Robotyka nr 5/2013
23
Temat numeru TERMOWIZJA I SYSTEMY WIZYJNE
Wizja dla automatyki Systemy wizyjne w ofercie firmy PARAMETER AB
Wraz z postępującą automatyzacją linii produkcyjnych pojawiła się potrzeba wprowadzenia automatycznej kontroli wizyjnej wytwarzanych produktów. Coraz częściej przemysłowe systemy wizyjne zastępują w tym procesie ludzi. Dla ułatwienia integracji systemów na rynku pojawiają się inteligentne kamery oraz czujniki 3D.
Systemy wizyjne nie tylko sprawdzają produkty na końcowym etapie procesu wytwarzania, ale również między poszczególnymi operacjami w trakcie produkcji. Część firm prowadzi także kontrolę półfabrykatów dostarczanych do fabryki przez podwykonawców.
Do większości zadań wykorzystuje się kamery inteligentne, które mają wbudowany procesor pozwalający na przeprowadzenie analizy obrazu w kamerze. Z reguły urządzenia te są wyposażone w szereg standardowych protokołów komunikacyjnych umożliwiających połączenie z dowolnym sterownikiem PLC, robotem czy panelem
operatorskim. Programowanie takiego systemu odbywa się na komputerze PC za pomocą dedykowanego oprogramowania lub poprzez podłączenie się do kamery za pośrednictwem przeglądarki internetowej. Na fot. 2 przedstawiono przykładowy zestaw narzędzi dostępnych w kamerach inteligentnych. Z reguły są to takie algorytmy, jak odczyt
Fot. 1. Kamera inteligentna BOA z oprogramowaniem iNspect Gocator – kontrola dopasowania drzwi samochodu za pomocą czujnika Gocator
24
Promocja
Fot. Parameter
Zastosowanie inteligentnych systemów wizyjnych
Rodzina czujników 3D Gocator 2300
*Pricing will vary
Fot. Parameter
kodów kreskowych czy Data Matrix, pomiary. Po wybraniu odpowiedniego narzędzia zaznaczamy na obrazie fragment podlegający kontroli, a następnie konfigurujemy narzędzie. Konfiguracja ta jest prosta dzięki dostępnej liście parametrów. Niestety ogranicza to wpływ na sposób, w jaki algorytmy działają, na przykład przy rozpoznawaniu krawędzi. Kamery inteligentne często współpracują z robotami przemysłowymi. Służą do rozpoznawania pozycji elementów na taśmociągach i przesyłają koordynaty elementów do sterownika robota. Jeżeli kontrola wizyjna dotyczy produktów wielkogabarytowych, można zamocować kamerę na robocie i poprzez zmianę położenia robota i algorytmów w kamerze dokonywać kontroli całej części przy użyciu jednej kamery. Jeżeli przedmiot wymaga kontroli bardziej szczegółowej, dokonywanej za pomocą kilku kamer i z różnymi typami oświetlenia, można wykorzystać
dostępne na rynku małe komputery PC z preinstalowanym oprogramowaniem wizyjnym. Zapewnia to większą elastyczność w tworzeniu aplikacji wizyjnej. Oprogramowanie takie daje również większy wpływ na pracę algorytmów w aplikacji. Przykładowym systemem do tego typu zastosowań jest GEVA – z zainstalowanym oprogramowaniem Sherlock – firmy Teledyne Dalsa. Umożliwia bezpośrednie podłączenie dwóch kamer GigE lub współpracę z 16 kamerami poprzez repeatery.
Inteligentne czujniki 3D Nowością na polskim rynku są inteligentne czujniki 3D. Pozwalają one na analizę 3D obiektów poruszających się z dużą prędkością. Zasada działania czujników oparta jest na triangulacji laserowej. Poprzez analizę kształtu linii laserowej wyświetlanej na obiekcie może być dokonywany zarówno pomiar wysokości, jak i szerokości przedmiotu.
Fot. 2. Przykładowe narzędzia dostępne w kamerach inteligentnych
Istnieje również możliwość analizy nie tylko samego profilu, ale również całej części 3D. Obecnie dostępne są takie funkcje jak: pomiar objętości, powierzchni i środka ciężkości. Urządzenia te bardzo często montowane są na ramionach robotów i służą do sprawdzania powierzchni – mogą ją kontrolować przed spawaniem. Przykładową aplikacją tego typu jest kontrola dopasowania drzwi w samochodach. Dzięki zastosowaniu inteligentnych systemów wizyjnych możliwe jest poprawienie jakości produkcji, zmniejszenie kosztów reklamacji, napraw gwarancyjnych oraz stworzenie wizerunku firmy jako zaufanego partnera.
PARAMETER AB Sp. z o.o. tel. 664 92 19 22 e-mail: sales@parameter.pl Fot. 3. System wizyjny GEVA z oprogramowaniem Sherlock
www.parameter.pl
Pomiary Automatyka Robotyka nr 5/2013
25
Temat numeru TERMOWIZJA I SYSTEMY WIZYJNE
Kamery termograficzne SWIR firmy Xenics Kamery termograficzne są coraz częstszym narzędziem wykorzystywanym w przemyśle zarówno w działach utrzymania ruchu, jak i w kontroli jakości produkowanych elementów. Zazwyczaj są to kamery długofalowe (LWIR) pracujące w oparciu o pomiar promieniowania podczerwonego w paśmie z zakresu 8-14 µm.
Oczywiście kamery tego typu mają sporo zalet, ale główną przyczyną ich popularności może być cena, która w ostatnich latach została znacznie obniżona. Kamery te mają jednak pewne ograniczenia i w niektórych aplikacjach lepiej jest użyć kamerę krótkofalową SWIR. Podstawowy zakres spektralny tych kamer wynosi 0,9–1,7 µm, ale oferowane są także modele o rozszerzonym zakresie spektralnym zarówno w kierunku pasma widzialnego od 0,4 µm, jak i w stronę średniej podczerwieni do 2,5 µm. Kamery SWIR zazwyczaj wyposażone są w chłodzony (ciekłym azotem lub termoelektrycznie) detektor o rozdzielczości 320 × 256 px lub 640 × 512 px. Najnowsza konstrukcja SWIR firmy Xenics – kamera Bobcat – wykorzystuje niechłodzone detektory o rozdzielczości 320 × 256 px lub 640 × 512 px. W ofercie dostępne są także same detektory z elektroniką oraz skanery
liniowe wykorzystujące detektory linijkowe o liczbie do 2048 punktów. Kamery SWIR mają zastosowanie w takich aplikacjach jak: • sortowanie odpadów, • badanie jakości żywności, • inspekcja dzieł sztuki, • profilowanie promienia laserów, • kontrola jakości półprzewodników, • obrazowanie wielospektralne, • obrazowanie nocne przy minimalnym oświetleniu, • pomiar wysokich temperatur. Zwłaszcza ten ostatni punkt jest interesujący ze względu na właściwości kamer SWIR i ich pasma spektralnego. Pomiar wysokich temperatur jest dużo bardziej dokładny w bliskiej podczerwieni niż w dalekiej. Błąd pomiaru związany ze złym określeniem współczynnika emisyjności jest dużo niższy dla zakresu bliskiej podczerwieni niż dalekiej (tab. 1).
Kolejną – obok dokładniejszego pomiaru temperatury – dużą zaletą kamer SWIR jest możliwość pomiaru przez standardowy wziernik albo wziernik ze szkła odpornego na bardzo wysoką temperaturę. Oferujemy obudowy dla kamer SWIR chłodzone wodą, które mogą pracować w temperaturze otoczenia nawet do 400 °C, przy czym samo szkło wziernikowe może działać ciągle w temperaturze do 800 °C. Zastosowanie w takiej aplikacji kamery długofalowej byłoby dość kłopotliwe i wymagałoby zużycia dużej ilości sprężonego powietrza w celu odpowiedniego schłodzenia okna wziernikowego. Kamery SWIR mają możliwość pomiaru temperatur w zakresie od 300 °C do 2000 °C. Wyposażone są w interfejs USB, Camera Link lub GigE. Standardowo dostarczane są z oprogramowaniem do wizualizacji i rejestracji danych pomiarowych. Dostępne są także biblioteki SDK dla użytkowników
Tab. 1. Błąd pomiaru temperatury przy zamianie o 1% współczynnika emisyjności dla różnych zakresów spektralnych
0,65
0,9
1,64
2,3
3,43
Planowana temperatura [°C]
26
3,86
4,5
5,0
7,9
10,6
0,78 – 1,06
Błędy
750,0 800,0 850,0 900,0 950,0
0,5 0,6 0,6 0,7
0,7 0,8 0,8 0,9 1,0
1,1 1,2 1,3 1,4 1,5
1,7 1,8 2,0 2,2 2,4
2,5 2,7 3,0 3,2 3,5
2,8 3,0 3,3 3,5 3,8
3,1 3,4 3,7 4,0 4,3
3,4 3,7 4,0 4,3 4,7
4,7 5,1 5,5 5,9 6,3
5,3 5,7 6,1 6,5 6,9
12,2 12,8 13,4 14,0 14,6
1000,0 1100,0 1200,0 1300,0 1400,0
0,7 0,9 1,0 1,1 1,3
1,1 1,3 1,4 1,6 1,8
1,7 1,9 2,2 2,4 2,7
2,5 2,9 3,4 3,8 4,3
3,7 4,3 4,9 5,5 6,2
4,1 4,7 5,4 6,0 6,7
4,6 5,3 6,0 6,7 7,4
5,0 5,7 6,4 7,2 7,9
6,7 7,5 8,4 9,2 10,1
7,4 8,2 9,1 10,0 10,9
15,3 16,7 18,1 19,7 21,3
1500,0 1600,0 1700,0 1800,0 1900,0
1,4 1,6 1,8 1,9 2,1
2,0 2,3 2,5 2,8 3,0
3,0 3,4 3,7 3,0 3,4
4,8 5,3 5,8 6,4 7,0
6,8 7,5 8,2 8,9 9,6
7,4 8,1 8,9 9,6 10,4
8,1 8,9 9,7 10,5 11,3
8,7 9,5 10,3 11,1 12,0
11,0 11,9 12,8 13,7 14,6
11,9 12,7 13,7 14,6 15,5
23,1 24,9 26,8 28,8 30,9
Promocja
Fot. Irtech
Efektywna długość fali [µm]
piszących własne oprogramowanie, w tym również dla systemu Linux. Na razie ceny tych kamer są wyższe od cen kamer z detektorem mikrobolometrycznym, ale widoczna jest tendencja spadkowa ze względu na wzrost popularności tego typu kamer. Szereg dostępnych obiektywów pozwala dopasować urządzenie do większości aplikacji i wymagań użytkowników. Organizujemy spotkania, prezentacje i testy wszystkich kamer firmy Xenica, a warto dodać, że oprócz kamer SWIR firma oferuje także kamery z detektorem mikrobolometrycznym oraz kamery z chłodzonymi detektorami pracujące w zakresie średniej i dalekiej podczerwieni.
Obudowa chłodzona wodą dla kamer termowizyjnych
IRTECH ul. Wyżynna 8H, 30-617 Kraków tel. 12 267 37 74, 12 266 67 50 e-mail: info@irtech.com.pl www.irtech.pl www.xenics.com Kamera SWIR Bobcat 640
Fot. Irtech
reklama
Promocja Pomiary Automatyka Robotyka nr 5/2013
27
Aplikacje PRZEMYSŁ WODNO-ŚCIEKOWY
Kaskadowy układ zasilania w wodę sterowany przetwornicą Danfoss VLT Aqua Wymagania stawiane przed współczesnymi systemami zasilania w wodę wymuszają poszukiwanie nowoczesnych i ekonomicznych rozwiązań. Jednym z nich jest kaskadowy układ zasilania w wodę, w którym zastosowano przetwornicę VLT Aqua i sterownik MCO 102 firmy Danfoss.
Przetwornica Danfoss VLT Aqua Drive FC 202 dla wiodącej pompy w układzie kaskady
28
Promocja
W artykule zaprezentowano jedno z wdrożeń firmy Skamer, oddziału z Krakowa, która współpracuje ze spółką Danfoss od ponad 10 lat. Skamer zapewnia kompleksową obsługę klientów – od projektu systemu, po jego realizację, uruchomienie i serwis. W jednym z przedsiębiorstw wodociągowych zainstalowano dwa zestawy hydroforowe, każdy składający się z sześciu pomp po 30 kW. Szafy sterownicze zaprojektowała i wykonała firma Skamer. Układ składa się z przetwornicy VLT Aqua Drive FC 202 z zaawansowanym sterownikiem kaskadowym MCO 102, umożliwiającym sterowanie wieloma pompami pracującymi na wspólnym kolektorze.
Schemat zasilania układu sterowania kaskady pomp z przetwornicą VLT Aqua Drive FC 202 dla wiodącej pompy i z softstartami rozruchowymi dla pozostałych pomp
Fot. Danfoss
Z jednej strony istnieje konieczność budowania układów elastycznych, płynnie i szybko reagujących na zmienne zapotrzebowania rozproszonych odbiorców, z drugiej – ciągła presja obniżania ceny takich inwestycji. Sukces pomaga zapewnić wybór odpowiedniego partnera, mogącego zaoferować szeroką gamę nowoczesnych produktów z dedykowanymi i zaawansowanymi aplikacjami dla gospodarki wodno-ściekowej. Bez wątpienia taką firmą w dziedzinie napędów i sterowania jest Danfoss. Spółka ta należy do liderów branży napędowej, a nazwa VLT od lat określa produkty o najlepszych parametrach technicznych.
Fot. Danfoss
Wizualizacja stanu pracy układu kaskady pomp z parametrami pracy przekazywanymi przez przetwornicę częstotliwości i zintegrowany sterownik kaskady MCO 102
W uzgodnieniu z użytkownikiem zdecydowano się na układ kaskadowy z jedną pompą wiodącą. W tym wariancie pojedyncza przetwornica steruje pompą o zmiennej prędkości w funkcji ciśnienia oraz pięcioma pompami o stałej prędkości, które są załączane i wyłączane w miarę potrzeby za pomocą softstarterów typu MCD 202. Zapewniają one funkcje łagodnego rozruchu oraz zatrzymania, a w konsekwencji nie dopuszczają do powstawania uderzeń hydraulicznych. Softstartery MCD 202 chronią również silniki pomp przed przeciążeniami, zmianami kolejności faz, niepełnym zasilaniem itp. Podstawowym celem, jaki stawiano sobie podczas projektowania, była elastyczność systemu i niewrażliwość na potencjalne awarie. Każda z pomp zespołu hydroforowego może pracować w trybie automatycznym. Decyzję o załączeniu podejmuje przetwornica w oparciu o program w sterowniku kaskadowym. Ustawienie przełącznika wyboru pracy w pozycji „0” powoduje odstawienie pompy, np. do remontu. Sterownik kaskadowy pomija wyłączoną pompę w cyklu regulacji. W trybie ręcznym operator może uruchomić każdą z pomp na stałe, oczywiście z funkcją łagodnego rozruchu i zatrzymania. W typ przypadku przetwornica również realizuje program z pominięciem uruchomionej już pompy. Dzięki standardowemu wyposażeniu przetwornicy w moduł komunikacji Modbus RTU możliwe stało się zobrazowanie wielu danych z falownika na panelu HMI.
Zastosowanie przetwornicy VLT Aqua Drive FC 202 z zaawansowanym sterownikiem kaskadowym MCO 102 pozwoliło na taką konfigurację sytemu sterowania, aby spełniał wszystkie wymagania odbiorcy. Moduł regulacji kaskady pomp lub dmuchaw jest jednym z wielu dodatkowych modułów funkcjonalnych, które wchodzą w skład wyposażenia przetwornic częstotliwości VLT Aqua Drive FC 202. Szereg standardowo wbudowanych funkcji programowych umożliwia skonfigurowanie układu napędowego tak, by maksymalnie ograniczyć zużycie energii i ryzyko przypadkowego zatrzymania układu lub np. awarii pompy. Przetwornice VLT Aqua Drive FC 202 są wyposażone w: • funkcję AEO – automatyczną optymalizację zużycia energii, • czasowe wyłączenie układu przy spadku zapotrzebowania wydajności (tryb uśpienia przy niskich obrotach pompy), zabezpieczenie przed suchobiegiem, wbudowany regulator PID. • zabezpieczenie przed suchobiegiem, • wbudowany regulator PID. Przetwornice te dostępne są również w wykonaniach dedykowanych do zastosowań w środowiskach agresywnych i korozyjnych, np. w oczyszczalniach ścieków. Unikalny algorytm sterowania Danfoss – VVCPlus (sterowanie wektorem napięcia) eliminuje potrzebę obniżania znamionowych parametrów silnika przy jednoczesnym zapewnieniu jego pełnej ochrony.
Układy softstart Danfoss MCD 202 dla pomp pomocniczych kaskady
Napęd VLT Aqua Drive FC 202 może pracować z silnikami odległymi o 300 m bez konieczności stosowania dodatkowych filtrów wyjściowych. Producent położył duży nacisk na ograniczenie emisji zakłóceń RFI i ograniczenie emisji harmonicznych. Standardowo zabudowano w urządzeniu układy zapewniające kompatybilność elektromagnetyczną zgodną z wymogami dyrektyw Unii Europejskiej. Szczegółowe informacje dotyczące przetwornic częstotliwości, aktywnych metod filtracji harmonicznych i innych produktów VLT z oferty Danfoss Drives są dostępne na stronie www.danfoss.pl/napedy.
PUP SKAMER-ACM Sp. z o.o. ul. Rogoyskiego 26, 33-100 Tarnów tel. 14 632 34 00, fax 14 632 34 01 e-mail: tarnow@skamer.pl www.skamer.pl DANFOSS VLT Drives Partner www.danfoss.pl/napedy
Pomiary Automatyka Robotyka nr 5/2013
29
Rozmowa PAR
Łączymy naukę z przemysłem Wywiad z profesorem Józefem Piotrowskim, twórcą firmy VIGO System, a obecnie dyrektorem ds. badań i rozwoju, oraz Maciejem Rzeczkowskim, kierownikiem Wydziału Elektroniki VIGO System.
Firma VIGO System oceniana jest jako jedna z najnowocześniejszych i najbardziej innowacyjnych firm w Polsce. Słynie z produkcji detektorów podczerwieni i kamer termowizyjnych. Z jakimi instytucjami Państwo współpracujecie i kto jest odbiorcą Waszych produktów? Józef Piotrowski: VIGO System stała się firmą globalną, dostarczającą zaawansowane produkty optoelektroniczne do niemal wszystkich rozwiniętych krajów na świecie. Naszymi odbiorcami są akademickie, przemysłowe i wojskowe instytuty badawcze, uczelnie techniczne, producenci analizatorów gazów, spektrofotometrów, urządzeń metrologicznych, medycznych i przemysłowych oraz innych specjalizowanych urządzeń wykorzystujących technikę podczerwieni. Względy konkurencyjne powodują, iż większość odbiorców naszych produktów, zwłaszcza producentów urządzeń, nie pozwala ujawniać faktu współpracy. Inaczej postępuje NASA, która pozwoliła nam pochwalić się naszym skromnym udziałem w wielkiej przygodzie ludzkości. Maciej Rzeczkowski: Poza kamerami tworzymy też inne systemy do bezkontaktowego pomiaru temperatury. Zastosowane w nich detektory naszej produkcji umożliwiają bardzo szybki pomiar temperatury nieosiągalny dla pirometrów. Systemy tego typu znajdują zastosowanie między innymi w przemyśle, przy pomiarze temperatury obiektów poruszających się z bardzo dużą prędkością. Systemy termowizyjne to technologie zaawansowane i udoskonalane. Są coraz bardziej popularne zarówno w Polsce, jak i na świecie. Co nowego w zakresie termowizji w ostatnim czasie opracowała Państwa firma? W jakim kierunku
30
będą rozwijać się systemy termowizyjne w najbliższych latach? Maciej Rzeczkowski: Kierunki prowadzonych przez nas prac w zakresie rozwoju kamer wytyczają potrzeby rynku. Od kilku lat dużym zainteresowaniem cieszą się kamery modułowe. Miniaturowe, lekkie, cechujące się niskim poborem mocy. Są stosowane głównie w technice wojskowej i w bezzałogowych statkach powietrznych. Umożliwiają obserwację obiektów z powietrza. Ostatnim naszym osiągnięciem jest modułowa kamera pomiarowa. Jej zastosowanie na pokładzie drona otwiera nowe perspektywy w ter-
Oceniam, że rynek kamer ręcznych rozwijać się będzie w dwóch kierunkach. Powstają niezwykle tanie kamery niskiej rozdzielczości, obrazowej, temperaturowej i przestrzennej. Jest to produkt masowy, który w niedługim czasie zastąpi pirometry ręczne. Drugi trend to rozwój zaawansowanych systemów wyposażonych w detektory o wysokiej rozdzielczości, porównywalnej do rozdzielczości kamer światła widzialnego. Kamery te mają rozbudowaną gamę możliwości uzupełniających zasadniczą funkcję – pomiar temperatury. W obu grupach obserwuje się tendencję do obniżania cen.
W Europie prowadzone są prace nad detektorami dwubarwowymi, zwiększającymi skuteczność wykrywania celu. W najbliższych latach dojdzie do komercjalizacji tej technologii. mografii obiektów rozległych. Termografia linii energetycznych, dachów budynków, kominów realizowana przy użyciu kamer ręcznych była do tej pory bardzo kłopotliwa. Kamery serii VIGOcam v640 wyposażone w detektor o rozdzielczości 640 × 480 i jeden z wielu dostępnych obiektywów umożliwiają wykonywanie najtrudniejszych zadań pomiarowych realizowanych z powietrza. Ważnym aspektem jest możliwość dostosowania interfejsów (elektrycznego i mechanicznego) do konstrukcji danej platformy latającej. W tej dziedzinie mamy coraz większe doświadczenie.
Odrębną kategorię stanowią kamery chłodzone ciekłym azotem za pomocą miniaturowych sprężarek. Są one stosowane głównie do wykrywania i obserwacji obiektów w technice wojskowej. Głębokie chłodzenie detektora fotonowego zapewnia kilkakrotnie lepszą rozdzielczość termiczną. Kamery wyposażone w obiektywy o długiej ogniskowej umożliwiają wykrycie i śledzenie celu z odległości rzędu 10 km i więcej. Najczęściej wykonywane są kamery bliskiej i dalekiej podczerwieni (na przykład 3–5 µm, 8–14 µm). W Europie prowadzone są prace nad detektorami dwubarwowymi,
zwiększającymi skuteczność wykrywania celu. W najbliższych latach dojdzie do komercjalizacji tej technologii. Józef Piotrowski: Istotnym krokiem naprzód będą kamery wielospektralne umożliwiające wszechstronną detekcję różnorakich obiektów. Należy oczekiwać istotnej poprawy podstawowych parametrów: rozdzielczości obrazowej, termicznej i przestrzennej. Kamery te będą umożliwiały inteligentną obróbkę obrazu. Będą się cechowały niskim poborem mocy mając jednocześnie niewielkie gabaryty. Będzie to możliwe dzięki zastosowaniu specjalizowanych układów elektronicznych wysokiej skali integracji. Maciej Rzeczkowski: O sile każdego systemu termowizyjnego stanowi między innymi oprogramowanie. W tym zakresie zawsze stawialiśmy sobie wysoko poprzeczkę, starając się realizować sugestie naszych klientów. Dzięki temu powstał unikalny program Therm do analizy danych. Umożliwia on współpracę z wszystkimi kamerami naszej produkcji, również modułowymi. Państwa firma tworzy coraz lepsze niechłodzone detektory podczerwieni, o wykrywalności sięgającej fizycznych granic. Jesteście jedynym na świecie producentem niektórych typów zaawansowanych detektorów podczerwieni i macie oficjalny status dostawcy NASA. Czy może Pan przybliżyć nam cechy, które są charakterystyczne dla takich detektorów i czy jest jakaś granica ich doskonałości? Józef Piotrowski: Unikalnymi cechami naszych detektorów jest możliwość pracy bez chłodzenia w bardzo niskich temperaturach, wysoka czułość – bliska fundamentalnych granic fizycznych, bardzo krótki czas reakcji na promieniowanie – poniżej jednej miliardowej sekundy, integracja elementu fotoczułego z elektroniką, miniaturyzacja, szeroka gama dostępnych typów i formatów oraz wygoda ich stosowania. Fundamentalna bariera czułości, ograniczająca możliwość wykrywania bardzo słabych sygnałów optycznych, jest określona przez szum przychodzącego promieniowania, a nie szum detektora.
coraz szersze zastosowania. Dla utrzymania się na tym rynku musimy opracować i wdrożyć nowe technologie, umożliwiające zautomatyzowaną produkcję tanich i coraz lepszych przyrządów. Ciągle prowadzimy badania nad naszymi produktami. Wciąż udoskonalacie Państwo fotodetektory. Proszę przybliżyć naszym czytelnikom najnowsze osiągnięcia w tej dziedzinie. Józef Piotrowski: Prowadzone prace badawczo-rozwojowe skutkują systematyczną poprawą funkcjonalnych i niezawodnościowych parametrów produkowanych przyrządów fotoelektrycznych – zwiększeniem ich czułości i szybkości działania, miniaturyzacją oraz wzrostem odporności na narażenia środowiskowe, w tym na bardzo wysokie przeciążenia mechaniczne i podwyższoną temperaturę pracy i przechowywania. Nowoczesne technologie przyczyniają się do zmniejszenia kosztów produkcji. Najnowsze osiągnięcia to szerokopasmowe detektory dla spektroskopii fourierowskiej i laserowej, integracja urządzeń elektronicznych i detektorów we wspólnych obudowach zamkniętych hermetycznie, detektory o subnanosekundowej szybkości dla każdej długości fali, rozszerzenie zakresu widmowego detektorów pracujących bez chłodzenia kriogenicznego do 16 µm. Co będzie największym wyzwaniem w najbliższych latach dla Państwa firmy oraz innych podmiotów o podobnym profilu działalności? Józef Piotrowski: Rynek zaawansowanych technologii to ryzykowna dziedzina działalności gospodarczej, która przynosi wiele wyzwań. Zagrożeniem jest fakt przeznaczania w wielu państwach wielkich środków na rozwój zaawansowanych technologii optoelektronicznych i tworzenie kolejnych miejsc pracy w tym obszarze. Dotyczy to w szczególności Chin i innych nowych potęg gospodarczych. Inne zagrożenie to możliwość REKLAMA
Vigo System można nazwać pionierem w technologii związanej z detektorami podczerwieni. Jaki jest obraz polskiego rynku pod tym względem na tle Europy i świata? Jak wygląda konkurencja w dziedzinie optoelektroniki i detektorów? Józef Piotrowski: Pozycja firmy jest bardzo silna w segmencie detektorów podczerwieni pracujących bez chłodzenia kriogenicznego, które znajdują coraz szersze zastosowania, zwłaszcza w różnorakich urządzeniach do zastosowań cywilnych. To świadomie wybrany obszar działalności badawczej i komercyjnej, w którym konkurencja pozostaje w tyle. Firma nie próbuje natomiast wchodzić na szeroki rynek kosztownych, macierzowych detektorów stosowanych w technice wojskowej, chłodzonych do bardzo niskich temperatur za pomocą niewygodnych i drogich urządzeń. Produkty naszej firmy są przeznaczone głównie na rynki światowe, tylko nieznaczna część produkcji jest wykorzystywana w Polsce, przeważnie w urządzeniach techniki wojskowej. Jakie są Państwa prognozy odnośnie dalszego rozwoju rynku optoelektroniki i detektorów? W jakim kierunku będzie on ewoluował? Józef Piotrowski: Spodziewamy się stałego powiększania rynku o produkowane i rozwijane przez nas detektory podczerwieni pracujące bez chłodzenia kriogenicznego, które znajdują Pomiary Automatyka Robotyka nr 5/2013
31
Rozmowa PAR
pojawienia się w konkurencyjnych ośrodkach przełomowych technologii, które pozwoliłyby na masową i tanią produkcję przyrządów o wysokich parametrach. Jedyną drogą przeciwstawienia się tym wyzwaniom jest ciężka praca załogi firmy prowadząca do zwiększenia konkurencyjności naszych produktów.
Profesor Józef Piotrowski, dyrektor ds. Badań i Rozwoju VIGO System
Józef Piotrowski studiował początkowo fizykę na Uniwersytecie Warszawskim, a następnie biofizykę na Uniwersytecie Leningradzkim. Pracę zawodową rozpoczął w Wojskowej Akademii Technicznej na Wydziale Chemii i Fizyki Technicznej, gdzie pracował do 1994 r. Tam uzyskał kolejne stopnie i tytuły naukowe. W latach 1994–1999 był zatrudniony w Instytucie Fizyki Plazmy i Laserowej Mikrosyntezy, a następnie w Wojskowym Instytucie Technicznym Uzbrojenia (1998–2007) i Politechnice Łódzkiej (2007–2012). Odbywał również długookresowe staże naukowe, najważniejsze z nich w Jugosławii, Australii, USA i Indiach. Drugim miejscem pracy od 1998 r. była firma VIGO System, która od 2012 r. jest jedynym miejscem zatrudnienia. Główny obszar działalności badawczej i wdrożeniowej to teoria, konstrukcja i technologia detektorów bliskiej, średniej i dalekiej podczerwieni. Rezultatem tej działalności jest również opracowanie unikalnych konstrukcji i technologii detektorów podczerwieni pracujących bez chłodzenia kriogenicznego. Przyrządy te zostały wdrożone do produkcji w VIGO System i eksportowane do wszystkich rozwiniętych krajów. Profesor Józef Piotrowski jest autorem lub współautorem ponad 300 publikacji, monografii i książek oraz 32 patentów.
32
Co – poza głośnym wydarzeniem związanym z lądowaniem na Marsie łazika Curiosity, który ma na pokładzie detektory wyprodukowane przez Vigo System – było dla Państwa firmy najbardziej warte odnotowania w ostatnich miesiącach lub latach? Józef Piotrowski: Detektory dla Curiosity były stosunkowo prostymi przyrządami o niezbyt wysokich parametrach funkcjonalnych i zostały skonstruowane zgodnie z koncepcjami rozwijanymi w Vigo przez ostatnie 20 lat. Musiały być przyrządami niezawodnymi; w kosmosie nie jest możliwa ich naprawa lub wymiana, a szkody spowodowane defektami byłyby bardzo duże. Z tego względu konieczne były dalsze badania oraz wprowadzenie nowych technik wytwarzania przyrządów i metod oceny ich niezawodności, wykorzystane później także w produkcji dla potrzeb ziemskich. Znaczącym wydarzeniem dla firmy była budowa i zagospodarowanie nowego gmachu, który będzie centrum produkcyjnym i badawczo-rozwojowym firmy. Rozpoczęliśmy badania nad wykorzystaniem alternatywnych do HgCdTe materiałów – w szczególności grafenu i półprzewodników supersieciowych. Grafen posłuży do konstrukcji niezwykle szybkich, chociaż niezbyt czułych przyrządów. Półprzewodniki supersieciowe mogą stać się podstawą masowej, taniej produkcji detektorów promieniowania o dowolnej długości fali. Znowu konieczne będzie opanowanie nowych technologii, bardzo złożonych i wymagających kosztownego sprzętu. Rozwija się owocna współpraca naszej firmy z polskimi uczelniami i instytutami badawczymi, w szczególności z Wojskową Akademią Techniczną, Politechniką Warszawską i Politechniką Łódzką, warszawskim Instytutem Technologii Elektronowej, a także innymi instytucjami. 10 lat temu stworzyliśmy wspólnie z Wojskową Akademią Techniczną jedno z najnowocześniejszych na świecie laboratoriów badawczo-produkcyjnych. Był to w Polsce pionierski pomysł, którego efekty są trudne do przecenienia. Prace badawcze prowadzone w tym laboratorium są ściśle podporządkowane potrzebom rynku,
Maciej Rzeczkowski, kierownik Wydziału Elektroniki VIGO System
Maciej Rzeczkowski studiował na Politechnice Warszawskiej na Wydziale Mechatroniki. W latach 1994–1997 pracował jako konstruktor w Laser Instruments. Specjalizował się w opracowaniu konstrukcji laserów medycznych dużej mocy. W latach 1997–1999 pracował w VIGO System jako konstruktor. Od 2000 r. do dnia dzisiejszego jest kierownikiem Wydziału Elektroniki w VIGO System. Nadzoruje prace badawczo-rozwojowe i produkcję urządzeń optoelektronicznych przeznaczonych do detekcji dalekiej podczerwieni. Główne obszary prac to rozwój modułów detekcyjnych i elektroniki towarzyszącej detektorom produkowanym w VIGO System oraz rozwój i produkcja kamer termograficznych. Jest współtwórcą skanującej kamery termograficznej V-20 i następnych wykonanych w oparciu o detektory mikrobolometryczne serii VIGOcam.
w rezultacie to unikatowe połączenie nauki z przemysłem pozwala dotrzymywać kroku największym światowym producentom podzespołów fotonicznych. Obecnie, wobec pilnej konieczności podjęcia badań nad nowymi technologiami, zamierzamy powtórzyć to rozwiązanie, które przyniosło rewelacyjne rezultaty.
Rozmawiała Urszula Chojnacka PAR
ELEMENTY I WYPOSAŻENIE
Robotyka
Miniaturowe złącza elektryczne serii SureCon 360 firmy OMNETICS Wiodący producent niezawodnych miniaturowych złączy elektrycznych do aplikacji o najwyższych wymaganiach, firma Omnetics, oferuje kolejne złącza serii SureCon 360, zaliczające się z pewnością do grupy najmniejszych złączy
Fot. VIGO System, Semicon
okrągłych dostępnych na rynku (średnica od 8,3 mm do 9,8 mm).
Złącza charakteryzujące się rastrem 0,64 mm oraz stopniem ochrony IP67 są już dostępne w wersjach z 6, 11 oraz 16 kontaktami oraz trzema rodzajami dedykowanych przewodów: do zastosowań militarnych (UL94 V-O), medycznych (biokompatybilność zgodna z wymaganiami normy PN-EN ISO 10993) oraz standardowych. Złącza serii SureCon 360, podobnie jak wszystkie złącza firmy Omnetics, są stosowane wszędzie tam, gdzie kluczowymi parametrami są jednocześnie wymiary, masa i odporność na czynniki środowiskowe. Podobnie, jak w przypadku wszystkich złączy serii Nano firmy Omnetics obciążalność prądowa pojedynczego kontaktu elektrycznego wynosi 1 A, a wytrzymałość dielektryka określono na poziomie 250 V AC. Przy wskazanym obciążaniu rezystancja złoconego kontaktu nie powinna przekraczać 25 mΩ. Zakres temperatury pracy określono przedziałem od –55 oC do 85 oC. Odporność na wibracje oraz udary charakteryzują odpowiednio wartości 20 g oraz 100 g przy założeniu, że czas nieciągłości transmitowanego sygnału nie przekracza 10 ns. Omnetics jest światowym producentem specjalizowanych złączy miniaturowych o dużej gęstości połączeń (bardzo mały raster) projektowanych przede wszystkim pod kątem potrzeb przemysłu kosmicznego, obronnego, lotniczego i medycznego. Ze względu na unikalne parametry (między innymi zoptymalizowana rozszerzalność termiczna, wysoki poziom ekranowania EMC, minimalne przesłuchy między przewodami) złącza firmy Omnetics zastosowano w konstrukcji miniaturowych jednostek pomiaru przeciążenia łazika „Curiosity” – zautomatyzowanego i autonomicznego laboratorium naukowo-badawczego wysłanego na Marsa w ramach programu Mars Science Laboratory. Złącza te znajdują także zastosowanie w bardzo wymagających konstrukcjach przemysłowych, w tym w robotyce. Omnetics oferuje przede wszystkim miniaturowe złącza okrągłe oraz złącza typu D-SUB o dużej gęstości. Ze względu na wymagania montażowe i niezawodność, złącza te mogą być zaciskane na przewodach zalecanych przez producenta lub wskazanych przez klienta. Dostępne są alternatywne wersje z możliwością lutowania elementów kontaktowych. Złącza specjalistyczne po procesie montażu mogą być wypełniane zalewą epoksydową poprawiającą stabilność i niezawodność w bardzo trudnych warunkach pracy. Złącza Omnetics są często zabezpieczane Promocja
przed przypadkowym rozłączeniem w trakcie pracy za pomocą elementów mechanicznych. Zdecydowana większość specjalizowanych złączy spełnia wymagania Amerykańskiej Normy Wojskowej MIL.
Mariusz Sochacki SEMICON Sp. z o.o. www.omnetics.com www.semicon.com.pl reklama
Pomiary Automatyka Robotyka nr 5/2013
33
Automatyka STEROWNIKI PLC
Programowanie sterowników PLC zgodnie z normą IEC 61131-3. Część 3 Z upływem czasu sterowniki PLC przestały pełnić rolę programowalnego substytutu przekaźników, a implementowane w nich algorytmy sterowania nie ustępują obecnie stopniem komplikacji złożonym programom komputerowym. Z tego powodu do programowania sterowników PLC oprócz języków graficznych stosowane są również języki tekstowe. W poprzednim artykule omówione zostały dwa języki graficzne ujęte w normie IEC 61131-3. Pierwszy z nich to język drabinkowy – dziedzictwo po schematach układów przekaźnikowych, który doskonale nadaje się do opisu układów kombinacyjnych, opartych na logice Boole’a. Drugi – język FBD, zbliżony swoją konstrukcją do schematów elektronicznych – umożliwia przedstawienie w naturalny sposób klasycznych układów regulacji. Słabym punktem obydwu języków jest realizacja złożonych obliczeń matematycznych oraz struktur algorytmicznych, np. iteracji (pętli). W niniejszym artykule omówione zostaną dwa kolejne języki standardu IEC 61131-3, które wypełniają tę lukę – lista rozkazów IL (ang. Instruction List) oraz tekst strukturalny ST (ang. Structured Text). Obydwa mają formę tekstową. Docenią je więc osoby mające doświadczenie w programowaniu komputerów lub mikrokontrolerów.
Lista rozkazów IL Język IL, zwany listą rozkazów (lub listą instrukcji), można określić dwoma słowami – surowy i wydajny. Surowy, gdyż pod względem swojej składni przypomina bardzo język programowania niskiego poziomu – asembler. Wydajny, gdyż można go, tak jak język asemblera, łatwo przetłumaczyć na kod maszynowy (wewnętrzny język mikroprocesorów). O ile jednak języki niskopoziomowe (bliskie maszynowemu) charakteryzują się niską lub wręcz żadną przenośnością (co jest skutkiem stosowania poleceń specyficznych dla danego procesora/mikrokontrolera), o tyle język IL zgodny z normą IEC 61131-3 umożliwia przenoszenie kodu między sterownikami implementującymi ten standard.
34
Jak sama nazwa wskazuje, program w języku IL składa się z sekwencji rozkazów. Poszczególne rozkazy zbudowane są z operatorów (opisujących operację) oraz, jeśli dany operator tego wymaga, jednego lub więcej operandów (argumentów operacji) oddzielonych przecinkami. Operatory mogą mieć modyfikatory, zmieniające sposób ich działania. Każdy rozkaz może być poprzedzony etykietą (identyfikator i znak dwukropka), a na końcu rozkazu można umieścić komentarz. Struktura przykładowego rozkazu ma postać: Etykieta Operator z modyfikatorami
_LBL1:
LDN
Ważną cechą języka IL jest zwięzłość zapisu. Podobnie jak mnemoniki w asemblerze, operator ma krótką formę będącą skrótem angielskiego słowa opisującego wykonywaną operację. Dostępne w języku IL operatory z możliwymi modyfikatorami oraz krótkim opisem zostały zestawione w tab. 1. Operandy mogą mieć postać literałów lub zmiennych, a w bardziej złożonych przypadkach przyjmować wartość operacji zamkniętych nawiasami.
Przykład 1. Pierwszy program w języku IL będzie obliczał średnią arytmetyczną dwóch liczb. Wartości argumentów przechowywane są w zmiennych DATA_1 i DATA_2, a wynik będzie umieszczony w zmiennej AVG. Wszystkie zmienne są typu REAL. Nr
0001 0002 0003 0004
Wynik
1 3 1,5 1,5
Lista rozkazów
LD ADD DIV ST
DATA_1 DATA_2 2 AVG
Pojedyncze wykonanie programu dla wartości zmiennych DATA_1 = 1 i DATA_2 = 2 zostało przedstawione w tabeli, by ułatwić analizę działania programu. W pierwszej kolumnie znajdują się numery linii programu, druga to tzw. aktualny wynik przechowywany w specjalnym rejestrze (odpowiedniku akumulatora w asemblerze). Jest on aktualizowany po wykonaniu rozkazu umieszczonego w trzeciej kolumnie. Wykonanie pier wszego rozkazu spowodowało przypisanie warOperandy
Komentarz
IN_1
(* przykładowy komentarz *)
tości zmiennej DATA_1 do aktualnego wyniku. Następnie wynik ten został zwiększony o wartość DATA_2 za pomocą operatora ADD i podzielony przez dwa (operator DIV). Końcowa wartość została zapisana w zmiennej AVG (operator ST). Prosty program z przykładu 1. pozwala zobrazować sposób przetwarzania danych w liście rozkazów. Ważną rolę pełni tu specjalny rejestr, przechowujący tzw. aktualny wynik. Wykonanie programu sprowadza się głównie do modyfikacji tego rejestru za pomocą operatorów i ich operandów. Można to zinterpretować jako ogólną zależność: WYNIK = WYNIK OPERATOR OPERAND Linię 0002 z przykładu 1. w takim zapisie można przedstawić następująco: WYNIK = 1 ADD 3
Tab. 1. Zestawienie operatorów języka IL Operator
LD
Dostępne modyfikatory
Skrót od
Opis
N
LoaD
Przypisuje wartość operandu do aktualnego wyniku
N
STore
Przypisuje wartość aktualnego wyniku do operandu
S
Set
Przypisuje wartość 1 do operandu, o ile aktualny wynik ma wartość logiczną TRUE
R
Reset
Przypisuje wartość 0 do operandu, o ile aktualny wynik ma wartość logiczną TRUE
AND (&)
N, (
AND Wykonuje operację koniunkcji logicznej na dotychczasowym wyniku i operandzie, jej rezultat przypisuje do aktualnego wyniku
OR
N, (
OR Wykonuje operację alternatywy logicznej na dotychczasowym wyniku i operandzie, a jej rezultat przypisuje do aktualnego wyniku
XOR
N, (
eXcusive OR Wykonuje operację alternatywy wykluczającej na dotychczasowym wyniku i operandzie, a jej rezultat przypisuje do aktualnego wyniku
ST
NOT
NOT Wykonuje operację negacji logicznej na dotychczasowym wyniku, a jej rezultat przypisuje do aktualnego wyniku
ADD
(
ADD
Dodaje operand do dotychczasowego wyniku i zapisuje rezultat jako aktualny wynik
SUB
(
SUBtract
Odejmuje operand od dotychczasowego wyniku i zapisuje rezultat jako aktualny wynik
MUL
(
MULtiply
Mnoży operand przez dotychczasowy wynik i zapisuje rezultat jako aktualny wynik
DIV
(
DIVide
Dzieli dotychczasowy wynik przez operand i zapisuje rezultat jako aktualny wynik
MOD
(
MODulo Przypisuje do aktualnego wyniku resztę z dzielenia całkowitego (modulo dotychczasowego wyniku przez operand
GT
(
Greater Than Sprawdza, czy dotychczasowy wynik jest większy od operandu i przypisuje rezultat sprawdzenia do aktualnego wyniku
GE
(
Greater than or Equal Sprawdza, czy dotychczasowy wynik jest większy lub równa się operandowi, i przypisuje rezultat sprawdzenia do aktualnego wyniku
EQ
(
EQual Sprawdza, czy dotychczasowy wynik równa się operandowi, i przypisuje rezultat sprawdzenia do aktualnego wyniku
NE
(
Not Equal Sprawdza, czy dotychczasowy wynik jest różny od operandu, i przypisuje rezultat sprawdzenia do aktualnego wyniku
LE
(
Less than or Equal Sprawdza, czy dotychczasowy wynik jest mniejszy lub równa się operandowi, i przypisuje rezultat sprawdzenia do aktualnego wyniku
LT
(
Less Than Sprawdza, czy dotychczasowy wynik jest mniejszy od operandu, i przypisuje rezultat sprawdzenia do aktualnego wyniku
JMP
C, N
JuMP
Realizuje skok do etykiety podanej jako operand
CAL
C, N
CALl
Realizuje wywołanie bloku funkcyjnego, którego nazwa została podana jako operand
RET
C, N
RETurn
Realizuje powrót do POU, z której nastąpiło wywołanie bieżącej POU
)
Charakterystyczną cechą rejestru przechowującego aktualny wynik jest brak przypisanego na stałe typu jego zawartości. Typ ten może się zmieniać w zależności od wykonywanego rozkazu. W przykładzie 1 poszczególne rozkazy były wykonywane w kolejności występowania. Kolejność wykonywania rozkazów
Jest to operator ograniczający dla modyfikatora (
można jednak zmienić, stosując instrukcje skoków i etykiety. Warto tutaj przypomnieć, że w poprzednim artykule, opisującym języki graficzne, instrukcja skoku została przedstawiona jako element obniżający jakość kodu przez zmniejszenie jego przejrzystości i niezawodności. O ile jednak w językach graficznych zastosowanie tych instrukcji
można zmarginalizować, o tyle w liście rozkazów (przy rozwiązywaniu problemów bardziej złożonych niż obliczanie wartości średniej arytmetycznej z dwóch liczb) są one trudne do uniknięcia. Wynika to z faktu, że instrukcje skoków warunkowych są, w przypadku języka IL, jedyną możliwością tworzenia rozgałęzień w programie.
Pomiary Automatyka Robotyka nr 5/2013
35
Automatyka STEROWNIKI PLC
Przykład 2. Skoki warunkowe i przetwarzanie aktualnego wyniku zostaną omówione na przykładzie nieco bardziej skomplikowanego programu. Jego zadaniem będzie porównanie dwóch liczb zapisanych w zmiennych DATA_1 i DATA_2 typu REAL i umieszczenie wyniku porównania w zmiennej CMP (typu INT). Reguła określająca wartość CMP ma postać: CMP = 1 CMP = 0 CMP = –1
Nr
jeśli DATA_1 > DATA_2, jeśli DATA_1 = DATA_2, jeśli DATA_1 < DATA_2. Wynik
Lista rozkazów
* 0001
4,7
LD
DATA_1
* 0002
TRUE
LE
DATA_2
JMPC
_LE
* 0003
0004
LD
1
0005
ST
CMP
0006
JMP
_END
* 0007
_LE:
* 0008
4,7
LD
DATA_1
TRUE
NE
DATA_2
JMPC
_LT
* 0009 * 0010
0011
LD
0
0012
ST
CMP
0013
JMP
_END
* 0014
_LT:
* 0015
–1
LD
–1
–1
ST
CMP
* 0016 * 0017
_END:
Program (wraz z wartościami chwilowymi dla pojedynczego wykonania) dla danych DATA_1 = 4,7 i DATA_2 = 6,5 został przedstawiony w formie tabeli, jak w poprzednim przykładzie. Numery linii programu, które zostały wykonane, oznaczono gwiazdką.
36
Program ten można podzielić na trzy części, odpowiadające trzem możliwym rezultatom porównania. W liniach 0001– –0006 następuje sprawdzenie, czy wartość DATA_1 jest mniejsza lub równa DATA_2, a pozytywny wynik sprawdzenia powoduje wykonanie skoku warunkowego (JMPC) do etykiety _LE. W przeciwnym wypadku (jeśli wartość DATA_1 jest większa od DATA_2) następuje przypisanie wartości 1 do zmiennej CMP i skok bezwarunkowy (JMP) do etykiety _END oznaczającej koniec programu. W liniach 0007–0013 sprawdzane jest, czy wartość DATA_1 jest różna od DATA_2 i jeśli tak, wykonywany jest skok warunkowy do etykiety _LT. W przeciwnym wypadku wartość DATA_1 musi być równa DATA_2, co powoduje przypisanie wartości 0 do zmiennej CMP i skok bezwarunkowy do etykiety _END. Linie 0014–0016 zostają wykonane tylko w przypadku, gdy wartość DATA_1 jest mniejsza od DATA_2, dlatego też do zmiennej CMP jest przypisywana wartość –1. W rozpatrywanym przez nas przypadku (DATA_1 = 4,7 i DATA_2 = 6,5) wartość DATA_1 jest mniejsza od DATA_2, dlatego też w linii 0002 aktualny wynik przyjmuje wartość TRUE, co powoduje wykonanie w linii 0003 skoku warunkowego do linii 0007. Kolejne porównanie w linii 0008 również zwraca wartość TRUE, co z kolei w linii 0010 skutkuje skokiem warunkowym do linii 0014. W liniach 0015 i 0016 wartość CMP jest ustawiana na –1, czym kończy się wykonanie programu. Można zauważyć, że aktualny wynik w zależności od rozkazu jest typu REAL (np. linia 0008), typu BOOL (np. linia 0002) albo typu INT (np. linia 0015). Rozgałęzienia programu zostały stworzone za pomocą instrukcji porównania (LE, NE) i występujących po nich instrukcji skoków warunkowych (JMPC). Jak wspomniano, działanie operatorów może zostać zmienione przy zastosowaniu modyfikatorów. W tab. 1 występują wszystkie trzy dostępne w IL modyfikatory, tj. modyfikator negacji (N), modyfikator warunkowy (C) oraz nawiasy. Modyfikator C, zastosowany w przykładzie 2 z operatorem JMP, uzależnia jego działanie od aktualnej wartości logicznej wyniku – tzn. skok jest wykonywany tylko wtedy, kiedy aktualny wynik ma wartość TRUE. Poza instrukcją skoku może on być użyty również z operatorami wywołania i powrotu z POU (tj. CAL i RET). Ma on wtedy takie samo
działanie, jak w przypadku JMP, tzn. warunkuje wykonanie tych instrukcji wartością logiczną aktualnego wyniku. Modyfikator N natomiast może być zastosowany do negacji logicznej operandu. Przykładowo użyty wraz z operatorem AND w rozkazie: ANDN OPERAND może być zinterpretowany w następujący sposób: WYNIK = WYNIK AND NOT OPERAND Modyfikator N może być również użyty razem z modyfikatorem C. W takim wypadku instrukcja, której dotyczy, jest wykonywana wówczas, jeśli wartością logiczną wyniku jest FALSE. Ostatnim modyfikatorem jest znak nawiasu otwierającego. Dodanie go do operatora powoduje przyjęcie jako operandu rezultatu wszystkich operacji aż do nawiasu zamykającego (który jest samodzielnym operatorem bez operandów).
Przykład 3. Utwórzmy program w postaci listy instrukcji, będący odpowiednikiem logiki stykowej (programu w języku drabinkowym). Program ten będzie realizował sterowanie załączaniem i wyłączaniem jakiegoś urządzenia (może być to np. silnik lub cała maszyna). Załączanie i wyłączanie to będzie możliwe w trybie automatycznym (aktywny, jeśli zmienna AUTO_MODE ma wartość TRUE) lub ręcznym (AUTO_MODE o wartości FALSE), przy czym w każdym z tych trybów działają tylko dedykowane im sygnały sterujące. I tak w trybie automatycznym działają sygnały AUTO_START i AUTO_STOP (które mogą być np. rezultatem działania innej części programu) oraz EXT_ START i EXT_STOP (odbierane np. z urządzenia nadrzędnego). W trybie ręcznym działają natomiast sygnały MAN_START i MAN_STOP (np. z przycisków lub panelu operatorskiego). Pojawienie się sygnału FAULT, sygnalizującego awarię, powoduje natychmiastowe wyłączenie urządzenia i uniemożliwia jego ponowne załączenie. Program jest stosunkowo prosty w realizacji za pomocą języka drabinkowego (rys. 1), ale już jego odpowiednik zrealizowany za pomocą listy rozkazów wymaga pewnych wyjaśnień. Został on skonstruowany tak, że pierwszemu szczebelkowi drabinki odpowiadają linie 0001–0009, drugiemu natomiast
linie 0011–0018. Szeregowemu połączeniu styków w drabince odpowiada w liście rozkazów instrukcja AND, równoległemu zaś OR. Wspomniany wcześniej modyfikator N (w instrukcji ANDN) odpowiada natomiast negacji styku (zamienia styk normalnie otwarty na normalnie zamknięty). Problem pojawia się wówczas, kiedy trzeba przełożyć na listę instrukcji połączenie równoległe, w którego gałęzi jest więcej niż jeden element połączony szeregowo (np. styki MAN_START i AUTO_MODE w pierwszym szczebelku drabinki). Pomocne okazują się nawiasy, jak np. w konstrukcjach w liniach 0004–0007 i 0014–0016. Powodują one, że operandem dla OR staje się w obydwu przypadkach wynik operacji ANDN w nich zawartej, co odpowiada właśnie równoległemu dołączeniu gałęzi z dwoma szeregowo połączonymi stykami.
nawiasów. I tak, w liniach 0004–0007 wykorzystana została konstrukcja:
oraz IN3), to jej wywołanie będzie wyglądać w następujący sposób:
OR( LD ANDN )
LD FUN ST
MAN_START AUTO_MODE
Przykład 4. natomiast w liniach 0014–0016 jej skrótowa forma:
OR( ANDN )
MAN_STOP AUTO_MODE
Obydwie są równoważne.
Funkcje i bloki funkcyjne w języku IL Aby zwiększyć czytelność bardziej skomplikowanych programów pisanych w języku IL, warto zastosować jego podział na mniejsze części przy użyciu funkcji
Rys. 1. Program w języku drabinkowym i jego odpowiednik w liście rozkazów
Program, który został zrealizowany stosunkowo łatwo w języku drabinkowym, okazał się dużo bardziej kłopotliwy podczas implementacji za pomocą listy rozkazów. Również ewentualna analiza takiego programu jest łatwiejsza w przypadku drabinki. Po raz kolejny potwierdza się reguła, że należy wykorzystywać mnogość dostępnych w standardzie IEC języków, dobierając je do każdego problemu indywidualnie. W przykładzie 3 warto również zwrócić uwagę na dwie możliwe formy użycia
IN1 IN2, IN3 OUT
i bloków funkcyjnych. Należy przy tym zwrócić uwagę na różnice, jakie występują w sposobie wywoływania funkcji i bloków funkcyjnych w liście rozkazów. Nazwa wywoływanej funkcji w IL zajmuje miejsce operatora, a jej argumenty – miejsca operandów, przy czym jako pierwszy argument przyjmowany jest aktualny wynik. Po wykonaniu funkcji do aktualnego wyniku przepisywana jest zwracana przez nią wartość. I tak, jeśli przykładowa funkcja FUN wymaga podania trzech wartości (nazwijmy je IN1, IN2
Wywołanie funkcji zobrazujemy na przykładzie bloku funkcyjnego, który realizuje zadanie ograniczenia prędkości zmian sygnału podanego na jego wejście. W praktyce rozwiązanie takie stosuje się podczas zadawania prędkości dla silnika zasilanego z przemiennika częstotliwości. Jeżeli silnik taki napędza układ mechaniczny o dużej bezwładności, to zbyt szybie zmiany prędkości zadanej mogą prowadzić do osiągnięcia granicznego prądu i w rezultacie błędu napędu. Poza tym, zbyt dynamiczne zmiany prędkości mogą być szkodliwe również dla samego układu mechanicznego. Opisany blok funkcyjny (rys. 2), poza sygnałem wejściowym (zmienna IN typu REAL) będzie pobierał wartości graniczne, o które może zmienić się w górę i w dół ten sygnał podczas jednego wywołania (odpowiednio UP i DN typu REAL). Na wyjściu blok będzie natomiast zwracał sygnał o ograniczonej dynamice zmian (OUT typu REAL). W liniach 0001–0003 obliczana jest różnica pomiędzy wartością zadaną a aktualną, która zapisywana jest w zmiennej wewnętrznej DIFF. Następnie (linie 0004–0008) sprawdzany jest znak tej różnicy. Jeśli równa się ona zeru, następuje skok do końca bloku funkcyjnego (oznaczony etykietą _END). Jeśli jest ona większa od zera, następuje skok do etykiety _UP, jeśli natomiast mniejsza – przejście dalej do części rozpoczynającej się etykietą _DOWN. W tej części programu (linie 0010– –0017) zmniejsza się wartość aktualna sygnału o mniejszą z dwóch liczb – wartość bezwzględną z DIFF lub DN. Zabezpiecza to przed „przeskoczeniem” wartości zadanej w przypadku, gdy wartość aktualna byłaby bliżej niej niż DN. Operacja ta jest realizowana z wykorzystaniem dwóch funkcji: ABS i MIN. Funkcja ABS (wartość bezwzględna) ma tylko jeden argument, który przekazywany jest przez aktualny wynik – w tym wypadku DIFF. Funkcja MIN jako pierwszy argument przyjmuje wynik funkcji ABS (czyli wartość absolutną DIFF), a jako drugi DN. Warto zwrócić uwagę na zastosowanie nawiasów,
Pomiary Automatyka Robotyka nr 5/2013
37
Automatyka STEROWNIKI PLC
powodujące, że operandem funkcji SUB jest wynik opisanych wyżej operacji. W części programu od etykiety _UP (linie 0019–0023) następuje zwiększenie wartości aktualnej sygnału o mniejszą z dwóch wartości – DIFF lub UP. Jest to realizowane analogicznie jak jej zmniejszanie, które opisano wcześniej. Bloki funkcyjne w języku IL wywołuje się za pomocą operatora CAL. Nazwa bloku podawana jest przy tym jako operand. Po niej mogą wystąpić przypisania wartości do wejść i wyjść bloku umieszczone w nawiasie. Jeśli przykładowy blok funkcyjny FB (mający instancję o nazwie FB1) ma wejścia IN1 i IN2 oraz wyjście OUT, to jego wywołanie może wyglądać następująco: CAL FB1(IN1 := V1, IN2 := V2, OUT => V3) Oczywiście nie wszystkim wejściom i wyjściom muszą zostać przypisane wartości. W przypadku pominiętych wejść zostaną zastosowane wartości z poprzedniego wywołania lub inicjujące (jeśli jest to pierwsze wywołanie). Blok funkcyjny może również zostać wywołany bez argumentów. Przypisanie wartości do wejść może w takim przypadku zostać wykonane wcześniej, natomiast odczytanie wartości wyjściowych po wywołaniu. Opisany wcześniej blok FB1 może zostać wywołany następująco: LD ST LD ST CAL LD ST
V1 FB1.IN1 V2 FB1.IN2 FB1 FB1.OUT V3
Przykład 5. Do zaprezentowania sposobu wywoływania bloków funkcyjnych użyjemy programu generującego skokowo zmieniającą się wartość. Przy okazji przetestujemy działanie bloku funkcyjnego RAMP z poprzedniego przykładu, podając na wejście IN tak przygotowany sygnał. Program (rys. 2) podzielony został na część inicjującą (linie 0001–0009), obsługę liczników (linie 0011–0028), przełączanie wartości zadanych (linie 0030–0042) oraz wywołanie instancji bloku funkcyjnego RAMP_1 (0044– –0049). W części inicjującej następuje przepisanie wartości na wejścia PV trzech
38
Rys. 2. Blok funkcyjny RAMP i program do jego testowania liczników (C1, C2 i C3), które zostaną w dalszej części wykorzystane do generowania sygnałów przełączających wartość zadaną. Zapis realizowany jest przez bezpośrednie odwołanie w instrukcji ST do wejścia danego licznika (linie 0005, 0007 i 0009). W części obsługi liczników generowany jest sygnał SYNCH, przyjmujący naprzemiennie wartości logiczne TRUE i FALSE, który jest następnie wykorzystywany jako impulsy wejściowe liczników, powodując inkrementację ich wartości aktualnych co drugi cykl programu. Po wywołaniu liczników za pomocą operatora CAL, następuje część warunkowa, w której sprawdzane jest, czy
któryś z liczników osiągnął wartość zadaną i jeśli tak – skok do odpowiadającej mu etykiety (dla C1 jest to _LEVEL_1, dla C2 – _LEVEL_2, a dla C3 – _LEVEL_3). Jeśli żaden nie osiągnął wartości zadanej, wartość IN ustawiana jest na zero. W części przełączania wartości zadanej ustawiana jest ona, w zależności od zliczonej liczby impulsów, na 10 (po dziesięciu impulsach), na 20 (po trzydziestu) lub na –2 (po trzydziestu pięciu). Wywołanie bloku RAMP_1 zostało zrealizowane w drugi z omówionych sposobów, tj. z umieszczeniem w nawiasie powiązań parametrów wejściowych i wyjściowych.
Rys. 3. Wejście (kolor zielony) i wyjście (kolor czerwony) bloku RAMP
Przebieg wartości zadanej (kolor zielony) i wyjściowej (kolor czerwony) z bloku RAMP_1 przedstawiono na rys. 3.
Tekst strukturalny (ST) Jeśli listę rozkazów można porównać do niskopoziomowego języka asemblera, to tekst strukturalny odpowiada językowi wysokiego poziomu, takiemu jak Pascal. Zapewnia on dużo większy komfort od listy rozkazów, ale może to być okupione mniejszą kontrolą nad kodem wynikowym (wygenerowanym kodem maszynowym). To z kolei, szczególnie przy prostszych sterownikach kompaktowych, może prowadzić do szybkiego zapełnienia pamięci przeznaczonej na program. Podstawowym elementem programu w języku ST są instrukcje. W kodzie programu są one oddzielone od siebie średnikami. Wśród elementów składowych instrukcji można wyróżnić wyrażenia, które z kolei złożone są z operatorów i operandów. Przykładowe wyrażenie może mieć postać: A*(B+C)+SIN(B/4) > 2.5 Operatory zaznaczono kolorem niebieskim. Jak widać mogą nimi być funkcje, operacje arytmetyczne czy nawiasy. Wszystkie dostępne w tekście strukturalnym operatory zostały zestawione wraz z opisem działania w tab. 2. Operandami mogą natomiast być (podobnie jak w liście rozkazów) literały, zmienne lub wyrażenie, tak jak w powyższym przykładzie, gdzie argumentem funkcji SIN jest wyrażenie B/4. Obliczanie wartości wyrażenia odbywa się w kolejności określonej priorytetami poszczególnych operatorów, tzn. rozpoczyna się od operatora o najwyższym
Przykład 6.
priorytecie, a kończy na tym o najniższym. Jeżeli operatory mają taki sam priorytet, obliczanie przebiega od lewej strony do prawej. Priorytety operatorów języka ST zestawiono w tab. 2 (im mniejsza liczba, tym wyższy priorytet).
Podczas porównywania wartości analogowych (np. sprawdzania, czy silnik osiągnął zadaną prędkość) należy założyć pewien przedział tolerancji, aby wyeliminować wpływ wszelkiego rodzaju zakłóceń na
Tab. 2. Zestawienie operatorów języka ST Priorytet
Operator
Nazwa
Opis
1 (...) nawiasy
Służą do grupowania i zmiany kolejności wykonywania operacji, np. w wyrażeniu A* (B+C) najpierw wykonane zostanie dodawanie, a dopiero potem mnożenie
2 F(...)
Zwraca wartość funkcji F, np. MIN(A, B), LOG(A)
obliczenie wartości funkcji
3 ** potęgowanie
Zwraca wartość lewego operandu podniesioną do potęgi równej wartości prawego, np. A**B
–
negacja
Zwraca wartość przeciwną, np. –A
4
NOT
negacja logiczna
Zwraca negację logiczną, np. NOT(A)
*
mnożenie
Zwraca iloczyn operandów, np. A*B
/
dzielenie
Zwraca iloraz operandów, np. A/B
MOD
reszta z dzielenia
Zwraca resztę z dzielenia operandów, np. A MOD B
+
dodawanie
Zwraca sumę operandów, np. A+B
-
odejmowanie
Zwraca różnicę operandów, np. B-A
7
<, >, <=, porównanie >=
5
6
Zwraca wynik porównania wartości operandów, np. A>B, B<=C
8 = równość
Zwraca wynik porównania wartości operandów, np. A=B
<> nierówność
Zwraca wynik porównania wartości operandów, np. A<>B
9
&
koniunkcja logiczna Zwraca wynik koniunkcji operandów, np. A & B
AND
koniunkcja logiczna Zwraca wynik koniunkcji operandów, np. A AND B
10 XOR
alternatywa wykluczająca
Zwraca wynik alternatywy wykluczającej operandów, np. A XOR B
alternatywa
Zwraca wynik alternatywy operandów, np. A OR B
11
OR
Pomiary Automatyka Robotyka nr 5/2013
39
Automatyka STEROWNIKI PLC
stabilność wyniku porównania. Zrealizujmy takie porównanie w funkcji utworzonej w języku ST. Funkcja ta (rys. 4) jako parametry wejściowe przyjmuje porównywane wartości (zmienne CV i SP) oraz przedział tolerancji (TOL), zwraca natomiast wynik porównania jako wartość typu BOOL (TRUE – wartości są równe z dokładnością +/– TOL).
W tekście strukturalnym istnieją dwie instrukcje pozwalające na uzależnienie wykonania części kodu (tj. instrukcji lub grupy instrukcji) od zaistnienia pewnych warunków. Pierwszą z nich jest instrukcja warunkowa IF (rys. 5). Precyzuje ona pewien fragment kodu, który zostanie wykonany tylko wówczas, jeśli powiązane z nią wyrażenie bę-
wyrażenie po IF będzie nieprawdziwe (będzie miało wartość logiczną FALSE).
Przykład 8. Zastosowanie instrukcji IF do zabezpieczenia programu przed błędem wynikającym z dzielenia przez zero można zrealizować w następujący sposób: IF (C <> 0) THEN A := B / C; END_IF; Bardziej rozbudowaną wersję tej instrukcji, wykorzystującą słowa kluczowe ELSE i ELSIF, można użyć do rozpatrzenia wszystkich możliwych przypadków takiego dzielenia i przypisania zmiennej A odpowiedniej wartości (tutaj INF jest stałą oznaczającą nieskończoność, a UNDEF to wynik nieokreślony): IF (C <> 0) THEN A := B / C; ELSIF (B <> 0) THEN A := INF; ELSE A := UNDEF; END_IF;
Rys. 4. Funkcja RNG
Instrukcje języka ST Języki strukturalne umożliwiają tworzenie programów zbudowanych jedynie z bloków sekwencji, selekcji oraz cyklów. Strukturalność programu „psują” natomiast instrukcje skoków, a także wszelkiego rodzaju polecenia przerywające (np. wykonywanie cyklu). W języku ST nie występuje instrukcja skoku a jedyną instrukcją przerywającą jest EXIT. Jedną z podstawowych instrukcji tekstu strukturalnego jest instrukcja przypisania. Jak sama nazwa wskazuje, przypisuje ona wartość do zmiennej. W najprostszej postaci może mieć ona postać:
dzie miało wartość logiczną TRUE. W przeciwnym wypadku nie zostanie wykonana żadna instrukcja, chyba że zostanie użyte jedno z dwóch słów kluczowych – ELSE lub ELSIF. Różnica pomiędzy nimi jest taka, że po ELSIF może wystąpić dodatkowy warunek (również w formie wyrażenia), którego spełnienie spowoduje wykonanie kodu umieszczonego po tym słowie kluczowym; kod umieszczony po ELSE wykona się natomiast zawsze, o ile
A := 2; W bardziej złożonym wariancie wartość występująca po prawej stronie instrukcji przypisania może być na przykład wynikiem wyrażenia lub rezultatem wywołania funkcji.
Przykład 7. Wykonanie poniższego programu spowoduje przypisanie do C wartości 10 (instrukcja SQRT oznacza pierwiastek kwadratowy). A : = 6; B : = 8; C : = SQRT(A*A + B*B);
40
Rys. 5. Instrukcja IF
Warto zwrócić uwagę na sposób formatowania tekstu w przykładach. Wprawdzie, poza oddzieleniem poszczególnych instrukcji średnikami, jest pełna dowolność przy podziale kodu na linie i w używaniu wcięć (tabulatorów), to jednak stosowanie konwencji znanej z innych języków wysokiego poziomu (np. używanie wcięć do wyodrębniania bloków) pozwala zachować porządek i przejrzystość programu.
Drugą instrukcją umożliwiającą warunkowe wykonanie części programu jest instrukcja wyboru CASE (rys. 6.). Pozwala ona wykonać jeden z wielu bloków instrukcji w zależności od wartości powiązanego z nią wyrażenia. Wyrażenie to może zwracać wartość dowolnego typu całkowitego lub wyliczeniowego i nazywane jest selektorem. Poszczególne fragmenty kodu przypisuje się do konkretnych wartości selektora za pomocą etykiet, będących jego wartościami lub zakresami wartości, które może on przyjmować. Jeżeli do aktualnej wartości selektora nie przypisano żadnego kodu (tj. nie istnieje odpowiadająca jej etykieta), to zostaną wykonane instrukcje po słowie kluczowym ELSE. Jeśli słowo kluczowe ELSE nie występuje, nie zostanie wykonana żadna instrukcja.
Przykład 9. Fragment programu, który zamienia numer miesiąca MONTH (typu INT) na jego nazwę NAME (typu STRING), można przy użyciu CASE zrealizować następująco: CASE MONTH OF 1: NAME := ’styczen’; 2: NAME := ’luty’; 3: NAME := ’marzec’; 4: NAME := ’kwiecien’; ... 12: NAME := ’grudzien’; ELSE NAME := ’nieprawidlowy’; END_CASE;
Poza omówionymi instrukcjami, tekst strukturalny udostępnia również tzw. cykle (pętle), tj. instrukcje umożliwiające wielokrotne wykonanie określonego kodu. Norma definiuje trzy takie instrukcje. Pierwszą z nich, instrukcję FOR (rys. 7), można użyć, jeśli znana jest liczba powtórzeń pętli. Z instrukcją tą powiązana jest zawsze zmienna sterująca, która może być dowolnego typu całkowitego. Pętla wykonuje się dla wszystkich wartości tej zmiennej z podanego zakresu.
zmodyfikować poprzedni przykład następująco: SUM := 0.0; FOR i := 9 TO 1 BY –2 DO SUM := SUM + DATA[i]; END_FOR; AVG := SUM / 5.0;
Przykład 10. Obliczanie wartości średniej elementów tablicy DATA[] można zrealizować z użyciem pętli FOR następująco: SUM := 0.0; FOR i := 1 TO 10 DO SUM := SUM + DATA[i] END_FOR; AVG := SUM / 10.0; Zmienna kontrolna (i) w powyższym przypadku przyjmuje wartości: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Dla każdej z nich suma powiększana jest o wartość i-tej komórki tablicy DATA. Wartości zmiennej kontrolnej mogą być również określone w porządku malejącym i/lub zmieniać się z krokiem innym niż jeden (zdefiniowanym za pomocą słowa kluczowego BY).
Przykład 11.
Rys. 7. Instrukcja FOR
Aby obliczyć średnią tylko z komórek o nieparzystych indeksach, można
Liczba wykonań pętli konstruowanych z użyciem kolejnych dwóch instrukcji nie jest z góry określona. Zamiast tego ich wykonanie, podobnie jak kodu po instrukcji IF, jest zdeterminowane wartością logiczną skojarzonego z nimi wyrażenia. I tak, instrukcja WHILE (rys. 8.) pozwala utworzyć pętlę, która będzie wykonywana tak długo, jak długo wartość logiczna powiązanego z nią wyrażenia będzie równa TRUE.
Przykład 12. Obliczanie wartości średniej arytmetycznej za pomocą pętli WHILE może być zrealizowane następująco:
Rys. 6. Instrukcja CASE
SUM := 0.0; i := 1; WHILE (i <= 10) DO SUM := SUM + DATA[i]; i := i + 1; END_WHILE; AVG := SUM / 10.0;
Pomiary Automatyka Robotyka nr 5/2013
41
Automatyka STEROWNIKI PLC
w tablicy, można zmodyfikować kod z instrukcją WHILE następująco:
Rys. 8. Instrukcja WHILE Instrukcja REPEAT (rys. 9) pozwala natomiast utworzyć pętle, której wykonywanie zostanie przerwane, kiedy wartość logiczna powiązanego z nią wyrażenia zmieni się na TRUE.
Przykład 13. Program obliczający średnią z przykładu 12. można przekształcić z użyciem pętli REPEAT do postaci: SUM := 0.0; i := 1; REPEAT SUM := SUM + DATA[i]; i := i + 1; UNTIL (i = 11) END_REPEAT; AVG := SUM / 10.0;
SUM := 0.0; i := 1; WHILE (i <= 10) DO IF (DATA[i] = 0) THEN EXIT; END_IF; SUM := SUM + DATA[i]; i := i + 1; END_WHILE; AVG := SUM / 10.0;
Funkcje i bloki funkcyjne w języku ST Podobnie jak w liście rozkazów, wywołanie funkcji różni się w tekście strukturalnym od wywołania bloku funkcyjnego. Funkcje w języku ST powinny być wywoływane w wyrażeniach. Wynik tak wywołanej funkcji staje się wtedy operandem używanym w tym wyrażeniu. Funkcje można również wywoływać poza wyrażeniami, ich wynik jest jednak wtedy tracony. Przykładowo wywołanie funkcji FC o parametrach C, D i E w instrukcji przypisania ma postać: A := B + FC(C, D, E); Wywołanie bloków funkcyjnych w języku ST ma natomiast podobną postać jak w liście rozkazów, ale nie wymaga żadnej dodatkowej instrukcji. Przykładowa instancja FB1 bloku funkcyjnego FB, z wejściami IN1 i IN2 oraz wyjściem OUT, może zostać wywołana następująco: FB1(IN1 := A, IN2 := B, OUT => C);
Przykład 15.
Rys. 9. Instrukcja REPEAT
Z instrukcjami pętli powiązana jest instrukcja EXIT. Pozwala ona zakończyć pętlę, zanim zostanie spełniony warunek jej normalnego zakończenia.
Przykład 14. Aby zakończyć obliczanie średniej po napotkaniu pierwszej zerowej wartości
42
Podsumowaniem części dotyczącej języka ST będzie program realizujący sterowanie prędkością silnika zgodnie z zaprogramowanym profilem (rys. 10). Aby uprościć zagadnienie, profil będzie zawierał tylko informacje o prędkości; informacje o przyspieszeniu i opóźnieniu będą zawarte w modelu silnika, do którego budowy wykorzystany zostanie blok RAMP utworzony w przykładzie 4 (w języku IL). Do przechowywania profilu prędkości utworzono tablicę PRGS, zawierającą 10 elementów typu T_PRG. Każdy z nich jest natomiast strukturą zawierającą pola PTYPE (typu wyliczeniowego T_PTYPE), PTIME (typu INT) oraz PSPEED (typu REAL). Pole PTYPE określa rodzaj ruchu, jego możliwe wartości to: PT_STOP – postój, PT_RUN_P – praca w kierunku umownie przyjętym za dodatni oraz PT_RUN_N – praca w kierunku przyjętym za ujemny. Pole PSPEED określa prędkość zadaną (jednostki nie zostały określone – można przyjąć
dowolne), a PTIME – czas pracy z tą prędkością. Czas ten jest wyrażony w cyklach programu, dlatego też powinien być on wywoływany w zadaniu cyklicznym, a od jego interwału zależeć będą jednostki czasu pracy. Liczba wykorzystanych pól w tablicy PRGS (tj. ilość segmentów profilu) jest przechowywana w zmiennej P_SIZE, a numer aktualnie wykonywanego segmentu w zmiennej P_NO (obydwie typu INT). Zdefiniowano również dwie zmienne boolowskie: START, służącą do uruchamiania programu, i zmienną DONE, sygnalizującą jego wykonanie, a także zmienną pomocniczą EQT, zliczającą czas wykonywania poszczególnych segmentów. Prędkość zadaną i aktualną dla silnika przechowują natomiast zmienne, odpowiednio: SPEED_SP oraz SPEED_CV typu REAL. Instancja bloku funkcyjnego RAMP jest identyfikowana za pomocą zmiennej DRIVE. Sam program składa się z dwóch części. W pierwszej (linie 0001–0023) następuje obliczenie prędkości zadanej na podstawie aktualnie przetwarzanego segmentu, a w drugiej (linia 0026) wywołanie instancji bloku funkcyjnego RAMP (tj. DRIVE). Na wejście IN bloku podawana jest prędkość zadana SPEED_SP, na wejścia UP i DN określające dynamikę zmian wartości stałe (tutaj odpowiednio 8 i 12), a z wyjścia OUT odczytywana jest prędkość aktualna SPEED_CV. Obliczenie prędkości zadanej wykonywane jest wewnątrz instrukcji warunkowej IF. Jeśli nie ma sygnału START (linie 0003–0005), to jej wartość jest ustawiana na 0. Wtedy też inicjowany jest program, tj. numer aktualnego segmentu ustawiany na 1, a flaga DONE na FALSE. Odczyt prędkości zadanej z profilu realizowany jest w bloku instrukcji po ELSIF (linie 0007–0020) i wykonuje się, jeśli numer aktualnego segmentu nie przekracza wartości P_SIZE (tj. nie osiągnięto końca profilu). Blok instrukcji rozpoczyna się instrukcją wyboru CASE (linie 0007–0011), która na podstawie pola PTYPE aktualnego segmentu określa prędkość zadaną. I tak, dla segmentu typu postój (PT_STOP) przyjmowana jest prędkość zadana równa 0. Dla ruchu w kierunku dodatnim (PT_RUN_P) jako prędkość zadana przyjmowana jest wartość pola PSPEED aktualnego segmentu, a dla ruchu w kierunku ujemnym (PT_RUN_N) jej wartość przeciwna. Po ustaleniu prędkości zadanej wykonywana jest instrukcja IF (linie 0012– –0020), w której sprawdzane jest, czy prędkość aktualna jest równa zadanej (przy założeniu pewnej tolerancji). W tym
Rys. 10. Program wykorzystujący funkcje RNG i blok funkcyjny RAMP
Rys. 11. Wynik działania programu z rys. 10 celu zastosowano tu funkcję RNG z przykładu 6. Jeśli ten warunek jest spełniony, inkrementowana jest zmienna EQT, a jeśli nie – wartość EQT jest zerowana. Po inkrementacji EQT wykonywana jest zagnieżdżona instrukcja IF (0014– 0017), w której sprawdzane jest, czy osiągnięto zadany czas pracy z daną prędkością. Jeśli tak, inkrementowany jest wskaźnik aktualnego segmentu, a EQT jest zerowane. Ostatnim elementem głównej instrukcji IF jest instrukcja przypisania po ELSE (linia 0022), która wykonywana jest wówczas, jeśli poprzednie warunki nie zostały spełnione, tj. sygnał START ma wartość TRUE,
ale numer aktualnego segmentu jest większy niż numer ostatniego segmentu profilu. Oznacza to zakończenie programu, dlatego też ustawiana jest flaga DONE. Wyniki działania programu dla wartości jak na rys. 10 przedstawiono na rys. 11. Na zielono oznaczono prędkość zadaną, a na czerwono prędkość aktualną. Na rysunku umieszczono również wartość zmiennej EQT.
Podsumowanie Przybliżone w artykule języki tekstowe poszerzają wachlarz możliwości sterowników PLC, umożliwiając realizację algorytmów kojarzonych do tej pory z komputerami.
Wraz z omówionymi poprzednio językami graficznymi tworzą zestaw narzędzi pomocny przy rozwiązywaniu większości problemów z zakresu automatyki przemysłowej. Ostatnim językiem zdefiniowanym w normie IEC 61131-3 jest SFC (ang. Sequential Function Chart) – język służący do opisu układów sekwencyjnych. Zostanie on omówiony jako ostatni, gdyż w zarysie programu stworzonego z jego użyciem należy dokonywać wypełnienia w jednym z pozostałych języków, co wymaga ich znajomości. mgr inż. Marcin Zawisza
Pomiary Automatyka Robotyka nr 5/2013
43
automatyka bezpieczeństwo
Śpisz spokojnie dzięki certyfikowanym produktom Festo Współdziałanie człowieka i maszyny
SIL (Poziom nienaruszalności bezpieczeństwa)
ma w sobie coś fascynującego.
Cztery poziomy dyskretne (SIL 1 do SIL 4). Im wyższy jest poziom SIL systemu związanego z bezpieczeństwem, tym jest mniejsze prawdopodobieństwo, że system nie będzie zdolny do wykonania koniecznych funkcji bezpieczeństwa.
Mimo to człowiek musi być pewny, że urządzenie nie zagraża ani jemu,
F
ani otaczającemu go środowisku.
F1 rzadkie do częstszego narażenie w strefie zagrożenia
Częstotliwość i czas ekspozycji w strefie zagrożenia
F2 częste do ciągłego narażenie w strefie zagrożenia
Sześć kroków prawidłowej analizy zagrożeń Poziom nienaruszalności bezpieczeństwa (SIL) pozwala na ocenę niezawodności działania funkcji bezpieczeństwa systemów elektrycznych, elektronicznych i programowalnych elektronicznych (E/E/PE). Dla każdego poziomu istnieją pewne gwarantujące bezpieczeństwo zasady konstrukcyjne, które minimalizują ryzyko niepoprawnego działania. Dzięki dokładnemu praktycznemu schematowi można szybko i w prosty sposób ocenić środki bezpieczeństwa wg normy PN-EN 13849-1 (norma obowiązująca do części związanych z bezpieczeństwem systemu sterowania
44
Promocja
P
Możliwość (prawdopodobieństwo) uniknięcia zdarzenia zagrażającego
P1 możliwe przy spełnieniu pewnych warunków P2 zupełnie niemożliwe S
W
Konsekwencje
S1 niewielkie urazy osób
Prawdopodobieństwo zajścia zdarzeń niepożądanych
S2 poważne urazy dotyczące wielu osób, śmierć jednej osoby
W1 relatywnie wysokie
S3 śmierć kilku osób
W2 niskie
S4 skutki katastrofalne połączone ze śmiercią wielu osób
W3 bardzo niskie
Projekt1
W Z
dla wszystkich typów maszyn) i PN-EN 61508/PN-EN 61511 (normy dla instalacji w przemyśle procesowym). Powyższe zestawienie pokazuje różne sposoby postępowania i wyjaśnia pojęcia z zakresu stosowanych norm. Wyspa zaworowa CPV – SIL 2 certyfikowana Wyspa zaworowa CPV przetestowana została miliony razy. Wyróżnia się ona unikalną konstrukcją i umożliwia najróżniejsze rodzaje montażu oraz dowolne łączenie przewodów pneumatycznych i instalacji elektrycznych. Dodatkowo oszczędność miejsca, przy instalacji w szafie sterowniczej, można uzyskać stosując pneumatyczne przyłącze multipol.
Fot. Festo
Klasyfikacja poziomów nienaruszalności bezpieczeństwa (Safety Integrity Level, SIL) pozwala na ocenę bezpieczeństwa systemów. Stosując zaprojektowane z myślą o bezpieczeństwie układy pneumatyczne Festo, można być pewnym, że są one zgodne z zaleceniami dyrektywy maszynowej i odpowiadają niezbędnym poziomom bezpieczeństwa wg klasyfikacji SIL. Producent wziął pod uwagę analizę zagrożeń, ocenę ryzyka i środki konieczne do osiągnięcia celów ochrony.
Napęd wahadłowy DFPB – SIL 3 certyfikowany Jednostronnego czy dwustronnego działania? Prawo- czy lewoskrętny? Pytania są niepotrzebne: napęd wahadłowy DFPB może wszystko! Ten kompaktowy napęd charakteryzujący się stałym momentem obrotowym oraz bardzo małym stopniem zużycia, ma wiele innych przydatnych zalet, które ujawnią się w trakcie eksploatacji.
N z C s
bezpieczeństwo automatyka
Podstawowe dane techniczne napędu wahadłowego DFPB:
ślizgowym wykonanym z teflonu węglowego (30 % węgla), • ośmiokątne złącze do zaworu wykonawczego.
Zawory VOFC – SIL 4 certyfikowane Zawory pilotowe VOFC mają niezwykle solidną budowę i są bardzo odporne na korozję. Modułowa konstrukcja zaworu umożliwia połączenie dowolnej cewki z odpowiednim zaworem.
Fot. Festo
• kąt obrotu i regulacji do 94°, • wał wykonany z anodowanego aluminium, pokrywy końcowe aluminiowe powlekane żywicą epoksydową, • wysoka odporność na korozję (CRC 3), • regulacja położenia krańcowego we wszystkich wymiarach za pomocą nakrętek blokujących zamkniętych i uszczelnionych zarówno od zewnątrz, jak i od wewnątrz, • samoczynne smarowanie i optymalProjekt1:Makieta 1 2012-08-21 12:32 na praca awaryjna dzięki paskomStrona 1
Podstawowe dane techniczne zaworów VOFC: • zawory 3/2-drożne, • zawory mono- i bistabilne 5/2-drożne, • zakres ciśnienia: od 2 bar do 8 bar, • funkcje: eksploatacja z wewnętrznym i zewnętrznym powietrzem sterującym (dla wersji z nakrętkami) dzięki zintegrowanemu zaworowi zmieniającemu, • warianty połączenia: G1/4; G1/4 i NAMUR; NPT1/4; G1/4 i G1/2; 1/2 NPT i NAMUR, • zakres temperatury: od –25 °C do +60 °C, • wykonania EX: Ex me oraz Ex ia ATEX.
Festo Sp. z o.o. Janki k/Warszawy ul. Mszczonowska 7 05-090 Raszyn tel. +48 22 711 41 00 fax +48 22 711 41 02 www.festo.pl
REKLAMA
Wyspa zaworowa CPX/MPA Zintegrowana automatyzacja XXI wieku
Festo Sp. z o.o. Janki k/Warszawy ul. Mszczonowska 7 05-090 Raszyn Contact Center tel. +48 22 711 41 00 Najnowszy, modułowy system wysp zaworowych umożliwia Użytkownikowi fax +48 22 711 41 02 festo_poland@festo.com zastosowanie dowolnego standardu komunikacyjnego. Artykuł sponsorowany Pomiary Automatyka Robotyka nr 9/2012www.festo.pl 45 CPX/MPA zapewnia w łatwy sposób „bezpośredni przesył danych” pomiędzy
systemem sterowania a napędami i aparaturą obiektową.
Automatyka STEROWNIKI PLC
JZ20 – nowa generacja sterowników PLC z serii Jazz firmy UNITRONICS Firma Unitronics wprowadziła do oferty sterowniki z serii Jazz w odpowiedzi na zapotrzebowanie rynku na niewielkie sterowania połączone z funkcjonalnym panelem operatorskim, na którym można wyświetlać oraz wprowadzać wszelkiego rodzaju parametry, dane, zmienne itp.
Jazz to seria sterowników PLC+HMI firmy Unitronics zaprojektowanych specjalnie do zastosowań przemysłowych. Są one przystosowane do pracy w trudnych warunkach środowiskowych oraz wyposażone w szereg zabezpieczeń. Występują w modelach różniących się rodzajem oraz liczbą wejść i wyjść. Sterowniki serii Jazz mogą być montowane na panelu (IP65) lub na szynie DIN (IP20). Izraelski producent, za pośrednictwem swojego polskiego przedstawiciela – firmy Elmark Automatyka, wprowadza na rynek trzy nowej generacji sterowniki z serii Jazz: JZ20-R10, JZ20-R16 oraz JZ20-R31. Są to szybsze i mocniejsze odpowiedniki starszych modeli: JZ10-11-R10, JZ10-11-R16 oraz JZ10-11-R31. Różnice między wersjami są dość istotne. Najważniejsza zmiana to wymiana jednostki centralnej na nową, ponad 30 razy szybszą. Sterowniki z serii JZ10-11 wykonują 1 kB aplikacji w czasie 46 µs, natomiast z nowej serii JZ20 – w 1,5 µs, czyli sześć razy szybciej niż dotychczas najmocniejsza jednostka PLC firmy Unitronics. Dzięki tej zmianie sterowniki z serii Jazz przestaną kojarzyć się z jednostkami do prostych sterowań, które nie wymagają dużych szybkości. Staną się natomiast prawdziwą konkurencją drogich i szybkich sterowników PLC. Mając na uwadze większą prędkość działania tych urządzeń, firma Unitronics dwukrotnie zwiększyła pamięć na program PLC – z 24 kB do 48 kB. Liczba zmiennych bitów, rejestrów pozostała niezmieniona. Kolejnym atutem nowej serii jest możliwość programowania sterownika oraz panelu przez wbudowany port miniUSB (kabel dostarczany do każdego urządzenia). Jest to
46
Promocja
Fot. Elmark Automatyka
REKLAMA
Zestawienie ilości wejść/wyjść dla nowych sterowników Jazz firmy Unitronics
JZ20-R10
Wejścia cyfrowych pnp/npn
JZ20-R31
8
18
6
Wejścia szybie licznikowe Wejścia analogowe
JZ20-R16
brak
2 x 5 kHz, 16-bit 2 x 0-10 V, 2 x 0…20 mA, 4…20 mA
Wejścia temperaturowe Wyjścia cyfrowe
4 przekaźnikowe
brak 6 przekaźnikowych
Wyjścia szybkie
brak
Wyjścia analogowe
brak
dobra wiadomość dla użytkowników korzystających z komputerów bez wbudowanych portów szeregowych lub za pomocą specjalnych przejściówek RS-232 na USB. Dodatkowo, dzięki takiemu rozwiązaniu nie ma potrzeby stosowania portu JZ-PRG służącego do programowania urządzeń serii Jazz. W niedalekiej przyszłości zostanie wprowadzony port ethernetowy. Nowa generacja sterowników tej serii zyska kolejny argument przemawiający za ich stosowaniem wszędzie tam, gdzie wymagana jest taka infrastruktura. Do zaprogramowania nowego urządzenia potrzebny jest, dostępny darmowo, program U90Ladder w wersji 6.30 lub nowszy. W przypadku, gdy klienci posiadają już jeden ze sterowników starszej generacji JZ10-11, a chcieliby przejść na nowe modele, nie jest wymagana żadna zmiana w kodzie programu. Wystarczy tylko w dotychczasowym programie zmienić sterownik w sekcji Hardware Configuration i wgrać go do nowego urządzenia.
2 x 0-10 V, 2 x 0…20 mA, 4…20 mA 7 pnp
Pozostałe cechy urządzeń starszej generacji pozostają bez zmian: wyświetlacz typu STN LCD (dwie linie po 16 znaków do wyświetlenia), możliwość programowania do 64 ekranów, 16 alfanumerycznych przycisków, w tym 10 programowalnych, obsługa wejść/wyjść: dyskretnych (dwustanowych), analogowych (0–10 V, 0/4–20 mA), wejść temperaturowych PT 1000/NI 1000, szybkich liczników/enkoderów do 5 kHz, szybkich wyjść/PWM oraz do czterech pętli regulatora PID. Dzięki zastosowaniu portu komunikacyjnego JZ-RS-4 otrzymano dodatkowe funkcjonalności, tj. obsługa modemów, w tym GSM, oraz port komunikacyjny RS-232/485 umożliwiający komunikację w standardzie Modbus (Master/Slave). Mateusz Sikorski ELMARK Automatyka Sp. z o.o. e-mail: elmark@elmark.com.pl www.elmark.com.pl
REKLAMA
Silniki pneumatyczne zębatkowe z podwójnym wirnikiem
Fot. Elmark Automatyka
najwydajniejsze na rynku
Pomiary Automatyka Robotyka nr 5/2013
47
Pomiary CZUJNIKI I SYSTEMY POMIAROWE
Pirometry LAB-EL – nie ma się czego bać. Część I urządzenia do bezkontaktowego pomiaru temperatury – pirometry. Oprócz pirometrów produkcji własnej firma oferuje kilka modeli tych urządzeń produkowanych przez Fluke i Testo.
LAB-EL – kojarzony z kontrolą parametrów klimatu i mikroklimatu – jest producentem urządzeń pomiarowych i systemów monitorujących te parametry, a także świadczy różnego rodzaju usługi z tej dziedziny. W firmie działa akredytowane Laboratorium Wzorcujące Wilgotności, Temperatury i Ciśnienia LAB-EL, które wykonuje zarówno wzorcowania
własnych przyrządów, jak i innych, będących własnością klientów. Laboratorium zajmuje się również wzorcowaniem obiektów poza stałą siedzibą. Ostatnio oferta firmy LAB-EL została wzbogacona o pirometry. Pomiary wykonywane pirometrami, w porównaniu z klasycznym kontaktowym pomiarem temperatury, mają odmienną specyfikę. Rodzi to wiele wątpliwości dotyczących stosowania tej metody w kontrolowanych obiektach. Poniższy artykuł stanowi próbę odpowiedzi na najczęściej zadawane pytania.
Czy pirometry nadają się do monitorowania parametrów klimatu? Tak, pirometry mają zastosowanie w tej dziedzinie. Szczególnie przydatne są do pomiarów temperatur powierzchni obiektów, na przykład ścian. Znajomość temperatury ściany oraz punktu rosy powietrza w pomieszczeniu pozwala kontrolować ryzyko wykraplania się pary wodnej na zimnych ścianach. Tym samym może zapobiegać rozwojowi grzybów, na przykład w zabytkowych obiektach czy muzeach, powstawaniu strat na przykład w magazynach, w których składowane są produkty czułe na zawilgocenie, i/lub tam, gdzie przepisy narzucają konkretne wartości parametrów środowiskowych.
Jakie są zalety stosowania pirometrów?
Pirometr LB-710AI do pracy systemowej, stacjonarnej z przeznaczeniem do pomiaru temperatury, na przykład podłogi, sufitu, ścian
48
Promocja
Pirometry są ciekawą alternatywą dla klasycznych pomiarów temperatury. Umożliwiają one dokonywanie pomiaru w wielu trudnych miejscach, gdzie klasyczny pomiar jest właściwie niewykonalny. Przykładowe obszary pomiaru temperatury za pomocą pirometrów: • obiekty wymagające sterylności, na przykład żywność, leki, • poruszające się przedmioty, na przykład obracające się elementy maszyn i urządzeń, • obiekty znajdujące się pod niebezpiecznym napięciem,
• obiekty zawierające żrące lub niebezpieczne substancje, • obiekty o dużej powierzchni, • unikatowe obiekty szczególnie chronione, jak dzieła sztuki, obiekty zabytkowe (bezkontaktowy pomiar temperatury nie niszczy badanych obiektów), • obiekty o małej pojemności cieplnej (bezkontaktowy pomiar nie zaburza temperatury obiektu), • obiekty o dynamicznych zmianach temperatury (metoda pirometryczna nie wprowadza opóźnienia spowodowanego pojemnością cieplną czujnika), • w połączeniu z pomiarem temperatury i wilgotności powietrza – ostrzeganie o możliwości wykroplenia się pary wodnej na badanym obiekcie, na przykład zimne ściany.
Jakie są charakterystyczne błędy pomiarowe cechujące pomiary pirometrem? Współczynnik emisyjności (ε) Podstawowym problemem, z którym trzeba się zmierzyć, posługując się pirometrem, jest konieczność ustalenia współczynnika emisyjności ciała (ε), którego temperaturę chcemy zmierzyć. Dopiero wprowadzenie prawidłowej wartości tego parametru do pirometru umożliwia przeprowadzanie dokładnych pomiarów. Każdy obiekt ma zdolność do emisji (równą zdolności do absorpcji, gdyż są to zjawiska wymienne) promieniowania podczerwonego, które wykorzystywane jest w bezkontaktowym pomiarze temperatury. Ciało, które ma zdolność całkowitej absorpcji padającego na nie promieniowania, nazywane jest ciałem czarnym (dawniej zwane doskonale czarnym) i jego ε równy jest jedności. Natomiast ciało, które nie posiada żadnej zdolności absorpcji promieniowania (ε = 0), nazywane jest doskonałym lustrem (dawniej zwane doskonale białym). W praktyce takie idealne ciała nie występują, natomiast otaczają nas ciała szare, nieszare
Fot. LAB-EL Elektronika Laboratoryjna
W ofercie LAB-EL pojawiły się
Materiał
Pirometr ręczny z serii Testo 830
i półprzezroczyste, dla których ε mieści się w granicach 0 < ε < 1. W tabeli zebrane zostały współczynniki emisyjności ciał (ε), z którymi mamy najczęściej do czynienia w praktyce. Współczynnik emisyjności zależy także od powierzchni materiału. Ogólnie ujmując, im powierzchnia bardziej matowa, chropowata, tym ε większy. Szczególnie widać to w przypadku metali, na przykład dla stali polerowanej ε = 0,16, natomiast dla stali piaskowanej ε = 0,70.
Kąt obserwacji Pomiary powinno się przeprowadzać, instalując pirometr prostopadle do badanej powierzchni materiału. Dopuszczalne odchylenie wynosi maksymalnie 30°. Błąd pomiaru spowodowany niewłaściwie dobranym kątem jest szczególnie dotkliwy przy pomiarach metali.
Emisyjność [ε]
Oświetlenie
papier
0,93–0,95
beton (związany)
0,97
cegła (czerwona chropowata)
0,88–0,93
mur z cegieł pokryty zaprawą
0,94
Podczas pomiaru należy zlokalizować i wyeliminować ewentualne oświetlenie badanego obiektu w zakresie podczerwieni, na przykład przez oświetlenie słoneczne, żarowe. W wyniku odbicia promieniowania od badanego materiału powstaje dodatni błąd pomiaru.
dąb
0,77–0,88
Atmosfera
sosna
0,81–0,89
płyta wiórowa
0,90
porcelana (biała błyszcząca, szklista)
0,7–0,75
porcelana (glazurowana)
0,92
skóra garbowana
0,75–0,80
skóra ludzka
0,98
styropian
0,6
tynk standardowy
0,86
tynk o powierzchni chropowatej
0,91
śnieg
0,8
lód gładki (0 °C)
0,96
Promieniowanie emitowane przez badany obiekt, zanim dotrze do pirometru, pokonuje pewien dystans w atmosferze wypełniającej przestrzeń. Zwłaszcza w przypadku dużych oddaleń badanych obiektów, kiedy dystans pokonywany przez promieniowanie jest znaczny, należy pamiętać o absorpcji promieniowania podczerwonego przez składniki atmosfery. W szczególności ważne jest, by podczas pomiaru unikać dużej zawartości pary wodnej oraz nadmiernego stężenia dwutlenku węgla w powietrzu. Odpowiedzi na kolejne pytania zostaną zamieszczone w następnej części artykułu.
lód gładki (–10 °C)
0,97
woda zwykła
0,994
woda destylowana
0,96
Dariusz Grobel, Andrzej Łobzowski, Wojciech Szkolnikowski LAB-EL Elektronika Laboratoryjna
REKLAMA
Urządzenia i systemy do monitorowania parametrów klimatu oraz sterowania procesami przemysłowymi
Fot. LAB-EL Elektronika Laboratoryjna
LAB-EL oferuje: • aparaturę kontrolno-pomiarową do pomiarów, rejestracji, sygnalizacji przekroczeń wartości progowych, sterowania i regulacji: – wilgotności – temperatury – ciśnienia – i innych wielkości fizycznych procesów przemysłowych; • oprogramowanie użytkowe; • serwis, instalacje, szkolenia dotyczące oferowanych przyrządów i systemów; • usługi wzorcowania przyrządów pomiarowych; • usługi badania mikroklimatu pomieszczeń; • doradztwo techniczne i ekspertyzy dotyczące aparatury i oprogramowania; • opracowywanie dokumentacji projektowej i walidację urządzeń pomiarowych zgodnie z wymaganiami systemów jakości ISO, HACCP, GAMP.
Pomiary Automatyka Robotyka nr 5/2013
49
CZUJNIKI I SYSTEMY POMIAROWE Pomiary
Laserowe czujniki dalekiego zasięgu Optyczne czujniki dystansu, zwłaszcza takie, które umożliwiają pomiary sporych odległości, mają szereg interesujących zastosowań. Firma Micro-Epsilon, znana z dużego doświadczenia m.in. w zakresie pomiarów optycznych, przygotowała laserowy czujnik o szerokich
Zasada działania czujnika optoNCDT ILR 1030/1031 opiera się na pomiarze czasu przelotu światła. Dioda laserowa umieszczona w czujniku wytwarza krótki impuls światła, który jest wyświetlany na obiekcie pomiarowym. Światło odbite od tego obiektu jest wykrywane przez element światłoczuły urządzenia. Odległość mierzona jest na podstawie czasu przelotu impulsu światła do obiektu pomiarowego i z powrotem do czujnika. Laserowy czujnik odległości optoNCDT ILR 1030/1031 przeznaczony jest do szybkich pomiarów przemieszczenia na dystansie od 0,2 m do 8 m lub aż do 50 m, gdy zastosowane zostanie specjalne lusterko (odbłyśnik). Urządzenie charakteryzuje się typowym dla tej serii produktów szybkim czasem reakcji na poziomie 10 ms. Umieszczone na niewielkiej obudowie przyciski umożliwiają natychmiastową realizację funkcji nauczania bądź przypisania punktów przełączania. Czujnik jest niewrażliwy na wpływ światła zewnętrznego, może również pracować w szerokim zakresie temperatur: od –30 °C do +50 °C. Doskonale sprawdzi się więc w różnorodnych aplikacjach typu monitorowanie systemów dźwigowych, pomiar poziomu wypełnienia Promocja
czy pozycjonowanie poruszających się obiektów. Ciekawym zastosowaniem optycznych czujników dystansu są systemy, w których służą one do detekcji i pomiaru długości obiektów na linii produkcyjnej. Poza zwykłą detekcją obiektu przy użyciu czujników z serii ILR można określić szerokość oraz wysokość mierzonego celu. Aby wykonać pomiar różnicowy, tj. uzyskać informację o szerokości obiektu, dwa czujniki optoNCDT ILR 1030/1031 należy zamontować naprzeciwko siebie na linii produkcyjnej. Gdy obiekt wejdzie w zakres pomiarowy, automatycznie przerwie wiązki laserów z obu stron, a w kontrolerze zostanie obliczona szerokość obiektu poddawanego pomiarowi. Natomiast informację o wysokości uzyska się, implementując czujnik optyczny nad linią, po której przesuwają się produkty. Innymi ciekawymi aplikacjami z czujnikami ILR są m.in.: pozycjonowanie suwnic i dźwigów, kontrola poziomu zasypu w silosach czy kontrola konstrukcji (budynki, mosty). Czujniki z serii ILR to wysoka precyzja i dokładność dochodząca do ±2 mm. W zależności od modelu ich zakres pomiarowy wynosi od kilku metrów do 3 km, natomiast czas odpowiedzi nawet 0,5 ms. PPH WObit E. K. J. Ober s.c. Dęborzyce 16, 62-045 Pniewy tel. 61 222 74 22 fax 61 222 74 39 e-mail: wobit@wobit.com.pl www.wobit.com.pl
REKLAMA
Fot. WObit
możliwościach aplikacyjnych oferowany w przystępnej cenie.
Pomiary Automatyka Robotyka nr 5/2013
51
Wydarzenia Kalendarium PAR
Targi | Konferencje | Kongresy | Sympozja | Wystawy Publikujemy w środkowym miesiącu kwartału
Maj 2013
Kontakt: Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa
14–16 maja 2013, Poznań, POLSKA
tel. 22 874 00 15, 603 751 248, www.nocrobotow.pl
• EXPOPOWER – Międzynarodowe Targi Energetyki • GREENPOWER – Międzynarodowe Targi Energii Odnawialnej
Czerwiec 2013
Kontakt: Międzynarodowe Targi Poznańskie Sp. z o.o. ul. Głogowska 14, 60-734 Poznań
04-06 czerwca, Poznań, POLSKA
tel. 61 869 20 00, fax 61 869 29 66 e-mail: automa@mtp.pl, expopower@mtp.pl, greenpower@mtp.pl
• I Ogólnopolski Kongres Przedstawicieli Działów Technicznych i Utrzymania Ruchu – Maintenance Expert Meeting
14–16 maja 2013, Norymberga, NIEMCY
Kontakt: Katarzyna Zygart
• PCIM Europe – Międzynarodowe Specjalistyczne Targi i Konferencja, Energoelektronika, Inteligentna Technika Napędów, Power Quality
tel. 533 790 003, e-mail: katarzyna.zygart@4content.pl
Kontakt: MERITUM s.c.
04–07 czerwca 2013, Poznań, POLSKA
Przedstawicielstwo Targów Norymberskich w Polsce
ITM – Innowacje–Technologie–Maszyny: HAPE Salon Hydrauliki, Pneumatyki i Napędów MACH–TOOL – Salon Obrabiarek i Narzędzi METALFORUM – Salon Metalurgii, Hutnictwa, Odlewnictwa i Przemysłu Metalowego SURFEX – Salon Technologii Obróbki Powierzchni Transporta – Salon Logistyki, Transportu i Spedycji Welding – Salon spawalnictwa Bezpieczeństwo Pracy w Przemyśle • Nauka dla gospodarki
ul. Kwiatkowskiego 1/29, 03-984 Warszawa tel. 22 828 27 34, e-mail: meritum@meritum.it.pl
14–16 maja 2013, Norymberga, NIEMCY • SENSOR+TEST – Targi Techniki Pomiarów, Międzynarodowe Targi Techniki Czujników, Pomiarów i Kontroli w połączeniu z towarzyszącym Kongresem Kontakt: MERITUM s.c. Przedstawicielstwo Targów Norymberskich w Polsce
Miejsce: ITM Poznań
•
ul. Kwiatkowskiego 1/29, 03-984 Warszawa
Kontakt: Międzynarodowe Targi Poznańskie Sp. z o.o.
tel. 22 828 27 34, e-mail: meritum@meritum.it.pl
ul. Głogowska 14, 60-734 Poznań tel. 61 869 2000, fax 61 869 2999, e-mail: info@mtp.pl
• ASTOR Tour 2013 dla branży automatyki, produkcji i przemysłu – cykl seminariów
04–05 czerwca 2013, Kraków, POLSKA
Gdańsk (16 maja), Poznań (21 maja), Katowice (22 maja), Rzeszów (23 maja).
• II EDYCJA TARGÓW TECHNIK KOTŁOWYCH, PROCESÓW CIEPLNYCH I WODY PRZEMYSŁOWEJ – WATER&HEAT
Kontakt: www.astor.com.pl/tour2013
Kontakt: easyFairs Poland Sp. z o.o. tel. 12 651 95 20, fax 12 651 95 22
21 maja 2013, Kraków, POLSKA
e-mail: poland@easyfairs.com
• Mechanika i utrzymanie ruchu – seminarium Kontakt: www.seminaria.trademedia.us
19 -21 czerwca 2013 Poznań, POLSKA • Certyfikowany Lean Manager
22 maja 2013, Kraków, POLSKA
Kontakt: Jan M. Janiszewski, Kierownik Projektu
• Integracja automatyki oraz IT – seminarium
j.janiszewski@langas.pl, tel. 22 696 80 20, fax 22 826 85 05
Kontakt: www.seminaria.trademedia.us
Langas Group, ul. Krakowskie Przedmieście 79, 00-079 Warszawa www.langas.pl
21–22 maja 2013, Rytro, POLSKA • RYTRO 2013 – XVII KONFERENCJA AUTOMATYKÓW
26–27 czerwca 2013, Wieliczka (k/Krakowa), POLSKA
Kontakt: SKAMER ACM
XIII Spotkanie z cyklu Energia – Media – Utrzymanie Ruchu • Optymalizacja w przemyśle i energetyce • Optymalizacja procesów przy jednoczesnym zachowaniu jakości i bezpieczeństwa pracy.
ul. Rogoyskiego 26, 33-100 Tarnów tel. 14 63 23 400, fax 14 63 23 401, e-mail: tarnow@skamer.pl
23 maja 2013, Kraków, POLSKA • Robotyzacja linii produkcyjnych – seminarium
Kontakt: e-mail: konferencja@humac.pl
Kontakt: www.seminaria.trademedia.us
Joanna Fedycka: tel. 12 442 02 83, e-mail: redakcja@humac.pl Andrzej Kucharski: tel. 12 444 67 02,
24 maja 2013, Warszawa, POLSKA
e-mail: andrzej.kucharski@humac.pl
• II edycja „Nocy Robotów PIAP” – pod hasłem „Odkryj Nieznane”
Arkadiusz Popek: tel. 12 633 07 01,
52
e-mail: arkadiusz.popek@humac.pl
czujniki i systemy pomiarowe Pomiary
Rejestracja rozkładów temperatury w hutnictwie i odlewnictwie Guenther Polska podpisał umowę na wyłączną dystrybucję produktów firmy PhoenixTM, zajmującej się rozwojem i produkcją systemów do wizualizacji profilowania temperaturowego w piecach przemysłowych.
Wszystkie piece przemysłowe wyposażone są w czujniki temperatury połączone z odpowiednimi sterownikami. Ale jaka jest rzeczywista temperatura wyrobu? W przeszłości stosowano długie termopary, które mocowano do wyrobu i przeciągano przez komorę pieca. Uniemożliwiało to pełne załadowanie pieca w czasie pomiarów i wymagało przerw technologicznych. Częściowo załadowany piec zachowuje się inaczej niż ten sam piec w całości wypełniony wyrobami. Ponadto w czasie trwania procesu termopary muszą być starannie prowadzone, a to czyni rozwiązanie bardzo kosztownym. Z kolei urządzenia pracujące w podczerwieni mogą mierzyć temperaturę wyłącznie w określonym punkcie powierzchni. Nie dają zatem informacji o tym, co się dzieje w rdzeniu wyrobu, a właśnie ta informacja często jest bardzo istotna. Firma PhoenixTM proponuje rozwiązanie, w którym system pomiarowy jest transportowany wraz z wyrobami w komorze pieca i odczytuje temperaturę za pomocą termopar. Tuż za zestawem pomiarowym komora grzewcza może być ładowana jak zwykle. System umożliwia odczyt i rejestrację rozkładu temperatury w 10 lub 20 punktach pomiarowych. Podłączone termopary typu K lub N mogą mierzyć temperaturę otoczenia, powierzchni lub rdzenia. Możliwy jest zarówno telemetryczny odczyt danych w czasie rzeczywistym, jak i import danych po zakończeniu procesu. Wszystkie wejścia rejestratora są kompensowane. Promocja
System może być zaprojektowany lub dostosowany do konkretnej linii produkcyjnej, co umożliwia łatwy załadunek i rozładunek. Cykl pomiarowy przebiega bardzo szybko i łatwo, stając się rutynową procedurą. Wczesne wykrycie wadliwie działającego pieca zapobiega powstawaniu braków i oszczędza koszty. Audyty własne i odbiorców otrzymują także kompletną, szczegółową dokumentację należytego przeprowadzenia procesu i nadzoru produkcji.
Osłony termiczne Firma PhoenixTM opracowała różne techniki izolacji uwzględniające wymagania różnych przemysłowych procesów obróbki termicznej. Przykładowo, producentom powłok oferowane są osłony termiczne niezawierające silikonu; dla procesów wysokotemperaturowych o szybkim wzroście temperatury i szybkim chłodzeniu – bariery o podwyższonej odporności na deformację; dla obróbki aluminium – osłony wodoszczelne.
Rejestrator (datalogger) Rejestratory PhoenixTM zostały opracowane z myślą o pracy w trudnych warunkach przemysłowych. Aluminiowa obudowa zabezpiecza elektronikę przed uszkodzeniami mechanicznymi, a odpowiednie filtry przed zakłóceniami elektrycznymi i elektromagnetycznymi. Rejestratory są dostarczane wraz z fabrycznym świadectwem kalibracji. Guenther Polska Sp. z o.o. www.guenther.com.pl
REKLAMA
W jakim celu dokonuje się temperaturowego profilowania pieców?
Pomiary Automatyka Robotyka nr 5/2013
53
Robotyka elementy i wyposażenie
Systemy wymiany narzędzi: szybkozłącza do robotów przemysłowych i laboratoryjnych firmy SCHUNK Firma SCHUNK, lider w zakresie produkcji komponentów do automatyzacji procesów produkcyjnych, oferuje szeroki wachlarz produktów przeznaczonych do wyposażenia robotów przemysłowych i laboratoryjnych, pozwalający zarówno na tworzenie aplikacji standardowych, jak i dedykowanych do rozwiązań specjalnych.
1
2
Fot. 1. Złącze HWS Fot. 2. Złącze SWS składa się z głowicy montowanej na robocie i adaptera od strony narzędzia; na zdjęciu widoczne są przepusty pneumatyczne i elektryczne
Zwiększenie udziału robotów w procesach produkcyjnych, połączone ze wzrostem komplikacji obsługiwanych przez nie procesów technologicznych, wymusza rozwój oprzyrządowania umożliwiającego realizację założonych zadań. Oferta firmy SCHUNK w dziedzinie akcesoriów do robotów obejmuje: chwytaki pneumatyczne, chwytaki serwoelektryczne, przepusty obrotowe, kompensatory błędu położenia,
54
Promocja
jednostki antykolizyjne, wrzeciona pneumatyczne i systemy wymiany narzędzi. Szczególnie szybki rozwój obserwowany jest w przypadku konstrukcji tych ostatnich, ze względu na komplikację zadań technologicznych wykonywanych przez roboty. Urządzenia te w coraz większym stopniu uczestniczą w procesach montażu, obróbki i pomiarów oraz wykonują więcej operacji w jednym gnieździe technologicznym. Wymusza to wprowadzanie
koniecznych zmian oprzyrządowania podczas procesu produkcyjnego. Firma SCHUNK oferuje wiele standardowych i wyspecjalizowanych systemów wymiany narzędzi. Do podstawowych produktów można zaliczyć: • sprzęgi miniaturowe typu MWS 20 o maksymalnym obciążeniu 0,5 kg i 0,5 Nm, wyposażone maksymalnie w sześć przepustów pneumatycznych i elektrycznych, stosowane w aplikacjach laboratoryjnych i małego montażu; • sprzęgi manualne typu HWS 040 – HWS 125 (fot. 1) o udźwigu w zakresie 8–54 kg i momentach siły 50–320 Nm, zawierające do sześciu przepustów pneumatycznych oraz do 26 pinowych przepustów elektrycznych o obciążalności 3A/50 V; stosuje się je do szybkiego i prostego przezbrojenia robota podczas przerw technologicznych związanych z przestawieniem linii produkcyjnej;
Fot. Schunk Intec
Fot. 3. Złącze SWS-L z modułami sygnałów sterujących, przepustami wysokonapięciowymi i prądowymi
Fot. 4. Serwomoduł z przepustami zasilającymi i sterującymi do napędów serwoelektrycznych
• złącza typu SWS (fot. 2), SWS-L (fot. 3) oraz SWS-I zawierające zintegrowane zawory pneumatyczne; są one przeznaczone do zastosowań przemysłowych, gdzie podczas procesów produkcyjnych konieczna jest automatyczna wymiana narzędzi i oprzyrządowania robota; umożliwiają przenoszenie dużych obciążeń: do 455 kg i 3800 Nm dla systemu SWS oraz do 1500 kg i 13 750 Nm dla systemów SWS-L.
Modułowa konstrukcja złączy typu SWS umożliwia optymalny dobór złącza do aplikacji robota. Składa się ona ze złącza bazowego SWS i modułów rozszerzających, umożliwiających zabudowę: zaworów sterujących, przepustów pneumatycznych, hydraulicznych, próżniowych, wysokoprądowych, wysokonapięciowych, światłowodowych, sygnałów sterujących i wizyjnych, serwomodułów (fot. 4), złączy USB i przepustów transmisji danych. Moduły transmisji danych spełniają standardy protokołów CAN Bus, Profibus, Ethernet, Profinet oraz CC-Link. W ofercie SCHUNK ma też specjalne konstrukcje złączy z otworami przelotowymi o średnicach do 160 mm i złącza z przepustami obrotowymi do przenoszenia napędu. Duże doświadczenie w zakresie projektowania i wykonywania złączy do robotów gwarantuje, że firma opracuje i wykona również konstrukcje pod specjalne, niestandardowe aplikacje klienta (przykład: fot. 5). Ponieważ temat wyposażania robotów w złącza wymiany narzędzi i osprzętu jest bardzo obszerny i wymaga indywidualnego podejścia do potrzeb produkcyjnych klienta, zapraszamy osoby zainteresowane do bezpośredniego kontaktu z naszymi doradcami technicznymi. Serdecznie zachęcamy do odwiedzenia stoiska firmy SCHUNK na targach Machtool w Poznaniu, w dniach 4–7 czerwca 2013 r., pawilon 7, stoisko 22.
© 2012 SCHUNK GmbH & Co. KG
www.schunk.com
elementy i wyposażenie Robotyka
Jedyna planeta z milionami różnych gatunków Planeta Ziemia, dom wszystkich znanych form życia
Jedyny chwytak z prowadzeniem wielowypustowym PGN-plus, uniwersalny chwytak firmy SCHUNK
Superior Clamping and Gripping
SCHUNK Intec Sp. z o.o. ul. Puławska 40 A, 05-500 Piaseczno
W zakresie technologii mocowania
tel. 22 726 25 06
oraz systemów chwytakowych
www.schunk.com
jesteśmy zawsze najlepszym wyborem. SCHUNK jest na świecie producentem Numer 1 - dostarczamy rozwiązania najwyższej jakości, od najmniejszych chwytaków równoległych po największą ofertę szczęk tokarskich.
Fot. 5. Specjalistyczne złącze zbudowane na bazie standardowych modułów, dostosowane do aplikacji klienta
REKLAMA
Fot. Schunk Intec
Jesteśmy zawsze do Państwa dyspozycji!
Pomiary Automatyka Robotyka nr 5/2013
53
Wydarzenia ZAPOWIEDZI
Międzynarodowa konferencja Diagnostics of Processes and Systems W dniach 8–11 września w Łagowie Lubuskim odbędzie się 11. edycja międzynarodowej konferencji Diagnostics of Processes and Systems, DPS 2013 (Diagnostyka Procesów i Systemów). Konferencja jest organizowana cyklicznie co dwa lata, począwszy od 1996 r. przez Uniwersytet Zielonogórski, Politechnikę Warszawską oraz Politechnikę Gdańską. Tematyka konferencji jest odpowiedzią na zainteresowanie i zapotrzebowanie ośrodków przemysłowych na nowoczesne systemy diagnostyczne, systemy monitorowania oraz systemy wspomagania podejmowania decyzji w energetyce, chemii, górnictwie oraz innych gałęziach przemysłu. Główne obszary tematyczne, z którymi uczestnicy będą mieli okazję się zapoznać, dotyczyć będą detekcji, lokalizacji i identyfikacji uszkodzeń, bezpieczeństwa i niezawodności procesów, systemów tolerujących uszkodzenia, diagnostyki medycznej i aplikacji przemysłowych. Diagnostyka techniczna jest dyscypliną, w której od wielu lat prowadzone są intensywne badania naukowe. Ze względu na swój interdyscyplinarny charakter, diagnostyka techniczna korzysta z najnowszych osiągnięć naukowych wielu
dyscyplin, a jednocześnie ma swój istotny wkład między innymi w rozwój metod sterowania, sztucznej inteligencji, matematyki stosowanej i statystyki. Efektem wspomnianych badań naukowych jest obserwowana rosnąca liczba aplikacji z zakresu diagnostyki przemysłowej, w szczególności w takich obszarach jak elektrotechnika, mechanika, chemia oraz medycyna. Jednakże rosnący poziom automatyzacji w przemyśle oraz nieustająca potrzeba zapewnienia niezawodności i bezpieczeństwa na najwyższym poziomie wymagają intensywnych badań w celu rozwoju innowacyjnych rozwiązań z zakresu diagnostyki. Konferencja stanowi doskonałe forum wymiany doświadczeń, wiedzy i rozwiązań z zakresu diagnostyki technicznej dla środowisk akademickich i przemysłowych.
REKLAMA
Zapraszamy do publikacji prac naukowych – monografii, raportów z badań, materiałów reklamowych. Gwarantujemy sprawną i merytoryczną recenzję naukową, redakcję językową i fachową korektę, profesjonalny skład komputerowy, projektowanie okładek i znaków typograficznych, wysoką jakość usług, krótkie terminy realizacji, konkurencyjne ceny. Szczegóły oferty na stronie: www.par.pl/oficyna-wydawnicza
56
Pozwala młodym naukowcom, jak i ekspertom na przedstawienie swoich osiągnięć oraz zapoznanie się z najnowszymi trendami i rozwiązaniami stosowanymi w diagnostyce przemysłowej i medycznej. Organizatorami konferencji są Uniwersytet Zielonogórski oraz Lubuskie Towarzystwo Naukowe. Więcej informacji na temat konferencji można znaleźć na stronie www.dps2013.uz.zgora.pl. prof. dr hab. inż. Józef Korbicz dr inż. Marek Kowal
Zobacz więcej Pobierz bezpłatną aplikację PAR+ App Store | Google Play
97
XVII Konferencja Automatyków
XVII KONFERENCJA AUTOMATYKÓW pod patronatem
prof. dr. hab. inż. Ryszarda Tadeusiewicza
ORGANIZATORZY
PATRONAT NAUKOWY
ABB DANFOSS
Akademia Górniczo-Hutnicza im. Stanisława Staszica
EATON Electric EMERSON JUMO
Komitet Automatyki i Robotyki Polskiej Akademii Nauk
LIMATHERM SENSOR PEPPERL+FUCHS
POLITECHNIKA WARSZAWSKA
SIEMENS SKAMER-ACM
POLITECHNIKA RZESZOWSKA
TECHNOKABEL
im. I. Łukasiewicza
TURCK WIKA
POLITECHNIKA ŚLĄSKA
CEL KONFERENCJI przedstawienie tendencji w systemach pomiarów i automatyki promocja najnowszych wyrobów producentów urządzeń pomiarów i automatyki wzajemne poznanie i integracja środowiska automatyków (nauka – projektanci – producenci – użytkownicy)
Wystąpienia Przedstawicieli Nauki Prof. dr hab. inż. Ryszard Tadeusiewicz – AGH Akademia Górniczo-Hutnicza Roboty dla potrzeb chirurgii Prof. dr hab. inż. Leszek Trybus – Politechnika Rzeszowska Porównanie prototypu sterownika FPGA z klasycznymi sterownikami PLC Prof. dr hab. inż. Jan Maciej Kościelny - Politechnika Warszawska Pomiary w diagnostyce on-line procesów przemysłowych Prof. dr hab. inż. Tadeusz Skubis – Politechnika Śląska Minimalizacja zniekształceń prądu wprowadzanych przez przekładnik prądowy
58
RYTRO 2012
Limatherm Sensor Sp. z o.o. ul. Tarnowska 1, 34-600 Limanowa tel. 18 337 99 00 fax 18 337 99 10 www.limathermsensor.pl
Przemysłowe elementy grzejne
Doświadczenie zdobyte w ciągu kilkudziesięciu lat działalności umożliwia firmie kreowanie rynku; dokonywanie modernizacji produkcji/produktu zgodnie ze wzrostem wymagań techniczno-konstrukcyjnych stawianych przez klientów. Miarą rozwoju firmy jest również wprowadzanie do oferty handlowej nowego asortymentu – zapewnianie kontrahentom kompleksowej obsługi, na którą składają się: profesjonalne doradztwo, dobór aparatury oraz dostarczenie produktów spełniających wszystkie wymogi aplikacji. W ostatnich latach oferta firmy Limatherm Sensor wzbogaciła się o przemysłowe elementy grzejne. Grzejniki znajdują szerokie zastosowanie w przetwórstwie tworzyw sztucznych, gumy, przemyśle spożywczym oraz wszędzie tam, gdzie procesy wytwórcze wymagają uzyskania podwyższonej temperatury. Elementy grzejne oferowane przez Limatherm Sensor cechuje najwyższa jakość: • użytych materiałów (Kanthal), • wykonania (zgodnie z obowiązującymi normami) oraz niezawodność. Firma podejmuje się również realizacji dostaw dobranych do indywidualnych potrzeb klienta. Charakterystyka asortymentowa: – opaskowe elementy grzejne: • średnice wewnętrzne: od 18 mm do 1000 mm, • szerokość: od 15 mm do 650 mm, • grubość: od 3 mm do 32 mm, • maksymalna temperatura pracy: 450 °C,
• napięcie zasilania: od 220 V do 480 V; – patronowe elementy grzejne: • średnice tolerowane: od 4 mm do 70 mm, • długość: od 25 mm do 2500 mm, • maksymalna temperatura pracy: 500 °C, • kształt: prosty, • napięcie zasilania: od 12 V do 480 V; – rurkowe elementy grzejne: • średnice tolerowane: od 6 mm do 32 mm, • długość: do 4000 mm, • maksymalna temperatura pracy: 600 °C, • kształt: prosty lub profilowany, • napięcie zasilania: od 12 V do 480 V. Istotną rolę w procesie odpowiedniego doboru parametrów elementu grzejnego odgrywa przeznaczenie i jego warunki pracy. Stosunek mocy grzałki do jej wymiarów (tzw. obciążenie powierzchniowe) ma duży wpływ na pracę grzejnika. Do prawidłowego doboru konieczne jest podanie następujących parametrów: • wymiary, napięcie i moc, • zastosowanie i rodzaj ogrzewanego medium, • wymagana temperatura pracy, • rodzaj wyprowadzeń elektrycznych, • sposób kontroli temperatury, • rodzaj stosowanego mocowania. Podanie wymienionych parametrów pozwala na precyzyjny dobór grzałki, gwarantujący długą i niezawodną pracę elementu w aplikacji.
reklama
Różnorodność asortymentowa firm z branży automatyki przemysłowej jest jedną z głównych cech zapewniających jej wysoką pozycję rynkową. Limatherm Sensor jest wiodącym producentem elementów automatyki; specjalizuje się w szczególności w zagadnieniach pomiarów temperatury.
59
XVII Konferencja Automatyków
Danfoss Poland Sp. z o.o. ul. Chrzanowska 5, 05-825 Grodzisk Mazowiecki tel. 22 755 06 68, fax 22 755 07 01 www.danfoss.pl/napedy
Danfoss Drives światowym liderem w produkcji napędów regulowanych elektronicznie Produkowane przez Danfoss Drives regulowane elektronicznie napędy znajdują zastosowanie praktycznie w każdym obszarze działalności przemysłowej, a duński koncern nieustannie zwiększa swoje udziały rynkowe w globalnej sprzedaży napędów. Obecna oferta przetwornic częstotliwości obejmuje zakres mocy od 0,18 kW do 1,4 MW.
Inteligentna i innowacyjna
Specjalizacja w napędach Specjalizacja jest kluczowym słowem w Danfoss od roku 1968, kiedy to jako pierwszy na świecie rozpoczął masową produkcję przetwornic częstotliwości, urządzeń do płynnej regulacji prędkości obrotowej silników prądu przemiennego, już wówczas zwanych pod nazwą VLT. Obecnie ponad dwa tysiące osób pracuje przy rozwoju, produkcji, sprzedaży i serwisowaniu przetwornic częstotliwości oraz softstartów.
Lokalne wsparcie – globalnie dostępne Osoby dobrze znające Państwa potrzeby, aplikacje, kulturę i język są do Państwa dyspozycji na całym świecie i o każdej porze dnia. Eksperci Danfoss Drives kończą swoją pracę tylko wtedy, kiedy
60
Inżynierowie Danfoss Drives opracowali i wykorzystali koncepcję modułową napędu na każdym etapie jego wdrożenia, począwszy od projektu urządzenia, przez proces produkcji, aż do finalnej konfiguracji zamówienia realizowanego wg aktualnych wymagań użytkownika. Przyszłe opcje są rozwijane z wykorzystaniem zaawansowanych technologii. Pozwala to na rozwój wszystkich elementów w tym samym czasie, redukując czas oczekiwania i zapewniając klientom możliwość korzystania z najnowszych funkcji.
Polegamy na ekspertach Bierzemy odpowiedzialność za każdy element w naszej produkcji. Fakt, że rozwijamy i produkujemy sami nasze nowe funkcje, hardware, software, moduły mocy, płytki drukowane układu i akcesoria daje Państwu gwarancję, że otrzymają Państwo niezawodny produkt.
Oferta firmy Danfoss w dziedzinie napędów elektrycznych obejmuje: ● przetwornice częstotliwości VLT dedykowane aplikacyjnie FC 100, FC 200, FC 300 (o mocy od 0,37 kW do 1,4 MW), ● proste i przyjazne dla użytkownika przetwornice częstotliwości VLT 2800 oraz VLT Micro Drive FC 51 (o mocy od 0,18 kW do 22 kW) do uniwersalnych zastosowań, ● przetwornice częstotliwości VLT FCD oraz VLT FCM do zastosowań w aplikacjach zdecentralizowanych i rozproszonych, ● softstarty VLT serii MCD, w tym najnowszy model MCD 500 z innowacyjną funkcją AAC (o mocy do 800 kW w standardowej konfiguracji i do 1,2 MW w układzie Inside Delta).
Stałe wysiłki na rzecz ulepszania Jako czołowy dostawca rozwiązań napędowych dla przemysłu na całym świecie, Danfoss od wielu lat gromadzi technologiczną i użytkową wiedzę specjalistyczną. Marka Danfoss jest powszechnie akceptowana i postrzegana jako synonim wyjątkowej jakości i bezpieczeństwa. Od początku naszego istnienia profesjonalne zasoby koncentrowaliśmy tylko w jednej dziedzinie techniki: w rozwiązaniach napędowych. Danfoss osiągnął wspaniały sukces i jesteśmy dumni, że sukcesem tym możemy podzielić się z Państwem.
Fot. Danfoss
problemy klientów z napędami są rozwiązane. Przetwornice częstotliwości VLT pracują w aplikacjach na całym świecie, a Danfoss Drives, dzięki swojej organizacji sprzedaży i serwisu jest obecny w ponad 100 krajach na całym świecie, oferując swoje produkty i usługi serwisowe związane z rozwiązaniami napędowymi.
RYTRO 2013
Zobacz więcej Pobierz bezpłatną aplikację PAR+ App Store | Google Play
Czujniki bezprzewodowe SureCross Q45
Q45 należy do sprawdzonej rodziny produktów komunikacji radiowej SureCross. Charakteryzuje się podobnymi zaletami (m.in. zastosowaniem techniki TDMA, FHSS, szerokim zakresem temperatury pracy: od – 40 °C do +70 °C, czy wysokim stopniem ochrony IP67) oraz tym samym deterministycznym funkcjonowaniem zapewniającym pełną kontrolę nad komunikacją i jej statusem. Użytkownik w dowolnym momencie może sprawdzić stan i jakość połączenia za pomocą zaimplementowanego w modułach algorytmu SuiteSurvey. Ponadto nowe rozwiązanie jest w pełni kompatybilne ze starszymi modułami DX80, z którymi może być łączone w jedną sieć kontrolowaną przez wspólną bramkę sieci bezprzewodowej pracującą w topologii gwiazdy. Nowa seria czujników bezprzewodowych obejmuje rozwiązania pracujące w różnych trybach (odbiciowym, refleksyjnym, światłowodowym, przycisk mechaniczny) umożliwiając realizację funkcji sprawdzania obecności/braku, pozycjonowania, zliczania, monitoringu i detekcji. W ofercie znajduje się również specjalne wykonanie czujnika bezprzewodowego Q45, który przystosowany został do obsługi jednego lub dwóch sygnałów zewnętrznych pochodzących na przykład z czujników o wyjściach tranzystorowych, przekaźnikowych lub Namur. Żywotność baterii urządzenia sięga pięciu lat, w zależności od wersji czujnika i zastosowania. Sygnały z czujników są odbierane w bramce sieci bezprzewodowej, która współpracuje z PLC, HMI lub innym przemysłowym urządzeniem sterującym. W podstawowej konfiguracji jedna bramka kontro-
luje dwa lub sześć czujników. W wersji zaawansowanej ich liczba może zostać znacznie rozszerzona (do 47). Dzięki prostej procedurze dodawania nowych czujników do sieci czas poświęcany na instalację nowego urządzenia można skrócić do kilku minut, szczególnie jeżeli weźmie się pod uwagę brak okablowania. Komunikacja radiowa SureCross zapewnia niezawodne połączenie czujnika z PLC na dystansie do 1 km. Dane są przekazywane w niezawodny sposób, uniemożliwiający włamanie się do systemu. Jest to realizowane dzięki zastosowaniu własnego zastrzeżonego protokołu oraz techniki FHSS (każda kolejna komunikacja odbywa się na nieco innej częstotliwości). Ponadto system nie ma wpływu na inne urządzenia bezprzewodowe w paśmie ISM 2,4 GHz. W przypadku utraty połączenia bezprzewodowego możliwe jest wykorzystanie specjalnego wyjścia alarmowego. Czujniki bezprzewodowe zaprojektowano z myślą o szybkim i ekonomicznym wdrożeniu oraz niezawodnej pracy w dowolnej aplikacji. Z tego względu sprawdzają się m.in. przy przesyłaniu sygnałów przekaźnikowych, zastępowaniu niesprawnych instalacji kablowych, oczujnikowaniu aplikacji mobilnych, wymianie łańcuchów kablowych oraz komunikacji z lokalizacjami, z którymi dotychczas było to niemożliwe zarówno z powodów praktycznych, jak i ekonomicznych. Andrzej Dwojak TURCK Sp. z o.o. tel. 77 443 48 07
REKLAMA
Fot. Danfoss, Turck
Firma Turck wprowadziła do oferty pierwszy samodzielny, bezprzewodowy czujnik fotoelektryczny stanowiący rozwiązanie dla licznych aplikacji w dziedzinie monitoringu i kontroli. W kompaktowej, solidnej obudowie nowego urządzenia SureCross Q45 zintegrowano czujnik, moduł komunikacji radiowej oraz baterię.
Pomiary Automatyka Robotyka nr 5/2013
61
XVII Konferencja Automatyków
Eaton Electric Sp. z o.o. Electrical Sector ul. Galaktyczna 30, 80-299 Gdańsk tel. 58 554 79 00 www.moeller.pl, www.eaton.com
System SmartWire-DT w polach kasetowych xEnergy XW Firma Eaton nieustannie rozwija swoje produkty, w tym także najnowsze rozwiązanie z zakresu dystrybucji mocy – pola kasetowe xEnergy XW. Dzięki zastosowaniu innowacyjnego systemu SmartWire-DT kasety wysuwne i moduły do 250 kW można podłączyć do przemysłowej sieci komunikacyjnej, sterować nimi oraz odczytywać szereg istotnych informacji.
Pola xEnergy XW dedykowane są dla rozdzielnic do sterowania napędami (MCC) z układami napędowymi do 250 kW z rozruchem bezpośrednim (DOL), nawrotnym (FR) lub typu gwiazda-trójkąt (SD), a także do odbiorów liniowych do 630 A. Pola te składają się z dwóch części – kasetowej o szerokości 600 mm i kablowej o szerokościach 400 lub 600 mm. Wysokość zabudowy kasetami wynosi 1875 mm, dzięki czemu możliwe jest zastosowanie w jednym polu aż 25 kaset. Szyny rozdzielcze przewidziane są na prąd do 2000 A, a wartość prądu zwarciowego krótkozwłocznego wynosi 80 kA (1 s). Szyny główne oraz rozdzielcze są w pełni odseparowane od pozostałych przedziałów wewnętrznych, a dzięki systemowi samozamykających się żaluzji zapewniony jest wysoki poziom ochrony użytkownika, uniemożliwiający mu dostęp do części czynnych. W zależności od rodzaju rozruchu oraz jego mocy w polu kasetowym xEnergy XW można umieszczać kasety o wysokościach od 75 mm do 450 mm, a także specjalne moduły w przypadku największych mocy o wysokościach 600 mm lub 750 mm. Każdą kasetę wyposażono w system blokady, który zapobiega niepowołanemu wsunięciu lub wysunięciu. Blokada ta łączy konstrukcję kasety z rękojeścią wyłącznika, zamontowanego w kasecie jako aparat główny. Pozycje kasety w polu
62
xEnergy XW są oznaczone kolorem niebieskim – dla pozycji Test oraz zielonym – dla pozycji Przerwa izolacyjna.
SmartWire-DT System komunikacyjny SmartWire-DT został opracowany z myślą o ewolucji
szaf sterowniczych w kierunku rozwiązań, w których każdy komponent elektryczny jest inteligentnym elementem zdolnym do komunikacji. Rozwiązanie tego typu zapewnia szereg oszczędności na każdym etapie jej budowy. Począwszy od projektowania, poprzez montaż i uruchomienie, aż do utrzymania ruchu.
Rys. 1. Rozdzielnica xEnergy
Fot. Eaton Electric
Pola kasetowe xEnergy XW
RYTRO 2013 Tabela wybranych danych wyłączników PKE i NZM Parametr
PKE
NZM-ME/AE/VE
Stan położenia styków
ü
ü
Przyczyna wyzwolenia
ü
ü
Odczyt wartości nastaw
ü
ü
Względny prąd silnika [%]
ü
–
Wartość prądu [A]
–
ü
Dane identyfikacyjne wyłącznika
ü
ü
Informacje diagnostyczne
ü
ü
Rys. 2. Kasety xEnergy XW: wielkość H = 75 mm i H = 450 mm
Nie jest przy tym wymagane poznawanie nowych narzędzi programowania. Dzięki modułom gateway dana linia SW-DT może być w prosty sposób integrowana w systemie nadrzędnym: tak jak klasyczna wyspa rozproszonych wejść/wyjść. Co istotne, system SmartWire-DT wykorzystuje standardowe aparaty produkcji Eaton oraz firm partnerskich. Specjalne przystawki zapewniają im zdolności komunikacyjne, a co za tym idzie dają łatwy dostęp do części zamiennych.
łączeniach sieci SmartWire-DT podczas wymiany kasety. Wprowadzone do oferty moduły rozdzielacza SWD4-FFR-PF1-1/ST1-1 umożliwiają przerwanie linii SmartWire-DT, przy czym inne kasety w polu pozostają nadal aktywne. Każda kaseta jest podłączona indywidualnie do gatewaya SmartWire-DT. Po wyjęciu kasety z pola moduł zasilający rozdzielacza pozostaje w linii SmartWire-DT i pełni funkcję mostka dla pozostałych urządzeń.
Poprzez odpowiednią bramę można podłączyć tę sieć do innych magistrali przemysłowych, takich jak CANopen, Profibus DP, Profinet, Ethernet IP, Modbus TCP itp. Kasety xEnergy XW można podłączyć do sieci SmartWire-DT na dwa sposoby, w zależności od potrzeb aplikacji i stosowanych aparatów zabezpieczających silnik. Pierwszy wariant dotyczy kaset, w których silnik jest zabezpieczony wyłącznikami silnikowymi z wyzwalacza-
Fot. Eaton Electric
SmartWire-DT w kasetach xEnergy XW Dotychczas urządzenia w sieci SmartWire-DT były połączone w topologii linii, bez żadnych rozgałęzień lub pętli. Niekiedy odłączenie poszczególnych jednostek w linii SmartWire-DT mogło powodować niewłaściwe działanie. Z kolei pola kasetowe XW stosowane są przede wszystkim w aplikacjach, od których klient oczekuje wysokiej funkcjonalności. Kasety muszą umożliwiać ich wymianę w ciągu kilku minut – bez utraty lub zmiany funkcjonalności innych kaset w polu. Aby to osiągnąć, inżynierowie zajmujący się technologią SmartWire-DT opracowali rozwiązanie w postaci rozdzielacza, dzięki któremu nie ma konieczności dokonywania zmiany w po-
Rys. 3. Wnętrze kasety xEnergy XW z komunikacją w systemie SmartWire-DT Pomiary Automatyka Robotyka nr 5/2013
63
XVII Konferencja Automatyków
Rys. 4. Topologia sieci komunikacyjnej – podłączenie pól kasetowych XW do sieci przemysłowej
mi termomagnetycznymi. W tym przypadku stosuje się moduły wejść/wyjść SmartWire-DT, a pozycja styków głównych odczytywana jest za pomocą styku pomocniczego wyłącznika. W drugim wariancie w pełni wykorzystuje się możliwości systemu SmartWire-DT. Jest on dedykowany kasetom z wyłącznikami z wyzwalaczami elektronicznymi i umożliwia odczytywanie wszystkich parametrów dostępnych dla wyłączników PKE lub NZM. Wybrane dane, które można odczytać z wyłączników PKE i NZM, przedstawiono w tabeli.
Proces planowania, projektowania i uruchamiania systemu SmartWire-DT w kasetach xEnergy XW wspomaga bezpłatne oprogramowanie SWD-Assist. Jest ono dostępne w polskiej wersji językowej na stronie www.moeller.pl/sw-dt. Narzędzie wspomaga dobór odpowiednich elementów – monitoruje ewentualne przekroczenie dopuszczalnego obciążenia, długość taśmy ze względu na spadki napięć czy obecność niezbędnych akcesoriów, takich jak rezystor terminujący. Użytkownik może wygenerować listę za-
64
Rys. 5. Okno programu SWD-Assist – konfiguracje dla dwóch kaset z układem nawrotnym
mawiania i wydrukować dokumentację. Dzięki funkcji on-line dostępna jest rozbudowana diagnostyka całego układu po nawiązaniu połączenia z masterem systemu. Przykład okna projektu przedstawiono na rysunku 5. Firma Eaton, wprowadzając do oferty moduły SmartWire-DT typu SWD4-FFR-PF1-1/ST1-1, umożliwiła podłączenie kaset xEnergy XW do sieci prze-
mysłowych. Dzięki zastosowaniu systemu SmartWire-DT całą aparaturę sterującą i sygnalizacyjną można połączyć za pomocą zielonej taśmy, co skraca czas montażu kaset, a także pozwala uniknąć wielu potencjalnych błędów w połączeniach. Prostota i nowoczesność systemu SmartWire-DT oraz wysoka funkcjonalność kaset xEnergy XW tworzą doskonałe połączenie. Robert Roman, Junior Product Manager Jacek Zarzycki, Product Manager
Fot. Eaton Electric
Projektowanie komunikacji w kasetach xEnergy XW
Fot. Eaton Electric
RYTRO 2013
Pomiary Automatyka Robotyka nr 5/2013
65
XVII Konferencja Automatyków
PEPPERL+FUCHS Sp. z o.o. ul. Marsa 56B, 04-242 Warszawa tel. 22 256 9770, fax 22 256 9773 e-mail: info@pl.pepperl-fuchs.com www.pepperl-fuchs.pl
Pierwszy na świecie skaner optyczny 2D umożliwiający pomiar w pełnych 360°!
Skaner spotkał się z ogromnym zainteresowaniem branży automatyki przemysłowej oraz został laureatem wielu międzynarodowych nagród. Podczas Międzynarodowych Targów SPS, które odbyły się w listopadzie w Norymberdze, została zaprezentowana czołowa dziesiątka produktów z branży automatyki, nominowanych w konkursie na produkt roku. Skaner firmy Pepperl+Fuchs otrzymał 31,4 % wszystkich głosów i został zdecydowanym zwycięzcą konkursu Automation Award 2012. Skaner optyczny R2000 firmy Pepperl+Fuchs jest również jednym z pięciu najlepszych produktów, wyłonionych w prestiżowym konkursie automatyki Hermes Award.
66
Corocznie organizatorzy targów, federacje oraz stowarzyszenia inżynierów nominują 10 najbardziej interesujących produktów. O wygranej jednego z nominowanych produktów decydują głosy odwiedzających targi. Wśród nich są osoby związane z przemysłem pochodzące z wielu krajów Europy i świata! Produkt/rozwiązanie, które zdobywa największą liczbę głosów otrzymuje nagrodę Automation Award. Sukces skanera R2000 jest wynikiem innowacyjnego połączenia technologii czujnika pomiarowego, pracującego w technologii PRT (ang. Pulse Ranging Technology), z obrotową głowicą skanującą. Technologia PRT
zapewnia dużą wydajność i odporność czujnika, jak również jego wyjątkową funkcjonalność. Dzięki zastosowanej zasadzie pomiarowej, obrotowej głowicy oraz unikatowemu interaktywnemu wyświetlaczowi skaner laserowy jest innowacyjny w swojej klasie. Podstawowa wersja urządzenia została wzbogacona dodatkowymi funkcjami, dzięki którym jeszcze lepiej sprawdza się w aplikacjach związanych z automatyzacją produkcji – przykładowo można zdefiniować w czujniku kilku pól monitorowania. Do parametryzacji pól i podstawowych funkcji służy oprogramowanie bazujące na PACTware, które umożliwia prostą i intuicyjną obsługę. Dodatkowo
Fot. Pepperl+Fuchs
Technologia czujników pomiarowych sięgnęła kolejnego – drugiego wymiaru. Innowacyjny skaner R2000 umożliwia pomiar pełnego obwodu w 360° w sprawdzonej technice pomiarowej PRT. Dokładność pomiaru, odporność na zakłócenia i duża prędkość pomiarowa to cechy, które zostały przeniesione do przestrzennej analizy 2D.
RYTRO 2013
użytkownik może uzyskać podgląd graficzny skanowanego obszaru.
Fot. Pepperl+Fuchs
Najważniejsze cechy produktu: • pierwszy na świecie czujnik, w którym elementem obrotowym nie jest lustro – to układ pomiarowy obraca się wokół elementu odblaskowego, a sygnał przekazywany jest za pomocą unikatowego złącza ethernetowego, • brak szczelin pomiarowych dzięki skanowaniu w pełnych 360°,
• detekcja pozycji za pomocą małego ruchomego czujnika w technologii PRT, • prędkość skanowania do 50 Hz umożliwia stosowanie w najbardziej wymagających aplikacjach – skaner rejestruje 250 000 pomiarów/s!, • mała plamka pomiarowa (2 mm w odległości 2 m) umożliwia detekcję małych obiektów lub precyzyjną detekcję krawędzi, • łatwe ustawienie skanera dzięki widzialnemu czerwonemu laserowi (laser klasy 1 – bezpieczny dla oka), • interaktywny, obwodowy wyświetlacz umożliwia łatwe uruchomienie, użytkowanie skanera i informowanie o stanach skanera, • możliwość ustawienia do ośmiu niezależnych pól detekcyjnych. • interaktywny wyświetlacz, pozwalający na pokazywanie komunikatów i ostrzeżeń, • zasięg detekcji do 50 m,
• wysoka dokładność, odporny na zakłócenia, • laser klasy 1 – bezpieczny dla ludzkiego oka, • osiem niezależnych pól detekcyjnych, • zasięg detekcji do 50 m.
Zakres zastosowań: • do potencjalnych zastosowań urządzenia zaliczyć można wykrywanie różnych obiektów, • kontrola jakości: wysokości/szerokości, monitorowanie odległości, • rozróżnianie obiektów, • pomiar obiektów w dwóch wymiarach, • detektor kolizji, • monitoring prawidłowej selekcji towarów w magazynie: monitoring oraz pomiar stanu nawierzchni dróg – pomiar głębokości kolein, • monitoring oraz pomiar stanu tuneli.
REKLAMA
THE THEPULS PULSEEEOF OFAUTOMATION AUTOMATION THE PULS OF AUTOMATION
Czujniki Czujnikiultradźwiękowe ultradźwiękowe- rozwiązanie - rozwiązaniedodowszystkich wszystkichzastosowań zastosowań Czujniki ultradźwiękowe - rozwiązanie do wszystkich zastosowań – niezawodne – niezawodne sterowanie sterowanie procesem procesem ww szerokim szerokim zakresie zakresie zastosowań, zastosowań, – niezawodne sterowanie procesem w szerokim zakresie zastosowań, – bezproblemowa – bezproblemowa detekcja detekcja ww brudnym/zapylonym brudnym/zapylonym środowisku, środowisku, niezależnie niezależnie odod kształtu, kształtu, – bezproblemowa detekcja w brudnym/zapylonym środowisku, niezależnie od kształtu, koloru koloru czy czy rodzaju rodzaju powierzchni, powierzchni, koloru czy rodzaju powierzchni, – najszersza – najszersza oferta oferta czujników czujników ultradźwiękowych ultradźwiękowych obejmuje: obejmuje: miniaturowe miniaturowe czujniki czujniki serii serii F77, F77, – najszersza oferta czujników ultradźwiękowych obejmuje: miniaturowe czujniki serii F77, cylindryczne cylindryczne M12, M12, M18, M18, M30, M30, obudowy obudowy prostokątne, prostokątne, kwadratowe, kwadratowe, cylindryczne M12, M18, M30, obudowy prostokątne, kwadratowe, – mnogość – mnogość wyjść wyjść elektrycznych elektrycznych czujników: czujników: tranzystorowe, tranzystorowe, analogowe, analogowe, przekaźnikowe przekaźnikowe – mnogość wyjść elektrycznych czujników: tranzystorowe, analogowe, przekaźnikowe oraz oraz nowość: nowość: czujniki czujniki ultradźwiękowe ultradźwiękowe z interfejsem z interfejsem I-OI-O link! link! oraz nowość: czujniki ultradźwiękowe z interfejsem I-O link! – możliwość – możliwość regulacji regulacji szerokości szerokości i długości i długości wiązki. wiązki. – możliwość regulacji szerokości i długości wiązki.
www.pepperl-fuchs.pl/ultrasonics www.pepperl-fuchs.pl/ultrasonics www.pepperl-fuchs.pl/ultrasonics
Pomiary Automatyka Robotyka nr 5/2013
97 97 67 97
XVII Konferencja Automatyków
Przedsiębiorstwo Usługowo-Produkcyjne SKAMER-ACM Sp. z o. o. ul. Rogoyskiego 26, 33-100 Tarnów, tel. 14 63 23 400, fax 14 63 23 401 e-mail: tarnow@skamer.pl www.skamer.pl
Partner w automatyce
Firma wprowadziła i stosuje system zarządzania jakością wg normy ISO 9001:2008 w zakresie: „kompleksowe usługi inżynierskie, jak projektowanie, dostawy, prefabrykacja, montaż, uruchomienie i serwis oraz sprzedaż urządzeń w dziedzinie automatyki przemysłowej”. Skamer-ACM za swoją działalność został wyróżniony Certyfikatem Innowacyjności przez Międzynarodową Sieć Naukową MSN oraz Instytut Nauk Ekonomicznych PAN. W konkursie organizowanym przez miesięcznik „Napędy i Sterowanie”, pod patronatem PARP i AGH, Skamer-ACM został nagrodzony podwójnie: za wkład we wdrażanie nowych technologii otrzymał medal Innowacje 2012, natomiast Katalog Automatyki został Produktem Roku 2012. Katalog Automatyki otrzymał także wyróżnienie na X Międzynarodowej Konferencji Naukowo-Technicznej „Elektrownie Cieplne”. Również „Puls Biznesu” docenił dynamiczny rozwój firmy Skamer-ACM, przyznając jej tytuł Gazeli Biznesu 2012. Firmie Skamer zaufała większość czołowych producentów elementów automatyki, osprzętu elektrycznego i armatury przemysłowej podpisując umowy przedstawicielskie i dystrybucyjne. Główni partnerzy to: ABB, Aplisens, Asco Numatics, Chemitex, Danfoss, Emerson, Festo, Honeywell, Jumo, Limatherm Sensor, Lumel, Michell Instruments, Omron, Polna, Rockwell Automation, Rittal, Siemens, Sonel, Spirax-Sarco, Technokabel, Turck, WIKA. W 1996 r. firma podjęła się uruchomienia na terenie Polski przedstawicielstwa brytyjskiej firmy Michell Instruments Ltd., światowego lidera w pomiarach wilgotności gazów. Wykorzystując urządzenia tej firmy Skamer został głównym dostawcą zestawów do pomiaru punktu rosy w gazie ziemnym dla PGNiG. Skamer zatrudnia blisko 70 osób, głównie inżynierów automatyków pracujących w siedzibie firmy w Tarnowie i w oddziale w Krakowie. Firma jest stałym wystawcą na Międzynarodowych Targach Automatyki i Pomiarów Automaticon. Od 17 lat Skamer jest głównym organizatorem największej w Polsce Konferencji Automatyków w Rytrze, której celem jest integracja środowiska automatyków oraz przedstawienie aktualnych trendów w systemach pomiarów i automatyki, przy dużym zaangażowaniu świata nauki. Firma ciągle się rozwija i zawsze podąża za nowymi trendami. Określenie e-business stało się dla niej wyzwaniem i został wdrożony pierwszy w Polsce system o nazwie Katalog Automatyki (www.
68
katalogautomatyki.pl) automatyzujący przepływ informacji techniczno-handlowej pomiędzy producentami i użytkownikami automatyki. Firma współpracuje z: • uczelniami technicznymi: Akademia Górniczo-Hutnicza w Krakowie, Politechnika Warszawska, Politechnika Rzeszowska, Politechnika Śląska, Państwowa Wyższa Szkoła Zawodowa w Tarnowie, • prasą techniczną: „Pomiary Automatyka Kontrola”, „Pomiary Automatyka Robotyka”, „Napędy i Sterowanie”, „Control Engineering”, „Elektronika Praktyczna”, „Automatyka, Podzespoły, Aplikacje”, „Elektronik”, „Industry Europe”, • organizacjami: NOT, SEP, Ośrodek Badania Jakości Wyrobów ZETOM, Polska Korporacja Techniki Sanitarnej, Grzewczej, Gazowej i Klimatyzacji, Polsko-Słowacka Izba PrzemysłowoHandlowa, Małopolsko-Podkarpacki Klaster Czystej Energii. Skamer-ACM zdobył uznanie wśród licznych firm jako solidny partner we wdrażaniu i stosowaniu automatyki. Do grona kluczowych klientów firmy należą m.in. Firma Oponiarska Dębica, Polskie Górnictwo Naftowe i Gazownictwo, Alfa Laval, Stomil Sanok, SGL Carbon Polska Nowy Sącz – Racibórz, Grupa Azoty: Tarnów, Kędzierzyn, Puławy, Police, Cemex Polska, LERG Pustków, Federal-Mogul Gorzyce, Zakłady Chemiczne Organika Sarzyna, Huta Stalowa Wola, Celsa „Huta Ostrowiec”, ISD Huta Częstochowa, Huty Szkła Krosno, Jarosław, Fabryka Farb i Lakierów Śnieżka, Tikkurila Dębica, UTC CCS Manufacturing Ropczyce, WSK PZL Rzeszów, MPEC Tarnów, Rafinerie grupy Orlen i Lotos – Jasło, Jedlicze, Trzebinia, Czechowice, Orion Engineered Carbons Jasło, PGE Górnictwo i Energetyka Konwencjonalna Bełchatów, PGE Energia Odnawialna Warszawa, PGE Dystrybucja Rzeszów, Lublin, Kielce, Zamość, Tauron Wytwarzanie, GDF SUEZ Energia Polska Połaniec, Siarkopol Grzybów, Synthos Oświęcim, Michelin Olsztyn, Coca-Cola, Stalprodukt, Unilever, Kimberly Clark, Nestle Nutrition-Alima Gerber Rzeszów, Ceramika Paradyż, Opoczno, Philip Morris, Browary Carlsberg Okocim, Żywiec, Tychy, Leżajsk, Van Pur, Cementownie Ożarów, Nowiny, Chełm, Rejowiec, cukrownie, ciepłownie i elektrociepłownie, koksownie, kopalnie węgla kamiennego, zakłady energetyczne, przedsiębiorstwa energetyki cieplnej, przedsiębiorstwa wodociągów i kanalizacji.
Fot. Skamer-ACM
Skamer-ACM to ponad 25 lat doświadczenia w zakresie szeroko pojętej automatyki przemysłowej, od prostych urządzeń pomiaru, regulacji, sterowania i rejestracji po zaawansowane układy sterowania. Aktualnie Skamer ACM to marka rozpoznawana w całej Polsce i kojarzona z firmą, która zrealizuje każde zadanie związane z automatyką, począwszy od opracowania koncepcji, poprzez projektowanie, dostawy, montaż, rozruch instalacji, a skończywszy na serwisie.
RYTRO 2013 We wspomnianych firmach Skamer-ACM realizuje inwestycje, modernizacje, dostawy i serwis. Oferta firmy Skamer-ACM obejmuje: • projektowanie, • doradztwo techniczne, • kompletację i dostawy urządzeń, • montaż i rozruch instalacji, • oprogramowanie i uruchomienie przemysłowych systemów komputerowych, • sprzedaż elementów automatyki, armatury i osprzętu, • Katalog Automatyki.
Katalog Automatyki (www.katalogautomatyki.pl)
Katalog Automatyki powstał w ramach Programu Operacyjnego Innowacyjna Gospodarka, Działanie 8.2 „Wspieranie wdrażania elektronicznego biznesu typu B2B”. Głównym zadaniem katalogu jest maksymalne ułatwienie i zautomatyzowanie przepływu informacji techniczno-handlowej.
Projektowanie i Programowanie
Prace projektowe obejmują branże pomiarów i automatyki, elektryczną i teletechniczną, ciepłownictwo i ogrzewnictwo, wentylacji i klimatyzacji: • oprogramowanie i uruchomienie przemysłowych systemów sterownikowych i komputerowych oraz monitoringu, kontrolno-pomiarowe, telemetrii (na bazie Siemens, Beckhoff, Omron, GE-Fanuc Automation, Mitsubishi, Allen-Bradley, Saia, Schneider Electric, Wago oraz inne wg wymagań), • systemy wizualizacji (procesów przemysłowych) – wykorzystujemy software: ArchestrA System Platform, InTouch, Historian, InTrack, InBatch, InControl: DT Analyst, QI Analyst firmy Wonderware, WinCC firmy Siemens, asix firmy Askom oraz inne wg wymagań.
Montaż, rozruch instalacji i serwis
Zakres prac obejmuje branże: • pomiarów i automatyki oraz systemów komputerowych, • elektryczną i teletechniczną, • prefabrykację szaf ster., pulpitów, rozdzielnic, zwężek itp. W przypadkach szczególnych, gdy firma podejmuje się generalnego wykonawstwa obiektów i instalacji, oferta obejmuje pozostałe branże (mechaniczną, technologiczną, ciepłownictwo i ogrzewnictwo, instalacji sanitarnych, wentylacji i klimatyzacji oraz budowlaną). W ramach kompleksowej obsługi klientów firma zapewnia serwis gwarancyjny i pogwarancyjny dostarczanych i sprzedawanych urządzeń.
Fot. Skamer-ACM
Sprzedaż i kompletacja dostaw
Zakres sprzedaży obejmuje: • elementy automatyki, • osprzęt elektryczny, • armaturę przemysłową. Firma jest przedstawicielem techniczno-handlowym oraz autoryzowanym dystrybutorem kilkudziesięciu firm krajowych i zagranicznych – producentów elementów automatyki, osprzętu elektrycznego i armatury przemysłowej. Sprzedaż odbywa się z dobrze zaopatrzonych magazynów w Tarnowie i Krakowie.
Istotnymi funkcjami i elementami systemu są: • katalog towarów, • moduł szkoleń, • moduł targów internetowych. Katalog Automatyki jest dla różnych producentów uniwersalnym konfiguratorem produktów. Jego obsługa sprowadza się do zaznaczania kolejnych „check boxów”. Poruszanie się po Katalogu Automatyki jest łatwe, przyjazne i intuicyjne. Tutaj każdy znajdzie coś dla siebie. Projektant dobierze właściwe urządzenie lub materiał, pobierze dodatkowe materiały z biblioteki CAD, kosztorysant szybko wyceni zadanie, inżynier utrzymania ruchu znajdzie interesujące go urządzenie i porówna z wyrobami innych producentów, pracownik działu logistycznego znajdzie produkt, sprawdzi cenę, dostępność, wygeneruje ofertę, wyśle zapytanie i złoży zamówienie, a wszystko zajmie kilka minut. Efektem końcowym wyszukiwania produktów jest wybranie konkretnego wykonania wyrobu określonego m.in. symbolem producenta, nazwą, ceną. Dzięki temu użytkownik systemu nie musi konfigurować specyfikacji i symbolu wyrobu korzystając z kart katalogowych na stronach www producentów. Cena podana w Katalogu Automatyki pomaga w ocenie kosztów zarówno przy projektowaniu nowych, jak i modernizacji istniejących instalacji pomiarów i automatyki. Katalog Automatyki daje możliwość tworzenia zapytań ofertowych, zamówień, generowania oferty automatycznej z systemu, eksportowania listy towarów do standardowych formatów (CSV, XML, PDF). Każdy użytkownik może również tworzyć własne katalogi. Katalog Automatyki to również dwa bardzo innowacyjne moduły, a mianowicie Szkolenia i Targi on-line. Zastosowano tutaj narzędzia informatyczne, takie jak wirtualna tablica, zdalny pulpit, uzupełnione o przekaz audio/wideo. Serwer, na którym funkcjonuje system jest administrowany przez firmę Skamer-ACM pod adresem www.katalogautomatyki.pl. Ciągły rozwój firmy Skamer-ACM, inwestycje w nowe kadry i nowe technologie pozwalają na zdobywanie nowych rynków i gałęzi przemysłu. Wszystkie informacje o firmie i zrealizowanych tematach inwestycyjnych dostępne są na stronie www.skamer.pl. Pomiary Automatyka Robotyka nr 5/2013
69
XVII Konferencja Automatyków
Technokabel S.A. ul. Nasielska 55, PL 04-343 Warszawa tel. 22 516 97 97 www.technokabel.com.pl
Nowoczesne kable i przewody spełniające specyficzne wymagania klienta
Właściwe określenie warunków użytkowania pozwala konstruktorowi optymalnie zaprojektować kabel i zapewnić tym samym jego jakość oraz długoletnią żywotność. Zastosowanie nieodpowiednich kabli może spowodować ich awarie oraz przedwczesne zużycie i konieczność wymiany. Technokabel jest firmą innowacyjną, stosującą w procesach wytwórczych nowoczesne technologie i wykorzystującą nowoczesne materiały dostępne na rynku. Wśród popularnych kabli polwinitowych (PVC) na uwagę zasługują rozwiązania o zwiększonym zakresie temperatury pracy. Dostępne są zarówno wersje ciepłoodporne o maksymalnej temperaturze pracy do +105 °C, jak również wersje mrozoodporne, pracujące nawet w temperaturze –60 °C. Trzeba wziąć jednak pod uwagę fakt, że w przypadku polwinitu jest to praca w warunkach spoczynku. Zastosowanie elastomerów termoplastycznych na izolację i powłoki kabli pozwoliło rozszerzyć zakres temperatury pracy do +150 °C, a w przypadku wartości ujemnych są dostępne rozwiązania, które mogą być przeginane i zachowują swoją elastyczność nawet w temperaturze do –60 °C. W rynku kabli coraz większy udział mają kable bezhalogenowe, dla których standardowy zakres temperatury wynosi od –20 °C do +70 °C. Przez zastosowanie w przewodach typu Technoray materiałów bezhalogenowych, sieciowanych radiacyjnie, zwiększono ich zakres temperatury pracy (od –40 °C do +120 °C)
70
oferując jednocześnie zwiększoną odporność chemiczną i mechaniczną. Znalazły one zastosowanie głównie w pojazdach taboru szynowego do masowego przewozu ludzi. Niekorzystną cechą kabli jest ich wrażliwość na wilgoć. Jest to istotne zagadnienie w kablach do transmisji cyfrowej sygnałów, w których zmiana parametrów falowych wzdłuż torów kabla może zakłócić prawidłową transmisję. Stosowanie ochrony przed penetracją wilgoci wzdłuż kabla jest bardzo ważne w przypadku jego uszkodzenia, gdyż nie wymusza jego wymiany, a jedynie dokonanie naprawy. Wśród oferowanych przez Technokabel wyrobów znajdują się kable typu LAN-T, w których wypełnienie wolnych przestrzeni ośrodka kabla żelem zabezpiecza go przed penetracją wzdłużną wody. Na uwagę zasługują alternatywne rozwiązania konstrukcyjne, w których żel został zastąpiony specjalną taśmą i włóknami pęczniejącymi. Działanie takiego rozwiązania polega na szybkim chłonięciu wody (przez taśmę i włókna) w miejscu jej pojawienia się, w wyniku czego tworzy się „korek” zapobiegający dalszemu wnikaniu wilgoci. W trakcie eksploatacji często mamy do czynienia z oddziaływaniami mechanicznymi na kable. W celu zabezpieczenia stosuje się wzmocnienie w postaci pancerza z okrągłych drutów stalowych ocynkowanych, owiniętych spiralnie na powłoce kabla lub z taśm stalowych ocynkowanych oraz – w przypadku kabli elastycznych – uzbroje-
Fot. Technokabel S.A.
Dobór materiałów jest jednym z najważniejszych elementów decydujących o poprawnej pracy kabli i przewodów w danej aplikacji.
RYTRO 2013 nie w postaci oplotu z drutów stalowych ocynkowanych. Dla kabli jednożyłowych stosowany jest pancerz z drutów aluminiowych. Często pancerz stosowany jest w celu zabezpieczenia przed gryzoniami. Technokabel proponuje rozwiązania z powłoką zewnętrzną wykonaną ze specjalnie domieszkowanych materiałów bezhalogenowych, która odstrasza gryzonie. Rozwiązanie takie sprawia, że wymiary i masa kabla pozostają bez zmian, co jest szczególnie istotne w instalacjach wewnętrznych. Projektant instalacji przeciwpożarowej budynku staje często przed dylematem, jak zapewnić zasilanie instalacji ze stacji transformatorów usytuowanej poza budynkiem. W ofercie firmy Technokabel dostępna jest certyfikowana wersja kabli bezpieczeństwa, które mogą być układane bezpośrednio w ziemi – są to kable NHXHX-J 0,6/1 kV FE180 PH90/E90 i NHXCHX-J 0,6/1 kV FE180 PH90/E90. Kable bezhalogenowe i przeciwpożarowe stosowane są również w instala-
cjach przemysłowych, na statkach i platformach wiertniczych. Warunki pracy są wtedy cięższe niż w przypadku instalacji w budynkach. W takich sytuacjach należy zapewnić podwyższoną odporność chemiczną, odporność na uwarunkowania atmosferyczne i promieniowanie UV. Do tego rodzaju zastosowań proponowane jest specjalne wykonanie kabli elektroenergetycznych i kontrolno-pomiarowych. Często zachodzi konieczność zastosowania jednego kabla, który realizuje wiele funkcji. Konstrukcje takie, nazywane hybrydowymi, wymagają indywidualnego podejścia do projektowania oraz odpowiedniego monitorowania procesu produkcyjnego, aby uzyskać wyrób o odpowiednich właściwościach użytkowych. Przykładem takich rozwiązań są kable do drukarek atramentowych, którymi przesyłane są sygnały sterujące oraz atrament i rozpuszczalnik. Dobrane materiały izolacji i powłoki są odporne na związki chemiczne stosowane w tego ro-
dzaju urządzeniach. Innym przykładem jest hybrydowy płaski kabel do wind typu KYFLFY-JZ, zawierający żyły przewodzące o różnych przekrojach, w różnych izolacjach i różnej konfiguracji, realizujące zarówno funkcje zasilania i sterowania, jak i transmisji cyfrowej – 12 × 1+12 × 0,75 + (6 × 2 × 0,34) C+2 × (2 × 0,34) C+1 × FTP(4 × 2 × 0,14c). W rozwiązaniach oferowanych przez Technokabel znajdują się różnego rodzaju wyroby, odpowiadające specyficznym potrzebom klienta. Łącząc wiedzę i doświadczenie obu stron otrzymuje się najwyższej klasy produkty. Rzadko zdarza się, aby optymalny dobór właściwości kabli i przewodów był ekonomicznie nieuzasadniony. Dlatego zalecamy przy projektowaniu uwzględnienie wszystkich aspektów użytkowania instalacji kablowej i takie dobranie elementów, aby zapewnić poprawne jej funkcjonowanie przez długi czas. Dariusz Ziółkowski
Fot. Technokabel S.A.
reklama
Pomiary Automatyka Robotyka nr 5/2013
71
XVII Konferencja Automatyków
WIKA Polska spółka z ograniczoną odpowiedzialnością sp. k. ul. Łęgska 29/35, 87-800 Włocławek e-mail: info@wikapolska.pl www.wikapolska.pl
Manometry: ukryte zagrożenie lub widoczne bezpieczeństwo
W ostatnich latach rafinerie oraz zakłady petrochemiczne i chemiczne zmuszone były podnieść swoją wydajność, ale bez możliwości dokonania ulepszeń sprzętu, niezbędnych do sprostania zwiększonym wymaganiom. Spowodowało to znaczne obciążenie systemów i podzespołów w tych zakładach. Przykładowo, wysokie ciśnienia pulsacyjne i silne drgania mechaniczne przenoszą się na inny sprzęt, zwłaszcza na oprzyrządowanie ciśnieniowe.
Problemy związane z nieprawidłowym zastosowaniem, uszkodzeniem lub zaniedbywaniem manometrów
Niewłaściwe, nieprawidłowo stosowane, uszkodzone lub zaniedbywane manometry mogą doprowadzić do powstania różnorakich problemów, w tym dotyczących bezpieczeństwa, przestojów lub konieczności zapłacenia kosztownych kar ustawowych.
72
Problemy bezpieczeństwa procesowego
Pierwsza z wymienionych grup dotyczy problemów bezpieczeństwa procesowego, takich jak wydostawanie się substancji chemicznych do otoczenia, prowadzące do niekontrolowanych pożarów, wybuchów i innych zagrożeń dla pracowników. Przykładowo, w wyniku naruszenia bezpieczeństwa procesowego, spowodowanego nieprawidłowo użytkowanymi, uszkodzonymi
lub zaniedbywanymi manometrami, może dojść do wytryśnięcia niebezpiecznych mediów (takich jak kwasy lub inne substancje żrące) na znajdujących się w pobliżu ludzi. Najgroźniejsze są przypadki, w których dochodzi do pęknięcia rurek Bourdona w manometrach, co powoduje uwalnianie takich mediów, jak benzyna, ropa, gaz i inne substancje lotne oraz żrące. Grozi to pożarem, wybuchem lub innym poważnym naruszeniem bezpie-
Fot. WIKA Polska
Jednym z najważniejszych urządzeń (i niestety zaniedbywanych lub ignorowanych), zapewniających bezpieczeństwo, produktywność i zyskowność zakładów przemysłowych jest manometr ciśnienia procesowego. Urządzenie to służy do mierzenia ciśnienia na liniach przesyłowych, pompach wylotowych i w innych miejscach, w których jest to istotne.
RYTRO 2013 czeństwa, jak na przykład uwalnianiem trujących gazów lub wytryskiwaniem kwasów na pracowników. Wyciek szkodliwych mediów jest typowym skutkiem niewłaściwego stosowania, zaniedbywania lub nienaprawiania uszkodzonych manometrów. Pożary i wybuchy są rzadsze, ale nadal spotykane. W jednej z takich sytuacji rozregulowanie pompy spowodowało tak silne wibracje manometru, że pękła w nim rurka Bourdona. Media zaczęły wyciekać z rurki na pompę, która była przegrzana ze względu na długi okres użytkowania i rozregulowana, co wywołało pożar.
Kosztowne przestoje
Druga grupa problemów dotyczy kosztownych przestojów wynikających z omówionych naruszeń bezpieczeństwa procesowego lub po prostu z konieczności przerwania procesu w celu wymiany niewłaściwych, niewłaściwie stosowanych, zepsutych lub w inny sposób uszkodzonych manometrów.
Przestoje związane z bezpieczeństwem
Omówione problemy bezpieczeństwa (emisje, pożar, wybuch itp.) mogą skutkować wystąpieniem różnorodnych przyczyn przestoju: konieczności ugaszenia pożaru, usunięcia wycieku mediów, zamknięcia linii z przewodem uwalniającym media, ewakuacji personelu, w końcu konieczności rekonstrukcji lub naprawy przewodów, wymiany sprzętu itd.
Fot. WIKA Polska
Przestoje niezwiązane z bezpieczeństwem
W przypadku awarii linii, która spowoduje awarię manometru, przestój może wystąpić nawet, jeśli nie ma żadnych emisji ani wypadków, a pojawia się konieczność zatrzymania procesu w celu wymiany manometru. Awaria manometru rzadko powoduje awarie innych elementów procesu, chociaż zwykle świadczy o występowaniu jakiegoś problemu. W większości przypadków pracownicy zakładu po prostu wymieniają manometry i kontynuują pracę. W razie kolejnej awarii procedura jest z reguły taka sama, aż w końcu rzeczywista przyczyna awarii, jak na przykład nieprawidłowo wyregulowana pompa, spowoduje konieczność
zamknięcia linii procesowej, co doprowadza do kosztownego, niezaplanowanego przestoju i wymaga czasochłonnej poważnej konserwacji.
Kary ustawowe
Trzecia grupa problemów dotyczy potencjalnej konieczności zapłacenia znacznych kar, wynikających z naruszenia bezpieczeństwa procesowego.
Jak powstają problemy z manometrami
Techniczne problemy z manometrami mają różnorodne źródła. Dla uporządkowania można je podzielić na siedem grup. Są to bardzo szerokie kategorie usterek. Dodatkowo każda z nich jest podzielona na dalsze podkategorie. Najczęstszą przyczyną problemów jest fakt, iż pracownicy montują manometry, nie do końca zdając sobie sprawę, w jaki sposób należy je instalować i jakich dodatkowych podzespołów wymagają. Manometry takie ulegają awarii, gdyż są użytkowane niezgodnie z przeznaczeniem oraz dlatego, że zostały nieprawidłowo zamontowane lub nie są właściwie konserwowane. Jednym ze sposobów wyeliminowania lub zminimalizowania takich problemów jest dostosowanie podzespołów do konkretnego modelu manometru. Podzespoły takie chronią manometry podczas ich użytkowania i mogą okazać się kluczowym elementem aktywnego programu konserwacji oraz wydłużyć czas ich pracy.
Drgania mechaniczne
Termin oznacza ruchy oscylacyjne, postępowo zwrotne albo inne okresowe ruchy ciała lub medium sztywnego czy elastycznego wyprowadzanego ze stanu równowagi. Drgania są z reguły najczęstszą przyczyną awarii manometrów w instalacjach procesowych. Głównym źródłem takich wibracji są zespoły pomp. Co gorsza, nadmierne drgania manometru mogą spowodować pęknięcie rurki Bourdona w jego wnętrzu i wyciek mediów. Problemom z drganiami mechanicznymi można zapobiec, instalując manometry wypełnione cieczą, która tłumi wibracje i chroni wewnętrzne mechanizmy miernika. Wypełnienie obudowy cieczą zapewnia również smarowanie mechanizmów wewnętrznych i zapobiega ich korozji.
Pulsacje
Spowodowane są one przez media krążące z dużą prędkością w układzie ciśnieniowym manometru. Jeśli zmiany wskazań związane z pulsacją są większe niż 5 % pełnej skali, konieczna jest interwencja, gdyż grozi to uszkodzeniem manometru. Ogranicznik na śrubie przepustnicy powinien rozwiązywać większość problemów związanych z pulsacjami, spowalniając przepływ mediów poprzez zmniejszenie otworu i ograniczenie fluktuacji ciśnienia. W przypadku bardzo silnych pulsacji, jak uderzenia i nagłe wzrosty ciśnienia, najlepiej użyć dławika regulowanego, który daje większą kontrolę nad stopniem ograniczania i przepływem mediów w stronę układu ciśnieniowego.
Temperatura
Jeżeli manometr jest narażony na działanie mediów o bardzo wysokiej temperaturze, stop metalu użyty do jego budowy może jej nie wytrzymać, co grozi pęknięciem rurki Bourdona i wyciekiem mediów. Manometr można ochronić, wykorzystując długie rury oddzielające go od procesu lub małe elementy chłodnicze w postaci radiatorów żebrowych, pozwalające na przepływ powietrza po powierzchni. W przypadku stosowania pary WIKA zaleca zamontowanie w manometrze syfonu. Umożliwia on schłodzenie i skroplenie pary przed wpuszczeniem jej do manometru. Z kolei w przypadku mediów o bardzo wysokiej temperaturze można też użyć uszczelnienia membranowego z elementem chłodniczym, które stanowi izolację i zapobiega dostawaniu się gorących mediów do manometru.
Uderzenia hydrauliczne i nadciśnienie
W niektórych sytuacjach media procesowe mogą być pod ogromnym ciśnieniem. Nagłe wzrosty ciśnienia mogą wywołać awarię manometru. Włączanie i wyłączanie pomp albo otwieranie i zamykanie zaworów może spowodować uderzenie mediów, takich jak olej, skierowane w stronę manometru, co skutkuje natychmiastowym, znacznym uderzeniem hydraulicznym. Przykładowo, jeżeli w rurze pompowany jest olej pod ciśnieniem 100 psi, czę-
Pomiary Automatyka Robotyka nr 5/2013
73
XVII Konferencja Automatyków
Korozja
Problemy z korozją wynikają z niedostosowania elementów manometrów, mających kontakt z mediami, do rodzaju tych mediów. Istnieją media tak silnie żrące, że niszczą rurki Bourdona i wyciekają na zewnątrz. Jeżeli elementy manometru mające kontakt z mediami nie są do nich dostosowane, konieczne jest wykorzystanie uszczelnienia membranowego izolującego manometr od mediów. Zaletą uszczelnienia membranowego jest to, że może być wykonane ze specjalnych stopów odpornych na korozję. Wystarczy dobrać odpowiedni materiał uszczelnienia, kompatybilny z mediami procesowymi.
Zatory
W niektórych procesach może dojść do krystalizacji lub innego rodzaju utwardzenia mediów. Standardowe manometry w takich przypadkach ulegną po pewnym czasie zatkaniu i ich wskazania będą nieprawidłowe. Przykładowo, jeżeli manometr jest zatkany i pokazuje ciśnienie równe zeru, a rzeczywiste ciśnienie w nim jest ogromne, po otwarciu systemu przewodów rurowych może dojść do niespodziewanego i niebezpiecznego wycieku mediów. Można zabezpieczyć manometr przed cząstkami stałymi, pyłem i lep-
74
kimi mediami uszczelnieniem membranowym, tworzącym barierę pomiędzy procesem a wlotem ciśnienia manometru. Membrany mogą być wyposażone w podłączenia do przepłukiwania, służące do usuwania materiału z ich powierzchni.
Niewłaściwa obsługi i nieprawidłowe zastosowanie
Manometry mogą ulec przedwczesnemu uszkodzeniu, jeżeli używane są niezgodnie z przeznaczeniem. Przykładowo, w momencie instalowania manometru mógł on być doskonale dobrany do danego zastosowania. Jednakże po modyfikacji sprzętu parametry procesowe mogły się zmienić, sprawiając, że manometr w tym przypadku przestał być odpowiedni. Nieprawidłowe stosowanie jest zjawiskiem dość częstym i może prowadzić do poważnych problemów, awarii sprzętu i związanego z tym wycieku mediów. Możliwe jest także przypadkowe uszkodzenie urządzeń podczas instalacji. Do montażu manometrów należy używać kluczy o właściwych rozmiarach i nie można ich montować przez obracanie obudową. Po zainstalowaniu manometr można uszkodzić w wyniku złej obsługi lub niewłaściwego użytkowania.
Dlaczego powstają problemy z manometrami
Według danych firmy WIKA, w typowej instalacji 25 % manometrów stanowią manometry uszkodzone lub takie, które wkrótce zostaną uszkodzone. Istnieją dwie główne przyczyny tak alarmującego stanu rzeczy. Pierwsza jest związana z nieodpowiednim zarządzaniem. Druga natomiast wynika z braku wyszkolenia i doświadczenia pracowników.
Zarządzanie
Manometry często są traktowane jako tanie udogodnienia, podczas gdy mają one kluczowe znaczenie dla przebiegu procesów. Zepsute manometry najczęściej są wymieniane na nowe, identyczne, które zaraz znowu się psują. I tak w kółko. Problem polega na tym, że w którymś momencie instalacja może po prostu nie wytrzymać i montaż nieprawidłowego manometru spowoduje poważną awarię. Dlaczego manometry są elementem do tego stopnia zaniedbywanym? Jedną z przyczyn może być fakt, że kierownic-
two najczęściej skupia się na sprzęcie drogim, kosztującym setki tysięcy lub miliony złotych z reguły nie zdając sobie sprawy ze znaczenia miernika za 100 LN. Nie jest to jednak wina kierownictwa, lecz wynika to z tego, że nikt im nie wyjaśnił, jak ważne są właściwe manometry. Jak już wspomniano, podobny brak uwagi może spowodować poważne problemy związane z bezpieczeństwem i zmusić do poniesienia dodatkowych kosztów. Manometry procesowe powinny być traktowane tak samo jak zegary w samochodzie. Jeżeli w aucie zepsuje się wskaźnik temperatury, nierejestrowane przegrzanie się silnika może spowodować jego zniszczenie. Podobnie, jeżeli zepsuje się wskaźnik ciśnienia oleju, nie pokaże on utraty oleju, w związku z czym silnik pojazdu może się zatrzeć i zniszczyć.
Szkolenie pracowników i doświadczenie
Drugą przyczyną jest brak odpowiedniego przeszkolenia i doświadczenia pracowników. Często bywa tak, że technicy konserwacyjni nie zwracają większej uwagi na manometry, sprawdzając jedynie, czy nie przeciekają. Nie rozumieją, jak wiele informacji można wyczytać z manometru. Technicy mogą także nie zauważyć, że urządzenie jest uszkodzone lub wkrótce zostanie uszkodzone. Jeżeli nie przecieka, technik przeważnie po prostu go zignoruje. Najczęściej nie jest to wina tych pracowników, ale raczej tego, że nie zostali oni prawidłowo przeszkoleni w zakresie konserwacji manometrów procesowych. Ponadto, w branży od kilku lat obserwowany jest „drenaż mózgów”: wielu doświadczonych techników i inżynierów odchodzi i są zastępowani ludźmi młodymi, którzy najczęściej nie mają odpowiedniego wykształcenia i doświadczenia, a ponadto nie rozumieją roli manometrów, albo co gorsze – nie są zastępowani w ogóle. 40 lat temu w zakładach byli zatrudniani specjaliści od samego oprzyrządowania. Przeprowadzali oni dobór i konserwację manometrów i zapewniali ich prawidłową pracę. Cięcia kosztów w ostatnich latach zmusiły zakłady do zwalniania tych pracowników, a ich obowiązki zostały przejęte przez
Fot. WIKA Polska
sto instalowane bywają manometry 100 psi, bez uwzględnienia możliwych nagłych wzrostów ciśnienia, nadciśnienia i uderzenia hydraulicznego. Zwiększenie ciśnienia powoduje w takim przypadku nadciśnienie w manometrze, co niekiedy skutkuje pęknięciem rurki Bourdona i wyciekiem mediów. Można temu zapobiec, instalując inny manometr, na przykład manometr 200 psi na przewodzie 100 psi. Innym sposobem jest montaż dodatkowego zabezpieczenia przeciw nadciśnieniu, odcinającego ciśnienie w razie uderzenia hydraulicznego lub gwałtownego wzrostu. Zabezpieczenia takie służą przeciwdziałaniu jego nagłym wzrostom i w rezultacie uszkodzeniom związanym z nadciśnieniem. Urządzeniami tego typu można zabezpieczyć manometry przed ciśnieniem przekraczającym maksymalne wartości znamionowe.
RYTRO 2013 monterów instalacji rurociągowych. Monterzy radzili sobie nieźle, lecz ich głównym zadaniem było upewnienie się, że rury zostały prawidłowo zmontowane i nie przeciekają. Następnie, kiedy zakłady pozwalniały monterów rurociągów, odpowiedzialność spadła na operatorów i techników instalacji, którzy zaczęli zajmować się instalacją manometrów. Pracownicy ci z reguły nie mają żadnej wiedzy ani doświadczenia w zakresie instalacji oprzyrządowania. Zwykle po prostu wymieniają stare manometry na nowe podobne.
Skupienie uwagi na manometrach
Światowej klasy zakłady przetwórcze prowadzą aktywną politykę konserwacji swoich aktywów. W takich zakładach manometry traktowane są z taką samą uwagą jak pompy i zawory regulacyjne. Kierownictwo zdaje sobie sprawę z wagi aktywnej konserwacji i wie, że jednym z najlepszych sposobów na utrzymanie najdroższych elementów w dobrym stanie jest właściwy dobór i konserwacja manometrów zabezpieczających te elementy. Osoby
Kwestie dotyczące zakupu manometrów
Jak już wspomniano, status manometrów został w ostatnich latach zredukowany do roli produktów będących zaledwie udogodnieniem. Aby zapewnić bezpieczeństwo, produktywność i zyskowność zakładu, pracownicy muszą zrozumieć wagę doboru odpowiednich manometrów do konkretnych zastosowań. Ważne jest też, żeby były to urządzenia o wysokiej jakości, a nie jakiekolwiek. Innymi słowy, manometr manometrowi nie równy. Tak zwane najtańsze manometry początkowo wydają się atrakcyjne, ale w ostatecznym rozrachunku wcale nie są najtańsze, gdyż trzeba je częściej wymieniać, a to powoduje długie przestoje i jest uciążliwe. Co gorsza, mogą ulec nagłej awarii, która może się zakończyć tragicznie. Firma WIKA przedstawia 10 kroków pozwalających na dobór właściwych manometrów, które pomogą zapewnić bezpieczeństwo, produktywność i zyskowność każdej instalacji.
1. Wiedzieć, co płynie w rurach
Dzięki temu można dobrać manometr kompatybilny z mediami.
2. Znać temperaturę mediów
Jeżeli media są na przykład bardzo gorące, używanie standardowego manometru nie będzie bezpieczne.
Problem w tym, że te manometry są od samego początku niewłaściwe. Skutek jest taki, że obecnie niewiele zakładów ma pracowników z jakimkolwiek wyszkoleniem i doświadczeniem w zakresie oprzyrządowania.
Fot. WIKA Polska
Właściwe postępowanie z manometrami procesowymi
Aby stworzyć efektywny program zarządzania manometrami w celu zwiększenia bezpieczeństwa, produktywności i dochodowości zakładów przetwórczych, firmy powinny podjąć pewne działania. Po pierwsze, należy zdać sobie sprawę z kluczowego znaczenia manometrów. Po drugie, należy ustalić, jakiego typu manometry najlepiej się sprawdzą w danej sytuacji.
te rozumieją, że wydatek 100 PLN na manometr może w konsekwencji zapobiec powstaniu szkód o wartości na przykład 100 000 PLN albo 500 000 PLN w sprzęcie oraz naruszeniu bezpieczeństwa, przestojom i komplikacjom prawnym. Coraz więcej zakładów jest obecnie zainteresowanych konserwacją prewencyjną – jest to zjawisko pozytywne. Wymaga ona jednak w wielu przypadkach drogiego oprogramowania. Ponadto, system może być ustawiony tak, że alarm pojawi się dopiero przy naprawdę poważnej awarii. Natomiast właściwie utrzymywane manometry, obsługiwane przez ludzi, którzy wiedzą, co robią, mogą być tanim i skutecznym narzędziem konserwacji prewencyjnej.
3. Znać warunki otoczenia w okolicy manometru
Jeżeli na przykład manometr znajduje się w środowisku korozyjnym, należy upewnić się, że zewnętrzne elementy manometru (jak obudowa) są odpowiednie do tego typu otoczenia.
4. Wiedzieć, jakie ciśnienie ma mierzyć manometr
Zalecamy zwykle manometry przeznaczone do pomiaru ciśnienia dwa razy większego niż ciśnienie robocze. Przykładowo, jeżeli normalne ciśnienie wynosi 100 bar, zalecamy manometr mierzący ciśnienie 200 bar.
5. Wiedzieć, jakie warunki powodują zużycie manometru
Są to takie czynniki jak: drgania mechaniczne, pulsacje, nagłe wzrosty ciśnienia
Pomiary Automatyka Robotyka nr 5/2013
75
XVII Konferencja Automatyków itp. (omówiono je wcześniej). W przypadku występowania drgań konieczne może być wyposażenie manometru w obudowę wypełnioną cieczą. W przypadku pulsacji zalecamy dodatkowy dławik.
6. Dobierać manometry przeznaczone do danego zadania
Manometry procesowe są wyposażone w mocne rurki Bourdona i inne elementy charakteryzujące się solidną konstrukcją. W przypadku niewłaściwego zastosowania manometru jego wewnętrzne elementy mogą być niewystarczająco wytrzymałe i ulec awarii, doprowadzając do wycieku mediów. Nie znaczy to, że awaria nigdy nie nastąpi i że nigdy nie będzie wycieku, ale prawdopodobieństwo znacznie się zmniejszy.
7. Obudowa manometru musi być wytrzymała i mieć odpowiednie parametry bezpieczeństwa
W niektórych konstrukcjach manometrów pęknięcie rurki Bourdona może spowodować wyciek mediów z przedniej części manometru, a w konsekwencji wytryśnięcie mediów na pracowników. Najlepsze są manometry, które w razie awarii uwalniają media z tylnej strony.
8. Dokładność ma znaczenie
Dla większości zakładów normą jest dokładność ±0,5 %, dopuszczalna jest ±1 %.
9. Rozmiar też jest ważny
Zegar manometru musi być na tyle duży, aby operatorzy mogli odczytać jego wskazanie z dużej odległości. Polecamy tarcze 100 mm lub większe.
10. Manometr musi być prawidłowo zamontowany
Manometry najczęściej instalowane są na wspornikach, ale można je również wmontować w panelu lub na płaskiej powierzchni.
Pomoc zewnętrzna
Jak już wspomniano, dla kierownictwa zakładu trudne może być poświęcenie czasu i uwagi na program efektywnego zarządzania manometrami. Podobnie trudnym zadaniem może być dla personelu technicznego zdobycie niezbędnej wie-
76
dzy i doświadczenia związanego z manometrami. W ciągu ostatnich kilkunastu lat w niemal wszystkich branżach obserwowany jest trend outsourcingu wszelkich usług, które nie są uznawane za „kluczowe kompetencje”. Oznacza to, że wiele firm uznało, iż dobrym rozwiązaniem jest skupienie uwagi na swojej misji i tym, co robią najlepiej, a pozostawienie pobocznych zadań innym firmom, które się w tym specjalizują. Osiągnięcie eksperckiej wiedzy w dziedzinie manometrów zdecydowanie nie jest „kluczową kompetencją” dla zakładów chemicznych, petrochemicznych i rafinerii, więc obsługa manometrów jest doskonałym kandydatem do outsourcingu. Jeżeli dany zakład zrezygnuje z samodzielnego pozyskiwania niezbędnego doświadczenia, WIKA oferuje pomoc. Firma utworzyła ostatnio Zespół Obsługi Audytu (Full Audit Service Team, FAST) – złożony z inżynierów, którzy udają się na teren zakładu i oceniają stan oprzyrządowania. Zespoły FAST wykorzystują pięciofazowy program przeglądu oprzyrządowania w oparciu o najlepszą praktykę. Audyt oprzyrządowania ma na celu sprawdzenie, czy manometry pracują prawidłowo i czy są w stanie spełniać swoje zadanie. Przegląd najlepszych praktyk pozwala zidentyfikować manometry z nieprawidłowościami i dobrać odpowiednie działania korekcyjne, zapewniające najlepszą wydajność. W przeglądzie identyfikowane są problemy wpływające na niezawodność, żywotność i bezpieczeństwo. Dzięki niemu można wykryć ślady pulsacji, drgań, udarów ciśnienia, nadmiernej temperatury procesowej lub zewnętrznej, uszkodzenia instalacji, zatory, brak kompatybilności chemicznej i inne problemy, które mogą przerodzić się w poważne kłopoty.
Faza 1. Wywiad
Faza ta obejmuje dyskusję zespołu FAST z zespołem zakładu. Podczas wywiadu pracownicy zapoznają się z celem przeglądu oprzyrządowania, sposobem jego przeprowadzania i korzyściami, jakie z niego płyną. Wywiad pomaga również ustalić najlepszą metodę dostosowania przeglądu do wymogów danej instalacji.
Faza 2. Przed spotkaniem
Faza ta obejmuje określenie jednostek lub sekcji zakładu, które będą poddane przeglądowi, oraz ról i zadań zespołu FAST. W jej ramach także identyfikowane są te obszary zakładu, które są zwolnione z przeglądu lub do których wejście jest zabronione. Zespół dokonuje przeglądu problematycznych instalacji oprzyrządowania i omawia procedury bezpieczeństwa z personelem zakładu.
Faza 3. Przegląd zastosowań oprzyrządowania
W ramach tej fazy zespół FAST jest oprowadzany po zakładzie przez kierownictwo. Członkowie zespołu dokonują przeglądu instalacji manometrów i ustalają, które mają nieodpowiednie warunki oraz które są zgodne z najlepszą praktyką instalacyjną.
Faza 4. Po spotkaniu
Ta faza obejmuje przedstawienie wyników przeglądu oprzyrządowania kierownictwu zakładu, ze szczególnym zwróceniem uwagi na instalacje stwarzające bezpośrednie zagrożenie bezpieczeństwa. Zespół i personel zakładu razem ustalają, które instalacje wymagają natychmiastowej interwencji, a które odłożyć na później. Zespół FAST umawia się następnie z pracownikami zakładu na kolejne spotkanie.
Faza 5. Drugie spotkanie i prezentacja
Zespół FAST przedstawia ogólne ustalenia i podsumowanie przeglądu oprzyrządowania. Przedstawia również arkusz zawierający szczegółowe informacje dotyczące manometrów objętych przeglądem oprzyrządowania, uszeregowane według intensywności problemów przy pomocy kolorów. Na podstawie doświadczenia i najlepszych praktyk zespół podaje zalecenia co do poprawy ich stanu. Personel i zespół FAST opracowują strategię postępowania. Zespół może również pomóc w inny sposób. Przykładowo, w spisie zapasów magazynowych zakładu może z czasem zapanować chaos. FAST może wesprzeć pracowników w uporządkowaniu i zarządzaniu zapasem manometrów. Jeżeli w zakładzie przechowywanych jest na przykład 10 różnych modeli, zespół pomoże zredukować tę liczbę do 5–6 modeli.
Polecane książki
Zdzisław Mrugalski
Zegary elektryczne i elektroniczne Zarys historii
Na początku roku ukazała się nowa książka prof. Zdzisława Mrugalskiego z dziedziny techniki zegarowej, której treść wypełnia pewną lukę w polskiej (i nie tylko) literaturze zegarmistrzowskiej, traktuje bowiem o rozwoju konstrukcji zegarów elektrycznych, który postępował wraz z rozkwitem elektrotechniki i wykorzystywał jej osiągnięcia. Jednak przedmiotem zainteresowania autora jest nie tylko aspekt historyczny – przedstawia także najnowsze osiągnięcia w tej dziedzinie, które są wynikiem dążności konstruktorów do budowy coraz doskonalszych urządzeń zegarowych spełniających wymagania, nieraz bardzo wysokie, w różnych dziedzinach techniki i przeznaczonych dla odbiorców o różnych oczekiwaniach. Autor skupia uwagę czytelnika przede wszystkim na rozwiązaniach konstrukcji zegarów. Aspekt historyczny jest tu tłem, które pozwala ocenić intensywność rozwoju tych konstrukcji, zwłaszcza w ubiegłym wieku i współcześnie. Tematyka jest bardzo obszerna i trudna do przedstawienia w ograniczonej objętości tekstu, zwłaszcza biorąc pod uwagę niezwykłą różnorodność rozwiązań konstrukcyjnych zegarów elektrycznych, z których dziś już wiele jest prawie zapomnianych, a często bardzo ciekawych. Autor uporządkował i sklasyfikował te bardzo różnorodne rozwiązania i ta systematyka znalazła ścisłe odzwierciedlenie w układzie tekstu książki i w spisie treści, niekiedy dość rozbudowanym. Ułatwia to czytelnikowi poruszanie się w tej wieloaspektowej materii opracowania. Przedstawiono tu bowiem obszerny materiał, wzbogacony licznymi schematami i zdjęciami, pokazujący rozwój zegarów elektrycznych, poczynając
od pierwszych prób „zelektryfikowania” zegarów mechanicznych aż po najnowsze rozwiązania atomowych wzorców czasu. Są więc opisane zegary z naciągami elektrycznymi napędów obciążnikowych i sprężynowych oraz napędy bezpośrednie i pośrednie wahadeł i balansów, w tym wyjątkowo wyrafinowane konstrukcje bardzo dokładnych zegarów mechanicznych: astronomicznych wahadłowych i chronometrów balansowych. Przełomowy wynalazek tranzystora, a następnie produkcja układów scalonych zrewolucjonizowały sposób budowy układów elektronicznych, co umożliwiło także konstruowanie małych zegarków elektromechanicznych i elektronicznych. Wyrafinowanym przykładem takiego mechanizmu był np. zegarek Accutron z miniaturowym oscylatorem kamertonowym. Równolegle postępowała miniaturyzacja zegarów kwarcowych, od pierwotnych konstrukcji w postaci szaf z wieloma panelami aż do zminiaturyzowanych układów produkowanych współcześnie. Sporo miejsca poświęcono także systemom i zespołom sieci czasu oraz zegarom specjalnym. Polski czytelnik zapewne doceni troskę Autora o ocalenie od zapomnienia tych fragmentów historii polskiej myśli technicznej, które traktują o – może skromnych w aspekcie globalnym, ale istotnych w skali krajowej – osiągnięciach przemysłu precyzyjnego (był taki w Polsce) w zakresie produkcji zegarów elektrycznych, zwłaszcza domowych i przemysłowych, nie odbiegających jakością rozwiązań konstrukcyjnych i technologią wytwarzania od dobrego poziomu światowego. Niewątpliwym atutem książki jest widoczna dbałość o przejrzystość i język opracowania, co ułatwia czytanie wymagającego uwagi tekstu,
zwłaszcza opisów budowy i działania mechanizmów. Książka prof. Zdzisława Mrugalskiego jest bardzo potrzebną publikacją na naszym ubogim w pozycje „zegarmistrzowskie” rynku księgarskim. Powinna znaleźć czytelników zarówno wśród zegarmistrzów pragnących poszerzyć swą wiedzę zawodową, jak i wśród interesujących się techniką pomiaru czasu, a także w coraz szerszym gronie zainteresowanych techniką i sztuką zegarmistrzowską. To właśnie realne wsparcie znawców i kolekcjonerów zegarów, zrzeszonych w Klubie Miłośników Zegarów i Zegarków, przyczyniło się w znacznej mierze do powstania i wydania tej interesującej publikacji. Książka została starannie opracowana pod względem edytorskim przez wydawnictwo Cursor Media, co jeszcze podnosi jej atrakcyjność (została też wydana w formie elektronicznej). Wydawnictwo Cursor Media, Warszawa 2013, 255 s., 1 tab., 223 rys., bibl. 101 poz.
dr inż. Wiesław Czerwiec
Pomiary Automatyka Robotyka nr 5/2013
77
Nauka
Rekonfigurowalny akcelerator kryptograficzny Tomasz Kryjak AGH Akademia Górniczo-Hutnicza, Wydział EAIiIB, Katedra Automatyki i Inżynierii Biomedycznej
Streszczenie: W artykule omówiono zastosowanie układów rekonfigurowalnych FPGA jako akceleratorów kryptograficznych – urządzeń, które mogą wykonywać operacje szyfrowania lub deszyfrowania danych szybciej i przy mniejszym zużyciu energii niż procesory ogólnego przeznaczenia, oferując jednocześnie dużą elastyczność oraz możliwość rozwoju i modyfikacji rozwiązania. W pierwszej części pracy przedstawiono budowę i zasoby dostępne we współczesnych układach FPGA, a w drugiej zaprezentowano implementację algorytmu kryptograficznego CLEFIA.
na, nośniki multimedialne (ochrona przed nieautoryzowanym kopiowaniem – systemy DRM) i wiele innych. Celowym zatem jest projektowanie akceleratorów kryptograficznych – modułów sprzętowych, które szyfrowanie i deszyfrowanie realizują szybciej i przy mniejszym zużyciu energii niż rozwiązania programowe. W artykule omówiono implementację algorytmu CLEFIA w układzie FPGA i budowę rekonfigurowalnego akceleratora kryptograficznego.
Słowa kluczowe: układy FPGA, kryptografia, algorytm CLEFIA
Pierwsze układy FPGA (ang. Field Programmable Gate Array) pojawiły się w 1985 r. i stanowiły kolejny etap rozwoju programowalnych układów logicznych – urządzeń, których końcowa funkcjonalność nie została określona na etapie produkcji. Podstawowym elementem układu FPGA są: matryca konfigurowalnych bloków logicznych Configurable Logic Block – CLB (nazewnictwo Xilinx), Adaptive Logic Block – ALB (nazewnictwo Altera) i konfigurowalne zasoby połączeniowe. Ponadto układy wyposażone są w wbudowane pamięci RAM, moduły do zarządzania sygnałem zegarowym, moduły DSP, interfejsy wejścia/wyjścia, kontrolery magistrali PCI Express i pamięci RAM DDR3. Szczegóły budowy nowoczesnych układów FPGA omówiono na przykładzie rozwiązań firm Xilinx [29] i Altera [1], które oferują najbardziej zaawansowane rozwiązania na rynku. Najnowsze serie układów FPGA firmy Xilinx to Virtex 7, Kintex 7 i Artix 7, a firmy Altera to Stratix V, Arria V i Cyclone V; wszystkie wykonane w technologii 28 nm. Dla obu producentów można zaobserwować podział na trzy kategorie produktów: − układy o największych zasobach logicznych, osiągach i możliwościach: Virtex i Stratix, − układy o korzystnym stosunku wydajności do ceny: Kintex i Arria, − układy o najniższym zużyciu energii i niskiej cenie, przeznaczone do produkcji masowej: Artix i Cyclone.
1. Wprowadzenie Układy FPGA są komercyjnie dostępne od prawie 30 lat. W tym okresie wyodrębniła się grupa aplikacji, w których urządzenia te są chętnie stosowane. Należą do nich: prototypowanie układów ASIC, szeroko rozumiana akceleracja obliczeń (ang. High Performance Computing), sieci przewodowe i bezprzewodowe, przetwarzanie dźwięku, przetwarzanie obrazów (np. medycznych, satelitarnych) i sekwencji wideo (np. monitoring wizyjny, kompresja i dekompresja wideo), systemy bezpieczeństwa w samochodach, systemy wojskowe oraz kryptografia i kryptoanaliza. Równocześnie należy stwierdzić, że układy FPGA stały się jedną z czterech głównych programowalnych platform obliczeniowych obok procesorów ogólnego przeznaczenia (CPU), procesorów sygnałowych (DSP) i kart graficznych (GPU). Wyróżnia je możliwość realizacji obliczeń w sposób zrównoleglony, duża swoboda w projektowaniu architektury obliczeniowej, różnorodność obsługiwanych interfejsów do urządzeń zewnętrznych i standardów napięciowych, niskie zużycie energii oraz wielokrotna reprogramowalność. Kryptografia jest dziedziną nauki zajmującą się szeroko pojętym ukrywaniem informacji. Istnieje już ponad 2000 lat. Od swoich początków związana była z korespondencją dla potrzeb wojska i dyplomacji. Dopiero na przełomie XX i XXI wieku, wraz z rozwojem Internetu, nastąpiło gwałtowne upowszechnienie kryptografii „cywilnej”. Obecnie zabezpieczane są wszelkie transakcje finansowe (przelewy, e-zakupy itp.), rozmowy i wideorozmowy, transfer danych, rozmaite dokumenty, wybrana korespondencja elektronicz-
78
2. Układy FPGA
2.1. Układy FPGA firmy Xilinx
Podstawowym elementem układu FPGA firmy Xilinx jest blok CLB. Jest on podzielony na dwa moduły Slice, z których każdy zawiera: cztery generatory funkcyjne, osiem elementów pamięciowych (przerzutniki D, ang. Flip Flop – FF), multipleksery oraz logikę przeniesienia. Generator
funkcyjny został zrealizowany jako LUT (ang. Look-Up Table) o 6 wejściach i dwóch niezależnych wyjściach. Istnieje możliwość łączenia dostępnych modułów LUT z wykorzystaniem multiplekserów. Generator funkcyjny może zostać także skonfigurowany jako: − synchroniczna pamięć RAM, zwana pamięcią rozproszoną (ang. Distributed RAM) – o różnym rozmiarze i liczbie portów od 1 do 4, przy czym jeden port umożliwia synchroniczny zapis i asynchroniczny odczyt, a pozostałe asynchroniczny odczyt, − 32-bitowy rejestr przesuwny wykorzystywany przy tworzeniu linii opóźniających. Dedykowana logika przeniesienia zapewnia szybką realizację operacji dodawania i odejmowania w obrębie pojedynczego Slice’a. Za połączenia między zasobami logicznymi oraz modułami wejścia i wyjścia odpowiada sieć konfigurowalnych połączeń. Zestawienie zasobów dostępnych w układach FPGA firmy Xilinx zaprezentowano w tab. 1. Tab. 1. Maksymalne zasoby dostępne w układach FPGA firmy Xilinx Tab. 1. Maximal resources available in Xilinx FPGA devices Zasoby
Artix-7
Kintex-7
Virtex-7
Logic Cells*
360 k
478 k
1955 k
Block RAM
19 Mb
34 Mb
68 Mb
DSP48
1040
1920
3600
Wydajność DSP [GMAC/s]
1306
2845
5335
16
32
96
Maks. szybkość transceivera
6,6 Gb/s
12,5 Gb/s
28,05 Gb/s
Maks. przepustowość szeregowa
211 Gb/s
800 Gb/s
2784 Gb/s
Interfejs PCIe
× 4 Gen2
× 8 Gen2
× 8 Gen3
Interfejs RAM
1066 Mb/s
1866 Mb/s
1866 Mb/s
600
500
1200
Transceivery
Wejścia/wyjścia
*Porównywanie pojemności układów FPGA odbywa się za pomocą wielkości Logic Cells, która jest odpowiednikiem typowego zestawu: 4-bitowy LUT i przerzutnik. W układach Xilinx serii 7 przyjęto stosunek Logic Cells do liczby 6-bitowych LUT’ów jako 1,6:1.
2.1.1. Pozostałe zasoby dostępne w układzie FPGA firmy Xilinx W układzie FPGA Xilinx serii 7 dostępne są następujące dodatkowe zasoby: − CMT Clock Managment Tiles – bloki zarządzania sygnałem zegarowym, które zapewniają generację różnych częstotliwości, równomierną propagację sygnału oraz tłumienie zjawiska jitter, − Block RAM – bloki dedykowanej dwuportowej pamięci RAM o pojemności 36 kb, które mogą zostać również
−
−
−
−
−
skonfigurowane jako moduły FIFO (z niezależnym zegarem zapisu i odczytu), DSP48E1 ‑ moduły z mnożarką 25 × 18 bitów oraz 48-bitowym akumulatorem. Mają jednostkę arytmetyczną, która działa w trybie SIMD (ang. Single Instruction Multiple Data), co umożliwia jednoczesne wykonywanie operacji na dwóch 24-bitowych danych lub czterech 12-bitowych, XADC – podwójny, 12-bitowy przetwornik analogowo-cyfrowy z częstotliwością próbkowania 1 MHz, umożliwiający obsługę do 17 wejść analogowych, GTX Transceivers – moduły nadawczo-odbiorcze umożliwiające transmisję szeregową z prędkością 500 Mb/s i 12,5 Gb/s. Wspierają one kilka trybów: PCI Express 1.1/2.0/3.0, 10GBASE-R, Interlaken i inne, Select IO – zasoby wejścia/wyjścia, podzielone na banki po 50 pinów (liczba banków zależy od typu, rozmiaru i obudowy układu). Mogą zostać skonfigurowane do pracy z wieloma standardami (w tym z różnicowymi): LVCMOS, LVTTL, HSTL, PCI, SSTL, LVDS i inne, Zintegrowany moduł PCI Express – wspiera transmisję z przepustowością 2,5 Gb/s i 5,0 Gb/s i liczbą linii 1, 2, 4, 8.
2.2. Układy FPGA firmy Altera
Podstawowy element układu FPGA firmy Altera stanowi moduł ALM (ang. Adaptive Logic Module). Jest on zbudowany z 8-wejściowego adaptacyjnego generatora funkcyjnego, dwóch sumatorów i czterech rejestrów. Generator funkcyjny został zrealizowany jako 8-wejściowy i 2-wyjściowy element LUT (składający się z dwóch 6-wejściowych elementów LUT). Wbudowane sumatory zapewniają realizację operacji dodawania 2- i 3-bitowego, bez konieczności wykorzystywania dodatkowych zasobów logicznych. Moduły ALM zestawione są w tablice bloków LAB (ang. Logic Array Block), które mogą stanowić 640-bitową dwuportową pamięć RAM. Za połączenia między zasobami logicznymi oraz modułami wejścia i wyjścia odpowiada sieć konfigurowalnych połączeń. Zestawienie zasobów dostępnych w układach FPGA firmy Altera zaprezentowano w tab. 2. Tab. 2. Maksymalne zasoby dostępne w układach FPGA firmy Altera Tab. 2. Maximal resources available in Altera FPGA devices Cyclone V
Arria V
Stratix V
Logic Cells*
301 k
504 k
952 k
M20K RAM
11 Mb
24 Mb
52 Mb
27 × 27 DSP
342
1139
352
Transceivery
12
36
66
488
668
840
Zasoby*
Wejścia/wyjścia
*Podane wartości należy traktować orientacyjnie. W skład każdej serii układów wchodzą podserie dedykowane do innych zastosowań (np. DSP lub komunikacji) o zwiększonej liczbie wybranych zasobów.
Pomiary Automatyka Robotyka nr 5/2013
79
Nauka
2.2.1. Pozostałe zasoby dostępne w układzie FPGA firmy Altera W układzie FPGA Altera serii V dostępne są następujące dodatkowe zasoby: − fPLL – pętla sprzężenia fazowego (ang. fractional phase locked loop), moduł do precyzyjnego generowania częstotliwości zegara, − VP DSP – moduły DSP o zmiennej precyzji (ang. Variable Precision), pojedynczy moduł umożliwia wykonanie do 3 mnożeń 9 × 9, dwóch 16 × 16 i jednego 27 × 27 (dane dla układów Stratix; dla Arria i Cyclone możliwa jest niezależna realizacja dwóch mnożeń 18 × 19), − M20K ‑ bloki dedykowanej dwuportowej pamięci RAM o pojemności 20 kb. Mogą zostać wykorzystane jako rejestry przesuwne lub moduły FIFO. Maksymalna częstotliwość pracy wynosi do 600 MHz. (w układach Arria i Cyclone pamięci blokowe są mniejsze – 10 kb i o niższej maksymalnej częstotliwości pracy – 400 MHz), − Transcivers – moduły nadawczo-odbiorcze umożliwiające transmisję szeregową z szybkością od 14,1 Gb/s do 28,05 Gb/s (w układach Arria i Cyclone maksymalne prędkości wynoszą odpowiednio 10,0 Gb/s i 5,0 Gb/s), − Moduły wejścia/wyjścia. Mogą zostać skonfigurowane do pracy z wieloma standardami (w tym z różnicowymi): LVCMOS, LVTTL, HSTL, PCI, SSTL, LVDS i inne, − Zintegrowane moduły sprzętowe do protokołów Interlaken, 10 GbE, Serial Rapid IO, CPRI/OBSAI, − Zintegrowany moduł PCI Express – wspiera działanie z przepustowością 2,5 Gb/s i 5,0 Gb/s, a dla układu Stratix z 8,0 Gb/s (Gen3), − HPS – wbudowany procesor (ang. Hard Processor System). Występuje w wybranych układach serii Arria i Cyclone. Składa się z dwurdzeniowego procesora ARM Cortex A9, kontrolerów: pamięci SDRAM i DMA oraz modułów Ethernet, USB, I2C, UART, SPI.
3. Projektowanie logiki układów FPGA Logikę układów FPGA można projektować za pomocą kilku narzędzi. Podstawowym sposobem jest opis w tzw. języku opisu sprzętu (ang. Hardware Description Language – HDL). Przykładami są popularne VHDL i Verilog. W odróżnieniu od języków programowania (C/C++/C#, Java), nie opisuje się ciągu instrukcji, który zostanie wykonany na zadanej architekturze sprzętowej, a elementy obliczeniowe i połączenia między nimi. Wspomniane języki HDL zalicza się do narzędzi niskopoziomowych i sprawne posługiwanie się nimi wymaga znajomości zagadnień elektroniki cyfrowej oraz pewnego doświadczenia. Stanowi to przeszkodę w upowszechnianiu technologii FPGA, szczególnie jako akceleratorów obliczeniowych. Aby ją wyeliminować powstało szereg narzędzi wysokiego poziomu, wśród których można wymienić: Catapult-C [4], Mitrion-C [20], rozwiązania firmy Maxeler [19], System Generator i HDL Coder (powiązane z popularnym pakietem MATLAB/Simulink), rozszerzenia pakietu LabVIEW do współpracy z układami FPGA [18] i inne.
80
4. Zastosowania układów FPGA Układ FPGA może pełnić rolę akceleratora w systemie obliczeniowym, realizującym konkretną fukcjonalność (np. przy współpracy z komputerem PC lub superkomputerem) lub być samodzielnym urządzeniem (tzw. systemem wbudowanym, ang. embedded system). W obu przypadkach warto wskazać grupę algorytmów (i powiązanych zastosowań), których implementacja w zasobach układu FPGA jest opłacalna, tj. uzyskuje się znaczne przyspieszenie obliczeń i/lub niższe zużycie energii. Drugi aspekt jest szczególnie istotny w przypadku systemów superkomputerowych, gdyż ma bardzo wyraźne przełożenie na koszty prowadzenia obliczeń. Również w przypadku urządzeń mobilnych, niskie zużycie energii jest bardzo istotne. Szczególnie predestynowane do akceleracji z wykorzystaniem FPGA są algorytmy spełniające następujące warunki: − składają się z szeregu względnie prostych operacji powtarzanych na wielkiej liczbie danych (tzw. algorytmy zdominowane przez dane), np. filtracja kontekstowa obrazów, − mają duże możliwości zrównoleglenia typu: SIMD (Single Instruction Multiple Data ‑ pojedyncza instrukcja, wiele danych), MIMD (Multiple Instruction Multiple Data, − wiele instrukcji, wiele danych) oraz MISD (Multiple Instruction Single Data – wiele instrukcji pojedyncze dane), − operują na liczbach stałoprzecinkowych. Układy FPGA nie mają bezpośredniego sprzętowego wsparcia dla operacji zmiennoprzecinkowych, zatem realizacja tego typu obliczeń, jakkolwiek możliwa wymaga znacznych zasobów logicznych, − charakteryzować się uporządkowanym dostępem do danych (np. przetwarzanie obrazu linia po linii). Główne grupy zastosowań układów FPGA to przede wszystkim przetwarzanie i analiza obrazów i sekwencji wideo, wykorzystywane w przemyśle wojskowym, samochodowym, urządzeniach medycznych, elektronice użytkowej (kamery, telewizory), systemach monitoringu i pokrewnych. Przykładowe aplikacje to detekcja twarzy [12] oraz monitoring wizyjny [17]. Szersze omówienie tematyki odnaleźć można w pracy [10]. Kolejną grupą zastosowań jest przetwarzanie innych sygnałów cyfrowych: dźwięku (w tym sygnałów pozyskanych z sonaru [13]) oraz zarejestrowanych fal elektromagnetycznych (np. radar) [30]. Prowadzone są również prace nad ich wykorzystaniem w zadaniach sterowania [15]. Układy FPGA, z uwagi na swoją elastyczność i wielość możliwych do zrealizowania interfejsów wejścia/wyjścia stanowią istotny element w sieciach bezprzewodowych (stacje BTS) i przewodowych (zaawansowane routery) [22]. Następną grupą zastosowań jest akceleracja algorytmów obliczeniowych wykorzystywanych w takich dziedzinach jak fizyka, chemia, bioinformatyka, inżynieria materiałowa, budownictwo, ekonomia, finanse [3, 11]. Uzyskuje się w ten sposób przyspieszenie obliczeń, przy jednoczesnym obniżeniu ich kosztów (dzięki znacznie mniejszemu zużyciu energii niż procesor lub karta graficzna). Układy FPGA mogą również być wykorzystywane jako akceleratory kryptograficzne. Tematyka ta zostanie szerzej omówiona w dalszej części artykułu.
5. Kryptografia i szyfr CLEFIA Szyfry można, w zależności od zastosowania, podzielić na: asymetryczne lub symetryczne, a także blokowe i strumieniowe (zagadnienie szerzej omówione w [21]). W artykule skupiono się na szyfrach symetrycznych, blokowych, gdyż do takich należy analizowany i implementowany algorytm CLEFIA. Symetrycznymi określa się algorytmy, w których podczas szyfrowania i deszyfrowania danych wykorzystuje się ten sam klucz (tj. informację umożliwiającą wykonanie czynności kryptograficznej), a realizowane operacje są bardzo podobne. Blokowymi określa się rozwiązania, w których dane wejściowej dzielone są na równe porcje (tj. bloki). Do popularnych symetrycznych szyfrów blokowych należą: DES, 3DES, AES, IDEA, Blowfish, a także CLEFIA. Szyfry asymetryczne (np. RSA) charakteryzują się występowaniem dwóch rodzajów kluczy: publicznych i prywatnych oraz tym, że proces szyfrowania i deszyfrowania przebiega w odmienny sposób [24].
5.1. Kryptografia w układach FPGA
Tematyka implementacji algorytmów kryptograficznych w układach FPGA jest obecna w badaniach naukowych od ponad 15 lat. Wpływ na to mają: − łatwość implementacji większości operacji wykorzystywanych w algorytmach kryptograficznych w zasobach logicznych dostępnych w FPGA, − możliwości, jakie oferuje rekonfigurowalność, tj. opcję zmiany algorytmu lub podmiany implementacji na wydajniejszą lub bezpieczniejszą (np. odporną na ataki kryptoanalityczne z wykorzystaniem różnicowej analizy mocy). Jako pierwsze zostały zaimplementowane szyfry blokowe DES [26, 16], IDEA [2], AES [9], następnie strumieniowe [14] i asymetryczne (RSA) [8].
Rys. 1. Przetwarzanie danych w algorytmie CLEFIA [6] Fig. 1. Data processing in CLEFIA algorithm [6]
Warto podkreślić, że moduły szyfrujące i deszyfrujące są sprzedawane w postaci tzw. IP Core (ang. Intellectual Property Core), czyli gotowych, sprawdzonych elementów, które można użyć we własnym projekcie. Ich zestawienia znajdują się na stronach internetowych firm Xilinx [29] i Altera [1]. Dostępne są implementacje algorytmów 3DES, AES, RSA, SHA-1, SHA-256, MD5. Układy FPGA znajdują również zastosowanie jako podstawa do budowy maszyn kryptoanalitycznych. Przykładem jest COPACOBANA [7], zbudowana z 200 układów Spartan 3 (lub w nowszej wersji ze 128 Virtex 4) zdolna do łamania szyfru DES w czasie krótszym niż tydzień.
5.2. Szyfr CLEFIA
CLEFIA jest 128-bitowym szyfrem blokowym z kluczem o długości 128, 192, 256 bitów stworzonym przez firmę SONY [6]. W 2012 r. algorytm został dołączony do standardu ISO/IEC 29192-2, w zakresie kompaktowych szyfrów blokowych, które to znajdują zastosowanie w urządzeniach o ograniczonych zasobach, przykładowo w inteligentnych kartach (ang. smart cards), identyfikatorach RFID (ang. Radio-Frequency Identification), sieciach czujników oraz urządzeniach medycznych. Szyfr CLEFIA można podzielić na dwa funkcjonalne moduły: ścieżkę przetwarzania danych oraz generator podkluczy. Podstawą budowy ścieżki przetwarzania danych jest uogólniona sieć Fiestela (ang. General Fiestel Network, GFNa,b gdzie a – liczba gałęzi, b – liczba rund1). Wejściowy 128-bitowy blok danych dzielony jest na cztery 32-bitowe fragmenty. GFN wykorzystuje dwie tzw. F-funkcje: F0 i F1. Zbudowane są one w oparciu o operacje XOR (oznaczone jako Å), dwa 8-bitowe bloki podstawieniowe (S-Box) ‑ S0 i S1 oraz mnożenie przez macierze rozpraszające M0 i M1. Przekształcenie S0 i S1 zdefiniowano za pomocą arytmetyki w ciele skończonym GF(24) i GF(28) oraz operacji afinicznych. Szczegóły zawarto w dokumencie [6]. Schematycznie przetwarzanie danych przedstawiono na rys. 1. Zadaniem generatora podkluczy jest wygenerowanie, na podstawie klucza szyfrowania, dwóch rodzajów podkluczy używanych w algorytmie CLEFIA: określonych jako „wybielające” (ang. Whitening Key, WK), które wykorzystywane są na początku i końcu przetwarzania (operacja XOR z danymi, por. rys. 1) oraz tzw. kluczy rundy (ang. Round Key, RK), które sterują pracą każdej z F-funkcji. Składa się on z dwóch modułów. W pierwszym, na podstawie klucza szyfrowania K, za pomocą GFN, wyliczany jest klucz pośredni L. W przypadku klucza 128-bitowego wykorzystuje się sieć GFN4,12, dla kluczy 192- i 256-bitowych GFN8,10. W drugim etapie na podstawie K i L wyznaczane są wartości WK i RK. W module używane są też 32-bitowe wartości stałe CONi(k). Ich liczba, 1) Szyfr symetryczny podzielony jest na szereg wielokrotnie powtarzających się operacji – rund szyfrowania. W przypadku CLEFIA pojedyncza runda składa się z modułów F0 i F1 oraz dwóch operacji XOR.
Pomiary Automatyka Robotyka nr 5/2013
81
Nauka
Innym rozwiązaniem może być implementacja bloków S-Box wprost na podstawie definicji (podejście z pracy [5]). W tym przypadku moduł S0 wykorzystuje 24 elementy LUT i wprowadza opóźnienie ok. 2,3 ns, a S1 56 elementów LUT oraz wprowadza opóźnienie ok. 5,7 ns. Różnica wynika ze stopnia skomplikowania obliczeń. W pierwszym przypadku konieczne jest zaimplementowanie mnożenia w ciele GF(24) i czterech niewielkich elementów LUT, a w drugim obliczania odwrotności w ciele GF(28).
6.2. Implementacja macierzy rozpraszających M0 i M1 Rys. 2. Generacja podkluczy dla klucza 128-bitowego Fig. 2. 128-bit key-scheduling block
w zależności od rozmiaru klucza, wynosi 60, 84 lub 92. Schemat blokowy algorytmu generatora dla klucza 128-bitowego przedstawiono na rys. 2. Symbol DS to funkcja zamiany bitów w 128-bitowym wektorze, a | oznacza konkatenację wektorów. Szerszy opis algorytmu dostępny jest w dokumencie [6], a referencyjna implementacja zamieszczona jest na stronie internetowej producenta [25].
6. Sprzętowa implementacja algorytmu CLEFIA Opisany w punkcie 5.2 szyfr CLEFIA zrealizowano w sposób w pełni potokowy, wykorzystując zasoby rekonfigurowalne układu FPGA. Oznacza to możliwość płynnego przetwarzania kolejno dostarczanych 128-bitowych danych wejściowych oraz niewielkie opóźnienie (kilkanaście taktów zegara) między pierwszą próbką danych jawnych a rezultatem szyfrowania. Podejście to wymaga zaimplementowania logiki dla wszystkich rund szyfrowania (tj. 18 w przypadku wersji z kluczem 128-bitowym). Alternatywnym sposobem jest wykonanie modułu iteracyjnego. W tym przypadku konieczne jest zaimplementowanie logiki tylko jednej rundy. Wiąże się to jednak z N-krotnym spadkiem wydajności (N – liczba rund). W tym przypadku szyfrowanie każdego bloku danych wymaga, co najmniej N taktów zegara. Najbardziej złożonym elementem pojedynczej rundy są bloki S-Box S0 i S1 – sposób ich implementacji w znacznym stopniu decyduje o całkowitym opóźnieniu i maksymalnej częstotliwości pracy modułu sprzętowego. Pozostałe operacje, tj. XOR, bardzo dobrze implementują się w układzie FPGA.
6.1. Implementacja S0 i S1
Najprostsza implementacja bloków S-Box S0 i S1 polega na wykorzystaniu operacji LUT (ang. Look-Up Table). Wartości podstawienia zapisane są w pamięci ROM opartej na zasobach Distributed RAM lub Block RAM układu FPGA. Takie rozwiązanie wymaga stosunkowo dużej ilości pamięci 16 × 16 × 8 bitów = 2048 bitów. Pojedynczy S-Box wykorzystuje 128 elementów LUT układu FPGA i wprowadza opóźnienie ok. 1,75 ns (wyniki prezentowane w tym rozdziale dotyczą technologii FPGA Xilinx Virtex II Pro).
82
Moduły M0 i M1 zaimplementowano wykorzystując schemat zaproponowany w pracy [5]. Pozwala on zrealizować obie operacje za pomocą mnożenia przez {01, 02, 04, 08} i XOR. Implementacja M0 wykorzystuje 54 elementy LUT i wprowadza opóźnienie ok. 2,2 ns, a M1 – 57 LUT i opóźnienie ok. 2,5 ns.
6.3. Implementacja F-funkcji F0 i F1
F-funkcje F0 i F1 składają się z operacji XOR, S-Box S0 i S1 oraz mnożenia przez macierze M0 i M1. Podstawą każdej F-funkcji i jednocześnie najbardziej złożonym elementem są bloki podstawieniowe. Bazując na wstępnych wynikach (por. punkt 6.1) zebranych w tab. 3 zdecydowano się wykonać trzy implementacje F-funkcji: z S-Box jako look-up table (pobranie wartości podstawienia z tablicy), z S-Box zrealizowanymi na podstawie definicji (każdorazowe wyliczanie wartości podstawienia zgodnie z definicją) oraz konfigurację mieszaną (mixed), w której S0 implementowane jest na podstawie definicji, a S1 jako look-up table. Tab. 3. Porównanie różnych implementacji S-Box S0 i S1 Tab. 3. S0 and S1 S-Box different implementations comparison S0
S1
look-up table
definicja
look-up table
definicja
LUT
128
24
128
56
Opóźnienie
1,75 ns
2,3 ns
1,75 ns
5,7 ns
Implementacja S-Box S0 na podstawie definicji wykorzystuje o 104 elementy LUT mniej i wprowadza opóźnienie większe o 0,55 ns niż wersja look-up table. Można zatem stwierdzić, że opłaca się ją stosować. W przypadku S-Box S1 implementując na podstawie definicji zyskuje się 72 elementy LUT, ale kosztem aż 3,95 ns opóźnienia. W aplikacjach zorientowanych na szybkość taka implementacja S1 może spowodować spadek wydajności całego modułu. Opracowany tryb mixed jest zatem kompromisem pomiędzy dużą szybkością działania implementacji typu look-up table (S-Box S1) a małym zużyciem zasobów wersji S-Box’a na podstawie definicji (S0).
2) W implementacji zastosowano opisane w dokumencie [5] rozwiązanie polegające na transformacji ciała GF(28) w ciało GF((24)2). Wyniki zaprezentowane w pracy [23] (dla szyfru AES) pokazują, że takie postępowanie pozwala zmniejszyć zapotrzebowanie na zasoby logiczne.
Dodatkowo zaimplementowano obie F-funkcje z wykorzystaniem techniki tzw. T-Box. Polega ona na połączeniu układów S-Box z następującą po nich operacją liniową (M0 i M1), celem skrócenia ścieżki krytycznej. Oryginalnie cztery typy układów T-Box zostały zaproponowane w [5] dla implementacji programowych (dla procesorów ogólnego przeznaczenia).
6.4. Implementacja pojedynczej rundy szyfrowania
Wyniki implementacji pojedynczej rundy szyfrowania zaprezentowano w tab. 4. Analiza rezultatów pokazuje, że runda z wykorzystaniem S-Box jako look-up table wykorzystuje najwięcej zasobów logicznych przy przewidywanej częstotliwości pracy ok. 140 MHz (Post Place & Route Static Timing, układ Virtex II Pro 100). Wersja, w której S-Box są zaimplementowane na podstawie definicji wykorzystuje zdecydowanie mniej zasobów, przy częstotliwości pracy o ok. 20 MHz niższej. Wersje mixed i T-Box osiągają podobną złożoność zasobową oraz częstotliwość pracy ok. 140 MHz. Tab. 4. Rezultaty implementacji pojedynczej rundy szyfrowania Tab. 4. Single round implementation result look-up table
definicja
mixed
T-Box
Slices
949
462
648
669
LUT
1675
748
1099
1133
FF
282
256
267
269
Maks. częstotliwość [MHz]
142
119
144
142
Rys. 4. Moduł Key Expand Fig. 4. Key Expand Module
4 LX 200. Do syntezy oraz implementacji wykorzystano narzędzie ISE firmy Xilinx. Maksymalna częstotliwość pracy podana została na podstawie Post Place & Route Static Timing. Wyniki zaprezentowano w tab. 6 i 7. Tab. 5. Rezultaty implementacji generatora podkluczy Tab. 5. Key scheduler implementation results 128
192
256
Slices
823
1400
1462
LUT
1491
2411
2545
FF
299
569
569
Maks. częstotliwość [MHz]
118
103
74
Tab. 6. Moduł przetwarzania danych – Virtex II Pro 100 Tab. 6. Data processing block – Virtex II Pro 100
6.5. Implementacja generatora podkluczy
Schemat blokowy zaproponowanego rozwiązania przedstawiono na rys. 3. Iteracyjny moduł GFN, na podstawie klucza K oraz stałych CON, generuje klucz pośredni L. Składa się z pojedynczej rundy szyfrowania oraz kontrolera, który dostarcza odpowiednie stałe (w zależności od numeru iteracji). Implementacja wprowadza opóźnienie 10 lub 12 cykli zegara, w zależności od długości klucza. Moduł Key Expand generuje klucze WK i RK na podstawie klucza pośredniego L i stałych CON. Schematycznie jego budowę przedstawiono na rys. 4, a użycie zasobów FPGA (dla układu Virtex II Pro 100) dla różnych długości klucza zestawiono w tab. 5.
6.6. Implementacja 18 rund szyfrowania
W dalszych badaniach skupiono się na module szyfrującym zbudowanym z 18 rund (w wersji dla klucza 128-bitowego). Dokonano porównania wyników implementacji czterech zaproponowanych wersji (look-up table, definicja, mixed, T-Box) dla u kładów FPGAVitrex II Pro 100 oraz Virtex
Rys. 3. Moduł generacji podkluczy Fig. 3. Key scheduler block
look-up table
definicja
mixed
T-Box
Slices
11924
5822
8334
8527
LUT
23654
11271
16568
16761
FF
2345
2319
2342
2308
Maks. częstotliwość [MHz]
80
84
115
124
Tab. 7. Moduł przetwarzania danych – Virtex 4 LX 200 Tab. 7. Data processing block – Virtex 4 LX 200 look-up table
definicja
mixed
T-Box
Slices
14069
6018
9566
9896
LUT
23659
11502
16304
16713
FF
4779
2396
3755
3836
Maks. częstotliwość. [MHz]
146
152
167
167
W tab. 8 przedstawiono porównanie wyników implementacji FPGA z implementacją ASIC opisaną w pracy [27]. Zaproponowana potokowa wersja algorytmu jest ok. 3,8-krotnie wydajniejsza przy 4,5-krotnie niższej częstotliwości pracy. Pomiary Automatyka Robotyka nr 5/2013
83
Nauka
7. Akcelerator kryptograficzny Zrealizowany moduł szyfrujący algorytmu CLEFIA zdecydowano się przetestować na dwóch kartach z układami FPGA: ADM-XP (Virtex II Pro 100) oraz RASC RC 100 (Virtex 4 LX 200). Tab. 8. Porównanie częstotliwości pracy i przepustowości Tab. 8. Frequency and throughput comparison
Maks. częstotliwość [MHz] Przepustowość [MB/s]
V2P (0,13 µm)
V4 (90 nm)
ASIC (90 nm)
124
167
746,27
1892,09
2548,22
663,35
7.2. Testowanie na karcie ADM-XP
Karta ADM-XP firmy Alpha-Data współpracuje z komputerem PC (hostem) poprzez magistralę PCI-X 64b/66 MHz. Podczas prowadzonych wcześniej prac, w oparciu o tę konfigurację stworzono działający akcelerator kryptograficzny dla algorytmu DES. Udało się wówczas osiągnąć maksymalny transfer danych na poziomie ok. 115 MB/s przy częstotliwości pracy ok. 80 MHz [16]. Stworzenie podobnego systemu w przypadku szyfru CLEFIA okazało się bardzo nieefektywne z powodu 128-bitowej magistrali danych (dla DES miała ona 64 bity). Z uwagi na konieczność buforowania danych (sklejania dwóch słów 64-bitowych w jedno słowo 128-bitowe) efektywny transfer i częstotliwość pracy zmalałaby dwukrotnie. Dla celów testowych w pamięci ROM umieszczono 32 wektory testowe, które poddano szyfrowaniu, a rezultat operacji został odczytany przez hosta. Karta ADM -XP umożliwia płynne ustalanie częstotliwości pracy zegara w zakresie od 6 MHz – 160 MHz. Maksymalne częstotliwości, przy których logika szyfrująca pracowała poprawnie wyniosły 110 MHz dla trybu definition i ok. 140 MHz dla pozostałych.
7.3. Testowanie na karcie RC 100
Karta RC 100 firmy SGI współpracuje z superkomputerem Altix 4700 umożliwiając tworzenie aplikacji programowo-sprzętowych, w których cześć obliczeń przeprowadzana jest w zasobach rekonfigurowalnych. Logika na karcie RC 100 może pracować z programowalnymi częstotliwościami zegara 50 MHz, 66 MHz, 100 MHz i 200 MHz. Analiza danych zaprezentowanych w tab. 7 pokazuje, że wszystkie wersje algorytmu powinny dobrze działać przy częstotliwości 100 MHz. Tezę tę udało się potwierdzić eksperymentalnie, uruchamiając algorytm na karcie RC 100 i przeprowadzając testy na losowym zbiorze danych. Podobne testy przeprowadzone dla 200 MHz pokazały, że żadna z wersji nie działa poprawnie, co również jest zgodne z wynikami otrzymanymi w symulacji. Maksymalny uzyskany transfer danych (1,2 GB/s) jest niższy od maksymalnej przepustowości modułu szyfrującego CLEFIA, pracującego przy częstotliwości 100 MHz (1,5 GB/s). Zatem, w przypadku omawianej aplikacji, czę-
84
stotliwość 100 MHz wydaje się wystarczająca. W warunkach występowania górnego limitu transferu (1,2 GB/s), kiedy nie jest wymagane zastosowanie rozwiązania pracującego z najwyższą możliwą częstotliwością, wskazane jest użycie opracowanego modułu szyfrowania w wersji „definicja”, ponieważ wymaga ono najmniejszych zasobów logicznych. Zaprezentowany akcelerator kryptograficzny wykonuje szyfrowanie ponad 6 razy szybciej niż opisana w dokumencie [5] aplikacja programowa działająca na procesorze ogólnego przeznaczenia (190 MB/s na Athlon 4000+). Świadczy to o realnej przewadze rozwiązania rekonfigurowalnego nad programowym. Ponieważ środowisko HPC karty RC 100 umożliwia transfer danych z kilkakrotnie większą prędkością niż popularne standardy (PCI, PCI-X, podstawowe wersje PCI-E) bardzo dobrze nadaje się do testowania wysokowydajnych algorytmów w układach FPGA.
8. Podsumowanie W pierwszej części artykułu omówiono budowę współczesnych układów FPGA firm Xilinx i Altera, metody ich programowania i potencjalne zastosowania. Zasadnicza część artykułu dotyczy wykorzystania układów FPGA jako akceleratorów kryptograficznych. Zagadnienie to przedstawiono na przykładzie algorytmu CLEFIA. Dokonano analizy sposobu budowy pojedynczej rundy szyfrowania, w szczególności modułów S-Box. Zaproponowano nową wersję budowy F-funkcji – „mixed” łączącą zalety implementacji podstawienia S-Box zrealizowanego na podstawie definicji i przy pomocy operacji look-up table. Porównanie szybkości działania zrealizowanego rozwiązania i opisanej w literaturze implementacji w układach ASIC pokazuje, że udało się osiągnąć znacznie większą wydajność (throughput) szyfrowania przy niższej częstotliwości pracy. Moduł szyfrujący algorytmu CLEFIA uruchomiono na dwóch kartach z układami FPGA. Przeprowadzone eksperymenty pokazują, że w oparciu o kartę RC 100 współpracującą z superkomputerem SGI Altix 4700 możliwe jest tworzenie bardzo efektywnych aplikacji rekonfigurowalnych (akceleratorów sprzętowych), które ze względu na bardzo dobre parametry transferu danych umożliwiają w pełni wykorzystać potencjał obliczeniowy układów FPGA.
Podziękowania Praca finansowana ze środków AGH (umowa AGH nr 11.11.120.612). Autor dziękuje pracownikom ACK CYFRONET AGH za udostępnienie platformy sprzętowej do badań.
Bibliografia 1. Altera, [www.altera.com] (dostęp 26.02.2012 r.). 2. Beuchat J.-L., Modular multiplication for FPGA implementation of the IDEA block cipher, IEEE International
Conf. on Application-Specific Systems, Architectures and Processors. Proceedings of: 412–422, 24–26 June 2003. 3. Boukerche A., Correa J.M., Melo A., Jacobi R.P., A Hardware Accelerator for the Fast Retrieval of DIALIGN Biological Sequence Alignments in Linear Space, IEEE Transactions on Computers, vol. 59, no. 6, 808–821, June 2010. 4. CatapultC, [www.calypto.com] (dostęp 26.02.2012 r.). 5. Clefia Evaluations, Sony Corporation, The 128-bit Block Cipher CLEFIA Security and Performance Evaluations, 2007. 6. Clefia Specification, Sony Corporation, The 128-bit Block Cipher CLEFIA Algorithm Specification, 2007. 7. Copacobana, [www.copacobana.org] (dostęp 26.02.2012 r.) 8. Fournaris A.P., Koufopavlou O., Efficient CRT RSA with SCA Countermeasures, 14th Euromicro Conference on Digital System Design (DSD), 593–599, 2011. 9. Gielata A., Russek P., Wiatr K., Implementacja standardu szyfrowania AES w układzie FPGA dla potrzeb sprzętowej akceleracji obliczeń, „Pomiary Automatyka, Kontrola”, Stowarzyszenie Inżynierów i Techników Mechaników Polskich, vol. 53, nr 5, 48–50, 2007. 10. Gorgoń M., Architektury rekonfigurowalne do przetwarzania i analizy obrazu oraz dekodowania cyfrowego sygnału wideo, Uczelniane Wydawnictwa Naukowo-Dydaktyczne AGH, Kraków, 2007. 11. Jamro E., Wiatr K., Wielgosz, M., FPGA Implementation of 64-Bit Exponential Function for HPC, International Conference on Field Programmable Logic and Applications, FPL 2007, 718–721, 27–29 Aug. 2007. 12. Jin S., Kim D., Nguyen T.T., Kim D., Kim M., Jeon J.W., Design and Implementation of a Pipelined Datapath for High-Speed Face Detection Using FPGA, IEEE Transactions on Industrial Informatics, vol. 8, no. 1, 158–167, Feb. 2012. 13. Karabchevsky S., Kahana D., Ben-Harush O., Guterman H., FPGA-Based Adaptive Speckle Suppression Filter for Underwater Imaging Sonar, IEEE Journal of Oceanic Engineering, vol. 36, no. 4, 646–657, Oct. 2011. 14. Kitsos P., Sklavos N., Skodras A. N., An FPGA Implementation of the ZUC Stream Cipher, 14th Euromicro Conf. on Digital System Design (DSD), 814–817, 2011. 15. Kołek K., FPGA-based PLC-like controller, 12th IEEE international conference on Methods and Models in Automation and Robotics, 2006. 16. Kryjak T., Gorgoń M., Akcelerator sprzętowy do szyfrowania strumienia danych, Automatyka: półrocznik Akademii Górniczo-Hutniczej im. Stanisława Staszica w Krakowie, t. 12, z. 3, 695–707, 2008. 17. Kryjak T., Komorkiewicz M., Gorgoń M., Real-time moving object detection for video surveillance system in FPGA, The 2011 Conference on Design & Architecturesfor Signal and Image Processing (DASIP), 209–216, 2011. 18. LabVIEW, [www.ni.com/fpga] (dostęp 26.02.2012 r.). 19. Maxeler, [www.maxeler.com/content/frontpage] (dostęp 26.02.2012 r.).
20. Mitrion C., [www.mitrionics.com] (dostęp 26.02.2012 r.). 21. Ogiela M.R., Systemy utajniania informacji, Uczelniane Wyd. Naukowo-Dydaktyczne AGH, Kraków, 2003. 22. Petrovic M., Smiljanic A., Blagojevic M., Design of thwitching Controller for the High-Capacity NonBlocking Internet Router, IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 17, no. 8, 1157–1161, Aug. 2009. 23. Rudra A., Dubey P. K., Julta C.S., Kumar V., Rao J. R., Rohatgi P., Efficient Implementation of Rijandel Encryption with Composite Field Arithmetic, CHES 2001, LNCS 2162, 171–184, Springer-Verlag, 2001. 24. Schneier B., Kryptografia dla praktyków, WNT, 1995 25. SONY, [www.sony.net/Products/cryptography/clefia/ index.html], (dostęp 26.02.2012 r.). 26. Standaert F.-X., Rouvroy G., Quisquater, J.-J., FPGA Implementations of the DES and Triple-DES Masked Against Power Analysis Attacks, International Conference on Field Programmable Logic and Applications, 2006. FPL ‘06, 1–4, 28–30 Aug. 2006. 27. Sugawara T., Homma N., Aoki T., Satoh A., High-performance ASIC Implementations of the 128-bit Block Cipher CLEFIA, IEEE International Symposium on Circuits and Systems, 2008. 28. Wielgosz M., Jamro E., Wiatr K., Feasibility of achieving high calculation speeds on the RASC platform, ICSES 2008 International Conference On Signals and Electronic Systems, Krakow, September 14–17, 2008. 29. Xilinx, [www.xilinx.com] (dostęp 26.02.2012 r.). 30. Yunqiang Y., Fathy A.E., Development and Implementation of a Real-Time See-Through-Wall Radar System Based on FPGA, IEEE Transactions on Geoscience and Remote Sensing, vol. 47, no. 5, 1270–1280, May 2009.
Reconfigurable cryptographic accelerator Abstract: This paper discusses the use of FPGA devices as cryptographic accelerators, which are able to perform the encryption or decryption operation faster and using less power than general-purpose processors while offering great flexibility and the ability to further develop and modify the design. In the first part, the structure and resources available in modern FPGAs are presented and in the second the implementation of the cryptographic algorithm CLEFIA is discussed. Keywords: FPGA devices , cryptography, CLEFIA cipher
dr inż. Tomasz Kryjak Jest asystentem w Laboratorium Biocybernetyki Katedry Automatyki i Inżynierii Biomedycznej AGH. Interesuje się przetwarzaniem i analizą obrazów oraz akceleracją algorytmów wizyjnych i kryptograficznych z wykorzystaniem układów FPGA. e-mail: kryjak@agh.edu.pl
Pomiary Automatyka Robotyka nr 5/2013
85
Nauka
Układ elektroniczny cyfrowej syntezy rezystancji do dokładnej symulacji rezystancyjnych czujników temperatury Jacek Korytkowski Przemysłowy Instytut Automatyki i Pomiarów PIAP
Streszczenie: W pracy opisano różne zasady działania współczesnych elektronicznych układów symulacji rezystancji oraz omówiono ich wady i zalety. Szczegółowo omówiono opracowany przez autora układ cyfrowej syntezy rezystancji złożony ze wzmacniaczy monolitycznych oraz zawierający cyfrowo sterowany monolityczny przetwornik cyfrowo-analogowy. Podano opis matematyczny charakterystyki rezystancji symulowanej w funkcji sterującego sygnału cyfrowego. Przedstawiono wyniki badań dokładności modelowego układu symulatora rezystancji czujników Pt 100 w przedziale zmian rezystancji od 0 Ω do 399,9 Ω oraz czujników Pt 500 w przedziale zmian rezystancji od 0 Ω do 1999,5 Ω. Opracowany układ elektroniczny umożliwia symulowanie charakterystyki rezystancji z dużą dokładnością, z błędami poniżej 0,01 % (100 ppm). Słowa kluczowe: wzmacniacz monolityczny, monolityczny przetwornik cyfrowo-analogowy, rezystancyjny czujnik temperatury, symulacja rezystancji
1. Wprowadzenie Dokładne symulatory rezystancji są niezbędne we współczesnych komputerowych i mikroprocesorowych technikach kontroli właściwości metrologicznych sprzętu automatyki przemysłowej i sprzętu pomiarów przemysłowych. Symulatory te stanowią wyposażenie komputerowych stanowisk pomiarowych oraz mikroprocesorowych testerów przenośnych przeznaczonych zarówno dla producentów sprzętu, jak i dla użytkowników sprzętu w laboratoriach lub na obiekcie. Rozwiązania układów tych symulatorów rezystancji były i są nadal opisywane w polskiej literaturze technicznej [1–7]. Ważną w praktyce przemysłowej grupę układów pomiarowych i układów automatyki stanowią układy z wejściowymi rezystancyjnymi czujnikami temperatury [8]. Głównie stosuje się platynowe rezystancyjne czujniki temperatury Pt 100, Pt 500, Pt 1000, gdyż charakteryzują się one dobrą stałością charakterystyki w czasie. Stosowane są też rezystancyjne czujniki niklowe Ni oraz miedziowe Cu o gorszych właściwościach metrologicznych. Dlatego we współczesnych stanowiskach pomiarowych i testerach do kontroli właściwości metrologicznych urządzeń pomiaro-
86
wych temperatury i ciepła muszą być stosowane dokładne symulatory rezystancji sterowane sygnałem cyfrowym. Wymienia się grupy różnych urządzeń pomiarowych przeznaczonych do współpracy z rezystancyjnymi czujnikami temperatury. Są to: cyfrowe lub analogowe mierniki temperatury, przetworniki pomiarowe temperatury o sygnałach wyjściowych analogowych lub cyfrowych oraz mikroprocesorowe lub analogowe regulatory temperatury. Wiedza o układach cyfrowo sterowanych symulatorów rezystancji jest niezbędna przy konstruowaniu komputerowych stanowisk pomiarowych oraz mikroprocesorowych zestawów do testowania różnorodnych urządzeń pomiarowych i urządzeń automatyki. Nazwa „syntezator” pojawiła się w ubiegłym wieku i początkowo dotyczyła elektronicznych syntezatorów muzycznych, później komputerowych syntezatorów mowy, a obecnie jest stosowana do elektronicznych bezpośrednich cyfrowych syntezatorów częstotliwości. Te ostanie – zwane DDS (ang. Direct Digital Synthesis) – umożliwiają generowanie sygnałów wielu częstotliwości z jednej częstotliwości odniesienia [9, 10]. Opisywany w artykule układ cyfrowej syntezy rezystancji, wykorzystujący monolityczny przetwornik cyfrowo-analogowy oraz monolityczne wzmacniacze, przez analogię do wymienionej wyżej terminologii, nazwano cyfrowym syntezatorem rezystancji. Syntezator rezystancji umożliwia wytwarzanie cyfrowo sterowanej rezystancji bazując na wartości odniesienia rezystancji rezystora dokładnego i na wartości cyfrowo sterowanego wzmocnienia lub tłumienia sygnału napięciowego lub prądowego w układzie elektronicznym z przetwornikiem cyfrowo-analogowym. Celem artykułu jest przedstawienie opracowanego układu syntezatora rezystancji o niektórych parametrach lepszych od układów dotychczas opisanych w literaturze.
2. Zasada działania symulatorów rezystancji Schemat blokowy symulatora rezystancji podano na rys. 1 [6]. Wejściowy sygnał cyfrowy Xwe o odpowiednim kodzie steruje stanami załączeń układu analogowych przełączników sieci zawierającej dokładne rezystory. Przełączana sieć może
Xwe
Wejście sygnału cyfrowego
Układ przełączników analogowych lub interfejs przetwornika CA
Sieć rezystorów, sieć o sterowanym sygnale rezystancji lub konduktancji, lub układ z przetwornikiem CA oraz układy wzmacniacza do pomiaru prądu lub napięcia symulatora oraz układy wzmacniacza wymuszające sterowane cyfrowo napięcie lub odpowiednio sterowany cyfrowo prąd pomiędzy zaciskami wyjściowymi symulatora
Rys. 1. Schemat blokowy symulatora rezystancji Fig. 1. The resistance symulator block diagram
być zrealizowana w technologii monolitycznej, na przykład przetwornika cyfrowo-analogowego CA. W układzie przedstawionym na rys. 1 realizowane są następujące funkcje: – zadaje się bezpośrednio wartość rezystancji lub konduktancji między dwoma zaciskami wyjściowymi symulatora; – zadaje się wartość rezystancji lub konduktancji odpowiednio wzmocnioną lub tłumioną przez aktywny układ wzmacniacza i symuluje się ją między dwoma zaciskami wyjściowymi symulatora; – odpowiednio steruje się cyfrowo współczynnikiem wzmocnienia napięcia proporcjonalnego do mierzonego prądu na wyjściu symulatora i wymusza się wartość napięcia między dwoma jego zaciskami wyjściowymi, lub steruje się cyfrowo współczynnikiem wzmocnienia prądu proporcjonalnego do mierzonego napięcia na wyjściu symulatora i wymusza wartość prądu między dwoma jego zaciskami wyjściowymi. W obu przypadkach symuluje się wartość rezystancji między dwoma zaciskami wyjściowymi symulatora. Ze względu na sposób realizacji wyróżnia się trzy grupy symulatorów rezystancji: – symulatory dwójnikowe bezpośrednie rezystancji; – symulatory zawierające konwerter lub inwerter impedancji obciążony symulatorem dwójnikowym bezpośrednim rezystancji lub konduktancji; – symulatory, zwane tu syntezatorami rezystancji, zawierające przetwornik cyfrowo-analogowy CA oraz odpowiednie układy wzmacniające służące do pomiaru prądu symulatora lub pomiaru napięcia symulatora oraz służące do wymuszania odpowiednio sterowanego cyfrowo napięcia lub sterowanego cyfrowo prądu między zaciskami wyjściowymi symulatora. W pierwszej grupie dwójnikowych symulatorów bezpośrednich wykorzystuje się łączenie szeregowe rezystorów bitowych (o wartościach rezystancji proporcjonalnych do wagi bitów sterujących) odpowiednio włączanych lub zwieranych przełącznikami analogowymi sterowanymi sygnałem cyfrowym. Rezystancja symulatora może zostać opisana wzorem: Rwy = 2 R (a1 2-1 + a2 2-2 + a32-3 + a4 2-4 … + an 2-n), (1) gdzie: 2 R – pełny zakres rezystancji wyjściowej symulatora o liczbie bitów n, a1, a2, …, an – dwuwartościowe stany
bitów cyfrowego sygnału sterującego. Wartość R to wartość rezystora najbardziej znacząUkład przetwornika cego bitu, kolejne bity mają rezystancji lub wartości rezystancji dwukrotkonduktancji lub tylko nie mniejsze (R 2-1, R 2-2 itd.). dwa zaciski R wy Do tej grupy symulatorów wyjściowe Wyjście symulatora dwójnikowych bezpośrednich symulowanej rezystancji można zaliczyć również układy wykorzystujące łączenie równoległe rezystorów stanowiących konduktancje bitowe (o wartościach konduktancji proporcjonalnych do wagi bitów sterujących) odpowiednio włączane lub przerywane przełącznikami analogowymi sterowanymi sygnałem cyfrowym w celu otrzymania cyfrowo sterowanej wartości konduktancji. Symulatory dwójnikowe bezpośrednie są z reguły wykorzystywane w drugiej grupie symulatorów z konwerterami impedancji jako rezystancje obciążenia tych konwerterów. Konduktancja symulatora może zostać opisana wzorem: Gwy = 2 G (a1 2-1 + a2 2-2 + a3 2-3 + a4 2-4 … + an 2-n), (2) gdzie: 2 G – pełny zakres konduktancji wyjściowej symulatora o liczbie bitów n; a1, a2, …, an – funkcje dwuwartościowe określające stany bitów cyfrowego sygnału sterującego. Wartość G to wartość konduktancji rezystora najbardziej znaczącego bitu, kolejne bity mają wartości konduktancji dwukrotnie mniejsze (G 2-1, G 2-2 itd.). Symulatory dwójnikowe bezpośrednie mają różne wady. Wadą są niepomijalne wartości rezystancji przełączników analogowych (rząd setek mΩ) w porównaniu do rezystancji włączanych lub zwieranych dokładnych rezystorów stanowiących najbardziej znaczące bity, co jest przyczyną znaczących błędów przetwarzania. Istotną wadą tych symulatorów jest konieczność stosowania aż kilku kosztownych rezystorów dokładnych o niejednakowych, różnych wartościach wynikających z wag najbardziej znaczących bitów. Należy zauważyć, że stosowanie symulatorów bezpośrednich rezystancji do symulacji czujników Pt 100 jest bardzo nieefektywne z powodu dużych wartości rezystancji przełączników analogowych w stanie zwierania rezystorów wagowych. Przykładowo, można podać, że symulacja rezystancji nieco mniejszej od 400 Ω przy zwartych pięciu przełącznikach analogowych o rezystancjach po ok. 400 mΩ wywołuje błąd symulacji ok. 0,5 % (5000 ppm). Stosowanie symulatorów bezpośrednich konduktancji do symulacji czujników Pt 100 jest korzystniejsze, gdyż zapewnia błąd symulacji rzędu 0,05 % (500 ppm) [5]. W drugiej grupie symulatorów z konwerterami lub inwerterami impedancji stosuje się połączenie kaskadowe dwóch konwerterów ujemnej impedancji, a symulator dwójnikowy bezpośredni zadaje wartość rezystancji obciążenia ostatniego konwertera proporcjonalną do cyfrowego sygnału sterującego. Rezystancja ta jest odpowiednio wzmacniana lub tłumiona i przetwarzana na dodatnią impedancję wejściową pierwszego konwertera, którego zaciski wejściowe są zaciskami symulatora. W tej grupie symulatorów stosować Pomiary Automatyka Robotyka nr 5/2013
87
Nauka
można znane z elektrotechniki teoretycznej [11] proste, dwa jednowzmacniaczowe konwertery o ujemnej impedancji oznaczane symbolem NIC (ang. Negative Impedance Converter). W drugiej grupie symulatorów stosować też można żyrator stanowiący inwerter o dodatniej impedancji (ang. Positive Impedance Inverter). W realizacji elektronicznej [11] jest to układ dwuwzmacniaczowy z siedmioma dokładnymi rezystorami w obwodach sprzężeń i obwodach obciążenia wzmacniaczy. Żyrator ma tę właściwość, że jego rezystancja wejściowa jest dodatnia i proporcjonalna do konduktancji obciążenia wyjścia żyratora, tak więc zaciski symulatora stanowią wejście żyratora. W symulatorze tym należy cyfrowo sterować wartością konduktancji zadawanej na wyjściu żyratora. Wady drugiej grupy symulatorów są takie same jak grupy pierwszej, jednak przy realizacji symulatora z dwoma konwerterami o ujemnej impedancji niezbędna liczba dokładnych rezystorów wzrasta o cztery, a przy realizacji symulatora z układem żyratora liczba dokładnych rezystorów wzrasta o siedem. Przykładowe ceny rezystorów dokładnych podane są w katalogach [12]. Obecnie cena jednego dokładnego rezystora (0,01 %) jest zbliżona swoim rzędem do ceny monolitycznego przetwornika CA o wysokiej rozdzielczości, np. 16 bitów, co świadczy o dużej przewadze rozwiązań cyfrowych syntezatorów należących do grupy trzeciej, gdzie liczba rezystorów dokładnych nie jest duża. Zaletą drugiej grupy symulatorów jest możliwość zminimalizowania wpływu rezystancji przełączników analogowych przez odpowiednie zwiększenie wartości rezystancji rezystora najważniejszego bitu. Przykładowo, po zastosowaniu w symulatorze bezpośrednim rezystancji rezystora R = 20 kΩ jako rezystora najważniejszego bitu, oraz po dobraniu 100-krotnego tłumienia w pierwszym konwerterze ujemnej impedancji, uzyskano dla symulacji czujnika Pt 100 błąd charakterystyki nieprzekraczający 0,01 % (100 ppm) [6]. W trzeciej grupie symulatorów są dwie odmiany cyfrowych syntezatorów rezystancji. Charakterystyczny typ cyfrowego syntezatora rezystancji [3, 4] (nazwany przez autora literatury symulatorem) zawiera układ wzmacniacza mierzącego prąd na wyjściu syntezatora oraz zawiera przetwornik CA o sterowanym cyfrowo wzmocnieniu pomierzonego prądu. Przetwornik CA formuje i wymusza napięcie na dwóch zaciskach wyjściowych syntezatora proporcjonalne do pomierzonego prądu i wartości cyfrowego sygnału sterującego. A to powoduje, że syntezowana rezystancja jest proporcjonalna do sygnału cyfrowego i wartości charakterystycznej rezystancji rezystora dokładnego w torze pomiarowym prądu. Rezystancja takiego syntezatora może być opisana wzorem: Rwy = RO (a1 2-1+ a2 2-2 + a32-3 + a4 2-4 + … + an 2-n), (3) gdzie: RO – pełny zakres rezystancji wyjściowej symulatora o liczbie bitów n, a1, a2, …, an – dwuwartościowe stany bitów cyfrowego sygnału sterującego.
88
Wartość RO jest proporcjonalna do charakterystycznej rezystancji rezystora dokładnego w torze pomiarowym prądu. Współczynnik proporcjonalności może być korygowany wzmocnieniem wzmacniacza wymuszającego napięcie na zaciskach wyjściowych. Wadą pierwszej grupy syntezatorów jest brak wspólnego punktu sygnałowego układu elektronicznego (poziomu odniesienia) syntezatora z żadnym z zacisków wyjścia syntezatora. Układ taki jest bardzo podatny na działanie zakłócających źródeł, na przykład prądów pojemnościowych o częstotliwości 50 Hz sieci zasilającej. A takie źródła zakłócające często występują między elektronicznym układem urządzenia, dla którego jest symulowana rezystancja, a układem elektronicznym syntezatora. W trzeciej grupie symulatorów jest druga odmiana syntezatora rezystancji, która została opracowana i opisana przez autora w niniejszym artykule. W ostatnim przypadku cyfrowy syntezator rezystancji zawiera układ wzmacniacza mierzącego napięcie na wyjściu syntezatora, sterowany cyfrowo przetwornik CA oraz układ wzmacniacza wymuszający prąd między zaciskami wyjściowymi syntezatora. Prąd ten jest proporcjonalny do pomierzonego napięcia, ale jest odwrotnie proporcjonalny do cyfrowego sygnału sterującego. Powoduje to, że syntezowana rezystancja jest proporcjonalna do sygnału cyfrowego i proporcjonalna do wartości charakterystycznej rezystancji rezystora dokładnego zawartego w układzie wymuszającym prąd na wyjściu syntezatora. Zaletą tej odmiany syntezatora jest wspólny punkt sygnałowy układu elektronicznego syntezatora z jednym z zacisków wyjścia syntezatora. Układ ten jest odporny na działania zakłócających źródeł, a w szczególności na zakłócające prądy pojemnościowe o częstotliwości 50 Hz sieci zasilającej.
3. Syntezator rezystancji z monolitycznym przetwornikiem CA w układzie z sygnałem prądowym wymuszanym na wyjściu syntezatora Uproszczony schemat syntezatora rezystancji o sygnale prądowym wymuszanym na zaciskach wyjściowych został podany na rys. 2. Elektroniczny układ syntezatora o tej zasadzie działania został opracowany w Przemysłowym Instytucie Automatyki i Pomiarów PIAP w Warszawie i został oznaczony symbolem ZR213A. Jest to układ aktywny, który wymusza wartość prądu IS odbieranego z zacisków wejściowych „1” i „2” syntezatora. Prąd ten ma wartość proporcjonalną do napięcia na zaciskach wejściowych US oraz odwrotnie proporcjonalną do cyfrowego sygnału sterującego XC. Najłatwiej przedstawić fizyczną realizację takiego syntezatora rezystancji jako kaskadowe połączenie: – wzmacniacza napięciowego W1 (o nieskończenie dużym wzmocnieniu napięciowym, o pomijalnym napięciu niezrównoważenia na wejściu, o pomijalnej konduktancji wejściowej wzmacniacza) i przetwornika cyfrowo-analo-
gowego CA, które formują sygnał napięciowy UREF o sterowanym współczynniku wzmocnienia napięcia wejściowego US dzielonym przez wartość sygnału cyfrowego sterującego XC według zależności:
U REF =
US , XC
napięcie +UREFXC, niezbędne do zrealizowania funkcji sterowanej cyfrowo syntezy rezystancji. Jak wynika ze schematu (rys. 2), ważną zaletą układu jest wspólny punkt wyjścia syntezatora 2 i wspólnego punktu sygnałowego nazywanego AGND całego układu elektronicznego syntezatora. Schemat układu syntezatora rezystancji ZR213A dla wykonania o zakresie 400 Ω (ZR213A400Ω) oraz dla wykonania o zakresie 2000 Ω (ZR213A2000Ω) został podany na rys. 3. Syntezator ten ma wyjście o połączeniu czteroprzewodowym zwanym też połączeniem Kelvina [13] przystosowanym do bardzo dokładnej symulacji i dokładnych pomiarów rezystancji. Zaciski prądowe oznaczono Hinput, Linput, a napięciowe S„+”, S„−” zgodnie z oznaczeniem tych zacisków w zastosowanym do pomiarów wysokiej dokładności multimetrze typ 2002 firmy Keithley (względna spodziewana niedokładność jednoroczna ok. 10 ppm na zakresie 2 kΩ). Dla lepszej przejrzystości na schemacie nie umieszczono kondensatorów odprzęgających o pojemności 680 nF dołączanych między wspólny punkt AGND do końcówek 7 poszczególnych wzmacniaczy dla dodatnich napięć zasilających +Uz oraz między wspólny punkt AGND do końcówek 4 poszczególnych wzmacniaczy dla ujemnych napięć zasilających –Uz. Przetwornik CA typu AD7545A ma doprowadzone tylko dodatnie napięcie zasilające +Uz na końcówce 18. Dla tego przetwornika zastosowano dwa kondensatory odprzęgające o pojemności 680 nF pomiędzy końcówką 18 a AGND oraz pomiędzy końcówką 18 a DGND, stanowiącym wspólny punkt zasilania dla sygnałów cyfrowych. Dla sygnałów cyfrowych przetwornika AD7545A zastosowano osobny wspólny punkt, nazwany DGND, zasilany z dodatkowego napięcia ujemnego o wartości –0,5 V, a uzyskanego z odpowiednio zasilanej ujemnym napięciem diody krzemowej D4. Zapewniło
(4)
gdzie: XC = [a1 2-1 + a2 2-2 + a3 2-3 + … + an 2-n]; – oraz przetwornika sygnału napięciowego UREF na sygnał prądowy IS z inwersją, co oznacza, że dla dodatniego napięcia na wejściu przetwornika, sygnał prądowy jest odbierany przez zacisk wyjściowy 1 tego przetwornika. Transmitancja przetwornika napięcia na prąd ma wymiar konduktancji, a jego sygnał wyjściowy opisuje równanie: 2 IS = U REF . (5) RS Z równań (4) i (5) otrzymamy wzór na rezystancję wejścia opisujący charakterystykę syntezatora: Rwe =
US R R = S X C = S [a1 2-1 + a2 2-2 + a3 2-3 + ........ + an 2- n ] IS 2 2
(6) gdzie: RS to charakterystyczna rezystancja rezystora dokładnego zawartego w układzie przetwornika napięcia na sygnał prądowy. W układzie został zastosowany monolityczny przetwornik CA typ AD7545A z wbudowaną tak zwaną odwróconą drabinką R-2R [8]. Wymaga on zastosowania wzmacniacza W2 równoważącego prądy formowane cyfrowo według sygnału sterującego XC z prądem sprzężenia zwrotnego wzmacniacza W2, w celu wytworzenia sygnału napięciowego równego –UREFXC. Drugi wzmacniacz W3 pracujący jako dokładny inwerter napięcia formuje nieinwersyjne
IS 1 US
Przetwornik napięcie/prąd
IS + _
W1 CA
UREF
_
W2
R3 R3
-UREFXC
2
_
+ +
UREF=
US XC
W3 +UREFXC ≈ US
IS =
2U S
RS X C
AGND XC= a12-1+a22-2+a32-3+ ….+ an2-n
Rys. 2. Schemat uproszczony syntezatora rezystancji z cyfrowo sterowanym sygnałem prądowym wymuszanym na jego zaciskach wyjściowych 1 i 2 Fig. 2. The simple circuits diagram of resistance synthesizer with digital control current signal applied at output points 1 and 2 Pomiary Automatyka Robotyka nr 5/2013
89
Nauka
R1=R2+R3 P21= 10Ω
R2
C21=33pF _
P31= 10Ω
W2
1/2R1 C11=10 nF
Hinput
S„+” 1
1kΩ
1kΩ
-Uz
2,4kΩ
R3
W3
+ +UZ
18 19
IS
US
-Uz
C41=33pF
100Ω
20
1
D1
CA AD7545A 20kΩ
UREF
2 3
R11
P11= 20kΩ
+Uz
200Ω
W1
20kΩ
C12= 0,3µF
R4=5kΩ ±0,1%
+Uz
+Uz -Uz + _
US
+Uz
C31=33pF _
+ IS
R4=5kΩ ±0,1%
Wartoś ci rezystorów zakresowych Do wykonania ZR213A400Ω : R3=800 Ω 0,05 %, R2=5000 Ω 0,05 %, R1=5800 Ω 0,05%, P21 strojony w celu zapewnienia warunku R1=R2+R3 z niedokładnoś cią ±10 ppm, R11= 560 Ω 5 %. Do wykonania ZR213A2000Ω : R3=4000 Ω 0,05 %, R2=5000 Ω 0,05 %, R1=9000 Ω 0,05 %, P21 strojony w celu zapewnienia warunku R1=R2+R3 z niedokładnoś cią ±10 ppm, R11=750 Ω 5 %.
D3 DGND
D2 AGND
_
W4
+ +Uz -Uz
P51= 50Ω
R5=20kΩ ±0,1% C51=33pF _
R5=20kΩ ±0,1% -UREFXC
W5
+
+UREFXC
+Uz –Uz 10 kΩ
P12= 200Ω
+Uz=+15 0V
100kΩ D4
S„−” 2
DGND= –0,5V 2 kΩ -Uz=-15V
AGND Linput (0V)
XC=a12-1+a22-2+a32-3+…+an2-n
Rys. 3. Schemat syntezatora rezystancji ZR213A Fig. 3. The schematic of ZR213A resistance synthesizer
to brak zakłócającego działania sygnałów cyfrowych na obwód syntezatora rezystancji. Schemat podany na rys. 3 zawiera układ inwersyjnego przetwornika napięcie-prąd [7]. Układ tego przetwornika zrealizowano na dwóch tanich wzmacniaczach monolitycznych typu OPA277P (Burr-Brown) oznaczonych na schemacie symbolami W2 oraz W3. W układzie tym, przy spełnieniu warunku: R1 = R2 + R3, prąd wyjściowy IS jest niezależny od napięcia US na wyjściu syntezatora i przy założeniu podanego na schemacie zwrotu prądu, wynikającego z inwersji układu, wartość prądu jest opisana równaniem:
IS =
2 kU REF , R3
(7)
gdzie k » 1 jest współczynnikiem podziału dzielnika na wyjściu wzmacniacza W1 służącym do strojenia zakresu. Rezystancja wejściowa układu przetwornika napięcie– prąd jest tak bardzo duża, że układ tego przetwornika nie obciąża wyjścia dzielnika napięcia wzmacniacza W1. Zastosowany dzielnik napięcia z wieloobrotowym potencjometrem strojeniowym P12 pozwala na bardzo precy-
90
zyjne zestrojenie zakresu nominalnej rezystancji syntezatora. Wzmacniacz W1 jest wzmacniaczem nieinwersyjnym, również o bardzo dużej rezystancji wejściowej, a dzięki współpracy z przetwornikiem CA i ze wzmacniaczami W4 i W5 (typ OPA277P), jego współczynnik wzmocnienia napięciowego na wyjściu jest odwrotnie proporcjonalny do cyfrowego sygnału sterującego XC. W opisywanym układzie zastosowano zerowanie potencjometrem strojeniowym P11 napięcie niezrównoważenia wzmacniacza W1,, co spowodowało, że napięcie wejściowe wzmacniacza US jest praktycznie równe napięciu sprzężenia zwrotnego zgodnie ze wzorem:
U S = U REF X C .
(8)
Przekształcając odpowiednio równania (7) oraz (8) i uwzględniając, że sygnał sterowania cyfrowego jest 12-bitowy, otrzymamy następujący opis charakterystyki symulatora rezystancji:
(9)
Tab. 1. Zmierzone wartości błędów względnych nieliniowości charakterystyki syntezatora ZR213A400Ω odniesionych do zakresu 400 Ω Tab. 1. Measured values of relative errors nonlinearity characteristics of sustained synthesizer ZR213A400Ω, range to 400 Ω Rwe Ω Rwe we „−”
399,926
350,021
300,012
250,018
200,014
150,017
125,013
100,009
50,007
25,001
12,503
0,0005
+60 ppm +53 ppm +30 ppm +45 ppm +35 ppm +43 ppm +33 ppm +23 ppm +18 ppm +3 ppm +8 ppm +1 ppm
Rwe Ω
399,874
349,976
299,978
249,986
200,001
150,001
124,995
100,003
50,007
25,001
12,504
0,0022
dRwe we „+”
–70 ppm –60 ppm –55 ppm –35 ppm +3 ppm +3 ppm –13 ppm +8 ppm +1 ppm +3 ppm +10 ppm +6 ppm
Tab. 2. Zmierzone wartości błędów względnych nieliniowości charakterystyki syntezatora ZR213A2000Ω odniesionych do zakresu 2000 Ω Tab. 2. Measured values of relative errors nonlinearity characteristics of sustained synthesizer ZR213A2000Ω, range to 2000 Ω Rwe Ω
1999,518 1750,013 1499,988 1250,015 999,987
750,011
499,991
250,021
125,009
62,516
31,265
-0,003
dRwe we „−” +3 ppm +7 ppm –6 ppm +8 ppm –7 ppm +6 ppm –5 ppm +11 ppm +5 ppm +8 ppm +8 ppm –2 ppm Rwe Ω
1999,466 1749,966 1499,955 1249,986 999,975
dRwe we „+” –23 ppm –17 ppm –23 ppm
–7ppm
749,995
–13 ppm –3 ppm
Syntezator ma dwa zakresy rezystancji: dla R3 = 800 W (wykonanie ZR213A400Ω) zakres 0 W – 399,902 W oraz dla R3 = 4 000 W (wykonanie ZR213A2000Ω) zakres od 0 W do 1999,512 W. Jako rezystory zakresowe R1, R2, R3, R4 zastosowano rezystory dokładne RM67Z, RM70Y, RM43B o współczynniku temperaturowym rezystancji nieprzekraczającym 5 ppm/°C odpowiednio wyselekcjonowane lub korygowane rezystorami równoległymi dla zapewnienia dokładności 0,05 %. Wieloobrotowe potencjometry strojeniowe P12, P21, P31, P51 służyły do odpowiedniego zestrojenia rezystorów zakresowych oraz zakresu symulowanej rezystancji syntezatora. Pozostałe rezystory, nie decydujące bezpośrednio o dokładności, były rezystorami o tolerancji 5 %. Monolityczne wzmacniacze scalone OPA277P miały sprawdzone niewielkie wartości (±2 µV) napięcia niezrównoważenia. W celu zabezpieczenia przed przepięciami obwodów wyjściowych przetwornika CA, na jego końcówkach 1, 2 oraz 3 zastosowano, jako diody ograniczające napięcia D1, D2, D3, złącza kolektor-baza tranzystorów BC107 o dość wysokim napięciu ograniczenia ok. 680 mV, znacznie wyższym od dodatkowego ujemnego napięcia zasilania (–0,5 V) DGND.
499,987
250,018
125,006
62,513
31,265
0,012
–7 ppm +9 ppm +3 ppm +7 ppm +8 ppm +6 ppm
Dla zapewnienia stabilnej pracy układu wzmacniaczy objętych ujemnymi sprzężeniami zwrotnymi, zastosowano jako ujemne sprzężenie dynamiczne kondensatory o pojemnościach 33 pF lub 10 nF. Poziom szumów zminimalizowano na zaciskach symulatora równolegle do nich dołączono kondensator o pojemności ok. 300 nF typu KSF/63 V o pomijalnej upływności. Po uruchomieniu układów dokonano sprawdzenia charakterystyk stosując multimetr cyfrowy typ 2002 firmy Keithley. Wyniki badania charakterystyki układu syntezatora ZR213A400Ω przeznaczonego do symulacji czujników termorezystancyjnych Pt 100 o nominalnym zakresie zmian rezystancji od 0 Ω do 399,902 Ω podano w tab. 1. Są to dwie charakterystyki dla ujemnych oraz dla dodatnich napięć wejściowych między zaciskami 1 oraz 2. Dla ujemnych napięć wejściowych wyniki oznaczono we „−”, a dla dodatnich napięć wejściowych wyniki oznaczono we „+”. Wyniki badania charakterystyki układu syntezatora przeznaczonego do symulacji czujników termorezystancyjnych Pt 500 o nominalnym zakresie zmian rezystancji od 0 Ω do 1999,512 Ω podano w tab. 2. Są to dwie charakterystyki dla ujemnych („−”) oraz dla dodatnich („+”) napięć wejściowych między zaciskami 1 oraz 2.
Pomiary Automatyka Robotyka nr 5/2013
91
Nauka
4. Podsumowanie W opisanym układzie 12-bitowego syntezatora ZR213A400Ω uzyskano błędy względne charakterystyki nieprzekraczające 70 ppm (0,007 %), odniesione do zakresu nominalnego 400 Ω wartości rezystancji. Natomiast w układzie 12-bitowego syntezatora ZR213A2000Ω uzyskano błędy względne charakterystyki nieprzekraczające 30 ppm (0,003 %), odniesione do zakresu nominalnego 2000 Ω wartości rezystancji. Układ opisanego syntezatora umożliwia symulowanie temperatury czujników rezystancyjnych Pt 100 z błędem nieliniowości charakterystyki około 0,07 °C, a czujników rezystancyjnych Pt 500 z błędem nieliniowości charakterystyki około 0,03 oC. Zaletą tego syntezatora jest wspólny punkt sygnałowy AGND jego układu elektronicznego z wyjściem syntezatora oznaczonym S„–” (2), co zapewnia odporność na działania przez pojemności zakłócających źródeł prądowych o częstotliwości 50 Hz sieci zasilającej.
Bibliografia 1. Bartoszewski J., Sterowany symulator czujników termorezystancyjnych, Prace Naukowe Instytutu Maszyn, Napędów i Pomiarów Elektrycznych Politechniki Wrocławskiej, Wrocław 2003. 2. Korytkowski J., Układy przetworników cyfrowo-analogowych napięcia, prądu i rezystancji oraz metoda ich analizy, Przemysłowy Instytut Automatyki i Pomiarów, Warszawa 2004. 3. Szmytkiewicz J., Elektroniczny symulator rezystancji, II Konferencja Naukowa KNWS’05 „Informatyka – sztuka czy rzemiosło”, Złotniki Lubańskie 2005. 4. Szmytkiewicz J., Adjustacja kalibratorów rezystancji, „Pomiary, Automatyka, Kontrola”, nr 6 bis 2006, 103–105. 5. Bartoszewski J., Dusza D., Sterowany cyfrowo symulator czujników termorezystancyjnych, „Pomiary Automatyka Robotyka”, nr 2/2008, 14–18. 6. Korytkowski J., Cyfrowo sterowane symulatory rezystancji i konduktancji – przegląd, opisy działania, przykłady rozwiązań, „Pomiary Automatyka Robotyka”, nr 2/2008, 6–13. 7. Korytkowski J., Liniowe i nieliniowe układy ze wzmacniaczami monolitycznymi w urządzeniach pomiarowych, Oficyna Wydawnicza PIAP, Warszawa 2011. 8. Korytkowski J., Układy przetwarzania cyfrowo-analogowego oraz właściwości scalonych przetworników CA. Oficyna Wydawnicza PIAP, Warszawa 2012. 9. Przybysz R., Cyfrowa regulacja amplitudy sygnału wyjściowego z układu cyfrowej syntezy częstotliwości. „Elektronika – Konstrukcje, Technologie, Zastosowania”, nr 7/2011. 10. Kester W., Przetworniki A/C i C/A. Teoria i praktyka. (tłumaczenie: Nadachowski M., Kręciejewski M., oryginał: Analog-Digital Conversion, 2004 Analog
92
Devices Inc.). Wydanie I. Wydawnictwo BTC Korporacja, 2012. 11. Mikołajuk K., Podstawy analizy obwodów energo-elektronicznych. PWN. Warszawa 1998. 12. ELFA DISTRELEC: Metalizowane rezystory foliowe 0,01 %. www.elfaelektronika.pl/elfa3~pl_pl/elfa/init. do?toc=20011&name=Metalizowane+rezystory+foliowe+0%2C01%25. 13. Pease R. A., Projektowanie układów analogowych. Poradnik praktyczny, Wydawnictwo BTC, Legionowo 2005.
Digital controlled resistance synthesis electronic circuit for precise simulation of thermo-resistance sensors Abstract: Principles of simulators operation are described and simulator advantages or demerits are discussed. The paper describes the new electronic circuit for digital controlled resistance synthesis including monolithic amplifies and monolithic digital-analogue converter. On fig. 3 it is shown the electronic schematic of this digital controlled resistance synthesizer. It was formulated equation as the characteristic description of this resistance synthesizer. The experimental examination results of synthesizer model for sensors Pt 100 at the range from 0 Ω to 399,9 Ω and the results of synthesizer model for sensors Pt 500 at the range from 0 Ω to 1999,5 Ω are described. The elaborated electronic circuit of resistance synthesizer have very good qualities of resistance characteristic accuracy, it is better than 0,01 % (100 ppm). Keywords: monolithic amplifier, monolithic digital-analogue converter, thermo-resistance sensor, resistance simulation
dr inż. Jacek Korytkowski, prof. PIAP Ukończył Wydział Elektryczny Politechniki Warszawskiej w roku 1956, doktorat 1972, docent 1978, prof. nzw. 2010. Kierownik Pracowni w Instytucie Elektrotechniki 1962– 70. Kierownik Zespołu w Przemysłowym Instytucie Automatyki i Pomiarów w latach 1970–2007. W okresie 1973–1982 starszy wykładowca i docent w Instytucie Sterowania i Elektroniki Przemysłowej Wydziału Elektrycznego Politechniki Warszawskiej. Jest laureatem kilkunastu nagród za wdrożenia przemysłowe, w tym Zespołowej Nagrody Państwowej 2-stopnia w 1976 r. Ma w swoim dorobku jako autor, współautor lub tłumacz: 8 wydawnictw książkowych, jest autorem lub współautorem 59 publikacji oraz 14 patentów polskich. Jest specjalistą w dziedzinie elektroniki przemysłowej. e-mail: jkorytkowski@piap.pl
NAUKA
Robot mobilny o zmiennym sposobie lokomocji – system sterowania Tomasz Winiarski, Dawid Seredyński Instytut Automatyki i Informatyki Stosowanej, Politechnika Warszawska
Streszczenie: W artykule przedstawiono opis systemu sterowania robota mobilnego o dwóch współosiowych kołach, mogącego poruszać się w dwóch trybach lokomocji: dynamicznie stabilnym oraz statycznie stabilnym. Robot może zmieniać tryb ruchu przez automatyczny manewr wstawania do pionu. System sterowania stanowią kaskady regulatorów PID. Słowa kluczowe: robot mobilny, odwrócone wahadło, kaskada PID
W
spólną cechą większości zrobotyzowanych platform mobilnych jest napęd różnicowy, którego podstawowymi zaletami są prosta realizacja i zapewnienie wystarczającej manewrowości robota w dedykowanych zastosowaniach. Oparte na nim roboty saperskie o napędzie gąsienicowym [1] wspierają człowieka w niebezpiecznych zadaniach (np. w obszarze zagrożonym wybuchem ładunków albo działaniem terrorystów). Przemieszczają się w trudnym terenie, mogą przepychać przeszkody i są stabilną bazą dla manipulatorów. Z drugiej strony, ich ruch pochłania znaczne ilości energii, dodatkowo ze względu na poślizgi samolokalizacja robota jest utrudniona, gdyż przy takiej konfiguracji informacja z enkoderów zamocowanych na silnikach jest zdecydowanie niewystarczająca. Wychodząc na przeciw powyższym problemom, stworzono całą gamę robotów o dwukołowym napędzie różnicowym, które przy odpowiedniej konstrukcji mogą poruszać się w trybie odwróconego wahadła. Tego typu roboty wprawdzie nie posiadają takich dobrych właściwości do przemieszczania się w terenie w obecności przeszkód jak roboty saperskie, ale za to w praktycznych realizacjach z powodzeniem przewożą ludzi [2], zużywając przy tym relatywnie mało energii. Co więcej, stojąc w pionie w swojej nominalnej pozycji, zajmują mało miejsca na powierzchni, co pozwala im na poruszanie się w ograniczonej przestrzeni. Na bazie odwróconego wahadła budowano też roboty wyposażone w ręce zdolne do werbalnej i niewerbalnej komunikacji z ludźmi [3]. Roboty mobilne działające na zasadzie odwróconego wahadła są także z powodzeniem wykorzystywane jako manipulatory humanoidalne [4] oraz pojazdy transportowe [5]. Sterowanie balansującym robotem mobilnym wymaga, ze względu na niestabilną naturę, szybkiej odpowiedzi układu sterowania na zmiany orientacji i stanu robota. Konieczne jest zapewnienie dokładnego i pozbawionego opóźnień pomiaru kąta odchylenia robota od pionu [6]. Do pomiaru kąta pochylenia robota wykorzystuje się zwykle pomiary z kilku czujników, filtrowane za pomocą filtru Kalmana [7] lub filtru komplementarnego [8]. Z drugiej
0
Pomiary Automatyka Robotyka n/2013
strony konieczna jest synteza odpowiedniego układu regulacji. W licznych pracach zastosowano różne rozwiązania, m.in. logikę rozmytą [9], regulatory PID [10], sterowanie z wyprzedzeniem (feed-forward) [11]. Ostatnie osiągnięcia naukowców [12, 13] pozwalają stwierdzić, że budowa robotów o zmiennej konfiguracji mechanicznej (będąca jak dotąd domeną fantastyki naukowej) staje się rzeczywistością. Celem niniejszej pracy jest przeprowadzenie studium wykonalności robota, na bazie doświadczeń z prac [14, 15], mogącego poruszać się w dwóch trybach jazdy: stabilnym statycznie (poziomym) oraz stabilnym dynamicznie (pionowym), z możliwością automatycznej zmiany trybu ruchu, łącząc zalety obydwu trybów ruchu. System sterowania stanowią algorytmy i regulatory, dzięki którym robot może samodzielnie utrzymywać równowagę w zależności od zadanego sterowania oraz od warunków zewnętrznych, takich jak pochylenie i nierówności podłoża oraz kolizje z przeszkodami. Artykuł koncentruje się na systemie sterowania, tym niemniej dla kompletności, na wstępie zostaną pokrótce sformułowane wymagania (sekcja 1) oraz konstrukcja mechaniczna i elektroniczna robota (sekcja 2). Postawione wymagania i konstrukcja robota były podstawą do syntezy regulatora kaskadowego (sekcja 3) sterującego silnikami. Struktura regulatora implikowała sposób dekompozycji sterownika sprzętowo-programowego oraz jego implementację na rzeczywistym sprzęcie (sekcja 4). Pracę kończy podsumowanie (sekcja 5).
1. Wymagania Celem projektu było stworzenie taniego robota zdolnego do poruszania się w dwóch trybach ruchu: – poziomym, czyli stabilnym statycznie, w którym robot ma trzy punkty kontaktu z podłożem: dwa koła oraz zderzak. W tym trybie możliwe jest pchanie przeszkód za pomocą zderzaka, jak również jazda w trudnym terenie, – pionowym, czyli stabilnym dynamicznie, w którym robot utrzymuje równowagę w pozycji „zderzakiem do góry”. Z założenia ten tryb ma zapewniać zdolność do poruszania się w wąskich przejazdach dzięki małej powierzchni przekroju poziomego, niskie zużycie energii z powodu braku tarcia zderzaka o powierzchnię ziemi, a także wysoką jakość samolokalizacji na bazie odczytów z odometrii. W obydwu trybach zakładamy zadawanie prędkości postępowej i obrotowej całego robota, a także możliwość automaPomiary Automatyka Robotyka nr 5/2013
93
NAUKA
Nauka tycznego wstawania oraz zatrzymania silników w dowolnym trybie ruchu, co ilustruje diagram stanów na rys. 1.
utrzymywanie równowagi
wstawanie do pionu zatrzymanie silników
jazda z podparciem
Rys. 1. Diagram stanów, w których może znajdować się robot oraz przejść między stanami Fig. 1. Robot’s state diagram
2. Konstrukcja bazy jezdnej
Konstrukcja mechaniczna (rys. 2) [16] robota nawiązuje do klasy rzucanych robotów zwiadowczych (np. [17]) i składa się z dwóch współosiowych kół zamontowanych na długiej osi, połączonej z ramą. Rozstaw kół jest zbliżony do ich średnicy i wynosi 50 cm. Przeniesienie napędu zostało podobnie rozwiązane jak w rowerze, koła mogą obracać się swobodnie na nieruchomej osi, a napęd jest przenoszony za pomocą zębatek i łańcucha. Do tylnej części ramy przyczepiony jest miękki, owalny zderzak o wysokości zbliżonej do średnicy kół. Element ten stanowi trzeci punkt podparcia, dzięki któremu robot może poruszać się w trybie stabilnym statycznie. Zderzak jest jedynym elementem konstrukcji, który wystaje poza obrys kół. Środek ciężkości robota znajduje się w niewielkiej odległości od osi kół, dzięki czemu robot może samodzielnie wstawać do pozycji pionowej („zderzakiem do góry”) i utrzymywać równowagę poprzez odpowiednie sterowanie. Konstrukcja mechaniczna jest symetryczna w dwóch płaszczyznach: – prostopadłej do osi kół (symetria lewo – prawo), – zawierającej oś kół oraz geometryczny środek zderzaka (symetria góra – dół).
przekładniami planetarnymi i sprzęgłami. Sterowane są zgodnie z metodologią opisaną w pracach [18, 19] poprzez mostek H z dolnymi tranzystorami N-MOSFET i górnymi tranzystorami P-MOSFET. Średni prąd płynący przez każdy z silników mierzony jest pośrednio, poprzez pomiar spadku napięcia na rezystorze o niewielkiej rezystancji. Mostek H stanowi część sterownika silnika, który dodatkowo jest odpowiedzialny za pomiar prędkości obrotowej silnika na podstawie danych z enkoderów, oraz za komunikację z modułem głównym robota. W skład systemu sterowania wchodzą dwa sterowniki silnika. Za określanie orientacji robota w przestrzeni odpowiada jednostka inercyjna, zawierająca 3-osiowy żyroskop oraz 3-osiowy akcelerometr. Jednostka inercyjna, podobnie jak sterownik silnika, komunikuje się z modułem głównym robota. Moduł główny to niewielki netbook o stosunkowo dużej mocy obliczeniowej. Komunikuje się ze wszystkimi podzespołami robota za pomocą magistrali RS-485 oraz RS-232.
3. Struktura regulatora
Do obsługi trybów ruchu z rys. 1 zdecydowano się wykorzystać regulator kaskadowy. Struktura regulatora sterującego ruchem robota jest zależna od aktualnego stanu, w którym znajduje się robot. Jako pętlę najbliższą sprzętowi i zarazem najszybszą przyjęto regulator prądowy, który w naturalny sposób zapewnia ograniczenie prądu płynącego przez silnik, jak również pozwala na pośrednie zadawanie momentu na silniki DC, a więc w pewnym przybliżeniu regulację przyspieszenia robota. Jest to regulator całkujący, którego wejście stanowi uchyb prądu zmierzonego względem zadanego, a wyjściem jest wypełnienie sygnału PWM. Regulator ten jest wspólną częścią wszystkich regulatorów kaskadowych opisanych dalej. Z drugiej strony w najbardziej zewnętrznej pętli zadawana jest prędkość postępowa i obrotowa robota.
3.1. Tryb poziomy
W poziomym trybie ruchu zadana prędkość postępowa i obrotowa robota jest przeliczana, za pomocą prostych przekształceń, na prędkości obrotowe silników, które z kolei są wejściem dwóch regulatorów kaskadowych, prędkościowo-prądowych (po jednej kaskadzie na każdy silnik – rys. 3). Regulator kaskadowy w trybie poziomym składa się z regulatora całkującego prądowego w wewnętrznej pętli oraz z regulatora proporcjonalnego prędkości obrotowej w zewnętrznej pętli. pr¹d zmierzony sygna³ regulator PWM pr¹du sygna³ regulator PWM pr¹du pr¹d zmierzony
zmierzona prêdkoœæ silnika pr¹d zadany
pr¹d zadany
regulator prêdkoœci
zadana prêdkoœæ silnika
regulator prêdkoœci
zadana prêdkoœæ silnika
-
prêdkoœæ postêpowa zadana
+
prêdkoœæ obrotowa zadana
zmierzona prêdkoœæ silnika
Rys. 2. Baza jezdna robota [16] Fig. 2. Robot’s mobile base [16]
Rys. 3. Kaskada regulatorów dla trybu poziomego Fig. 3. Cascade of regulators used in horizontal mode
Napęd robota stanowią dwa silniki szczotkowe prądu stałego z wkrętarek akumulatorowych, wraz z oryginalnymi
Regulator prędkości pozwala na precyzyjną kontrolę trajektorii robota oraz eliminuje wpływ niewielkiej, trudnej
94
n/2013 Pomiary Automatyka Robotyka
1
NAUKA do uniknięcia asymetrii robota, związanej z różnicami we właściwościach fizycznych silników oraz z różnymi siłami oporu przekładni.
3.2. Tryb pionowy
W trybie pionowym, regulator kaskadowy ma bardziej złożoną strukturę (rys. 4). Wewnętrzne pętle dla każdego z silników stanowią regulatory prądu. Nad nimi działają niezależnie od siebie dwa regulatory: regulator prędkości obrotowej oraz regulator kaskadowy prędkości postępowej i kąta pochylenia.
sygna³ regulator PWM pr¹du
sygna³ regulator PWM pr¹du
prêdkoœæ postêpowa zmierzona
k¹t zmierzony
pr¹d zmierzony
-
pr¹d regulator zadany k¹ta
regulator
k¹t prêdkoœci zadany
+
pr¹d zmierzony
postêpowej regulator prêdkoœci obrotowej
prêdkoœæ postêpowa zadana
prêdkoœæ obrotowa zadana
prêdkoœæ obrotowa zmierzona
pr¹d zmierzony sygna³ regulator PWM pr¹du
Kaskada regulatorów kąta pochylenia i prędkości postępowej odpowiada za utrzymywanie równowagi oraz za utrzymywanie i zmianę pozycji robota w przestrzeni. Regulator prędkości postępowej to regulator proporcjonalno-całkująco-różniczkujący (PID). Jego wejściem jest uchyb prędkości postępowej zmierzonej wzgędem zadanej. Prędkość postępowa robota została określona jako średnia prędkość obrotowa obu kół. Wyjściem tego regulatora jest zadany kąt dla regulatora kąta pochylenia. Kąt ten jest, dla kątów bliskich kątowi równowagi, wprost proporcjonalny do przyspieszenia robota. Oznacza to, że regulator prędkości postępowej, zadając kąt pochylenia dla regulatora kąta, zadaje przyszpieszenie calego robota. Człon różniczkujący pozwala na szybką odpowiedź na zmianę prędkości zadanej, a dzięki członowi całkującemu, robot jest w stanie wjechać na równię pochyłą, nachylając się w stronę równi. Regulator kąta to regulator proporcjonalno-całkujący. Jego zadaniem jest utrzymywanie zadanego kąta odchylenia robota od pionu, wyznaczonego przez regulator prędkości postępowej. Człon całkujący niweluje uchyb statyczny, który był obserwowany podczas doświadczeń i który był związany z działaniem siły grawitacji na konstrukcję robota. Wyjściem regulatora jest średni prąd zadany dla obu silników. Niezależnie od regulatora kaskadowego prędkości postępowej i kąta pochylenia, działa regulator proporcjonalno-całkujący prędkości obrotowej robota. Dzięki niemu robot może skręcać oraz utrzymywać zadany kierunek ruchu. Wejściem tego regulatora jest uchyb prędkości obrotowej robota, a wyjściem jest różnicowa wartość prądu dodana do prądu zadanego dla jednego silnika i odjęta od zadanego prądu dla drugiego silnika.
.
3.3. Wstawanie do pionu
Podczas wstawania do pionu robot wykonuje określoną sekwencję ruchów. W pierwszej fazie manewru robot rozpędza się. Silniki są sterowane prądowo, prądem o maksymalnym dozwolonym natężeniu. Dla tej fazy manewru regulator przedstawiono na rys. 5.
1
2
Pomiary Automatyka Robotyka n/2013
Imax
pr¹d zmierzony
Rys. 5. Regulator dla pierwszej fazy manewru wstawania do pionu Fig. 5. Regulator for the first phase of getting-up maneuver
Po upływie określonego czasu, rozpoczyna się druga faza manewru. Polaryzacja prądu zmienia się na przeciwną i zostaje włączony prosty regulator proporcjonalny, który zadaje prąd proporcjonalny do kąta odchylenia od pionu (rys. 6). Druga faza trwa dopóki kąt odchylenia od pionu nie znajdzie się w zdefiniowanym przedziale – robot przechodzi wtedy do stanu balansowania (trybu pionowego). pr¹d zmierzony
Rys. 4. Kaskada regulatorów dla trybu pionowego Fig. 4. Cascade of regulators used in dynamically stable mode
pr¹d zadany
sygna³ regulator PWM pr¹du
k¹t zmierzony
sygna³ regulator PWM pr¹du
regulator pr¹d zadany k¹ta
sygna³ regulator PWM pr¹du
k¹t zadany
0
pr¹d zmierzony
Rys. 6. Regulator dla drugiej fazy manewru wstawania do pionu Fig. 6. Regulator for the second phase of getting-up maneuver
4. Dekompozycja i implementacja sterownika
Sterownik programowy robota tworzy system rozproszony (rys. 7), który podzielony został na oprogramowanie niskopoziomowe (sekcja 4.1), działające na sterownikach silników i na jednostce inercyjnej, oraz oprogramowanie wysokopoziomowe (sekcja 4.2) działające na netbooku. silnik B enkoder B
silnik A enkoder A
jednostka inercyjna rs-232
sterownik silnika B
sterownik silnika A
netbook
rs-485
Rys. 7. Moduły systemu Fig. 7. Modules of the system
Na sterownikach silników zaimplementowano pracujące z dużą częstotliwością regulatory prądu i prędkości obrotowej silników. Na netbooku działa maszyna stanów, która odpowiada za sterowanie całym robotem, oraz regulatory wyższego poziomu: kąta pochylenia, prędkości postępowej i prędkości obrotowej robota.
4.1. Oprogramowanie niskopoziomowe W sterowniku niskopoziomowych zaimplementowano zadania wymagające częstego odwoływania się do sprzętu, z drugiej strony nie wymagające skomplikowanych obliczeń: – komunikację z komputerem PC, Pomiary Automatyka Robotyka nr 5/2013
95
NAUKA
Nauka – pomiar czasu, – sterowanie mostkiem H zasilającym silnik, – pomiar prądu, – regulację i ograniczenie prądu, – pomiar prędkości obrotowej silnika oraz jej regulacja, – watchdog. Sterowniki silnika zostały zaimplementowane na mikrokontrolerze AVR ATmega8, który został wybrany ze względu na niską cenę, prostą obsługą i wystarczająco dobre parametry. Moc obliczeniowa procesora zdeterminowała napisanie aplikacji odwołującej się bezpośrednio do sprzętu bez wykorzystania systemu operacyjnego. Aplikacja została zaprojektowana w taki sposób, aby zadania, wykonywane na jednordzeniowym procesorze, nie blokowały się nawzajem. Ze względu na niewielką liczbę zadań oraz niedużą ich złożoność, możliwe było zastosowanie podejścia zapewniającego względnie częste wykonywanie każdego z zadań. Główna pętla wykonywana jest z dużą częstotliwością, przydzielając każdemu zadaniu czas w każdej pętli. Oprogramowanie (rys. 8) zostało napisane zgodnie z następującymi założeniami: – żadne zadanie nie stosuje aktywnego oczekiwania i jeśli nie ma w danej chwili niczego do zrobienia, zostaje wstrzymane, – zadania wykonują jednorazowo niewielką liczbę czynności. W praktyce oznacza to brak pętli o dużej liczbie iteracji, – stan zadania może zostać zapamiętany na czas wykonywania pozostałych zadań. Program g³ówny Inicjalizacja
Zmierzenie czasu jaki up³yn¹³ od poprzedniej iteracji Zadanie 1
Przerwania Odebrano bajt dodaj do bufora
Zadanie 2 ... Komunikacja (buforowane We/Wy)
Rys. 8. Struktura sterownika silnika Fig. 8. Diagram of motor controller
Dzięki takiej strukturze aplikacji każde zadanie może być wykonywane z dużą częstotliwością i możliwe jest: – szybkie pobieranie danych z bufora, aby nie przepełnił się, – regularne i precyzyjne uruchamianie pewnych procedur, które powinny wykonywać się co stały interwał czasu, np. regulatora prędkości, – zapamiętanie wyniku konwersji analogowo – cyfrowej tuż po jej zakończeniu i natychmiastowe ponowne uruchomienie kolejnej konwersji,
96
– ograniczenie liczby przerwań do niezbędnego minimum. Dodatkowo, zadania mogą działać od siebie niezależnie, co znacznie uprościło aplikację, zmniejszając ryzyko wystąpienia błędów. Nie jest potrzebna synchronizacja między zadaniami, gdyż nie wykonują się one równolegle. Przerwania w większości zastąpiono sprawdzaniem, w każdej iteracji pętli głównej, czy już wystąpiło dane zdarzenie (np. upłynięcie określonego czasu, lub zakończenie konwersji analogowo-cyfrowej). Poniżej zostaną opisane szczegółowo najistotniejsze zadania sterownika niskopoziomowego.
4.1.1. Regulacja i ograniczenie prądu
Regulacja prądu oparta jest na dyskretnym regulatorze PID, którego wejściem jest uchyb prądu zmierzonego względem zadanego, a wyjściem jest wartość wypełnienia sygnału PWM. Kolejne iteracje regulatora uruchamiane są, z częstotliwością 7,2 kHz, w procedurze obsługi przerwania zegara generującego sygnał PWM. Dzięki temu, w każdej iteracji, wartość na wyjściu regulatora zostaje użyta do sterowania silnikiem. Zastosowano także ograniczenie całkowania, gdy wartość na wyjściu jest zbyt duża. Dodatkowo, można w każdej chwili zmienić wartość jego nastawów, wysyłając odpowiednie dane z komputera PC do sterownika silników. Regulator prądowy oprócz swojej głównej funkcji, jaką jest sterowanie prądem płynącym przez silnik, zabezpiecza przed spaleniem mostka. W przypadku, gdy nastąpi zwarcie przez np. niepoprawne podłączenie silnika, regulator ograniczy prąd zwarciowy i znacznie zmniejszy wzrost temperatury tranzystorów.
4.1.2. Pomiar prędkości obrotowej silnika oraz jej regulacja
Dla trybu jazdy w poziomie regulatory prędkości kół zostały umieszczone w sterowniku niskopoziomowym, w przeciwieństwie do trybu jazdy w pionie, w którym regulatory prędkości umieszczone zostały w sterowniku wysokopoziomowym. Różnica ta wynika ze struktury regulatorów kaskadowych w obu trybach jazdy. W trybie pionowym regulator prędkości działa nad regulatorem kąta, pracującym na netbooku. Dodatkowo, regulator prędkości postępowej steruje średnią prędkością kół robota, dlatego został umieszczony w jednostce centralnej, sterującej całym robotem. W trybie poziomym regulatory prędkości sterują prędkościami obrotowymi kół (poprzez regulację prędkości silników) i mogą działać niezależnie od siebie. Dlatego są implementowane w sterownikach niskopoziomowych, co dodatkowo pozwala na uniknięcie niewielkiego opóźnienia w sterowaniu wynikającego z transmisji danych: prędkości zmierzonej i prądu zadanego. Regulator PID prędkości obrotowej silnika został zaimplementowany, podobnie jak regulator prądu. Posiada ograniczenie całkowania oraz możliwość zmiany nastaw przez komputer PC. Dodatkowo może zostać w każdej chwili wyłączony, a sterownik silnika przechodzi wtedy w tryb sterowania prądem. Regulator prędkości działa z częstotliwością około 55 Hz. Tak niska częstotliwość jest skutkiem kompromisu, jaki należało przyjąć wybierając częstotliwość regulacji i dokładność pomiaru. Enkodery generują 1056 impulsów na pełny obrót koła, co przy maksymalnej prędkości robota daje maksymalnie ok. 2000 impulsów na sekundę. Przy 50 pomiarach prędkości na sekundę i maksymalnej prędkości
n/2013 Pomiary Automatyka Robotyka
3
NAUKA robota, zmierzonych zostanie maksymalnie okoĹ&#x201A;o 40 impulsĂłw. Skutkiem tego jest doĹ&#x203A;Ä&#x2021; dobra regulacja prÄ&#x2122;dkoĹ&#x203A;ci robota w zakresie duĹźych prÄ&#x2122;dkoĹ&#x203A;ci, zaĹ&#x203A; nieregularna praca i â&#x20AC;&#x17E;szarpanieâ&#x20AC;? przy prÄ&#x2122;dkoĹ&#x203A;ci bliskiej zeru. Moment, w ktĂłrym zostaje uruchomiona kolejna iteracja regulatora prÄ&#x2122;dkoĹ&#x203A;ci jest okreĹ&#x203A;lany dziÄ&#x2122;ki zadaniu pomiaru czasu. W kolejnych iteracjach zliczana jest liczba impulsĂłw enkodera (z uwzglÄ&#x2122;dnieniem kierunku obrotu) i na tej podstawie obliczana jest prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; obrotowa silnika. WejĹ&#x203A;ciem regulatora prÄ&#x2122;dkoĹ&#x203A;ci jest uchyb prÄ&#x2122;dkoĹ&#x203A;ci zmierzonej wzglÄ&#x2122;dem zadanej, a wyjĹ&#x203A;ciem jest wartoĹ&#x203A;Ä&#x2021; prÄ&#x2026;du, ktĂłra podana zostaje na wejĹ&#x203A;cie regulatora prÄ&#x2026;du. W trybie jazdy z podparciem (bez utrzymywania rĂłwnowagi) oba regulatory sÄ&#x2026; wĹ&#x201A;Ä&#x2026;czone tworzÄ&#x2026;c kaskadÄ&#x2122;.
4.1.3. Watchdog WspĂłĹ&#x201A;czesne roboty powinny byÄ&#x2021; konstruowane zgodnie z wymogami bezpieczeĹ&#x201E;stwa [20]. Na poziomie mikrokontrolerĂłw mechanizm â&#x20AC;&#x17E;watchdogâ&#x20AC;? pozwala na unikniÄ&#x2122;cie sytuacji, w ktĂłrej mikrokontroler wykonuje bez koĹ&#x201E;ca program w pÄ&#x2122;tli (w sposĂłb nieprzewidziany), tj. zawiesi siÄ&#x2122;. Watchdog zastosowany w programie obsĹ&#x201A;ugujÄ&#x2026;cym mostek H powoduje reset mikrokontrolera po 0,26 s od czasu ostatniego wyzerowania wewnÄ&#x2122;trznego timera. Zerowanie timera watchdoga nastÄ&#x2122;puje tylko po otrzymaniu poprawnej ramki danych adresowanej do danego urzÄ&#x2026;dzenia. Oznacza to, Ĺźe reset wywoĹ&#x201A;any przez watchdog nastÄ&#x2026;pi po zawieszeniu siÄ&#x2122; programu, jak rĂłwnieĹź przy przerwie w transmisji danych dĹ&#x201A;uĹźszej niĹź 0,26 s. Zabezpieczenie to zostaĹ&#x201A;o przetestowane, kiedy w programie pojawiĹ&#x201A; siÄ&#x2122; bĹ&#x201A;Ä&#x2026;d, przez ktĂłry co pewien czas jedno z urzÄ&#x2026;dzeĹ&#x201E; nie przeĹ&#x201A;Ä&#x2026;czaĹ&#x201A;o swojego koĹ&#x201E;ca magistrali RS-485 w tryb odczytu. Skutkiem tego byĹ&#x201A;o zatrzymanie transmisji danych i reset urzÄ&#x2026;dzeĹ&#x201E; wywoĹ&#x201A;any przez watchdoga. Pomimo tego, Ĺźe zablokowanie magistrali nastÄ&#x2122;powaĹ&#x201A;o Ĺ&#x203A;rednio co kilka sekund, moĹźliwe byĹ&#x201A;o dziaĹ&#x201A;anie robota bez wiÄ&#x2122;kszych utrudnieĹ&#x201E;.
4.2. Oprogramowanie wysokopoziomowe Jednostka centralna to urzÄ&#x2026;dzenie, na ktĂłrym dokonuje siÄ&#x2122; wiÄ&#x2122;kszoĹ&#x203A;Ä&#x2021; obliczeĹ&#x201E;, gdyĹź ma najwiÄ&#x2122;ksze zasoby ze wszystkich urzÄ&#x2026;dzeĹ&#x201E; w robocie. Jest to netbook z procesorem Intel Atom, 1 GB pamiÄ&#x2122;ci RAM oraz dyskiem twardym SSD o pojemnoĹ&#x203A;ci 16 GB. DziaĹ&#x201A;a na nim system operacyjny Ubuntu oraz system ROS, stosowane dotychczas z powodzeniem m.in. w systemach nawigacji robotĂłw mobilnych [21]. Gdy robot jest uruchomiony, na jednostce centralnej dziaĹ&#x201A;a ROS i jego dwa moduĹ&#x201A;y. Jeden moduĹ&#x201A; obsĹ&#x201A;uguje zadajnik i przesyĹ&#x201A;a dane dotyczÄ&#x2026;ce ruchu zadanego przez operatora do drugiego moduĹ&#x201A;u, ktĂłry steruje caĹ&#x201A;ym robotem, realizujÄ&#x2026;c dwie najwaĹźniejsze funkcje: â&#x20AC;&#x201C; zbieranie i filtracjÄ&#x2122; danych z jednostki inercyjnej, â&#x20AC;&#x201C; zaleĹźne od trybu ruchu sterowanie robota na podstawie poleceĹ&#x201E; od operatora.
4.2.1. Zbieranie i filtracja danych z jednostki inercyjnej ModuĹ&#x201A; gĹ&#x201A;Ăłwny zawiera regulatory z zamkniÄ&#x2122;tÄ&#x2026; pÄ&#x2122;tlÄ&#x2026; sprzÄ&#x2122;Ĺźenia zwrotnego i dlatego wymaga ciÄ&#x2026;gĹ&#x201A;ego dostarczania aktualnych danych o stanie fizycznym caĹ&#x201A;ego systemu. WielkoĹ&#x203A;ci fizyczne sÄ&#x2026; mierzone i zamieniane na postaÄ&#x2021; cyfrowÄ&#x2026;
4
Pomiary Automatyka Robotyka n/2013
przez urzÄ&#x2026;dzenia wchodzÄ&#x2026;ce w skĹ&#x201A;ad systemu rozproszonego. NastÄ&#x2122;pnie sÄ&#x2026; przesyĹ&#x201A;ane do moduĹ&#x201A;u gĹ&#x201A;Ăłwnego za pomocÄ&#x2026; interfejsĂłw komunikacyjnych i tam sÄ&#x2026; ostatecznie przetwarzane. SygnaĹ&#x201A;y analogowe zamienione na postaÄ&#x2021; cyfrowÄ&#x2026; wymagajÄ&#x2026; dodatkowego przetwarzania przed zastosowaniem ich w systemach regulacji, gdyĹź zawierajÄ&#x2026; one szumy i bĹ&#x201A;Ä&#x2122;dy pomiarowe, ktĂłre trzeba wyeliminowaÄ&#x2021; lub zmniejszyÄ&#x2021;. Dodatkowo, w przypadku pomiaru kÄ&#x2026;ta, konieczne jest zastosowanie filtru komplementarnego, Ĺ&#x201A;Ä&#x2026;czÄ&#x2026;cego pomiary z co najmniej dwĂłch czujnikĂłw. Na rys. 9 przedstawiono schemat algorytmu filtru komplementarnego, ktĂłry zostaĹ&#x201A; zaimplementowany w systemie. Filtr ten zawiera dwa wejĹ&#x203A;cia: Ď&#x2030;n i θn oraz dwa wyjĹ&#x203A;cia Ď&#x2030;n i θn . Zmienne Ď&#x2030; i θ to prÄ&#x2122;dkoĹ&#x203A;Ä&#x2021; obrotowa i kÄ&#x2026;t pochylenia. W wyniku dziaĹ&#x201A;ania filtru otrzymujemy dwa sygnaĹ&#x201A;y wyjĹ&#x203A;ciowe o podobnej interpretacji co sygnaĹ&#x201A;y wejĹ&#x203A;ciowe, lecz o znacznie wiÄ&#x2122;kszej dokĹ&#x201A;adnoĹ&#x203A;ci.
akcelerometr
przyspieszenie w osi X
arctg
przyspieszenie w osi Y
¿yroskop kšt pochylenia
prĂŞdkoĹ&#x201C;ĂŚ kštowa n
filtr komplementarny n ( n 1 n ) (1 x)
n
n n 1 n 2 n 3 x 4
n n n 1 n
n
prĂŞdkoĹ&#x201C;ĂŚ kštowa
kšt pochylenia
Rys. 9. Filtr komplementarny, x to liczba z przedziaĹ&#x201A;u (0; 1) Fig. 9. Complementary filter, x is a real number in (0; 1)
Filtr ten jest dyskretny w dziedzinie czasu, tzn. wykonywany jest w iteracjach w staĹ&#x201A;ych przedziaĹ&#x201A;ach czasu. Jest podany wzorem rekurencyjnym na rys. 9. WewnÄ&#x2122;trzny stan filtru jest przechowywany, miÄ&#x2122;dzy kolejnymi iteracjami, za pomocÄ&#x2026; zmiennych θnâ&#x2C6;&#x2019;1 , θnâ&#x2C6;&#x2019;1 , θnâ&#x2C6;&#x2019;2 oraz θnâ&#x2C6;&#x2019;3 . Liczba x to staĹ&#x201A;a z przedziaĹ&#x201A;u (0; 1), ktĂłra okreĹ&#x203A;la wagÄ&#x2122; wejĹ&#x203A;Ä&#x2021;. WartoĹ&#x203A;Ä&#x2021; staĹ&#x201A;ej x bliska 0 oznacza, Ĺźe wartoĹ&#x203A;ci na wyjĹ&#x203A;ciach bÄ&#x2122;dÄ&#x2026; wyliczane gĹ&#x201A;Ăłwnie na podstawie caĹ&#x201A;ki prÄ&#x2122;dkoĹ&#x203A;ci kÄ&#x2026;towej. WartoĹ&#x203A;Ä&#x2021; x bliska 1 oznacza, Ĺźe wartoĹ&#x203A;ci na wyjĹ&#x203A;ciu bÄ&#x2122;dÄ&#x2026; bardziej wraĹźliwe na pomiar kÄ&#x2026;ta z akcelerometru. Im mniejszy dryf Ĺźyroskopu, tym mniejsza moĹźe byÄ&#x2021; wartoĹ&#x203A;Ä&#x2021; staĹ&#x201A;ej x i tym wiÄ&#x2122;ksza dokĹ&#x201A;adnoĹ&#x203A;Ä&#x2021; pomiaru kÄ&#x2026;ta. W przedstawionej tutaj implementacji dobrano wartoĹ&#x203A;Ä&#x2021; x = 0.03, przy ktĂłrej dryf Ĺźyroskopu nie wprowadza bĹ&#x201A;Ä&#x2122;du. Otrzymana na wyjĹ&#x203A;ciu wartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta pochylenia jest znacznie dokĹ&#x201A;adniejsza i bliĹźsza rzeczywistej wartoĹ&#x203A;ci kÄ&#x2026;ta. Wyniki badania dziaĹ&#x201A;ania filtru komplementarnego zostanÄ&#x2026; przedstawione w kolejnej czÄ&#x2122;Ĺ&#x203A;ci artykuĹ&#x201A;u. Uzyskana wartoĹ&#x203A;Ä&#x2021; kÄ&#x2026;ta pochylenia robota jest wykorzystywana w pÄ&#x2122;tli sprzÄ&#x2122;Ĺźenia zwrotnego regulatora kÄ&#x2026;ta. Pomiary Automatyka Robotyka  nr 5/2013
97
NAUKA
Nauka
4.2.2. Poziomy tryb ruchu W trybie jazdy w poziomie, moduł główny przelicza dane z zadajnika na prędkości obrotowe kół, które następnie przesyła do kaskad regulatorów w sterownikach silników. W trybie tym, w module głównym nie działa żaden regulator.
4.2.3. Pionowy tryb ruchu W trybie jazdy w pionie moduł główny zawiera część kaskady regulatorów: regulator kąta odchylenia od pionu oraz regulatory prędkości postępowej i obrotowej robota. Regulator kąta jest dyskretnym regulatorem PI, a regulator prędkości postępowej jest dyskretnym regulatorem PID. Oba regulatory tworzą kaskadę i działają z częstotliwością 100 Hz. Zaimplementowane ograniczenie całkowania oraz ograniczenie wartości na wyjściu zabezpieczają system przed zbyt gwałtowną i zbyt silną odpowiedzią na sytuacje wyjątkowe, jak np. nagła utrata stabilności. Regulatory te są uruchomione tylko w trybie utrzymywania równowagi w pozycji pionowej i są resetowane przy każdym przejściu do tego trybu. Reset polega na wyzerowaniu całki, aby w początkowych iteracjach regulacji nie była brana pod uwagę jej wartość z poprzedniej fazy jazdy w trybie utrzymywania równowagi. Oprócz sterowania prędkością postępową robota konieczne jest także sterowanie prędkością obrotową robota w trybie balansowania. W tego typu konstrukcjach stosuje się napęd różnicowy, w którym sterowanie prędkością obrotową robota polega na zadawaniu różnych prędkości dla każdego z kół. W przypadku opisanego w niniejszym artykule robota, będącego w trybie jazdy w pozycji pionowej, nie można bezpośrednio i precyzyjnie kontrolować różnicy w prędkości obrotowej kół, gdyż regulator prędkości postępowej jest wspólny dla obu kół. Z kolei regulator kąta zadaje prąd płynący przez oba silniki, co przy nawet niewielkiej asymetrii w elementach mechanicznych lub elektronicznych skutkuje w nieznacznych różnicach w prędkości obrotowej silników i niekontrolowanym skręcaniu robota. Aby poprawić kontrolę nad trajektorią robota, dodano jeszcze jeden regulator PI, który steruje jego prędkością obrotową podczas ruchu w pozycji pionowej. Jego wyjście stanowi różnicowa wartość prądu, która jest dodawana do wartości prądu wyznaczonej przez regulator kąta dla jednego silnika i odejmowana od tejże wartości dla drugiego silnika.
4.2.4. Manewr wstawania do pionu Poszczególny fazy manewru są zlecane ze sterownika wysokopoziomowego. Pierwsza, w której robot się rozpędza w pozycji poziomej trwa 0,7 s. Silniki są sterowane prądowo, prądem o maksymalnym dozwolonym natężeniu. Następnie, po czasie 0,7 s, rozpoczyna się druga faza, gdzie polaryzacja prądu zmienia się na przeciwną i zostaje włączony prosty regulator proporcjonalny, który zadaje prąd proporcjonalnie do kąta odchylenia od pionu. Również w tej fazie zadane natężenie prądu podlega ograniczeniu. Druga faza trwa dopóki kąt odchylenia od pionu nie znajdzie się w przedziale ustalonym eksperymentalnie (–10°... +10° ). Jeżeli po czasie 2,0 s od rozpoczęcia manewru robot nie osiągnie trybu pionowego (czyli nie osiągnie założonego kąta), zostaje włączony stan awaryjnego zatrzymania sil-
98
ników. Czasy trwania obu faz manewru zostały dobrane doświadczalnie. Zachowanie robota podczas manewru wstawania do pionu zostanie szczegółowo opisane w kolejnej części artykułu.
5. Podsumowanie Zaprojektowany i wykonany w ramach projektu robot może poruszać się w dwóch trybach jazdy, automatycznie zmieniać tryb ruchu, wjeżdżać na równię pochyłą, pchać obiekty, utrzymywać równowagę po zderzeniu z przeszkodą oraz zachowuje się w sposób przewidywalny i bezpieczny. Należy zwrócić szczególną uwagę na niezawodność robota, który podczas testów nie ulegał awariom oraz nie stanowił zagrożenia dla otoczenia. Jego system sterowania został gruntownie przetestowany w różnych scenariuszach. W czasie testów zbierano i analizowano dane szczegółowo opisujące stan robota. Przeprowadzone doświadczenia, wraz z przebiegami czasowymi zmiennych stanu robota, zostaną przedstawione w kolejnym artykule. Z kolei badania filtracji danych z jednostki inercyjnej będą podstawą do rozwinięcia metod estymacji siły bezwładności [22].
Podziękowania Tomasz Winiarski dziękuje za wsparcie otrzymane w ramach stypendium współfinansowanego przez Unię Europejską w ramach Europejskiego Funduszu Społecznego, które przyznawane jest przez Centrum Studiów Zaawansowanych Politechniki Warszawskiej w ramach projektu „Program Rozwojowy Politechniki Warszawskiej”. Projekt był finansowany ze środków Narodowego Centrum Nauki przyznanych na podstawie decyzji numer DEC-2012/05/D/ST6/03097.
Bibliografia
1. Klimasara W., Koncepcja, projekt oraz konstrukcja mechaniczna mobilnego robota interwencyjnoinspekcyjnego sr-10 inspector, ”Krajowa Konfrencja Robotyki, VII KKR, Prace Naukowe ICT PWr. Proceedings Red. K. Tchon, Ladek Zdrój”, 2001, 139–148. 2. Nguyen H. G., Morrell J., Mullens K., Burmeister A., Miles S., Farrington N., Thomas K., Cage D. W. (2004): Segway robotic mobility platform. Defense Technical Information Center. 3. Kędzierski J., Małęk L., Oleksy A., Budowa robota społecznego FLASH, [in:] XII Krajowa Konferencja Robotyki – Postępy Robotyki, Oficyna Wydawnicza Politechniki Warszawskiej, 2012, 681–694. 4. Stilman M., Olson J., Gloss W. (May, 2010): Golem Krang: Dynamically Stable Humanoid Robot for Mobin William Gloss, [in:] IEEE International Conference on Robotics and Automation ICRA’10, IEEE. 5. Cazzolato B., Harvey J., Dyer C., Fulton K., Schumann E., Zhu T., Prime Z., Control of an electric diwheel, 2009. 6. McComb G. (2001): The robot builder’s bonanza. McGraw-Hill/TAB Electronics. 7. Ooi R. C., Balancing a two-wheeled autonomous robot, ”University of Western Australia”, 2003. 8. Kim Y., Kim S. H., Kwak Y. K., Dynamic analysis of a nonholonomic two-wheeled inverted pendulum robot, ”Journal of Intelligent & Robotic Systems” 1/2005, 25–46.
n/2013 Pomiary Automatyka Robotyka
5
Zobacz więcej Pobierz bezpłatną aplikację PAR+ App Store | Google Play
Pomiary Automatyka Robotyka nr 5/2013
99
Nauka
Realizacja programowa algorytmów filtracji, estymacji i sterowania w PLC/PAC Jarosław Tarnawski Katedra Inżynierii Systemów Sterowania, Wydział Elektrotechniki i Automatyki, Politechnika Gdańska
Streszczenie: Sterowniki programowalne PLC (ang. Programmable Logic Controller) są główną przemysłową platformą implementacji algorytmów sterowania bezpośredniego. Standardowo producenci PLC dostarczają programistom jedynie podstawowe, najprostsze metody sterowania. Wraz z rozwojem sterowników PLC oraz ich następców PAC (ang. Programmable Automation Controller) pojawiły się zwiększone możliwości obliczeniowe i pamięciowe tych urządzeń oraz pełniejsza implementacja języków programowania określonych w normie IEC61131-3. PLC i PAC mają obecnie moc obliczeniową i dostępną pamięć odpowiadającą komputerom osobistym PC sprzed kilku lat, można je programować również w językach wysokiego poziomu stosując zmienne zdefiniowane w postaci macierzowej. Uwzględniając pewne ograniczenia i specyfikę działania PLC oraz PAC można w tych urządzeniach zaimplementować wiele zdyskretyzowanych algorytmów sterowania, estymacji czy filtracji. Pomimo niewątpliwych potencjalnych korzyści wynikających ze stosowania zaawansowanych metod w warstwie sterowania bezpośredniego, temat ten w literaturze jest skromnie reprezentowany. W artykule prezentowane jest podejście do programowania algorytmów filtracji, estymacji i sterowania, opisanych równaniami różnicowymi. Przedstawiono metodykę budowy oprogramowania dla PLC/PAC. Dla zilustrowania procesu implementacji algorytmu z pogranicza filtracji i estymacji wykorzystano metodę najmniejszych kwadratów ze współczynnikiem zapominania RLS_FF. Słowa kluczowe: sterowniki programowalne PLC/PAC, dyskretne algorytmy sterowania, strojenie i weryfikacja oprogramowania, estymacja RLS_FF
terowniki programowalne powstały w celu zastąpienia układów sterowania przełączającego, realizowanych za pomocą styczników i przekaźników [6]. Pierwotnie PLC obsługiwały wyłącznie sygnały dyskretne, następnie zostały wyposażone w przekaźniki czasowe i zegary umożliwiające włączanie i wyłączanie urządzeń nie tylko w zależności od stanu sygnałów pomiarowych, ale również z opóźnieniem czy o określonym czasie. Równolegle rozwijane były systemy klasy DCS zorientowane od początku na realizację sterowania ciągłego: algorytmy PID, MPC, sterowania rozmytego i wielu innych. Systemy klasy DCS były lokowane głównie w przemyśle chemicznym, energetyce, rafineryjnym itp. Ze względu na elastyczność, dużą konkurencję
100
na rynku i pozycjonowanie przez producentów PLC można znaleźć w instalacjach przemysłowych różnej skali od najmniejszych do bardzo dużych. Wraz z rozwojem techniki mikroprocesorowej i komputerowej PLC zostały wyposażone w podstawowy aparat matematyczny, początkowo bazujący na liczbach całkowitych, a następnie zmiennoprzecinkowych. Pierwotnie pamięć PLC była widziana jako struktura wektorowa, obecnie może być również organizowana w postaci macierzy. Współczesne możliwości sprzętowe i programowe udostępnione przez producentów programistom PLC zbliżone są do tych dostępnych w komputerach klasy PC. Producenci, aby zaakcentować rozwój i zwiększone możliwości PLC, nową generację tych urządzeń nazwali PAC [5]. Różnice między systemami PLC/PAC (wraz z systemem SCADA) oraz DCS znacznie się zmniejszyły. Platforma PLC jest standardowo dość oszczędnie wyposażona w predefiniowane bloki i algorytmy stosowane w automatyce, ale predestynowana do zrealizowania programowego, również zaawansowanych algorytmów filtracji, estymacji i algorytmów sterowania, co przedstawiono w artykule dla urządzeń firmy GE Fanuc kontrolerów PAC – RX3i. Zaprezentowane metody i opracowany kod mają charakter przenośny, a po niewielkim dostosowaniu mogą zostać zastosowane w urządzeniach PLC/PAC innych firm. Przez zaawansowane algorytmy sterowania estymacji i filtracji dla PLC określa się na potrzeby tego artykułu te metody, które są standardowo niedostępne na platformie PLC i są bardziej skomplikowane w realizacji niż regulatory dwu- i trójpołożeniowe, regulatory regułowe IF-THEN oraz regulatory PID. Dla łatwiejszej orientacji można wymienić wielowymiarowe sterowanie od stanu, metody identyfikacji, filtracja, estymacja parametryczna, liniowe MPC, adaptacyjne MRAC i ST. W dostępnej literaturze trudno odnaleźć przykłady bardziej rozbudowane niż regulatory PID, ewentualnie regulatory sklejane za pomocą logiki rozmytej.
1. Sposób działania PLC wymusza metodę programowania Sterowniki programowalne to przemysłowe urządzenia sterujące zaprojektowane i zbudowane tak, aby spełniać postulat pracy w czasie rzeczywistym. Oznacza to, że programiści i użytkownicy tych urządzeń mają gwarancję, iż w skończonym, znanym a priori czasie informacja docierająca na wejścia PLC zostanie wczytana, przetworzona, a następ-
nie zostanie wygenerowana odpowiedź wystawiona na wyjścia urządzenia. Pracę w reżimie spełniającym twarde wymagania czasu rzeczywistego zrealizowano za pomocą nieskończonej pętli działającej na poziomie systemu operacyjnego, nazywanej cyklem pracy sterownika. Można wskazać wspólne cechy dla wielu rządzeń tej klasy. Powszechnie stosowane etapy/ fazy cyklu to: inicjalizacja cyklu, wczytanie wejść fizycznych do pamięci, wykonanie programu sterującego, przeniesienie stanu pamięci na wyjścia, diagnostyka. W skład cyklu przeważnie wchodzi również etap komunikacji z programatorem umożliwiającym wczytanie programu do PLC lub wymuszenie odpowiedniego trybu pracy tego urządzenia. Podgląd pamięci PLC może być również realizowany w tym trybie lub asynchronicznie – niezależnie od cyklu. Producenci dostarczają bardzo precyzyjnych informacji o czasie trwania poszczególnych faz cyklu. Czas ten zależy od liczy podłączonych modułów wejść/wyjść, długości i złożoności programu i wielu innych czynników. Obliczanie czasu trwania cyklu ma jednak charakter deterministyczny i może być przeprowadzone z dokładnością do milisekund, a niektóre składniki cyklu można określić z dokładnością do mikrosekund.
2. Nadzór nad czasem trwania cyklu Ze względu na realizację postulatu pracy w czasie rzeczywistym producenci PLC wprowadzili ograniczenia od góry na maksymalny czas trwania cyklu. Rozwiązanie to jest podobne do stosowanych w mikrokontorlerach mechanizmów typu watchdog powodujących wykrycie przekroczenia maksymalnego dopuszczalnego czasu trwania cyklu. Przykładowo w PAC RX3i GE Fanuc (CPU310) maksymalny dopuszczalny czas trwania cyklu to 2550 ms. Przekroczenie maksymalnego czasu trwania cyklu może być spowodowane różnymi przyczynami, np. błędem logicznym w programie sterującym. Najczęściej są to pętle nieskończone spowodowane skokami do wcześniejszej części programu, niewłaściwie zapętlone podprogramy lub złe sformułowanie warunków na opuszczenie pętli. Zabezpieczenie watchdog razem z fazą autodiagnostyki obejmuje również wszelkiego rodzaju przekłamania w odczycie z pamięci programu i ogólnie nazywaną utratą integralności programu logicznego i systemu operacyjnego PLC. W wyniku przekroczenia dopuszczalnego maksymalnego czasu trwania cyklu (nie mylić z przekroczeniem czasu ustawionego jako stały czas trwania cyklu) sterownik przechodzi w tryb STOP, nie wykonuje programu sterującego i wymaga interwencji programisty/operatora. Opisane zabezpieczenie opracowano, aby zapewniać skończony czas reakcji systemu na bodźce wejściowe oraz zabezpieczenie przed błędami logicznymi i utratą integralności systemu, jednak ma ono także konsekwencje w postaci ograniczenia czasu przeznaczonego na realizację programu sterującego. Opisując to wprost, wszystkie wykonywane obliczenia oraz pozostałe etapy cyklu muszą trwać krócej niż maksymalny czas trwania cyklu. Nie ma to znaczenia dla prostych i średnio złożonych programów, ale przy realizacji programowej algorytmów wymagających dużej liczby obliczeń staje się to istotnym ograniczeniem. Przy bardzo złożonych algorytmach obliczeniowych istnieje możliwość podziału algorytmu na części i wykonania tych części w osobnych cyklach bez przekraczania maksymalnego czasu trwania pojedynczego
cyklu. Jednak wtedy krok wykonania algorytmu nie jest realizowany w każdym cyklu, a po wykonaniu wszystkich etapów algorytmu, czyli co kilka cykli.
3. Wybór języka programowania W normie IEC 61131-3 dotyczącej programowania sterowników PLC zdefiniowane są języki programowania graficzne i tekstowe [1]. Do grupy języków graficznych zalicza się język drabinkowy LD (ang. Ladder Diagram) oraz język bloków funkcyjnych FBD (ang. Function Blok Diagram). Języki graficzne zapewniają dużą przejrzystość kodu dla operacji na stykach i przekaźnikach (realizacji układów przełączających), jednak przy dużej liczbie operacji matematycznych ten zapis jest zbyt rozwlekły i nieczytelny. Języki tekstowe opisane w normie IEC 61131-3 to język listy instrukcji IL (ang. Instruction Logic) oraz język tekstu strukturalnego ST (ang. Structured Text). Różnica między nimi jest zasadnicza, IL jest językiem niskopoziomowym, a ST – wysokopoziomowym. Język IL jest zbliżony koncepcyjnie do assemblera – zapewnia bardzo dużą wydajność obliczeń jednak realizuje wyłącznie podstawowe operacje na danych (z wykorzystaniem akumulatora i stosu). Jego przydatność jest zatem ograniczona. Najkorzystniejszym językiem, z punku widzenia implementacji zaawansowanych algorytmów, jest język ST przypominający składnią mieszankę języków C, Pascal i Basic, oferujący pętle, skoki warunkowe, instrukcje wyboru oraz indeksowanie macierzy. Niektórzy producenci PLC dostarczają do swoich sterowników kompilatory języka C i ten język również byłby użyteczny, jednak ze względu na różnice w implementacji kompilatorów oraz brak tego języka w normie, trudno mówić o zaletach przenośności i uniwersalności takiego kodu [2]. Rozważania w artykule dotyczą języków IL i ST, jednak należy podkreślić, że producenci rzadko dostarczają oba te języki ze swoimi produktami. Przykładowo, dla PLC GE Fanuc serii 90-30 dostępny jest język IL, a nie ma ST, natomiast dla PAC GE Fanuc RX3i jest odwrotnie. Do nadzorowania przebiegu programu można stosować język SFC (ang. Sequential Function Chart) albo język LD z wywołaniem procedur.
4. Forma zapisu zaawansowanych algorytmów sterowania, estymacji filtracji Zaawansowane algorytmy sterowania obiektami dynamicznymi są przeważnie definiowane równaniami różniczkowymi lub całkowymi. Ta forma nie jest wprost przydatna do implementacji w PLC. W wyniku dyskretyzacji równania różniczkowe można przekształcić w równania różnicowe, które mają postać dogodną do implementowania w urządzeniach cyfrowych, jak mikrokontrolery, komputery PC oraz PLC/PAC [4]. W literaturze dotyczącej dyskretnej teorii sterowania znajdziemy bogatą bazę algorytmów sterowania o różnej skali złożoności opisanych równaniami różnicowymi. Postać równań różnicowych mają dyskretne wersje obserwatorów, algorytmów estymacji parametrów modeli (np. metodą najmniejszych kwadratów, metodą gradientową) oraz algorytmy filtracji, np. dyskretny filtr Kalmana lub dyskretne częstotliwościowe filtry pasmowe. Cechą wspólną tych algorytmów jest Pomiary Automatyka Robotyka nr 5/2013
101
Nauka
ich rekurencyjny charakter, praca ze stałym okresem próbkowania, sposób realizacji za pomocą podstawowych operacji arytmetycznych oraz mechanizm zapamiętywania bieżących wartości sygnałów, i w kolejnych chwilach wykonania algorytmu ich przesuwania w pamięci (reprezentujące „starzenie” sygnału) po to, aby dysponować w kolejnych chwilach opóźnionymi wartościami sygnałów, koniecznymi do realizacji algorytmu. Sterowniki PLC standardowo, w językach programowania zdefiniowanych w normie IEC-61131, nie obsługują macierzowych operacji algebraicznych (programiści mają do dyspozycji skalarne operacje +, –, /, *). Z punktu widzenia realizacji algorytmu sterowania w PLC istotne jest rozróżnienie skalarnego i macierzowego charakteru równania różnicowego implementowanego algorytmu.
5. Czynności wstępne w projektowaniu systemu sterowania z PLC/PAC Projektowanie oprogramowania dla PLC wymaga czynności przygotowawczych jeszcze przed opracowaniem koncepcji programu sterującego. Proces ten można podzielić na fazy [3]: – podstawowa: określenie właściwego kroku pracy algorytmu (krok próbkowania, aktualizacji) na podstawie dynamiki obiektu/procesu, dobór współpracujących urządzeń, określenie niezbędnych wielkości, przypisania im zmiennych, wybór typu zmiennych, oszacowanie wielkości pamięci, nadanie etykiet zmiennym oraz adresom logicznym w pamięci PLC, wybór właściwego PLC dysponującego odpowiednią mocą obliczeniową, układami wejść/wyjść, pamięcią, językami programowania, możliwościami komunikacyjnymi, uwzględniając aspekty ekonomiczne i potencjalne możliwości rozwoju, oszacowanie czasu trwania jednego cyklu programu sterującego, konfiguracja PLC (w tym wymuszenie pracy ze stałym krokiem), – programowania: strukturyzacja – podział algorytmu i jego programowej realizacja na bloki logiczne (funkcje, procedury), wybór języka i metody programowania dla każdego z bloku logicznego, – dodatkowe: zaprojektowanie metody diagnostyki programu i weryfikacji implementacji, zaprojektowanie współpracy z użytkownikiem, interfejs HMI, wytypowanie zmiennych do archiwizacji i współpracy z bazą danych, dbałość o czytelność programu – strukturyzacja, czytelność, nazwy zmiennych, opisy poszczególnych fragmentów kodu.
Etap inicjalizacji zmiennych wykonywany jest tylko w pierwszym cyklu pracy sterownika i służy do nadania warunków początkowych równania różnicowego, tj. nadania wartości wszystkim zmiennym wykorzystywanym w programie opisanych jako przeszłe (np. u(k –1), y(k –3), e(k –5)). Oprócz zainicjowania zmiennych występujących w opisie równania, np. e(k –5) niezbędne będą wartości kolejne, tj. od e(k – 4) do e(k –1), bowiem te wartości w kolejnych krokach czasu będą reprezentowały stosowaną w programie e(k – 5). Występuje tu analogia do równań różniczkowych, gdzie komplet warunków początkowych dla równania n-tego stopnia stanowi zestaw pochodnych od pierwszej do (n –1)-ej w chwili t = 0. W drugim etapie wykonania programu następuje uaktualnienie zmiennych zrealizowane przez operacje arytmetyczne definiujące algorytm. Najczęściej są to proste operacje dodawania, odejmowania, mnożenia i dzielenia. W przypadkach algorytmów opisanych skalarnie etap ten jest prosty do realizacji i wykonywany bardzo szybko. Jeżeli algorytmy dane są w postaci macierzowej – czas jego trwania i realizacji zależy od charakteru tych macierzy i ich wymiaru. W artykule zostanie osobno przedstawiony wątek dotyczący tego etapu programu w wersji macierzowej. Należy pamiętać, że ograniczeniami są maksymalne wymiary macierzy udostępniane przez PLC oraz to, że łączny czas trwania cyklu nie może przekroczyć maksymalnego czasu określonego przez mechanizm nadzoru. Oczywiście łączny czas cyklu, na który największy wpływ ma właśnie ten etap programu, nie może przekraczać założonego okresu próbkowania przyjętego w układzie sterowania. Trzeci etap wykonywania programu, nazwany zapamiętywaniem zmiennych, ma na celu przechowanie obecnych wartości sygnałów w pamięci, w kolejnych chwilach będą one niezbędne jako wartości opóźnionych wielkości wykorzystywanych w programie. Etap ten rozpoczyna się
Inicjalizacja
Wczytanie wejść
N
pierwszy cykl? T
Wykonanie programu
Ustawienie wyjść
ETAP I: Inicjalizacja
ETAP II: Uaktualnienie
6. Metoda realizacji algorytmów danych przez równania różnicowe w PLC Uwzględniając specyfikę działania sterowników programowalnych oraz postać algorytmów opisanych za pomocą równań różnicowych można zaproponować ogólną strukturę programu (rys. 1). Składa się ona z mechanizmu nadzoru nad krokiem wykonania algorytmu i trzech etapów: inicjalizacji zmiennych, uaktualniania zmiennych, zapamiętywania zmiennych.
102
Obsługa programatora
ETAP III: Zapamiętanie
Diagnostyka
Cykl PLC
Etapy wykonania programu
Rys. 1. Cykl PLC i struktura wykonania programu Fig. 1. PLC cycle and structure of program execution
nadpisaniem zmiennych najstarszych (najbardziej opóźnionych) sygnałów tymi z poprzednich chwil czasowych, aż do zapisania wartości bieżących, które w następnym cyklu będą opóźnione o jeden okres próbkowania. Dla ilustracji trzech etapów ogólnego schematu programu (nie jako przykłady zaawansowanych działań przeznaczonych dla PLC) przedstawiono (tab. 1) proces realizacji całkowania metodą prostokątów, różniczkowania numerycznego metodą ilorazu różnicowego wstecz oraz modelu obiektu inercyjnego drugiego rzędu dyskretyzowanego metodą ZOH. W tej postaci programu pochodna sygnału x(k) będzie poprawnie liczona od drugiego kroku. Dla algorytmów korzystających z sygnału opóźnionego wyłącznie o jeden krok i tylko raz, w obliczeniach można połączyć etapy II i III. Przykładem jest tu operacja całkowania (tab. 1), w której wspólny etap może mieć postać I := I + e * T; czyli jest to jednocześnie forma uaktualnienia i zapamiętania danych. Zmienna I1 jest wtedy zbędna, a etap inicjalizacji zmiennych przyjmie postać I := 0; Pozwala to zaoszczędzić pamięć i liczbę operacji do wykonania – jest to forma strojenia kodu. Podany proces realizacji równań różnicowych w PLC ma charakter ogólny, uniwersalny, ale przy odpowiedniej analizie operacji, zmiennych i logiki można „zoptymalizować” kod.
7. Operacje macierzowe Sterowniki programowalne nie mają standardowo zaimplementowanych operacji arytmetycznych na macierzach. Istnieją rozkazy przesyłania, obracania, przeszukiwania i porównywania macierzy, jednak są one nieprzydatne do realizacji algorytmów opisanych w artykule. W normie IEC 61131 określono takie struktury danych jak macierz, ale producenci umożliwiają pracę z macierzami w sposób skalarny, tj. odwołując się do poszczególnych komórek macierzy, a nie wykonując operacji na całej macierzy. Dodatkowo producenci wprowadzili ograniczenia na wymiary danych, np. GE Fanuc w serii RX3i dopuszcza maksymalną liczbę danych w macierzy do 9999. Obsługa operacji macierzowych – dodawanie, odejmowanie, mnożenie, transponowanie i odwracanie macierzy musi być zrealizowana programowo za pomocą operacji na skalarach, co jest utrudnieniem na etapie kodowania, ale również czasochłonne podczas wykonywania programu. Zrealizowanie operacji odwracania macierzy wymaga też przechowywania wyników cząstkowych, czyli dodatkowej pamięci z zasobów PLC. Model programowania PLC nie jest na tyle elastyczny, nie umożliwia dynamicznego (podczas działania programu) przydziału pamięci. Rozmiary i typy zmiennych muszą być zdefiniowane na etapie konfiguracji PLC. Utrudnia to, ale nie uniemożliwia realizacji zadań.
Tab. 1. Ilustracja realizacji programowej całkowania, różniczkowania i modelu inercji II-go rzędu w PLC Tab. 1. Example of software implementation of integration, differentiation and II-order inertia model in the PLC całkowanie opis czas ciągły
tk
I = ∫ e (τ ) d τ tp
opis po dyskretyzacji T – okres próbkowania k – 1, k, k + 1, ... kolejne dyskretne chwile czasu Lista i znaczenie zmiennych
różniczkowanie
D=
inercja II-go rzędu
dx (t ) dt
TT 1 2
d 2y dy + (T1 + T2 ) + y (t ) = ku (t ) dt 2 dt
T1 = 1, T2 = 3,
I (k ) = I (k − 1) + Te (k )
I (k ) = I (k − 1) + Te (k )
dla T = 1 s
I – I(k) I1–I(k –1)
x – x(k) x1 – x(k-1)
y – y(k) y1 – y(k – 1) y2 – y(k – 2) u – u(k) u1 – u(k – 1) u2 – u(k – 2)
P R O G R A M w języku ST Etap I inicjalizacja zmiennych
I1 : = 0;
x1 : = 0;
Etap II uaktualnienie zmiennych
I : = I1+e*T;
D : = (x – x1)/T;
Etap III zapamiętanie zmiennych
I1 : = I;
x1 := x;
y1 := 0; y2 := 0; u1 := 0; u2 := 0; y:=1.084*y1 – 0.2636*y2 + 0.1091*u1 +0.07004*u2; y2: = y1; y1: = y; u2: = u1; u1: = u;
Pomiary Automatyka Robotyka nr 5/2013
103
Nauka
8. Kompromis między efektywnością czasową, rozmiarem i czytelnością programu Najkorzystniejszym rozwiązaniem dla programisty jest język ST i zastosowanie dozwolonych w tym języku pętli i indeksowania macierzy. W ten sposób tworzone są zwarte w treści i przejrzyste programy niewielkie w rozmiarze, ale nie najszybsze ze względu na dużą liczbę skoków koniecznych do zrealizowania pętli. W zastosowaniach, w których istnieje zagrożenie przekroczenia maksymalnego dopuszczalnego czasu trwania cyklu można program w języku ST napisać bez pętli w sposób ciągły – instrukcja po instrukcji. Znacznie zwiększy się objętość programu, jednak zmniejszy się czas jego wykonywania. Przy realizacji mnożenia dwóch macierzy o wymiarach 15 × 15 za pomocą operacji skalarnych powstaje konieczność wykonania 3375 operacji mnożenia i tyle samo dodawania. Dla ilustracji tych rozważań wykonano testy mnożenia macierzy w różnych wersjach realizacji programistycznej. W macierzach znajdowały się liczby zmiennoprzecinkowe 32-bitowe. Testy wykonano dla dwóch jednostek centralnych GE Fanuc RX3i. Wyniki przedstawione w tab. 2 wyrażone są w milisekundach i bajtach. Z danych zawartych w tab. 2 wynika, że postać kodu ma istotny wpływ na szybkość wykonania programu i jego objętość. W przypadku kodu pisanego bez pętli znacznie zwiększa się prędkość wykonania programu, ale kosztem jego objętości. Ręczne wprowadzanie kodu bez pętli dla dużych macierzy jest zadaniem bezsensownym ze względu na ogromną liczbę operacji do rozpisania. Ciekawym rozwiązaniem jest automatyczne generowanie tego kodu. Program w języku IL i ST jest plikiem tekstowym. Można zatem korzystając z dowolnego języka programowania (na PC) napisać program korzystający z pętli, który wygeneruje tekst w formacie programu w danym języku nie zawierającym pętli. Przykład programu w formacie m-pliku języka MATLAB do generowania procedury mnożenia macierzy w języku ST przedstawiono na rys. 2, a jego wynik dla zmiennej rozmiar = 2 na rys. 3. fid = fopen(‚ProgramST.txt’,’w’); for i = 1:rozmiar for k = 1:rozmiar fprintf(fid,strcat(‚C[‚,int2str(i-1), ‚,’,int2str(k-1),’]:=0.0;\n’)); for j = 1:rozmiar fprintf(fid,strcat(‚C[‚,int2str(i-1), ‚,’,int2str(k-1),’]:=’,’C[‚,int2str(i-1), ‚,’,int2str(k-1),’]+’,’A[‚,int2str(i-1), ‚,’,int2str(j-1),’]*’,’B[‚,int2str(j-1), ‚,’,int2str(k-1),’]; \n ‚ )); end; end; end; fclose(fid);
Rys. 2. Program dla PC generujący program dla PLC w języku ST Fig. 2. PC program for generating program for the PLC in ST language
104
Tab. 2. Szybkość wykonania i rozmiar w pamięci programu w różnych formach Tab. 2. Speed of execution and the size of the memory in various program forms ST w pętlach
ST bez pętli
PAC RX3i CPU310
48 ms; 660 B
6,1 ms; 84 448 B
PAC RX3i CPE305
18,5 ms; 660 B
4,4 ms; 88 449 B
C[0,0]:=0.0; C[0,0]:=C[0,0]+A[0,0]*B[0,0]; C[0,0]:=C[0,0]+A[0,1]*B[1,0]; C[0,1]:=0.0; C[0,1]:=C[0,1]+A[0,0]*B[0,1]; C[0,1]:=C[0,1]+A[0,1]*B[1,1]; C[1,0]:=0.0; C[1,0]:=C[1,0]+A[1,0]*B[0,0]; C[1,0]:=C[1,0]+A[1,1]*B[1,0]; C[1,1]:=0.0; C[1,1]:=C[1,1]+A[1,0]*B[0,1]; C[1,1]:=C[1,1]+A[1,1]*B[1,1];
Rys. 3. Program w języku ST dla PLC Fig. 3. PLC program in ST language
Ewidentną zaletą takiej realizacji programu jest skalowalność. Podobnie można generować również kod w języku IL. Ze względu na objętość kodu bez pętli nie zawsze możliwe jest opracowanie całego programu w ten sposób. Rozsądnym podejściem jest zrealizowanie tylko wybranych fragmentów kluczowych z punktu widzenia wydajności, a resztę kodu w sposób klasyczny (z zastosowaniem pętli).
9. Realizacja programowa algorytmu RLS ze współczynnikiem zapominania RLS_FF Przykładem ilustrującym realizację algorytmu opisanego rekurencyjnym równaniem różnicowym może być estymacja metodą najmniejszych kwadratów ze współczynnikiem zapominania. Algorytm ten poddany nieznacznym modyfikacjom odpowiada filtrowi Kalmana, z jego pomocą można estymować parametry (jest estymatorem), a generowane estymaty można wykorzystać do budowy regulatora adaptacyjnego lub modelu obiektu. Przedstawiony algorytm estymacji RLS z współczynnikiem zapominania pochodzi z [7]. Jego rekurencyjna postać predestynuje go do realizacji w PLC i nie wymaga realizacji procedury odwracania macierzy, która absorbuje dużo czasu i pamięci. Kryterium dane przez minimalizację funkcji strat
min Vt (θ ) =
t
∑α i =1
e (i )
t −1 2
(1)
Równania definiujące algorytm RLS z współczynnikiem zapominania (RLS_FF)
θˆ(t ) = θˆ(t − 1) + K (t )e (t )
(2a)
e (t ) = y (t ) − ϕT (t ) θˆ(t − 1)
(2b)
K (t ) = P (t )ϕ (t )
(2c)
P (t ) =
P (t − 1)ϕ (t )ϕ T (t )P (t − 1) 1 P (t − 1) − (2d) α α + ϕ T (t )P (t − 1)ϕ (t )
gdzie: θˆ(t ) – wektor nieznanych, estymowanych parametrów, e(t) – błąd estymacji, różnica między wyjściem z obiektu a wyjściem modelu opartym na obliczonej estymacie, nazywany również błędem predykcji, φ(t) – wektor wielkości mierzalnych (regresor), y(t) – wyjście z obiektu, K(t) – wektor wzmocnienia, α – współczynnik zapominania, parametr projektowy, P(t) – macierz wzmocnień. Niezbędne wartości początkowe to P(0) – wartość macierzy wzmocnień w chwili początkowej, θˆ(0) – estymaty parametrów w chwili początkowej. Gdy mamy jakąkolwiek wiedzę a priori o parametrach, to możemy wprowadzić te wartości do θˆ(0), w przeciwnym przypadku zwykle θˆ(0) = 0. Natomiast P(0) zwykle
przyjmuje wartość P(0) = rI, gdzie r jest również parametrem projektowym (za [7] zwykle odpowiednio „dużą liczbą”). Parametr projektowy α określa, jak szybko „zapominane” (brane pod uwagę z coraz mniejszą wagą) są wcześniejsze pomiary. Gdy α = 1 pomiary nie są w ogóle zapominane i wszystkie mają tę samą wagę. Zwykle wartości są bliskie 1, np. z zakresu (0,95–0,99). Algorytm RLS_FF zwykle ma charakter macierzowy, a wymiar macierzy zależy od parametryzacji modelu czyli wymiarów wektora θˆ(t ) . Został on umownie oznaczony jako nV. W tab. 3 podano zmienne stosowane przy realizacji programu. Do zrealizowania operacji macierzowych definiujących algorytm RLS_FF za pomocą operacji skalarnych konieczne było wydzielenie elementarnych operacji i uporządkowanie ich w odpowiedniej kolejności w formie etapów do realizacji w formie programu. W tab. 4 przedstawiono listę operacji E1–E12 umożliwiających zrealizowanie macierzowego algorytmu RLS_FF w PLC/PAC. Niemal wszystkie etapy przedstawione w tab. 4 (za wyjątkiem E12) są operacjami macierzowymi lub wektorowymi – ich zapis nie jest zapisem programu, a jedynie niezbędnych operacji do wykonania; np. realizacja etapu pierwszego, czyli mnożenia macierzy P(k –1) przez wektor regresora zrealizowany w języku ST (rys 4).
Tab. 3. Lista zmiennych w realizacji algorytmu RLS_FF (M – macierz 2-wymiarowa, W – wektor, S – skalar, R – rzeczywista, I – całkowita) Tab. 3. Variable list of RLS_FF algorithm (M – Matrix 2 dimension, W – vector, S – scalar, R – real, I – integer) Nazwa zmiennej
Opis
Org. w pamięci
Typ
Wymiar
nV
Wymiar wektorów theta i fi
S
int
1
P0
Wartość początkowa macierzy P
M
real
1, nV
theta0
Wartość początkowa wektora parametrów estymowanych
W
real
1, nV
theta
Wektor parametrów estymowanych w chwili k
W
real
1, nV
theta_1
Wektor parametrów estymowanych w chwili k –1
W
real
1, nV
thetaP
Wektor korekty do parametrów estymowanych
W
real
1, nV
K
Wektor wzmocnienia
W
real
nV, 1
eps
Bład estymacji (predykcji)
S
real
1
y
Wyjście z obiektu
S
real
1
fiT
Regresor transponowany
W
real
1, nV
fi
Regresor
W
real
nV, 1
P
Macierz wzmocnień w chwili k
M
real
nV, nV
P_1
Macierz wzmocnień w chwili k –1
M
real
nV, nV
L1, L2, L3, L4, L5
Wektory pomocnicze przy obliczaniu licznika P
W, M, M, M, M
real
nV, 1; macierze nV, nV
M1, M2, M3
Wektory pomocnicze przy obliczaniu mianownika P
W, S, S
real
1, nV; 1; 1
ym
Wyjście z modelu na podstawie estymat
S
real
1
alfa
Współczynnik zapominania
S
real
1
i, j, k
Zmienne indeksujące macierze
S
int
1;1;1
Pomiary Automatyka Robotyka nr 5/2013
105
Nauka
Tab. 4. Etapy realizacji programowej algorytmu RLS_FF Tab. 4. Stages of implemtation process of RLS_FF algorithm Etap I inicjalizacja zmiennych
P_1 = P0 theta_1 = theta0
Etap II uaktualnienie zmiennych
E1: L1=P_1*fi E2: L2=L1*fiT E3: L3=L2*P_1 EL4: M1=fiT*P_1 E5: M2=M1*fi E6: M3=alfa+M2 E7: L4=L3/M3 E8: L5=P_1-L4 E9: P=L5/alfa E10: K=P*fi E11: ym=fiT*theta1 E12: eps=y-ym E13: thetaP=K*eps E14: theta=theta_1+thetaP
Etap III zapamiętanie zmiennych
P_1 = P theta_1 = theta
for i := 1 to nV do for j := 1 to nV do L1[i,1] := L1[i,1] + P_1(i,j) * fi(j); end_for end_for Rys. 4. Kod programu dla etapu E1 Fig. 4. The code for E1 stage
Wielkość kodu całego programu przekracza możliwości zamieszczenia go w artykule. Cały kod oraz inne algorytmy estymacji opracowane w języku ST dla PLC są dostępne na www.eia.pg.gda.pl/kss/estymacja.zip. Opracowane kody zostały sprawdzone pod względem poprawności realizacji i były wykorzystane zarówno na potrzeby estymacji, jak i sterowania adaptacyjnego i adaptacyjno-predykcyjnego. Wydzielenie etapów i zaproponowanie zmiennych dla programu było przeprowadzone tak, aby zapewnić maksymalną czytelność procesu implementacji. Z pewnością istnieje możliwość strojenia kodu pod względem oszczędności pamięci i szybkości działania programu.
10. Testowanie i strojenie opracowanego oprogramowania dla PLC Istotnym etapem tworzenia oprogramowania jest faza testów. Testowanie oprogramowania tworzonego dla
106
komputerów w większości przypadków może być prowadzone w urządzeniu końcowym pracującym w warunkach docelowych. Testowanie programów opracowanych dla PLC nie zawsze jest możliwe w takich warunkach. Wymagałoby dostępu do obiektu sterowania i infrastruktury technicznej związanej z systemem sterowania. O ile jest to możliwe dla nowopowstających układów, tak w przypadku modernizacji działającej instalacji oczekuje się załadowania do sterownika sprawdzonego programu i minimalnego czasu przestoju. W związku z tym konieczna jest inna forma testowania oprogramowania, której ostatnim etapem jest uruchomienie na obiekcie. Testowanie oprogramowania bez dostępu do obiektu jest możliwe, ale jego wiarygodność zależy od tego, jak dokładnie można odwzorować poza obiektem warunki, które panują w pętli sterowania. Przeważnie wiąże się to z opracowaniem modelu i skorzystania ze środowisk symulacyjnych umożliwiających spreparowanie warunków wiernie oddających te na obiekcie, a również scenariuszy symulacji pracy w różnych warunkach, w tym nietypowych i awaryjnych. Po osiągnięciu poprawności semantycznej i logicznej, czyli stanu, w którym program realizuje założone działania można rozpocząć strojenie kodu – optymalizację programu. Efektem jest poprawa czytelności oraz funkcjonowania programu, np. szybkości wykonywania lub oszczędnego wykorzystania pamięci.
11. Weryfikacja Po przetestowaniu kodu dla PLC w sposób symulacyjny, zarówno w pętli otwartej, jak i zamkniętej w wersji programowej i sprzętowej niezbędnym etapem jest weryfikacja poprawności pracy w urządzeniu docelowym podłączonym do obiektu rzeczywistego. Jeżeli modele obiektów były opracowane z dużą dokładnością i wiernością, to testy z obiektem rzeczywistym powinny okazać się w dużej części potwierdzeniem tych osiągniętych symulacyjnie. Ze względu na nieuniknione uproszczenia, pominięcie pewnych aspektów pracy obiektu rzeczywistego, jeszcze na tym etapie mogą ujawnić się usterki w oprogramowaniu. Testy z rzeczywistym obiektem sterowania są ostatnim i najważniejszym etapem weryfikacji oprogramowania. Najczęściej nie można wprowadzić rzeczywistego obiektu w dowolny stan, by przetestować go bez uruchamiania całego procesu technologicznego, zatem może wymagać to obecności programistów, nadzoru technologów i operatorów przy pierwszych pełnych przebiegach systemu sterowania z możliwością przejęcia sterowania ręcznego.
12. Dokumentacja, instrukcje serwisowe i utrzymaniowe Opracowanie dokumentacji programu jest często lekceważone przez programistów i traktowane jako zło konieczne wymagane przez klienta. Tymczasem w rozbudowanych programach z zaawansowanymi metodami sterowania warto ten etap potraktować poważnie i dokumentację
sporządzić w taki sposób, aby ewentualna modernizacja kodu nie oznaczała konieczności żmudnego wdrażania się w opracowany kod, czy wręcz pisania go zupełnie od nowa. Dobrze opracowane instrukcje i komunikaty utrzymaniowe ułatwią obsłudze systemu poprawne interwencje w nietypowych lub awaryjnych sytuacjach. Natomiast instrukcje serwisowe ułatwią sprawną diagnostykę uprawnionemu serwisowi konserwującemu system sterowania lub usuwającemu awarie.
13. Podsumowanie W wyniku zebranych doświadczeń z przemysłu, pracy dydaktycznej i zaprogramowania wielu algorytmów filtracji, estymacji i sterowania w PLC/PAC podjęto próbę sformułowania oceny obszarów przydatności i nieprzydatności PLC/PAC. Urządzenia te nie są właściwym wyborem dla: sterowania obiektami, procesami, przetwarzaniem sygnałów bardzo szybkich, tj. takich które wymagają interwencji częściej niż w milisekundach, do bardzo złożonych, czasochłonnych obliczeń np. optymalizacji, do obliczeń wymagających ogromnej pamięci, do przetwarzania danych wymagających łącznie czasu ponad maksymalny czas dopuszczalny przez układ watchdog, do obliczeń wymagających/wykorzystujących zewnętrzne biblioteki programistyczne. Jednak PLC/PAC nadaje się do realizacji większości algorytmów filtracji, estymacji, sterowania zdefiniowanych przez równania różnicowe. Wskazano ograniczenia PLC natury pamięciowej, ograniczenia na maksymalny czas wykonania cyklu i ograniczenia natury programistycznej. Wymienione ograniczenia eliminują wykorzystanie PLC/PAC dla bardzo rozbudowanych obiektów posiadających bardzo dużą liczbę parametrów i zmiennych procesowych, których zapisanie i przetworzenie w czasie jednego cyklu przekroczy opisane ograniczenia. Wtedy jednak przeważanie istnieje możliwość dekompozycji i realizacji zadań nie przez pojedynczy PLC tylko rozdzielenia ich pomiędzy wiele urządzeń tego typu. W oparciu o opisaną w artykule strukturę i metodologię budowy programu z sukcesem zaimplementowano w PLC/PAC algorytmy filtracji pasmowej, estymacji parametrycznej metodą najmniejszych kwadratów i metodą gradientową, algorytmy liniowego sterowania predykcyjnego, algorytmy sterowania adaptacyjnego zarówno w wersji samostrojącej ST, jak i wersji nadążania za trajektorią MRAC. Zatem obecny stan zaawansowania PLC i PAC stwarza możliwości zaimplementowania algorytmów lokowanych dotąd w wyższych warstwach modelu komputerowego systemu sterowania – w warstwie nadrzędnej/nadzorczej oraz niektórych zadań z warstwy nazywanej umownie optymalizacyjną. Implementacja zaawansowanych metod sterowania w PLC pozwala znacznie podnieść funkcjonalność PLC (standardowo wyposażonych tylko w najprostsze algorytmy), przeorientować zadania w poszczególnych warstwach modelu komputerowego systemu sterowania i zbliżyć się ku znacznie tańszym rozwiązaniom opartym o PLC/PAC do systemów klasy DCS.
Bibliografia 1. PN-EN 61131-3:2004 Sterowniki programowalne – część 3:Języki programowania, PKN, 2004. 2. Kacprzak S., Programowanie sterowników PLC zgodnie z normą IEC61131-3 w praktyce, Wydawnictwo BTC, 2011. 3. Broel-Plater B., Układy wykorzystujące sterowniki PLC. Projektowanie algorytmów sterowania, PWN, 2009. 4. Kwaśniewski J., Sterowniki PLC w praktyce inżynierskiej, Wydawnictwo BTC, 2008. 5. Pietrusewicz K., Dworak P., Programowalne sterowniki automatyki PAC, Wydawnictwo Nakom, 2007. 6. Legierski T., Kasprzyk J., Wyrwał J., Hajda J., Programowanie sterowników PLC, Wydawnictwo pracowni komputerowej Jacka Skalmierskiego, 1998. 7. Soderstrom T., Stoica P., Identyfikacja systemów, PWN, 1997.
The software implementation of filtering, estimation and control algorithms in PLC / PAC Abstract: PLCs (Programmable Logic Controllers) are the main industrial platform for the implementation of direct control algorithms. PLC producers provide to programmers only basic, simple control methods. With the development of PLC and their successors (Programmable Automation Controller – PAC) appeared increased CPU and memory capabilities of the equipment and fuller implementation of programming languages defined in the standard IEC-61131-3. PLCs and PACs now have the computing power and memory of the personal computer PC a few years ago, they can also be programmed in high level languages using the variables in the form of a matrix. Taking into account the limitations and specifics of the PLC and PAC in these devices it is possible to implement almost any discrete control, estimation and filtering algorithm. This paper presents an approach to programming filtering, estimation and control algorithms defined by differential equations. The methodology of software development for PLC / PAC is presented. For presentation of implementation process of filtering and estimation algorithm least squares with forgetting factor (RLS_FF) is used. Keywords: Programmable Logic Controllers, discrete control algorithms, tuning and verification of software, estimation RLS_FF
dr inż. Jarosław Tarnawski Adiunkt w Katedrze Inżynierii Systemów Sterowania, Wydział Elektrotechniki i Automatyki Politechniki Gdańskiej. Obszary zainteresowań badawczych: synteza komputerowych systemów sterowania, przemysłowe sieci informatyczne, sterowanie obiektami z opóźnieniami, systemy środowiskowe. e-mail: j.tarnawski@eia.pg.pl
Pomiary Automatyka Robotyka nr 5/2013
107
Indeks firm
AutomatykaOnLine
tel. 46 857 73 72 www.automatykaonline.pl
50
Automatyka-Pomiary-Sterowanie SA
tel. 85 74 83 400, 85 74 83 403 www.aps.pl
11
Balluff Sp. z o.o.
el. 71 787 68 30 www.balluff.pl, www.leuze.pl
20–21
Danfoss Poland Sp. z o.o
tel. 22 755 06 68 www.danfoss.pl/napedy
I okł., 28–29, 60
PPUH Eldar
7
Eaton Electric Sp. z o.o.
tel. 58 554 79 00 www.eaton.com www.moeller.pl
62–65
Elesa+Ganter Polska Sp. z o.o.
tel. 22 737 70 47 www.elesa-ganter.pl
6
Elmark Automatyka Sp. z o.o.
tel. 22 541 84 65 www.elmark.com.pl
7, 46–47
Energoelektronika.pl
tel. 22 70 35 290 www.energoelektronika.pl
31
Farnell element14
tel. 00 800 121 29 68 www.farnell.com/pl
IV okł.
Ferry Produits
tel. +48 882 183 102 www. ferry-produits.com/pl
47
Festo Sp. z o.o.
tel. 22 711 42 71 www.festo.pl
44–45
Guenther Polska Sp. z o.o.
tel. 71 352 70 70 www.guenther.com.pl
53
HARTING Polska Sp. z o.o.
tel. 71 352 81 71 www.HARTING.pl
6
IRtech Beata Kasprzycka
tel. 12 267 37 74 http://irtech.pl
26–27
LAB-EL Elektronika Laboratoryjna sp.j.
108
tel. 77 442 04 04 www.eldar.biz
tel. 22 753 61 30 www.label.pl
48–49
Limatherm Sensor Sp. z o.o.
tel. 18 3379 900 www.limathermsensor.pl
59
OptiNav Sp. z o.o.
tel. 66 201 01 74 www.optinav.pl
6
Orion Test Systems and Automation Polska
tel. 61 890 64 63 www.oriontest.com
III okł.
Parameter AB Sp. z o.o.
tel. 664 921 922 www.parameter.pl
24–25
Pepperl+Fuchs Sp. z o.o.
tel. 22 256 97 70 www.pepperl-fuchs.com
66–67
PPH WObit E.K.J. Ober s.c.
tel. 61 83 50 800 www.wobit.com.pl
51
Radwag Wagi Elektroniczne
tel. 48 384 88 00 www.radwag.pl
II okł., 12–13
Schmersal-Polska sp.j. E. Nowicka, M. Nowicki
tel. 22 816 85 78 www.schmersal.pl
9
SCHUNK Intec Sp. z o.o.
tel. 22 726 25 00 www.schunk.com
54–55
SELS sp. z o.o. spółka komandytowa
tel. 22 848 08 42 www.sels.pl
22–23
Semicon Sp. z o.o.
tel. 22 615 73 71 www.semocon.com.pl
33
Skamer-ACM Sp. z o.o.
tel. 14 63 23 400 www.skamer.pl
68–69
Technokabel SA
tel. 22 516 97 77 www.technokabel.com.pl
70–71
Turck Sp. z o.o.
tel. 77 443 48 00 www.turck.com
61
WIKA Polska spółka z ograniczoną odpowiedzialnością sp.k.
tel. 54 23 01 100 www.wikapolska.pl
72–76
Pomiary Automatyka Robotyka nr 5/2013
109
REDAKCJA
PRENUMERATA miesięcznika „Pomiary Automatyka Robotyka” Rok 17 (2013) nr 5 (195) ISSN 1427-9126, Indeks 339512 Redakcja Al. Jerozolimskie 202, 02-486 Warszawa tel. 22 874 00 66, 22 874 02 02, 22 874 01 91 fax 22 874 02 02 e-mail: redakcja@par.pl www.par.pl Rada programowa dr inż. Mariusz Andrzejczak, Bumar Sp. z o.o. prof. dr hab. inż. Jan Awrejcewicz, Katedra Automatyki i Biomechaniki, Politechnika Łódzka dr inż. Janusz Berdowski, Polskie Centrum Badań i Certyfikacji SA prof. dr hab. inż. Tadeusz Glinka, Instytut Elektrotechniki i Informatyki, Politechnika Śląska dr inż. Stanisław Kaczanowski, prof. PIAP, Przemysłowy Instytut Automatyki i Pomiarów PIAP dr Aleksandra Kolano-Burian, Instytut Metali Nieżelaznych prof. dr hab. inż. Andrzej Masłowski, Instytut Automatyki i Robotyki, Politechnika Warszawska prof. dr inż. Tadeusz Missala, Przemysłowy Instytut Automatyki i Pomiarów PIAP prof. dr hab. inż. Zdzisław Mrugalski, Instytut Mikromechaniki i Fotoniki, Politechnika Warszawska prof. dr inż. Eugeniusz Ratajczyk, Instytut Metrologii i Inżynierii Biomedycznej, Politechnika Warszawska dr hab. inż. Waldemar Skomudek, prof. PO, Wydział Inżynierii Produkcji i Logistyki, Politechnika Opolska dr hab. inż. Roman Szewczyk, prof. PW, Instytut Metrologii i Inżynierii Biomedycznej, Politechnika Warszawska dr hab. inż. Andrzej Szosland, prof. PŁ, Katedra Pojazdów i Podstaw Budowy Maszyn, Politechnika Łódzka prof. dr hab. inż. Eugeniusz Świtoński, Wydział Mechaniczny Technologiczny, Politechnika Śląska prof. dr hab. inż. Krzysztof Tchoń, Instytut Informatyki, Automatyki i Robotyki, Politechnika Wrocławska doc. dr inż. Jan Tomasik, Instytut Metrologii i Inżynierii Biomedycznej, Politechnika Warszawska Redaktor naczelny dr inż. Jan Jabłkowski
Prenumeratę można zamówić pod następującymi adresami: Redakcja PAR Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa tel. 22 874 03 51 fax 22 874 02 02 na stronie www.par.pl/prenumerata Koszt prenumeraty STANDARD (dla firm, instytucji i osób fizycznych): yy roczna – 99,00 zł, yy dwuletnia – 176,00 zł. Koszt prenumeraty EDU (dla uczniów, studentów, nauczycieli i pracowników naukowych): yy roczna – 69,99 zł, yy dwuletnia – 120,00 zł. Prenumeratę pod ww. adresami rozpocząć można od dowolnego numeru, na dowolny okres. Koszt przesyłki pokrywa dostawca. Prenumeratę można także zamówić u następujących kolporterów: Zakładu Kolportażu Wydawnictwa SIGMA-NOT ul. Ku Wiśle, 00-707 Warszawa tel. 22 840 30 86 lub 22 840 35 89 kolportaz@sigma-not.pl www.sigma-not.pl RUCH SA Oddział Krajowej Dystrybucji Prasy ul. Annnopol 17a, 03-236 Warszawa
Zastępca redaktora naczelnego mgr Seweryn Ścibior, sscibior@par.pl
infolinia: 801 443 122
Sekretarz redakcji Urszula Chojnacka
www.prenumerata.ruch.com.pl
Zespół redakcyjny dr inż. Jan Barczyk – robotyka dr inż. Jerzy Borzymiński prof. dr hab inż. Wojciech Grega – automatyka prof. dr hab. inż. Krzysztof Janiszowski dr inż. Małgorzata Kaliczyńska – redaktor merytoryczny/statystyczny mgr Anna Ładan prof. nzw. dr hab. inż. Mateusz Turkowski – metrologia mgr inż. Jolanta Górska-Szkaradek mgr inż. Elżbieta Walczak
KOLPORTER Spółka z o.o. S.K.A.
Marketing mgr inż. Jolanta Górska-Szkaradek, jgorska@par.pl mgr Sylwia Batorska, sbatorska@par.pl
tel./fax 22 817 20 12
Skład i redakcja techniczna Ewa Markowska, emarkowska@par.pl EDIT Sp. z o.o. Wydawca Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa Miesięcznik PAR jest indeksowany w bazach BAZTECH oraz INDEX COPERNICUS (4,12). Punktacja MNiSW za publikacje naukowe w miesięczniku PAR wynosi 5 pkt (poz. 1027). Wersją pierwotną (referencyjną) jest wersja papierowa. Redakcja nie ponosi odpowiedzialności za treść publikacji o charakterze reklamowym oraz zastrzega sobie prawo skracania i adiustacji tekstów. © Wszelkie prawa zastrzeżone
110
prenumerata@ruch.com.pl
Centralny Dział Prenumeraty ul. Bakaliowa 3, 05-080 Izabelin-Mościska infolinia: 801 404 044 prenumerata.warszawa@kolporter.com.pl GARMOND PRESS SA ul. Nakielska 3, 01-106 Warszawa prenumerata.warszawa@garmondpress.pl www.garmondpress.pl Ceny prenumeraty przyjmowanej przez kolporterów wynoszą: yy roczna – 99,00 zł, yy I półrocze – 54,00 zł, II półrocze – 45,00 zł, yy I, II i IV kwartał – 27,00 zł, III kwartał – 18,00 zł. Uwaga: Garmond Press SA przyjmuje prenumeratę tylko na okres roczny lub półroczny. Wszystkie ceny są kwotami brutto.
PAR-reklama-broszura-205x295mm-10.04.idml 1
07.05.2013 09:21
97